工業(yè)網(wǎng)絡(luò)與組態(tài)技術(shù) 課件 項(xiàng)目四 Modbus現(xiàn)場(chǎng)總線控制系統(tǒng)的組建_第1頁
工業(yè)網(wǎng)絡(luò)與組態(tài)技術(shù) 課件 項(xiàng)目四 Modbus現(xiàn)場(chǎng)總線控制系統(tǒng)的組建_第2頁
工業(yè)網(wǎng)絡(luò)與組態(tài)技術(shù) 課件 項(xiàng)目四 Modbus現(xiàn)場(chǎng)總線控制系統(tǒng)的組建_第3頁
工業(yè)網(wǎng)絡(luò)與組態(tài)技術(shù) 課件 項(xiàng)目四 Modbus現(xiàn)場(chǎng)總線控制系統(tǒng)的組建_第4頁
工業(yè)網(wǎng)絡(luò)與組態(tài)技術(shù) 課件 項(xiàng)目四 Modbus現(xiàn)場(chǎng)總線控制系統(tǒng)的組建_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

工業(yè)網(wǎng)絡(luò)與組態(tài)技術(shù)項(xiàng)目四Modbus現(xiàn)場(chǎng)總線控制系統(tǒng)的組建12任務(wù)4.1Modbus現(xiàn)場(chǎng)總線的概念任務(wù)4.2ModbusRTU通信

3任務(wù)4.3S7-200系列PLC之間的ModbusRTU通信一、Modbus現(xiàn)場(chǎng)總線的產(chǎn)生1979年Modicon公司(現(xiàn)Schneider的一部分)提出的ModbusModbus最初作為工業(yè)串行鏈路的標(biāo)準(zhǔn)1997年Schneider電氣在TCP/IP上實(shí)現(xiàn)Modbus協(xié)議2004年Modbus作為我國國家標(biāo)準(zhǔn)二、Modbus現(xiàn)場(chǎng)總線運(yùn)行原理Modbus主從協(xié)議一個(gè)主站1~247個(gè)從站響應(yīng)請(qǐng)求通訊僅能由主站初始化二、Modbus現(xiàn)場(chǎng)總線運(yùn)行原理從站的響應(yīng)消息功能代碼設(shè)備地址錯(cuò)誤檢測(cè)數(shù)據(jù)段主站的查詢消息設(shè)備地址功能代碼錯(cuò)誤檢測(cè)數(shù)據(jù)段查詢和響應(yīng)過程二、Modbus現(xiàn)場(chǎng)總線運(yùn)行原理主站的查詢消息

查詢消息中的功能代碼告知被選中的從站要執(zhí)行何種功能。數(shù)據(jù)段包含了從站要執(zhí)行功能的任何附加信息。例如功能代碼03是要求從站讀保持寄存器并返回它們的內(nèi)容。數(shù)據(jù)段必須包含要告知從站的信息,從何種寄存器開始讀及要讀的寄存器的數(shù)量。錯(cuò)誤檢測(cè)域?yàn)閺恼咎峁┝艘环N驗(yàn)證消息內(nèi)容是否正確的方法。二、Modbus現(xiàn)場(chǎng)總線運(yùn)行原理從站的響應(yīng)消息

如果從站產(chǎn)生正常的響應(yīng),在響應(yīng)消息中的功能代碼是在查詢消息中的功能代碼的響應(yīng)。數(shù)據(jù)段包括了從站收集到的數(shù)據(jù),像寄存器值或狀態(tài)。如果有錯(cuò)誤發(fā)生,功能代碼將被修改以用于指出響應(yīng)消息是錯(cuò)誤的。同時(shí)數(shù)據(jù)段包含了描述此錯(cuò)誤信息的代碼。錯(cuò)誤檢測(cè)域允許主站確認(rèn)消息的內(nèi)容是否可用。三、Modbus傳輸模式Modbus系統(tǒng)中有兩種傳輸模式可選擇,即RTU(遠(yuǎn)程終端單元)模式和ASCII(美國標(biāo)準(zhǔn)信息交換代碼)模式。這兩種模式只是信息編碼不同,RTU模式采用二進(jìn)制表示數(shù)據(jù),而ASCII模式使用的字符是RTU模式的兩倍,即在相同傳輸速率下,RTU模式比ASCII模式傳輸效率要提高一倍。在一個(gè)Modbus通信系統(tǒng)中只能選擇一種模式:不允許兩種模式混合使用。ModbusRTU是一種較為理想的通信協(xié)議,也得到廣泛應(yīng)用,常見的通信速率為9600bit/s和19200bit/s。項(xiàng)目四Modbus現(xiàn)場(chǎng)總線控制系統(tǒng)的組建12任務(wù)4.1Modbus現(xiàn)場(chǎng)總線的概念任務(wù)4.2ModbusRTU通信

