步进电机转速实时控制Word下载.docx
- 文档编号:6334692
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:17
- 大小:204.76KB
步进电机转速实时控制Word下载.docx
《步进电机转速实时控制Word下载.docx》由会员分享,可在线阅读,更多相关《步进电机转速实时控制Word下载.docx(17页珍藏版)》请在冰点文库上搜索。
第1章绪论
1.1研究背景
步进电机是一种能将电脉冲信号转换成机械角位移或线位移的执行元件,它实际上是一种单相或多相同步电机。
电脉冲信号通过环形脉冲分配器,励磁绕组按照顺序轮流接通直流电源。
由于励磁绕组在空间中按一定的规律排列,轮流和直流电源接通后,就会在空间形成一种阶跃变化的旋转磁场,使转子转过一定角度(称为步距角)。
在正常运行情况下,电机转过的总角度与输入的脉冲数成正比;
电机的转速与输入脉冲频率保持严格的对应关系,步进电机的旋转同时与相数、分配数、转子齿轮数有关;
电机的运动方向由脉冲相序控制。
因为步进电机不需要A/D转换,能够直接将数字脉冲信号转化成为角位移,它被认为是理想的数控执行元件。
故广泛应用于数控机床。
不过步进电机在控制的精度、速度变化范围、低速性能方面都不如传统的闭环控制的直流伺服电动机。
在精度不是需要特别高的场合,可以使用步进电机,以发挥其结构及驱动电路简单、可靠性高和成本低的特点。
伴随着不同数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域得到应用。
[4]
步进电机有一个技术参数:
空载启动频率,即步进电机在空载情况下能够正常启动的脉冲频率,如果脉冲频率高于该值,电机不能正常启动,可能发生丢步或堵转。
在有负载的情况下,启动频率应更低。
如果要使电机达到高速转动,脉冲频率应该有加速过程,即启动频率较低,然后按一定加速度升到所希望的高频(电机转速从低速升到高速)。
现在比较常用的步进电机有反应式步进电机、永磁式步进电机、混合式步进电机和单相式步进电机等。
其中反应式步进电机的转子磁路是由软磁材料制成,定子上有多相励磁绕组,利用磁导的变化产生转矩。
现阶段反应式步进电机应用最广泛。
[5]
1.1.1步进电机驱动电路原理
步进电机和普通电机的区别主要就在于其脉冲驱动的形式,必须使用专用的步进电机驱动控制器。
正是这个特点,步进电机可以和现代的数字控制技术相结合。
图1-1步进电机系统的驱动框图
如图1-1所示,它一般有脉冲发生单元、脉冲分配单元、功率驱动单元保护和反馈单元组成。
除功率驱动单元以外,其他部分越来越趋向于用软件来实现。
1.1.2步进电机特点
1.一般步进电机的精度为步进角的3-5%,且不累积。
2.步进电机外表允许的最高温度。
步进电机温度过高首先会使电机的磁性材料退磁,从而导致力矩下降乃至于失步,因此电机外表允许的最高温度应取决于不同电机磁性材料的退磁点;
一般来讲,磁性材料的退磁点都在摄氏130度以上,有的甚至高达摄氏200度以上,所以步进电机外表温度在摄氏80-90度完全正常。
3.步进电机的力矩会随转速的升高而下降。
当步进电机转动时,电机各相绕组的电感将形成一个反向电动势;
频率越高,反向电动势越大。
在它的作用下,电机随频率(或速度)的增大而相电流减小,从而导致力矩下降。
4.步进电机低速时可以正常运转,但若高于一定速度就无法启动,并伴有啸叫声。
1.1.3步进电动机的驱动方法
步进电动机不能直接接到工频交流或直流电源上工作,而必须使用专用的步进电动机驱动器,如图1-2所示,它由脉冲发生控制单元、功率驱动单元、保护单元等组成。
图中点划线所包围的二个单元可以用微机控制来实现。
驱动单元与步进电动机直接耦合,也可理解成步进电动机微机控制器的功率接口,这里予以简单介绍。
图1-2步进电动机驱动控制器
1.2选题的目的和意义
步进电动机以其显著的特点在数字化制造时代发挥着重大的用途。
伴随着不同的数字化技术的发展以及步进电机本身技术的提高,步进电机将会在更多的领域得到应用。
步进电机作为执行元件,是机电一体化的关键产品之一,广泛应用在各种自动化控制系统中。
随着微电子和计算机技术的发展,步进电机的需求量日益增长,在各个国民经济领域都有着重要的应用。
本设计为了解步进电动机的原理及接口电路原理,通过编程实现步进电机的正反转,低速正转和高速反转,通过运用所学的理论和方法对实际步进电动机进行编程,巩固了8086接口扩展技术的编程能力。
作为当代工科大学生,此设计是必不可少的。
1.3本课程设计的主要内容
(1)介绍了步进电机转速实时控制的设计方案,包括硬件系统基本原理,软件框图及设计思想以及相应的程序编制。
(2)对步进电机转速实时控制的主要环节,包括硬件方面及其软件方面进行了详细的阐述。
第2章步进电机转速实时控制
2.1设计方案
本设计采用电压为DC12V的四相八拍步进电机35BYJ46型电机,用ULN2003作为步进电动机驱动电路主芯片,以8255A作为8086并行输出接口,8086对步进电机的控制信号则通过8255A送到ULN2003。
关于转向与转速,通过查表的方式实现,以逐次递增方向查表,依次输出表中数据,则步进电机正转;
以逐次递减方向查表,则步进电机反转,即通过一个表实现步进电机的正转与反转。
转速则通过调用延时子程序,当调用延时较长的子程序时,则步进电机转速慢,当调用延时较短的子程序时,步进电机转速加快。
2.2硬件系统基本原理
2.2.1系统硬件子系统的构成
本设计采用的步进电机为35BYJ46型四相八拍电机,电压为DC12V,其励磁线圈及其励磁顺序如图2-1及表2-1所示:
图2-1励磁线圈
1
2
3
4
5
6
7
8
+
-
表2-1励磁顺序
2.2.2工作原理
四相步进电机示意图见图2-2及2-3,转子由一个永久磁铁构成,定子分别由4组绕组构成。
图2-2电子转子与定子
图2-3电气连接
当S1连通电源后,定子磁场将产生一个靠近转子为N极,远离转子为S极才磁场,这样的定子磁场和转子的固有磁场发生作用,转子就会转动,正确地S1、S4的送电次序,就能控制转子旋转的方向。
例如:
若送电的顺序为S1闭合
断开
S2闭合
S3闭合
S4闭合
断开,周而复始的循环,在定子和转子共同作用下,电机就瞬时针旋转:
图2-4转动
若送电的顺序为S4闭合
S1闭合
断开,周而复始的循环,则电机就逆时针旋转,原理同理。
图2-58255A向步进电机发出的控制脉冲
2.2.3步进电机与8255接口的关系[2]:
图2-6接口关系
2.2.48255A可编程并行接口芯片[2]
2.2.4.18255简介
Intel8086/8088系列的可编程外设接口电路(ProgrammablePeripheralInterface)简称PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。
它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。
8255A的通用性强,使用灵活,通过它CPU可直接与外设相连接。
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口可以工作在这种方式,该I/O线即可输入又可输出,此时C口有5条线被规定为A口和外围设备的双向联络线,C口剩下的三条线可作为B口方式1的联络线,也可以和B口一起方式0的I/O线。
8255A是一个并行输入、输出器件,具有24个可编程设置的I/O口,包括3组8位的I/O为PA口、PB口、PC口,又可分为2组12位的I/O口:
A组包括A口及C口高4位,B组包括B口及C组的低4位。
2.2.4.28255的编码与工作方式选择[1]
(1)8255A的工作方式控制字
图2-78255A工作方式控制字
2.3软件框图及设计思想
根据步进电机的励磁顺序列写控制步进电机顺序转动的输出的数据表→初始化8255A的工作方式→设定需要步进电机转过的步数→顺序依次逐个延时(调用延时函数1:
延时较长,实现慢转)输出表中数据→设定需要步进电机快速转过的步数→顺序依次逐个延时(调用延时函数2:
延时较短,实现快转)输出表中数据→设定需要反向转过的步数→逆序依次逐个延时(调用延时函数1,慢速)输出表中数据→设定需要步进电机快速反向转过的步数→逆序依次逐个延时(调用延时函数2,快速)输出表中数据。
以此循环,则可实现让步进电机先低速正转到高速正转,再从高速正转到低速反转,再高速反转,周而复始。
图2-8程序流程图
2.4程序编制
STACKSEGMENTSTACK
DW256DUP(?
)
STACKENDS
DATASEGMENT
TABLEDB01H,03H,02H,06H,04H,0CH,08H,09H;
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
MAIN:
MOVAL,80H
OUT0F6H,AL
MOVDX,20
A1:
MOVBX,OFFSETTABLE
MOVCX,0008H
A2:
MOVAL,[BX]
OUT0F2H,AL
CALLDALLY
INCBX
DECDX
JZD1
LOOPA2
JMPA1
D1:
DECCX
MOVDX,20
A3:
OUT0F2H,AL
CALLDALLY_K
JZD2
LOOPA3
JMPM3
D2:
DECBX
A4:
OUT0F2H,AL
DECBX
JZD3
LOOPA4
JMPM1
D3:
DECCX
MOVDX,40
A5:
MOVAL,[BX]
JZD4
LOOPA5
JMPM2
D4:
JMPMAIN
M1:
MOVBX,OFFSETTABLE
MOVAX,0007H
ADDBX,AX
JMPA4
M2:
JMPA5
M3:
JMPA3
DALLY:
PUSHCX
MOVCX,5000H
A9:
PUSHAX
POPAX
LOOPA9
POPCX
RET
DALLY_K:
MOVCX,0F00H
A10:
PUSHAX
LOOPA10
CODEENDS
ENDSTART
第3章结束语
通过这次课程设计,我了解了步进电动机的工作原理及接口电路原理,学会了用编程实现步进电动机正反转及加速的方法。
通过汇编实现让8086控制步进电动机正转、反转、变速,巩固了对步进电动机的编程控制的理论基础,并从中获得了初步的应用经验。
我想为我以后单片机的学习奠定了坚实的基础。
在编程的过程中,我巩固了用汇编语言处理数据的能力,特别是对数表数据的灵活运用能力。
在调试及试运行的过程中也遇到不少问题,最后都通过查阅课本及网络一一解决了。
刚开始的时候,为了实现反转,设置了两个数据表:
一个表实现正转,一个表实现反转。
但是在让步进电机改变运行状态(正转变反转、低速正转变高速正转、低速反转变高速反转)的时候,会出现抖动,总是不能进行平缓地过渡,经过EMU8086软件和proteus仿真软件的多次调试发现是在换状的时候重先给BX赋了初值,导致步进电机从前一个状态换到后一个状态的时候,两个状态的控制数据不连惯,所以会有跳动。
后来,我去掉一个数据表,用一个表实现正反转(通过从低地址向高地址递加读数据实现正转,通过从高地址向低地址读数据实现反转),在换状态的时候不重赋初值,让步进电机紧接着上一个状态的终止位置进入下一个状态,即实现各个状态的平缓转换。
这次经过调试后发现步进电机在改变状态的时候会出现停滞问题,再经过EMU8086对程序的调试,发现是在换状态的时候CX的值和BX的值出现偏差引起的,后来在每次改变状态的时候,加入一个修正值(根据不同的切换修正BX或修正CX),即实现了步进电机从一个状态到另一个状态的平缓过渡。
通过一系列故障的分析与排除,让我既提升了对实际步进电动机编程应用的能力,又巩固了8086的接口扩展技术编程技术。
本次微机原理课程设计是在我的导师程浩的亲切关怀和悉心指导下完成的。
他们严肃的科学态度,严谨的治学精神,精益求精的工作作风,深深地感染和激励着我。
从课程设计开始项到最终完成,老师们都始终给予我细心的指导和不懈的支持。
我的老师们不仅在学业上给我以精心指导,同时还在思想、生活上给我以无微不至的关怀,在此谨向他们致以诚挚的谢意和崇高的敬意。
在此,我还要感谢在一起愉快的度过此次课程设计的各位同学们,正是由于你们的帮助和支持,我才能克服一个一个的困难和疑惑;
真是阳光总在风雨后。
参考文献
[1]温阳东.微型原理与接口技术实用教程.北京:
清华大学出版社,2008
[2]牟琦.微型原理与接口技术.北京:
清华大学出版社,2007
[3]微型计算机原理与接口技术.北京:
机械工业出版社,2011
[4]杨磊.步进电机实用技术.北京:
机械工业出版社,2002
[5]坂本正文.步进电机应用技术.日本:
科学出版社,2010
[6]微机原理及应用实验指导书.成都大学实验教材,2012
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 步进 电机 转速 实时 控制
![提示](https://static.bingdoc.com/images/bang_tan.gif)