1 / 15
文档名称:

机电一体化设计 步进电机正反转及加减速设计 程序.pdf

格式:pdf   大小:1,195KB   页数:15页
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

机电一体化设计 步进电机正反转及加减速设计 程序.pdf

上传人:1781111**** 2024/5/11 文件大小:1.17 MB

下载得到文件列表

机电一体化设计 步进电机正反转及加减速设计 程序.pdf

相关文档

文档介绍

文档介绍:该【机电一体化设计 步进电机正反转及加减速设计 程序 】是由【1781111****】上传分享,文档一共【15】页,该文档可以免费在线阅读,需要了解更多关于【机电一体化设计 步进电机正反转及加减速设计 程序 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。:..机电一体化课程设计题目:步进电机正反转及加减速设计专业:机械工程及自动化班级:092姓名:QCR学号:********指导教师:ZZY2012年6月23日:..………………………………………………………………………、双六拍步进电机的结构和工作原理……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………7参考文献……………………………………………8附录(一)………………………………………………9附录(二)………………………………………………10附录(三)………………………………………………11:..(1)熟练掌握机电一体化原理。(2)综合运用51单片机的控制电路和最小系统。(3)步进电机的正反转驱动负载。:步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为步距角”),它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。步进电机可以作为一种控制用的特种电机,利用其精度高等特点,广泛应用于各种工业控制系统中。、双六拍步进电机的结构和工作原理:三相单、双六拍步进电机通电方式:这种方式的通电顺序是:U-UV-V-VW-W-WU-U或为U-UW-W-WV-V-VU-U。按前一种顺序通电,即先接通U相定子绕组;接着是U、V两相定子绕组同时通电;断开U相,使V相绕组单独通电;再使V、W两相定子绕组同时通电;W相单独通电;W、U两相同时通电,并依次循环。这种工作方式下,定子三相绕组需经过六次切换才能完成一个1:..,而“单、双六拍”则是因为单相绕组与两相绕组交替接通的通电方式。步进电机的驱动电源步进电机应由专用的驱动电源来供电,由驱动电源和步进电机组成一套伺服装置来驱动负载工作。步进电机的驱动电源,主要包括边频信号源、脉冲分配器和脉冲放大器等三个部分。边频信号源是一个频率从几十赫兹到几千赫兹的可连续变化的信号发生器。变频信号员可以采用多种线路。最常见的有多谐振荡器和单结晶体管构成的驰张振荡器两种。它们都是通过调节电阻和电容的大小来改变电容充放电的时间常数,以达到选取脉冲信号频率的目的。脉冲分配器是由门电路和双稳态处发起组成的逻辑电路,它根据指令把脉冲信号按一定的逻辑关系加到放大器上,使步进电机按一定的运行方式运转。步进电机的钉子绕组可以是任意相数,常有三相制,四相制,五相制,六相制4种。根据转子结构不同,步进电机分为3种:反应式步进电机(VR)、永磁式步进电机(PM)和混合式步进电机(HB)。其中反应式步进电机结构最为简单,应用最广泛。绕组通电方式通常有单排方式、双拍方式和单双拍方式3种。通过软件编程,用单片实现步进电机控制的脉冲分配;实现步进电机的正常工作。根据题目要求,开机后,电机不转,按下前进,后退,左转,右转任意一按钮,电机按设置的方式转动,当按下停止按钮后,电机停止转动。2:..。,步进电机控制器ULN2003,步进电机,通过单片机编程,实现步进电机控制的脉冲分配,使电机实现正转,反转以及停止等功能。,见下图(1)。系统包括单片机、按键和步进电机。AT89C51步进按键驱动电路单片机电机(1)单片机控制步进电机的控制框图开始通电后,步进电机停止转动,单片机分别接有按钮开关K1,K2,K3,用来控制步进电机的不同转向,不同转速,当按下K1后,电源接通,电机正转,,电机反转。当按下K3,电机变为转速2。当再次按下K3,电机变为转速3。逐步加速为实现电机加速,减速,给电机设置不同延时时间常数,根据时3:..延时时间常数越小,电机转速越快。.,可以设计出单片机控制步进电机的硬件电路图,见附录(一):单片机的选择,单片机的种类较多,选择时应根据控制系统的程序和数据量的大小来确定。由于本系统控制简单,程序和数据量都不大,因此我们选用89C51单片机,89C51晶振频率采用12MHZ。外接晶体引脚和XTAL2①XTAL1:,,该引脚接受振荡器的信号,即把此信号直接接到内部时钟发生器的输入端.②XTAL2:,,此引脚应悬浮不连接.③单片机外接电路片内电路与片外器件就构成一个时钟产生电路,CPU的所有操作均在时钟脉冲同步下进行。片内振荡器的振荡频率非常接近晶振频率,~12MHz之间选取。C1、C2是反馈电容,其值在5pF~30pF之间选取,典型值为30pF。本电路选用的电容为30pF,晶振频率为12MHz。这样就确定了单片机的4个周期分别是:振荡周期=1/12;机器周期(SM)=1?s;4:..1~4。晶振电路如下图所示。驱动电路,单片机的输出电流太小,不能直接接与步进电机相连,需要增加驱动电路。,可采用ULN2003类的驱动IC。ULN2003的技术参数如下所示最大输出电压:50V。最大连续输出电流:。最大连续输入电流:25mA。功率:1W。为ULN2003系列驱动器的引脚图,左边1-7为输入端,接单片机P1口的输出端,引脚8接地;左侧10-16引脚为输出端,接步进电机,引脚9接电源5V,。正转采用1相激磁方式,反转采用一到俩相激磁方式。,检查无误后导入程序,编译连接后进行仿真。按不同的键实现不同的功能。从而控制电5:..,开始时步进电机停转,按键进行扫描,判断是否有按键按下,由于按键的时间特性,程序中加入了消抖程序,当判断按键按下时消除按键的抖动,按下不通的键跳至不同的转动模块,调用转动程序,转动程序通过查表实现,当执行完之后继续扫描看是否有按键按下,没有则继续当前循环,有则跳至相应的模块。(二)。附录(三),对程序进行装载编译连接后,仿真。结果:按下Y1钮电机正转转速1按下Y2钮电机反转转速1(低)按下Y3钮转速2(中)再次按下Y3钮转速3(高)6:..设计总结体会两周的课设很快的就结束了,本次课设主要以机电一体化为基础,用单片机来控制电机的转动,熟悉单片机的一般搭建电路,了解一般电子电路与单片机构成简单系统及简单编程的方法。熟练掌握了AT89C51集成开发环境的使用方法,进一步加深对单片机常用指令的理解与运用。能够较熟练的运用protues绘制电路原理图以及进行仿真。以及AT8951和protues的联合调试。在课设过程中,使我得到了一次用专业知识、专业技能分析和解决问题、全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及常用编程设计思路技巧的掌握方面有了很大的提高。同时在老师的悉心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,单片机领域对我今后进一步学****计算机方面的知识有极大的帮助,使我们积累实际电子制作经验,达到学以致用的目的,真正的吧理论和实践结合起来,让我们进一步体验到实践的重要性。对我们以后的工作有很大的帮,同时锻炼了我们团队合做精。同时非常感谢老师的细心指导,当我们遇到困难时,能及时给予我们帮助。7:..参考文献:[1]潘晓宁,朱耀东。单片机程序设计实践教程[2]刘海宽,包建华。单片机实验与实训教程[3]杨居义,马宁。单片机原理与工程应用[4]胡健,刘玉宾。单片机原理及接口技术实践教程[5]韩志军,刘新民。单片机系统设计与应用实例[6]朱博,马鸣鹤。单片机应用技术教程[7]王庆东,刘杰辉,陈亦仁,等,单片机在步进电机驱动控制中的应用.[8]丁伟雄,杨定安,[9]张劲,利用AT89S52单片机控制步进电机8:..程序流程图开始初始化判断电机正反转反正转转转转转转速速速速速速1231239:..附录(二)硬件原理图及电路图10:..#definebusy0x80#defineucharunsignedchar#defineuintunsignedintsbitY1=P2^3;sbitY2=P2^4;sbitY3=P2^5;ucharcodetab[8]={0x02,0x06,0x04,0x0c,0x08,0x09,0x01,0x03};//控制代码uchartemp;voiddelay(uchark)//延时函数{uinti,j;for(i=0;i<k;i++){for(j=0;j<60;j++){;}}}voidtest_1602busy()//测忙函数{P0=0xff;E=1;RS=0;RW=1;_nop_();_nop_();while(P0&busy)//检测LCDDB7是否为1{E=0;_nop_();E=1;_nop_();}E=0;}mand(ucharco)//写命令函数{11:..test_1602busy();//LCD是否忙RS=0;RW=0;E=0;_nop_();P0=co;_nop_();E=1;//LCD的使能端高电平有效_nop_();E=0;}voidwrite_1602Data(ucharData)//写数据函数{test_1602busy();P0=Data;RS=1;RW=0;E=1;_nop_();E=0;}voidmain(){uchari=0;uchardelay_v=100;ucharflag=0;P1=0xff;P2=0xff;init_1602();SPD://显示基本字符RUN:while(1){if(KEY2==1)DisplayOneChar(4,0,'Z');//正反转显示elseDisplayOneChar(4,0,'F');if(KEY3==0){i++;i=i%3;while(KEY3==0){;}}12:..switch(i){case0:delay_v=100;DisplayOneChar(13,0,'1');break;//1case1:delay_v=75;DisplayOneChar(13,0,'2');break;case2:delay_v=50;DisplayOneChar(13,0,'3');break;}if(KEY1==0){RUN:on显示运行if(flag==0){if(KEY2==1)//首次按键正转9度{temp=0;P1=tab[temp];flag=1;delay(delay_v);}if(KEY2==0)//首次按键反转9度{temp=6;P1=tab[temp];flag=1;delay(delay_v);}}if(KEY2==1)//正转{temp++;if(temp==8)//是否结束标志{temp=0;}P1=tab[temp];delay(delay_v);}if(KEY2==0)//反转{temp--;if(temp==0xff)//是否结束标志{temp=7;}P1=tab[temp];delay(delay_v);}}elseRUN:off}}