FB651 用于 多語言轉換
用于在三種語言之間切換消息視圖(數(shù)據庫視圖)和消息歸檔(數(shù)據庫歸檔)中的消息文本。在數(shù)據庫視圖和數(shù)據庫歸檔中僅交換包含該字符串的兩個長度信息的消息文本(字符串[54])。數(shù)據庫視圖中的所有其他數(shù)據和
數(shù)據庫存檔保持不變。
通過相應國家/地區(qū)標志中的按鈕在HMI上切換語言。
控制器的CPU中每種語言都有八個數(shù)據塊(TextLib)。每個數(shù)據塊包含最大1024條消息,長度為54個字符(STRING [54])。
數(shù)據塊包(每個語言變體1個包,每個DB 8個DB)僅在消息文本的語言上有所不同。結構,結構和消息號/ MsgID相同。
FB802可以最大實現(xiàn)3種語言變體。語言變體最初設置為:
-1:德語
-2:通用語言,例如英語
-3:簡體中文
語言變體“ 1:德語”和“ 2:通用”對應于單字節(jié)字符(SBC)。簡體中文的語言變體需要幾(3)個字節(jié)來表示一個中文字符。
TextLib的DB號在關聯(lián)的背景數(shù)據塊(FB650的STAT區(qū)域)中指定為初始值。定義了以下數(shù)據庫編號:
第一語言 第二語言 第三語言
TextLib:德語, 英文 中文
TextLib0 DB804 DB814 DB824
TextLib1 DB805 DB815 DB825
TextLib2 DB806 DB816 DB826
TextLib3 DB807 DB817 DB827
TextLib4 DB808 DB818 DB828
TextLib5 DB809 DB819 DB829
TextLib6 DB810 DB820 DB830
TextLib7 DB811 DB821 DB831
Notes DB文本庫:
為了避免有關CPU上內存空間的可能瓶頸,“屬性->通用部分2”中的DB文本庫應具有“非保留”屬性/復選標記。DB文本庫不必存儲在“數(shù)據保持存儲器”中。
定義FB651,DB:
-----------------------------------------
-與所使用的(目標)語言無關(對于每個中文字符為3Byte的中文),消息文本長度也與字符串40相同。
-TextLib結構保持不變。
因此,對于每種(目標)語言,總是有8個DB TextLib,每個DB TextLib具有1024條消息,消息長度為字符串40。
-DB視圖(DB802)包含20條消息。
-DB歸檔文件(DB803)包含250條消息。
?? 一直使用的WINCC信息語言
FB651 用于信息語言的DB塊切換
L 'LMsg'
T #Packet_ID.ID_1 傳送字符串'LMsg'到#Packet_ID.ID_1里
U #Freigabe 如果有允許條件跳轉到 IDOn處
SPB IDOn
L 'Libs'
SPA IDEn
IDOn: L '-On-' 將ON字符串傳送到#Packet_ID.ID_2里
IDEn: T #Packet_ID.ID_2
16#850008a0 = P#DBX 276.0 使用的當前地址
L P##AktGewaehlteSprache
TAR2
UD DW#16#FFFFFF
+D
T #AnfangsAdresse.AktGewaehlteSprache 保存DB651的DBX276.0地址
16#85000920 = P#DBX 292.0
L P##SprachTextLibs
TAR2
UD DW#16#FFFFFF
+D
T #AnfangsAdresse.TextLibs_1_SBC_Deutsch 德語地址
L P#16.0 P#DBX308.0
+D
T #AnfangsAdresse.TextLibs_2_SBC_Weitere 英語地址
L P#16.0 P#DBX324.0
+D
T #AnfangsAdresse.TextLibs_3_xBC_ChinaVRC 中文地址
XBC1: LAR1 P##Temp_ANYPOINTER_1
L #Konstanten.AnzahlDBsXBC 長度8
T W[AR1,P#2.0]
L #AnfangsAdresse.TextLibs_3_xBC_ChinaVRC 存儲中文的地址P#DBX324.0
T D[AR1,P#6.0] 都存在這個ANY類型的變量里
Cop1: L B#16#10
T B[AR1,P#0.0]
L B#16#5 INT
T B[AR1,P#1.0]
L #IDB_Nummer DB651
T W[AR1,P#4.0]
P#DB651 .DBX324.0 INT 8
CALL "BLKMOV" SFC20數(shù)據傳輸
SRCBLK:=#Temp_ANYPOINTER_1 將 P# DB651 .DBX324.0 INT 8 的數(shù)據發(fā)出
RET_VAL:=#SFCParameter.SFC20View_BLKMOV
DSTBLK:=#AktGewaehlteSprache 傳到P# DB651 .DBX292.0 INT 8
CALL "BLKMOV"
SRCBLK:=#AktGewaehlteSprache 發(fā)送P# DB651 .DBX292.0 INT 8 的數(shù)據
RET_VAL:=#SFCParameter.SFC20View_BLKMOV
DSTBLK:=#Temp_ANYPOINTER_2 傳到P# DB650 .DBX2.0 INT 8 用來改變語言
FB650: 語言轉換MeldeFB
使用此功能塊,將在中央消息歸檔和中央報告角度中輸入塊功能塊的消息。
該塊通常是稱為DB650的單獨的實例數(shù)據塊。
該塊針對用戶程序集中執(zhí)行一次,F(xiàn)B“ MeldeFB”不具有多實例功能,因此需要一個背景數(shù)據塊。該功能塊用于在中央消息歸檔和中央消息視圖中輸入來自模塊FB的消息。
輸入參數(shù):
COM_RST:該信號是重啟信號,并與注釋“ restart”相連。
文本Lib0到文本Lib3:在此指定生成的文本庫。庫DB的符號名稱應作為參數(shù)值(例如“ TextLib0”)。必須互連所有四個參數(shù)。
畫面Meldeanzeige 是顯示DB802里的內容
畫面Meldearchiv_250 是顯示DB803里的內容
通道參數(shù):
MsgV:此參數(shù)絕對必要,因為所有當前打開的消息都在此輸入,并且可以由可視化系統(tǒng)顯示。
MsgQ:用于建立與實際消息通道的連接,通過指定UDT類型為“ MsgQueue”的DB,可以評估ModulFB提供的緩沖區(qū)。
MsgA:如果需要歸檔,則必須提供類型為“ MsgArchive”的消息歸檔DB。該歸檔文件包含一個1000元素的純文本消息環(huán)形緩沖區(qū)。
DB801 信息緩沖
DB802 信息觀看
DB803 信息檔案
FC650 信息傳輸MeldSend
DB804-DB811 德語報警數(shù)據庫由SiVArc 生成
DB814-DB821中文報警數(shù)據庫由SiVArc 生成
LAR1 P##TextLib0 // TextLib0地址 例如: DB814
L DIW[AR1,P#0.0] // TextLib0 保存DB814
T #DBNr 保存DB塊號
SPA FLiS 跳轉到FliS -----找到的TextLib的DB號
FLiS: L #DBNr 814
L 0 //判斷DB塊是否是0
<>I
SPBN DTX4
如果DB塊是0 去這步DTX4: LAR1 P##UnDef 保存沒有報警信息號
AUF DB [#DBNr] //打開DB塊DB814
L 1
BIS6: T #Index_S //搜索二進制文件的索引
L DBW 8 //最大消息數(shù)1024
<=i??
SPBN EBS6
L #Index_S
+ -1
L #Konstanten.GroesseFeldInTextLib // TextLib中字段元素的大小(以字節(jié)為單位)初始值是62
+ L#10
SLD 3
LAR1 //消息條目上的AR1
L DBD[AR1,P#0.0] // TextLib的field元素中消息的ID
L #MSG_ID //要搜索的消息ID
<>D
U(
L DBD[AR1,P#0.0] // TextLib的field元素中消息的ID
L 0
<>D
)
SPBN EBS6 //結束搜尋
L #MSG_ID
L DBD[AR1,P#0.0] // extLib的field元素中消息的ID
>D //搜索的元素大于當前元素
L #Index_S
SLD 1 //Index_S := 2 * Index_S
SPBN BIS6 //左移
+ 1 //Index_S := 2 * Index_S + 1
SPA BIS6 //右移
------傷腦筋的一集,德國大眾的標準程序總是喜歡跳來跳去.但是邏輯性的穩(wěn)定性很好,這個塊我接觸了7年,還沒出過漏洞.
編輯:jq
-
cpu
+關注
關注
68文章
10891瀏覽量
212444 -
數(shù)據庫
+關注
關注
7文章
3842瀏覽量
64548 -
DB
+關注
關注
0文章
48瀏覽量
22736
原文標題:MELD報警信息提示/存儲-解讀FB651
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論