(1) 如圖 1-0,頂部為電源接口(直流 24V)、Modbus 主從設(shè)置撥碼(MS 為 Modbus 做從站, MM 為做 Modbus 主站)、Profibus 地址設(shè)置撥碼(采用的是 8421 碼,如 AD1-AD3 撥到 ON 的 位置地址為 7)。
(2) 底部為 Modbus 通訊接口,B(+),A(-),本產(chǎn)品內(nèi)置終端電阻,需要接入終端的時候?qū)?/DIV>
TB 和 B 短接,TA 和 A 短接即可。
(3) 正面為 Profibus 通訊接口和指示燈。
圖 1-0:PBMD-K20 接線示意圖
2、MODBUS轉(zhuǎn)PROFIBUS網(wǎng)關(guān)Step7 的配置說明
(1) Modbus-RTU 側(cè)接 口的配置
在 Step7 硬件配置界面,添加了微硬模塊 PBMDP-K20 之后,雙擊圖標(biāo),在出現(xiàn)如圖 1-1
的窗口,選擇 Parameter Assignment。
圖 1-1:Modbus-RTU 接口的設(shè)置
波特率和校驗:必須設(shè)置的和您要連接的 Modbus 設(shè)備的一致,否則微硬模塊和你要連接的設(shè)備無法通訊,下面設(shè)備的通訊接口的設(shè)置請參看他們手冊的說明或者致電設(shè)備廠 家詢問。
從站狀態(tài)監(jiān)測和數(shù)據(jù)更新模式:可以選擇默認(rèn)。
等待時間:推薦默認(rèn)的 500mS,他的意思是微硬模塊發(fā)出一條 Modbus 報文之后等待下面設(shè)備回答的時間,如果超出 500mS,不再等待直接發(fā)送下一條,如果在 500mS 內(nèi)回來了, 緊接著等待一個空閑時間后發(fā)送下一條報文。
總線空閑時間:推薦默認(rèn)的 50mS,他的意思是指,接到下面設(shè)備回答的報文之后等待
50mS 再發(fā)送下一條報文。有些設(shè)備響應(yīng)速度比較慢,如果 50mS 太快的話,建議將此時間調(diào) 長。
(2) MODBUS轉(zhuǎn)PROFIBUS網(wǎng)關(guān) Modbus 報文的配置
下面舉例說明,如閱讀有困難請參看第三章 Modbus-RTU 簡介。假如您要讀取 Modbus 站號為 1 的設(shè)備的 3 區(qū)的寄存器地址從 0 開始的連續(xù)三個寄存器的值(3 區(qū)用戶手冊上可能 是 300XX 或者說支持 04 功能碼(Modbus 報文第二個字節(jié)))。您可以在右邊產(chǎn)品列表里面 PBMD-K20 下面選擇“read 3 Words(3XXXX)”模塊插入到 Slot3 里面,如圖 1-2。
雙擊你插入的模塊,選擇 Parameter Assignment,從站站號即為你要訪問的 Mobus 設(shè)備
的站地址,此例為 1;起始地址就是你要訪問寄存器的起始地址,此例為 0。那么三個寄存 器回來的數(shù)據(jù)就存放在這里分配的 IB256-IB261 著 6 個字節(jié)里面。
其他您要讀寫的數(shù)據(jù)都可根據(jù)此例來配置。
圖 1-2:Modbus-RTU 報文的配置
(3) 啟動微硬MODBUS轉(zhuǎn)PROFIBUS網(wǎng)關(guān)模塊開始工作。
以上工作完了,最后一點就是要啟動微硬模塊開始工作。將控制字最低為置 1。本例控制字為 QB0(在 Slot2 里面,具體地址是多少還要看您的配置),所以您需要在 OB1 模塊里 面加上如圖 1-3 的程序。
圖 1-3:啟動設(shè)備
在這里,有需要更進一步了解我們產(chǎn)品使用的用戶,可以看看下面通訊狀態(tài)字和通訊
控制字的說明。
通信狀態(tài)字 Status
D7:奇偶校驗 |
D6:CRC 校驗 |
D5:等待超時 |
D4~D1:異常應(yīng)答 |
D0:接收/發(fā)送 |
0:沒有錯誤
1:奇偶校驗錯 |
0:沒有錯誤
1:CRC 校驗錯 |
0:沒有錯誤
1:等待超時 |
0:沒有錯誤
1:Modbus 訪問異常 |
0:準(zhǔn)備接收
1:準(zhǔn)備發(fā)送 |
注意:正常情況下我們會看到狀態(tài)字是 0 和 1 交替變化,其他位如果出現(xiàn) 1,證明 Modbus
通訊有問題,下面講解一下出現(xiàn)錯誤后解決方法:
D4~D1:異常應(yīng)答如果不為 0,說明你發(fā)出去的 Modbus 報文對于被訪問設(shè)備來說是無效的, 有可能是地址超限,或者寫給設(shè)備的值是非法的。解決此問題的方法就是一定要弄清楚你要訪問的數(shù)據(jù)是什么,寄存器地址是多少?被設(shè)置的值有沒有范圍限制等等
D5:等待超時,可以將此手冊圖 1-1 中總線空閑時間調(diào)大!
D6:CRC 校驗錯,可能用戶編寫的 CRC 高低自己反了,或者在沒有完整收到一幀報文也會出
現(xiàn) CRC 錯,這時候我們可以通過串口調(diào)試助手或者 Modsim32 之類監(jiān)控一下報文。
D7:奇偶校驗錯,接口沒有設(shè)置的一致!圖 1-1 中的波特率和奇偶校驗沒有和設(shè)備的相一致。
需要提醒的是,往往一個錯誤有可能使得幾個地方報錯,這就需要現(xiàn)場調(diào)試人員判斷 錯誤出現(xiàn)在那里,最簡單的自助辦法就是學(xué)會使用串口調(diào)試助手和 Modsim32 以及 Modscan 等軟件,一般情況下只要和這三個軟件能通訊的上的話,肯定能和我們產(chǎn)品進行通訊。
通信控制字 Control
D7 |
D6 |
D5 |
D4-D3 |
D2 |
D1 |
D0 |
強制復(fù)位 |
停止等待 |
清除錯誤 |
保留 |
寫允許 |
讀允許 |
啟動工作 |
注意:這里不推薦用戶使用其他功能,僅僅需要你將 D0 置 1,啟動 PBMD-K20 發(fā)送 Modbus
報文即可,如果遇到比較特殊的用法,請致電我公司技術(shù)人員進行咨詢!