山東大學控制科學與工程學院 李金旭 管彥詔 陳紀旸 馬曉靜 楊江利
基于S7-300PLC的控制系統與在線稱重機通訊的研究
山東大學控制科學與工程學院李金旭管彥詔陳紀旸馬曉靜楊江利
本文研究基于S7-300PLC的控制系統與在線稱重機之間的通訊問題。采用CP340通信模塊,以點對點的方式實現與上海波峰FC-300在線稱重機之間的通訊。在S7-300編程軟件Step7上,對CP340進行硬件組態,通訊參數設置;在主程序OB1中調用接收功能塊,實現數據的讀取;最后通過編程處理數據得到有效的稱重值。
S7-300PLC;CP340;串口通訊;數據處理
在PLC控制系統中往往需要同其它設備進行通訊,通信方式有串行通信、以太網通信、PROFIBUS通信等。其中串口通信是將數據一位一位地依次傳輸,因此只需要少數幾條線就可以在系統間交換信息,特別適用于計算機與計算機、計算機與外設之間的遠距離通信[1]。一般的在線稱重機都配有串行接口,因此可采用點對點的連接方式通過串口通訊實現同在線稱重機的數據交換。故采用西門子的S7-300系列PLC并搭配串口通訊模塊CP340,實現同其他外圍設備的串口通訊[2]。
本文采用西門子S7-300PLC作為控制器,通過CP340串口通訊模塊與上海波峰電子有限公司的FC-300型在線稱重機實現數據交換。其中FC-300在線稱重機上為RS 232接口,所以采用CP 340-RS 232C。
2.1串口接線方式
CP 340-RS 232C串口是9針D型插孔,在線稱重機串口也是9針D型插孔,兩只之間的通訊方式為RS 232方式,故只需三根線即可,如圖1所示。

圖1 接線圖

圖2 設置CP340的通訊協議
2.2組態CP340
CP340采用的通訊協議為ASCII driver[3],如圖2所示。在線稱重機的串口收發數據的通信參數為:波特率9600;數據位8位;停止位1位;校驗位無。點擊圖2中Protocol下的圖標,進行通信參數的配置,其通信參數需要和在線稱重機的通訊參數一致,如圖3所示。

圖3 設置CP340的通訊參數
在線稱重機串口采用自動發送模式,每次重量稱量完畢,稱重信息就會自動通過串口傳給PLC。因此,在本文中PLC不需要向稱重機發送信息。

圖4 調用數據接收功能塊
3.1通訊程序
在主程序OB1中,從庫Libraries->CPPtP->CP340調用接收功能塊FB2 P_RCV,并為其分配背景數據塊DB2[4]。如圖4所示。發送功能塊的參數設置如表1所示。LADDR表示起始邏輯地址,需要和硬件組態中CP340模塊的起始邏輯地址一致。DB_NO表示存儲接收數據的數據塊編號,本文中為DB10。DBB_NO表示接收數據的起始地址,本例中為0,即DB10.DBB0。

表1 CP340接收功能塊的參數設置

圖5 數據處理流程圖
3.2數據處理
通常外圍設備發送給PLC的數據是依照該設備特定的格式發送的,其發送的每一幀數據都有其特定的含義,所以需要對數據進行處理,才能得到有用的信息。本文中采用的FC-300在線稱重機也是如此,其發送的數據格式如下:
W××××××CRLF
代表含義:W12045PCRLF表示重量為1204.5g P-正常W12154HCRLF表示重量為1215.4g H-超重W11023LCRLF表示重量為1102.3g L-欠重注:設定重量1200.0g,偏差±50.0g。
由此可知,每次稱重完成,在線稱重機會向CP340發送一串數據,共9幀,每幀以ASCII碼的形式發送到DB10.DBW0開頭的九個字節中。為了能從數據中提取有用的信息,需要對第一幀的數據進行判斷:如果第一幀是W代表的ASCII碼,則判定此次發送的數據是有效數據,否則不予處理。然后依次對重量信息進行提取,程序流程圖如圖5所示。CR和LF為打印字符。特別的,第七幀數據表示實際稱量值與設定重量的比較。假定設定重量值為1200.0g,偏差±50g,那么重量小于1150g的視為偏輕,用L表示;1150g余1250g之間的視為正常,用P表示;大于1250g的視為偏重,用H表示。若在稱重機后面加上剔除裝置,可實現某些產品的重量分級,例如蘋果、魚等。
在實驗過程中,稱重數據可以準確無誤的傳送給PLC,通過數據處理得到有效重量值。但是考慮到現場CP340模塊與在線稱重機之間的距離可能較長,而RS-232C的最大通訊距離為15米。因此,可以采用CP340-RS 485通訊模塊,在線稱重機一側利用信號轉換頭將RS 232信號轉換成RS 485信號,這樣可以大大延長通訊距離并增強抗干擾能力。
采用上述設計,成功實現S7-300型PLC與波峰FC-300在線稱重機之間的通訊。對于不同廠家的稱重設備,只需按照該廠家自定義的數據格式,編寫程序即可得到重量信息。由于在線稱重機稱量速度快,效率高,并且該通訊方式通訊速度快、實時性高,所以在水果、魚類等產品的重量自動分級方面有較高的應用價值。
[1]李正軍.計算機控制技術[M].機械工業出版社,2008.
[2]朱全松.串口通訊模塊CP340在工業稱重中的應用[J].兵工自動化,2006,12:53-54.
[3]SIMATIC.PtP coupling and configuration of CP340[Z]. SIMATIC Ltd,2011.
[4]廖常初.S7-300/400 PLC應用技術[M].機械工業出版社,2012.
李金旭(1991—),河北衡水人,大學本科,現就讀于山東大學控制科學與工程學院。