计算机控制技术课程设计直流电机PWM调速系统.doc
《计算机控制技术课程设计直流电机PWM调速系统.doc》由会员分享,可在线阅读,更多相关《计算机控制技术课程设计直流电机PWM调速系统.doc(15页珍藏版)》请在沃文网上搜索。
1、目 录目 录- 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单片机设计直流电机PWM调速系统,系统同时带有模拟测速功能。利用汇编语言编写程序,通过Proteus软件进行仿真验证设计。设计中还用到了外部晶振、六位
2、LED数码管作为速度显示,外接四个按键作为功能设定。按下启动按键进入启动显示、调速系统进入等待状态,按下正转功能键,电机正转;按下反转功能键,电机反转;按下停止功能键,电机由自身阻力减速到停止,这时会停止显示,显示屏熄灭,系统进入等待状态,如果按下启动按键将重新启动。经过一系列的测试验证,设计能满足各项要求,经过长时间的运行测试程序都能正常地运行,没出现错误。可应在实际中应用,能满足日常直流电机的调速。关键字 单片机;直流电机;PWM调速;13直流电机PWM调速系统1、设计目的利用单片机设计直流电机PWM调速系统,加深对以单片机为代表的计算机控制技术的熟悉程度,把学习到的理论知识应用到实际中,
3、把单片机的知识系统地联系起来,增强动手能力,为以后的设计、工作做准备。也是对这学期计算机控制的学习的一次检验。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以及晶振CRYSTAL用来为单片机提供外部晶振。拨码开关用于输入占空比,可以提供8位二进制精度的输入。电机驱动电路上的晶体管用于控制电机的
5、正反转通电方向。显示屏D1用于显示模拟测量的电机转速,与占空比输入成一定的关系。“启动”按键用来启动系统,使系统进入等待状态,显示屏显示“0000P”,等待“正转”或者“反转”按键按下;按下“正转”按键后,电机开始以占空比设定的正脉冲时间进行正向转动,占空比设定越大转速越快,反之,则越小;按下“反转”即电机反方向转动。 “停止”按键用来停止电机的通电以及显示屏的显示,按下“停止”按键后,电机将按自身惯性滑行,显示屏则熄灭,无显示内容。3.4、工作过程说明正转:启动系统,按下“启动”按键后,显示屏显示“0000P”,系统处于等待状态,电机未通电;按下“正转”按键后,电机开始正向转动,显示屏也会显
6、示采集到的脉冲对应的转速,但由于电机启动到设定的转速需要一定的时间,所以电机上自带的转速表并不会马上显示到设定速度,但显示屏由于是测量输出脉冲的,所以一开始显示的就是设定速度。反转:启动系统,按下“启动”按键后,显示屏显示“0000P”,系统处于等待状态,电机未通电;按下“反转”按键后,电机开始反方向转动,情况基本上和正转的一样,就是电机速度显示会是负的。停止:系统处于“等待”、“正转”、“反转”状态时按下“停止”按键,电机即停止通电、显示屏熄灭,电机自由滑动到停止。占空比调整:只需将拨码开关拨到高电平或者低电平一侧上,即能组成8位二进制精度的占空比输入,调节可在任何时候,只要启动电机即可生效
7、。4、软件设计4.1、设计思路总思路是利用功能性子程序的方法,将系统分开不同的功能,分别利用子程序来完成,这样可以方便调试,思路也可以很清晰。主程序主要是判断“启动”、“正转”、“反转”、“停止”功能键的按下与否,其它的事务调用子程序完成即可,主程序大部分都是在调用子程序。初始化子程序完成初始化功能,将各数据寄存器清零,将显示码表的首地址赋给DPTR指针,开定时器0、外中断1以及计数器1,设定相应的设置。速度脉冲采集子程序完成速度的采集,此程序是参考书本上第九章的速度测量表设计的,通过探测P3.3的脉冲周期,在一个周期内读入外中断1口上的脉冲个数,用来作为速度显示。速度计算子程序完成速度数据的
8、存储以及0速度时的赋值,原本想利用一除法程序来完成速度的计算的,但由于比较复杂,而且时间上也不允许,所以最后唯有用比较简单的模拟方法模拟速度的测量,其原理是一样的,只是没对采集到的脉冲进行处理,直接用来显示,基本能满足模拟的要求。显示子程序实现速度数值的显示,由于是动态显示,所以要不断地执行显示程序,而且很容易就会出现闪烁,一开始想用静态显示的,但由于静态显示用到的锁存器较多,而且对动态显示已经非常熟悉,所以最后就用了动态显示,也是对以前学单片机的复习吧。定时器0中断子程序起到最主要的作用电机控制脉冲的输出,定时时间为1ms,将这1ms分成255个时间段,按占空比设定的比值输出相应时间的正脉冲
9、、负脉冲,控制电机的速度,由于电机的速度只是与占空比有关系,定时器的定时时间长短并不影响电机转速的控制。延时子程序用于显示子程序的位与位之间的显示延时,让每一位都显示一定的时间,以让人眼能察觉。启动系统停止电机按设定方向、占空比转动4.2、工作原理图图2.工作原理图 4.3、流程图开始 否 启动键按下? 是 调用初始化子程序 调用脉冲采集子程序 调用速度计算子程序 显示时钟时调用显示子程序 是 置正转标志位 正转按键按下? 是 否 置反转转标志位 反转按键按下? 否 停止按键按下? 否 图3.主程序流程图 4.4、程序清单SPEED1 EQU 0031H ;速度高位SPEED EQU 0032
10、H ;速度低位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 P2,#0WAIT: JNB P2.4,WAIT ;等待启动按键按下BEGIN: ACALL START ;初始化LOOP: DJ
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 技术 课程设计 直流电机 PWM 调速 系统