介紹一個(gè)比較典型的規(guī)模比較大的modbus通訊的項(xiàng)目,2013年做的。
甲方已經(jīng)運(yùn)轉(zhuǎn)的一批14套單機(jī)設(shè)備,都是s7-200plc控制的,后來(lái)為實(shí)現(xiàn)能源優(yōu)化管理,想加上電度表,加上wincc中央監(jiān)控,以監(jiān)控設(shè)備在每一生產(chǎn)環(huán)節(jié)的能耗情況。
最初報(bào)的方案是買485接口的電能表,通過(guò)s7-200的空閑的一個(gè)通訊口接入到plc(另一個(gè)通訊口被ktp觸摸屏占用),然后每臺(tái)plc再增加一個(gè)cp243-1,通過(guò)光纖以太網(wǎng),接入到車間辦公室的wincc。同時(shí)還增設(shè)了ip攝像頭,也同樣走此以太網(wǎng)線路。
因?yàn)槊颗_(tái)設(shè)備具體細(xì)節(jié)還有不一樣,到具體設(shè)計(jì)的時(shí)候,竟然才發(fā)現(xiàn),有2個(gè)柜子,cpu的i/o模塊已經(jīng)達(dá)到7個(gè)模塊,無(wú)法再擴(kuò)展cp243-1模塊了。
所以臨時(shí)改變?cè)O(shè)計(jì),改為:每套設(shè)備,增加串口服務(wù)器,以太網(wǎng)轉(zhuǎn)換為rs485串口,并作為modbus master,下掛2個(gè)從站,分別是電能表和s7-200. 上位使用kep server軟件,讀取到每一個(gè)串口服務(wù)器,每一個(gè)電能表或者cpu作為一個(gè)設(shè)備單元。
最后選定的智能電表是上海forlong drt-301c-ii modbus,串口服務(wù)器則為moxa nport 5130。本來(lái)也可以直接選用modbus tcp轉(zhuǎn)modbus的網(wǎng)關(guān)型號(hào),但我還惦記著希望能從以太網(wǎng)遠(yuǎn)程修改調(diào)試s7-200程序,所以選用了簡(jiǎn)單的485類型。
這個(gè)系統(tǒng)復(fù)雜的地方還是在最后的報(bào)表統(tǒng)計(jì)方面。具體的通訊部分,調(diào)試過(guò)程還算比較順利。其實(shí)得益于準(zhǔn)備工作比較充分,并且以前也多次調(diào)試mobus通訊,對(duì)協(xié)議比較熟悉。
總結(jié)經(jīng)驗(yàn)如下:
1,通訊項(xiàng)目,打通通訊第一重要!不管水平有多高,經(jīng)驗(yàn)多豐富,在遇到新產(chǎn)品的時(shí)候都盡量先在家打通通訊,然后再去現(xiàn)場(chǎng)施工調(diào)試。如果有問(wèn)題提前不重視,拖到現(xiàn)場(chǎng)再試,總有困難等著你,讓你難堪,丟人。
2,modbus通訊,工具很重要。特別是在打通通訊階段。電腦上的兩個(gè)重要的modbus測(cè)試工具modscan和modsim都一定要是必備的,調(diào)試中對(duì)任何一個(gè)設(shè)備沒(méi)把握,都可以把電腦替換進(jìn)去,來(lái)做模擬實(shí)驗(yàn)。最終確定誰(shuí)有問(wèn)題。
現(xiàn)在的筆記本大都沒(méi)串口,可以買usb/485轉(zhuǎn)換器。反正你電腦即便有232口,也要232/485的轉(zhuǎn)換,所以直接轉(zhuǎn)換為485,也很方便。最好是能有兩個(gè),電腦上可以同時(shí)做主站和從站,就不需要兩頭倒騰了。沒(méi)事的時(shí)候電腦上自己訪問(wèn)自己,熟悉下兩個(gè)軟件的使用,偵聽(tīng)一下數(shù)據(jù)包,也很有意思。
3,接線很重要。要盡量避免在現(xiàn)場(chǎng)調(diào)試過(guò)程中焊通訊頭的情況。設(shè)備元件,盡量買端子型的。但我這次買到的串口服務(wù)器只能是db-9孔的,所以我在拿到樣品 之后第一時(shí)間做了通訊實(shí)驗(yàn),確定了接線的管腳,然后從淘寶找到能做模鑄線的廠家,給定做的線。對(duì)他們來(lái)說(shuō)一般都只做0.3以下細(xì)線,0.75的線手里沒(méi) 有。我們又專門發(fā)了幾十米dp紫色線給他,讓他只是給做上了模鑄的通訊頭,這樣整體線纜一致,好看,接線還容易。
做一根線才幾塊錢!比在現(xiàn)場(chǎng)用組裝的通訊頭焊線,省下的精力和不知道有多少。況且我自己還不會(huì)動(dòng)焊。
4,選用的電能表,有一點(diǎn)很討厭,就是它的通訊參數(shù),缺省是1200bps,但修改到9600卻只能需要通過(guò)485通訊方式發(fā)指令去修改,據(jù)說(shuō)是行業(yè)規(guī)定。早知道應(yīng)該要求出廠前都給設(shè)置好。
5,通過(guò)以太網(wǎng)遠(yuǎn)程映射com端口方式直接下載s7-200程序的問(wèn)題,通訊測(cè)試打通了。但除了需要停止cpu運(yùn)行之外,還需要修改n5130的參數(shù)與正常運(yùn)行時(shí)不同,所以現(xiàn)場(chǎng)調(diào)試遇到需要修改plc程序的那幾次,我還是端著筆記本跑到現(xiàn)場(chǎng)做了。
這是變更后的方案與原方案差異的地方。但由于cp243-1比串口服務(wù)器價(jià)格貴很多,modbus方案性價(jià)比還是比較高的。