今日臺風(fēng)消息時(shí)有聽聞,我們小組便想設(shè)計(jì)一個(gè)氣體流速測量計(jì)。本次設(shè)計(jì)主要是利用STC單片機(jī)實(shí)現(xiàn)對氣壓傳感器發(fā)送的電壓進(jìn)行AD轉(zhuǎn)換,并將相應(yīng)的數(shù)值顯示到液晶屏上以及通過串口發(fā)送給上位機(jī)。我采用了自帶AD轉(zhuǎn)換的STC單片機(jī)以及1602LCD液晶屏進(jìn)行流速顯示,同時(shí)可以運(yùn)用USB接口將實(shí)時(shí)數(shù)值傳輸給上位機(jī)。相關(guān)內(nèi)會在接下來的報(bào)告中陳述。
圖片1.png (10.25 KB, 下載次數(shù): 134)
下載附件
2019-1-16 10:37 上傳
圖2-1 系統(tǒng)整體設(shè)計(jì)框圖
視頻演示:
0.jpg (44.51 KB, 下載次數(shù): 115)
下載附件
2019-1-16 16:41 上傳
0.jpg (62.29 KB, 下載次數(shù): 97)
下載附件
2019-1-16 16:37 上傳
目錄
摘 要
第1章 設(shè)計(jì)的背景和思路 1
1.1、本次設(shè)計(jì)的背景1
1.2、本次設(shè)計(jì)的思路及功能1
第2章 設(shè)計(jì)方案和硬件電路 2
2.1、整體功能模塊圖2
2.2、各功能模塊的詳細(xì)介紹2
2.2.1、單片機(jī)模塊 2
2.2.2、驅(qū)動(dòng)及調(diào)速模塊 4
2.2.3、顯示模塊5
2.2.4、串口模塊7
2.2.5、電源模塊9
第3章 軟件流程及描述 11
3.1、主程序設(shè)計(jì)11
3.2、AD轉(zhuǎn)換程序設(shè)計(jì)12
3.3、LCD應(yīng)用程序設(shè)計(jì)12
第4章 調(diào)試過程及結(jié)果 13
4.1、實(shí)驗(yàn)調(diào)試13
課程設(shè)計(jì)總結(jié)16
參考文獻(xiàn)17
附錄一18
附錄二19
附錄三20
第1章 設(shè)計(jì)的背景和思路 1.1、本次設(shè)計(jì)的背景 最近,臺風(fēng)的來臨大家都有所耳聞,氣體流速的檢測與我們大家的生活息息相關(guān)。除此之外,氣體流速也與工業(yè)生產(chǎn)密不可分。氣體流速的檢測和控制關(guān)系著產(chǎn)品的性能,是裝置能否安全運(yùn)行的一個(gè)重要指標(biāo),氣體流速對一些大型反應(yīng)裝置起著控制作用,可以通過檢測氣體流速來實(shí)現(xiàn)對反應(yīng)的控制?梢姎怏w流速的檢測對人們的重要性,本設(shè)計(jì)就是對氣體流速的測量。氣體流速測試系統(tǒng)以傳感器、單片機(jī)STC12C5A16AD與LCD1602液晶組成的氣體流速測試系統(tǒng)。 我認(rèn)為設(shè)計(jì)一個(gè)氣體流速測量系統(tǒng),不論是從學(xué)習(xí)還是實(shí)踐的角度,對一名機(jī)電專業(yè)的學(xué)生都會有很好的學(xué)習(xí)效果。 1.2、本次設(shè)計(jì)的思路及功能 因?yàn)闅怏w流速測量在生產(chǎn)及生活中有著重要的意義,我們小組就想制作一個(gè)通過氣壓傳感器來反映氣體流速的裝置,通過LCD液晶屏顯示實(shí)時(shí)數(shù)據(jù)并且可以通過串口將數(shù)據(jù)傳輸給上位機(jī),通過串口助手顯示出來。思路是使用氣壓傳感器,用注射器向其注射氣體,傳感器產(chǎn)生電壓變化,經(jīng)過單片機(jī)AD轉(zhuǎn)換,數(shù)據(jù)運(yùn)用LCD顯示出來,還有就是通過USB串口傳輸?shù)诫娔X串口助手。 基本的設(shè)計(jì)思路是這樣的:首先,因?yàn)槲覀兊闹黝}是關(guān)于測量的,所以我們選擇了自帶AD轉(zhuǎn)換功能的STC12C5A16AD單片機(jī),然后再搜尋傳感器和串口通訊部分元件。后來找到了XGZP6847型氣體壓力傳感器模塊,這款元件的優(yōu)勢在于電壓信號在模塊內(nèi)部已經(jīng)進(jìn)行了放大,所以輸出信號不需要進(jìn)行放大。而串口通訊則是選擇了PL-2303HX模塊。另外我們選擇了較為常見的LCD1602液晶實(shí)現(xiàn)液晶顯示功能。從而總體的完成了整個(gè)設(shè)計(jì)。 第2章 設(shè)計(jì)方案和硬件電路 2.1、整體功能模塊圖 我們小組設(shè)計(jì)的系統(tǒng)采用STC12C5A16AD單片機(jī)(自帶8路十位精度的AD轉(zhuǎn)換),有氣壓傳感器獲取電壓信號,然后將電壓信號傳送給帶有AD轉(zhuǎn)換的STC12C5A16AD單片機(jī)。由于空氣流速與氣壓有相應(yīng)的正比例函數(shù)關(guān)系,可以根據(jù)得到的數(shù)值求出相應(yīng)比例的空氣流速。然后將數(shù)據(jù)輸送給液晶屏顯示和串口。
2.2、各功能模塊的詳細(xì)介紹 2.2.1、單片機(jī)模塊 1、單片機(jī)介紹 STC12C5A16AD單片機(jī)是新一代8051單片機(jī)。相比于普通的51單片機(jī),它增加了許多功能。例如AD轉(zhuǎn)換功能,PWM功能等等。因?yàn)槲覀冞@次設(shè)計(jì)的是一個(gè)用于測量數(shù)據(jù)的系統(tǒng),所以使用這款單片機(jī)就不需要再擴(kuò)展AD轉(zhuǎn)換芯片,可以減少外圍電路。 圖2-2 單片機(jī)引腳圖 單片機(jī)的最小應(yīng)用系統(tǒng)是指用最少的元件組成的單片機(jī)可以工作的系統(tǒng)。最小系統(tǒng)一般包括:單片機(jī)、晶振電路和復(fù)位電路。 
圖2-3 單片機(jī)最小系統(tǒng)圖 晶振電路: 單片機(jī)系統(tǒng)里都有晶振,在單片機(jī)系統(tǒng)里晶振作用非常大,他結(jié)合單片機(jī)內(nèi)部電路,產(chǎn)生單片機(jī)所需的時(shí)鐘頻率,單片機(jī)晶振提供的時(shí)鐘頻率越高,單片機(jī)的運(yùn)行速度就越快。 復(fù)位電路:在單片機(jī)系統(tǒng)在運(yùn)行中,當(dāng)受到環(huán)境干擾出現(xiàn)程序跑飛時(shí),按下復(fù)位按鈕,使內(nèi)部的程序自動(dòng)從頭開始執(zhí)行。 我們小組選用這款單片機(jī)的理由是因?yàn)檫@款單片機(jī)廣泛運(yùn)用于測量,它自帶AD轉(zhuǎn)化的功能,可以減少外圍電路,簡化系統(tǒng)。 4、單片機(jī)引腳連接 表2-1單片機(jī)引腳連接 2.2.2、傳感器模塊 1、氣壓傳感器原理 XGZP6847型氣體壓力傳感器為壓阻式壓力傳感器,其利用單晶硅的壓阻效應(yīng)構(gòu)成。采用單晶硅片為彈性元件,利用集成電路工藝,在特定方向擴(kuò)散一組等值電阻,并將電阻連成橋路,單晶硅片置于傳感器腔內(nèi)。當(dāng)壓力發(fā)生變化時(shí),單晶硅產(chǎn)生應(yīng)變,使直接擴(kuò)散在上面的應(yīng)變電阻產(chǎn)生與被測壓力成正比的變化,再由橋式電路獲得相應(yīng)的電壓輸出信號。 2、傳感器模塊接線 
圖2-4 傳感器模塊原理圖 本次設(shè)計(jì)采用的是XGZP6847型氣體壓力傳感器模塊,此模塊外圍所接的電路十分簡單,因?yàn)殡妷盒盘栐谀K內(nèi)部已經(jīng)進(jìn)行了放大,所以輸出信號不需要進(jìn)行放大,XGZP6847型氣體壓力變送器模塊共有六個(gè)引腳,其中的1、2、3腳都不需要外接其他電子元件,4腳接+5V電源電壓,5腳是信號輸出引腳,6腳接地即可。在串接一個(gè)10K的電阻R5防止擊穿電容C4。 3、設(shè)計(jì)思路及理由 根據(jù)現(xiàn)代惠斯通原理制成的壓阻式壓力傳感器,有體積小、耗能低、重量輕、響應(yīng)快、便于實(shí)現(xiàn)顯示數(shù)字化等特點(diǎn),而且可以測量壓力,稍加改變,還可以測量差壓、高度、速度、加速度等參數(shù)。因?yàn)楸鞠到y(tǒng)選擇了XGZP6847型氣體壓力傳感器模塊。 2.2.3、顯示模塊 1、LCD顯示屏簡介及選用理由 我們小組用來顯示的液晶屏是LCD1602顯示屏。因?yàn)樵撘壕э@示器具有顯示質(zhì)量高、功耗低、抗干擾能力強(qiáng)、體積小、重量輕等優(yōu)點(diǎn)。  圖2-5 LCD顯示電路原理圖
1、PL2303HX模塊 PL2303是Prolific公司生產(chǎn)的一種高度集成的RS232-USB接口轉(zhuǎn)換器,可提供一個(gè)RS232全雙工異步串行通信裝置與USB功能接口便利聯(lián)接的解決方案。 RS232雙向轉(zhuǎn)換器,一方面從主機(jī)接收USB數(shù)據(jù)并將其轉(zhuǎn)換為RS232信息流格式發(fā)送給外設(shè);另一方面從RS232外設(shè)接收數(shù)據(jù)轉(zhuǎn)換為USB數(shù)據(jù)格式傳送回主機(jī)。這些工作全部由器件自動(dòng)完成,開發(fā)者無需考慮固件設(shè)計(jì)。PL-2303HX無論在工作中或等待模式中消耗的電量都非常少,可留給連接的設(shè)備許多的電能。與RS-232串行端口的訊號標(biāo)準(zhǔn)一樣靈活,允許PL-2303HX直接連接1.8V~3.3V的設(shè)備。 
圖2-6 PL2303HX芯片引腳圖 
圖2-7 模塊內(nèi)部結(jié)構(gòu)框圖 它有如下優(yōu)點(diǎn):1.完全符合USB規(guī)范2.0(全速兼容)。2.片內(nèi)擁有USB1.1收發(fā)器,5V轉(zhuǎn)3.3V的穩(wěn)壓器,12MHz的晶體振蕩器。3.支持RS232這樣的串行接口;支持自動(dòng)握手各種模式。 2、串口模塊原理圖 
圖2-8 串口模塊原理圖 2.2.5、電源模塊 1、電源開關(guān)原理 通過自鎖開關(guān),控制整個(gè)系統(tǒng)通斷電。 
圖2-9電源開關(guān)原理圖 2、自鎖開關(guān) 這個(gè)開關(guān)的兩排引腳中,每一排的中間一只是公共端,兩邊是分別是獨(dú)立的,也就是說,如果你把中間的一只接到負(fù)載端,那么兩邊就是來自電源的進(jìn)線,當(dāng)你把中間一只引腳接負(fù)載端以后,如果你把兩邊的引腳的其中一只接電源,當(dāng)你按下開關(guān)時(shí),負(fù)載工作,那么另外一只就是開關(guān)不按下時(shí)負(fù)載接通電源,也就是說,在這兩排引腳中,除了中間一只引腳是公共端以外,另外兩只引腳中一只是按下開關(guān)后接通電源,而另一只則是按下開關(guān)后斷開電源,簡而言之就是,兩排引腳,中間一只是公共端,而另外兩只,一只是按下關(guān),另一只是按下開;有兩排就是一排對應(yīng)電源正極,另一排對應(yīng)電源負(fù)極,只要把中間電源兩級的公共端接好以后,另外的兩只引腳在接線時(shí)都接在同一側(cè)就可以了,不然的話,接好了還是沒有用,接錯(cuò)了,就會出現(xiàn)如果按下后電源正極接通,那么電源負(fù)極就斷開了,或者不按下時(shí),電源正極接通,負(fù)極又?jǐn)嚅_了。注意,開關(guān)有兩排引腳,每一排有三只引腳,三只引腳中,中間一只是公共端,每一排對應(yīng)電源的每一極。 第3章 軟件流程及描述 實(shí)現(xiàn)系統(tǒng)功能可以采用多種方法,由于要控制單片機(jī)的AD轉(zhuǎn)換、LCD的顯示和串口的通信,因此,整個(gè)程序可以分為主程序、LCD程序、AD轉(zhuǎn)換程序,由于購買的LCD液晶屏以及單片機(jī)帶有LCD和AD轉(zhuǎn)換的程序,為了方便,我們對其稍做更改并將其設(shè)為子程序。其中,LCD程序主要是用來控制液晶屏的顯示格式以及數(shù)值的;AD轉(zhuǎn)換程序用來對所得到的電壓數(shù)值進(jìn)行相應(yīng)關(guān)系的轉(zhuǎn)化;主程序則是控制子程序的應(yīng)用以及利用接口向上位機(jī)發(fā)送實(shí)時(shí)的數(shù)據(jù)。 
圖3-1 軟件流程 3.1主程序設(shè)計(jì)主程序中需要完成的功能主要有對系統(tǒng)初始值的設(shè)置、AD轉(zhuǎn)換、數(shù)據(jù)發(fā)送、LCD顯示等。系統(tǒng)上電后,需要對定時(shí)器的狀態(tài)進(jìn)行設(shè)置,包括定時(shí)器的工作方式以及數(shù)據(jù)傳輸?shù)拈_始中斷,因此我們首先需要進(jìn)行定時(shí)器的選擇以及工作方式設(shè)定。使用定時(shí)器1的操作模式2:8位自動(dòng)重載,然后根據(jù)波特率為9600裝入初值,TH1=TL1=0xfd。接著我們要設(shè)置串行通信工作模式,SM0=0,SM1=1,打開串行接收允許位,開總中斷與串行中斷。單片機(jī)通過串口向上位機(jī)發(fā)送char型數(shù)組,當(dāng)串行通信發(fā)送完成后,出現(xiàn)信號TI=1。 由于傳感器實(shí)際原因,我們無法測量出正確的空氣流速值來進(jìn)行校正,因此我們決定使用相應(yīng)的比例關(guān)系來計(jì)算得出。首先,我們確定一個(gè)利用單片機(jī)顯示的速度最大值為150mm/s。由于AD轉(zhuǎn)換是十位數(shù)制,最大值為2的10次方即1024,將其乘以0.147便可以得到。其次,當(dāng)系統(tǒng)完成后我們?yōu)榘遄庸╇,燒入程序。保持單片機(jī)顯示的速度為55mm/s勻速擠完1ml的氣體,測量需要33.19s的時(shí)間,而傳感器與針筒接口出截面積為1mm^2,即是速度為33mm/s。因此,利用比例關(guān)系求出正確的流速還應(yīng)該再乘以一個(gè)0.6的修正系數(shù)。在程序中表現(xiàn)就是getADCresult。再令其乘以0.147使得量程為150,再乘以0.6修正。 關(guān)于液晶顯示部分,可以先在程序開頭部分設(shè)定idate數(shù)據(jù)類型,設(shè)定LCD上將要顯示的部分“Sudu:150”,然后再根據(jù)AD得到的結(jié)果顯示出來。 主程序中還可以設(shè)置延時(shí)函數(shù),使用for循環(huán)來進(jìn)行延時(shí),先設(shè)定延時(shí)1毫秒的延時(shí)函數(shù),再根據(jù)此來循環(huán)n次,延時(shí)n秒。 3.2 A/D轉(zhuǎn)換程序設(shè)計(jì)我們使用的單片機(jī)內(nèi)部自帶AD轉(zhuǎn)換器,是一個(gè)十位轉(zhuǎn)換,分成高八位和低兩位。編寫程序時(shí),我們首先需要選擇相應(yīng)的通道,打開8路通道,還需要能夠清除前一次的數(shù)據(jù)。當(dāng)然,十位的寄存器也需要進(jìn)行相應(yīng)的移位與或運(yùn)算。 3.3 LCD應(yīng)用程序 單片機(jī)的P2.5、P2.6、P2.7分別接LCD1602的rs、rw、en用以控制其讀寫功能,P0口負(fù)責(zé)傳輸需要顯示的數(shù)據(jù),LCD1602可以顯示當(dāng)前空氣的流速。我們編寫程序需要設(shè)定顯示方式,8位數(shù)據(jù)端口,2行顯示。還有就是需要設(shè)定LCD液晶屏的光標(biāo)顯示與否,清屏指令等等。當(dāng)然液晶屏的字符輸入位置也需要進(jìn)行設(shè)定,我們還需要用到庫函數(shù)里的string函數(shù)。 第4章 調(diào)試過程及結(jié)果 4.1、實(shí)驗(yàn)調(diào)試 首先打開燒錄軟件,選擇單片機(jī)型號,并打開程序文件,然后點(diǎn)擊下載/編程。之前遇到了困難,一直無法成功錄入,后來經(jīng)過查詢,需要重啟單片機(jī),就可以成功的燒錄。 
圖4-1 程序燒錄 我們設(shè)計(jì)了電源開關(guān)控制電源線,另外串口也可以提供電源。 圖4-2電源插頭及串口 圖4-3開關(guān)斷開后顯示 以下是我們實(shí)際調(diào)試時(shí)的截圖: 下圖是通電后的顯示,因?yàn)闆]有提供風(fēng)力,速度顯示為零。 圖4-4 初始顯示 當(dāng)我們按壓注射器模擬風(fēng)力時(shí),顯示屏上的數(shù)據(jù)就會發(fā)生變化,顯示出當(dāng)前的氣體流速。 圖4-5氣體流速液晶顯示(1)
圖4-6氣體流速液晶顯示(2) 然后打開軟件的串口助手窗口,選擇文本模式,選擇正確的串口和波特率,打開串口,就可以接收到所測得氣體流速值了。 
圖4-7氣體流速串口操作及顯示 通過以上操作,呈現(xiàn)了我們單片機(jī)系統(tǒng)的主要功能。
課程設(shè)計(jì)總結(jié)
課程設(shè)計(jì)是培養(yǎng)學(xué)生實(shí)際應(yīng)用能力的重要課程,我們需要綜合運(yùn)用所學(xué)知識,解決實(shí)際問題;仡檭蓚(gè)星期的單片機(jī)設(shè)計(jì),我們小組學(xué)到了很多單片機(jī)的相關(guān)知識,不僅鞏固了以前所學(xué)的知識,繪制原理圖,還學(xué)習(xí)了畫pcb圖的知識。 通過這次課設(shè)使我懂得了理論與實(shí)際相結(jié)合非常的重要,首先我們按照自己的想法在淘寶上買元件,買來的許多都是貼片,后來經(jīng)過詢問,又去淘寶上購買了一些模塊,模塊在使用上有兩個(gè)特點(diǎn),一是它已經(jīng)完善了功能,我們不需要在進(jìn)行改造,二是我們要查找資料去了解這個(gè)模塊的工作原理。在設(shè)計(jì)單片機(jī)的過程中,我們小組也遇到了很多問題,通過查閱資料和與同學(xué)進(jìn)行交流,也順利解決了這些問題。第一,不夠細(xì)心比如由于粗心大意將不同元器件的端口連接錯(cuò)誤或者忘記連接,第二,是在學(xué)習(xí)態(tài)度上,這次課程設(shè)計(jì)是對我們的學(xué)習(xí)態(tài)度的一次檢驗(yàn),絕對要嚴(yán)謹(jǐn)。第三,在做人上,我認(rèn)識到,無論做什么事情,只要你足夠堅(jiān)強(qiáng),有足夠的毅力和決心,有足夠的挑戰(zhàn)困難的勇氣,就沒有什么辦不到的。
另外在設(shè)計(jì)單片機(jī)的時(shí)候,加深了對單片機(jī)IO口的輸入輸出的理解,在上個(gè)學(xué)期學(xué)單片機(jī)的時(shí)候,我對于單片機(jī)的認(rèn)知大多還處于理論知識上,而這一次的單片機(jī)課設(shè),讓我更好的把理論知識應(yīng)用到了實(shí)際當(dāng)中,而且這次的設(shè)計(jì)還培養(yǎng)了我的創(chuàng)新精神。這次單片機(jī)課程設(shè)計(jì),既是對課程理論內(nèi)容的一次復(fù)習(xí)和鞏固,讓我豐富了更多與該專業(yè)相關(guān)的其他知識,比如軟件應(yīng)用等。在設(shè)計(jì)原理圖時(shí),要有了一個(gè)清晰的思路和一個(gè)完整的軟件流程圖之后才著手設(shè)計(jì)。在設(shè)計(jì)程序時(shí),我們不能妄想一次就將整個(gè)程序設(shè)計(jì)好,反復(fù)修改、不斷改進(jìn)是程序設(shè)計(jì)的必經(jīng)之路;養(yǎng)成注釋程序的好習(xí)慣是非常必要的,一個(gè)程序的完美與否不僅僅是實(shí)現(xiàn)功能,而應(yīng)該讓人一看就能明白你的思路。
在設(shè)計(jì)過程中遇到問題是很正常的,但我們應(yīng)該講每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題。但是從中學(xué)到的知識會讓我們受益終身。發(fā)現(xiàn)、提出、分析、解決問題和實(shí)踐能力提高都會受益于我在今后的學(xué)習(xí)、工作和生活中。
Altium Designer畫的原理圖和PCB圖如下:(51hei附件中可下載工程文件)
附錄二 PCB圖
單片機(jī)程序源碼(含注釋):
0.png (2.51 KB, 下載次數(shù): 126)
下載附件
2019-1-16 16:35 上傳
0.png (3.07 KB, 下載次數(shù): 107)
下載附件
2019-1-16 16:35 上傳
全部資料51hei下載地址:
源代碼.rar
(3.88 KB, 下載次數(shù): 182)
2019-1-16 10:37 上傳
點(diǎn)擊文件名下載附件
程序代碼 下載積分: 黑幣 -5
原理圖.rar
(15.87 KB, 下載次數(shù): 112)
2019-1-16 10:37 上傳
點(diǎn)擊文件名下載附件
原理圖 下載積分: 黑幣 -5
視頻.rar
(19.71 MB, 下載次數(shù): 81)
2019-1-16 10:37 上傳
點(diǎn)擊文件名下載附件
操作視頻 下載積分: 黑幣 -5
課設(shè)報(bào)告.doc
(841 KB, 下載次數(shù): 96)
2019-1-16 10:37 上傳
點(diǎn)擊文件名下載附件
紙質(zhì)打印報(bào)告 下載積分: 黑幣 -5
PCB.rar
(544.45 KB, 下載次數(shù): 71)
2019-1-16 10:37 上傳
點(diǎn)擊文件名下載附件
pcb板子 下載積分: 黑幣 -5
|