Modbus通訊調試坎坷路
參加工作后,因西門(mén)子的變頻器價(jià)格高,要使用通訊的方式與第三方的變頻器進(jìn)行通信,查看設備手冊后,發(fā)現都支持MODBUS-RTU協(xié)議,既節約了成本又可以實(shí)現需要的功能,就它了??墒墙酉聛?lái)問(wèn)題不斷,解決了PID問(wèn)題,通信的問(wèn)題一大堆,要么3號錯誤,要么6號錯誤,看了幫助,看了例程,才發(fā)現輪詢(xún)機制沒(méi)有做好,好吧,最簡(jiǎn)單的使用上個(gè)指令的完成位激活下個(gè)指令的起始位,不報錯了,心中竊喜,這下可以搞定了吧,結果讀不到數據,這又是為什么?一個(gè)頭比兩個(gè)大!看了老半天資料,靈光一閃,是不是地址不對啊,結果最終發(fā)現讀取的變頻器的參數的地址沒(méi)有與PLC中的地址對應上,終于搞定了這個(gè)問(wèn)題。成功通信,可以實(shí)現對變頻器的控制,可以讀寫(xiě)參數,使用效果良好啊,當然項目做成,得到老板嘉獎,來(lái)個(gè)自駕游,放松下心情,老板還是不錯滴!
還有一次調試西門(mén)子PCS7系統,使用的是S7-400FH,需要MODBUS通信,采購了CP341和硬狗,寫(xiě)好CFC程序,當然輪詢(xún)機制必須沒(méi)問(wèn)題啊,結果調試的時(shí)候不能和第三方儀表通信,奇怪啊,檢查接線(xiàn)和程序,沒(méi)問(wèn)題,檢查第三方儀表,可以用MODSCAN讀到數據,百思不得其解??!
后來(lái)實(shí)在沒(méi)辦法,拆了,換一個(gè),結果拆下來(lái)的時(shí)候,突然瞄到CP341后面缺了點(diǎn)什么,暈菜,硬狗呢?裝好,搞定,看到了讓人興奮的指示燈的交替閃爍。竊喜后,在DB塊中修改個(gè)地址參數,繼續聯(lián)機通信,傻眼了,不能通信了,一個(gè)指示燈常亮,這又是為什么?好吧,同事說(shuō)是不是程序有問(wèn)題?重新寫(xiě),建好兩個(gè)DB塊,通信,結果沒(méi)有問(wèn)題,修改了一個(gè)DB塊中的地址參數,問(wèn)題又來(lái)了,無(wú)奈只能求助于西門(mén)子工程師,原來(lái)是沒(méi)有在更改DB塊后進(jìn)行數據塊更新。
所以總結了下:
1:進(jìn)行MODBUS通訊時(shí)要做好軟件及硬件的準備工作。首先軟件MODSCAN,MODSIM軟件,也有用VSPD的;硬件部分:我們一般都使用筆記本那就需要準備USB-RS232的串口線(xiàn),我一般用Z-TEK的,然后就是RS232-RS485的模塊,我一般會(huì )用MOXA的,有人問(wèn)買(mǎi)那么貴的干什么,我有慘痛教訓啊,在實(shí)驗室環(huán)境下用一般的模塊沒(méi)有問(wèn)題,可以通訊,但是有時(shí)在現場(chǎng)就出問(wèn)題了。
2:第三方設備通訊參數,特別是地址要搞清楚,然后就是西門(mén)子的通訊程序必須做好,注意不管是200還是300、400PLC都要做好輪詢(xún)機制,300、400PLC需要配置硬件狗。接線(xiàn)問(wèn)題就帶過(guò)吧,注意屏蔽等問(wèn)題,防止電磁干擾等。
3:關(guān)于冗余PLC,使用CP341進(jìn)行驅動(dòng)下載時(shí),特別要注意:RACK1的CPU需要斷電,RACK0 的CPU要處于STOP位置,才能下載。
4:關(guān)于300、400PLC中對通訊程序的DB塊進(jìn)行參數修改后必須進(jìn)行數據更新,方法:“視圖”--切換為“數據視圖”---“編輯”---“初始化數據塊”,然后將修改后的程序下載。
評論