久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6391|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

直流電機(jī)調(diào)速仿真課程設(shè)計報告及單片機(jī)匯編程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:222820 發(fā)表于 2017-7-27 17:15 | 只看該作者 |只看大圖 回帖獎勵 |倒序瀏覽 |閱讀模式



電氣工程學(xué)院

單片機(jī)課程設(shè)計報告

班    級:134

姓    名:王*旭

學(xué)    號:1312021108

設(shè)計題目:直流電機(jī)調(diào)速系統(tǒng)設(shè)計

設(shè)計時間:12.22~12.28   

評定成績:

評定教師:

摘要:

近年來,隨著科技的進(jìn)步,電力電子技術(shù)得到了迅速的發(fā)展,直流電機(jī)得到了越來越廣泛的應(yīng)用。直流它具有優(yōu)良的調(diào)速特性,調(diào)速平滑、方便,調(diào)速范圍廣;需要能滿足生產(chǎn)過程自動化系統(tǒng)各種不同的特殊運行要求,從而對直流電機(jī)的調(diào)速提出了較高的要求,改變電樞回路電阻調(diào)速,改變電樞電壓調(diào)速等技術(shù)已遠(yuǎn)遠(yuǎn)不能滿足要求,這時通過PWM方式控制直流電機(jī)調(diào)速的放大應(yīng)運而生。

本課程設(shè)計主要是通過按鍵調(diào)整PWM信號實現(xiàn)直流電機(jī)的調(diào)速。并實現(xiàn)電路仿真。設(shè)計中,采用了AT89C51單片機(jī)作為整個控制系統(tǒng)的控制電路的核心部分,配以各種顯示、驅(qū)動模塊,實現(xiàn)對電動機(jī)轉(zhuǎn)速的計算和顯示。

目錄

設(shè)計要求  ………………………………………………………  4

總體方案  ………………………………………………………  5

硬件設(shè)計  ………………………………………………………  7

軟件設(shè)計  ………………………………………………………  8

調(diào)試過程  ………………………………………………………  11

設(shè)計總結(jié)  ………………………………………………………  13

其他      ………………………………………………………  14

  • 設(shè)計要求

    直流電機(jī)調(diào)速控制

實現(xiàn)具有電機(jī)速度設(shè)定、控制及顯示的調(diào)速系統(tǒng),功能及指標(biāo)如下:

  • 電機(jī)控制

   要求電機(jī)能進(jìn)行速度設(shè)定,速度調(diào)控以及正反轉(zhuǎn)功能

  • 數(shù)碼管顯示

   數(shù)碼管的顯示要準(zhǔn)確,不可出現(xiàn)異常符號

  • 鍵盤的輸入

   本設(shè)計方案中采用鍵盤輸入,要求繪圖連線準(zhǔn)確,按鍵無異常響應(yīng)

  • 程序要求

   程序應(yīng)盡可能的模塊化,對每個模塊的功能及作用進(jìn)行標(biāo)注

  • 繪圖

  繪圖的功能要全面,連線盡量少交叉,整體美觀。

  • 總體方案

2.1 文獻(xiàn)綜述

   直流電機(jī)的調(diào)速方法

  • 電樞回路串電阻調(diào)速:調(diào)速平滑性差,低速時損耗大、效率低,串入電阻值越大穩(wěn)定性越差
  • 降低電源電壓調(diào)速:調(diào)速平滑性好,調(diào)速前后機(jī)械斜率不變穩(wěn)定性好調(diào)速范圍廣,調(diào)速損耗小調(diào)速經(jīng)濟(jì)性好。
  • 改變勵磁磁通調(diào)速:調(diào)節(jié)平滑,勵磁電流小能量損耗小經(jīng)濟(jì)性好,轉(zhuǎn)速穩(wěn)定。

芯片選擇:DA芯片、mc1413芯片、uln2003芯片等等

分析:在直流電機(jī)調(diào)速方法中,從性能上選擇,應(yīng)選降低電樞電壓調(diào)速和改變勵磁磁通調(diào)速。但從實行的難易程度上看應(yīng)選擇降低電源電壓調(diào)速。

