S7-200與Modbus協(xié)議

Modbus 協(xié)議簡介 Modbus協(xié)議是應(yīng)用于電子控制器上的一種通用語言。通過 Modbus協(xié)議,控制器相互之間、控制器經(jīng)由網(wǎng)絡(luò)和其它設(shè)備之間可 以通信。它已經(jīng)成為通用工業(yè)通訊標(biāo)準(zhǔn)之一。不同廠商生產(chǎn)的控制 設(shè)備可以通過Modbus連成工業(yè)網(wǎng)絡(luò),進(jìn)行集中監(jiān)控。 S7-200 Modbus 通訊 1. 既可以做主站, 也可以做從站 2. 通訊端口RS485 3. 傳輸方式是RTU S7-200 Modbus主站
Modbus主站庫文件由兩個程序組成 MBUS_CTRL 用于Modbus的通訊參數(shù)設(shè)置 MBUS_MSG 用于讀/寫數(shù)據(jù)
MBUS_CTRL參數(shù)說明
EN – 必須每個周期調(diào)用(用sm0.0) Mode – 1=使用 Modbus協(xié)議 0= 禁用Modbus協(xié)議 Baud – 波特率1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 Parity – 校驗(yàn)方式 0=無校驗(yàn) 1=奇校驗(yàn) 2=偶校驗(yàn) Timeout – 通訊超時時間,設(shè)置范圍1-32767毫秒 典型設(shè)置是1000毫秒 Done – 保持為1 Error – 錯誤碼 0=無錯誤 1=校驗(yàn)錯誤 2=波特率錯誤 3=超時錯誤 4=模式錯誤 MBUS_MSG參數(shù)說明
EN – 使能 First – 新信息標(biāo)記位,設(shè)置為 1時產(chǎn)生 一個新的發(fā)送請求 Slave – 從站地址可設(shè)為1-247,0為廣播 方式(寫操作時可能使用) RW – 讀寫操作 0=讀 1=寫 Addr – Modbus數(shù)據(jù)地址(如40001) 00xxx 位輸出(線圈) 10xxx 位輸入(觸點(diǎn)) 30xxx 輸入寄存器 40xxx 保持型寄存器 Count – 讀寫數(shù)據(jù)的長度 00xxx 位長度 10xxx 位長度 30xxx 字長度 40xxx 字長度 DataPtr – 讀寫數(shù)據(jù)的起始地址的指針 分配庫存儲區(qū)