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