|
】 摘要:本文描述了一個基於現場總線的電子清紗器網絡監控係統的結構和實現方案。係統采用現場總線技術,利用MOXA CP-114IS構成雙向串行多節點多總線協議共存的數字通信係統,實施對現場設備實時數據的采集和監控。文中闡述了係統各組成部分的功能和實現方案。重點介紹了主、從機之間的通信規約以及通信軟件模塊的編程思路。 關鍵詞:現場總線, RS-485, 實時監控, 單片機, 消息, 多任務機製,COM 中圖分類號:TP273 引言 在絡紗過程中清除紗線中的有害紗疵,是紡紗生產的關鍵工序之一。以往紡紗過程中的清紗管理隻是單機管理,利用電子清紗控製器(一種由兩級單片機構成的RS-422全雙工總線式監控裝置)實時進行120路紗線上的紗疵清除工作;並完成該機台相關參數的設定、統計、故障實時監測和LCD界麵控製等工作;同時積累了大量生產數據,形成了“信息孤島”,不利於全車間範圍內的絡紗生產和質量管理。為了提高車間的生產效率和管理水平,我們開發實現了一個基於現場總線的電子清紗器網絡監控係統。該係統中,電子器清紗器具有了數字通信能力;同時增設工控機作為遠程監控計算機,利用MOXA CP-114IS異步多串口卡組成以RS-485為物理層的現場總線,將單個分散的現場設備變成網絡節點,實現現場設備與遠程監控計算機之間的數據傳輸和信息交換。係統最大掛接127台電子清紗器,輪巡采集每一台電子清紗器中的相關數據,組建數據庫並進行統計分析,及完成相關參數的統一設定;增設網絡型溫濕度傳感器對紗線的生產條件自動監測紀錄,避免了人工抄錄的繁重工作;同時LED條屏顯示器滾動顯示生產通知以及崗位產量質量實時數據,增強了崗位間的競爭力。下麵對該係統做詳細闡述。 1 係統拓撲結構: 整個係統是一個基於RS-485物理協議,自定現場設備通信協議和標準現場總線協議共存,實現數據傳輸與信息交換的現場總線係統。包括監控層、通信層、現場設備層三部分。係統結構如圖1所示。 1.1監控層 用工控機作為車間級監控服務器,接收底層現場設備傳送的數據並組建數據庫,實現對現場設備的監控管理,進行工藝參數的設定和修改。同時可以通過Intranet/Internet技術與企業局域網或遠程控製網站相連。 1.2通信層 約定通信協議與各底層現場設備通信。由MOXA CP-114IS、研華ADMA-4510S(中繼器)形成基於RS-485物理協議的現場總線。其中,中繼器主要是考慮到現場設備與車間級監控服務器通信距離遠時選用。 1.3現場設備層 由數台電子清紗器、溫濕度傳感器以及LED條屏顯示器構成。其中與電子清紗裝置的連接是利用8251 USART(Universal Synchromous/Asynchronous Receiver/Transmitter)芯片,加入RS-485通信驅動電路形成數字通信接口,在保證原有功能不受影響的前提下,通過通信層與監控層交換數據。 2 通信層設計 2.1通信協議 監控層工控機(稱主機,以下同)通過PCI通信控製卡(MOXA CP-114IS)的COM端口形成基於RS-485物理協議的現場總線,最大可與127台現場設備電子清紗器(稱從機,以下同)進行主從通信。從機核心為Intel 8031單片機,異步串行通信波特率可達19.2Kbps;每一字節傳送數據共有11位:1個起始位,8個數據位,1個奇偶校驗位,1個停止位。主機與從機通過通信層以數據包形式傳送數據,數據包格式如表1所示。  表1 通信數據包格式 其中:55H,AAH分別為幀頭和幀尾,用於標識一個完整的數據包;數據包第2字節中的D6~D0為下位機的唯一地址編碼,確保某一時刻通信鏈路的唯一性,D7位用於標識數據流的方向,便於處在總線上的各節點判斷數據流向,並配合地址碼表示每一數據包的目的地址或源地址;數據包3、4字節同為數據包的長度,以增強通信的可靠性;第5字節為操作碼+項目碼共同組成的命令碼,並結合數據流標誌明確通信命令所表示的內容和動作要求(如設定,查詢,正反向應答等);緊接著的部分為數據包的可變信息體,根據不同的通信項目由主機下傳的參數或是從機上傳應答的數據組成;校驗和采用字節累加(不計進位),保留最低字節計算的結果,確保數據包傳遞的正確性。 2.2通信過程 通信采取主從應答方式,主機首先發送地址幀作為握手,被尋址的從機應答主機,建立連接;在判斷地址符合後,主機給被尋址的從機發送控製命令,被尋址的從機根據其命令向主機回送相應的數據或應答。同時所有未被尋址的從機根據通信協議監聽總線上的下行數據(以主機為參考點),以便取得地址信息與主機建立連接。通信鏈路主要過程如圖2所示:  圖2 主從通信過程示意圖 3 現場設備層設計 3.1現場設備層硬件設計 現場設備層每台現場設備均由16個前級數據采集處理器(實時采集120路紗線信號,采用RS-422全雙共總線與後級單片機通信)和1個後級單片機構成監控裝置。為了實現與上位監控層的數字通信,加入RS-485通信驅動電路。硬件原理框圖如圖3所示。  圖3 現場設備層硬件原理框圖 3.2現場設備層軟件設計 作為現場設備的電子清紗器是一個24小時不間斷運行的多任務實時監控裝置。由於該裝置要檢測跑紗平均速度為600m/min,共120路紗線的紗線截麵變化信號,使其具有很高的實時性要求;同時還要實現相應的動作控製(如對有害紗疵的切除等)以及後級單片機係統的實時處理,顯示、統計等功能,又決定了該裝置的多任務性。這樣在保證原係統的實時性和多任務性的同時,加入現場設備層的通信軟件在編寫時就有了一定的特殊性。我們借鑒Windows編程的原理,在單片機編程中進入消息概念,進行基於消息的多任務機製編程。從機的監控軟件主要流程如圖4所示(主要對通信部分說明)。  圖4 從機監控軟件主要流程圖(左―主程序 ,右―T0中斷程序通信部分) 其中:主程序主要完成上電自檢、消息巡檢、按照消息隊列組織通信信息體、數據發送、功能鍵散轉、驗校設備等工作。為了保證係統的實時性,必須減少中斷服務的時間占用,因此在中斷程序中隻做簡短的消息標誌處理和必要工作。大量的消息響應工作則利用中斷的間隙進行處理。 T0中斷每0.5毫秒產生一次,該段程序是整個從機任務的管理員,是現場設備程序的核心。T0主要完成總線上數據的接收和判斷、采用時間片算法完成對紗線信號采集器的通信控製、車速的采集、產質量記錄等任務。值得說明的是,為了保證從機的實時性,沒有采用常規的中斷通信接收或等待查詢的接收編程方式,而是結合T0中斷時間的周期性和異步串行數據傳輸的特點,定時做數據接收端的掃描,完成數據的接收(這部分程序占時不應大於60個機器周期,否則影響主程響應的實時性);當主程監測到有完整數據包到來標誌後,進行數據包的流向、地址以及正確性分析並置欲發送信息的裝配標誌;同樣當主程巡檢消息隊列時發現信息裝備標誌後,則分析主機命令、裝備信息、建立發送標誌,並以消息的形式通知主程用查詢方式發送數據包。這樣做不僅可以提高中斷的響應速度,又不影響數據的處理和其他任務的執行。很好的解決了多中斷實時數據響應與數據處理耗時之間的矛盾,從而提高了係統的實時性。 由於8251 USART芯片沒有數據幀和地址幀的區分功能,也就是說總線上的所有從機必須監聽所有在總線上的數據,這樣會由於各從機時時監聽數據,嚴重影響係統的實時性。為了解決這個矛盾,我們定義了完備的通信協議,其中加入了地址碼、數據流向標誌和雙幀長等通信規約,以幫助主、從機迅速判斷數據包的流向,完整性以及是否做處理的標誌,當從機接收到非自己的數據包或錯包時,根據各種消息標誌快速退出通信處理過程。同時T0中的數據掃描避免了簡單利用多中斷機製在監聽大量隨機總線數據時,頻繁的中斷對整個軟件時間片劃分的破壞,以及由於接收數據的隨機性使得查詢接收方式不可行的缺點,從而最大限度的保證了係統實時性。 4 監控層軟件設計 監控層軟件作為現場總線係統監控軟件是在Windows 2000 Sever 、Delphi 6.0 以及 SQL Sever 2000的環境下開發而成。主要由通信組態模塊、權限管理模塊、係統動態監控模塊、報表管理模塊、現場LED條屏顯示管理模塊、Intranet/Internet接入模塊(預留模塊)六部分組成。由於這類監控軟件編製方法趨於成熟規範,在此僅在建立該現場總線係統軟件參考模型的基礎上,對數據組織的核心模塊――通信組態模塊的一些特殊處理加以說明。 眾所周知,現場總線技術的不斷發展,出現了多種現場總線,且各具特色;同時我們也看到不同的現場總線有著不同的應用領域,尚不存在一種能解決所有工業問題的現場總線;即便是同一類型產品,也存在著用不同的現場總線實現的可能性;同時多種現場總線集成在一個係統中,讓不同的總線充分發揮各自的優勢可以更好地共同完成控製任務。因此,在工業係統中必然會出現多種現場總線並存的局麵。這就為監控層係統軟件對多種現場總線的兼容性、擴充性提出了更高的要求。為了適應這樣的發展趨勢,我們在係統軟件(監控層軟件)設計時構造如下的參考模型,一定程度上解決了多種現場總線並存於一個係統的問題,使係統軟件具有了較好的可擴展性。目前,該係統軟件主要是針對在紡織企業中廣泛使用的普通絡筒係列電子清紗器(RS-485現場總線,自定協議)設計;考慮行業發展方向,軟件同時對自動絡筒係列的電子清紗器(CAN現場總線)以及其他現場總線協議設備具有良好的兼容性。為監控層係統軟件構建的參考模型如圖5所示(圖中僅以兩種現場總線協議共存的情況舉例說明和分析)。 在監控層軟件參考模型中:表示層為主機構建友好的人機監控界麵,向用戶提供絡紗車間的各種實時數據,統計數據;調度層是表示層和傳輸層連接的橋梁,該層根據上層的需求,向下層索取相關數據;同時將下層上傳的各項數據分發給上層;傳輸層將識別調度層提交的數據所屬現場總線協議,打包、成幀,通過通信物理層硬件設備發送給從機;並識別從機上傳數據幀的協議類型,解包,提交給數據調度層。  圖5 監控層係統軟件參考模型 在這個模型中可以看出,普通絡筒機電子清紗器與自動絡筒機的電子清紗器組網時二者之間的差異主要體現在數據傳輸層,而上麵兩層則相對比較獨立。針對這種情況,我們在軟件設計中采用COM技術(The Component Object Model , 組件對象模型)來實現數據傳輸層,並定義其與數據調度層的接口。然後以此接口為普通絡筒機編寫一個符合自定現場通信協議的組件類;為自動絡筒機編寫一個遵守CAN協議的組件類。在應用程序中根據某個通信串口掛接的是普通絡筒機還是自動絡筒機而使用不同的組件類。同樣利用該模型,對於遵守MODBUS協議的網絡溫濕度傳感器,也可以建立屬於自己協議的組件類實現與數據調度層的連接,實施對紡紗車間生產重要參數(溫、濕度)的定時采集。 監控層軟件設計中采用COM技術為各通信端口建立通信組件類的一維數組CommObject,與現場設備地址一維數組之間形成的多對一的映射,實現現場設備地址的動態管理;采用時間片調度算法,使應用程序後台調度均勻合理(例如定時查詢每台從機的電壓、係統校時等處理),且不影響其前台程序的運行;采用事務最小範圍化,保證數據與數據庫交互的一致性,同時增設布爾變量,跟蹤應用程序與後台數據庫的連接狀態,當兩者連接中斷時,啟用後台線程恢複應用程序與數據庫的連接(非硬件故障情況下)。 5 抗幹擾措施 紡織工業生產環境惡劣,為了增強係統的可靠性。對現場的幹擾通過軟硬件的方法進行了有效的抑製和處理。 5.1硬件抗幹擾措施 紡織工業生產環境中,供電係統和空間電磁以及靜電幹擾都很嚴重。因此,在係統規劃初期,就選用了具有良好抗幹擾能力的工業級板卡和芯片。主機通信卡上選用PCI擴展的MOXA CP114-IS異步多串口卡,該卡采用芯片硬件流量控製(數據流向自動控製 ADDC (Automatic Data Direction Control) 功能)和內建終端電阻保證了數據的完整性, 具有的光電隔離(2KV)和浪湧保護(25KV ESD)功能,為係統在惡劣的工業環境下運行提供了可靠保證;從機通信驅動芯片選用有完全絕緣接口的MAX1480E,這對於傳輸總線上的高壓尖峰信號和可能受到的靜電衝擊(紡織車間這種幹擾很嚴重)具有很好的抑製作用;為防止幹擾引起從機單片機係統死循環,采用看門狗複位電路,使從機程序恢複正常運行;通信線纜選用屏蔽雙絞線纜,以上選用的硬件有效的抑製了係統中輸入信號和現場電磁的幹擾。 5.2軟件抗幹擾措施 現場的幹擾將會直接影響從機的運行狀況,為了使這種幹擾的影響減少,針對從機USART 8251芯片不具備地址幀和數據幀區分的現狀,為此製定了較為完備通信協議。數據包中含有的幀頭/幀尾,數據流向標誌,從機地址,雙幀長和校驗字等信息,為主從機準確判斷數據包的完整性和正確性提供了可靠保證。 為了保護從機係統中的有效數據,在單片機係統中對片外RAM和外部擴展芯片(例如:8251、8253、8279等)的地址做了統一規劃。片外RAM單元采用16位地址,同時用P2.7做片外RAM的片選信號,而外部擴展芯片則采用8位地址。這樣,在程序中對外部擴展芯片的操作時,可以利用對P2.7的控製,有效保護RAM中的重要數據。 6 結束語 工業現代化的發展,對生產過程的自動控製、信息整合提出了更高的要求。基於現場總線的電子清紗器監控係統在設計結構上,以RS-485物理協議為基礎,針對特殊現場設備自定通信協議,建構了一個基於現場總線技術的數字通信網絡,將各類分散的現場設備有機結合、實現了資源共享;同時提出的該現場總線係統軟件編寫的參考模型,使該係統實現了多類協議共存,建構了一個開放的,標準總線與非標準多現場總線共存的係統,從此整個車間範圍內的信息溝通了起來,為車間更好的進行產、質量管理以及人員、設備管理提供了條件。同時由於采用現場總線技術,使現場設備具有數字通信功能,所有現場設備都可以方便的掛接在兩條串行通信線上,大大節約了資金,提高了可靠性,並具有良好的開放性。 目前,該係統經過反複實驗調試,現已進入現場試運行階段,效果良好。該係統不僅適用於紡織工業中的電子清紗控製,也適用於各類大麵積單機生產的信息化管理。因此,基於現場總線的電子清紗器網絡監控係統的設計思路對於其它各類單機現場設備都有廣泛的適用性,同時對於多現場總線共存的係統監控軟件的編寫也具有一定的參考價值。、 參考文獻 1. 陽憲惠, 現場總線技術及其應用, 清華大學出版社, 1999 2. 何立民, MCS-51係列單片機應用係統設計:係統配置與接口技術, 北京航空航天大學出版社, 1990 3. 武自芳 虞鶴鬆, 微機控製係統及其應用, 西安交通大學出版社, 1998 4. B&B Electronics Mfg. Co. Inc , RS-422 AND RS-485 Application Note, 1997 5. Jan Axelson , Serial Port Complete, Published by Lakeview Research, 1999 6. 徐進 薑世峰等, SQL Sever 2000 編程員指南, 北京希望電子出版社, 2000 7. 飛思科技產品研發中心, Delphi 6 數據庫開發, 電子工業出版社, 2002
|