林偉杰,黃越雯,王瑞榮
(杭州電子科技大學自動化學院,浙江杭州310018)
傳統的電機控制系統體系結構存在較多缺陷,如結構封閉、不支持網絡通信等,導致不同的控制器或不同的控制系統之間相互孤立,造成系統升級過程中大量資源浪費。另一方面,隨著工業(yè)產業(yè)的快速發(fā)展,對生產機械的性能和產品質量的要求不斷提高,僅實現對單臺電機的控制在某些場合已不適合要求,而是需要同時控制多臺電機,保證其協調運行。LonWorks總線技術由美國Echelon公司1991年推出,主要應用于樓宇自動化、工業(yè)自動化、交通運輸和電力行業(yè)等。LonWorks總線支持不同類型的網絡拓撲結構和通信傳輸介質。LonWorks技術的最大特點是將通信協議內置到神經元芯片中,而且,Echelon公司為設計和實現可互操作的LonWorks控制網絡提供了一套完整、開放、成品化的解決途徑,大大方便用戶開發(fā)LonWorks控制設備或設計LonWorks控制網絡[1]。本文主要結合LonWorks技術的特點,設計了LonWorks網絡電機控制器的硬件和軟件,并且基于LonWorks網絡的DDE功能,設計了上位機監(jiān)控軟件,實現對多臺步進電機的運行狀態(tài)的監(jiān)控,達到網絡化電機控制的基本功能。
基于LonWorks技術的網絡化電機控制系統如圖1所示,主要由上位機、iLON600、LonWorks智能節(jié)點、電機驅動器及電機組成。iLON600是Echelon公司推出的從LonTalk到IP的路由器,通過它可以方便地將LonWorks現場總線與Internet網絡集成。上位機的主要任務包括:一方面,集中監(jiān)視與管理整個LonWorks網絡控制系統,分析與檢測智能節(jié)點間的通信狀況;另一方面,實時進行與智能節(jié)點之間的數據交換、顯示、報警、操作、參數設定等。LonWorks智能節(jié)點在整個系統中擔任非常重要的角色,其主要任務是控制信號實時輸出、LCD顯示、存儲運行數據及與上位機進行數據交換,并將狀態(tài)與報警信號等數據傳入上位機。智能節(jié)點可以根據控制網絡的特點進行分散布置,每個節(jié)點一方面輸出其控制指令,另一方面通過LonWorks總線與其他節(jié)點之間進行信息傳輸,實現分布式控制。
通常,LonWorks智能節(jié)點有兩種結構:以神經元芯片為核心的控制設備和基于其他處理器的Host-Base結構。根據課題的需要,節(jié)點輸出電機驅動器的指令信號,故采用神經元芯片作為主處理器構建智能節(jié)點。
圖1 系統組成
智能節(jié)點的硬件組成如圖2所示。神經元芯片是節(jié)點的核心,內嵌了LonTalk通信協議,芯片內部包含3個CPU:MAC處理器、網絡處理器和應用處理器。神經元芯片采用TMPN3150,芯片內部有512kB的EEPROM,2kB的RAM,沒有片內ROM,但有訪問外部存儲器的接口,最大尋址空間64kB[2],圖2中的AT29C256即為外部程序存儲器。
FTT-10A收發(fā)器是Echelon公司生產的自由拓撲雙絞線收發(fā)器,神經元芯片通過它與LonWorks總線連接。FTT-10A收發(fā)器內部包含一個隔離變壓器,一個曼徹斯特編碼通信收發(fā)器,信號處理器件,采用厚膜電路集成在一個芯片中。通信速率78kbps,最長通信距離2 700m。FTT-10A與TMPN3150的連接如圖3所示。
圖2 LonWorks智能節(jié)點硬件組成
圖3 FTT-10A收發(fā)器接口
本文中采用步進電機作為執(zhí)行器件,而電機驅動器的輸入信號主要有脈沖CP、方向信號CW/CCW。TMPN3150的工作電源為+5V,硬件設計時IO6腳輸出CP信號,IO7腳輸出方向信號,可與電機驅動器的輸入端直接連接,如圖4所示。
圖4 電機驅動器接口
智能節(jié)點軟件流程如圖5所示。主要包括初始化、IO引腳定義、網絡變量定義及事件處理程序。Echelon公司為開發(fā)LonWorks控制設備提供了NodeBuilder軟件工具。設備的應用程序采用Neuron C編寫[3]。與ANSI C不同,Neuron C中不再使用main()函數結構,而是采用事件驅動方式,即用when()語句和函數組成可執(zhí)行對象。
圖5 LonWorks智能節(jié)點軟件流程
上位機軟件設計主要包括兩個方面:一方面要利用LonWorks組網工具將設計好并完成物理連接的LonWorks控制網絡進行邏輯連接,實現LonWorks網絡與TCP/IP網絡的集成;另一方面,利用高級編程軟件設計LonWorks網絡的監(jiān)控軟件。
Echelon公司為用戶組建和使用LonWorks控制網絡提供了LonMaker集成工具和LNSDDE Server軟件包。LonMaker以LNS網絡操作系統為基礎,集成功能強大的客戶-服務器體系結構和方便使用的Microsoft Visio界面,為用戶組建LonWorks控制網絡的邏輯連接提供便利條件[4]。LNS DDE Server允許任何DDE的Microsoft Windows應用程序監(jiān)控LonWorks網絡,如人機界面應用程序、數據記錄和趨勢分析應用程序以及圖像處理顯示[5]。通過建立LNS和Microsoft DDE的連接,Windows應用程序可以和Lon-Works控制設備進行交互網絡變量、配置信息和應用程序消息等。
本文中采用組態(tài)王設計上位機監(jiān)控軟件。組態(tài)王是北京亞控自動化軟件科技有限公司推出的一款適合工控場合、功能強大的組態(tài)軟件產品,具有組態(tài)和二次開發(fā)功能,易使用的圖形畫面技術,支持與多種I/O設備的通訊,并提供大量的系統配置及開發(fā)工具,非常適合工控場合的現場監(jiān)控應用[6]。監(jiān)控軟件主要包括4個方面:通信連接、建立變量數據庫、界面設計、程序編制。
(1)通信連接
組態(tài)軟件通過DDE方式與LonWorks設備通信,因此需要對組態(tài)軟件的DDE設置服務程序名和話題名,數據交換方式必須選擇標準Windows DDE交換。
(2)變量數據庫
在組態(tài)軟件中定義需要使用的IO變量和內存變量。其中,IO變量要與LonWorks智能節(jié)點軟件中定義的輸入輸出網絡變量一一對應。
(3)界面設計
組態(tài)王為界面設計提供很多的圖形庫,而且用戶也可以調入在其他圖形軟件中設計完成的位圖來設計人機界面。根據系統實際需要創(chuàng)建靜態(tài)或動態(tài)的畫面,并確定畫面間的切換流程。
(4)程序編制
主要包括轉速調整子程序、單步執(zhí)行子程序、轉向控制子程序、界面動畫的變量處理等。
本文完成了基于LonWorks現場總線技術的網絡化電機控制系統,主要設計了LonWorks智能節(jié)點的硬件和軟件,并設計了上位機的監(jiān)控軟件,能夠實現對多電機轉向、轉速的群控。
[1] 高安邦,孫社文,單洪.LonWorks技術開發(fā)與應用[M].北京:機械工業(yè)出版社,2009:3-6.
[2] Toshiba Corporation.TMPN3150 NeuronChip for Distributed Intelligent Control Networks[M].New York:TOSHIBA Corporation,2006:1-6.
[3] Echelon Corporation.Neuron C Programmer's Guide[M].California:Echelon Corporation,2003 :2-13.
[4] Echelon Corporation.LonMaker User's Guide[M].California:Echelon Corporation,1995:7-11.
[5] Echelon Corporation.LonManager DDE Server User'sGuide[M].California:Echelon Corporation,1995 :5-7.
[6] 亞控科技.組態(tài)王6.5使用手冊[M].北京:北京亞控科技發(fā)展有限公司,2004:1-28.