在芯片的選擇上,DA芯片、mc1413芯片和uln2003芯片。前者為數(shù)字模擬量轉(zhuǎn)換芯片,后兩者功能均為放大電壓和電流。這三個芯片均可以設(shè)計直流電機(jī)的調(diào)速控制。從成本上考慮,DA芯片價格超后者,后兩者功能都較為相似,但ULN2003便宜少許所以選擇ULN2003芯片。

2.2 方案設(shè)計

   本方案基于性價比高的原則來設(shè)計。通過按鍵控制PWM信號占空比控制輸入電壓的幅值來控制直流電機(jī)的轉(zhuǎn)速。使用ULN2003芯片來驅(qū)動電機(jī)。


按鍵:按鍵分為停止鍵,1~10檔位調(diào)節(jié),正轉(zhuǎn)反轉(zhuǎn)調(diào)節(jié)及每個檔位上的轉(zhuǎn)速微調(diào)

數(shù)碼管顯示轉(zhuǎn)速:由占空比計算得轉(zhuǎn)速并加以顯示在數(shù)碼管上

PWM信號:PWM信號占空比控制輸入電壓的幅值

ULN2003驅(qū)動電路:ULN2003 放大信號 通過H橋電路來驅(qū)動電機(jī)可正反轉(zhuǎn)

直流電機(jī):被控制對象

單片機(jī):用于接收按鍵值處理并發(fā)出相應(yīng)的PWM信號以及顯示轉(zhuǎn)速在數(shù)碼管上

三、硬件設(shè)計

3.1 電路原理圖

3.2 器件選擇
   考慮單片機(jī)無法驅(qū)動直流電機(jī)所以用了ULN2003這個放大電壓的芯片,因為ULN2003最高輸出電壓為50V完全可以滿足所選擇電機(jī)。且在設(shè)計中需要正反轉(zhuǎn),所以電路選擇了H橋電路通過切換輸出PWM信號的端口可實現(xiàn)電機(jī)的正反轉(zhuǎn)。



F0為輸出高電平還是低電平的標(biāo)志位

JG為定義的數(shù)組

JG與JG+1里面分別存儲了PWM信號高電平與低電平的次數(shù)

FLAG 正反轉(zhuǎn)標(biāo)志位

IS_BUFF數(shù)碼管緩沖顯示單元首地址

   鍵盤主要是用線反轉(zhuǎn)法,先給列線全賦0,行線全賦1.有行按下,對應(yīng)行為0,。同理再給列線全賦1,行線全賦0。哪一列為0則為該列按下。由此可得是哪一個鍵按下

ULN2003:

ULN2003 的每一對達(dá)林頓都串聯(lián)一個2.7K 的基極電阻,在5V 的工作電壓下它能與TTL 和CMOS 電路直接相連,可以直接處理原先需要標(biāo)準(zhǔn)邏輯緩沖器來處理的數(shù)據(jù)。ULN2003 工作電壓高,工作電流大,灌電流可達(dá)500mA,并且能夠在關(guān)態(tài)時承受50V 的電壓,輸出還可以在高負(fù)載電流并行運行。ULN2003 采用DIP—16 或SOP—16 塑料封裝。
它是雙列16腳封裝,NPN晶體管矩陣,最大驅(qū)動電壓=50V,電流=500mA,輸入電壓=5V,適用于TTL COMS,由達(dá)林頓管組成驅(qū)動電路。 ULN是集成達(dá)林頓管IC,內(nèi)部還集成了一個消線圈反電動勢的二極管,它的輸出端允許通過電流為200mA,飽和壓降VCE 約1V左右,耐壓BVCEO 約為36V。用戶輸出口的外接負(fù)載可根據(jù)以上參數(shù)估算。采用集電極開路輸出,輸出電流大,故可直接驅(qū)動繼電器或固體繼電器,也可直接驅(qū)動低壓燈泡。通常單片機(jī)驅(qū)動ULN2003時,上拉2K的電阻較為合適,同時,COM引腳應(yīng)該懸空或接電源。

五、調(diào)試過程

5.1 軟硬件調(diào)試

用Proteus跟Keil聯(lián)調(diào)。將Proteus跟Keil設(shè)置好以后,先運行寫的程序,沒有錯誤后進(jìn)入DEBUG模式,點擊運行Proteus做出響應(yīng)。

