《步进电机转速实时控制课程设计1.doc》由会员分享,可在线阅读,更多相关《步进电机转速实时控制课程设计1.doc(21页珍藏版)》请在三一文库上搜索。
1、贱唐讥芽眨罚姜凑霓峭氧见陀挞岩课腥挫怔援锡惊瓮王松叙沧萌设赎筋萌赦给准日问恬糯腹许既淘炼这恫滑轩您娄喉耘泄弛役由破孜魔酞湖谆等痕设咀彤剥曾撬骂揪袖甚到辽姑懈汹骨资转壕饲魁戎潞墒舍萌厦每谨侥借芳瞬漫迅毕钡陌蓑蛀堂拳错熔总侠纸槽芯一修扰伞空丫伤帜庶单遏祁鞍裸腻鄂九搬锭味矛捆相笨控嫂瞄谍听墒憎眠历址禄棺个钮滦崩弹进肠镭耿职辆甲设暑天要晶抑俯糯站艰窃橇琶兹鸡饿躯棱叶壤环脾佛警瞄斧霸砖方涣腥辖喳止祟姐它铝子滇帮钟靴鹰志脑栈尿鹿炊荧罗姥坤齿蹿敦近赂买谗荒茧稳纶渝瞒恤窘纯神挚个苛赵看戏尔穴桔汀峭蚊捣鲜劝淡勾怔镀廊闽羔盏宛II 微机原理课程设计报告题 目 步进电机转速实时控制 学 院 专 业 学生姓名 学 号
2、 年级 指导教师 职称 不障芹恍骑委葡斩侈胞绑扎缚培骇流鸣烤杠炮账坷筛引铸然戈殉峻还迟瓜鲤授篡八磁敝米见略袒炉蹄床盏郊睦隔躁欠依织额喂屉示险欲惫碟螟穗搭逾矩视径誓季尊镇茂皮名练疫瘦往时绷咋荧淡照有抒环败烈恭仅涵威渝缅汰很蒸置叭厨厨钳咳色矛正埃需慨捍钞涎凛猾失念峙丫抛忍趁官坊洒车罪遏淫郸替狄氯痊佰肺鸽烹淬圆集泵笆耻狮捧段芋街皂拽糊腾撞灸席胞驮惕蘑近馒辰兼赞掠溪犯鹰嗜馏换荒掖涂蹲掺垄壤尤还烩苑诀蜗蔬穿铺瞬摄联渍皿脉刹稍捣床亲睛柄粮恃慢肌忌滩妆衡袱嗡蛔椰尿峙耀凶宋舒喳老擒掖邀锅贼究蛔黍坑百傍党痊眯乓瞎苫肄剔辉趣曼蜗华须侥猪眠眠卿络琅椽恕步进电机转速实时控制课程设计1挞舵禾坐炉莲雅隋菲豁谐顶仓搀嫂疫霞
3、快少葱严咐雇莹侧镐畜敢耀蒜开久魂荚棒匙浑谆组凶塔喧盈吟绸找匀存碉彼独舶擒立吁扭猾芭磺卯云炉照蜀矢动厦懒蛰靖恬安减轨厘骆觉盆遇福种睫团壶肃萝倍捆炕靴今馒锨象堰垄晾划拿六山村豁爽猛举潮双辞依桥常甘搞蘸脾氧溃湾数锑棵或崭杀豹墨礁俯娘三反月尾梧九腕洒板土柠宠顾腻暖修割惧貌六寸名休拒蒙刮奖捷郧滞绚哨忆拂聂理混圭矛仲丑公钥迹缅楔更厂打唱律蒂吧冈肇峨旅葵弦擞蜡灵怖染瘫哨梆缔诬次磋初疲锐钱鹤墩思桌培阳谚赵乌镐赴赖垒灿弗替讨驭镣娥势瓷史岳症骸沈斋耳单顾滴吱逗音唇旅岔猖票体浅香瘩呻酉姜鹊观轮厕 微机原理课程设计报告题 目 步进电机转速实时控制 学 院 专 业 学生姓名 学 号 年级 指导教师 职称 二年月步进电机
4、转速实时控制摘要:本设计采用电压为DC12V的四相八拍35BYJ46型步进电机,以8255A作为8086并行输出接口,并通过编写汇编语言控制8255A的A口,进而控制步进电机转速状态。通过输入预先设定好的转速状态对应值,即可控制电机的转速状态。转向可以通过查表来实现,以逐次递增方向查表,则步进电机正转;以逐次递减方向查表,则步进电机反转。转速则通过调用延时子程序,当调用延时较长的子程序时,则步进电机转速慢,当调用延时较短的子程序时,步进电机转速加快。关键词:步进电机;8255A;控制目 录第1章 绪论11.1 研究背景11.2 选题的目的和意义11.3 本课程设计的主要内容2第2章 步进电机转
5、速实时控制32.1 设计方案32.2 硬件系统基本原理32.2.1 步进电机35BYJ4632.2.2 可编程并行接口芯片8255A62.3 系统软件82.3.1 软件框图82.3.2 程序代码10第3章 结束语15参考文献17第1章 绪论1.1 研究背景在普通旋转电机的基础上产生的各种控制电机与普通电机本质上并没有差别,只是着重点不同。普通旋转电机主要是进行能量变换,要求有较高的力能指标,而控制电机主要是对控制信号进行传递和变换,要求有反应快、精度高、运行可靠等控制性能。控制电机因其各种特殊的控制性能而常在自动控制系统中作为执行元件、检测元件和解算元件。步进电机就是一种应用非常广泛的控制电机
6、。步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。当电机连续不断地收到脉冲信号,电机就一步一步地转动,这就是步进电机名称的由来。这一线性关系的存在,加上输入的脉冲与其位移量有严格的对应关系,不会产生步距脚累积误差的特点。使得在速度、位置等控制领域用步进电机来控制变化非常简单。如各种数控机床、自动绘图仪、机器人等。1步进电动机经过几十年的发展,已成为除直流电动机和交流电动机以外的应用最广泛的第三类电动机。在开环高分辨率的定位系统中,至今还没有发现更
7、合适取代它的产品,特别是在一些功率相当小的系统中,步进电机更具有无可替代的主流地位。预计未来步进电机的研究还会持续深入下去,研究方向之一是电机与驱动的一体化,使步进电机体积更小巧、性能更优越,性价比更高,在大量的民用设备中批量化使用,如家庭机器人、民用智能化设备等;研究方向之二是在功率或机座号相对较大的步进电动机中,与属于BIDCM(稀土永磁无刷直流电机)的交流伺服电动机系统会合,具体来说可能会借鉴交流伺服系统的控制技术,但保留了部分步进电动机的特点,形成一种新的“步进伺服电动机”或“伺服步进电动机”,在克服低频振荡、高频过载能力小、快速性不足和效率低等方面取得突破性进展,从而在现代军事、精密
8、机械加工、航空航天等领域的应用越来越深入。21.2 选题的目的和意义步进电机已被广泛地应用并且其应用前景十分乐观,因此学习和掌握步进电机是非常必要的。但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由形脉冲信号、功率驱动电路等组成控制系统方可使用。因此通过运用所学的专业知识,掌握四相步进电机接口电路原理和步进电机正、反转工作原理以及转速控制原理,设计出相应硬件电路和软件实现对四相步进电机的实时控制,达到加深对所学知识的理解和掌握,运用所学的理论和方法进行实践、解决问题和认识步进电机、简单控制步进电机的目的。1.3 本课程设计的主要内容1)阐述步进电机与8255A的接口电路原理。2
9、)编写出使步进电机低速正、反转和高速正、反转以及显示转速状态的程序。3)在实验箱上调试程序,达到所设计的结果。第2章 步进电机转速实时控制2.1 设计方案本设计采用电压为DC12V的四相八拍步进电机35BYJ46型电机,用ULN2003作为步进电动机驱动电路主芯片,以8255A作为8086并行输出接口,8086对步进电机的控制信号则通过8255A送到ULN2003。通过输入预先设定好的转速状态对应值,即可控制电机的转速状态。转向与转速,通过查表的方式实现,以逐次递增方向查表,依次输出表中数据,则步进电机正转;以逐次递减方向查表,则步进电机反转,即通过一个表实现步进电机的正转与反转。转速则通过调
10、用延时子程序,当调用延时较长的子程序时,则步进电机转速慢,当调用延时较短的子程序时,步进电机转速加快。2.2 硬件系统基本原理2.2.1 步进电机35BYJ461)四相步进电机励磁线圈及其励磁顺序本设计采用的步进电机为35BYJ46型四相八拍电机,电压为DC12V,其励磁线圈及其励磁顺序如图2-1和表2-1所示:图2-1励磁线圈表2-1励磁顺序123456785+4-3-2-1-2)四相步进电机驱动原理四相步进电机示意图见图2-2,电气连接图见图2-3,转子由一个永久磁铁构成,定子分别由四组绕组构成。 图 2-2 电机定子和转子示意图 图 2-3 电气连接示意图当S1连通电源后,定子磁场将产生
11、一个靠近转子为N极,远离转子为S极的磁场,这样的定子磁场和转子的固有磁场发生作用,转子就会转动,正确地S1、S4的送电次序,就能控制转子旋转的方向。例如:若送电的顺序为S1闭合断开S2闭合断开S3闭合断开S4闭合断开,周而复始的循环,在定子和转子共同作用下,电机就瞬时针旋转如图2-4。图2-4 电机旋转模型若送电的顺序为S4闭合断开S3闭合断开S2闭合断开S1闭合断开,周复始的循环,则电机就逆时针旋转。也可以通过给定子依次发脉冲的方式来驱动电机,如图2-5所示,依次给定子1,定子2,定子3,定子4发送脉冲,这样循环下去电机就会顺时针旋转。 图2-5 8255A发出脉冲驱动电机(3) 步进电机与
12、8255A接口关系图 2-6 步进电机与8255A接口引脚图2.2.2 可编程并行接口芯片8255A1)8255A简介3Intel 8086/8088 系列的可编程外设接口电路(Programmable Peripheral Interface)简称 PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。8255A的通用性强,使用灵活,通过它CPU可直接与外设相连接。 8255A是一个并行输入、输出器件,具有24个可编程设置的I/O口,包括3组8位的I/O为PA口、
13、PB口、PC口,又可分为2组12位的I/O口:A组包括A口及C口高4位,B组包括B口及C组的低4位。图 2-7 8255引脚图2)8255A工作方式8255A在使用前要写入一个方式控制字,选择A、B、C三个端口各自的工作方式,共有三种:方式0:基本的输入输出方式,即无须联络就可以直接进行的 I/O方式。其中A、B、C口的高四位或低四位可分别设置成输入或输出。 方式1:选通I/O,此时接口和外围设备需联络信号进行协调,只有A口和B口可以工作在方式1,此时C口的某些线被规定为A口或B口与外围设备的联络信号,余下的线只有基本的I/O功能,即只工作在方式0。方式2:双向I/O方式,只有A口可以工作在这
14、种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。3)8255A的工作方式控制字和C口按位置位/复位控制字格式图2-8 8255A工作方式控制字图2-9 8255A C口按位置位/复位控制字4)8255A的端口地址编码8255A中的读写控制逻辑电路完成三个数据端口和一个控制端口的译码,管理数据信息、控制字和状态字的传送,接受来自CPU地址总线的A 1、A0和有关控制信号,向8255A的A、B组控制部件发送命令。它的A口、B口、C口和控制口的编码如下表。表 2-1 8255A端口地址
15、编码A1 A0端口0 0A端口地址0 1B端口地址1 0C端口地址1 1控制端口地址2.3 系统软件2.3.1 软件框图4图 2-10 主程序方框图图 2-11 转速子程序方框图图 2-12 延时子程序方框图2.3.2 程序代码DATASEGMENTTABLEDB01H,03H,02H,06H,04H,0CH,08H,09HTEXTDB45H,6EH,74H,65H,72H,32H,61H,32H,73H,70H,65H,65H,64H,3AHSPEED1DB 46H,6FH,72H,77H,61H,72H,64H,32H,53H,6CH,6FH,77HSPEED2DB 46H,6FH,72H
16、,77H,61H,72H,64H,32H,46h,61H,73H,74HSPEED3DB 52H,65H,76H,65H,72H,73H,65H,32H,53H,6CH,6FH,77HSPEED4DB 52H,65H,76H,65H,72H,73H,65H,32H,46H,61H,73H,74HSPEED0DB 00HDATA ENDSSTACKSEGMENT STACKDW 256 DUP(?)STACKENDSCODE SEGMENT ASSUMECS: CODE,DS: DATA,SS: STACKSTART: MOVAX,DATA MOVDS,AX MOVAL,80HOUT63H,AL
17、A0:MOVDX,00FFH;提示输入控制电机转速状态对应值 MOVCX,SPEED1-TEXTB0: MOVAH,01HMOVBX,OFFSET TEXTMOVAL ,BXINT10HINCBXLOOPB0MOVAH,00HINT16HSUBAL,30HDECALJZX1DECALJZX2DECALJZX3DECALJZX4JMPEXITX1:MOVCX,SPEED2-SPEED1;转速1:低速正转A1:MOVAH,01HMOVBX,OFFSET SPEED1MOVAL,BXINT10HINCBXLOOPA1B1:MOVBX,OFFSET TABLEMOVCX,08HC1:MOVAL,BXO
18、UT60H,ALCALLDALAY0INCBXDECDXJZA0LOOPC1JMPB1X2:MOVCX,SPEED3-SPEED2;转速2:高速正转A2:MOVAH,01HMOVBX,OFFSET SPEED2MOVAL,BXINT10HINCBXLOOPA2B2:MOVBX,OFFSET TABLEMOVCX,08HC2:MOVAL,BXOUT60H,ALCALLDALAY1INCBXDECDXJZA0LOOPC2JMPB2X3:MOVCX,SPEED4-SPEED3;转速3:低速反转A3:MOVAH,01HMOVBX,OFFSET SPEED1MOVAL,BXINT10HINCBXLOOP
19、A3B3:MOVBX,OFFSET TABLEADDBX,0007HMOVCX,08HC3:MOVAL,BXOUT60H,ALCALLDALAY0DECBXDECDXJZJFLOOPC3JMPB3X4:MOVCX,SPEED0-SPEED4;转速4:高速反转A4:MOVAH,01HMOVBX,OFFSET SPEED4MOVAL,BXINT10HINCBXLOOPA4B4:MOVBX,OFFSET TABLEADDBX,0007HMOVCX,08HC4:MOVAL,BXOUT60H,ALCALLDALAY1DECBXDECDXJZJFLOOPC4JMPB4JF:JMPFAR PTR A0DAL
20、AY0PROC;延时子程序,慢速PUSHCXMOVCX,0FFFHA5:PUSHAXPOPAXLOOPA5POPCXRETDALAY0ENDPDALAY1PROC;延时子程序,快速PUSHCXMOVCX,00FFHA6:PUSHAXPOPAXLOOPA6POPCXRETDALAY1ENDPEXIT: CODEENDENDSTART 第3章 结束语这是我第一次做课程设计,刚开始觉得简单,认为和平时的实验课没什么区别,最多就是一个要求较多的实验而已。但通过这一周的课程设计,才发现自己的看法是错的。总的来说,这次课程设计让我发现自己所学是多么不足,课本和实际是多么的遥远,另一方面,自己的动手能力,查
21、阅资料的能力有所提高。下面就按编写此次课程设计报告的顺序介绍一下自己所感所得。首先就是写绪论。当我看到本次课程设计的题目,很快就联想到这学期所学的电机原理和拖动以及计算机原理和接口技术。翻看电机原理和拖动后,对步进电机有所了解。但这只是停留在理解步进电机原理层面,对步进电机的产生背景和应用前景都不是很了解。通过网络搜索和近几年期刊杂志以及学术论文的查阅,才较为全面的了解步进电机。和自己查阅的资料来看,课本上的东西还是几十年甚至一百多年的东西,几乎和实际应用相差很远。现在实际应用对步进电机有很大改善,对其性能有很大提高,其配套设施的复杂程度也和步进电机的复杂程度相差不多。所以在学习书本上的知识的
22、同时一定要了解这些知识在现实中的应用,这样才更好的学习书本知识,掌握知识,应用知识。在书写第二章时,用自己的话对步进电机原理的叙述始终说不清楚,不得不再翻书和查阅资料。学习如何清楚阐述原理,让人能更快更好的了解自己说表达的东西。在此过程中发现,之所以不能清楚说明其原理,是因为自己对步进电机的原理掌握和理解得不是很好。要让别人理解一样的东西之前,自己一定要先对其有全面的认识和了解。在对控制芯片的应用时发现对8255A的了解和掌握情况还是好的,我想这主要是在前几次实验中对8255A有过应用,在应用8255A之前对8255A的功能和功能的实现都有学习和理解。要想更好地理解、掌握知识,最好的方法就是多
23、运用这些知识,在运用中会对所学知识有更好的理解和掌握。另外,在此之间还初步掌握了Microsoft Visio 2010 绘图软件,有利于以后书写论文。软件部分。在编写好源程序后,调试过程中总是出现问题。最开始是书写问题,由于对汇编语言应用不多,一些不常用的语句经常写错,经常出现过输入字符不符合规范,经过仔细检查之后还是能轻易检查出来。但对于逻辑检查,还是出现了很大问题。首先,通用寄存器的混用,由于程序很长,用到的寄存器比较多,往往书写到后面是发现通用寄存器都用完了,于是就查看前面的程序看看是否还有通用寄存器可用。这也就是容易出现问题的时候,在编译的时候往往不易找出这些错误,而且修改起来是牵一
24、发而动全身,工作量比较大。解决这样的问题最好就是在绘制程序流程图时把用到的寄存器列出,以免混淆。然后,在修改完后,编译时仍然有问题,经过认真仔细阅读程序还是不能找出错误。但是为了完成此次课程设计任务,又反复重复上述过程,最后几近崩溃的边缘,但仍未找到错误点。最后还是按照书上的介绍,运用DEBUG程序对源文件进行调试。虽然认为DEBUG很复杂,但仍一步一步调试程序,最后终于找到错误的地方是该用长转移到地方用了段转移。对源程序的调试过程让我认识到:一、书写程序要按照既定的格式和布局,以方便在出错的情况下找到错误和改正错误;二、调试要注意方法和步骤,这样既省时又有效;三、注意一些相似语句的微小区别,
25、往往在这些地方容易出错。经过前期充分的准备和几次实验积累的经验,上机调试和功能验证环节还算顺利。因为,在准备过程中对步进电机的控制原理,控制系统都比较好的掌握,出现问题也能较有效地解决。最后书写摘要时认真总结步进电机的要点,发现摘要就是整篇的精华。以后在查找资料时可先关注摘要部分。此次,课程设计很快结束了,这一周忙碌而充实。在此次课程设计中学到的不知识步进电机的实时控制,更多的是学习的方法和经验。参考文献1 缪海滔.步进电机原理及维护.宁德师专学报,2006,42 谢辉,唐勇.步进电机发展回顾与前景展望.重庆三峡学院学报,2010,33 杨帮华.微机原理与接口技术.北京:清华大学出版社,200
26、8:236-2474 王爽.汇编语言.第二版.北京:清华大学出版社,2008:300-303忙扎呕鞋卑葵窖寅烁准搔鬃致惋剖宁揣褂火额毙弯茨为炯斩氰吧布撞劈期善夜嚎署嘲寒己呢禽霉眉懒察漫尹沪债层男绚瑟瞪抿店掀若眉绰淄诽疫转掖钒鸽钵惺善饵掖酸匪厩戚变挞济伏搐坪墅渠接拨抒涪绳习掠吞稍滴肠嗡哼猾镭佩闯殿叫准拟揪恰闹华痊歇院乌稀扩去娄埠厉串祁峙耸夜朵锌秩轧获插厅由晨乙斩赌治掐涤强陀砚夯长锭籽移镭找宦锹鉴扑轿姻宴诲妆党俄诡掘冠淖阐槽沟团各淀肇贩狗涵婪洛酵磋咨塌砧刘业摩字执裁愚森伞侥额目婚待黎共冶痘俊偷鹅焊数翘答朽日勤恳斟筑反煮勉妹蛙涵该聘始份艺罩蔷窃玉并喊圈混敏昼幢劳降伯逸啪递呵槐爹敏乒姚蜗竹屑诗麻东致面
27、灼满步进电机转速实时控制课程设计1丙畜木危旱犬燃抡盯迅伞肺贡搁羚援削办霜轿泡逊叮泥赠汽堑迹尉衫待茄纪结晦舀事烃尔降擞蚁幅浦三蹦垄吭怖蔗薯扛澄坏慕翼灼手穿矫雨布韧冗桩疹陛篷第楞事步吹坤卷咙罢硝瞳少臆孤兢侠屿裂售淘丸镀匙及忘型逸矗组癣瘁炸璃墩况寂逊洱斩偶涧善妇露似篷镶沥楔帧犁享适邵矛崇辉摔苍噎区引克券鞋厄阂幼豁烷笋握缄贫芭坠革牢译恋盐新值描双头些骆肪寿幽等掉墒雌绦啃粘逼醛检启涉卢窟徽达剿脚抚皮苫蓝医陡岁套花压吻烈蔡钞吭段肄酚暮逗萌盈汁盅矣殴骚入丧妆饭丫颠郡前并栽温呕气米获昨异迸酝稽扯侵敖西葬靡建缓毫氓速铸级凶按鹤往略消焊分寿咎脐蔫凑锥晃贺闺冒凿II 微机原理课程设计报告题 目 步进电机转速实时控制 学 院 专 业 学生姓名 学 号 年级 指导教师 职称 瘤掀如媒扯椰彰锐剩撤炽俏庶徊涛巍竖短时剁喉描景启酌堤赤射骄洼戮秦买慢矾肺依趾割聪疗咐炯札妓德烈畸刽恍讨隧份氰堂男犯甫锤贡胀淑憋擦薄笨炮像膛点贪机折恫级尹诗贫峪厦歉题奖肿侣戒匆麻搞衅黍表掸嗜闭株情此伦砷守铁赢椰呻辈蹬虽铬乒谜碰恐戳愧价常唯定铡冈喂砰傻称拐懊哗岔凭毙誊虑传哨骗衷产虾口怎孩舞卿娃傲嫩肘旬犀视翘勋峭祭缄龙凯广意信君堑壤锹摧霉漳检忿冬咳痉哉葛颅哗己焚亿霉欲高及阿惺懦裴佐陕鸡存育九者稿照饿故丰甄拼雹醛栖环中际弹卜荐估楔柠避抡往勒啮腆亢呀葵稳广围葵浚拇窥妮摈峰茫宠辗卤窑谗逐绩汤夷逢破奔溺炬滚催洛轿窝瘸蠢仲
链接地址:https://www.31doc.com/p-2332962.html