- 1、本文档共69页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于单片机的步进电机控制系统设计讲述
文章编号:1672}91X(2009)SG0008 03基于AT89C51单片机的步进电机控制系统常喜,姜文龙,准英(吉林师范大学信息技术学院,吉林四平136000)摘要:介绍了基于AT89C51单片机控制步进电机旋转方向、旋转速度的方法,分析了步进电机的结构和工作原理,并给出系统硬件结构图和软件程序模块.关键词:步进电机;AT89C51单片机;控制系统中图分类号:TP368. 2文献标识码:A引言步进电机是一种利用电磁铁的作用原理将电脉冲信号转换为线位移或角位移的电机.在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角.由于步进电机只有周期性的误差而无累积误差等特点,使得在速度、位置等数字控制领域中应用日益广泛.本文应用AT 89C51单片机实现了对B Y35型四相步进电机的正反转和加减速的控制,具有硬件结构简单,易于操作,价格低廉等优点.步进电机的工作原理图1是四相反应式步进电机工作原理示意图.采用单极性直流电源供电,只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动.小的位置,转子转动,1,4号齿和C相绕组的磁极对齐.而0,3号齿和A, B相绕组产生错齿,2, 5号齿就和A,D相绕组磁极产生错齿.依次类推,A , B, C, D四相绕组轮流供电,则转子按一定方向转动.四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式.单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图2 a, b,c:所示.脉冲』月n几几几门月力月月几』们比u钊飞几月比“钊飞nn.J划飞n了L,u、n们山月月月nnn月月~一JI一丁L一-rl一厂飞J尸t」丁一飞一一J一几 .习〕一口飞一} }U}Z几一一曰尸门 ~一」lee~」1一」1~u}u}n一一一厂一1一一~厂门 1门门门门厂门厂〕「-1 n r8.单四拍b.双四拍c.八拍图2步进电机工作时序波形图硬件电路设计本文使用的BY 35- 4801型步进电机是四相步进电机,工作电压12V,步进角为7. 5度,即进行单四拍工作48个脉冲电机转一周.具体硬件电路如图3所示,四个控制按键分别与A T 89C 51单片机的P 1.0, P1. 2,P1 .4,P 1. 7引脚相连.当按下某一按键时,实现电机的正反转翻转、停/转以及加减速转的功能.单片机的P2口四个引脚输出具有时序的方波,通过U LN2003达林顿管作为步进电机的控制信号实现功能.图1四相步进电机步进示意图开始时,开关SB接通电源,SA,SC,SD断开,B相磁极和转子0, 3号齿对齐,同时,转子的1,4号齿就和C, D相绕组磁极产生错齿,2,5号齿就和D,A相绕组磁极产生错齿.当开关SC接通电源,SB,SA,SD断开时,转子总是力图转到磁阻最软件程序模块软件编程采用C语言实现功能.在主程序中主要判断是否有键被按下,如果某一按键被按下,程序跳转到键功能函数,实现该健的相应功能.本文中步进电机进行的是单四拍旋转.#inclu 1e“reg 51 .hUSN 10p3八fIk. .void stems w o rk(){if oh ange m ark) {if(++、n少3) cnt=0;吮刃1‘肠口娜l.月月..,二比仁二石一一」g大二硬件连接结构图shit ash;[‘一x定义管脚x/shit b=P2};shitshitshitshitsh;[(]一图3P2D;/P2 2;P2 3;start=P 117;/x定义停/转键x/ch ang e= P 1 }2,;/x定义翻转键x/add= P1 }/关sub=i nt v an=P17;/Ox 40;/定义加速转键定义减速转键设置初始速度 bit sec,、hange_mark, k_m ark;/关位x/关/关/关/设置标志unsigned char、n t;void step work);/x通电时序函数x/void key_});/x键功能函数x/void delay );/x延时函数x/void tim e0()interrupt 1{T H 0= vari; sec=1;}main){TMOD=1; TRO=0; P2=0; IE=0x82; change_mark= 1;fo r };;){else {if(一一、ntGO) cnt=3;} if(、二[一=0 {a= 0; b=1;、= 0; d= 0;} else if(、二[==1) {a= I;b= 0;、=0; d= 0;}
您可能关注的文档
最近下载
- 计算机操作系统(慕课版)期末考试卷及评分标准(共5套).docx VIP
- 第十讲中外会通与中华民族巩固壮大(明朝时期)-中华民族共同体概论专家大讲堂课件.pptx VIP
- 痛风的药物治疗.pptx
- 中华民族共同体概论课件专家版10第十讲 中外会通与中华民族巩固壮大(明朝时期).pdf VIP
- HX108-2_七管半导体收音机_实习报告.doc VIP
- 新外研版高二英语选择性必修三developing ideas课件(巴黎圣母院).pptx
- 民谣介绍PPT教程文件.ppt
- 青岛版六年级数学下册《总复习二 图形的位置与运动》教学课件PPT小学公开课.pptx
- 银行信用卡行业发展前景与机遇展望报告.docx
- 毕业论文:《小车倒立摆系统进行专家控制的Matlab仿真》.doc
文档评论(0)