徐德杰 吳勝昔 向國海 顧幸生
(華東理工大學自動化研究所1,上海 200237;上海慧時軟件有限公司2,上海 200233)
某大型醋酸纖維公司是集化工、化纖、熱電為一體的大型工業企業。為使生產數據管理更加科學化、合理化,本文設計了具有高性能、高可靠性并且經濟實用的數據采集系統,并重點介紹了該系統的人機界面的(human machine interface,HMI)設計和應用。
人機界面(HMI)是人與機器實現信息交互和傳遞的媒介[1],是把人的思維和機器的行為轉換為雙方都能接受的形式的一種設計理念。目前,比較主流的HMI組態有InTouch、WinCC、力控、組態王等。InTouch HMI軟件由于其易用的開發環境和廣泛的系統功能,以及能夠傳遞實時信息的特點,被廣泛應用于食品加工、制藥、造紙、交通等領域[2-5]。
本文采用InTouch軟件實現某大型醋酸纖維的能源管理監控系統,并給出了系統結構、功能、生產監控組態等方面的實現方案。
某大型醋酸纖維公司生產區域引進能源管理系統(energy management system,EMS),采集五期大樓電氣室、五期垂直單元馬達控制中心(motor control center,MCC)、五期成品線馬達控制中心、四期電氣樓以及老電氣樓五個控制區域的設備數據,并進行設備的監測和能耗分析。系統采用儀表變頻器采集層、PLC控制層、上位機監控層三層結構,各層介紹如下。
①儀表變頻器采集層
現場電機控制數據選用DIRIS A40儀表和AB PF700變頻器兩種方式進行采集。儀表和變頻器都是通過RS-485協議將數據傳送到 AnyBus x-Gateway AB7000工業網關,在網關中完成從RS-485協議到Profibus協議的轉換(其中ABPF 700變頻器還配置有20 Comm-H的數據采集卡,以實現Modbus RS-485數據采集)。網關到PLC控制層的通信通過Profibus完成,整個系統采用了30臺網關,能較好地解決工廠自動化中多種現場總線共存的問題。
②PLC控制層
針對需要采集的五個控制區域,系統分別為每個控制區域配備一臺Siemens S7-400 PLC和一臺Siemens MP377 Touch觸摸屏。各馬達控制中心均配置一套控制器,用于采集本地能源數據信息,以便在相關配電室或馬達控制中心進行數據采集[6]。
③上位機監控層
每個控制室的PLC通過光纖環網連接到能源管理主控室,使用Siemens的SCALANCE X系列交換機作為環網節點的交換機。上位機采用InTouch作為能源管理系統的HMI軟件,并配置一個有5 000個標記名的Historian Server,以存放歷史數據。采用主控室中的服務器對數據進行歸檔、統計分析和發布。
系統結構如圖1所示。

圖1 系統結構圖Fig.1 Structure of the system
本項目的監控組態分成多個層次設計,結合最終用戶,在確保系統安全性的同時保證運值人員可以一目了然地了解現在的運行方式。這樣便于工作人員掌握每個回路的報警信息和進行各種操作。組態畫面的結構示意圖如圖2所示。

圖2 組態畫面結構示意圖Fig.2 Structure of the configuration graphics
InTouch和PLC之間的通信步驟具體如下。
上述三種方法中,最簡單用時最少的是方法3,根據要解決的問題的要求,通過觀察、比較和分析,找出規律,從而迅速解決問題,體現的是綜合應用能力。其次是方法2,它是化學學科思想中整體思想和化學學科觀念中守恒觀的有機結合的應用。方法1,是基本方法和基本技能的應用。
首先,在 Wonderware公司提供的 Device Intergration軟件包中安裝DAServer。DAServer是基于ArchestrA技術的一種I/O Servers服務器,可以通過DDE、SuiteLinkTM、OPC 等協議和 InTouch連接[7]。
接著,系統通過系統管理操作臺(system management console,SMC)來進行配置,填寫PLC地址和機架號、CPU槽號、在Device Group中配置主題名等。通常,S7-300 PLC的CPU槽號一般為2(電源模塊占一個槽),S7-400 PLC的CPU槽號一般為3(電源模塊通常占兩個槽)。
然后,在InTouch中配置訪問名[8]。其中,主題名要與在SMC中Device Group選項中配置的主題名一致;應用程序名為SMC中節點名的中間部分。
最后,建立標記名和訪問名、項目名之間的關聯,其中項目名的命名規則可以查看DAServer幫助文檔Item Naming。將PLC中數據的地址和InTouch的標記名關聯起來,即可實現InTouch與PLC的通信。
本項目需要采集121臺智能電表、22臺變頻器、3臺軟啟動器和3個電池組的電量數據,因此為每種儀器建立單獨的參數顯示窗口會使畫面比較混亂。對此,本文采用公共窗口模板方法[9],將I/O型的變量賦值給內存變量,使所有的儀器數據顯示共用一個窗口,隨時調用隨時顯示。為了顯示MCC801段某變頻器的電壓,編輯動作腳本如下。

