通用網關實現PROFIBUS總線和串口儀表通訊應用案例
讀儀表數據時,我們采取讀NWORDS的方法,命令格式見圖3:

圖3:讀取N個字的命令格式
返回的應答信息格式見圖4

我們需要讀取的數據為儀表的PV值、OP值和SP值。根據通訊說明書它們的MODBUS參數地址分別為1、3和2。因此要讀取這三個值的命令應該為(MODBUS地址為1的儀表為例):010300010003CRC,在返回的數據中,我們就可以得到PV、SP和OP的值。
在PROFIBUS的輸入和輸出映像區的第一個字節本例中為(PQB256和PIB256)是用于控制和監控通訊狀態的握手字節
下面為STEP程序的部分代碼:

將MB20值設為1;讀取MODBUS地址為1的儀表的數據。根據上面的應答格式,我們知道在返回的數據中PIW261為儀表的PV值;PIW263為儀表的SP值;PIW265為儀表的OP值。在變量表里進行監控并和儀表進行比較,我們發現數值是正確的。
要對多塊儀表進行通訊,只要通過程序來改變MB20的值,因此我們可以每隔100MS將相應儀表的站地址送到MB20中去,等數據返回后,再將下一塊儀表的站地址送到MB20中直到最后一塊,然后重新從第一塊儀表開始。由于返回的數據中包含了站地址信息,因此我們只要根據站地址將得到的數據送到相應的存儲區域中即可。當然我們也可以對儀表進行寫操作,需要注意的是讀寫轉換的控制問題。
3結束語
我們在未來相當一段時間內將面對多種網絡協議并存的現實,因此用于協議轉換功能的網絡部件將在未來自動化系統中發揮重要作用。擁有多種網絡接口的自動化設備也必然具有更強的市場競爭力。NetTAP作為一種通用的協議網關,它支持多種協議間的轉換,已經在很多場合中得到了實際應用,在未來也必將擁有廣闊的市場前景。
評論