




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机控制技术课程设计课程名称计算机控制技术设计名称直流电机PWM调速系统学号学生姓名所在专业电气工程及其自动化所在班级指导教师成绩目 录目 录- 1 -摘 要- 2 -1、设计目的12、设计功能、要求13、硬件设计13.1、原理图设计13.2、器件清单23.3、各元器件作用说明23.4、工作过程说明24、软件设计34.1、设计思路34.2、工作原理图34.3、流程图44.4、程序清单45、仿真结果95.1、仿真环境说明95.2、程序编译结果95.3、软件仿真结果95.4、仿真结果说明116、设计总结117、参考文献118、附件:电路图12摘 要本设计主要是利用AT89C51单片机设计直流电机
2、PWM调速系统,系统同时带有模拟测速功能。利用汇编语言编写程序,通过Proteus软件进行仿真验证设计。设计中还用到了外部晶振、六位LED数码管作为速度显示,外接四个按键作为功能设定。按下启动按键进入启动显示、调速系统进入等待状态,按下正转功能键,电机正转;按下反转功能键,电机反转;按下停止功能键,电机由自身阻力减速到停止,这时会停止显示,显示屏熄灭,系统进入等待状态,如果按下启动按键将重新启动。经过一系列的测试验证,设计能满足各项要求,经过长时间的运行测试程序都能正常地运行,没出现错误。可应在实际中应用,能满足日常直流电机的调速。关键字 单片机;直流电机;PWM调速;直流电机PWM调速系统1
3、、设计目的利用单片机设计直流电机PWM调速系统,加深对以单片机为代表的计算机控制技术的熟悉程度,把学习到的理论知识应用到实际中,把单片机的知识系统地联系起来,增强动手能力,为以后的设计、工作做准备。也是对这学期计算机控制的学习的一次检验。2、设计功能、要求占空比采用可调电阻输入模拟电压,或拨码开关的方式输入;驱动电路可用达林顿晶体管驱动器ULN2803;检测电机转速,并显示(用压控振荡器(可用555电路构成)来模拟直流电机的运行, 对压控振荡器输出的脉冲进行计数,可换算出转速);在Proteus下仿真。3、硬件设计3.1、原理图设计原理图的设计主要的问题是一些器件的选用,其中以振荡器的选用最为
4、繁琐,因为对很多器件不时十分熟悉,接硬件电路的时候会遇到很多的小问题,一般只能从网上查找答案,或者是不断地尝试,尝试每个接口应该怎样接,结合平时的经验以及器件的一些共通点。硬件原理图如下:图1.电路原理图3.2、器件清单器件名称数值、型号数量原理图中标号电阻10k2R1、R2电容1nF2C1、C2单片机AT89C511U1三极管2N17114Q1, Q2, Q5, Q6三极管2N29052Q3, Q48路电阻3001RESPACK-8晶振1CRYSTAL按键拨码4启动、正转、反转、停止LED显示屏6位1D1拨码按键SW-SPDT8SW1-SW83.3、各元器件作用说明电容C2, C3以及晶振C
5、RYSTAL用来为单片机提供外部晶振。拨码开关用于输入占空比,可以提供8位二进制精度的输入。电机驱动电路上的晶体管用于控制电机的正反转通电方向。显示屏D1用于显示模拟测量的电机转速,与占空比输入成一定的关系。“启动”按键用来启动系统,使系统进入等待状态,显示屏显示“0000P”,等待“正转”或者“反转”按键按下;按下“正转”按键后,电机开始以占空比设定的正脉冲时间进行正向转动,占空比设定越大转速越快,反之,则越小;按下“反转”即电机反方向转动。 “停止”按键用来停止电机的通电以及显示屏的显示,按下“停止”按键后,电机将按自身惯性滑行,显示屏则熄灭,无显示内容。3.4、工作过程说明正转:启动系统
6、,按下“启动”按键后,显示屏显示“0000P”,系统处于等待状态,电机未通电;按下“正转”按键后,电机开始正向转动,显示屏也会显示采集到的脉冲对应的转速,但由于电机启动到设定的转速需要一定的时间,所以电机上自带的转速表并不会马上显示到设定速度,但显示屏由于是测量输出脉冲的,所以一开始显示的就是设定速度。反转:启动系统,按下“启动”按键后,显示屏显示“0000P”,系统处于等待状态,电机未通电;按下“反转”按键后,电机开始反方向转动,情况基本上和正转的一样,就是电机速度显示会是负的。停止:系统处于“等待”、“正转”、“反转”状态时按下“停止”按键,电机即停止通电、显示屏熄灭,电机自由滑动到停止。
7、占空比调整:只需将拨码开关拨到高电平或者低电平一侧上,即能组成8位二进制精度的占空比输入,调节可在任何时候,只要启动电机即可生效。4、软件设计4.1、设计思路总思路是利用功能性子程序的方法,将系统分开不同的功能,分别利用子程序来完成,这样可以方便调试,思路也可以很清晰。主程序主要是判断“启动”、“正转”、“反转”、“停止”功能键的按下与否,其它的事务调用子程序完成即可,主程序大部分都是在调用子程序。初始化子程序完成初始化功能,将各数据寄存器清零,将显示码表的首地址赋给DPTR指针,开定时器0、外中断1以及计数器1,设定相应的设置。速度脉冲采集子程序完成速度的采集,此程序是参考书本上第九章的速度
8、测量表设计的,通过探测P3.3的脉冲周期,在一个周期内读入外中断1口上的脉冲个数,用来作为速度显示。速度计算子程序完成速度数据的存储以及0速度时的赋值,原本想利用一除法程序来完成速度的计算的,但由于比较复杂,而且时间上也不允许,所以最后唯有用比较简单的模拟方法模拟速度的测量,其原理是一样的,只是没对采集到的脉冲进行处理,直接用来显示,基本能满足模拟的要求。显示子程序实现速度数值的显示,由于是动态显示,所以要不断地执行显示程序,而且很容易就会出现闪烁,一开始想用静态显示的,但由于静态显示用到的锁存器较多,而且对动态显示已经非常熟悉,所以最后就用了动态显示,也是对以前学单片机的复习吧。定时器0中断
9、子程序起到最主要的作用电机控制脉冲的输出,定时时间为1ms,将这1ms分成255个时间段,按占空比设定的比值输出相应时间的正脉冲、负脉冲,控制电机的速度,由于电机的速度只是与占空比有关系,定时器的定时时间长短并不影响电机转速的控制。延时子程序用于显示子程序的位与位之间的显示延时,让每一位都显示一定的时间,以让人眼能察觉。启动系统停止电机按设定方向、占空比转动4.2、工作原理图图2.工作原理图 4.3、流程图开始 否 启动键按下? 是 调用初始化子程序 调用脉冲采集子程序 调用速度计算子程序 显示时钟时调用显示子程序 是 置正转标志位 正转按键按下? 是 否 置反转转标志位 反转按键按下? 否
10、停止按键按下? 否 图3.主程序流程图 4.4、程序清单SPEED1 EQU 0031H ;速度高位SPEED EQU 0032H ;速度低位DUTY EQU 0033H ;占空比存储数据,正脉冲时间DUTYN EQU 0034H ;占空比存储数据,负脉冲时间DISDATA EQU 0035H ;高八位显示数存储DISDATA2 EQU 0036H ;低八位显示数存储ORG 0000HAJMP MAINORG 000BH ;定时器0中断入口AJMP SBR1;=主程序=ORG 0100HMAIN: CLR EA ;停止按键按下后关所有中断 MOV P3,#0FFH ;输出停止控制字 MOV P
11、2,#0WAIT: JNB P2.4,WAIT ;等待启动按键按下BEGIN: ACALL START ;初始化LOOP: DJNZ 37H,SPE MOV 37H,#50 ACALL GET ;速度脉冲采集 ACALL CAL ;速度计算SPE: ACALL DIS ;速度显示 JNB P2.5,M1 ;正转按键转正转 SETB 01H ;置正转标志位 CLR 02H ;清反转标志位 AJMP HEREM1: JNB P2.6,HERE ; SETB 02H ;置反转标志位 CLR 01H ;清正转标志位HERE: JB P2.7,MAIN ;停止按键按下,返回判断启动是否按下 AJMP L
12、OOP;=初始化子程序=START: MOV DPTR,#TAB ; MOV DUTY,#0 MOV DUTYN,#0 MOV A,#0 MOV R0,#0 MOV R1,#0 MOV R2,#0 MOV R3,#0 MOV R4,#0 MOV 20H,#0 MOV 37H,#50 MOV SPEED,#0 MOV SPEED1,#0 MOV DISDATA,#0 MOV DISDATA2,#0 MOV IE,#82H ;定时器0允许,中断允许 MOV TMOD,#11010001B ;设定时器0为定时,计数器1计数,门控位为1 MOV TL0,#0CH ;定时1ms MOV TH0,#0FE
13、H SETB TR0 SETB PT0 SETB ET1 ;开定时器1 SETB PT1 ;设优先级 RET;=速度脉冲采集子程序=GET: MOV TL1,#0 MOV TH1,#0 JB P3.3,GE1 AJMP GREGE1: JB P3.3,GE1 ; SETB TR1 ;GE2: JNB P3.3,GE2GE3: JB P3.3,GE3 CLR TR1 ; MOV SPEED,TL1 ;低位 MOV SPEED1,TH1 ;高位 GRE: RET;=速度计算子程序=CAL: MOV R6,SPEED ;速度脉冲数低位 MOV R7,SPEED1 ;速度脉冲数高位 CJNE R6,#
14、0,CAL3 ;速度为零时CAL3: CJNE R7,#0,CAL1 ; MOV DISDATA,#0 ;存储显示高位,赋零 MOV DISDATA2,#0 ;存显示低位 AJMP CRECAL1: MOV DISDATA,SPEED1 ;存储显示高位 MOV DISDATA2,SPEED ;存显示低位 CRE: RET;=显示子程序=DIS: MOV R2,#8 ;位选码 MOV A,DISDATA SWAP A ;显示高八位数据的高四位 ANL A,#0FH MOVC A,A+DPTR MOV P2,R2 MOV P0,A ACALL DELAY INC R2 MOV A,DISDATA
15、;显示高八位的低四位 ANL A,#0FH MOVC A,A+DPTR MOV P2,R2 MOV P0,A ACALL DELAY INC R2 MOV A,DISDATA2 ; SWAP A ;显示低八位数据的高四位 ANL A,#0FH MOVC A,A+DPTR MOV P2,R2 MOV P0,A ACALL DELAY INC R2 MOV A,DISDATA2 ;显示低八位的低四位 ANL A,#0FH MOVC A,A+DPTR MOV P2,R2 MOV P0,A ACALL DELAY INC R2 MOV P2,R2 MOV P0,#73H ;显示P ACALL DELA
16、YDRE: RET;=定时器0中断子程序= SBR1: JB 01H,RIGHT ;正转标志位置一转到正转 JB 02H,LEFT AJMP SRE ;如果正反转都没按下,即无动作返回RIGHT: MOV A,R0 ;正转 JZ RIS1 SETB P3.0 ;输出反转正脉冲控制字 CLR P3.1 DJNZ R0,SRE ;定时次数未够转到S2RIS1: MOV A,R1 JZ RS5 SETB P3.1 ;输出反转负脉冲控制字 DJNZ R1,SRE ;输出负脉冲次数未够转S2继续输出,够即重新赋值到R0,R1RS5: MOV P1,#0FFH MOV A,P1 CJNE A,DUTY,R
17、S4 ;判断读入数据与上一次是否相同 AJMP RS3RS4: MOV DUTY,A ;存正脉冲数值 MOV A,#0FFH CLR C SUBB A,DUTY MOV DUTYN,A ;存负脉冲数值 RS3: MOV R0,DUTY MOV R1,DUTYN AJMP SRELEFT: MOV A,R0 ;反转 JZ LS1 SETB P3.1 ;输出反转正脉冲控制字 CLR P3.0 DJNZ R0,SRE ;定时次数未够转到S2LS1: MOV A,R1 JZ LS5 SETB P3.0 ;输出反转负脉冲控制字 DJNZ R1,SRE ;输出负脉冲次数未够转S2继续输出,够即重新赋值到R
18、0,R1LS5: MOV P1,#0FFH MOV A,P1 CJNE A,DUTY,LS4 ;判断读入数据与上一次是否相同 AJMP LS3LS4: MOV DUTY,A ;存正脉冲数值 MOV A,#0FFH CLR C SUBB A,DUTY MOV DUTYN,A ;存负脉冲数值 LS3: MOV R0,DUTY MOV R1,DUTYNSRE: MOV TL0,#0CH ;重新赋初值,定时1ms MOV TH0,#0FEH RETI;=延时子程序=DELAY:MOV 60H,#30D2: MOV 61H,#20D1: DJNZ 61H,D1 DJNZ 60H,D2 RET;=共阳八段显示码=TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H ; 0-7共阴DB 7FH,6FH,77H,7FH,39H,3FH,79H,71H ; 8-FDB 73H ; PEND5、仿真结果5.1、仿真环境说明仿真环境为:Microsoft windows XP操作系统下利用PROTEUS软件中的智能原理图输入系统进行仿真。5.2、程序编译结果程序编译直接利用PROTEUS软件自带的编译器,编译结果如下图:5.3、软件仿真结果在单片机中装入编译好的程序后开始仿真。 启动状态:正转状态:反转状态
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 北京知识付费培训平台课件
- 物流企业营销考试模拟题+答案
- 2025年炼钢厂连铸操作工岗位技能知识考试题库与答案
- 2024年公考时政常考题50道及答案
- 中级钳工应知试题及答案
- 音乐知识考核试题及答案
- 海姆立克急救法测试题(附答案)
- 2025全国农民科学素质网络竞赛知识试题库及答案
- 2025年《突发事件应对法》知识考试题库(含答案)
- (2025)班组级安全培训考试题库及参考答案
- 成长赛道法律专业
- 淤泥固化施工方案
- 苏教牛津译林版小学英语六年级上册单词背诵默写本
- 2024年10月河北保定市市直政府序列事业单位公开选调工作人员45名笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 防水施工组织设计方案
- 2025年宏信证券有限责任公司招聘笔试参考题库含答案解析
- 舆情知识培训课件
- 2024超药品说明书用药目录-2024广东省药学会20240613
- 2024北京东城区高三(上)期末生物试题和答案
- 数据安全风险评估报告
- 细胞学科普讲座模板
评论
0/150
提交评论