直流電機測速系統(tǒng)課程設計_第1頁
已閱讀1頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  單片機課程設計報告書</p><p>  題目:電機測速系統(tǒng) </p><p><b>  電機測速系統(tǒng)</b></p><p><b>  設計目的</b></p><p>  隨著科技的飛速發(fā)展,計算機應用技術(shù)日益滲透到社會生產(chǎn)生活的各個領域,而單片機的應用則起到了舉足輕重

2、的作用。在工程實踐中,經(jīng)常會遇到各種需要測量轉(zhuǎn)速的場合,例如在發(fā)動機、電動機、機床主軸等旋轉(zhuǎn)設備的試驗運轉(zhuǎn)和控制中,常需要分時或連續(xù)測量、顯示其轉(zhuǎn)速及瞬時速度。為了能精確地測量轉(zhuǎn)速,還要保證測量的實時性,要求能測得瞬時轉(zhuǎn)速。因此設計一種較為理想的電機測速控制系統(tǒng)是非常有價值的。</p><p><b>  設計要求 </b></p><p>  1.用按鍵控制電機起停

3、;</p><p>  2.電機有兩種速度,通過按鍵來改變速度;</p><p>  3.通過數(shù)碼管顯示每分鐘或每秒的轉(zhuǎn)速。</p><p><b>  三、設計器材</b></p><p>  四、設計方案及分析(包含設計電路圖)</p><p>  1. STC89C52單片機介紹</p

4、><p>  STC89C52是一種帶8K字節(jié)閃爍可編程可檫除只讀存儲器(FPEROM-Flash Programmable and Erasable Read Only Memory )的低電壓,高性能COMOS8的微處理器,俗稱單片機。該器件采用ATMEL搞密度非易失存儲器制造技術(shù)制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。</p><p> ?。?)單片機最小系統(tǒng)</p&

5、gt;<p>  單片機最小系統(tǒng)電路如圖所示,由主控器STC89C52、時鐘電路和復位電路三部分組成。單片機STC89C52作為核心控制器控制著整個系統(tǒng)的工作,而時鐘電路負責產(chǎn)生單片機工作所必需的時鐘信號,復位電路使得單片機能夠正常、有序、穩(wěn)定地工作。</p><p><b>  圖 單片機最小系統(tǒng)</b></p><p><b> ?。?)晶

6、振電路</b></p><p><b> ?。?)復位電路</b></p><p>  復位是單片機的初始化操作。其主要功能是把PC初始化為0000H,使單片機從0000H單元開始執(zhí)行程序。除了進入系統(tǒng)的正常初始化之外,當由于程序運行出錯或操作錯誤使系統(tǒng)處于死鎖狀態(tài)時,為擺脫困境,也需按復位鍵重新啟動。</p><p><b&

7、gt;  2. ST151 </b></p><p>  光電轉(zhuǎn)速傳感器是根據(jù)光敏二極管工作原理制造的一種感應接收光強度變化的電子器件,當它發(fā)出的光被目標反射或阻斷時,則接收器感應出相應的電信號。它包含調(diào)制光源,由光敏元件等組成的光學系統(tǒng)、放大器、開關(guān)或模擬量輸出裝置。光電式傳感器由獨立且相對放置的光發(fā)射器和收光器組成。當目標通過光發(fā)射器和收光器之間并阻斷光線時,傳感器輸出信號。由于葉輪的旋轉(zhuǎn),當葉輪

8、扇葉進入凹槽遮擋著發(fā)光二極管時,光敏三極管沒接收光,輸出為零;當葉輪扇葉通過光電傳感器時,光敏三極管接收光在ST151電路輸出為頻率信號。</p><p><b>  3. 設計思路</b></p><p>  通過ST151光電傳感器接收電機扇葉轉(zhuǎn)動切割的次數(shù)獲得脈沖,從而通過單片機T1口接收高低電平,計數(shù)器在定時器的定時范圍內(nèi)記錄脈沖個數(shù),通過計算將轉(zhuǎn)速送給數(shù)碼管

9、并進行顯示。</p><p><b>  4. 程序框圖</b></p><p><b>  五. 程序</b></p><p><b>  參見附錄一。</b></p><p><b>  六.系統(tǒng)仿真</b></p><p>&

10、lt;b>  參見附錄二。</b></p><p>  七、設計體會與收獲(小組成員每人一份)</p><p><b>  XXX</b></p><p>  本次課程設計我主要負責電路板的焊接,電路板的焊接需要先了解整個電路的各個硬件的組成,并清楚它們各自的所在功能區(qū)域,然后要做的就是在電路板上為各硬件做一個整體的規(guī)劃,合適

11、的規(guī)劃很重要,既要考慮到整體看上去的美觀,還要考慮到對以后的調(diào)試和調(diào)整方便的地方,本人具體是先在電路板上劃分開具體的功能區(qū)域,比如單片機在左邊占一塊適當?shù)奈恢?,它的左端還要留有晶振電路和復位電路,依此做好其他模塊的分配。關(guān)于電路的具體焊接,感覺只要按照電路仿真圖按一定的次序焊接,本人焊接時速度較慢,但是基本比較順利,沒有出現(xiàn)很大問題。</p><p><b>  XX</b></p&g