3任務(wù)4.3S7-200系列PLC之間的ModbusRTU通信一、ModbusRTU通信格式為了與從站進(jìn)行通信,主站會(huì)發(fā)送1段包含設(shè)備地址、功能代碼、數(shù)據(jù)段、錯(cuò)誤檢查的信息。RTU信息幀報(bào)文格式起始位設(shè)備地址功能代碼數(shù)據(jù)CRC校驗(yàn)結(jié)束符T1-T2-T3-T48bit8bitn個(gè)8bit16bitT1-T2-T3-T4一、ModbusRTU通信格式設(shè)備地址

信息幀的第1個(gè)字節(jié)是設(shè)備地址,允許從站地址是0~247(十進(jìn)制)。單個(gè)從站地址范圍是1~247。主站通過將從站的地址放入信息幀中的地址域來選通從站。當(dāng)從站發(fā)出響應(yīng)消息時(shí),它把自己的地址放入響應(yīng)的地址域中,以使主站知道是哪一個(gè)設(shè)備做出的響應(yīng)。地址0是用作廣播地址,以使所有的從站都能識(shí)別。一、ModbusRTU通信格式功能代碼

功能代碼是通信傳送的第2個(gè)字節(jié),定義了從站應(yīng)該執(zhí)行的命令,如讀取數(shù)據(jù)、接收數(shù)據(jù)、報(bào)告狀態(tài)等。主站請(qǐng)求發(fā)送,通過功能代碼告訴從站執(zhí)行什么動(dòng)作;作為從站響應(yīng),從站發(fā)送的功能代碼與從主站得到的代碼一樣,并表明從站已響應(yīng)主機(jī)進(jìn)行操作。一、ModbusRTU通信格式數(shù)據(jù)段

