还剩30页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
河南职业技术学院毕业设计(论文)题目单片机控制的步进电机系(分院)河南职业技术学院学生姓名范永贺学号06311091专业名称数控专业指导教师张超2010年12月27日河南职业技术学院机械电子工程系(分院)毕业设计(论文)任务书姓名范永贺专业数控班级084毕业设计(论文)题目单片机控制的步进电机毕业设计(论文)选题的目的与意义在科技越来越发达的时代,人们对步进电机控制技术的要求也越来越高运用单片机对其高精度和智能化控制一直备受__,对其高新技术的__持续不断,单片机系统控制的研究具有很大的__潜能!毕业设计(论文)的资料收集情况(含指定参考资料)毕业设计(论文)工作进度计划接受任务日期2010年11月20日要求完成日期2010年12月31日学生签名范永贺2010年12月27日指导教师签名年月日系(分院)主任(院长)签名年月日毕业设计(论文)指导教师评阅意见表姓名范永贺学号06311091性别男专业数控班级084毕业设计(论文)题目单片机控制的步进电机评阅意见成绩指导教师签字年月日毕业设计(论文)答辩意见表姓名范永贺学号06311091性别男专业数控班级084毕业设计(论文)题目单片机控制的步进电机答辩时间地点答辩小组成员姓名职称学历从事专业组长成员秘书答辩小组意见答辩成绩答辩小组组长签名年月日单片机控制步进电机的系统范永贺摘要步进电机又称脉冲电阶跃电动机,步进电机在结构上也是由定子和转子组成,可以对旋转角度和转动速度进行高精度控制步进电动机可以在宽广的频率范围内通过改变脉冲频率来实现调速、快速起停、正反转控制等,这是步进电动机最突出的优点本文介绍了步进电机和直流电机原理及其驱动程序控制控制模块,通过AT__S52单片机及脉冲分配器又称逻辑转换器L298完成步进电机和直流电机各种运行方式的控制实现步进电机的正反转速度控制并且显示数据整个系统采用模块化设计结构简单、可靠通过按键控制,操作方便,节省成本关键词数字化;步进电机;AT__S52;
1、引言随着数字化技术发展,数字控制技术得到了广泛而深入的应用步进电机是一种将数字__直接转换成角位移或线位移的控制驱动元件具有快速起动和停止的特点因为步进电动机组成的控制系统结构简单,__低廉,性能上能满足工业控制的基本要求,所以广泛地应用于手工业自动控制、数控机床、组合机床、机器人、计算机__设备、照相机投影仪、数码摄像机、大型望远镜、卫星天线定位系统、医疗器件以及各种可控机械工具等等直流电机广泛应用于计算机__设备如硬盘、软盘和光盘存储器、家电产品、医疗器械和电动车上无刷直流电机的转子都普遍使用永磁材料组成的磁钢并且在__、__、汽车、精密电子等行业也被广泛应用在电工设备中的应用,除了直流电磁铁(直流继电器、直流接触器等)外,最重要的就是应用在直流旋转电机中在发电厂里,同步发电机的励磁机、蓄电池的充电机等,都是直流发电机;锅炉给粉机的原动机是直流电动机此外,在许多工业部门,例如大型轧钢设备、大型精密机床、矿井卷扬机、市内电车、电缆设备要求严格线速度一致的地方等,通常都采用直流电动机作为原动机来拖动工作机械的直流发电机通常是作为直流电源,向负载输出电能;直流电动机则是作为原动机带动各种生产机械工作,向负载输出机械能在控制系统中,直流电机还有其它的用途,例如测速电机、伺服电机等他们都是利用电和磁的相互作用来实现向机械能能的转换
2、电机的工作原理
1.步进电机原理步进电机本质上是一个数字角度转换器以三相电机为例其结构原理见图1各相夹角为120°的定子磁极上均匀分布了5个矩形小齿没有绕组的转子圆周上也均匀的分布着40个小齿(相邻齿夹角为9°)利用电磁学的性质在某相绕组通电时相应的磁极产生磁场与转子形成磁路如此时定子的小齿与转子的小齿没有对齐则在磁场作用下转子就转动一定角度达到齿的对齐在单三拍控制方式下若A相通电B、C相不通电在磁场作用下使转子齿和A相定子齿相对假设此时为初态并且令与A相中心对齐的转子齿为0号齿因为B相与A相相差120°,可知120°/9°=133/9不为整数即此时转子齿与B相不对齐只是13号齿靠近相的中心且相差3°如果此时突然变为B相通电而A、C相都不通电那么13号齿会在磁场的作用下转到与相中心对齐的位置这就是常说的走一步此时转子转了这样按照A一B一C一A顺序通电次可以使转子转动9°那么步进电机的步距角Q=360/NZ°(式中N=MC为运行拍数;M为控制绕组相数;C为状态系数单三拍或双三拍时C=1单六拍或双六拍时C=2为转子齿数)
2.直流电机的原理由直流电动机和发电机工作原理示意图可以看到,直流电机的结构应由定子和转子http://baike.baidu.com/view/
1620095.htm\t_blank两大部分组成直流电机运行时静止不动的部分称为定子,定子的主要作用是产生磁场,由机座、主磁极、换向极、端盖、轴承和电刷http://baike.baidu.com/view/
1058552.htm\t_blank装置等组成运行时转动的部分称为转子,其主要作用是产生电磁转矩和感应电动势,是直流电机进行能量转换的枢纽,所以通常又称为电枢,由转轴、电枢铁心、电枢绕组http://baike.baidu.com/view/
962375.htm\t_blank、换向器http://baike.baidu.com/view/
1929.htm\t_blank和风扇等组成直流电机的结构电机要实现机电能量变换,电路和磁路之间必须有相对运动所以旋转电机具备静止的和旋转的两大部分静止和旋转部分之间有一定大小的间隙,称为气隙静止的部分称为定子,作用是产生磁场和作为电机的机械支撑包括主磁极、换向极、机座、端盖、轴承、电刷装置等旋转部分称为转子或电枢,作用是感应电势实现能量转换包括电枢铁心,电枢绕组,换向器、轴和风扇等定子部分
1、主磁极也称为主极作用是产生气隙磁场
2、换向极也称为附加极或间极作用是改善换向装在主极之间
3、机座由铸钢或厚钢板焊成是电机的机械支撑
4、电刷装置将直流电压、电流引入或引出的装置其组数与主极极数相等转动部分(转子部分)
1、电枢铁心主磁路的主要部分及嵌放电枢绕组,由硅钢片迭压而成
2、电枢绕组由许多按一定规律联接的线圈组成用来感应电势和通过电流,是电路的主要部分
3、换向器由许多彼此绝缘的换向片构成
三、硬件系统
1.原理流程
2.ULN2003ULN是集成达林顿管IC,内部还集成了一个消线圈反电动势的二极管,可用来驱动继电器它是双列16脚封装NPN晶体管矩阵最大驱动电压=50V电流=500__输入电压=5V适用于TTLCOMS由达林顿管组成驱动电路ULN是集成达林顿管IC内部还集成了一个消线圈反电动势的二极管它的输出端允许通过电流为200__,饱和压降V__约1V左右,耐压BV__O约为36V用户输出口的外接负载可根据以上参数估算采用集电极开路输出,输出电流大,故可直接驱动继电器或固体继电器,也可直接驱动低压灯泡通常单片机驱动ULN2003时,上拉2K的电阻较为合适,同时,COM引脚应该悬空或接电源ULN2003是一个非门电路,包含7个单元,但独每个单元驱动电流最大可达350__.资料的最后有引用电路,9脚可以悬空比如1脚输入,16脚输出,你的负载接在VCC与16脚之间,不用9脚ULN2003的作用ULN2003是大电流驱动阵列多用于单片机、智能仪表、PLC、数字量输出卡等控制电路中可直接驱动继电器等负载输入5VTTL电平,输出可达500__/50VULN2003是高耐压、大电流达林顿陈列由七个硅NPN达林顿管组成ULN2003的每一对达林顿都串联一个
2.7K的基极电阻在5V的工作电压下它能与TTL和CMOS电路直接相连可以直接处理原先需要标准逻辑缓冲器ULN2003是高压大电流达林顿晶体管阵列系列产品具有电流增益高、工作电压高、温度范围宽、带负载能力强等特点适应于各类要求高速大功率驱动的系统 ULN2003A引脚图及功能:ULN2003是高耐压、大电流、内部由七个硅NPN达林顿管组成的驱动芯片经常在以下电路中使用,作为显示驱动、继电器驱动、照明灯驱动、电磁阀驱动、伺服电机、步进电机驱动等电路中ULN2003的每一对达林顿都串联一个
2.7K的基极电阻在5V的工作电压下它能与TTL和CMOS电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据ULN2003工作电压高,工作电流大,灌电流可达500__,并且能够在关态时承受50V的电压,输出还可以在高负载电流并行运行ULN2003的封装采用DIP—16或SOP—16ULN2003可以驱动7个继电器具有高电压输出特性,并带有共阴极的续流二极管使器件可用于开关型感性负载每对达林顿管的额定集电极电流是500__,达林顿对管还可并联使用以达到更高的输出电流能力 显示电路主要包括大型LED数码管BSI20-1共阳极,数字净高12cm和高电压大电流驱动器ULN2003,大型LED数码管的每段是由多个LED发光二极管串并联而成的,因此导通电流大、导通压降高ULN2003是高压大电流达林顿晶体管阵列电路,他具有7个__的反相驱动器,每个驱动器的输出灌电流可达500__,导通时输出电压约1V,截止时输出电压可达50VULN2003的1~7脚为__输入脚,依次对应的输出端为16~10脚,8脚为接地端当驱动电源电压为+12V时,若要求数码管每段导通电流为40__,则每段的限流电阻为50Ω则一块ULN2003恰好驱动一个LED数码管的7段大数码管采用共阳极接法,低电平有效锁存器输出的电平经NPN三极管9014反相后,再由ULN2003放大后推动大数码管显示.
3.L298L298是SGS公司的产品,比较常见的是15脚Multiwatt封装的L298N,内部同样包含4通道逻辑驱动电路可以方便的驱动两个直流电机,或一个两相步进电机L298是一款单片集成的高电压、高电流、双路全桥式电机驱动,设计用于连接标准TTL逻辑电平,驱动电感负载(诸如继电器、线圈、DC和步进电机)L298提供两个使能输入端,可以在不依赖于输入__的情况下,使能或禁用L298器件L298低位晶体管的发射器连接到一起,而其对应的外部端口则可用来连接一个外部感应电阻L298还提供一个额外的电压输入,所以其逻辑电路可以工作在更低的电压下L298特性L298工作电压高达46V;总DC电流达4A;低饱和电压;L298具有过温保护功能;逻辑“0”输入电压高达
1.5V高抗噪性;
4.74HC573SL74HC573跟LS/AL573的管脚一样器件的输入是和标准CMOS输出兼容的;加上拉电阻,他们能和LS/ALSTTL输出兼容当锁存使能端为高时,这些器件的锁存对于数据是透明的(也就是说输出同步)当锁存使能变低时,符合建立时间和保持时间的数据会被锁存输出能直接接到CMOS,__OS和TTL接口上;操作电压范围
2.0V~
6.0V;低输入电流
1.0Ua;CMOS器件的高噪声抵抗特性
4、软件系统
1、主程序该系统采用多个模块的方式来实现对步进电机的控制控制模块采用单片机AT__S52来控制L298,L298驱动电机转动
2、直流电机驱动程序#includereg
52.h__itKEY0=P3^0;//控制按键,为高电平时,直流电机工作为0时启动步进电机;__itKEY1=P3^2;//控制直流电机调速按键__itKEY2=P3^3;//控制步进电机正反转、停机按键__itPWM=P1^5;//定义直流电机PWM输出调速端口unsignedcharCYCLE;//定义周期该数字X基准定时时间如果是10则周期是10x
0.1msunsignedcharPWM_Num=0;//直流电机速度档位;unsignedcharPWM_ON;//定义高电平时间unsignedcharFlag;//定义步进电机正反转和停止标志位unsignedcharcodeF_Rotation
[4]={0x1f0x2f0x4f0x8f};//步进电机正转表格unsignedcharcodeB_Rotation
[4]={0x8f0x4f0x2f0x1f};//步进电机反转表格/******************************************************************//*延时函数*//******************************************************************/voidDelayunsignedinti//延时{while--i;}/******************************************************************//*主函数*//******************************************************************/__in{unsignedchari;EX0=1;//外部中断0开,控制直流电机EX1=1;//外部中断1开,控制步进电机IT0=1;//边沿触发IT1=1;//边沿触发EA=1;//全局中断开P0=0x06;//开机显示直流电机1档位TMOD|=0x01;//定时器设置1msin12McrystalTH0=65536-1000/256;TL0=65536-1000%256;//定时1mSET0=1;//打开中断TR0=1;CYCLE=10;//时间可以调整这个是10步调整周期10ms,PWM的周期不变,8位PWM就是256步whileKEY0==1//P
3.0为高电平,则直流电机运转;{switchPWM_Num{case0:P0=0x06;PWM_ON=0;break;//高电平时长,P0口段码为1;case1:P0=0x5B;PWM_ON=4;break;//P0口段码为2;case2:P0=0x4F;PWM_ON=6;break;//P0口段码为3case3:P0=0x66;PWM_ON=8;break;//P0口段码为4case4:P0=0x6D;PWM_ON=10;break;//P0口段码为停机Sdefault:break;}}whileKEY0==0//KEY0按下,则步进电机工作{whileFlag==0{P0=0x71;//显示F标示正转fori=0;i4;i++//4相{P2=F_Rotation[i];//输出对应的相可以自行换成反转表格Delay500;//改变这个参数可以调整电机转速数字越小,转速越大}}whileFlag==1{P0=0x7C;//显示b标示反转fori=0;i4;i++//4相{P2=B_Rotation[i];//输出对应的相Delay500;//改变这个参数可以调整电机转速数字越小,转速越大}}whileFlag==2//停止{P0=0x6D;//显示SP2=0x0F;}}}/******************************************************************//*定时器中断函数,产生PWM波*//******************************************************************/voidtimvoidinterrupt1using1{staticunsignedcharcount;//TH0=65536-1000/256;TL0=65536-1000%256;//定时1mSifcount==PWM_ON{PWM=1;}count++;ifcount==CYCLE{count=0;ifPWM_ON!=0PWM=0;}}/******************************************************************//*中断0入口函数,控制直流电机转速*//******************************************************************/voidISR_Key1voidinterrupt0using1{//定义档位Delay500;if!KEY1{PWM_Num++;//s3按下触发一次ifPWM_Num==5PWM_Num=0;}}/******************************************************************//*中断入口函数,控制步进正反转、停机*//******************************************************************/voidISR_Key2voidinterrupt2using1{Delay500;if!KEY2{Flag++;//s3按下触发一次ifFlag==3Flag=0;}}
3、步进电机驱动程序#includereg
52.hunsignedcharFlag;//定义正反转和停止标志位__itKEY=P3^3;unsignedcharcodeF_Rotation
[4]={0xf10xf20xf40xf8};//正转表格unsignedcharcodeB_Rotation
[4]={0xf80xf40xf20xf1};//反转表格/******************************************************************//*延时函数*//******************************************************************/voidDelayunsignedinti//延时{while--i;}/******************************************************************//*主函数*//******************************************************************/__in{unsignedchari;EX1=1;//外部中断0开IT1=1;//边沿触发EA=1;//全局中断开whileFlag==0{P0=0x71;//显示F标示正转fori=0;i4;i++//4相{P1=F_Rotation[i];//输出对应的相可以自行换成反转表格Delay500;//改变这个参数可以调整电机转速数字越小,转速越大}}whileFlag==1{P0=0x7C;//显示b标示反转fori=0;i4;i++//4相{P1=B_Rotation[i];//输出对应的相Delay500;//改变这个参数可以调整电机转速数字越小,转速越大}}whileFlag==2//停止{P0=0x6D;//显示SP1=0;}}/******************************************************************//*中断入口函数*//******************************************************************/voidISR_Keyvoidinterrupt2using1{Delay500;if!KEY{Flag++;//s3按下触发一次ifFlag==3Flag=0;}}
五、结束语该系统设计通过单片机AT__S52来控制步进电机的运转状况实现了占用CPU时间少效率高;易控制步进电机的转速;易控制电机的转向;提高了步进电机的步进精度等再有该设计过程考虑比较周全系统中除采用光电隔离电路有效地抑制电磁干扰以提高系统的可靠性外还考虑到以__面:第
一、在驱动回路中适当减缓MOSFET开关的开通速度同时可以采用RCD吸收回路抑制浪涌的产生减少电磁干扰的强度其次合理的接地设计各单元回路的接地必须按照一定顺序连接同时步进电机各相通电显示只需在单片机的P2口低三位外接3个发光二极管在其高三位外接导线将环分后的__引入单片机由软件根据高三位状态点亮与熄灭发光二极管致谢感谢我的室友们,有你们在行动和思想上的支持和鼓励,才使得我这次毕业设计能顺利完成感谢此次指导我完成这篇论文的老师,正因为有你的指导和修改才有我这篇论文的完成感谢我的母校河南职业技术学院,尤其是机电系机电一体化专业所有的老师们在这片净土读书,无形中塑造了我生命的气质、生活的方式,也练就了我乐观的心态和一颗感恩的心,没有你们悉心的指导和讲解,我不可能完成此次设计在他们身上我学到了许多东西,尤其是做不出来死不休的那种干劲,一种年轻人的执着与坚定信念让我懂得了许多曾经不知道的知识在今后的人生道路上要不畏艰难,坚定执着的去追寻我的梦想在此诚心的谢谢大家!谢谢!____
[1]朱民雄.计算机语言技术.北京____大学出版社,
2008.5
[2]李鸿.单片机原理及应用.湖南大学出版社,
2007.8
[3]戴佳.单片机C51语言应用程序设计.电子工业出版社,
2008.6
[4]刘建清.单片机技术.国防工业出版社,
2008.10
[5]杨宁.胡学军.单片机与控制技术.北京____大学出版社,
2009.6
[6]马忠梅.单片机C语言应用程序设计.北京____大学出版社,
2009.3
[7]郭天祥.新概念51单片机C语言教程—入门、提高、__、拓展全攻略[M].电子工业出版社,2009.1.
[8]周向红.51系列单片机应用与实践教程[M].北京____大学出版社2008.5.
[9]周国运.单片机原理及应用(C语言版)[M].中国水利水电出版社,2009.2.
[10]王东锋.单片机C语言应用100例[M].电子工业出版社,2009.3.
[11]周华.数字电子技术.成都西南交通大学出版社,
2010.1进入判断程序输出相应的控制__取消启动(开始)初始化程序I/O口PAGE。