基于A(yíng)TMEGA16的智能控制器的開(kāi)發(fā)研制
1、引言
隨著(zhù)科學(xué)技術(shù)的飛速發(fā)展和人們生活水平的提高,普通儀表已顯過(guò)時(shí),不能滿(mǎn)足現代生活的需求?,F代儀表已日趨數字化、網(wǎng)絡(luò )化和智能化。微電子技術(shù)的發(fā)展和工業(yè)過(guò)程對測控方面要求的加強,使智能儀表的應用更廣、成本更低。AVR單片機具有低成本、低功耗、高速度的特點(diǎn)。本控制器主要針對浙大中控的 AE2000B過(guò)程控制實(shí)驗裝置設計的,對其水箱的液位、電熱鍋爐的溫度進(jìn)行控制、顯示。
2、智能儀表的研制開(kāi)發(fā)
智能儀表是以單片機為核心的儀表,其設計要點(diǎn)大致有兩點(diǎn),即模塊化設計和模塊的連接。
2、1 模塊化設計
依據儀表的功能、精度要求等,自上而下按儀表功能層次把硬件和軟件分成若干個(gè)模塊,分別進(jìn)行設計與調試,然后把它們連接起來(lái),進(jìn)行總調,這是設計儀表最基本的思想。
硬件部分包括主機電路、過(guò)程輸入/輸出通道(模擬量輸入/輸出通道和開(kāi)關(guān)量輸入/輸出通道)、人機聯(lián)系部件和接口電路以及串行數據通信接口等。軟件部分包括監控程序(包括初始化、鍵盤(pán)和顯示管理、中斷管理、時(shí)鐘管理、自診斷等),中斷處理程序以及各種測量(數字濾波、標度變換、非線(xiàn)性校正等)和控制算法等功能模塊。模塊化設計的優(yōu)點(diǎn)是:無(wú)論是硬件還是軟件,每個(gè)模塊都相對獨立,故能獨立地進(jìn)行研制和修改,使復雜的研制工作得到簡(jiǎn)化,從而提高工作教益和研制速度。
2、2 模塊的連接
上述各種軟、硬件研制、調試之后還需要將它們按一定的方式連接起來(lái),才能構成完整的儀表,以實(shí)現數據采集、傳輸、處理和輸出等各項功能。為實(shí)現既定的各種功能,軟件模塊的連接一般是通過(guò)監控主程序調用各種功能模塊,或采用中斷的方法實(shí)時(shí)地執行相應的服務(wù)模塊來(lái)實(shí)現。
硬件模塊連接方法有兩種:一種是以主機模塊為核心,通過(guò)設計者自行定義的內部總線(xiàn)(數據總線(xiàn)、地址總線(xiàn)和控制總線(xiàn))連接其它模塊;另一種是用標準總線(xiàn)連接其它模塊,這種方式可選擇標準化、模塊化的典型電路,使配接靈活、方便。
3、系統硬件研制
3、1 單片機的選擇
單片機是整個(gè)智能儀器的核心部件,它直接影響整機的硬件和軟件設計,它對智能儀表的功能、性?xún)r(jià)比以及研制周期起決定性作用。一般兼有數據處理任務(wù)的控制類(lèi)智能儀表,大多采用數據處理型的單片機。我們選用高性能、低功耗的8位ATMEGA16單片機,它具有如下特點(diǎn):16K 字節的系統內可編程Flash(具有同時(shí)讀寫(xiě)的能力,即RWW);512字節EEPROM;1K字節SRAM;32個(gè)通用I/O口線(xiàn);32個(gè)通用工作寄存器;三個(gè)具有比較模式的靈活的定時(shí)器/計數器(T/C);可編程串行接口;低功耗空閑和掉電方式等。
3、2 外部設備的選擇
一臺智能儀表往往需要有多種外部設備。根據功能模塊劃分,外部設備通常指過(guò)程輸入/輸出通道、人機接口(鍵盤(pán)、顯示器、連接電路)等。
圖1 智能控制器硬件系統原理圖
3、2、1 模擬量輸入通道
A/D轉換器我們直接運用MEGA16芯片上的5-8路10位AD轉換。ATmega16有一個(gè)10位的逐次逼近型 ADC。ADC與一個(gè)8通道的模擬多路復用器連接,能對來(lái)自端口A(yíng)的8路單端輸入電壓進(jìn)行采樣。單端電壓輸入以0V (GND)為基準。器件還支持16 路差分電壓輸入組合。兩路差分輸入(ADC1、ADC0 與ADC3、ADC2)有可編程增益級,在A(yíng)/D 轉換前給差分輸入電壓提供0dB(1x)、20dB(10x) 或46dB(200x)的放大級。七路差分模擬輸入通道共享一個(gè)通用負端(ADC1),而其他任何ADC輸入可作為正輸入端。ADC包括一個(gè)采樣保持電路,以確保在轉換過(guò)程中輸入到ADC的電壓保持恒定。
3、2、2 開(kāi)關(guān)量輸出通道
在測控系統中,被控設備的驅動(dòng)常常采用模擬量輸出驅動(dòng)和數字量(開(kāi)關(guān)量)輸出驅動(dòng)兩種方式。前者由于其輸出受模擬器件的信號漂移等影響,很難達到較高的控制精度。隨著(zhù)電子技術(shù)的迅速發(fā)展,特別是單片機進(jìn)入測控領(lǐng)域后,數字量輸出控制的應用日益廣泛。精度控制上,開(kāi)關(guān)量輸出控制比模擬輸出控制高。利用開(kāi)關(guān)量輸出控制往往無(wú)需改動(dòng)硬件,而只需改變程序就可用于不同的控制場(chǎng)合。
我們采用開(kāi)關(guān)量輸出,并提供2種輸出方式由用戶(hù)選擇: 繼電器控制輸出(AC 220V/3A.DC 24V/5A)阻性負載;SCR(可控硅)輸出400V/0.5A。
3、2、3 LED顯示電路
顯示屏驅動(dòng)電路的主要作用是接受來(lái)自控制系統的數字信號,將發(fā)光二極管點(diǎn)亮,實(shí)現在LED顯示屏上的信息的顯示。在顯示電路中采用雙4位LED顯示,測量值和目標值同時(shí)顯示,LED顯示屏使用的驅動(dòng)電路是基于通用型集成電路移位寄存器74HC595和6B595來(lái)設計的。
3、2、4 通訊接口電路
通訊傳輸采用標準的RS485或RS232計算機數據串行通訊方式,通過(guò)串口按一定的通訊協(xié)議接收來(lái)自計算機串口RS232的信號,經(jīng)過(guò)處理后按一定的規律傳送到顯示屏上顯示。
4、系統軟件開(kāi)發(fā)
系統軟件是整個(gè)控制系統的靈魂,而在控制系統中,核心部分是控制器的設計。本次設計我們主要采用了PID控制實(shí)現,全部軟件都是用C語(yǔ)言編寫(xiě)的。依據總體設計的要求,軟件流程圖如圖3,它由如下模塊組成:
圖2 ATMEGA16電路圖
圖3 主程序流程圖
4、1 初始化模塊
要求完成I/ O的設置、數據存儲器分配(包括A/ D采樣的結果、輸入按鍵的鍵碼、程序標志等) 、定時(shí)器、A/ D的設置并開(kāi)中斷。
4、2 循環(huán)掃描模塊
檢測是否有鍵盤(pán)輸入、A/ D轉換完成否、是否定時(shí)中斷等判別任務(wù)。若有則轉跳至相應的子程序或中斷程序。
4、3 中斷處理模塊
依據狀態(tài)完成定時(shí)計數、A/ D采樣、鍵盤(pán)掃描等任務(wù)。
4、4 顯示驅動(dòng)模塊
依據狀態(tài)完成溫度或系數的顯示。
4、5 鍵盤(pán)處理模塊
檢測鍵碼并進(jìn)入相應處理程序。
4、6 定時(shí)中斷模塊
完成定時(shí)計數,定時(shí)間隔約為1s,為系數的設置提供數碼。
4、7 溫度/液位控制模塊
依據測得的數據和預置數的差確定控制信號的輸出。
5、智能控制器的應用
用ATMEGA16單片機實(shí)現的智能控制器,主要有如下功能:
(1) 具有比較強的控制功能,可以實(shí)現基本的PID控制、串級控制、基本的PID控制、串級控制、比值控制、前饋控制、史密斯補償控制、位調節等功能。
(2) 能對輸入信號進(jìn)行處理,如線(xiàn)性化、數據濾波、標度變換等。
(3) 具有顯示測量值和給定值的功能;具有故障報警的功能。
(4) 具有通信的功能。
(5) 具有自動(dòng)/手動(dòng)切換的功能。
將研發(fā)的智能控制器應用于浙大中控的AE2000B型過(guò)程控制實(shí)驗裝置中,具有穩定性好、精度高、抗干擾能力強等特點(diǎn),滿(mǎn)足實(shí)驗所需的各項指標的要求,達到了預期的效果。
6、結束語(yǔ)
通過(guò)實(shí)踐運行表明,所設計的系統能夠可靠、穩定、無(wú)擾動(dòng)地完成手動(dòng)、自動(dòng)切換的功能。以PID算法為核心的控制器能很好的滿(mǎn)足系統的穩定性和精度要求,并且具有開(kāi)發(fā)周期短、成本低、性能高、功能易擴大的優(yōu)點(diǎn)。
參考文獻
[1] 宋建國.智能儀表原理與設計技術(shù).北京航空航天大學(xué)出版社[M],1998
[2] 馬天程.智能測控儀表的研究[J].儀表技術(shù)與傳感器,1997,12:23~28
[3] 袁樂(lè )安.智能儀表的開(kāi)發(fā)[J].礦業(yè)研究與開(kāi)發(fā),2000,20(2) :34~36
[4] 王 健,單 印.一種高精度智能溫度控制器[J].微計算機信息,2002,18(11) :31~32
評論