電動執(zhí)行器廣泛應(yīng)用于流量控制中,它的作用是接收控制器指令,使閥門的開度產(chǎn)生相應(yīng)的變化,以達到調(diào)節(jié)流量的目的。傳統(tǒng)的電動執(zhí)行器,由于精度差,死區(qū)大,接線復(fù)雜等原因,遠不能適應(yīng)現(xiàn)代化工業(yè)生產(chǎn)的需要。隨著微電子技術(shù)的發(fā)展,電動執(zhí)行器的結(jié)構(gòu)和性能不斷地提高,出現(xiàn)了以微處理器為核心的電動執(zhí)行器。本文設(shè)計了一種基于ADμC812單片機的電動執(zhí)行器。
1 基本原理
電動執(zhí)行器接受上位控制系統(tǒng)的控制信號,同時接受輸出的位置反饋信號,在控制器內(nèi)對這兩個信號進行運算,實現(xiàn)對閥位的閉環(huán)調(diào)節(jié)??刂破鬟€接收來自電動機的過流信號,來自執(zhí)行器腔內(nèi)的溫度信號,來自減速器的過力矩信號和行程開關(guān)信號等,并據(jù)此對電動機進行控制,以實現(xiàn)電機的過流過熱保護,輸出過力矩保護和輸出電氣限位。
2 硬件電路設(shè)計
進行系統(tǒng)硬件設(shè)計時,既要考慮編寫程序的方便,又要充分利用軟件的功能來簡化硬件結(jié)構(gòu)。
2.1 單片機的選擇
圖1是電動執(zhí)行器的結(jié)構(gòu)圖,系統(tǒng)有4路模擬量輸入,而模擬量要轉(zhuǎn)換為數(shù)字量才能用單片機CPU 處理。為提高控制器的性能價格比,應(yīng)采用內(nèi)部集成有A/D轉(zhuǎn)換的單片機。系統(tǒng)必須有設(shè)定參數(shù)和掉電保護功能,在不進行外部擴展的情況下,希望在單片機內(nèi)部具有可進行讀寫操作的閃速/電可擦寫存貯器。經(jīng)過各方面的綜合比較,選用了AD公司ADμC812微轉(zhuǎn)換器[1]作為控制核心。該芯片加上少量的外圍電路,就可組成完整的電動執(zhí)行器控制器,電路結(jié)構(gòu)非常簡單。
ADμC812具有8051(8052)內(nèi)核MCU,它在單個芯片內(nèi)集成了高性能的自校準(zhǔn)8通道12位A/D轉(zhuǎn)換器,兩路12位D/A 轉(zhuǎn)換器。ADμC812本身帶有8k字節(jié)FLASH 存貯器,640字節(jié)的FLASH/EEPROM,256字節(jié)的數(shù)據(jù)存貯器。另外,MCU具有包括看門狗,電源監(jiān)視器和ADC DMA功能。為多處理器接口和I/O口提供了32條可編程I/O線,I2C兼容的SPI和標(biāo)準(zhǔn)UART 串行口I/O口等。
2.2 模擬輸入電路
位置發(fā)送器以電位器作為傳感器,將執(zhí)行機構(gòu)輸出軸的角位移轉(zhuǎn)變?yōu)殡妷盒盘枺斎氲綑z測電路,經(jīng)差分放大,輸出和角度對應(yīng)的電流信號。該信號與上位控制系統(tǒng)送來的反映閥門開度的電流信號,分別經(jīng)過采樣電阻將其輸入至ADμC812的A/D轉(zhuǎn)換口。其電路如圖2所示。
對過流信號的檢測,不用經(jīng)過比較器,而是采用模擬信號整流分壓后直接輸入,通過ADμC812自帶的A/D轉(zhuǎn)換器進行檢測,并進行軟件比較,以確定是否過流。
過熱檢測使用溫度傳感器AD590,經(jīng)過放大和信號調(diào)理后,輸出0.0~2.5V的電壓信號送入ADμC812的模擬輸入端,經(jīng)A/D轉(zhuǎn)換后通過軟件和設(shè)定值進行比較,實現(xiàn)溫度檢測和過熱保護。
2.3 鍵盤及顯示電路
電動執(zhí)行器鍵盤及顯示電路應(yīng)具有以下功能:
(1)正常運行情況下,顯示閥門的開度;
(2)在出現(xiàn)故障的情況下,顯示故障出現(xiàn)的可能原因,并發(fā)出報警;
(3)在設(shè)置參數(shù)狀態(tài)下,配合鍵盤顯示鍵入的各種參數(shù)。
電路設(shè)計中,在不對單片機進行擴展的情況下,應(yīng)盡可能少地占用I/O口線。選用了MAX7219作為顯示驅(qū)動芯片。MAX7219是MAXIM公司生產(chǎn)的一種串行輸入/輸出共陰極顯示驅(qū)動器,用來把微處理器接口到8位7段數(shù)字LED顯示器①。其片內(nèi)包含有一個BCD碼的譯碼器,多路復(fù)用掃描電路,段數(shù)字驅(qū)動器及存貯每個數(shù)字的8×8RAM[2]。
在本電路設(shè)計中,MAX7219和ADμC812通過SPI接口實現(xiàn)4位LED顯示。電路結(jié)構(gòu)簡單,只占用3條I/O口線。由于SPI接口有硬件的支持,軟件編程也很方便。
鍵盤直接使用ADμC812的P2.0~P2.3端口,通過這4個按鍵可實現(xiàn)執(zhí)行器的各種狀態(tài)的轉(zhuǎn)換和參數(shù)的輸入。
2.4 輸出電路
控制信號從ADμC812的P0口1.2端口輸出,經(jīng)過ULN20O3放大,控制具有過零觸發(fā)的固態(tài)繼電器驅(qū)動電機的正轉(zhuǎn)或反轉(zhuǎn),達到控制的目的。電路簡單,工作穩(wěn)定可靠,不污染電網(wǎng)。
2.5 通信接口
為了使電動執(zhí)行器具有通用性,設(shè)計了支持RS485和現(xiàn)場總線CAN協(xié)議的兩種接口供用戶選擇,RS485接口芯片采用SN75LBC185,CAN接口芯片采用PHILPS公司的SJA1000通信控制器和82C250總線收發(fā)器。
3 軟件設(shè)計
系統(tǒng)軟件由主程序、鍵盤服務(wù)程序和子程序組成。程序用C語言編寫,采用模塊化設(shè)計,編譯完成通過串行口下載到ADμC812的片內(nèi)FLASH存貯器中。子程序主要由初始化、數(shù)據(jù)采集、控制運算和輸出、運行狀態(tài)顯示、報警輸出、通信子程序組成。鍵盤服務(wù)通過定時查詢方式,實現(xiàn)各種狀態(tài)轉(zhuǎn)換的顯示和參數(shù)的輸入。程序流程圖如圖3所示。
由于電動機的慣性,位反信號的滯后等原因,在控制算法中,若采用傳統(tǒng)的控制,往往容易造成超調(diào),造成電動機的頻繁動作[3]。在控制運算和輸出子程序中,采用新的控制算法,即比例一脈沖控制。在閥門的實際開度和信號偏差較大時采用比例控制,在偏差較小時采用脈沖控制,其脈沖寬度為Tp=T×D+T0,其中T為時間常數(shù);D為位反偏差;T0為執(zhí)行機構(gòu)啟動的*小時間。
CAN通信服務(wù)子程序采用一個監(jiān)控網(wǎng)絡(luò),即在CAN總線上有一臺上位計算機節(jié)點和若干個電動執(zhí)行器節(jié)點。電動執(zhí)行器要傳送的數(shù)據(jù)有閥門的實際開度和各種參數(shù),故障報警時的數(shù)據(jù)等,在上位計算機向電動執(zhí)行器發(fā)出請求數(shù)據(jù)要求且電動執(zhí)行器收到數(shù)據(jù)時,電動執(zhí)行器將現(xiàn)場采集的數(shù)據(jù)打包發(fā)送給上位計算機。當(dāng)現(xiàn)場出現(xiàn)故障時,電動執(zhí)行器則不等上位計算機發(fā)出請求數(shù)據(jù)要求,就將故障數(shù)據(jù)發(fā)送。
電動執(zhí)行器工作在比較惡劣的電磁環(huán)境下,抗干擾性設(shè)計尤為重要。由于ADμC812內(nèi)部存在看門狗電路,在程序中通過WDTCON 控制寄存器設(shè)置定時時間,通過WDC.1使能啟動看門狗定時器,實現(xiàn)對程序執(zhí)行過程的監(jiān)控。
4 結(jié)束語
以ADμC812為控制核心的電動執(zhí)行器,和傳統(tǒng)的電動執(zhí)行器相比,具有以下優(yōu)點:
(1)控制精度和動態(tài)特性明顯提高,其控制精度可達到1.5%,比傳統(tǒng)執(zhí)行其高出2%~4%;
(2)電路簡單,元件數(shù)少,實現(xiàn)了機電一體化結(jié)構(gòu),可靠性高,接線方便;
(3)先進的通信功能,易于和上位機通信;
(4)較強的自診斷保護功能,能診斷輸入信號和反饋信號斷線,驅(qū)動電機異常,電機過熱過流等故障,并能針對不同的故障原因,采取相應(yīng)的保護措施。