摘 要:主要介紹了一套煉膠機(jī)高壓油監(jiān)控系統(tǒng)" title="監(jiān)控系統(tǒng)">監(jiān)控系統(tǒng)。該系統(tǒng)基于嵌入式操作系統(tǒng)?滋C/OS-II、串口服務(wù)器" title="串口服務(wù)器">串口服務(wù)器、RS485總線和MC9S12DG256進(jìn)行設(shè)計(jì),可以設(shè)定參數(shù),實(shí)現(xiàn)了實(shí)時(shí)顯示、自動(dòng)監(jiān)控、聲光報(bào)警、遠(yuǎn)程管理等功能。
關(guān)鍵詞:串口服務(wù)器? 監(jiān)控系統(tǒng)? MC9S12DG256? uC/OS-II
?
??? 橡膠工業(yè)的快速發(fā)展對(duì)煉膠機(jī)械性能的要求越來越高。煉膠機(jī)高壓油包含高壓潤滑油和高壓軟化劑,其中,高壓潤滑油注入密封圈動(dòng)靜圈之間,起潤滑作用;高壓軟化劑注入密封圈與耐磨板之間,軟化密封圈外的橡膠顆粒,保證密封。高壓潤滑油和高壓軟化劑分別具有各自的油路,協(xié)同工作。高壓油系統(tǒng)的好壞直接影響著煉膠機(jī)的工作性能。因此,有必要對(duì)煉膠機(jī)的高壓油系統(tǒng)進(jìn)行準(zhǔn)確、高效的監(jiān)測控制。在發(fā)達(dá)國家,已經(jīng)實(shí)現(xiàn)了煉膠機(jī)高壓油系統(tǒng)監(jiān)控的自動(dòng)化;在國內(nèi),對(duì)煉膠機(jī)高壓油系統(tǒng)的控制管理水平還比較落后,尚未實(shí)現(xiàn)智能監(jiān)控。
傳統(tǒng)煉膠機(jī)高壓油監(jiān)控系統(tǒng)存在以下缺陷:采用分散獨(dú)立的機(jī)械儀表測量壓力并進(jìn)行壓力報(bào)警點(diǎn)檢測, 通過多個(gè)PLC控制油壓報(bào)警,溫度檢測、液位檢測和油泵的運(yùn)行采用專門PLC控制,監(jiān)測儀表數(shù)量多、成本高、精度低、控制過程繁瑣、不便于統(tǒng)一管理;系統(tǒng)顯示部分遠(yuǎn)離操作者,界面不友好,數(shù)據(jù)采集分析不方便;現(xiàn)場布線復(fù)雜,穩(wěn)定性差,造價(jià)高;不具有遠(yuǎn)程監(jiān)控功能,不便于企業(yè)統(tǒng)一監(jiān)控管理。總之,傳統(tǒng)的煉膠機(jī)高壓油系統(tǒng)監(jiān)控管理水平比較落后,影響著煉膠機(jī)的工作性能。
??? ?因此,研究開發(fā)了新的煉膠機(jī)高壓油監(jiān)控系統(tǒng)。該系統(tǒng)基于以太網(wǎng)串口服務(wù)器和RS485總線構(gòu)建整體結(jié)構(gòu),基于高性能MC9S12DG256微控制器" title="微控制器">微控制器進(jìn)行硬件設(shè)計(jì),基于?滋C/OS-II嵌入式實(shí)時(shí)操作系統(tǒng)進(jìn)行軟件設(shè)計(jì)。
1 煉膠機(jī)高壓油監(jiān)控系統(tǒng)硬件結(jié)構(gòu)
1.1 系統(tǒng)整體結(jié)構(gòu)
以太網(wǎng)是當(dāng)今最流行、應(yīng)用最廣泛的通信技術(shù),具有價(jià)格低、多種傳輸介質(zhì)可選、高速度、易于組網(wǎng)等諸多優(yōu)點(diǎn),而且其運(yùn)行經(jīng)驗(yàn)最為豐富,擁有大量安裝維護(hù)人員,是一種理想的工業(yè)通信網(wǎng)絡(luò)[1]。該系統(tǒng)采用了臺(tái)灣MOXA公司的以太網(wǎng)串口服務(wù)器,構(gòu)建了智能化煉膠機(jī)高壓油監(jiān)控管理系統(tǒng)。其整體結(jié)構(gòu)如圖1所示。
?
?
底層是現(xiàn)場控制層。采用RS485總線實(shí)現(xiàn)現(xiàn)場智能監(jiān)控設(shè)備的通信。串口服務(wù)器自動(dòng)實(shí)現(xiàn)以太網(wǎng)協(xié)議與RS485總線協(xié)議的轉(zhuǎn)換,實(shí)現(xiàn)串口設(shè)備與以太網(wǎng)絡(luò)的互聯(lián)。
??? 中間層為車間監(jiān)控層,對(duì)車間進(jìn)行整體監(jiān)控。這一層從現(xiàn)場控制設(shè)備中獲取數(shù)據(jù),實(shí)現(xiàn)對(duì)現(xiàn)場控制設(shè)備運(yùn)行狀況的監(jiān)測,以便及時(shí)發(fā)現(xiàn)生產(chǎn)中的問題。
頂層是遠(yuǎn)程監(jiān)視管理層,遠(yuǎn)程用戶能隨時(shí)查詢現(xiàn)場控制設(shè)備的運(yùn)行狀況,對(duì)生產(chǎn)過程進(jìn)行實(shí)時(shí)的遠(yuǎn)程監(jiān)控[2]。
1.2 MC9S12DG256微控制器簡介
??? 該系統(tǒng)中,主控單元和數(shù)據(jù)采集模塊" title="數(shù)據(jù)采集模塊">數(shù)據(jù)采集模塊都以MC9S12DG256微控制器為基礎(chǔ)。MC9S12DG256微控制器是Freescale公司主推的16位微控制器產(chǎn)品之一,內(nèi)部總線頻率可達(dá)25MHz;采用優(yōu)化的指令集,指令的運(yùn)算速度得到了很大提高。片上集成了許多標(biāo)準(zhǔn)模塊,包括一個(gè)16位中央處理器(HCS12 CPU)、3個(gè)同步串行通信口SPI、2個(gè)異步串行通信口SCI、2個(gè)CAN總線接口(兼容CAN2.0A/B協(xié)議)、1個(gè)I2C總線接口、2個(gè)10位8通道A/D轉(zhuǎn)換模塊、8路輸入捕捉/輸出比較通道、1個(gè)8通道PWM輸出模塊、眾多獨(dú)立數(shù)字I/O口。它具有較大的存儲(chǔ)空間,在片內(nèi)擁有256K字節(jié)的Flash、4K字節(jié)的EEPROM、12K字節(jié)的RAM,可以存儲(chǔ)大量的數(shù)據(jù)并可移植一些嵌入式操作系統(tǒng)。其內(nèi)部具有1個(gè)PLL模塊,應(yīng)用鎖相環(huán)技術(shù)提高了系統(tǒng)的電磁兼容性,降低了對(duì)外的輻射干擾,提高了系統(tǒng)的穩(wěn)定性。它可以在-40~+125℃的溫度范圍下工作,惡劣環(huán)境對(duì)其應(yīng)用的限制很小[3]。
MC9S12DG256微控制器擁有這些豐富的內(nèi)部資源和外部接口資源,功能強(qiáng)大、運(yùn)行速度較快、抗干擾能力強(qiáng),并且具有較高的性價(jià)比,在汽車電子、測量儀表、自動(dòng)控制等領(lǐng)域都得到廣泛應(yīng)用。
1.3 數(shù)據(jù)采集模塊
??? 在該監(jiān)控系統(tǒng)中,數(shù)據(jù)采集模塊功能如圖2所示。數(shù)據(jù)采集模塊采集高壓油的壓力、溫度、液位等數(shù)據(jù),將數(shù)據(jù)通過RS485總線傳送給主控單元;接收主控單元發(fā)送來的數(shù)據(jù),控制潤滑油和軟化劑加熱、加油和油泵的運(yùn)轉(zhuǎn)。
?
?
?
1.4 主控單元
????在該監(jiān)控系統(tǒng)中,主控單元整體功能如圖3所示。主控單元接收來自數(shù)據(jù)采集模塊和PLC的數(shù)據(jù),進(jìn)行系統(tǒng)控制。將控制命令發(fā)送給數(shù)據(jù)采集模塊;顯示壓力數(shù)據(jù)、工作狀態(tài);通過以太網(wǎng)串口服務(wù)器與上位機(jī)通信。
?
?
1.5 壓力顯示單元
????在主控單元處進(jìn)行油壓顯示。按照要求,有20個(gè)油壓檢測點(diǎn),每個(gè)檢測點(diǎn)用3位8段數(shù)碼管進(jìn)行壓力顯示,對(duì)于壓力過高或者過低的測試點(diǎn)要給予閃爍指示。這里采用了ALTERA公司的高性能CPLD芯片EPM570T144C5,自定義了數(shù)碼管顯示管理方案。將顯示數(shù)碼管分為4組,對(duì)每一組15個(gè)數(shù)碼管采用了動(dòng)態(tài)驅(qū)動(dòng)方法。數(shù)碼管顯示管理電路的內(nèi)部結(jié)構(gòu)如圖4所示。
?
?
2 基于uC/OS-II" title="uC/OS-II">uC/OS-II的系統(tǒng)軟件設(shè)計(jì)
2.1 uC/OS-II在MC9S12DG256控制器上的移植
uC/OS-II是一個(gè)源代碼公開的嵌入式實(shí)時(shí)操作系統(tǒng), 是一個(gè)完全搶占式多任務(wù)的實(shí)時(shí)內(nèi)核。uC/OS-II的使用使得應(yīng)用程序的設(shè)計(jì)過程大為減化,系統(tǒng)資源得到更好的利用,系統(tǒng)軟件的可擴(kuò)展性和實(shí)時(shí)性得到保障。
將uC/OS-II移植到MC9S12DG256微控制器上,需要做兩方面的工作:一是為內(nèi)核編寫與硬件相關(guān)的代碼;二是重新定義內(nèi)核的大小和功能[4]。
2.1.1 為內(nèi)核編寫與硬件相關(guān)的代碼
為內(nèi)核編寫與硬件相關(guān)的代碼需要修改3個(gè)與微控制器體系相關(guān)的文件OS_CPU.H、OS_CPU_A.ASM和OS_CPU_C.C。下文將分別介紹這3個(gè)文件的移植工作。
?? ?(1)在OS_CPU.H文件中定義相關(guān)的宏,聲明能夠識(shí)別的數(shù)據(jù)類型、堆棧寬度和增長方向,定義開中斷函數(shù)、關(guān)中斷函數(shù)、保存堆棧指針函數(shù)、任務(wù)切換函數(shù)。其中堆棧由高地址向低地址遞減,任務(wù)切換函數(shù)通過指令陷阱來實(shí)現(xiàn)。
??? (2)在OS_CPU_A.ASM文件中修改與硬件相關(guān)的幾個(gè)匯編函數(shù)。
??? (3)在OS_CPU_C.C文件中,惟一必要的函數(shù)是OSTaskStkInit( ),它是任務(wù)堆棧初始化函數(shù)。在MC9S12DG256微控制器上,任務(wù)堆??臻g由高至低依次保存著16位程序計(jì)數(shù)器PC、16位變址寄存器Y、16位變址寄存器X、8位累加器A、8位累加器B、條件碼寄存器CCR、參數(shù)指針PPAGE,如圖5所示。當(dāng)任務(wù)堆棧初始化完成后, OSTaskStkInit()返回新的堆棧指針。
?
?
2.1.2 重新定義內(nèi)核的大小和功能
????重新定義內(nèi)核的大小和功能,需要修改配置文件OS_CFG.H。在該文件中重新定義任務(wù)最低優(yōu)先級(jí)、最多事件控制數(shù)目、最多任務(wù)數(shù)、是否允許事件標(biāo)志使能、是否允許郵箱使能、時(shí)鐘節(jié)拍數(shù)以及其他的一些配置。通過修改這些設(shè)置,可對(duì)uC/OS-II進(jìn)行裁剪,使之適應(yīng)本系統(tǒng)的具體需要。
2.2? 軟件系統(tǒng)任務(wù)劃分及管理
uC/OS-II是基于優(yōu)先級(jí)調(diào)度的實(shí)時(shí)多任務(wù)操作系統(tǒng),因此,基于?滋C/OS-Ⅱ的嵌入式實(shí)時(shí)系統(tǒng)設(shè)計(jì),要根據(jù)設(shè)計(jì)目標(biāo)將系統(tǒng)的功能合理地分解成單獨(dú)的任務(wù),合理安排任務(wù)的優(yōu)先級(jí),并且需要解決任務(wù)之間的通信問題。數(shù)據(jù)采集模塊任務(wù)劃分及管理如圖6所示。主控單元任務(wù)劃分及管理如圖7所示。
該煉膠機(jī)高壓油監(jiān)控系統(tǒng)針對(duì)煉膠機(jī)車間的實(shí)際情況,基于串口服務(wù)器和MC9S12DG256控制器進(jìn)行硬件設(shè)計(jì),基于uC/OS-II嵌入式實(shí)時(shí)操作系統(tǒng)進(jìn)行軟件設(shè)計(jì)。經(jīng)實(shí)驗(yàn)運(yùn)行驗(yàn)證,該監(jiān)控系統(tǒng)成本低廉,控制靈活,操作方便,穩(wěn)定性高,可滿足現(xiàn)實(shí)生產(chǎn)需要。
參考文獻(xiàn)
[1]?陳俊,余兵.工業(yè)以太網(wǎng)絡(luò)技術(shù)的應(yīng)用與發(fā)展. PLC &?FA,2006,(3).
[2]?程曉琳,徐用懋.現(xiàn)場總線控制網(wǎng)絡(luò)模型與網(wǎng)絡(luò)集成.測控技術(shù),2000,(10).
[3]?MC9S12DT256 device user Guide V0307. Freescale semiconductor,Inc,2006.
[4]?JEAN J. L著,邵貝貝等譯.嵌入式實(shí)時(shí)操作系統(tǒng)uC/OS-II(第2版).北京:北京航空航天大學(xué)出版社,?2003.