基于MXT8051單片機的發(fā)動(dòng)機車(chē)載監控系統研究
引言
本文引用地址:http://dyxdggzs.com/article/110393.htm隨著(zhù)我國石油資源的日益枯竭、人們環(huán)保意識的增強、國內人均機動(dòng)車(chē)保有量的增加,節能減排,正逐漸成為動(dòng)力機械類(lèi)OEM們不得不重點(diǎn)關(guān)注的首要問(wèn)題。而另一個(gè)更加緊迫地促使OEM實(shí)施技術(shù)升級的客觀(guān)因素就是:世界各國都在積極嘗試推行新的機動(dòng)車(chē)排放法規,預計最遲到2015年,不符合最新排放標準的動(dòng)力機械將被禁止生產(chǎn)銷(xiāo)售。當改進(jìn)工藝、增壓中冷、結構優(yōu)化等傳統方法不足以滿(mǎn)足新標準時(shí),基于微控制器的電子智能優(yōu)化控制將成為新的曙光。
根據成熟的發(fā)動(dòng)機控制理論,當發(fā)動(dòng)機工作在較高轉速時(shí),要求氣缸內的工作介質(zhì)較早起燃才能實(shí)現較高的工作效率,而當工作在較高負載時(shí),則需要每個(gè)工作循環(huán)燃燒更多的燃料吸入更多的氣體,可是一旦轉為從降低排放的角度來(lái)考慮的話(huà),情況則完全相反,如果從產(chǎn)品可靠性出發(fā),則又是一另番景象,從事發(fā)動(dòng)機性能優(yōu)化的工程師們在努力尋找某些參數的平衡點(diǎn),基于發(fā)動(dòng)機工作原理的復雜性,會(huì )發(fā)現可編程微控制器在這個(gè)領(lǐng)域有著(zhù)極為廣闊的應用空間。
51單片機是最為人們熟知的可編程微控制器,也是對目前所有兼容Intel 8031指令系統的單片機的統稱(chēng)。該系列單片機的始祖是Intel的8031單片機,后來(lái)隨著(zhù)Flash rom技術(shù)的發(fā)展,8051單片機取得了長(cháng)足的進(jìn)展,成為目前應用最廣泛的8位微控制器,由北京時(shí)代民芯公司最新推出的MXT8051單片機就是最具代表性的國產(chǎn)8051單片機之一。
系統工作原理
與其它大部分電子控制系統一樣,發(fā)動(dòng)機電控系統也是由信號采集、信號處理和執行機構等部分組成。MXT8051片上自帶3路10位ADC功能,可用于采集三路由電壓型或電阻型傳感器輸出的模擬信號,在發(fā)動(dòng)機上,可以是氣壓、水壓、油壓、氣溫、水溫、油溫、各種流量、角度、速度等等,MXT8051單片機的ADC功能設定較為簡(jiǎn)單,給EAD寄存器賦值1,使能10位AD轉換,ADMR寄存器的高5位控制AD轉換頻率,低3位控制當前通道序號,ADCON最高位置1,模擬電路總允許,最后,拉高ENDATA寄存器的bit6位ADCEN,即可從ADRESH和ADRESL中分別讀取當前ADC轉換結果的高8位和低2位了。
對于轉速的測量,本文采用的是日本電裝公司的常開(kāi)式霍爾轉速傳感器,每當目標旋轉體上的鐵磁體靠近,傳感器就會(huì )感應出一個(gè)脈沖,將該脈沖輸出腳接至MXT8051單片機的外部中斷端,并將定時(shí)器溢出中斷設定到較高優(yōu)先級,定時(shí)訪(fǎng)問(wèn)外部中斷次數并清零,就可以算出采樣時(shí)間內的平均轉速了。
MXT8051的P2.0~P2.4五個(gè)雙向IO可作為外部中斷使用,本例中采用P2.1連接轉速傳感器的信號端,定時(shí)器0設為最高優(yōu)先級,程序進(jìn)入主函數時(shí),通常先通過(guò)PCON|=0x02;指令使能外部時(shí)鐘,然后EA=1;開(kāi)啟總中斷,IE=0xff;使能串口、定時(shí)器、外部信號、低電壓檢測等中斷,通過(guò)賦值IT0和IT1為1,設定外部中斷1、2均為下降沿觸發(fā)。
MXT8051單片機有足夠的GPIO用于驅動(dòng)LCD顯示發(fā)動(dòng)機運行參數,本例使用的是帶中文字庫的LCD12864(ST7920),采用串行通信方式,除電源與地參考外另需5個(gè)GPIO用于通信,即RS為數據、指令選擇;R/W(SID)為讀寫(xiě)選擇(信號位);E(SCLK)為信號使能(時(shí)鐘位);PSB為并行與串行選擇位;RST為復位腳。本例采用MXT8051單片機的P1.0~P1.4共五個(gè)雙向IO控制12864實(shí)時(shí)顯示各種運行時(shí)信息。
軟件設計
上位機通信軟件使用VB6.0編制,由于系統工作中需要記錄一些工況點(diǎn)的數據,故調用了excel工作表對數據表格進(jìn)行操作,基本通信原理為:上位機軟件啟動(dòng)后向目標板發(fā)送通信指令,目標板開(kāi)始把采集到的發(fā)動(dòng)機工況參數按指定順序發(fā)送給上位機軟件,軟件接收到信號以后把數據按指定順序分配到窗體的顯示控件,當需要向目標板寫(xiě)入map數據時(shí),上位機軟件通過(guò)串口發(fā)送寫(xiě)入指令,8051接收到第一位map數據時(shí),即采用IIC協(xié)議將該值寫(xiě)入AT24C08,然后以相同地址讀取該值發(fā)送回上位機軟件,地址累加1,同時(shí)上位機軟件的串口通信事件激活,從excel工作表讀取下一個(gè)單元格的值重復執行發(fā)送-IIC協(xié)議寫(xiě)入-讀取-發(fā)送-地址累加的通信行為,直至最后一位完成讀寫(xiě)。上位機軟件的界面如圖1所示。
評論