閆秀芳,王志國,高曉輝
(1.內蒙古化工職業學院 測控與機電工程系,呼和浩特 010070;2.內蒙古工業大學 機械學院,呼和浩特 010051;3.北京航空航天大學 自動化科學與電氣工程學院,北京 100191)
隨著工業技術的發展,由上位機和下位機組成的控制系統得到日益廣泛的應用,而下位機控制器的處理速度以及實時性是決定整個伺服控制系統性能的關鍵所在[1,2]。常用的下位機控制器主要包括可編程序控制器(PLC)、工控機、運動控制卡等[3~5]。S7300 PLC因其具有結構緊湊、循環周期短、處理速度高、指令集功能強、電磁兼容性強、抗震動沖擊性能好、性價比高等諸多優點,使其廣泛的應用于工業控制領域中,成為一種既經濟又切合實際的解決方案[6,7]。Modbus通訊協議是美國Modicon公司開發的一個開放性通信協議,具有安全、穩定、實時性高等特點,已經成為一種通用的工業通訊標準,在很多工業領域得到了廣泛的應用[8~10]。本文在分析控制系統特點的基礎上提出運用S7300 PLC作為下位機通過SSI通訊實時采集位置信息,并通過接收上位機控制指令同時實現多路閉環伺服控制;采用S7200 PLC通過Modbus通訊接收上位機指令并通過MPI通訊與S7300 PLC實現數據共享,從而組成一個數據共享網絡。S7200 PLC的引入不但能夠實現性價比較高的Modbus通訊且可實現數字量控制,從而組成一個性價比較高的穩定控制系統。采用本控制系統方案能夠實現多路位移精確控制,且具有性價比高、適用性強等諸多優點,進一步推進了PLC在很多工業領域的應用。
在很多精密位置控制系統中,傳感器、執行器和控制器作為主要組成部件,對于提高系統的控制精度至關重要。本系統的位姿調整機構的工作原理如圖1所示,通過控制器實現對3個液壓缸精密位移控制來實現平臺位姿的調整,因此,控制器的性能至關重要。位姿調整機構的電氣控制原理如圖2所,其基本工作原理是:通過Modbus通訊協議接收上位機位移控制指令;通過基于SSI通訊的位移絕對編碼器采集位置信息;指令和采樣通過控制算法形成控制指令下發給伺服閥實現對液壓缸的伺服控制;限位開關用來實現對位姿調整機構的安全保護。該控制系統需要1路Modbus通訊接口、4路DI開關量輸入、4路DO開關量輸出、3路AO輸出、3路SSI通訊接口。

圖1 位姿調整機構

圖2 電氣控制系統
由于S7300 PLC的處理速度和工作性能遠遠的高于S7200 PLC,實時控制周期可達到10ms,在很多高精度伺服控制系統中得到了廣泛的應用,而且S7200不能夠進行SSI通訊,因此選用S7300 PLC作為下位機控制器實現對液壓缸位移的精確實時控制。S7300 PLC的通訊接口主要面向Profibus通訊總線,而基于Modbus通訊的模塊主要有CP340和CP341模塊且其價格比較昂貴[11,12],而S7200 PLC主要面向Modbus通訊設計含有2路Modbus通訊接口,選用S7200 PLC通過Modbus通訊協議接收上位機指令,且能夠提供IO控制接口,性價比較高。S7300 PLC和S7200 PLC通過MPI通訊進行信息共享。因此,根據本系統的特點選用性價比較的產品組合如下:CPU 314(6ES73141AG140AB0)、SM338模塊(設備號:6ES73384BC010AB0,含有4路 SSI 通訊接口)、SM332模塊(設備號:6ES73325HD010AB0,含有4路AO)、CPU 224XP(設備號:6ES72142AD230XB0,含14路DI、8路DO、2路RS485)。
由于S7300 PLC通過Modbus接口進行通訊價格比較昂貴,因此選用S7200 PLC作為從站通過Modbus接口與上位機通訊,然后S7200 PLC通過MPI通訊接口與S7200 PLC進行通訊。
ModBus協議是一種可靠而有效的工業控制系統通信協議,現已被眾多的硬件廠商支持并得到了廣泛應用,通過ModBus協議可以方便地完成現場控制網絡的數據傳輸。Modbus是一種主/從串行通訊協議且網絡中只有一個主站其余全為從站,在物理層上可利用232和485接口,支持ASCII和RTU兩種傳輸模式,用戶根據系統組態,在同一個Modbus網絡上配置相同的通信參數。S7-200CPU上的通信口Port0和Port1均可實現Modbus 通訊,從站協議指令主要有“MBUS_INT”和“MBUS_SLAVE”指令。在第一個循環周期內執行“MBUS_INT”指令(如圖3所示),下面分別介紹一下“MBUS_INT”指令中個參數的意義。Mode:模式選擇,1為啟動,0為停止;Addr:從站地址取值為1~247;Baud:波特率可選1200,2400,4800,9600,19 200,38400,57600,115200;Parity:奇偶校驗為0為無校驗,1為奇校驗,2為偶校驗;Delay:延時,缺省值為0;MaxIQ:最大I/Q位,參與通信的最大I/O點數,S7-200的I/O映像區為128/128,缺省值為128;MaxAI為最大AI字數,參與通信的最大AI通道數,可為16或32;MaxHold:最大保持寄存器區,參與通信的V存儲區字;HoldStart:保持寄存器區起始地址,以&VBx指定(間接尋址方式);Done:初始化完成標志,成功初始化后置1;Error:初始化錯誤代碼。主站和從站的波特率和奇偶校驗位的設置參數必須相同,當S7200 PLC作為從站時只需要設置MBUS_INT”指令參數即可。S7-200作為從站時,內部的數據存儲區與Modbus的4類地址的對應關系如表1所示,在進行數據變量傳輸時,采用4類地址傳輸,只需設置HoldStart的起始變量地址即可。