對(duì)應(yīng)不同的功能代碼,數(shù)據(jù)段的內(nèi)容會(huì)有所不同。數(shù)據(jù)段包含需要從站執(zhí)行的動(dòng)作或由從站采集的返送信息,這些信息可以是數(shù)值、參考地址等。對(duì)于不同的從站,地址和數(shù)據(jù)信息都不相同。例如,功能代碼03告訴從站讀取寄存器的值,則數(shù)據(jù)段必須包含要讀取寄存器的起始地址及讀取長(zhǎng)度。一、ModbusRTU通信格式CRC校驗(yàn)循環(huán)冗余校驗(yàn)碼(CRC)是包含兩個(gè)字節(jié)的錯(cuò)誤檢測(cè)碼,由傳輸設(shè)備計(jì)算后加入到消息中。接收設(shè)備重新計(jì)算收到消息的CRC,并與接收到的CRC域中的值進(jìn)行比較,如果兩值不同,表明有錯(cuò)誤。二、功能代碼功能代碼作用數(shù)據(jù)類型01讀開關(guān)量輸出狀態(tài)位02讀開關(guān)量輸入狀態(tài)位03讀取保持寄存器整型、字符型、狀態(tài)字、浮點(diǎn)型04讀輸入寄存器整型、狀態(tài)字、浮點(diǎn)型05寫單個(gè)線圈位06寫單個(gè)寄存器整型、字符型、狀態(tài)字、浮點(diǎn)型07讀異常狀態(tài)--08回送診斷校驗(yàn)重復(fù)回送信息15寫多個(gè)線圈位16寫多個(gè)寄存器整型、字符型、狀態(tài)字、浮點(diǎn)型XX根據(jù)設(shè)備不同,最多可以有255個(gè)功能代碼二、功能代碼1.功能碼01:用于讀取開關(guān)量的輸出狀態(tài)。例如,主站要讀取地址為2的從站DO10~DO11開關(guān)量的輸出狀態(tài)。主站的命令信息從站的命令信息主機(jī)發(fā)送字節(jié)數(shù)發(fā)送的信息備注從站地址102發(fā)送至地址為02的從站功能代碼101讀開關(guān)量的輸出狀態(tài)起始位地址20010起始地址為0010讀數(shù)據(jù)長(zhǎng)度20002讀取2路繼電器的輸出狀態(tài)位CRC碼2BDCB由主站計(jì)算得到CRC碼主機(jī)發(fā)送字節(jié)數(shù)返回的信息備注從站地址102來自從站02功能代碼101讀開關(guān)量的輸出狀態(tài)數(shù)據(jù)長(zhǎng)度101被讀取的位繼電器的數(shù)目:當(dāng)讀取繼電器的數(shù)目不足1Byte時(shí),以1Byte計(jì)算。數(shù)據(jù)內(nèi)容10202H表示DO11為ON狀態(tài),DO10為OFF狀態(tài)。(02H=00000010B)CRC碼2D049由從站計(jì)算得到CRC碼二、功能代碼2.功能碼02:用于讀取開關(guān)量的輸入狀態(tài)。例如,主站要讀取地址為1的從站開關(guān)量DI1~DI4的輸入狀態(tài)。主站的命令信息從站的命令信息主機(jī)發(fā)送字節(jié)數(shù)發(fā)送的信息備注從站地址101發(fā)送至地址為01的從站功能代碼102讀開關(guān)量的輸入狀態(tài)起始位地址20001起始地址為0001讀數(shù)據(jù)長(zhǎng)度20004讀取4路開關(guān)量的輸入狀態(tài)位CRC碼279C9由主機(jī)計(jì)算得到CRC碼從機(jī)響應(yīng)字節(jié)數(shù)返回的信息備注從站地址101來自從站01功能代碼102讀開關(guān)量的輸入狀態(tài)數(shù)據(jù)長(zhǎng)度1011個(gè)字節(jié)(8bit)數(shù)據(jù)內(nèi)容10BDI寄存器內(nèi)容,0BH=00001011B表示DI4、DI2、DI1為ON狀態(tài),DI3為OFF狀態(tài)CRC碼2E04F由從站計(jì)算得到CRC碼二、功能代碼3.功能碼03:讀多路寄存器輸入例如,主站要讀取1號(hào)從機(jī)的起始地址為0116的3個(gè)寄存器數(shù)據(jù)值主站的命令信息從站的命令信息主機(jī)發(fā)送字節(jié)數(shù)發(fā)送的信息備注從站地址101發(fā)送至地址為01的從站功能碼103讀取寄存器起始地址20116起始地址為0116數(shù)據(jù)長(zhǎng)度60003讀取3個(gè)寄存器(共6個(gè)字節(jié))CRC碼2E5F3由主機(jī)計(jì)算得到CRC碼從機(jī)響應(yīng)字節(jié)數(shù)返回的信息備注從站地址101來自從站01功能碼103讀取寄存器讀取字節(jié)數(shù)1063個(gè)寄存器共6個(gè)字節(jié)寄存器數(shù)據(jù)121784地址為0116內(nèi)存的內(nèi)容寄存器數(shù)據(jù)221780地址為0117內(nèi)存的內(nèi)容寄存器數(shù)據(jù)32178A地址為0118內(nèi)存的內(nèi)容CRC碼25847由從機(jī)計(jì)算器得到CRC碼二、功能代碼4.功能碼06:將數(shù)值寫入單路寄存器中。例如,主站要把數(shù)據(jù)07D0保存到1號(hào)從機(jī)地址為002C的寄存器中。主站的命令信息主機(jī)發(fā)送字節(jié)數(shù)發(fā)送信息備注從站地址101發(fā)送地址為01的從機(jī)功能碼106寫單路寄存器起始地址2002C要寫入的寄存器地址寫入數(shù)據(jù)207D0對(duì)應(yīng)的新數(shù)據(jù)CRC碼24BAF由主機(jī)計(jì)算得到的CRC碼項(xiàng)目四Modbus現(xiàn)場(chǎng)總線控制系統(tǒng)的組建12任務(wù)4.1Modbus現(xiàn)場(chǎng)總線的概念任務(wù)4.2ModbusRTU通信

