1 引言
在傳統的plc——變頻控制集成系統中,變頻器的啟動/停止與故障監控由plc通過開關量實現端對端控制。變頻器頻率是由plc通過模擬量輸出端口輸出0~5(10)v或4~20ma信號控制,需要plc配置昂貴的模擬量輸出端口模塊。變頻器出現故障時由plc讀取變頻器的故障報警觸點,對具體故障原因并不清楚,需查詢變頻器報警信息后再閱讀變頻器說明書才知道。隨著交流變頻控制系統及通訊技術的發展,可以利用plc及變頻器的串行通訊的方式來實現plc對變頻器的控制。
2 變頻器的選型
danfoss vlt系列變頻調速器提供串行通訊技術的支持。它所支持的串行通訊技術包括標準rs-485、profidrive、lonworks在內的多種現場總線方式。其中,rs-485通訊方式為用戶提供了無需附加任何費用的、最為廉價實用的串行通訊方式。只需按照danfoss vlt變頻器規定的通訊數據結構、控制字和狀態字格式發送數據即可實現與vlt變頻的通訊。vlt為用戶提供了兩種控制字和狀態字格式標準:即danfoss標準的danfoss fc協議和profibus標準的profidrive協議。其中fc協議為用戶提供了更多的與vlt有關的控制信息和狀態信息。本項目中選用danfoss fc協議。
3 plc的選型
西門子工控產品在工控領域應用市場中有較高的占有率。s7-200系列是西門子simatic plc家族中的小規模plc成員,自由通訊口方式是s7-200 plc的一個特色的功能,它使s7-200 plc可以由用戶自己定義通訊協議。利于自由通訊口方式,在本系統中plc可以與變頻器和方便連接。plc通過自由通訊口方式與變頻器通訊,控制變頻器的運行,讀取變頻器自身的電壓、電流、功率、頻率和過壓、過流、過負荷等全部報警信息等參數,這比通過外部端口控制變頻器的運行具有較高的可靠性,節省了plc寶貴的i/o端口,又獲的了大量變頻器的信息。在本例中,作者將按照danfoss fc協議來對s7-200的自由口進行編程。
4 vlt串行通訊
4.1 vlt通訊原理
vlt變頻器的串行通訊為異步半雙工的方式,使用字節奇偶校驗和塊傳送異或校驗方法。每個變頻器都配備有一個標準的rs-485通訊端口,使協議可以通過rs-485電氣接口來進行傳輸。plc為主機,變頻器為從機,系統電碼的傳輸由主機控制,主機不斷發出某個地址的電碼給從機,等待從機的響應。主機最多能帶31個從機,在有中繼器的情況下,可以增加到126個從機,也就是從機的地址最多可以設定到126。通訊時,每一個字節從一個起始位開始實行傳送,然后再傳遞8個數據位,相應地組成一個字節,每個字節由一個奇偶校驗位來驗證傳送的正確性,然后由一個終止位結束。這樣一個字節共由11個位組成。
4.2 vlt電碼結構
每個電碼由一個起始字節(stx)開始,這個起始字節為stx=02h。隨后緊跟一個表示電碼長度(lge)的字節和表示變頻器地址的字節(adr)。然后是一些數據字節(隨電碼類型而變)。整個電碼由一個數據控制字節(bcc)來結束。結構如附表。
附表 vlt電碼結構
在上述數據結構中:
(1) pke占用兩個字節,包括參數命令類型和參數數目;
(2) ind為索引,也占用兩個字節,索引字節用于表明它是一個讀命令還是寫命令。在讀命令中必須具有0400h的格式,在寫命令中必須具有0500h的格式;
(3) pwe為參數值塊。占用四個字節,分為高字(pwe h)和低字(pwe l)。“比如主機要改變當前的變頻器參數,新的參數就應寫在參數pwe中發送給變頻器;”
(4) pcd為過程塊,占用4個字節。它有兩種狀態,當主機發給從機時,pcd1為控制字,pcd2為參考值;當從機發給主機時,pcd1為狀態字,pcd2為當前的輸出頻率;
(5) bcc為數據控制字節。由它來對接收到的命令進行檢驗正確與否。它的初始值為0,然后對該字節以前的所有字節進行異或。
5 plc編程示例
5.1 變頻器初始化子程序
plc在第一次掃描時執行初始化子程序,對端口及rcv指令進行初始化。為了增加程序的可靠性,在初始化完成后,如果檢測到端口空閑時則運行rcv指令使端口處于接受狀態。初始化子程序如下:
network 1 // 網絡標題
檢測端口空閑可編在主程序中
// 設定端口屬性
ld sm0.0
movb 73, smb30
network 2
// 接收信息狀態
&nb