12、t;<p>  本次課程設計我主要負責程序的編寫以及調(diào)試。編寫程序的主要是利用中斷來產(chǎn)生PWM,利用中斷統(tǒng)計ST151產(chǎn)生的頻率信號。</p><p>  才拿到題目時面臨的一個問題是如何利用程序來改變點擊的速度,請教同學后知道一種方法叫 PWM,通過改變一個周期的電信號的占空比來實現(xiàn)。當然,在寫程序時還是遇到了不少問題,比方按鍵怎么判斷、改變 PWM 怎么實現(xiàn)、怎么再繼續(xù)產(chǎn)生等。</p>

13、;<p>  程序的第二重點則是利用中斷來統(tǒng)計電機轉(zhuǎn)動后由ST151產(chǎn)生的頻率信號。這個問題前前后后想了幾種方法,如用計數(shù)器統(tǒng)計再讀取計數(shù)值、通過計數(shù)定時時間的頻率再湊成1秒等。但是由于方法不當,結(jié)果做出來的效果很差。最終選定,定時時間直接1秒再來統(tǒng)計頻率,這樣的結(jié)果還是可以的。 </p><p>  程序的第三個重點,是中斷程序的設計。這是我第一次編C,所以在中斷方面有很多不懂的地方,參考資料、請

14、教同學后有了一定的了解,再寫程序就不再那么不順了。</p><p><b>  XX</b></p><p>  本次實習我們組是直流電機測速系統(tǒng)的設計,就是要通過轉(zhuǎn)速的改變將其速度顯示在led中,來體現(xiàn)其轉(zhuǎn)速的增大或減小。而如何改變其速率呢,就是通過pwm改變其占空比來實現(xiàn)的。</p><p>  我主要負責仿真,即使用軟件Proteus 7

15、 Professional測試仿真調(diào)試。這次實習的重點就是如何編寫程序以及仿真中的行騙各個管腳的連接問題,主要的芯片有89C52、uln2003、led顯示、電機。首先分清各管腳起什么作用,比如說晶振要與89C 2的XTAL1和XTAL2連接等等。其次還要知道那個管腳是高電平哪個是低電平、跟誰連才能達到選通。通過同組同學所編程序,就可以清楚的知道這些芯片的連接,再細心的對照各個管腳的初始化、定義來連接各個芯片。在仿真的時,我學到的就是熟

16、練掌握使用proteus 7 Professional軟件,比如知道在proteus 7 Professional中如何正確的找出單片機、uln、led顯示、電機等這些芯片,怎么將keil中運行鏈接好的程序燒錄到proteus 7 Professional中,然后正確的運行。當同組的同學咁好板子后,接通電源時發(fā)現(xiàn)led顯示不夠亮,所以就進行改進,通過再接入放大器放大信號就可以使led更好的顯示出來。</p><p&g

17、t;  總的來說這次實習,受益匪淺,不僅熟悉了兩個軟件的使用更進一步的將所學的知識實踐了出來,以前沒有怎么接觸過這兩個軟件,現(xiàn)在發(fā)現(xiàn)我索要學習的還很多。合作也是我收獲很多的一點。</p><p><b>  XX</b></p><p>  在本次課程設計中,我們做的是“直流電機的測速系統(tǒng)”。</p><p>  在實驗中,我們最先遇到的問題是

18、在電機驅(qū)動中的頻率變化問題,一開始只使用了一個三極管,結(jié)果造成了電機轉(zhuǎn)動始終處于一個較穩(wěn)定狀態(tài),經(jīng)過復位也沒有變化,后來在原基礎上增加了一個三極管,放大了頻率信號,使得返回INT0口的信號更明顯,得到了預想的結(jié)果使直流電機完成了變速。</p><p>  在實驗的最后,我們的電機已經(jīng)按照要求完成了改變轉(zhuǎn)速的功能,但是數(shù)碼管的亮度很暗,得用手擋著才可以看到其具體顯示,這是數(shù)碼管亮度不夠造成的,通過分析添加了第二個排

19、阻,讓他來控制片選信號,通過這個排阻使得共陽極數(shù)碼管變得較亮。</p><p>  這次實驗是對本學期所學的單片機課程的簡單應用,在實驗中運用了80c52單片機。通過它完成了電機的簡單驅(qū)動,調(diào)節(jié)轉(zhuǎn)速使之反饋及讓轉(zhuǎn)速具體的體現(xiàn)在數(shù)碼管上的功能。</p><p><b>  參考文獻</b></p><p>  [1] 彭介華編.電子技術(shù)課程設計指

20、導[M].北京:高等教育出版社,1997</p><p>  [2] 張建華主編.數(shù)字電子技術(shù)[M].第2版.北京:機械工業(yè)出版社,2000 </p><p>  [3] 常健生主編.檢測與轉(zhuǎn)換技術(shù)[M].第3版.北京:機械工業(yè)出版社,2003</p><p>  [4] 張毅剛主編.單片機原理及應用[M].北京:高等教育出版社,2003</p>&l

