傳感器與測控電路課程設計報告-基于單片機的霍爾測速報警系統(tǒng).doc_第1頁
傳感器與測控電路課程設計報告-基于單片機的霍爾測速報警系統(tǒng).doc_第2頁
傳感器與測控電路課程設計報告-基于單片機的霍爾測速報警系統(tǒng).doc_第3頁
傳感器與測控電路課程設計報告-基于單片機的霍爾測速報警系統(tǒng).doc_第4頁
傳感器與測控電路課程設計報告-基于單片機的霍爾測速報警系統(tǒng).doc_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

傳感器與測控電路課程設計報告 學生姓名: 指導老師: 專業(yè)班級:12級測控二班 所在學院:機電工程學院 學 號 課 題 基于單片機的霍爾測速報警系統(tǒng) 基于單片機的霍爾測速報警系統(tǒng)的設計 摘 要在生產中,電機應用十分廣泛,比如汽車速度顯示,設備工作時的檔位,都需要我們了解電機或者機器的轉速。轉速作為工程中應用的一個非常廣泛的參數(shù),它的測量方法有很多,特別是單片機對脈沖數(shù)字信號的強大處理能力,使得全數(shù)字測量系統(tǒng)越來越普及,越來越方便。本設計屬于碼盤轉速測量系統(tǒng),實現(xiàn)轉速的實時測量和顯示。本系統(tǒng)以stc90c51單片機為核心,旋轉編碼器通過用傳感器測量非電量,轉變成模擬電量,再通過一系列測控電路。獲得數(shù)字信號,實現(xiàn)實時軸轉速測量,同時用四位段碼式led數(shù)碼管顯示模塊顯示電機轉速,并且加入了報警模塊。詳細闡述了轉速測量系統(tǒng)的工作過程,以及硬件電路的設計、顯示效果。本文吸收了硬件軟件化的思想,實現(xiàn)了題目要求的功能。關鍵詞:轉速測量,,單片機, led顯示模塊,霍爾傳感器。 目 錄第一部分 緒 論1.1 設計的任務與要求 1第二部分 功能分析與設計要求2.1 測控系統(tǒng)功能的概述 12.2系統(tǒng)模塊的確定 22.3各模塊的選擇 2 2.1.1傳感器模塊的論證與選擇 2 2.1.2報警模塊的論證與選擇 3 2.1.3顯示模塊的論證與選擇 3 2.1.2單片機模塊的論證與選擇 32.4 小結 3第三部分 測控系統(tǒng)的總體設計3.1 測控系統(tǒng)的總體設計 4 3.1.1 硬件原理圖 4 3.1.2 硬件電路設計總圖 53.2 測控系統(tǒng)子模塊簡介 5 3.2.1傳感器原理及分電路析 5 3.2.2 報警模塊 7 3.2.3 led數(shù)碼管 8 3.2.4 stc90c51單片機10第四部分 軟件設計 4.1 程序設計步驟 124.2 程序流程圖 13 4.2.1 主程序設計 14 4.2.2 中斷服務程序設計 15第五部分 軟件調試與仿真5.1 keil軟件進行程序調試 155.2 proteus軟件仿真 165.3 硬件軟件聯(lián)合調試 17 5.3.1 硬件電路的焊接與搭建 18 5.3.2搭接檢查步驟 19第六部分 結論參考文獻 20附錄 第一部分 緒 論1.1 設計的任務與要求 本課題的任務是:設計一套測量轉速的儀器,轉速在數(shù)碼管上顯示,且具有超速報警功能,精度到達轉速個位,高低速實現(xiàn)報警。要求會選用傳感器并搭建測控電路,實現(xiàn)課題所要求的功能 本設計需要對各種測量轉速的基本方法予以分析,針對不同的應用環(huán)境,利用單片機設計一種全數(shù)字化測速系統(tǒng),從提高測量精度的角度出發(fā),分析討論其產生誤差的可能原因,為今后的實際使用提供借鑒。并從實際硬件電路出發(fā),分析電路工作原理和軟件流程。熟悉傳感器的選擇,及外圍電路的設計,了解測控系統(tǒng)設計的基本流程 第二部分 功能分析與設計要求2.1 測控系統(tǒng)功能的概述 在電機或轉軸上放置一個或多個磁鋼,將霍爾傳感器有規(guī)律的放置在電機或者轉軸附近,當有磁場通過時,在傳感器上就可以產生電信號,通過測控電路對電信號的處理得到有用信號送單片機內部,根據(jù)信號測出電機轉速,并在數(shù)碼管上顯示,且有報警功能。2.2系統(tǒng)模塊的確定通過對功能的分析可知,系統(tǒng)模塊分為以下幾類:1. 傳感器模塊,以將非電信號信號轉化為電信號。2. 報警模塊,當速度過低或過高時,啟動此模塊。3. 顯示模塊,通過單片機處理得出轉速,送顯示模塊顯示。4. 單片機模塊,用以對脈沖計數(shù),對外部信號進行處理。5. 電源模塊,這里使用現(xiàn)有電源,初步確定為5v直流電源,故不再設計。 此外由于單片機有計數(shù)功能,計數(shù)模塊在單片機模塊中討論 2.3各模塊的選擇 2.1.1傳感器模塊的論證與選擇霍爾傳感器是根據(jù)霍爾效應制作的一種磁場傳感器?;魻栃谴烹娦囊环N,霍爾傳感器具有許多優(yōu)點,體積小,重量輕,壽命長,安裝方便,功耗小,頻率高(可達1mhz),耐震動,不怕灰塵、油污、水汽及鹽霧等的污染或腐蝕。廣泛用于各類工程實際應用中,出于成本的考慮,在這里我們選用直插式霍爾片傳感器a3144,與普通磁鋼配套使用,體積小,靈敏度高,價格在12元左右,基本可以滿足本課題的要求 2.1.2報警模塊的論證與選擇方案一:采用蜂鳴器與led發(fā)光二極管為主要報警系統(tǒng),該系統(tǒng)成本低,電路容易實現(xiàn),編程容易。方案二:采用音樂語言報警,更人性化,但設計難度大,成本高?;诂F(xiàn)有設備器件,選用方案一。 2.1.3顯示模塊的論證與選擇這里課題已要求使用數(shù)碼管顯示,由于測量轉速適中,我們采用四位位選數(shù)碼管完全能滿足要求。基于現(xiàn)有器件選用共陰極接法,但由于數(shù)碼管功耗較高,故需要加入驅動芯片,在這里我們使用51單片機開發(fā)板上現(xiàn)有的鎖存芯片74573 2.1.2單片機模塊的論證與選擇此系統(tǒng)十分簡單,數(shù)據(jù)處理不大,采用8位單片機完全能滿足需要,基于國內8位單片機領導廠商宏晶公司生產的系列單片機的低價格,高性能的優(yōu)勢,我選用了系類9051八位單片機,編程和使用與一般80c51單片機一樣。2.4 小結通過本小計,對本設計的基本模塊進行了選擇,確定了顯示,報警,計數(shù),傳感器,單片機選擇的可行性。并在實現(xiàn)儀器功能的基礎上充分考慮了成本問題。 第三部分 測控系統(tǒng)的總體設計3.1 測控系統(tǒng)的總體設計 3.1.1 硬件原理圖模擬量轉換為數(shù)字量電壓比較器霍爾傳感器單片機數(shù)碼管顯示電機驅動電路計數(shù)脈沖輸入非電量轉換為模擬電量聲光報警系統(tǒng)原理圖如下: 3.1.2 硬件電路設計總圖系統(tǒng)硬件電路圖如下:3.2 測控系統(tǒng)子模塊簡介 3.2.1傳感器原理及轉換電路分析由霍爾效應知,霍爾電勢的大小取決于:rh為霍爾常數(shù),它與半導體材質有關;i為霍爾元件的偏置電流;b為磁場強度;d為半導體材料的厚度。對于一個給定的霍爾器件,當偏置電流i固定時,uh將完全取決于被測的磁場強度b。一個霍爾元件一般有四個引出端子,其中兩根是霍爾元件的偏置電流i的輸入端,另兩根是霍爾電壓的輸出端。如果兩輸出端構成外回路,就會產生霍爾電流。在半導體薄片兩端通以控制電流i,并在薄片的垂直方向施加磁感應強度為b的勻強磁場,則在垂直于電流和磁場的方向上,將產生電勢差為uh的霍爾電壓。 霍爾效應原理圖 以上為alldatasheet網站關于3144的數(shù)據(jù) 外部接口 本系統(tǒng)采用開關型霍爾傳感器a3144以及磁鋼,由它們來檢測電機的轉速。工作方式為:將磁鋼安裝在電機的轉軸上,而霍爾傳感器則放在轉軸的旁邊,霍爾傳感器連接在電路中,當磁鋼隨轉軸經過霍爾傳感器時,霍爾傳感器的工作原理知,此時將輸出一個低電平信號;而當磁鋼離開霍爾傳感器后,又將輸出一個高電平。這樣通過高低電平的轉換,將其送入單片機后就可以測量它的轉速。 由于由霍爾傳感器輸出的電平未經特殊處理,且存在干擾,故不是完整的脈沖電平,在后續(xù)電路中進行改進,這里我們用到電壓比較電路,選用常用的lm393雙電壓比較集成芯片,下圖是alldatasheet數(shù)據(jù),電路中只用到4、8、1、2、3腳。電路圖也在此給出: 3.2.2 報警模塊報警模塊可選用無源蜂鳴器或者有源蜂鳴器,有源蜂鳴器由于內部有震蕩元件,故通電后就可以報警,由于硬件設備的限制,我們選用無源蜂鳴器,但編程上需要花點心思。 3.2.3 led數(shù)碼管顯示電路采用led數(shù)碼管動態(tài)顯示,led(light-emitting diode)是一種外加電壓從而渡過電流并發(fā)出可見光的器件。led是屬于電流控制器件,使用時必須加限流電阻。led有單個led和八段led之分,也有共陰和共陽兩種。七段發(fā)光數(shù)碼管結構共陰極數(shù)碼管的發(fā)光二極管陰極必須接低電平,當某發(fā)光二極管的陽極為高電平時(一般為+5v)時,此二極管點亮;共陽極數(shù)碼管的發(fā)光二極管是陽極接到高電平,對于需要點亮的發(fā)光二極管使其陰極接低電平(一般為地)即可。根據(jù)led顯示器可知,如果希望顯示“8”字,那么除了“dp”管不要點亮以外,其余管全部點亮。同理如果要顯示“1”,只需bc兩個發(fā)光二極管點亮,其余均布點亮。通常將控制發(fā)光二極管的8位數(shù)據(jù)稱為段選碼,共陰極和共陽極的段選碼互為補碼。led顯示器的段選碼如下表所示: led數(shù)碼管段選碼 顯示部分電路圖如下,這里出于成本簡便考慮,用到的是現(xiàn)有的單片機開發(fā)板,實際試驗中只需用到四位數(shù)碼管,且未加入單個發(fā)光二極管。 值得注意的是由于數(shù)碼管功耗比較高,故在前面加入了74hc573鎖存器芯片用做驅動數(shù)碼管,但這里用到的并不是鎖存功能。 3.2.4 stc90c51單片機90單片機是國內八位高性能單片機,選用的單片機帶16k字節(jié)閃爍可編程可擦除只讀存貯器,stc的90c51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案.p0口:p0口是一組8位漏極開路型雙向i0口,也即地址數(shù)據(jù)總線復用口。作為輸出口用時,每位能驅動8個ttl邏輯門電路。p1口:pl是一個帶內部上拉電阻的8位雙向io口,pl的輸出緩沖級可驅動(吸收或輸出電流)4個ttl邏輯門電路。對端口寫“l(fā)”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口。作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流.p2口:p2是一個帶有內部上拉電阻的8位雙向io口,p2的輸出緩沖級可驅動(吸收或輸出電流)4個ttl邏輯門電路。對端口寫“1”,通過內部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流p3口:p3口是一組帶有內部上拉電阻的8位雙向i0口。p3口輸出緩沖級可驅動(吸收或輸出電流)4個ttl邏輯門電路。對p3口寫入“l(fā)”時,它們被內部上拉電阻拉高并可作為輸入端口。作輸入端時,被外部拉低的p3口將用上拉電阻輸出電流(iil).p3口除了作為一般的i0口線外,更重要的用途是它的第二功能,上面表已給出。rst復位輸入。當振蕩器工作時,rst引腳出現(xiàn)兩個機器周期以上高電平將使單片機復位。wdt溢出將使該引腳輸出高電平,設置sfr auxr的disrt0位(地址8eh)可打開或關閉該功能。disrt0位缺省為reset輸出高電平打開狀態(tài)。psen:程序儲存允許(psen)輸出是外部程序存儲器的讀選通信號,當at89c51由外部程序存儲器取指令(或數(shù)據(jù))時,每個機器周期兩次psen有效,即輸出兩個脈沖。當訪問外部數(shù)據(jù)存儲器,沒有兩次有效psen信號。xtall:振蕩器反相放大器及內部時鐘發(fā)生器的輸入端。xtal2:振蕩器反相放大器的輸出 第四部分 軟件設計 4.1 程序設計步驟第一步分析問題,明確任務要求,還要將解決的問題抽象成數(shù)學化。第二部確定算法,根據(jù)實際問題和指令系統(tǒng)的特點確定完成這一任務必須經歷的步驟。第三部選擇所選擇的算法,確定內存單元的分配:確定解決問題的步驟和順序,畫出程序的流程圖。第四部根據(jù)流程圖,編寫源程序。第五部上機對源程序進行編譯、調試。4.2 程序流程圖測量過程是測量轉速的傳感器和電機同軸連接。電機每轉過一圈產生一個脈沖。經電壓比較器整形后成為單片機計數(shù)器的輸入脈沖,控制計數(shù)的時間就可以得到相應的轉速,然后確定是否在所需量程以內,在則送數(shù)碼管顯示,不在則啟動報警器。電機計算轉速的公式為: n=60*m/(n1*t*n) (r/min)其中:n為電機轉速,n為柵格數(shù),即磁鋼的個數(shù)。n1為中斷次數(shù),m為在規(guī)定時間內測得的脈沖數(shù),t為t0的溢出時間。 外部脈沖通過單片機定時/計數(shù)器t1進行計數(shù),內部采用定時,定時為10ms,即溢出100次則記滿1秒,在本例磁鋼數(shù)為1 ,n1*t設定為一秒,故轉速即為n=60m (r/min) 4.2.1 主程序設計 開 始初始化定時計數(shù)器定時刷新數(shù)碼管顯示否計數(shù)器是否循環(huán)100次是計算轉速是否超速是 報 警否 返 回數(shù)碼管顯示4.2.2 中斷服務程序設計開t0中段是否中斷 100次否中斷返回記電機轉速轉存至緩存區(qū)是t0中斷入口置初始值開t0中段是否中斷 100次否是中斷返回記電機轉速轉存至緩存區(qū)是 第五部分 軟件調試與仿真5.1 keil軟件進行程序調試1首先創(chuàng)建項目。保存2. 創(chuàng)建c文件,保存,加入到項目中,這里為了便于編程,采用c語言。3. 無錯誤,生成hex文件。5.2 proteus軟件仿真1. 首先根據(jù)原理圖,畫出仿真圖,這里單片機默認為12mhz .2. 由于這里沒有霍爾元件,以此用555電路與脈沖產生器組合使用,產生脈沖 。3. 加入hex文件,啟動仿真。4. 不同時刻,顯示效果如下圖:設置脈沖頻率為20hz。則轉換轉速為1200r/min由于我們設定高于6000低于400轉則報警,上圖可以看出,當轉速為60時,p3.7口位低電平,驅動有源蜂鳴器報警。5.3 硬件軟件聯(lián)合調試 5.3.1 硬件電路的焊接與搭建需要物品 電阻 有源蜂鳴器 單片機開發(fā)板 發(fā)光二極管 洞洞板 5.3.2搭接檢查步驟1.打開單片機電源,接上通訊線2. 確認無誤燒錄程序 第六部分 結 論通過本次課程設計,深刻體會到,傳感器在工業(yè)控制,檢測方面發(fā)揮著巨大的作用,傳感器可以將各種非電量裝換為電量,但這并不能用來檢測,控制,還需要通過一系列的測控電路,將信號進一步放大,濾波,整形等操作,以得到有用的信號,再對對相應的信號做出處理。此外在電路搭建過程中,發(fā)現(xiàn),好的軟件設計能使電路大大簡化,所以在以后進行測控電路設計,一定要有軟硬件兼顧的思想。參考文獻 1 蔣清明. c語言程序設計. 中國礦業(yè)大學出版社, 2011 2 來清明.傳感器與單片接口及實例.北京航空航天大學出版社,2008 3 李朝青.單片機原理及接口技術.北京航空航天大學出版社,2008 4 張國雄.測控電路.機械工業(yè)出版社,2014 5 唐文彥.傳感器,機械工業(yè)出版社,2015附錄 程序代碼#include #define uchar unsigned char #define uint unsigned int #define ulong unsigned long#define led_dat p1sbit led_seg0 = p23;sbit led_seg1 = p22;sbit led_seg2 = p21;sbit led_seg3 = p20;sbit beep = p37;#define k 1 /校準系數(shù)unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;uchar data len4;/ 顯示緩沖區(qū) uint tcounter = 0; /時間計數(shù)器bit flag_fresh = 0; / 刷新標志 bit flag_clac = 0; /計算轉速標志 void beep();void displayfresh(); /顯示函數(shù)void count(); /計算轉速函數(shù)void init_timer0();/初始化定時器t0void init_timer1();/初始化定時器t1void delay(uint ms);/延時函數(shù)void it_timer0() interrupt 1 tf0 = 0; /d定時器 t0用于數(shù)碼管的動態(tài)刷新 th0 = 0xd8; tl0 = 0xf0; flag_fresh = 1; tcounter+; if(tcounter100)/12m晶振,定時器10ms 中斷一次 我們1秒計算一次轉速 / 1000ms/10ms = 100 flag_clac = 1;/周期到,該重新計算轉速了 void init_timer1() /初始化定時器t1tmod &= 0x0f; tmod |= 0x50; th1 = 0x00; /設置初值。tl1 = 0x00; et1=1; ea=1; tr1=1; void main(void)len0 = 8; /開機時,初始化為8888len1 = 8; len2 = 8;len3 = 8;init_timer0();init_timer1();while(1) if(flag_fresh) flag_fresh = 0; displayfresh(); / 定時刷新數(shù)碼管顯示 if(flag_clac) flag_clac = 0; count(); /計算轉速,并把結果放入數(shù)碼管緩沖區(qū) tcounter = 0;/周期定時 清零 th1=tl1 = 0x00;/脈沖計數(shù)清零 /可以加報警程序 void displayfresh() /顯示函數(shù)p

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論