为什么要使用步进电机?
步进电机是带有许多内齿的无刷直流电机,通过周围的铜线圈磁性锁定到位。与无刷电机不同,为步进电源供电电机不会转动。相反,它锁定到给定输入指定的位置,顺时针或逆时针转一小步。
虽然这使得步进电机的驱动更加复杂,但与无刷直流电机相比具有一个主要优势:它们的角位置可以非常精确地指定。例如,如果您希望电机正好旋转270度,那么使用普通直流无刷电机(没有某种形式的反馈)几乎是不可能的,但使用步进电机会很轻松。
步进电机需要多个步进脉冲才能到达您想要的位置。此外,步进电机线圈始终通电,大大增加了保持转矩,但强制转动则很困难。这些优势解释了为什么步进电机常用于许多应用,包括cnc机床和cd/dvd驱动器。
步进电机电动机分为两个阶段:单极和双极。单极电机包含连接所有线圈的公共电源,而双极电机具有分离的线圈。
本文仅介绍单极电机,因为双极电机需要以不同的方式驱动。
由digikey提供(原理图)
单极输入和步进
单极电机通常有5根输入线 - 两根成对线控制线圈,第五根线连接到为每个线圈提供公共分接头。
虽然线路颜色因电机而异,但这里有连接在本文中使用:
下表显示了如何驱动每个输入以旋转电机。向前移动(即从步骤1到2)使电机顺时针转动,而向后移动则使电机逆时针转动。
表1.电机旋转状态
步进电机可能需要的电流远远超过微控制器的限制,这就是微控制器必须从不直接连接到电机的原因。电机还可能产生反电动势,可能会损坏i/o端口,并且绝对必须使用钳位二极管。
然而,驱动带有四个分立晶体管的步进电机会浪费和笨重,这就是为什么必须使用uln2003步进驱动器ic 。该ic包含七个达林顿晶体管,每个晶体管都包含二极管保护,能够提供500ma,50v输出(实际上比arduino uno可以处理的更多)。
编码步进电机
步进电机的编码步骤可以通过switch语句和一些i/o位完成,但有一种更简单的方法:使用内置的stepper library!
虽然arduino是一个方便而简单的平台,但它的库支持使它成为最好的平台之一市场上的模块通过arduino库兼容。对于步进电机,我们可以使用步进器库轻松控制它们,无需对每一步进行编码。
#include
#define steps_per_rev 513
// create our stepper motor object
stepper motor(steps_per_rev, 2, 3, 4, 5);
void setup() {
motor.setspeed(10); // motor speed of 10 rpm
}
void loop()
{
motor.step(steps_per_rev); // step clockwise one whole revolution
motor.step(steps_per_rev / 2); // step clockwise half revolution
motor.step(-steps_per_rev); // step counter clockwise one whole revolution
}
要使用步进电机库我们首先要包括步进电机库头:
#include
下一步(可选但推荐)是定义电机在一整圈内旋转的步数。本教程中使用的电机有32个步骤,并连接到比率为1:16的减速齿轮,因此一次旋转的步数为513.
#define steps_per_rev 513
现在我们有了定义的步数,我们需要创建一个步进电机对象。该对象初始化为五个变量:每转的步数和连接步进电机的四个引脚。
stepper motor(steps_per_rev, 2, 3, 4, 5);
在设置功能中,我们可以定义速度(以rpm为单位)我们希望我们的电机转动。对于这个例子,我们将rpm设置为10.
void setup() {
motor.setspeed(10); // motor speed of 10 rpm
}
主循环包含转动电机所需的代码。正数表示电机等于前进的次数,而负数表示电机向相反方向旋转。
此示例中的三行代码显示steps_per_rpm如何用于将电机转动已知量。
motor.step(steps_per_rev); // step clockwise one whole revolution
motor.step(steps_per_rev / 2); // step clockwise half revolution
motor.step(-steps_per_rev); // step counter clockwise one whole revolution
变电所主接线图
什么情况需要用到三相三线电缆
半导体封装测试设备led推拉力测试机设备介绍
千亿量级的搜索背后,浪潮软件定义存储如何将小文件读写性能提升30%
微雪电子QFN-32(40)BT-0.5-02 QFN32测试座介绍
怎样控制步进电机
联想Mirage Solo的在最近的一次系统更新中新增了一个直通模式
华为公开封装专利:有利于提高芯片性能
武汉芯源CW32F030系列产品在可燃气体探测器的应用
开关量变送器的应用以及工作原理解析
哪款蓝牙耳机性价比最高?五款热门蓝牙耳机实测!
MIUI今天发大招!上午9点宣布大消息,或将公布“良心”之作?
一种具有优异热管理和电磁屏蔽性的Cu/PLLA柔性薄膜
HAS 2023 | 华为SPN,构筑新一代电力通信网数字底座
采用MAX16820 LED驱动器构建的5W MR16 LE
如何对并行接口芯片8255进行扩展设计
虹科数字IO--帮您解决测试系统外部负载驱动问题
中兴通讯将携手中国移动推出全场景UPF部署方案
Garmin逐渐将其服务恢复在线
模块化夹紧系统:加速度数据记录仪CFRP零件加工工艺动态监测