21、t;p>  [5] 歐陽文主編.ATMEL89系列單片機的原理與開發(fā)實踐[M].北京:中國電力出版社,2007</p><p><b>  附錄一 程序</b></p><p>  #include <reg52.h></p><p>  unsigned char code TABLE[10] = {0xc0,0xf9,0x

22、a4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};</p><p>  void display();</p><p>  #define uint unsigned int</p><p>  #define uchar unsigned char</p><p>  #define V_TH1 (65535 -

23、 1000) / 256</p><p>  #define V_TL1 (65535 - 1000) % 256</p><p>  sbit output = P2^7; //P2^7接ULN2003</p><p>  sbit key1 = P3^3; //P3^3接可以改變電機轉(zhuǎn)速的按鍵</p><p>  int frq = 0

24、, frq1, flag;</p><p><b>  char pwm;</b></p><p>  int div = 0, p = 0;</p><p><b>  uchar a;</b></p><p><b>  uint c;</b></p><

25、;p>  void display();</p><p><b>  /*系統(tǒng)初始化*/</b></p><p>  void initial(void)</p><p><b>  {</b></p><p>  TMOD = 0x10; //設置定時器1在工作方式1下</p>

26、<p>  EA = 1; //開中斷</p><p>  EX0 = 1; //外部中斷0使能</p><p>  ET1 = 1; //定時器1使能</p><p>  IT0 = 1; //外部中斷0下降沿觸發(fā)</p><p>  IT1 = 1; //外部中斷1下降沿觸發(fā)</p><p>  TH

27、1 = V_TH1; //裝載計數(shù)值</p><p>  TL1 = V_TL1; </p><p>  TR1=1; //定時器1可工作</p><p><b>  }</b></p><p><b>  /*延時程序*/</b></p><p>  void del

28、ay(unsigned int k)</p><p><b>  {</b></p><p>  unsigned int i,j;</p><p>  for(i = 0;i < k;i++)</p><p><b>  {</b></p><p>  for(j =

29、 0;j < 110;j++)</p><p><b>  {</b></p><p><b>  ;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>

30、  }</b></p><p><b>  /*顯示子程序*/</b></p><p>  void display()</p><p><b>  {</b></p><p>  uchar qian,bai,shi,ge;</p><p><b> 

31、 qian = 0;</b></p><p><b>  bai = 0;</b></p><p><b>  shi = 0;</b></p><p><b>  ge = 0;</b></p><p><b>  c = frq1;</b>

32、</p><p>  qian = c / 1000;</p><p>  bai = c / 100 % 10;</p><p>  shi = c / 10 % 10;</p><p>  ge = c % 10;</p><p>  P2 = 0X01;</p><p>  P0 = TA

33、BLE[qian];</p><p><b>  delay(5);</b></p><p>  P2 = 0X02;</p><p>  P0 = TABLE[bai];</p><p><b>  delay(5);</b></p><p>  P2 = 0X04;<

34、;/p><p>  P0 = TABLE[shi];</p><p><b>  delay(5);</b></p><p>  P2 = 0X08;</p><p>  P0 = TABLE[ge];</p><p>  delay(5); </p><p><b>

35、;  } </b></p><p><b>  /*主函數(shù)*/</b></p><p>  void main()</p><p><b>  { </b></p><p>  initial();</p><p><b>  while(1)<

36、/b></p><p><b>  { </b></p><p>  if(key1 == 0)</p><p>  delay(100); //按鍵消抖</p><p>  if(key1 == 0)</p><p><b>  {</b></p>

37、<p>  while(key1 == 0) ; //松手檢測</p><p><b>  div ++;</b></p><p><b>  }</b></p><p>  if(div % 2 == 0)</p><p><b>  flag = 0;</b>

38、;</p><p>  if(div % 2 == 1)</p><p><b>  flag = 1;</b></p><p>  if(flag == 0)</p><p><b>  pwm = 30;</b></p><p>  if(flag == 1)</p

39、><p><b>  pwm = 70;</b></p><p>  display();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  /*外部中斷0*/</b></

40、p><p>  void int0isr() interrupt 0 //統(tǒng)計定時時間內(nèi)的個數(shù)</p><p><b>  {</b></p><p><b>  frq ++;</b></p><p><b>  }</b></p><p>  /*定時器

41、1中斷*/</p><p>  void time1isr() interrupt 3 //定時器1實現(xiàn)pwm</p><p><b>  { </b></p><p>  TH1 = V_TH1; //裝載計數(shù)值</p><p>  TL1 = V_TL1;</p><p><b> 

42、 EA = 0;</b></p><p><b>  a ++;</b></p><p><b>  p ++;</b></p><p>  if (a <= pwm) </p><p>  output = 1;</p><p>  else output

43、 = 0;</p><p>  if(a > 100)</p><p><b>  a = 0;</b></p><p>  if(p > 1000)</p><p><b>  {</b></p><p>  frq1 = frq;</p><

44、;p><b>  frq = 0;</b></p><p><b>  p = 0;</b></p><p><b>  }</b></p><p><b>  EA = 1; </b></p><p><b>  }</b>&

溫馨提示

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

評論

0/150

提交評論