文/ 張磊 鄢子麒 孫志堅 韋科舉
在實施物流工程項目時,項目設計的標準、通用,項目實施的高效、快速,對于設備集成商和最終用戶都具有重要意義。
物流工程項目涉及了大量相同類型被控對象的控制和可視化設計。以輸送系統為例,其基本組成單元是輸送機。輸送機是同一類被控設備,其功能、組態畫面形式相同。以單機設備堆垛機為例,其基本組成單元是驅動軸。驅動軸是同一類被控裝置,其功能、組態畫面形式相同。
如果能利用成熟項目倉庫的資源和規則,無需繁雜的重復性的編程、畫面組態、變量映射等,僅需簡單地調用和配置,就能自動完成新項目部署,無疑會大大減輕電氣工程師的負擔,大幅提高設計和調試效率,從根本上保證工程質量,并為后續維護擴展提供統一的標準。
為了實現這一目標,需要引入基于面向對象的自動化設計平臺。在這一平臺上,實現PLC程序對象、HMI畫面對象、交互數據對象的結構化封裝; PLC、觸摸屏等不再是孤立的設備,由PLC程序可直接生成HMI畫面并自動完成數據對象的映射。
西門子TIA博途和SIVArc組件,為這一設想提供了平臺。西門子TIA博途是采用統一軟件框架的全集成自動化軟件,可對西門子全集成自動化中涉及的可編程控制器(PLC)、人機界面(HMI)和驅動裝置等進行組態、編程和調試,共享通信任務,統一數據接口。
西門SiVArc (SIMATIC WinCC Visualization Architect)是TIA博途中的選件包,SiVArc是一個圖形用戶界面生成器,借助SiVArc,僅需要簡單配置,即可通過程序塊和HMI庫為多個HMI設備和PLC生成可視化。SiVArc功能示意圖,如圖1。

圖1 SiVArc功能示意圖
標準化的程序架構、畫面模板、創建規則等是SiVArc運行的基礎,也是實現標準化、通用化設計,工程快速實施部署等的核心。以下,結合物流工程電控程序的開發實踐,介紹SiVArc的核心要素.
圖2為SiVArc架構與生成邏輯,由圖可見:畫面的自動組態,是通過模塊化的功能塊(FB)自動調用畫面模板(FacePlate)實現的;變量的自動生成,是通過功能塊(FB)的背景數據(IDB)自動映射的。由此可以得出使用SiVArc時需要遵循的兩條開發原則:
標準化、模塊化的功能塊(FB) 、畫面模板(FacePlate)、數據類型(UDT)等是SiVArc運行的前提。可以根據物流工程的共性,提取作為基本單元的設備或部件。封裝其實現邏輯以生成功能塊(FB),封裝其畫面對象以生成畫面模板(FacePlate),封裝其交互數據等為自定義數據類型(UDT)。
將這些標準組件導入項目庫,可實現組件的全局調用,也便于項目間的移植與復用。
層次化的程序結構符合人們由整體到局部、由共性到個性的習慣性認知。
通過層次化的調用,實現了按照區域、類別劃分對象,程序更加簡明直觀;層次化的調用便于利用多重背景數據塊集中分配背景數據,使數據分配更高效直觀;層次化的程序結構使變量的生成路徑更清晰。

圖2 SiVArc架構與生成邏輯

圖3 FacePlate的接口

圖4 FacePlate的屬性設置

