拔河小學生六年級作文
單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統集成到一個芯片上。下面是小編為大家整理的基于單片機控制的數字氣壓計畢業設計,歡迎閱讀。

摘 要: 數字氣壓計是一種精確測量壓力大小的工具,運用單片機的數字氣壓計攜帶方便,操作簡單,精確度高,安全性好,具有良好的應用前景。對基于單片機控制的數字氣壓計進行詳細介紹,分析氣壓計的總體結構,介紹氣壓計的軟硬件實現方法和數字氣壓計系統的調試與仿真,保障數字氣壓計系統功能的可靠性和穩定性。
關鍵詞: 數字氣壓計; 軟件實現方法; 硬件實現方法; 結構分析
0 引 言
氣壓計是一種運用壓敏元件將待測氣壓轉化成易被檢測和傳輸的電壓電流信號,通過后續電路處理將數據顯示出來的一種測量工具。氣壓計的核心器件是氣壓傳感器,其在監測壓力大小、控制壓力變化和對其他物理數量測量多個方面都有十分重要的作用。氣壓計通過不同高度時的氣壓變化獲取氣壓數值。根據氣象學規定,作用于單位面積上空空氣柱的重量被稱為大氣壓力。根據氣象學研究,垂直方向上氣壓隨著海拔高度的上升而下降。在近地地區,每上升100 m氣壓降低10 hPa,在距地面5~6 km的空中每上升100 m高度氣壓降低7 hPa;在距地面9~10 km的高空中每上升100 m氣壓降低5 hPa。當空氣中有下降氣流的時候氣壓會增加,反之會減小。
數字氣壓計廣泛應用于工礦企業、電子產品和戶外作業之中,經過長時間的發展其精確度越來越高,功能更加多樣化,逐步向智能化、多功能化方向發展,筆者認為基于單片機控制的數字氣壓計發展前景很好。
1 氣壓計的總體結構分析
本文介紹的數字氣壓計采用集成的單片機控制,測量時待測氣壓被氣壓傳感器轉換成可檢測的電壓輸出,通過V/F轉化器將氣壓傳感器輸出的電壓信號轉化成有特定頻率的脈沖信號,單片機接收脈沖信號,根據其單位時間內接收的脈沖數和電壓頻率的線性關系式計算出相應的氣壓值,最后氣壓值顯示在LED屏幕上。
在這個流程中有以下3點需要注意:根據實際需求和氣壓傳感器的具體參數選擇合適的氣壓傳感器芯片;選擇合適的V/F轉換器,確保氣壓傳感器輸出的模擬電壓電流信號轉換成能被識別的數字信號;設計合理的單片機與各模塊的接口電路。數字氣壓計測量出的氣壓值是在氣壓傳感器的線性范圍內的絕對氣壓值。
2 數字氣壓計的硬件實現
數字氣壓計的硬件構建需要考慮其穩定性、復雜性、制造成本、維護成本等多種因素。本節要對數字氣壓計的硬件設施的組成進行介紹,建立一套穩定的、系統的硬件設施。
2.1 氣壓傳感器
氣壓傳感器在整個氣壓計結構中處于核心地位,其選擇需要考慮測量精度、測量范圍、溫度變化、絕對氣壓值等因素。數字氣壓計測量的是絕對氣壓值,因此需要能測量絕對氣壓值的氣壓傳感器;為了簡化電路設計,提高氣壓計的穩定性和抗干擾能力,還需要氣壓傳感器具有溫度補償。
根據上述要求,在本數字氣壓計中選擇Motorda的MAX4100A型氣壓傳感器。這種氣壓傳感器的溫度補償范圍為-40~125 ℃,承壓范圍為20~1 050 kPa,在這個壓力范圍內有良好的線性,電壓輸出信號范圍為0.3~4.65 V。本氣壓傳感器可以用于測量絕對氣壓值,其輸出關系具體如下:
Vout=Vs(0.010 59P-0.152 8)±Error
式中:Vs是工作電壓;P是大氣壓值;Vout為輸出電壓。
2.2 V/F轉換
待測氣壓被氣壓傳感器測出的是電壓電流信號,但是其不能被單片機識別,這時候就需要V/F器件把輸入進來的電壓值轉換成可被單片機識別的脈沖串。雖然V/F器件本身不是量化器,但是定時器和計數器的存在可以實現A/D的轉換,將模擬電壓信號轉化成抗干擾能力強、可實現遠距離傳輸、可直接輸入計算機的脈沖串。 本文根據外圍電路相關性能標準和實現的難易程度選取LM331電壓/脈沖轉換芯片,這種器件采用的是溫度補償能隙基準電路,溫漂最大能達到50 ppm/℃,溫度穩定性非常好,而且這種器件輸出的脈沖串兼容性好,可以和任何邏輯形式兼容;LM331可以使用單雙電源供電,電壓允許范圍為5~40 V,最大非線性誤差為0.01%。LM331的壓頻轉化關系為:
fo=KVi
其中,K=[Rs2.09RtCtRL],Rs=Rs1+Rs。
其中R的作用是調節電路的轉換增益,K的值由設計者根據具體情況具體設定。考慮到單片機要使用測頻率法測量fo,為保證頻率信號的測量精度,在LM331中K=2 000,Rs=28.424 kΩ。對于不同元件的參數有著不同的要求,設計者要根據數字氣壓計的實際使用需求來選擇元件的參數和測量精度。需要注意的是在選擇V/F器件時要選取漏電流小的電容器,使用低通濾波器減小輸出電壓中的干擾脈沖,提高數據精度。 2.3 單片機 在本設計中,氣壓計需要單片機的P1口和P3口的一部分和中斷源、定時器、計數器各一個。因此在本設計中選取AT89S52控制器,該控制器具有低功耗、高性能的優點,具有8 KB的FLASH和可編程的存儲器。AT89S52控制器是Atmel公司生產的高密度非易失性存儲器,與其他模塊可以完全兼容。AT89S52具有以下的性能標準:8 KB FLASH,256 B RAM,32位的I/O口線,具有2個數據指針、3個16位計數器、1個看門狗定時器、1個6向量2級中斷結構、片內晶振和時鐘電路。除此之外,AT89S52支持兩種軟件工作模式,可以降到靜態邏輯操作模式以節省電量。在空閑模式下,CPU工作停止,RAM、計數器、定時器可以保持工作;當發生掉電現象時,RAM的內容被自動保存下來,單片機內一切運轉終止,防止意外的發生。 該單片機有40條引腳,按照功能來分可分為電源和時鐘引腳、控制引腳、輸入和輸出引腳,其中P1口和P3口對應的輸入和輸出引腳在整個單片機結構中處于核心地位。P1口是一組8位準雙向I/O口,內部有上拉電阻,將上拉電阻拉到高電平,P1口就具有輸入口的功能;P3口是一組8位雙向I/O口,內部有上拉電阻,其輸出緩沖級可以驅動4個TTL邏輯門電路,將上拉電阻拉到高電平,P3口就具有輸入口的功能。不僅如此,P3口還承擔著許多第二功能。AT89S52控制器可以直接對LED顯示屏輸出數據,還有可編程的串行通信口,具有體積小、價格低、耗能低、性能高等優點。 2.4 LED顯示 每一個LED都是由7段發光二極管組成的顯示單位,其具有10個引腳,分別對應發光二極管的7個段、1個小數點和2個公共端。發光二極管有共陽極接法和共陰極接法2種,本設計需要4個LED組成一個顯示單元,并采用動態顯示的方式。由于同時使用4個單個LED構成顯示單元的連線比較復雜,而且給單片機的端口驅動帶來很大壓力,這就需要加裝專門的驅動芯片。由于4個LED是連體的,所以可以使用共陽極接法,這樣的顯示單元具有12個引腳、7個發光二極管段、4個公共端,再加裝1個三極管驅動電路可以提高數碼管的亮度。圖2為本設計中的LED顯示單元電路圖。 圖2 LED顯示單元電路圖 根據顯示單元的電路圖可以看出電阻R和Ra太大或太小都會使LED正常顯示,所以需要選擇適合的電阻以保障LED的亮度。考慮到印制板布線的便捷,可以選擇貼片電阻和排阻的形式節省版布線的空間。
3 數字氣壓計的軟件實現
對于單片機來說,其輸入信號是具有一定頻率的脈沖序列,單片機的計數器可以獲取脈沖序列的頻率并將其換算成具體的氣壓值。所以本節將著重介紹單片機的軟件設計,分析其中的計算原理。
具體的信號轉換過程如下: 首先,待測氣壓被氣壓傳感器轉換成電壓輸出,根據氣壓傳感器的資料可知,輸出電壓Vout和氣壓P存在如下關系: Vout=VCC(0.01P-0.09) 由于VCC是+5 V,所以上式可以轉化為: Vout=5×(0.01P-0.09) 然后氣壓傳感器輸出的電壓Vout作為V/F的輸入電壓Vin轉換成具體一定頻率的脈沖序列fo,而這二者又存在fo=KVin的關系。根據Vout=Vin的關系可以得出: [P=fo5K+0.090.01=20foK+9] 式中K為V/F轉換增益,K=2 000,根據上式可以將脈沖序列的頻率換算成氣壓值。 本設計的軟件程序設計采用C語言編程。C語言是一種編譯型的結構化程序設計語言,其語法結構簡單,處理功能強大,有編譯效率高、可讀性強、運行速度高等多方面優點,可以讓編程者實現對系統硬件的直接操作。運用C語言編寫數字氣壓計的系統軟件,可以大大縮短單片機的研發周期,增強軟件的可讀性,也便于對軟件內容進行改進和變更,有利于應用系統的大規模開發和高效率的利用。其具體的代碼為: void spi_proc(void) {unsigned int xdata c1,c2,c3,c4,c5,c6; long xdata utmp; float xdata dt,temp,off,sens,x,p; float xdata temp2,p2; c1=(w1 >> 1) & 0x7FFF;
c2=((w3 << 6) & 0x0FC0)+(w4 & 0x003F);
c3=((w4 >> 6) & 0x03FF);
c4=((w3 >> 6) & 0x03FF);
c5=((w1 << 10)& 0x0400) +((w2>>6)&0x03FF);
c6=(w2 & 0x003F);
utmp=8*c5+20224;
dt=(float)(d2-utmp);
temp=200+dt*(c6+50)/1024;
off=c2*4+((c4-512)*dt)/4096;
sens=c1+(c3*dt)/1024+24576;
x=(sens*(d1-7168))/16384?off;
p=x*10/32+2500;
if(temp>450)
{temp2=3*(c6+24)*(450-temp)*(450-temp)/1048576; p2=temp2*(p-10000)/8192; }
else if(temp<200)
{temp2=11*(c6+24)*(200-temp)* (200-temp)/1048576; p2=3*temp2*(p-3500)/16384; }
else
{temp2=0; p2=0; }
temp=temp-temp2;
p=p-p2; }
4 系統的調試與仿真
為保障本文設計的數字氣壓計的可靠性和穩定性,還需要對整體系統進行調試與仿真。使用Keil軟件和Proteus軟件相結合進行仿真。使用Proteus軟件對系統的總體執行效果進行調試,主要調試單片機的電源供應和電路復位。單片機的電源電路、復位電路和晶振電路是單片機乃至整個數字氣壓計正常運轉的基礎,要首先保證這幾部分的正常工作。在調試中,單片機時鐘的頻率保持在11.059 2 MHz上。然后是應用Proteus軟件對電氣規則功能進行檢查,檢測其連接是否正確并得出檢查報告,一旦發現原理圖中存在錯誤要立刻根據錯誤點進行改正。在原理圖的連接沒有問題時,再進行器件連接調試,對電路中所有器件的名字、參數、器件之間的連接網絡進行全面檢查,確認每一個器件的正確和之間關系的合理。之后對PCB圖進行檢查,檢查PCB設計、PCB電氣特性和物理特性、印制板和導線圖形檢查。最后對整個程序進行調試和仿真。
5 結 語
本文對基于單片機的數字氣壓計進行分析,在硬件設施上,需要選擇合適的氣壓傳感器、V/F轉換器、單片機和LED顯示,設計合理的硬件電路,并通過C語言編譯出能將脈沖序列的的頻率轉換為可讀取的氣壓值信號。使用V/F變換信號和編程克服了測量中穩定性差、精確度低的缺點,為設計出功能易于擴展、可靠而又穩定的數字氣壓計提供了一種全新的思路。
參考文獻
[1] 曹萬丹.基于AVR的智能數字氣壓計的優化設計[D].武漢:武漢科技大學,2009.
[2] 沈紹祥,胡愛華.基于單片機控制的數字氣壓計設計與實現[J].國外電子元器件,2004(7):66?69.
[3] 田海燕,賴春強,賀思橋.基于MS5534C的數字氣壓計設計[J]. 兵工自動化,2012(9):86?88.
[4] 楊智.低功耗數字氣壓計的設計[J].沈陽航空工業學院學報,2007(3):72?73. 本文由wWW.lw54.com提供,畢業論文 網專業代寫教育教學論文和畢業論文以及發表論文服務,歡迎光臨lw54.com
[5] 孫艷玲,劉亞麗.基于MPX4105芯片的數字氣壓計設計[J].中國儀器儀表,2007(11):62?65.
[6] 方劉海,文繼國.基于BMP085的精密數字氣壓計設計[J].電子設計工程,2014(24):69?71.
【拔河小學生六年級作文】相關文章:
拔河比賽小學生作文(精選42篇)04-15
拔河小學生作文范文(通用28篇)12-04
激烈的拔河比賽小學生作文(精選22篇)09-25
小學生關于拔河比賽的作文(精選46篇)09-12
激動的拔河作文02-20
拔河看圖作文05-08
拔河的啟示作文01-19
拔河對手作文03-17
激動的拔河作文12-03
拔河比賽小學生作文350字(精選16篇)08-02
- 相關推薦