表1 S7-200的Modbus地址對應關系

圖3 “MBUS_INT”指令
MPI(Multi Point Interface)是多點接口的簡稱,是西門子公司開發的用于PLC之間通訊的保密的協議。MPI通訊是當通信速率要求不高、通信數據量不大時,可以采用的一種簡單經濟的通訊方式。S7300與S7200之間采用MPI通訊時,S7200不需要編寫任何與通訊有關的程序,只需要將要交換的數據存儲到一個連續的V存儲區域內與S7300中數據存儲區一一對應即可。S7300需要在OB1或OB35中調用系統功能X_GET(SFC67)和X_PUT(SFC68)(如圖4所示),下面對指令中各個參數進行介紹。X_GET為S7300接收S7200數據指令,X_PUT為S7300發送給S7200數據指令。REQ:“Request to activate” 當REQ=1時,調用該指令可以啟動讀取操作;CONT:如果在第一次調用時選擇了CONT=0,那么在數據傳送完成后,連接被再次終止,如果在第一次調用時選擇了CONT=1,那么在數據傳送完成后仍保持連接;DEST_ID:尋址參數“destination ID”,包含通信伙伴的MPI地址;VAR_ADDR:指向伙伴CPU上區域的引用,數據將從該區域讀出;RET_VAL:指令執行過程中,如果出錯,則返回值將包含有相應的錯誤代碼;BUSY:BUSY=1表示接收仍未完成,BUSY=0表示接收已完成,或者沒有激活的接收操作;RD:指向接收區的引用;SD:指向發送區的引用。S7300與S7200之間采用MPI通訊時,S7300與S7200設置不同的MPI地址和相同的波特率方可進行通訊。

圖4 “X_GET”和“X_PUT”指令
PLC是以微處理器為基礎的一種自動控制裝置,其綜合了控制、計算機和通訊技術的功能,是一種數字運算操作的電子系統,尤其S7300 PLC因其循環周期短且處理速度高可應用于實時控制系統中。位姿調整機構的控制系統的硬件連接如圖5所示,在本控制系統中采用S7300 PLC作為下位機控制系統,通過Modbus通訊和MPI通訊接收上位機控制指令,采用SM338模塊中的SSI通訊實時采集位移信息,通過PID運算控制算法根據控制指令和位移采樣生成控制信號通過SM332模擬量輸出模塊的AO接口控制伺服閥從而實現對液壓缸的伺服控制。

圖5 控制系統硬件連接圖
SSI(Synchronous Serial Interface)是一種同步信號的全雙工串行數據協議,常用于較多高精度絕對值角度編碼器中。SM338模塊中含有4路SSI通訊接口與其電氣接線如圖6所示,將SM338與S7300 PLC的CPU直接相聯接并根據位移編碼器的具體參數對其進行設置(如圖7所示)。

圖6 SSI通訊接線圖

圖7 S7300 PLC中SSI通訊參數設置
將本控制系統實現對位姿調整機構中3個液壓缸的位移控制的試驗結果如圖8所示,從圖8中可以看出,三個液壓缸的定位精度均可控制在0.1mm以內。
本文介紹了S7200和S7300 PLC的性能特點并搭建了一套性價比比較高的高精度控制系統,采用Modbus實現上位機與S7300 PLC之間通訊并實現了對液壓缸的精確位移控制,進一步推進了PLC的工業應用范圍。

圖8 位移響應曲線
[1]叢明,劉冬,杜宇,等.PLC伺服控制在太陽能電池組件搬運機械手中的應用[J].組合機床與自動化加工技術,2011,9:66-69.
[2]Yongguang Liu, Xiaohui Gao, Xiaowei Yang. Research of Control Strategy in the Large Electric Cylinder Position Servo System[J].Mathematical Problems in Engineering,2015.
[3]呂華芳,楊漢波,叢振濤.基于PLC控制的室內降雨入滲自動測定系統[J].農業機械學報,2014,45(9):144-149.
[4]Yongguang Liu,Xiaohui Gao, Zhongcai Pei. Research of Impact Load in Large Electrohydraulic Load Simulator. Mathematical Problems in Engineering[J].2014.
[5]項小東,白國振.基于運動控制卡的伺服控制系統開發研究[J].機電工程技術,2017,39(11):20-22.
[6]黎鑫溢,譚建平,周俊峰.PLC數據通訊在水壓機控制系統中的實現與研究[J].微計算機信息,2006,22(4-1):78-81.
[7]李紅萍,賈秀明,李藝鴻.基于MCGS的S7300 PLC液位監控系統設計[J].自動化與儀器儀表,2013,1:55-59.
[8]王彥齊.西門子S7-300 PLC的Modbus-RTU通訊實現[J].煤礦機械,2014,35(5):204-205.
[9]顧海勤,楊奕,全毅,等.基于ModBus協議的智能儀表與PC機雙向通信設計[J].儀表技術與傳感器,2013(12):33-35.
[10]陳銘.基于MODBUS協議的設備和PLC實現通信的研究[J].湖南科技學院學報,2009,30(4):60-62.
[11]蔣天偉,趙京.Modbus RTU通信在CP340系統上的實現[J].通信技術,2010,43(8):253-257.
[12]董明.基于PROFIBUS-DP總線和S7300的電機調速系統設計[J].制造業自動化,2011,33(4):134-136.