圖5 SiVArc畫面規則
畫面模板(FacePlate)是由畫面控件封裝的標準化畫面對象。通過將物流系統中基本的組成單元分類,并抽象成FacePlate,可生成供物流工程使用的通用的畫面對象。
使用FacePlate組態畫面,其優勢是顯而易見的:
1.FacePlate大大減少了畫面組態工作量,僅需要批量插入FacePlate實例,即可靈活地搭建復雜的物流系統。
2.FacePlate增強了畫面組態的標準化,便于同類型工程的復用。
3.FacePlate增強了系統維護的靈活性,僅需要變更FacePlate,即可一次性完成所有FacePlate實例的修改。
在物流工程中,FacePlate可作為一類結構、功能相同的設備監控畫面的抽象,例如輥筒輸送機、提升機等;也可作為設備關鍵組件操作面板的抽象,例如堆垛機的驅動軸操作畫面。
為保證FacePlate實例數據的封裝,并實現FacePlate實例數據與PLC背景數據塊的映射,有必要定義一個用戶自定義數據類型(UDT),包含FacePlate需要的所有數據標簽。將該數據類型添加至項目庫,即可實現該數據類型的全局調用。
FacePlate的創建也需要從畫面控件組態入手,即先組態,再封裝為FacePlate類型。
FacePlate可以將用戶自定義數據類型定義為動態屬性,作為FacePlate的接口。其中,自定義數據類型中包含控件屬性和事件對應的數據,通過映射數據實現畫面的組態。
如圖3,速度軸FacePlate的接口為動態屬性,其數據類型為自定義數據類型“typeSpeedAxis”,包含了速度軸監控所需的所有數據。
圖4顯示的是速度軸FacePlate的SIVArc屬性設置:
“名稱”字段表示FacePlate生成的畫面對象的名稱。表達式的“Block.DB.SymbolicName”的含義是使用背景數據塊的符號名稱作為生成的FacePlate副本的名稱。
“ 變量表達式” 字段表示FacePlate接口關聯的變量標簽名。表達式"HMI_CommData"& TagNaming.SeparatorChar & "SpeedAxis" & TrailNum(Block.DB.SymbolicName)的含義是FacePlate實例與名稱為"HMI_CommData_ SpeedAxisN"的變量相關聯。
SiVArc規則搭建了從庫組件到HMI畫面、從背景數據到HMI變量的橋梁。其中,畫面規則和變量規則是最核心的部分,主導了SiVArc的生成邏輯。
畫面規則是畫面對象生成與布局的規則。圖5是不同的程序對象(功能塊FB)分別對應一條畫面規則。
“程序塊”字段設定的是用以生成“畫面對象”的功能塊(FB)名稱;
“畫面對象”字段設定的是與“程序塊”對應的畫面模板(FacePlate),每調用一次功能塊(FB),都在畫面中生成一個畫面模板(FacePlate)對象;
“畫面主副本”字段設定的是用于生成畫面的畫面模板;
“布局字段”是預先在“模板副本”上定義的布局占位符,其尺寸應和FacePlate畫面對象尺寸一致,以保證“畫面對象”完整地顯示在HMI畫面上期望的位置。
變量規則是PLC與HMI交互數據生成與關聯的規則,如圖6。

圖6 SiVArc變量規則
“變量表”字段設定的是生成變量表的名稱規則,表達式“HmiTag.DB.SymbolicName”代表以變量所在DB塊的名稱作為變量表的名稱。
“變量組層級”字段設定的是變量表生成目錄結構的規則,表達式“HmiTag.DB.FolderPath”代表生成與PLC程序層次化結構相一致的變量表目錄。
通過SiVArc規則,建立了PLC程序到HMI畫面的松耦合關系。
圖7是由SiVArc自動生成的轉軌堆垛機系統監控畫面的示例,其中巷道區、轉軌區、轉軌機構的組態畫面均由標準組件搭建。如果需要實施同類項目,僅需要簡單地復制、刪除畫面組件,調整組件布局位置,便可一鍵完成,極其便捷;當PLC程序或交互數據發生了變更時,無需繁瑣地修改畫面和變量,僅通過SiVArc,便可一鍵重新生成畫面和變量,大大提高了調試效率,降低了維護難度。

圖7 轉軌堆垛機系統監控畫面
綜上所述,西門子SiVArc助力物流電控設計實現了從程序到畫面的標準化、結構化、模塊化開發,顯著提高了開發效率,使設計管理更加規范,工程維護更加便捷。不論對于物流裝備設備集成商還是最終用戶,西門子SiVArc都具有較大的應用價值。