工作接到一个项目是需要在LINUX平台(LK3.0 JZ4775)调试一个步进电机的驱动,功能要求不是很严格,主要实现步进电机正反向的稳定转动即可.主要功能是通过两个按键控制步进电机的正反向转动.因此,先了解一下步进电机的原理.
1.步进电机的基本原理:
以四相电机为例,如下所示,为步进电机的原理示意图:
步进电机转动的原理阐述如下:
当上电时,如果SB通电同时SA、SC、SD断开时,由于通电后的磁力作用,SB对应的B相磁极要求转子「0 ,3」对齐,其他的产生的错齿,从而引起了电机的转动;
同样,当SC通电时,SA、SB、SD断开时,由于通电后的磁力作用,SC对应的C相磁极要求转子「1,4」对齐,其他的产生错齿,从而引起了电机的转动.以此类推.
也就是说,通过控制SA、SB、SC、SD通断电的顺序,可以实现步进电机的转动.
2.步进电机的基本编程:
在步进电机编程中一定要明确的是步进电机的步距角.
步距角:定子绕组每改变一次通电状态,转子转过的角度.
例如:
以四相电机为例,有四相四拍运行方式即AB-BC-CD-DA-AB,四相八拍运行方式即A-AB-B-BC-C-CD-D-DA-A,转子齿为50齿电机为例,四拍运行时步距角为 θ=360度/(50*4)=1.8度,八拍运行时步距角为θ=360度/(5