應(yīng)用領(lǐng)域 | 化工 | 產(chǎn)地 | 德國 |
---|---|---|---|
品牌 | 西門子 |
為了獲得 MMC 卡的序列號,,必須使用 SFC 51 “RDSYSST“ 讀出系統(tǒng)狀態(tài)列表 (SSL) :
? SSL ID W#16#011C “元件的標(biāo)識“
? Index W#16#0008 “存儲卡的序列號“
對于所有的帶有 MMC 卡的 S7-300 CPU 和 C7 從固件版本 V2.0 起都可以讀出存儲卡的序列號,(CPU 317:
![]() |
參考價 | 面議 |
更新時間:2022-06-18 14:16:13瀏覽次數(shù):278
聯(lián)系我們時請說明是化工儀器網(wǎng)上看到的信息,,謝謝!
西門子模塊6ES7545-5DA00-0AB0
讀取存儲卡的序列號
5.1 編程
描述:
為了獲得 MMC 卡的序列號,,必須使用 SFC 51 "RDSYSST" 讀出系統(tǒng)狀態(tài)列表 (SSL) :
• SSL ID W#16#011C "元件的標(biāo)識"
• Index W#16#0008 "存儲卡的序列號"
對于所有的帶有 MMC 卡的 S7-300 CPU 和 C7 從固件版本 V2.0 起都可以讀出存儲卡的序列號,,(CPU 317: 從 V2.1 起),。
從S7-400的V5版本起,存儲卡上保存**的序列號,。
首先需要創(chuàng)建一個數(shù)據(jù)塊,,用來存放讀取出來的狀態(tài)結(jié)果
圖11 創(chuàng)建DB1,存放讀取結(jié)果
打開OB1,首先在OB1的臨時變量區(qū)創(chuàng)建一個變量length,,類型設(shè)置為Struct(結(jié)構(gòu))
圖12 創(chuàng)建名為length的結(jié)構(gòu)變量
雙擊length變量,,進(jìn)入結(jié)構(gòu)變量成員定義,創(chuàng)建兩個word類型的變量,,本例中分別為size和number:
圖13 創(chuàng)建length的結(jié)構(gòu)變量的兩個word成員
編寫SFC51程序:
CALL "RDSYSST"
REQ :=TRUE
SZL_ID :=W#16#11C //讀取MMC 的序列號
INDEX :=W#16#8
RET_VAL :=MW0
BUSY :=M2.0
SZL_HEADER:=#length
DR :=P#DB1.DBX0.0 BYTE 500 //結(jié)果輸出到DB1數(shù)據(jù)塊中
結(jié)果如下:
圖14 MMC序列號
S7-400H CPU的同步
S7-400H CPU通過一對同步光纜進(jìn)行主備CPU間的自動同步,。
上電的H-CPU對,在10分鐘左右的上電自檢后,,應(yīng)該處理STOP模式,,并且CPU的正面通過機架指示燈(Rack0/Rack1,機架拔碼在CPU背部)和主CPU指示燈(MSTR)提示當(dāng)前CPU的主備狀態(tài),。此時可以進(jìn)行CPU下載以進(jìn)入冗余模式,。
冗余CPU 在進(jìn)入冗余模式運行之前,Master CPU先運行起來,,然后Standby CPU要和Master CPU進(jìn)行同步。
在調(diào)試時,,會遇到Master CPU 處于運行狀態(tài),,但Standby CPU無法從Stop 變?yōu)?/span>Run狀態(tài)的情況,這是因為同步過程的link-UP 或UPDATE無法進(jìn)行,。此時,,請查看以下情況:
q 正在刪除、裝載,、生成或者壓縮塊,;
q CPU 中調(diào)試(Test and commissioning)的功能在激活狀態(tài)。例如,,變量表中正在監(jiān)控某些變量,;正在監(jiān)控硬件組態(tài)或者程序;
q 兩個CPU 上內(nèi)存卡不相同,;
q 兩個CPU 上的Firmware 版本不一致,;
q CPU 上裝的是 Flash 卡,但 Flash 卡上保存的內(nèi)容不一致,;
q 同步模塊是否正常,,同步光纖是否正確連接。
q CPU 的機架號是否正確設(shè)置,,一個為rack 0,,另一個為rack1
q 檢查CPU 是否有強制變量,,如果有請取消。
q 冗余CPU中H parameters設(shè)置是否合適
q 冗余CPU中用于保證OB運行的LOCAL DATA緩存區(qū)設(shè)置過小,。典型情況是配置了冗余IO的S7-412H的CPU,,如果不修改LOCAL DATA的默認(rèn)值,會出現(xiàn)明明已經(jīng)裝載了所有OB塊,,CPU故障診斷信息中依然提示該OB未裝載或未運行,。
裝配S7-400H容錯站的步驟與規(guī)則
(1)安裝機架UR2-H。
(2)在機架上安裝PS407電源模塊,,在電池槽內(nèi)放入2塊鋰電池,,撥碼撥到2BATT。
(3)設(shè)置冗余CPU的機架號,,通過CPU 背板上的開關(guān)設(shè)置,;安裝冗余CPU到機架。
CPU通電后此機架號生效,。
(4)將同步子模板插到CPU前面板的兩個IF插槽中,,并固定,。
(5)連接同步光纜。
將兩個位于上部的同步子模板相連;
將兩個位于下部的同步子模板相連,;
(6)通電后CPU自檢查。
CPU**次通電時,,將執(zhí)行一次RAM 檢測工作,,約需10分鐘。這段時間內(nèi)CPU 不接收通過通訊接口傳來的數(shù)據(jù),,并且STOP LED 燈閃爍,。如果有備用電池,再次通電時不再做此項檢查工作,。
(7)啟動CPU,,將CPU撥碼撥到RUN狀態(tài),此刻兩CPU保持STOP,。
西門子模塊6ES7545-5DA00-0AB0
編寫SFC51程序:
CALL "RDSYSST"
REQ :=TRUE
SZL_ID :=W#16#294 //讀取從站是否存在
INDEX :=W#16#1
RET_VAL :=MW0
BUSY :=M2.0
SZL_HEADER:=#length
DR :=P#DB1.DBX0.0 BYTE 500 //結(jié)果輸出到DB1數(shù)據(jù)塊中
在本例中,,P#DB1.DBX0.0 BYTE 500中為每個DP從站(16 x 8 = 128)保留一位,地址為Address 1的DP從站的狀態(tài)保存在第三個字節(jié)的Bit 1位中, 地址為Address 3的DP從站的狀態(tài)保存在第三個字節(jié)的Bit 3位中,依次類推,。如果從站對應(yīng)的位未被置位,,則表明那個DP從站沒有通信上或不存在。
舉例:從DB1.DBW2開始,,每個位對應(yīng)一個bit,,例如3號站對應(yīng)的位是DB1.DBX2.3 ,站點存在的位為1,不存在的為0。
注意事項:
關(guān)于系統(tǒng)功能SFC51的更多詳情請參閱STEP 7的在線幫助,,或者通過Start > SIMATIC > documentATION選擇手冊“System Software for S7-300/400 System and Standard Functions"
4讀取CPU的序列號
4.1 編程
說明:
通過 SFC 51“RDSYSST"可以從系統(tǒng)狀態(tài)列表(SSL)中讀取下列標(biāo)識數(shù)據(jù):
下面的表格指明了可以從不同型號和固件版本的 CPU 讀取其它哪些標(biāo)識數(shù)據(jù),。為此使用 SFC 51 和 SSL ID W#16#011C。
表3 INDEX說明
索引 | 名稱 | S7-300/C7 | S7-400 |
W#16#0001 | 自動化系統(tǒng)的名稱 | 從固件版本 V2.2 起 | 支持 |
W#16#0002 | CPU 的名稱 | 從固件版本 V2.2 起 | 支持 |
W#16#0003 | CPU 的設(shè)備 ID | 從固件版本 V2.2 起 | 支持 |
W#16#0004 | 版權(quán)條目 | 從固件版本 V2.2 起 | 支持 |
W#16#0005 | CPU 的序列號 | 從固件版本 V2.2 起 | 從 MLFB |
6ES741x-xxx04-0AB0 起 | |||
W#16#0006 | 為操作系統(tǒng)保留 | - | - |
W#16#0007 | CPU 型號名稱 | - | 支持 |
W#16#0008 | MMC 或 MC 的序列號 (參見條目號:19215608) | 從固件版本 V2.0 起 | - |
(CPU317:從 V2.1 開始) |
需要注意,,老CPU升級到上表版本也無法實現(xiàn)此功能,。
首先需要創(chuàng)建一個數(shù)據(jù)塊,用來存放讀取出來的狀態(tài)結(jié)果
圖7 創(chuàng)建DB1,,存放讀取結(jié)果
打開OB1,首先在OB1的臨時變量區(qū)創(chuàng)建一個變量length,,類型設(shè)置為Struct(結(jié)構(gòu))
圖8 創(chuàng)建名為length的結(jié)構(gòu)變量
雙擊length變量,進(jìn)入結(jié)構(gòu)變量成員定義,,創(chuàng)建兩個word類型的變量,,本例中分別為size和number:
圖9 創(chuàng)建length的結(jié)構(gòu)變量的兩個word成員
編寫SFC51程序:
CALL "RDSYSST"
REQ :=TRUE
SZL_ID :=W#16#11C //讀取CPU 的序列號
INDEX :=W#16#5
RET_VAL :=MW0
BUSY :=M2.0
SZL_HEADER:=#length
DR :=P#DB1.DBX0.0 BYTE 500 //結(jié)果輸出到DB1數(shù)據(jù)塊中
結(jié)果如下圖:
圖10 CPU序列號
注意事項:
關(guān)于系統(tǒng)功能SFC51的更多詳情請參閱STEP 7的在線幫助,或者通過Start > SIMATIC > documentATION選擇手冊“System Software for S7-300/400 System and Standard Functions"