基于現(xiàn)場(chǎng)總線(xiàn)的網(wǎng)絡(luò)監(jiān)控系統(tǒng)的結(jié)構(gòu)和實(shí)現(xiàn)方案
掃描二維碼
隨時(shí)隨地手機(jī)看文章
在絡(luò)紗過(guò)程中清除紗線(xiàn)中的有害紗疵,是紡紗生產(chǎn)的關(guān)鍵工序之一。以往紡紗過(guò)程中的清紗管理只是單機(jī)管理,利用電子清紗控制器(一種由兩級(jí)單片機(jī)構(gòu)成的RS-422全雙工總線(xiàn)式監(jiān)控裝置)實(shí)時(shí)進(jìn)行120路紗線(xiàn)上的紗疵清除工作;并完成該機(jī)臺(tái)相關(guān)參數(shù)的設(shè)定、統(tǒng)計(jì)、故障實(shí)時(shí)監(jiān)測(cè)和LCD界面控制等工作;同時(shí)積累了大量生產(chǎn)數(shù)據(jù),形成了“信息孤島”,不利于全車(chē)間范圍內(nèi)的絡(luò)紗生產(chǎn)和質(zhì)量管理。為了提高車(chē)間的生產(chǎn)效率和管理水平,我們開(kāi)發(fā)實(shí)現(xiàn)了一個(gè)基于現(xiàn)場(chǎng)總線(xiàn)的電子清紗器網(wǎng)絡(luò)監(jiān)控系統(tǒng)。該系統(tǒng)中,電子器清紗器具有了數(shù)字通信能力;同時(shí)增設(shè)工控機(jī)作為遠(yuǎn)程監(jiān)控計(jì)算機(jī),利用MOXA CP-114IS異步多串口卡組成以RS-485為物理層的現(xiàn)場(chǎng)總線(xiàn),將單個(gè)分散的現(xiàn)場(chǎng)設(shè)備變成網(wǎng)絡(luò)節(jié)點(diǎn),實(shí)現(xiàn)現(xiàn)場(chǎng)設(shè)備與遠(yuǎn)程監(jiān)控計(jì)算機(jī)之間的數(shù)據(jù)傳輸和信息交換。系統(tǒng)最大掛接127臺(tái)電子清紗器,輪巡采集每一臺(tái)電子清紗器中的相關(guān)數(shù)據(jù),組建數(shù)據(jù)庫(kù)并進(jìn)行統(tǒng)計(jì)分析,及完成相關(guān)參數(shù)的統(tǒng)一設(shè)定;增設(shè)網(wǎng)絡(luò)型溫濕度傳感器對(duì)紗線(xiàn)的生產(chǎn)條件自動(dòng)監(jiān)測(cè)紀(jì)錄,避免了人工抄錄的繁重工作;同時(shí)LED條屏顯示器滾動(dòng)顯示生產(chǎn)通知以及崗位產(chǎn)量質(zhì)量實(shí)時(shí)數(shù)據(jù),增強(qiáng)了崗位間的競(jìng)爭(zhēng)力。下面對(duì)該系統(tǒng)做詳細(xì)闡述。
1 系統(tǒng)拓?fù)浣Y(jié)構(gòu):
整個(gè)系統(tǒng)是一個(gè)基于RS-485物理協(xié)議,自定現(xiàn)場(chǎng)設(shè)備通信協(xié)議和標(biāo)準(zhǔn)現(xiàn)場(chǎng)總線(xiàn)協(xié)議共存,實(shí)現(xiàn)數(shù)據(jù)傳輸與信息交換的現(xiàn)場(chǎng)總線(xiàn)系統(tǒng)。包括監(jiān)控層、通信層、現(xiàn)場(chǎng)設(shè)備層三部分。系統(tǒng)結(jié)構(gòu)如圖1所示。
1.1監(jiān)控層
用工控機(jī)作為車(chē)間級(jí)監(jiān)控服務(wù)器,接收底層現(xiàn)場(chǎng)設(shè)備傳送的數(shù)據(jù)并組建數(shù)據(jù)庫(kù),實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)設(shè)備的監(jiān)控管理,進(jìn)行工藝參數(shù)的設(shè)定和修改。同時(shí)可以通過(guò)Intranet/Internet技術(shù)與企業(yè)局域網(wǎng)或遠(yuǎn)程控制網(wǎng)站相連。
1.2通信層
約定通信協(xié)議與各底層現(xiàn)場(chǎng)設(shè)備通信。由MOXA CP-114IS、研華ADMA-4510S(中繼器)形成基于RS-485物理協(xié)議的現(xiàn)場(chǎng)總線(xiàn)。其中,中繼器主要是考慮到現(xiàn)場(chǎng)設(shè)備與車(chē)間級(jí)監(jiān)控服務(wù)器通信距離遠(yuǎn)時(shí)選用。
1.3現(xiàn)場(chǎng)設(shè)備層
由數(shù)臺(tái)電子清紗器、溫濕度傳感器以及LED條屏顯示器構(gòu)成。其中與電子清紗裝置的連接是利用8251 USART(Universal Synchromous/Asynchronous Receiver/Transmitter)芯片,加入RS-485通信驅(qū)動(dòng)電路形成數(shù)字通信接口,在保證原有功能不受影響的前提下,通過(guò)通信層與監(jiān)控層交換數(shù)據(jù)。
2 通信層設(shè)計(jì)
2.1通信協(xié)議
監(jiān)控層工控機(jī)(稱(chēng)主機(jī),以下同)通過(guò)PCI通信控制卡(MOXA CP-114IS)的COM端口形成基于RS-485物理協(xié)議的現(xiàn)場(chǎng)總線(xiàn),最大可與127臺(tái)現(xiàn)場(chǎng)設(shè)備電子清紗器(稱(chēng)從機(jī),以下同)進(jìn)行主從通信。從機(jī)核心為Intel 8031單片機(jī),異步串行通信波特率可達(dá)19.2Kbps;每一字節(jié)傳送數(shù)據(jù)共有11位:1個(gè)起始位,8個(gè)數(shù)據(jù)位,1個(gè)奇偶校驗(yàn)位,1個(gè)停止位。主機(jī)與從機(jī)通過(guò)通信層以數(shù)據(jù)包形式傳送數(shù)據(jù),數(shù)據(jù)包格式如表1所示。
q35o4w4lhsf0521.gif (6.47 KB, 下載次數(shù): 0)
表1 通信數(shù)據(jù)包格式
其中:55H,AAH分別為幀頭和幀尾,用于標(biāo)識(shí)一個(gè)完整的數(shù)據(jù)包;數(shù)據(jù)包第2字節(jié)中的D6~D0為下位機(jī)的唯一地址編碼,確保某一時(shí)刻通信鏈路的唯一性,D7位用于標(biāo)識(shí)數(shù)據(jù)流的方向,便于處在總線(xiàn)上的各節(jié)點(diǎn)判斷數(shù)據(jù)流向,并配合地址碼表示每一數(shù)據(jù)包的目的地址或源地址;數(shù)據(jù)包3、4字節(jié)同為數(shù)據(jù)包的長(zhǎng)度,以增強(qiáng)通信的可靠性;第5字節(jié)為操作碼+項(xiàng)目碼共同組成的命令碼,并結(jié)合數(shù)據(jù)流標(biāo)志明確通信命令所表示的內(nèi)容和動(dòng)作要求(如設(shè)定,查詢(xún),正反向應(yīng)答等);緊接著的部分為數(shù)據(jù)包的可變信息體,根據(jù)不同的通信項(xiàng)目由主機(jī)下傳的參數(shù)或是從機(jī)上傳應(yīng)答的數(shù)據(jù)組成;校驗(yàn)和采用字節(jié)累加(不計(jì)進(jìn)位),保留最低字節(jié)計(jì)算的結(jié)果,確保數(shù)據(jù)包傳遞的正確性。
2.2通信過(guò)程
通信采取主從應(yīng)答方式,主機(jī)首先發(fā)送地址幀作為握手,被尋址的從機(jī)應(yīng)答主機(jī),建立連接;在判斷地址符合后,主機(jī)給被尋址的從機(jī)發(fā)送控制命令,被尋址的從機(jī)根據(jù)其命令向主機(jī)回送相應(yīng)的數(shù)據(jù)或應(yīng)答。同時(shí)所有未被尋址的從機(jī)根據(jù)通信協(xié)議監(jiān)聽(tīng)總線(xiàn)上的下行數(shù)據(jù)(以主機(jī)為參考點(diǎn)),以便取得地址信息與主機(jī)建立連接。
現(xiàn)場(chǎng)設(shè)備層設(shè)計(jì)
3.1現(xiàn)場(chǎng)設(shè)備層硬件設(shè)計(jì)
現(xiàn)場(chǎng)設(shè)備層每臺(tái)現(xiàn)場(chǎng)設(shè)備均由16個(gè)前級(jí)數(shù)據(jù)采集處理器(實(shí)時(shí)采集120路紗線(xiàn)信號(hào),采用RS-422全雙共總線(xiàn)與后級(jí)單片機(jī)通信)和1個(gè)后級(jí)單片機(jī)構(gòu)成監(jiān)控裝置。為了實(shí)現(xiàn)與上位監(jiān)控層的數(shù)字通信,加入RS-485通信驅(qū)動(dòng)電路。
圖3 現(xiàn)場(chǎng)設(shè)備層硬件原理框圖
3.2現(xiàn)場(chǎng)設(shè)備層軟件設(shè)計(jì)
作為現(xiàn)場(chǎng)設(shè)備的電子清紗器是一個(gè)24小時(shí)不間斷運(yùn)行的多任務(wù)實(shí)時(shí)監(jiān)控裝置。由于該裝置要檢測(cè)跑紗平均速度為600m/min,共120路紗線(xiàn)的紗線(xiàn)截面變化信號(hào),使其具有很高的實(shí)時(shí)性要求;同時(shí)還要實(shí)現(xiàn)相應(yīng)的動(dòng)作控制(如對(duì)有害紗疵的切除等)以及后級(jí)單片機(jī)系統(tǒng)的實(shí)時(shí)處理,顯示、統(tǒng)計(jì)等功能,又決定了該裝置的多任務(wù)性。這樣在保證原系統(tǒng)的實(shí)時(shí)性和多任務(wù)性的同時(shí),加入現(xiàn)場(chǎng)設(shè)備層的通信軟件在編寫(xiě)時(shí)就有了一定的特殊性。我們借鑒Windows編程的原理,在單片機(jī)編程中進(jìn)入消息概念,進(jìn)行基于消息的多任務(wù)機(jī)制編程。從機(jī)的監(jiān)控軟件主要流程如圖4所示(主要對(duì)通信部分說(shuō)明)。
圖4 從機(jī)監(jiān)控軟件主要流程圖(左—主程序 ,右—T0中斷程序通信部分)
其中:主程序主要完成上電自檢、消息巡檢、按照消息隊(duì)列組織通信信息體、數(shù)據(jù)發(fā)送、功能鍵散轉(zhuǎn)、驗(yàn)校設(shè)備等工作。為了保證系統(tǒng)的實(shí)時(shí)性,必須減少中斷服務(wù)的時(shí)間占用,因此在中斷程序中只做簡(jiǎn)短的消息標(biāo)志處理和必要工作。大量的消息響應(yīng)工作則利用中斷的間隙進(jìn)行處理。
T0中斷每0.5毫秒產(chǎn)生一次,該段程序是整個(gè)從機(jī)任務(wù)的管理員,是現(xiàn)場(chǎng)設(shè)備程序的核心。T0主要完成總線(xiàn)上數(shù)據(jù)的接收和判斷、采用時(shí)間片算法完成對(duì)紗線(xiàn)信號(hào)采集器的通信控制、車(chē)速的采集、產(chǎn)質(zhì)量記錄等任務(wù)。值得說(shuō)明的是,為了保證從機(jī)的實(shí)時(shí)性,沒(méi)有采用常規(guī)的中斷通信接收或等待查詢(xún)的接收編程方式,而是結(jié)合T0中斷時(shí)間的周期性和異步串行數(shù)據(jù)傳輸?shù)奶攸c(diǎn),定時(shí)做數(shù)據(jù)接收端的掃描,完成數(shù)據(jù)的接收(這部分程序占時(shí)不應(yīng)大于60個(gè)機(jī)器周期,否則影響主程響應(yīng)的實(shí)時(shí)性);當(dāng)主程監(jiān)測(cè)到有完整數(shù)據(jù)包到來(lái)標(biāo)志后,進(jìn)行數(shù)據(jù)包的流向、地址以及正確性分析并置欲發(fā)送信息的裝配標(biāo)志;同樣當(dāng)主程巡檢消息隊(duì)列時(shí)發(fā)現(xiàn)信息裝備標(biāo)志后,則分析主機(jī)命令、裝備信息、建立發(fā)送標(biāo)志,并以消息的形式通知主程用查詢(xún)方式發(fā)送數(shù)據(jù)包。這樣做不僅可以提高中斷的響應(yīng)速度,又不影響數(shù)據(jù)的處理和其他任務(wù)的執(zhí)行。很好的解決了多中斷實(shí)時(shí)數(shù)據(jù)響應(yīng)與數(shù)據(jù)處理耗時(shí)之間的矛盾,從而提高了系統(tǒng)的實(shí)時(shí)性。[!--empirenews.page--]
由于8251 USART芯片沒(méi)有數(shù)據(jù)幀和地址幀的區(qū)分功能,也就是說(shuō)總線(xiàn)上的所有從機(jī)必須監(jiān)聽(tīng)所有在總線(xiàn)上的數(shù)據(jù),這樣會(huì)由于各從機(jī)時(shí)時(shí)監(jiān)聽(tīng)數(shù)據(jù),嚴(yán)重影響系統(tǒng)的實(shí)時(shí)性。為了解決這個(gè)矛盾,我們定義了完備的通信協(xié)議,其中加入了地址碼、數(shù)據(jù)流向標(biāo)志和雙幀長(zhǎng)等通信規(guī)約,以幫助主、從機(jī)迅速判斷數(shù)據(jù)包的流向,完整性以及是否做處理的標(biāo)志,當(dāng)從機(jī)接收到非自己的數(shù)據(jù)包或錯(cuò)包時(shí),根據(jù)各種消息標(biāo)志快速退出通信處理過(guò)程。同時(shí)T0中的數(shù)據(jù)掃描避免了簡(jiǎn)單利用多中斷機(jī)制在監(jiān)聽(tīng)大量隨機(jī)總線(xiàn)數(shù)據(jù)時(shí),頻繁的中斷對(duì)整個(gè)軟件時(shí)間片劃分的破壞,以及由于接收數(shù)據(jù)的隨機(jī)性使得查詢(xún)接收方式不可行的缺點(diǎn),從而最大限度的保證了系統(tǒng)實(shí)時(shí)性。
4 監(jiān)控層軟件設(shè)計(jì)
監(jiān)控層軟件作為現(xiàn)場(chǎng)總線(xiàn)系統(tǒng)監(jiān)控軟件是在Windows 2000 Sever 、Delphi 6.0 以及 SQL Sever 2000的環(huán)境下開(kāi)發(fā)而成。主要由通信組態(tài)模塊、權(quán)限管理模塊、系統(tǒng)動(dòng)態(tài)監(jiān)控模塊、報(bào)表管理模塊、現(xiàn)場(chǎng)LED條屏顯示管理模塊、Intranet/Internet接入模塊(預(yù)留模塊)六部分組成。由于這類(lèi)監(jiān)控軟件編制方法趨于成熟規(guī)范,在此僅在建立該現(xiàn)場(chǎng)總線(xiàn)系統(tǒng)軟件參考模型的基礎(chǔ)上,對(duì)數(shù)據(jù)組織的核心模塊——通信組態(tài)模塊的一些特殊處理加以說(shuō)明。
眾所周知,現(xiàn)場(chǎng)總線(xiàn)技術(shù)的不斷發(fā)展,出現(xiàn)了多種現(xiàn)場(chǎng)總線(xiàn),且各具特色;同時(shí)我們也看到不同的現(xiàn)場(chǎng)總線(xiàn)有著不同的應(yīng)用領(lǐng)域,尚不存在一種能解決所有工業(yè)問(wèn)題的現(xiàn)場(chǎng)總線(xiàn);即便是同一類(lèi)型產(chǎn)品,也存在著用不同的現(xiàn)場(chǎng)總線(xiàn)實(shí)現(xiàn)的可能性;同時(shí)多種現(xiàn)場(chǎng)總線(xiàn)集成在一個(gè)系統(tǒng)中,讓不同的總線(xiàn)充分發(fā)揮各自的優(yōu)勢(shì)可以更好地共同完成控制任務(wù)。因此,在工業(yè)系統(tǒng)中必然會(huì)出現(xiàn)多種現(xiàn)場(chǎng)總線(xiàn)并存的局面。這就為監(jiān)控層系統(tǒng)軟件對(duì)多種現(xiàn)場(chǎng)總線(xiàn)的兼容性、擴(kuò)充性提出了更高的要求。為了適應(yīng)這樣的發(fā)展趨勢(shì),我們?cè)谙到y(tǒng)軟件(監(jiān)控層軟件)設(shè)計(jì)時(shí)構(gòu)造如下的參考模型,一定程度上解決了多種現(xiàn)場(chǎng)總線(xiàn)并存于一個(gè)系統(tǒng)的問(wèn)題,使系統(tǒng)軟件具有了較好的可擴(kuò)展性。目前,該系統(tǒng)軟件主要是針對(duì)在紡織企業(yè)中廣泛使用的普通絡(luò)筒系列電子清紗器(RS-485現(xiàn)場(chǎng)總線(xiàn),自定協(xié)議)設(shè)計(jì);考慮行業(yè)發(fā)展方向,軟件同時(shí)對(duì)自動(dòng)絡(luò)筒系列的電子清紗器(CAN現(xiàn)場(chǎng)總線(xiàn))以及其他現(xiàn)場(chǎng)總線(xiàn)協(xié)議設(shè)備具有良好的兼容性。