摘要:WB系列智能電量傳感器可以對各種交、直流電量參數(shù)進行實時采集計算、分析,它具有RS485智能端口,可以同PLC、工控機進行通訊,也可以多個WB智能傳感器組成RS485網(wǎng)。本文將詳細(xì)介紹WB智能電量傳感器與西門子PLC S7-200 CPU的通訊方法,包括硬件的連接和軟件的編程。
WB智能電量傳感器是由綿陽市維博電子有限公司在傳統(tǒng)傳感器的基礎(chǔ)上推出的新型系列產(chǎn)品。該傳感器采用高性能MCU ,綜合運用DSP技術(shù)、數(shù)據(jù)通信技術(shù)、自動控制技術(shù)、高速數(shù)據(jù)采集技術(shù)、集成IC技術(shù)、貼片安裝工藝等一系列先進技術(shù)和工藝。該系列產(chǎn)品采用全隔離、高度數(shù)字化、智能化設(shè)計,使產(chǎn)品具有工作可靠、精度高、頻響寬、溫度特性好、抗干擾能力強、接口方式簡單、體積小、功耗低等特點,可廣泛應(yīng)用于電力系統(tǒng),鐵路系統(tǒng),通信系統(tǒng),控制系統(tǒng),電機監(jiān)控系統(tǒng)等等領(lǐng)域。WB智能傳感器可以完成各種交、直流電量參數(shù)的實時采集計算、分析,它具有RS485智能端口,可以同PLC、工控機進行通訊。下面詳細(xì)介紹WB智能電量傳感器在西門子PLC S7-200上的應(yīng)用。
一. 硬件的連接
1. S7-200 通訊口引腳分配定義: 見S7-200 通訊口引腳分配定義表。
S7-200 通訊口引腳分配定義表
引腳 端口0
1 邏輯地
2 邏輯地
3 RS-485信號B
4 RTS(TTL)
5 邏輯地
6 +5V 100Ω串連電阻
7 +24V
8 RS-485信號A
9 10-位 協(xié)議選擇(輸入)
連接器外殼 機殼接地
2.WB智能傳感器接線端子排分配:見WB智能傳感器接線端子排分配定義表
WB智能傳感器接線端子排分配定義表
端子
JK1 1
2
3
4 交流V+
5
6 交流V-
JK2 1 +E(12V/24V)
2
3 GND(公共地)
4 RS-485信號A
5
6 RS-485信號B
S7-200 CPU通訊口是9針頭,用RS-485方式與WB智能傳感器通訊,接線方式是將S7-200 CPU通訊口8腳接WB智能傳感器JK2端子4, 將S7-200 CPU通訊口3腳接WB智能傳感器JK2端子6。如果連接線距離過長,可以用西門子連接器或加中繼器。
二. 軟件的設(shè)計
1. WB智能傳感器通訊協(xié)議
串行通信口RS485; 信息傳輸方式為異步,起始位1位,數(shù)據(jù)位8位,停止位1位,無校驗;數(shù)據(jù)傳輸速率 38.4KBPS,19.2KBPS,9600BPS,4800BPS,2400BPS,1200BPS。
協(xié)議的基本格式見協(xié)議基本格式表。
協(xié)議基本格式表
序號 名稱 備注
1 同步碼(SOI,START OF INFORMATION) 1BYTE(7EH)
2 變送器地址(ADDR,ADDRESS) 1BYTE
3 變送器地址補碼 1BYTE
4 命令(CMD,COMMAND) 1BYTE
5 數(shù)據(jù)(DATA) XBYTE
6 幀校驗(CHECKSUM) 1BYTE
7 結(jié)束碼(EOI,END OF INFORMATION) 1BYTE (0DH)
校驗為協(xié)議基本格式表中的前2-5項逐字節(jié)作無符號加法,模256取反加1;編碼方式是16進制碼方式。
2. S7-200 CPU編程說明
梯形圖程序流程:PLC端口初始化-->發(fā)送讀數(shù)據(jù)命令-->適當(dāng)延時-->讀端口返回數(shù)據(jù)-->(如果需要確認(rèn),則發(fā)送確認(rèn)幀命令-->)進入下一輪發(fā)命令及讀數(shù)據(jù)循環(huán)。
①初始化:SM0.0始終為1。MOV_B指令把16#09賦值給SMB30,SM30控制自由端口0,16#09表示把PLC端口初始化不校驗、8位數(shù)據(jù)、9600波特率和自由口協(xié)議。MOV_B指令把16#B0賦值給SMB87,SMB87是信息接收控制字節(jié)。ATCH語句將INI_0中斷子程序與 端口0接收字符中斷(中斷8)關(guān)聯(lián)。VB600為接收起始地址。見圖1。
②讀數(shù)據(jù)命令:VB51-VB57為XMT命令的TBL參數(shù)。VB51為命令幀字節(jié)個數(shù),VB52為同步碼,VB53為變送器地址,VB54為變送器地址補碼,VB55為命令,VB56為幀校驗,VB57為結(jié)束碼。見圖2。
?、巯騑B智能傳感器發(fā)讀數(shù)據(jù)命令: SM4.5為1時表示自由口0發(fā)送空閑,SM4.5提供了一個時間為1秒的延遲。XMT指令為發(fā)送指令,PORT參數(shù)取0表示端口0,TBL參數(shù)表示發(fā)送的數(shù)據(jù)起始地址。見圖3。
?、苤袛?端口0字符接收程序:MOV_B指令將緩沖區(qū)SMB2接收WB智能傳感器傳來的數(shù)據(jù)放到以VB600開始的區(qū)域。INC_DW指令將指針VD680值加1, 指針VD680指向下一個字節(jié)。如果緩沖區(qū)SMB2的內(nèi)容等于16#0D,表示數(shù)據(jù)接收結(jié)束,用MOV_DW指令將指針VD680重新賦值為&VB600(VB600的地址)。見圖4。
?、葑x端口返回數(shù)據(jù)及處理:若收到某字節(jié)數(shù)據(jù)為05H,則緊接其后收到的一個字節(jié)數(shù)據(jù)應(yīng)與05H合為一個字節(jié); 若收到某字節(jié)數(shù)據(jù)為0DH,表示結(jié)束。組合參數(shù)變送器輸出數(shù)據(jù)的順序如下: E、R、P 、Q、C、F、V1、V2、V3、I1、I2、I3(不同變送器輸出內(nèi)容不同,因此輸出數(shù)據(jù)長度各異,但其順序同前,各參數(shù)均為2字節(jié))。M2.0為筆者自行設(shè)置的數(shù)據(jù)處理控制位,見圖5。
三. 應(yīng)用介紹
我所研制的空調(diào)參數(shù)測試系統(tǒng)用WB智能電量傳感器檢測待檢空調(diào)機的啟動電流,制熱和制冷狀態(tài)下的電壓、電流和功率,該空調(diào)參數(shù)測試系統(tǒng)出口俄羅斯,于2001年5月投入運行。據(jù)俄羅斯方反映,這一年多時間,空調(diào)參數(shù)測試系統(tǒng)運行情況良好, WB智能電量傳感器工作穩(wěn)定可靠,檢測數(shù)據(jù)準(zhǔn)確。
四. 總結(jié)
以上方法僅僅是S7-200 PLC與一只WB智能傳感器通訊的應(yīng)用,RS485智能口可以組成RS485網(wǎng)絡(luò),編程方法與上述相同。需要WB智能傳感器設(shè)置地址0-63,在步驟②讀數(shù)據(jù)命令表中對VB51-VB57為XMT命令的TBL參數(shù)修改,將VB53變送器地址更改,就可以與RS485網(wǎng)絡(luò)上的不同WB智能傳感器通訊。