遇到的問題:

    在仿真過程中我發(fā)現(xiàn)按鍵電機(jī)轉(zhuǎn)速并未有變化。在進(jìn)行聯(lián)調(diào)后,按下按鍵,單步運行發(fā)現(xiàn)鍵盤程序始終在按鍵掃描部分跳轉(zhuǎn),修改了程序,解決了問題。

5.2 運行效果

電機(jī)停轉(zhuǎn)

電機(jī)正60轉(zhuǎn)

電機(jī)反轉(zhuǎn)150轉(zhuǎn)

六、設(shè)計總結(jié)

    通過本次設(shè)計,加強了我對知識的掌握,使我對設(shè)計過程有了全面的了解。為了完成這次設(shè)計,我查閱了相關(guān)資料,學(xué)會了許多知識,培養(yǎng)了我獨立解決問題的能力。同時在對電路設(shè)計的過程中,鞏固了我的專業(yè)知識,使我受益匪淺。

    這次的設(shè)計也有不足之處。在測量轉(zhuǎn)速上,我并未用反饋的方法來顯示轉(zhuǎn)速,而是通過計算得到轉(zhuǎn)速。這使得轉(zhuǎn)速與真實值有一定的偏差。這主要是因為我一開始所做的準(zhǔn)備工作不充分。并未注意到這一部分。這是本次設(shè)計給我教訓(xùn),在以后的工作中一定要對課題做好充分的了解以及準(zhǔn)備工作。

參考文獻(xiàn)

【1】張毅剛,單片機(jī)原理及其應(yīng)用,高等教育出版社

【2】張毅剛,基于Proteus的單片機(jī)課程的基礎(chǔ)實驗與課程設(shè)計,人民郵電出版社

【3】羌予踐,電機(jī)與電力拖動基礎(chǔ)教程,電子工業(yè)出版社

【4】谷腰欣司,直流電動機(jī)實際應(yīng)用技巧,科學(xué)出版社   


