摘 要:ABSLC500不支持MODBUS協議,所以不能直接與MODBUS網絡通信為了實現兩者通信,并在ABSLC500BASIC-T模塊開發程序,實現與MODBUS網絡的通信。BASIC-T模塊的應用,與過去直接應用SLC500控制其他設備和網絡相比,提高了控制效率和相應速度,即提高了控制系統整體的實時性。保證數據數據的準確性、可靠性和高效性。
關鍵詞:SLC500 BASIC-T模塊 MODBUS協議 POWERLEX40
中圖分類號:TP3文獻標識碼:A文章編號:1674-098X(2012)04(b)-0038-01
MODBUS協議是現今工業領域應用非常廣泛的一種通信協議,但SLC500不能直接與MODBUS設備進行通信。為了SLC500與MODBUS網絡通信,利用了BASIC-T模塊的即插即用性和高效性,在嵌入到SLC500上的BASIC-T模塊中按照MODBUS設備是內嵌協議編寫應用程序,直接地實現了SLC500對MODBUS網絡的控制,提高了通訊的效率和可靠性。
1 系統設計
硬件構成系統的硬件部分包括:SLC500可編程控制器、BASIC-T模塊、1761-NET-AIC接口轉換器以及POWERFLEX40變頻器。BASIC-T模塊是羅克韋爾公司一種單槽通訊模塊,它可以插入到一個SLC500固定的或模塊化控制器機架上,包括兩個串行通訊接口,可與RS232/RS485通訊。BASIC-T與SLC05/03CPU的通訊可以通過1746I/O背板進行。在這里SLC500為主站,POWERFLEX40為從站。該變頻器只能在MODBUS協議的RTU模式下進行通信。
將BASIC-T模塊插入到SLC500插槽中,BASIC-T模塊的PRT1端口用于與電腦的另一個9針串口相連,作為編程口。BASIC-T模塊的PRT2端口用于與POWERFLEX40的RS485通訊端口相連,作為通訊口。由于PRT2采用的是RS232通訊協議,而變頻器的RS485通訊端口采用的是RS485通訊協議,故需應用AB公司的1761-NET-AIC接口轉換器使兩者間接相連,同時也需要自制MODBUS電纜。
為使SLC500間接地通過BASIC-T模塊與內嵌MODBUS協議的變頻器POWERFLEX40通訊,需要在BASIC-T模塊中按照MODBUS協議的格式編寫程序,從而使變頻器能夠識別由BASIC-T模塊傳送來的消息并予以響應。POWERFLEX40變頻器支持MODBUS協議的RTU模式。所以程序的編寫應遵循RTU模式下的信息幀格式。
2 系統通信的軟件實現
整個系統的通信是以BASIC-T模塊為核心進行的,概括為兩個部分;其一是BASIC-T模塊與SLC5/03處理器間的通信;其二是BASIC-T與變頻器之間的數據傳輸。系統通訊的軟件實現則緊緊圍繞著通訊系統中的數據傳輸過程中進行。
3 數據傳輸過程
首先將需要傳送的數據(地址碼、功能代碼、寄存器起始地址和待操作的寄存器個數)寫入CPU不可見的M0中,然后將M0文件的數據傳送到BASIC-T模塊的輸入緩沖區中,并在BASIC-T模塊中進行處理,再將處理過的數據經一個AIC轉換器模塊傳輸到變頻器中。變頻器識別這些信息后做出響應,并將其按原路傳送回BASIC-T模塊中。模塊對傳回的數據不做任何處理,只將其放到模塊的輸出緩沖區,并傳回CPU的M1文件中。
CPUM0,M1文件與BASIC-T模塊的輸入、輸出緩沖區地址一一對應。地址映射關系見圖1所示。
4 軟件的設計與實現
系統軟件的設計將完全遵循上述的數據傳輸過程。由于M0,M1兩個文件實際上是不可見的,這就需要RSLgix500編寫梯形圖程序,使這兩個不可見數據文件分別M0,M1對應于RSLgix500中兩個可見的文件N7和N10。即將要寫入M0的文件寫入N7文件即可,N7文件也就相當于是一個寫入請求信入請求信息的文件。變頻器對請求的 響應信息現在只需從與M1文件對應的N10文件中讀取即可。這樣使得不可見的M0,M1文件通過N7,N10間接可見。梯形圖程序的編寫主要是通過文件復制指令COP來完成的。所編寫的梯形程序需要使用RSLogix500中upload功能,通過串口上傳到CPU中。
為了實現BASIC-T模塊的通信,需要按照MODBUS協議的RTU模式編寫程序,程序的編譯要在1747-PBASE BASIC環境下進行,編寫好的程序要通過端口PRT1下載到BASIC-T模塊中。在前面的內容已經對變頻器的通信參數做了設置,為了使BASIC-T模塊端口PRT2與變頻器的串行通信參數(波特率、數據位數、奇偶校驗、停止位、交握等)一致,這一設置是通過BASIC語言中的MODE指令完成的。程序的編寫一定要符合邏輯關系符合協議、特性要求。
5 系統通信的實現按照以下步驟進行
首先,應用RSLgix500進行硬件的組態;然后,上傳在RSLgix500中編寫好的梯形圖程序;最后,運行BASIC程序,并通過N7文件中寫數據對變頻器進行控制 操作,變頻器的響應信息可以在N10文件中讀取。
6 結語
本文在所搭建的SLC500與MODBUS網絡通信的實驗平臺上完成了從一幀到次多幀的數據傳送,經過新多次實驗,驗證了該通信系統能保證數據數據傳輸的準確性、可靠性和高效性。
BASIC-T模塊的應用提高了控制的效率和響應速度,滿足工業控制現場的要求。此外,MODBUS協議為一種工業應用十分廣泛的通訊協議,對它和不同協議之間的互連與互操作,有利于系統集成。BASIC-T作為一種即插即用的高效率的通訊模塊,還可以按照不同協議的格式對其進行編程,實現SLC500對不同協議設備和網絡的操作與控制。
參考文獻
[1] 采用串口通信技術實現MODBUS數據通信.自動化儀表,2003,19.
[2]利用VC實現MODBUS的兩種錯誤檢測方法.微計算機信息,2004,20(1).