其中,U801-1-5B為某變頻器電壓的I/O型標記;U1為與U801-1-5B類型相同的內存型標記;“參數顯示”是項目中建立的共用數據顯示窗口。
同理,本文在做實時趨勢和歷史趨勢分析時,涉及的參數很多,趨勢窗口也按公共窗口模板的方法建立一個共用的窗口。窗口腳本如下。

其中,“趨勢”為Windows控件的名稱;“MCC801”為需要添加的工作段。
條件腳本如下。

本文設計的交接班記錄以及報警采用Excel輸出方式。配置報警組是為了將操作人員的交接班和設備數據的報警分離開來,方便用戶瀏覽。為運行人員交接班配置一個名為“Log”的報警組。雖然系統提供了與運行人員交接班有關的標記名,如 $Operator、$AccessLevel等,但是由于系統標記名只能讀不能寫,而系統默認報警組為$System且不能更改,這就需要建立內存消息型標記名,如Operator,并在窗口腳本中添加Operator=$Operator。
選擇報警組“Log”,在配置分布式報警顯示時,在“通用”欄填寫報警查詢時輸入/“intouch!Log”,就能達到將操作人員記錄和報警分離,獨立形成報表輸出的效果。
在配置Alarm Printer時,可以選擇查詢的報警組以及日志文件的格式(這里選擇.csv格式,與Excel轉換比較容易)。配置完成后就可以通過條件腳本自動生成和查看報警。
在畫面窗口中添加一個“查看報警”按鈕和一個Microsoft Date and Time Picker Control時間選擇控件,建立一個內存消息型“datestring”標記名,并與時間選擇控件關聯,這就避免了用戶輸入時間日期格式與系統不匹配而出現的錯誤。
查看報警按鈕動作如下。

報警日志文件自動查詢和生成腳本如下:

條件為真時,執行打開Alarm Printer應用程序:

條件為真時,執行查詢程序:

所有的日期與時間值都設置為0,則打印所有報警。這是由于0被解釋為1900年1月1日午夜,指定的日期與時間采用本地時間格式。
$Hour==0 AND$Minute==0 AND$Second==5條件為真時,表示查詢被執行5 s之后,關閉Aarm Printer應用程序:

由于在運行過程中為了保證InTouch程序的安全性,ALT、CTRL以及TAB等鍵位都是被禁用的,因此,可以通過以下函數實現Alarm Printer的自動關閉。

Historian Server是一個建立在Microsoft SQL Server基礎上的實時應用系統,具有高速數據采集、節省存儲空間、實時SQL數據訪問等優點。InTouch能夠將標記名批量導入到Historian Server數據庫中,方便用戶進行數據查詢和存儲[10]。
Historian Server在數據庫中處于啟用狀態,在Configuration Editor/System Configuration/Data Acquisition/IDAS下右鍵選擇Import Tags,將標記名導入到數據庫中。
Historian Server使用的數據庫名稱為Runtime,為系統默認且不能更改。因此,在數據庫中按照客戶需求建立相應的表后,可以通過以下SQL語句來進行數據的查詢。

如上所述,可以通過SQL語句將數據從歷史數據庫中查詢出來。在實際項目中,數據報表的開發和制作通常是將查詢得到的數據呈現在Excel表格中,方便運行人員進行分析和比較。
在項目實施的過程中,如果沒有第三方報表軟件的情況下,就需要工程師自己編寫程序來實現報表的相應功能。
以下為用戶窗體的關鍵程序。

InTouch組態軟件提供了一種易用的開發環境和廣泛的功能。本文采用InTouch作為組態開發工具,能夠快速地建立、測試和部署連接,并傳遞實時信息。開發的用戶界面可以將系統結構和生產設備形象、直觀地展現出來,使運行人員能夠方便掌握生產過程中設備的運行情況,具有廣闊的應用前景。
[1]霍發仁.人機界面設計研究[D].武漢:武漢理工大學,2003.
[2]譚秀平,高丙朋,南新元.番茄醬生產線罐裝工藝遠程監控系統設計[J].工業控制計算機,2008,21(9):11 -12.
[3]繆漢堯,郭利中,沈安濤.主電室自動化監控系統[J].包鋼科技,2003,29(3):22 -25.
[4]周顯兵.加氫裂化新氫機控制系統升級改造[J].石油化工自動化,2003(5):92-94.
[5]段迎黎.InTouch在冶金自動化中的應用[J].自動化技術與應用,2005,24(9):80 -81.
[6]王東江,王維.基于PLC和INTOUCH的廠務監控系統設計[J].科技資訊,2011(29):67 -68.
[7]姜麗麗.工控組態軟件(INTOUCH)研究與二次開發[D].天津:河北工業大學,2010.
[8]曾小洋.西門子PLC與InTouch綜合應用[M].北京:人民郵電出版社,2010.
[9]張希利.Intouch在電廠自動化的應用[J].電工技術,2006(3):22-24.
[10]尹君,雷汝海,王軍.基于InTouch的選煤廠帶式輸送機運行狀態監控軟件的設計[J].工礦自動化,2008(4):75-78.