3任務(wù)4.3S7-200系列PLC之間的ModbusRTU通信

一、Modbus協(xié)議的安裝指令庫中有針對(duì)端口0和端口1的主站指令庫ModbusMasterPort0和ModbusMasterPort1,也有針對(duì)端口0的從站指令庫ModbusSlavePort0,故可利用指令庫實(shí)現(xiàn)200PLC端口0的ModbusRTU主/從站通信。二、Modbus地址1.主站尋址

Modbus主站指令根據(jù)地址分類以完成相應(yīng)的功能,并發(fā)送至從站設(shè)備。Modbus主站指令支持下列Modbus地址?!?0001~09999:離散輸出(線圈)。●10001~19999:離散輸入(觸點(diǎn))?!?0001~39999:輸入寄存器(通常是模擬量輸入)?!?0001~49999:保持寄存器。

2.從站地址

Modbus從站指令支持的通信內(nèi)容及相應(yīng)地址如下?!?0001~00128:實(shí)際輸出,對(duì)應(yīng)于Q0.0~Q15.7。●10001~10128:實(shí)際輸入,對(duì)應(yīng)于I0.0~I(xiàn)15.7?!?0001~30032:模擬輸入寄存器,對(duì)應(yīng)于AIW0~AIW62,注意地址為偶數(shù)?!?0001~4xxxx:保持寄存器,對(duì)應(yīng)于Ⅴ區(qū)。二、Modbus地址Modbus地址與從站PLC地址的對(duì)應(yīng)關(guān)系三、Modbus通信的建立

Modbus通信在兩個(gè)S7-200PLC的Port0通信口之間進(jìn)行。通過Profibus電纜連接,實(shí)現(xiàn)兩臺(tái)PLC的Modbus通信傳輸。1.主站側(cè)MBUS-CTRL指令用于初始化主站通信,可初始化、監(jiān)視或禁用Modbus通信。三、Modbus通信的建立2.主站側(cè)MB∪S_M(jìn)SG指令用于啟動(dòng)對(duì)Modbus從站的請(qǐng)求并處理應(yīng)答。三、Modbus通信的建立2.主站側(cè)MB∪S_M(jìn)SG指令用于啟動(dòng)對(duì)Modbus從站的請(qǐng)求并處理應(yīng)答。三、Modbus通信的建立3.從站側(cè)MBUS-INIT指令用于啟用和初始化或禁止Modbus通信。三、Modbus通信的建立3.從站側(cè)MBUS-INIT指令用于啟用和初始化或禁止Modbus通信。三、Modbus通信的建立4.從站側(cè)MBUS-SLAVE指令用于為Modbus主設(shè)備發(fā)出請(qǐng)求服務(wù)。三、Modbus通信的建立兩臺(tái)S7-200PLC進(jìn)行Modbus通信,其中一臺(tái)作為主站,另一臺(tái)作為Modbus從站,當(dāng)主站I0.1為ON時(shí),主站給從站發(fā)送信息,并使從站的輸出Q0.0-Q0.7隨主站的&VB1000的值變化。四、Modbus通信應(yīng)用舉例主站參考程序從站參考程序四、Modbus通信應(yīng)用舉例操作要點(diǎn)

1.必須保證主站與從站的“Baud”和“Parity”的參數(shù)一致,而且“MBUS_M(jìn)SG”指令中的“Slave”參數(shù)要與“MBUS_INIT”中的“Addr”參數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論