常州大學微電子與控制工程學院 蔣建明 郝振華 王雪 劉志超 史兵
西門子S7-1200PLC 項目化教學中許多變量在控制過程中不斷變化,博途編程軟件的狀態監控難以全面監控各變量實時變化。MCGS 組態軟件可以通過對現場數據采集處理,以動畫顯示、數值顯示等方式解決工程問題。本文分析了S7-1200 的伺服運動控制,結合MCGS組態監控,為項目化教學提供了更為直觀的控制效果。MCGS 上位機編程和PLC 底層程序設計融合項目化教學有利于提高學生工程應用能力。
隨著計算機科學與工業化技術的飛速發展,傳統的工業控制軟件已難以滿足數據采集和過程控制需求。MCGS(Monitor and Control Generated System)是一種用于快速構造和生成計算機監控系統的組態軟件,通過對工業現場數據的采集、以動畫顯示、報警處理、流程控制和報表輸出等形式解決系統工程的監控需求[1]。
如圖1 所示,MCGS 組態軟件由主控窗口、設備窗口、用戶窗口、實時數據和運行策略五部分組成,組態結果數據庫完成了MCGS 系統從組態環境向運行環境的過渡[2]。

圖1 MCGS 組態軟件結構圖Fig.1 Structure diagram of MCGS configuration software
在西門子S7-1200 伺服控制項目化教學過程中,S7-1200PLC、V90(PN)伺服控制器和MCGS 觸摸屏通過以太網通信。在運動控制中,軸與機械負載直接連接,可以驅動負載完成旋轉運動、直線運動等,還可以多軸協調運動[3]。S7-1200 和V90(PN)通過以太網通信實時傳輸用戶/進程數據以及診斷數據。伺服驅動器內部集成抱閘繼電器,當使用帶抱閘電動機時可直接控制電動機動作。V90 的驅動和電動機可以達到3 倍的過載能力,具有電動機轉矩波動低,參數設置圖形化的特點,還具有通俗的電機狀態界面監控和高效的示波及測量功能,集成了安全扭矩關斷功能,能防止電動機意外轉動[4]。
S7-1200 控制運動時,支持運行中更改電機的速度和位移,西門子博圖編程軟件中通過添加伺服軸工藝對象,V90 使用標準報文3,通過MC_Power、MC_MoveAbsolute等PLC Open 標準程序塊進行中央控制模式[5]。在程序控制中主要完成啟動/禁用軸、回原點、點動伺服正反轉、絕對位移移位、相對位移移位、錯誤確認、讀取伺服位移位置以及伺服運動速度功能[6]。
S7-1200 的運動控制組態支持脈沖控制(PTO 控制)和PN(PROFINET)網絡控制,支持閉環控制,在對驅動器進行PTO 控制時,可對軸進行速度控制和開環控制。
1.1.1 伺服控制功能指令
如圖2 所示,啟動/禁用軸(MC_Power)指令功能是使用軸或禁用軸。

圖2 啟用、回原點功能指令Fig.2 Enable and return to origin function commands
(1)N:該輸入端是MC_Power 指令的使能端,在程序運行時必須一直調用。
(2)Axis:與添加的DB9“伺服”軸工藝連接。
(3)Enable:在工業控制中用于在特殊情況下急停,本系統中鏈接至S7-1200 的I0.6 輸入端。
(4)Startmode:軸啟動模式,0 表示啟用位置不受控的定位軸即速度控制模式;1 表示啟用位置受控的定位軸即位置控制。
(5)StopMode:軸停止模式,0 表示緊急停止,如果禁用軸的請求處于待決狀態,則軸將以組態的急停減速度進行制動;1 表示立即停止,如果禁用軸的請求處于待決狀態,則會輸出該設定值 0,并禁用軸。軸將根據驅動器中的組態進行制動,并轉入停止狀態。
1.1.2 回原點
如圖3 所示,回原點指令MC_Home 的功能是使軸歸位,設置參考點,用來將軸坐標與實際的物理驅動器位置進行匹配。

圖3 回原點指令設置Fig.3 Back to origin command setting
(1)接近速度設置為5.0mm/s,回原點速度設置為2.0mm/s。接近速度為尋找原點開關的起始速度,當程序中觸發了MC_Home 指令后,軸立即以“接近速度”運行來尋找原點開關。軸以“接近速度”運行尋找原點開關時,當軸碰到原點開關的有效邊沿后軸從“接近速度”切換到“回原點速度”來最終完成原點定位。“回原點速度”要小于“接近速度”,“回原點速度”和“接近速度”都不宜設置得過快。
(2)Axis 同樣與DB9“伺服”軸工藝連接;指令執行位(Execute)連接到S7-1200 的I0.7,如果需要在MCGS 控制界面上控制回原點,只需要與I0.7 并聯一個PLC 的M 存儲器二進制位。
Mode=3 表示主動回零點,軸的位置值為參數“Position”的值。
1.1.3 點動伺服正反轉
手動正反轉、絕對定位指令如圖4 所示,在點動模式下以指定的速度連續移動軸。

圖4 手動正反轉、絕對定位指令Fig.4 Manual forward and reverse,absolute positioning instructions
JogForward:正向點動,不是用上升沿觸發,JogForward為1 時,軸運行;JogForward 為0 時,軸停止。類似于按鈕功能,按下按鈕,軸就運行,松開按鈕,軸停止運行。JogBackward:反向電動。Velocity 用于設置點動軸移動速度。
絕對位置指令(MC_MoveAbsolute)表示使軸以某一速度進行絕對位置定位。
當與位置指令塊“Execute”相連的M11.3(通過MCGS組態界面控制)有效時,軸移動到與“Position”相連的MD108 存儲器中存放的坐標位置,移動速度由“Velocity”設定值控制。
相對距離指令(MC_MoveRelative)是相對定位軸指令的執行不需要建立參考點(原點),只需要定義距離、速度和方向即可。當上升沿使能“Execute”后,軸按照設定的速度和距離運行,使軸以某一速度在軸當前位置的基礎上移動一個相對距離。
伺服運動位移及速度讀取:S7-1200 分別通過MC_ReadParam 指令讀取軸伺服運動的當前位移和當前速度。
MCGS 觸摸屏、S7-1200 和V90 通信需要設置IP 地址在同一網段,如分別設置為192.168.1;192.168.2;192.168.3。打開MCGS 組態軟件界面,在設備串口打開“設備工具箱”中的“設備管理”,找到Simens_1200 并安裝,然后在“設備工具箱”中找到Simens_1200,雙擊添加。雙擊打開“設備編輯窗口”,在該窗口的遠端IP 地址輸入S7-1200IP 地址。設置完成后計算機上的組態軟件與PLC 通過以太網通信。
如圖5 所示,MCGS 觸摸屏監控了伺服運動的變化過程,實時顯示了運動位置、速度,并可以在觸摸屏上修改輸入參數,加深了學生感性認識。
MCGS 觸摸屏與西門子S7-1200 通過以太網通信,有效監控了S7-1200 控制的伺服控制運動,既加深了學生對伺服運動的理解,也提高了上位機組態軟件的編程能力。