1、面向物联网的传感器应用开发技术4-3 步进电机控制应用开发EducationSolutions目录ContentsInternet+项目场景说明步进电机介绍项目实践11:17/3项目场景摄像机云台是一种安装在摄像机支撑物上的工作平台,用于摄像机与支撑物之间的连接,同时它具有水平和垂直运动的功能,在云台水平、垂直运动的同时,它也带动摄像机做相同的运动,这样就可以通过控制云台的运动来控制摄像机的运动,它与摄像机配套使用能达到扩大监视范围的目的,提高了摄像机的使用价值。11:17/4任务目标某安防公司的摄像机需要配合设计一个电动云台实现水平视角的变化,项目要求通过单片机控制步进电机实现。11:17/
2、5步进电机介绍步进电机是将电脉冲信号转变为角位移或线位移的开环控制电机,是现代数字程序控制系统中的主要执行元件,应用极为广泛。步进电机是一种感应电机,它的工作原理是利用电子电路,将直流电变成分时供电的,多相时序控制电流,用这种电流为步进电机供电,步进电机才能正常工作,驱动器就是为步进电机分时供电的,多相时序控制器。11:17/6步进电机的基本原理通常电机的转子为永磁体,当电流流过定子绕组时,定子绕组产生一矢量磁场。该磁场会带动转子旋转一角度,使得转子的一对磁场方向与定子的磁场方向一致。当定子的矢量磁场旋转一个角度。转子也随着该磁场转一个角度。每输入一个电脉冲,电动机转动一个角度前进一步。它输出
3、的角位移与输入的脉冲数成正比、转速与脉冲频率成正比。11:17/7步进电机控制方式根据步进电机的驱动原理,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为步进角),它的旋转是以固定的角度一步一步运行的。可以通过控制一个周期内脉冲个数来控制角位移量,从而达到准确定位的目的。可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。11:17/8步进电机的相关术语相数:产生不同对极 N、S 磁场的激磁线圈对数。常用 m 表示。拍数:完成一个磁场周期性变化所需脉冲数或导电状态用 n 表示,或指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相四拍运行
4、方式即AB-BC-CD-DA-AB,四相八拍运行方式即 A-AB-B-BC-C-CD-D-DA-A。步距角:对应一个脉冲信号,电机转子转过的角位移用表示。=360 度/(转子齿数*运行拍数),以常规二、四相,转子齿为 50 齿电机为例。四拍运行时步距角为=360 度/(50*4)=1.8 度(俗称整步),八拍运行时步距角为=360度/(50*8)=0.9 度(俗称半步)。11:17/9步进电机工作流程A 相通电,A 方向的磁通经转子形成闭合回路。若转子和磁场轴线方向原有一定角度,在磁场的作用下,磁场会带动转子旋转一角度,使得转子的一对磁场方向与定子的磁场方向一致。11:17/10项目分析本项目
5、设计中主要是步进电机的控制使用,硬件结构主要由CC2530单片机、步进电机组成。通过单片机控制步进电机实现电机旋转角度的变化。CC2530步进电机11:17/11项目硬件图步进电机原理图11:17/12A3967SLB驱动芯片A3967SLB驱动芯片,采用EasyStepper 接口,将8条控制线减少为2条(步长和方向),只要简单地输入控制步进电机的脉冲,其内嵌的转换器就可以实现对步进电机的控制。DIR是电机运转方向的选择口;STEP为脉冲输入端口;OUT1A,OUT1B,OUT2A,OUT2B为H桥的两对输出端口;ENABLE为使能端。11:17/13步进电机控制程序逻辑11:17/14项目
6、实现步进电机初始化void stepmotor_init(void)P0SEL&=0X07;/配置p0_0、p0_1、p0_2为输出引脚P0DIR|=0X07;11:17/15项目实现步进电机控制void step(int dir,int steps)int i;if(dir)PIN_DIR=1;/步进电机方向设置else PIN_DIR=0;delay_us(5);/延时5usfor(i=0;isteps;i+)/步进电机旋转PIN_STEP=0;delay_us(80);PIN_STEP=1;delay_us(80);11:17/16项目实现步进电机正转void forward(int data)dir=0;/步进电机方向设置PIN_EN=0;step(dir,data);/启动步进电机PIN_EN=1;11:17/17项目思考步进电机的工作原理?步进电机的工作流程?