在生產(chǎn)酸酐的小型控制現(xiàn)場中,需要對各反應(yīng)釜的溫度和壓力進(jìn)行實(shí)時(shí)的監(jiān)測,并使它們保持在規(guī)定的誤差范圍內(nèi)。由于需要控制的設(shè)備較多、相互距離又較遠(yuǎn),且現(xiàn)場有較強(qiáng)的工業(yè)干擾,因此采用體積小、抗干擾能力強(qiáng)的單片機(jī)作為上位機(jī)與現(xiàn)場控制器來組成分布式數(shù)據(jù)采集與控制系統(tǒng)。在該系統(tǒng)中,上位機(jī)與現(xiàn)場控制器之間采用通信網(wǎng)絡(luò)連接,各測控單元獨(dú)立工作,完成參數(shù)的測量與控制;而在主控室內(nèi),由主機(jī)對各現(xiàn)場測控器的工作狀態(tài)進(jìn)行監(jiān)測,向各分機(jī)發(fā)送控制命令以及對整個(gè)生產(chǎn)過程的數(shù)據(jù)進(jìn)行統(tǒng)一的顯示、儲(chǔ)存等。在本系統(tǒng)中采用主從式RS-485串行通信標(biāo)準(zhǔn)。
1 單片機(jī)通信網(wǎng)絡(luò)
RS-485串行總線接口標(biāo)準(zhǔn)以差分平衡方式傳播信號,在發(fā)送端驅(qū)動(dòng)器將TTL電平信號轉(zhuǎn)換成差分信號輸出,在接受端接收器將差分信號還原成TTL信號,這樣具有很強(qiáng)的抗共模干擾的能力,同時(shí)接收靈敏度也很高;在傳輸數(shù)據(jù)速度達(dá)100 kb/s時(shí)通信距離可達(dá)1200 m;允許一對雙絞線上一個(gè)發(fā)送器驅(qū)動(dòng)多個(gè)負(fù)載設(shè)備,設(shè)備簡單、成本低和維護(hù)方便。因此,工業(yè)現(xiàn)場控制系統(tǒng)中一般都采用該總線標(biāo)準(zhǔn)進(jìn)行數(shù)據(jù)傳輸。
在該通信系統(tǒng)中,在主機(jī)的控制下,通過軟件協(xié)議,主從機(jī)間可互相通信。并且在一個(gè)多機(jī)通信系統(tǒng)中,只有一臺(tái)單機(jī)作為主機(jī),各臺(tái)從機(jī)間不能相互通信,即使有信息交換也必須通過主機(jī)轉(zhuǎn)發(fā)。各單片機(jī)間通過RS-485總線通信,主機(jī)通過點(diǎn)名方式給各從機(jī)發(fā)送命令,實(shí)現(xiàn)對系統(tǒng)的主控權(quán)。主機(jī)在執(zhí)行任務(wù)的同時(shí)要對從機(jī)不斷地輪詢,從而監(jiān)視從機(jī)的狀況、接收從機(jī)的請求或給從機(jī)發(fā)送命令。
通信系統(tǒng)總體結(jié)構(gòu)如圖1所示。
為了保證正常傳輸信號干凈、無毛刺,在總線末端接一個(gè)120 Ω的匹配電阻吸收總線上的反射信號。電纜使用雙芯屏蔽電纜,屏蔽端連接設(shè)備機(jī)殼。為了避免干擾,每個(gè)設(shè)備都應(yīng)接地。
2 主控制器設(shè)計(jì)
主控制器通過串行通信接口實(shí)現(xiàn)對各現(xiàn)場控制器的直接控制,主要用于實(shí)現(xiàn)人-機(jī)對話功能。由于該系統(tǒng)實(shí)時(shí)性要求不是很高,為了減少線路板的面積和減少占用單片機(jī)的口線,選用體積小、管腳少、可以串行輸入/輸出的芯片。
主機(jī)選用8051單片機(jī)。因?yàn)橹鳈C(jī)要完成數(shù)據(jù)儲(chǔ)存,并要求具有掉電保護(hù)的功能,所以8051需要擴(kuò)展外存。串行EEPROM以其體積小、功耗低、價(jià)格低廉、高可靠性、連線簡單等顯著優(yōu)勢,逐漸被用于多功能的對速度要求不太高的智能儀器儀表中。在本系統(tǒng)中,選用24系列的串行EEPROM 24C64。因P0口內(nèi)部沒有上拉電阻,故作I/O口使用時(shí)外加10 kΩ的上拉電阻。
鍵盤采用中斷掃描工作方式。當(dāng)有鍵按下時(shí)INT0為低電平,向CPU發(fā)中斷申請,進(jìn)入鍵盤中斷服務(wù)程序進(jìn)行按鍵識(shí)別及相應(yīng)功能程序的執(zhí)行。采用串行口靜態(tài)驅(qū)動(dòng)方式,使用74LS164串行輸入、并行輸出8位移位寄存器作為段選碼驅(qū)動(dòng)器,每個(gè)數(shù)碼管使用一片74LS164,把4片串聯(lián)起來,便構(gòu)成一個(gè)4位的LED顯示器。
各串行件都用軟件編程實(shí)現(xiàn)時(shí)鐘及數(shù)據(jù)的傳遞。
主控制器的硬件電路如圖2所示。
3 現(xiàn)場控制器設(shè)計(jì)
每臺(tái)現(xiàn)場控制器是各自獨(dú)立的系統(tǒng),接收(溫度或壓力)傳感器輸出的模擬信號,和工藝要求的參數(shù)相比較,從而得出該路信號修正量的大小。輸出的模擬信號作為電磁閥的輸入信號來控制流量(氣體或水蒸氣)的大小,從而達(dá)到對溫度或壓力的控制。圖3是它的硬件電路。
單片機(jī)選用20腳的AT89C2051。AT89C2051是美國ATMEL公司生產(chǎn)的一種高性能單片機(jī),價(jià)格低廉、與Intel公司生產(chǎn)的MCS 51單片機(jī)高度兼容。AT89C2051將多功能8位CPU和2 kB閃爍存儲(chǔ)器集成在1塊芯片上,對輸出口進(jìn)行了簡化,形成了一種僅有20個(gè)引腳的單片機(jī),在功能上相當(dāng)于Intel公司的8031最小應(yīng)用系統(tǒng)。
具有串行輸入輸出的A/D轉(zhuǎn)換芯片由于接線簡單,傳輸距離遠(yuǎn),在工業(yè)測控系統(tǒng)中得到廣泛應(yīng)用。ADC0832是帶有串行輸入輸出8位逐次逼近式模數(shù)轉(zhuǎn)換器,它的模數(shù)轉(zhuǎn)換過程與數(shù)據(jù)輸出過程都是在外部時(shí)鐘脈沖的控制下進(jìn)行的,故模數(shù)轉(zhuǎn)換速度比較低,但可以滿足本系統(tǒng)的要求。在該系統(tǒng)中將DI固定接高電平,這樣由DI端輸入的控制字為“111”,這樣AD0832的CH1為單端輸入工作方式,CH0不工作。
同樣,對于D/A轉(zhuǎn)換也使用具有串行輸入輸出的轉(zhuǎn)換芯片。TCL5615為美國德州儀器公司的產(chǎn)品,是具有串行接口的數(shù)模轉(zhuǎn)換器,其輸出為電壓型,最大輸出電壓是基準(zhǔn)電壓值的2倍。帶有上電復(fù)位功能,上電時(shí)把DAC寄存器復(fù)位至全零。ADC0832和TCL5615的時(shí)鐘和數(shù)據(jù)的傳遞用軟件編程來實(shí)現(xiàn)。
4 通信軟件設(shè)計(jì)
系統(tǒng)通信軟件有主控制器(主機(jī))通信軟件和現(xiàn)場控制器(從機(jī))通信軟件組成。由于現(xiàn)場控制器還要完成信號的監(jiān)測和控制,所以為了提高工作效率,在主從機(jī)發(fā)送和接收過程中,都采用中斷控制方式。
4.1主機(jī)通信軟件設(shè)計(jì)
主機(jī)的通信功能主要包括呼叫各從機(jī),并向各從機(jī)發(fā)送控制命令。當(dāng)主機(jī)要發(fā)送數(shù)據(jù)時(shí),先調(diào)用相應(yīng)的子程序,完成發(fā)送數(shù)據(jù)前的初始化、參數(shù)預(yù)置以及和從機(jī)接通聯(lián)系的工作,真正的發(fā)送數(shù)據(jù)安排在中斷服務(wù)程序中。主程序在調(diào)用完后,繼續(xù)干自己的工作,以后只需檢查設(shè)定的標(biāo)志位的狀態(tài)就可知道數(shù)據(jù)是否發(fā)完。
4.2從機(jī)通信軟件設(shè)計(jì)
從機(jī)平時(shí)對監(jiān)控對象進(jìn)行數(shù)據(jù)的采集和控制,當(dāng)有串行中斷時(shí),執(zhí)行串行中斷服務(wù)程序,判別是否為本分機(jī)的地址信息,若是本機(jī)的地址,轉(zhuǎn)為接收控制命令,并執(zhí)行相應(yīng)的操作:若不是本機(jī)地址,則退出中斷。
通信軟件的流程圖如圖4所示。
5 結(jié)語
分布式的數(shù)據(jù)采集系統(tǒng),由各個(gè)從機(jī)完成參數(shù)測量及控制任務(wù),不但能代替模擬儀表完成常規(guī)的過程控制,并且能進(jìn)行復(fù)雜算式運(yùn)算和順序控制,在現(xiàn)場對輸入、輸出數(shù)據(jù)進(jìn)行處理,減少了信息傳輸量,降低了對上級計(jì)算機(jī)的要求;主機(jī)通過數(shù)據(jù)通道,直接與過程相聯(lián)結(jié),完成生產(chǎn)計(jì)劃、管理、決策的最優(yōu)化,從而實(shí)現(xiàn)了整個(gè)生產(chǎn)過程的最優(yōu)化自動(dòng)控制。對該系統(tǒng)進(jìn)行進(jìn)一步的完善和擴(kuò)展,可以應(yīng)用于多種集散式控制系統(tǒng),實(shí)現(xiàn)多臺(tái)分布較遠(yuǎn)設(shè)備的低成本、高可靠。
責(zé)任編輯:Gt