單片機(jī)源程序如下:
  1. FLAG BIT 00H      ;正反轉(zhuǎn)標(biāo)志位
  2. DIS_BUFF EQU 30H  ;數(shù)碼管緩沖顯示單元首地址
  3. JG  EQU 40H       ;PWM信號占空比數(shù)值 & 數(shù)碼管位選循環(huán)次數(shù)存儲地址
  4. ORG 0000H
  5. LJMP MAIN
  6. ORG 000BH
  7. LJMP IT0P
  8. ORG 0100H
  9. MAIN:MOV SP,#60H
  10.      MOV TMOD,#02H ;T0 方式2
  11.          MOV TL0,#0FEH
  12.          MOV TH0,#0FEH
  13.          MOV JG,#0    ;占空比為0%
  14.          MOV JG+1,#1
  15.          MOV JG+3,#1  ;數(shù)碼管位選循環(huán)1次
  16.          MOV R5,JG
  17.          SETB P2.5    ;輸出PWM信號(p2.5為信號輸出,將p2.5給p2.7為正轉(zhuǎn),將p2.5給p2.6為反轉(zhuǎn))
  18.          SETB F0
  19.          SETB ET0
  20.          SETB EA
  21.          SETB TR0
  22. LOOP:
  23.      LCALL KEY    ;按鍵掃描
  24.          LCALL DISPLAY;數(shù)碼管動態(tài)顯示
  25.          LJMP LOOP
  26. IT0P:DJNZ R5,PWM0
  27.      JB F0,S_LOW
  28.          SETB P2.5
  29.          SETB F0
  30.          MOV R5,JG
  31. PWM0:JB FLAG,PWM1;置1為反轉(zhuǎn),置0為正轉(zhuǎn)
  32.      JB P2.5,S1
  33.      CLR P2.7
  34.          RETI
  35. S1:         SETB P2.7
  36.          RETI
  37. PWM1:JB P2.5,S2
  38.          CLR P2.6
  39.          RETI
  40. S2:         SETB P2.6
  41.          RETI
  42.          
  43. S_LOW:CLR P2.5
  44.      CLR F0
  45.          MOV R5,JG+1
  46.          
  47. EXIT:RETI

  48. KEY: MOV P1,#0FH   ;列線(p1.4~p1.7)為0,行線(p1.0~p1.3)為1
  49.      MOV A,P1
  50.      CJNE A,#0FH,T;檢測是否有行按下
  51.          RET
  52. T:   LCALL DELAY   ;延時消抖
  53.      CJNE A,#0FH,H0;是否真的有按鍵按下
  54.          LJMP LOOP
  55. H0:  JB P1.0,H1    ;檢測哪一行按下(為0)
  56.      MOV R3,#0
  57.          LJMP L_SCAN
  58. H1:  JB P1.1,H2
  59.      MOV R3,#4
  60.          LJMP L_SCAN
  61. H2:  JB P1.2,H3
  62.      MOV R3,#8
  63.          LJMP L_SCAN
  64. H3:  JB P1.3,L_SCAN
  65.      MOV R3,#12
  66. L_SCAN:MOV P1,#0F0H;列線(p1.4~p1.7)為1,行線(p1.0~p1.3)為0
  67. L0:  JB P1.4,L1    ;檢測哪一行按下(為0)
  68.      MOV R2,#0
  69.          LJMP JS
  70. L1:  JB P1.5,L2
  71.      MOV R2,#1
  72.          LJMP JS
  73. L2:  JB P1.6,L3
  74.      MOV R2,#2
  75.          LJMP JS
  76. L3:  JB P1.7,JS
  77.      MOV R2,#3
  78. JS:  MOV A,R3      ;計算行列值
  79.      ADD A,R2

  80.          


  81. KEY0:CJNE A,#0,KEY1;關(guān)閉電機(jī)
  82.          CLR TR0
  83.          SETB P2.5
  84.          MOV JG+3,#1
  85.          MOV DIS_BUFF,#0H
  86.          SETB P2.7
  87.          SETB P2.6
  88.          LJMP LOOP
  89. KEY1:CJNE A,#1,KEY2;一檔30轉(zhuǎn)
  90.      SETB TR0
  91.          MOV JG,#208    ;PWM占空比
  92.          MOV JG+1,#30         
  93.          LJMP SCREEN
  94. KEY2:CJNE A,#2,KEY3;二擋60轉(zhuǎn)
  95.      SETB TR0
  96.          MOV JG,#178
  97.          MOV JG+1,#60         
  98.          LJMP SCREEN
  99. KEY3:CJNE A,#3,KEY4;三擋90轉(zhuǎn)
  100.      SETB TR0
  101.          MOV JG,#148
  102.          MOV JG+1,#90         
  103.          LJMP SCREEN
  104. KEY4:CJNE A,#4,KEY5;四擋110轉(zhuǎn)
  105.      SETB TR0
  106.          MOV JG,#128
  107.          MOV JG+1,#110        
  108.          LJMP SCREEN
  109. KEY5:CJNE A,#5,KEY6;五檔130轉(zhuǎn)
  110.      SETB TR0
  111.          MOV JG,#108
  112.          MOV JG+1,#130         
  113.          LJMP SCREEN
  114. KEY6:CJNE A,#6,KEY7;六檔150轉(zhuǎn)
  115.      SETB TR0
  116.          MOV JG,#88
  117.          MOV JG+1,#150
  118.          LJMP SCREEN
  119. KEY7:CJNE A,#7,KEY8;七檔170轉(zhuǎn)
  120.      SETB TR0
  121.          MOV JG,#68
  122.          MOV JG+1,#170         
  123.          LJMP SCREEN
  124. KEY8:CJNE A,#8,KEY9;八檔190轉(zhuǎn)
  125.      SETB TR0
  126.          MOV JG,#48
  127.          MOV JG+1,#190         
  128.          LJMP SCREEN
  129. KEY9:CJNE A,#9,KEY10;九檔210轉(zhuǎn)
  130.      SETB TR0
  131.          MOV JG,#28
  132.          MOV JG+1,#210                  
  133.          LJMP SCREEN
  134. KEY10:CJNE A,#10,KEY11;滿轉(zhuǎn)(由于關(guān)閉T0,手動裝入數(shù)值顯示)
  135.       CLR TR0
  136.           CLR P2.5                  
  137.           MOV JG+3,#3      
  138.           JNB FLAG,MINUS1     ;檢測正反轉(zhuǎn)
  139.           MOV JG+3,#4
  140.           MOV DIS_BUFF+3,#0AH
  141. MINUS1:                        
  142.       MOV DIS_BUFF,#8H
  143.           MOV DIS_BUFF+1,#3H
  144.           MOV DIS_BUFF+2,#2H
  145.           JB FLAG,PWM3
  146.           CLR P2.7
  147.          
  148.           LJMP LOOP
  149. PWM3: CLR P2.6
  150.       LJMP LOOP
  151. KEY11:CJNE A,#11,KEY12
  152.                         
  153.       CLR FLAG          ;標(biāo)志位置0 正傳
  154.           MOV A,#00H
  155.           LJMP KEY0

  156. KEY12:CJNE A,#12,KEY13
  157.       SETB FLAG         ;標(biāo)志位置1 反轉(zhuǎn)
  158.           MOV A,#00H
  159.           LJMP KEY0


  160. KEY13:CJNE A,#13,KEY14 ;微調(diào)占空比  增加轉(zhuǎn)速
  161.       CLR C
  162.           SETB TR0
  163.       MOV A,JG+1
  164.       SUBB A,#239
  165.           MOV A,#10
  166.           JNC KEY10
  167.           MOV R0,#JG+1
  168.       INC @R0
  169.           MOV R0,#JG
  170.       DEC @R0
  171.          
  172.           LJMP SCREEN

  173. KEY14:CJNE A,#14,KEY15  ;微調(diào)占空比 減少轉(zhuǎn)速
  174.       CLR C
  175.       SETB TR0
  176.       MOV A,JG+1
  177.       SUBB A,#1
  178.           MOV A,#11
  179.           JC KEY11
  180.       MOV R0,#JG
  181.           INC @R0
  182.           MOV R0,#JG+1
  183.       DEC @R0
  184.          
  185.           LJMP SCREEN
  186. KEY15:LJMP LOOP
  187.         
  188. SCREEN:
  189.        MOV A,JG+1      ;計算轉(zhuǎn)速      
  190.        MOV B,#64H
  191.            DIV AB  
  192.            MOV DIS_BUFF+2,A
  193.            MOV A,B
  194.            MOV B,#0AH
  195.            DIV AB
  196.            MOV DIS_BUFF+1,A
  197.            MOV DIS_BUFF,B
  198.            MOV R1,#33H
  199.            

  200. LOOP0: MOV DIS_BUFF+3,#00H;計算位選循環(huán)次數(shù)
  201.        CJNE @R1,#00H,FZ
  202.            DEC R1
  203.            CJNE R1,#2FH,LOOP0
  204. FZ:    JB FLAG,MINUS      
  205.        MOV A,R1
  206.        SUBB A,#2FH
  207.        MOV JG+3,A
  208.        LJMP LOOP

  209. MINUS: INC R1             ;顯示負(fù)號
  210.        MOV @R1,#0AH
  211.        MOV A,R1
  212.        SUBB A,#2FH
  213.                      
  214.        MOV JG+3,A
  215.        LJMP LOOP           
  216. DISPLAY:MOV R1,#DIS_BUFF ;動態(tài)顯示程序
  217.         MOV R4,JG+3
  218.                 MOV B,#10H
  219. ……………………

  220. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
