西門子模塊6ES7211-0BA23-0XB0型號規(guī)格
西門子模塊6ES7211-0BA23-0XB0型號規(guī)格
Mode('模式')輸入數(shù)值選擇通訊協(xié)議。輸入值1(可用SM0.0替代或者直接用數(shù)值1)將CPU端口分配給Modbus協(xié)議并啟用該協(xié)議。輸入值0將CPU端口分配給PPI系統(tǒng)協(xié)議并禁用Modbus協(xié)議。
Baud (波特率)一般選擇9600。
Parity (奇偶校驗) 參數(shù)被設為與Modbus從站奇偶校驗相匹配。所有設置使用一個起始位和一個停止位。一般選擇偶校驗2.
Timeout('超時')參數(shù)設為等待來自從站應答的毫秒時間數(shù)。'超時'數(shù)值可以設置的范圍為1毫秒到32767毫秒。典型值是1000毫秒(1秒)(一般都設定為1000)
。'超時'參數(shù)應該設置的足夠大,以便從站有時間對所選的波特率作出應答。
'超時'參數(shù)用于確定Modbus從站是否對請求做出應答。'超時'值確定Modbus主設備在發(fā)送了請求的最后一個字符后,將要等待多長時間才會有應答的第一個字符。如果在'超時'規(guī)定的時間內至少收到應答的一個字符,Modbus主設備將從Modbus從站接收到整個應答。
Done(完成) MBUS_CTRL指令完成時,'完成'輸出打開。
Error(錯誤) 輸出包含執(zhí)行該指令的結果。下表定義了在執(zhí)行MBUS_CTRL指令時會產生的錯誤條件。一個字節(jié)來存放錯誤代碼。
錯誤代碼 說明
0 無錯誤
1 奇偶校驗選擇無效
2 波特率選擇無效
3 超時選擇無效
4 模式選擇無效
初始化完成!
NO.2 啟動Modbus協(xié)議
讀操作
MBUS_MSG(端口0使用)指令(或用于端口1的MBUS_MSG_P1)用于啟動對Modbus從站的請求并處理應答。
當EN輸入和'輸入打開時,BUS_MSG指令啟動對Modbus從站的請求。發(fā)送請求、等待應答、并處理應答通常需要多次掃描。EN輸入必須打開以啟用請求的發(fā)送,并應該保持打開直到'完成'位(M10.1)被置位。
First(啟動),在有新請求要發(fā)送時才打開以進行一次掃描,通過一個邊沿檢測元素(例如上升沿)打開,這將導致請求被傳送一次。
Slave(從站地址) 從站的地址,允許的范圍是0到247,地址0是廣播地址,只能用于寫請求。不存在對地址0的廣播請求的應答。從站的實際地址范圍為1-247(從站的地址(Slave)在1-247范圍內任選一個數(shù)即可,但需要和從站程序中的地址對應,否則通訊失敗)。主站在Modbus網絡上沒有地址。
RW('讀寫') 是用來讀取還是寫入該消息。'讀寫'參數(shù)允許使用下列兩個值。
0 讀
1 寫
Addr (地址) 是指向讀取或寫入的起始Modbus地址,'地址'的取值范圍基于Modbus從站支持的地址。一般都取40001。
Count (計數(shù)) 在該請求中讀取或寫入的數(shù)據(jù)元素的數(shù)目,MBUS_MSG指令將讀取或寫入最大120個字或1920個位(240字節(jié)的數(shù)據(jù))。'計數(shù)'的實際限值將取決于Modbus從站中的限制。
DataPtr(地址指針) 指向S7-200 CPU的V存儲器中與讀取或寫入請求相關的數(shù)據(jù)的間接地址指針。DataPtr值作為間接地址指針傳遞到MBUS_MSG。例如,如果要寫入Modbus從站的數(shù)據(jù)從S7-200 CPU中的地址VW200開始,則DataPtr的數(shù)值將會是&VB200 (VB200的地址)。指針必須始終是VB類型,即使它們指向字數(shù)據(jù)。
Done(完成位) 輸出在發(fā)送請求和接收應答時關閉。'完成'輸出在應答完成或MBUS_MSG指令因錯誤而中止時打開。完成信息存入輔助寄存器中(如M10.1)
Error(錯誤) 輸出僅當'完成'輸出打開時有效,反饋錯誤代碼,存入輔助位寄存器中(如MB6)
MBUS_MSG。
錯誤代碼 說明
0 無錯誤
1 應答時奇偶校驗錯誤:僅當使用偶校驗或奇校驗時才會發(fā)生。傳輸被干擾,可能會收到不正確的數(shù)據(jù)。該錯誤通常是由電氣故障(例如錯誤接線或者影響通訊的電噪聲)引起的。
2 未使用
3 接收超時:在'超時'時間內,沒有來自從站的應答??赡苡幸韵乱恍┰颍号c從站的電氣連接有問題、主設備和從站設置為不同的波特率/奇偶校驗設置,以及錯誤的從站地址。
4 請求參數(shù)出錯:一個或多個輸入參數(shù)(從站、讀寫、地址或計數(shù))被設置為非法值。檢查文檔中輸入參數(shù)的允許值。
5 Modbus主設備未啟用:在調用MBUS_MSG前,每次掃描時都調用MBUS_CTRL。
6 Modbus忙于處理另一個請求:一次只能激活一條MBUS_MSG指令。
7 應答時出錯: 收到的應答與請求不相關。這表示從站中出現(xiàn)了某些錯誤,或者錯誤的從站應答了請求。
8 應答時CRC錯誤: 傳輸被干擾,可能會收到不正確的數(shù)據(jù)。該錯誤通常是由電氣故障(例如錯誤接線或者影響通訊的電噪聲)引起的。
101 從站不支持在該地址處所請求的功能:請參閱'使用Modbus主設備指令'幫助主題中的所需Modbus從站功能支持表。
102 從站不支持數(shù)據(jù)地址:'地址'加上'計數(shù)'所要求的地址范圍超出了從站所允許的地址范圍。
103 從站不支持數(shù)據(jù)類型:該'地址'類型不被從站支持。
104 從站故障
105 從站已接受消息但應答延遲:這是MBUS_MSG的錯誤,用戶程序應在稍后重新發(fā)送請求。
106 從站忙,因此拒絕消息:可以再次嘗試相同的請求,以獲得應答。
107 從站因未知原因而拒絕消息。
108 從站存儲器奇偶校驗錯誤:從站中有錯誤。
低位編號的錯誤代碼(1到8)是由MBUS_MSG指令檢測到的錯誤。這些錯誤代碼通常指示與MBUS_MSG指令的輸入參數(shù)有關的問題,或接收來自從站的應答時出現(xiàn)的問題。奇偶校驗和CRC錯誤指示存在應答但是數(shù)據(jù)未正確接收。這通常是由電氣故障(例如連接有問題或者電噪聲)引起的。
高位編號的錯誤代碼(從101開始)是由Modbus從站返回的錯誤。這些錯誤指示從站不支持所請求的功能,或者所請求的地址(或數(shù)據(jù)類型或地址范圍)不被Modbus從站支持。
由于一次只能激活一條MBUS_MSG指令。所以在第一條MBUS_MSG指令完成后,啟動第二條指令,同時必須復位第一條指令。如果啟用了多條MBUS_MSG指令,則將處理所執(zhí)行的第一條MBUS_MSG指令,之后的所有MBUS_MSG指令將中止并產生錯誤代碼6。
Mode(模式) 為1,啟用Modbus協(xié)議。
Addr(地址) 與主站的尋址對應一致。
Baud (波特率)一般選擇9600。
Parity (奇偶校驗) 參數(shù)被設為與Modbus從站奇偶校驗相匹配。所有設置使用一個起始位和一個停止位。一般選擇偶校驗2.(和主站保持一致)
Delay('延時')參數(shù)通過將的毫秒數(shù)增加至標準Modbus信息超時的方法延長標準Modbus信息結束超時條件。該參數(shù)的典型數(shù)值在有線網絡上應為0。
MaxIQ 參數(shù)將供Modbus地址0xxxx和1xxxx使用的I和Q點數(shù)設為0至128之間的數(shù)值。建議使用的MaxIQ數(shù)值是128,該數(shù)值可在S7-200中存取所有的I和Q點。
MaxAI參數(shù)將供Modbus地址3xxxx使用的字輸入(AI)寄存器數(shù)目設為0至32之間的數(shù)值。
建議使用的MaxAI數(shù)值如下,這些數(shù)值可允許存取所有的S7-200模擬輸入:(根據(jù)CPU型號選擇數(shù)值)
0用于CPU 221
16用于CPU 222
32用于CPU 224、224XP、226和226XM。
MaxHold 參數(shù)設定供Modbus地址4xxxx使用的V存儲器中的字保持寄存器數(shù)目。例如,為了允許主設備存取2000個字節(jié)的V存儲器,將MaxHold 設為1000個字的數(shù)值(保持寄存器)。
HoldStart參數(shù)是V存儲器中保持寄存器的起始地址,Modbus主設備可存取V內存MaxHold個字數(shù),從HoldStart開始。
Done(完成)MBUS_INIT指令完成時,'完成'輸出打開。
Error(錯誤)'錯誤'輸出字節(jié)包含執(zhí)行指令的結果。
錯誤代碼 說明
0 無錯誤
1 內存范圍錯誤
2 非法波特率或奇偶校驗
3 非法從屬地址
4 非法Modbus參數(shù)值
5 保持寄存器與Modbus從屬符號重疊
6 收到奇偶校驗錯誤
7 收到CRC錯誤
8 非法功能請求/功能不受支持
9 請求中的非法內存地址
10 從屬功能未啟用
MBUS_SLAVE指令被用于為Modbus主設備發(fā)出的請求服務。
如果'完成'關閉,錯誤參數(shù)不會改變。