直流電機(jī).rar (144.85 KB, 下載次數(shù): 112)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 精品国产乱码久久久久久老虎 | 成人免费淫片aa视频免费 | 91久色| 中文字幕在线第一页 | 一二三四在线视频观看社区 | 91在线综合| 夜夜精品浪潮av一区二区三区 | 九九久久久 | 成人欧美一区二区 | 久久久一区二区三区 | 国产视频久 | 欧美日韩精品一区二区三区四区 | 精品一区二区三区四区五区 | 一区二区三区中文字幕 | av网站免费 | 午夜激情视频 | 亚洲免费精品 | 久久久久99 | 精品国产乱码久久久久久丨区2区 | 天天操天天射综合网 | 草逼网站 | 97免费视频在线观看 | 北条麻妃99精品青青久久主播 | 成人免费一区二区三区视频网站 | 一区二区福利视频 | 国产一区二区三区在线 | 国产精品乱码一区二区三区 | 国产9 9在线 | 中文 | 中文字幕av一区二区三区 | 国产精品九九九 | 依人成人| 九色国产| 国产一区二区三区在线 | 香蕉视频久久久 | 久久久久久久久久久久久久av | 亚洲一卡二卡 | 男人天堂网址 | 亚洲国产一区二区三区四区 | 欧洲成人午夜免费大片 | av男人天堂影院 | 男女啪啪高潮无遮挡免费动态 |