欢迎来到芯片之家的步进电机
科普系列!在这个系列中,我们将深入探讨步进电机的基本原理、硬件设计、软件控制,并最终通过一个实际的PD(Power Delivery)步进电机控制方案来展示其应用。我们还将开源所有相关的资料,包括电路图、PCB设计、软件代码
等,让大家可以动手实践,真正掌握步进电机的精髓。
步进电机因其精准的位置控制
和易于驱动的特性,广泛应用于打印机、CNC机床、机器人等领域。无论您是初学者还是有一定经验的工程师,这个系列都将为您提供有价值的知识和实践指导。
什么是步进电机?
步进电机是一种将电脉冲信号
转化为角位移或线位移
的开环控制电机。通过控制脉冲的数量和频率,可以精确地控制电机的转动角度和速度。步进电机的转动是“步进式”的,即每接收一个脉冲,电机转子就转动一个固定的角度
,这个角度称为“步进角”。
关于原理,老宇哥看了一圈后,网络上有个非常棒的视频,详细介绍了步进电机的驱动原理,动画都做的非常不错,咱没必要重复造轮子,看一次够,每看一遍后,都会有一些新的理解。视频来自B站UP主方猫boom看完这个视频,我相信对步进电机的原理都比较了解了。就像方猫大佬说的,我们常用的步进电机有42步进电机
和28BYJ
步进电机两种,其它都大同小异,本项目我们使用42步进电机,28BYJ步进电机的驱动我们后面单独介绍驱动案例。
42步进电机就是4线接口,A+,A-,B+,B-,一共4根线,一般在使用的时候,会配一个专用的步进电机驱动器
,然后再通过主控去控制,大概就是这样子:
这种驱动盒子比较大
,也比较工业风
,能不能设计一种小小的,不占地方的驱动呢,最好能固定到电机上,跟电机长宽一样,最好也能集成MCU
等等。
还真有一个这样的项目,此项目将驱动设计的跟步进电机一样大小,板载ESP32-S3 WiFi模块,步进电机专用驱动芯片,还用了USB PD,这样留一个TYPE- C口就可以获得50W的功率。
步进电机很多时候都是开环控制,这次还加上了磁旋转编码器
,可以做闭环控制
。成品就是这样:
我们大概看一下原理图
,
1、主控用ESP32-S3
,提供充足的处理能力、内置 Wi-Fi 和蓝牙连接,以及丰富的开发工具和库生态系统,可轻松定制和扩展,例如ESPHome和ESPNow,外围加了一个NTC做AD采集做过温保护。
2、步进电机驱动器用TMC2209
,该驱动器以其静音运行、高精度以及 stealthChop™、spreadCycle™ 和无传感器归位等先进功能而闻名,确保平稳、安静和高效的电机控制。
3、磁旋转位置传感器用AS5600
,实现精确可靠的绝对角度测量,实现步进电机的精确定位和闭环控制。
4、USB PD用CH224K
进行诱骗,可以用USB接口提供高功率的供电,不用那些常规的笨重电源适配器,USB PD 与 TMC2209 一起可以驱动功率高达50W 的步进电机,CH224K我们单独一节专门介绍。
5、DCDC采用MPS的MPM3612-33
,是同步整流降压开关模式转换器,内置内部功率mosfet和高轻负载效率,采用 LGA-10(3mm x 3mm x 2mm)封装,提供非常小的解决方案,能够输出 1A 的持续电流,同时在宽输入电压范围内保持出色的负载和线路调节,主要还是是板子空间实在太小了,外围少量电容电阻就可以了。
6、周边有3个按键,标准 Qwiic / Stemma QT I2C 连接器(4 针 JST SH)意味着可以连接可用于控制的各种传感器。
PCB采用4层板,设计的非常非常紧凑,封装都是用的最小的
,WiFi模块都是贴片脚不外漏的封装,这么小的空间,用常规PCB工艺,板子从布局到Layout都要花费不少时间,后续如果还想在板子上增加一些芯片
实现一些功能,那肯定是没空间
了。
因为现在用的都是普通过孔,走线转到其它层的时候得从焊盘拉出来再打过孔,确实需要额外占用挺多空间
,其实可以直接在焊盘上打过孔
,直接把线转到其它层,这不是爽歪歪嘛,特别是转到GND层或者VCC层
的时候,能节省太多空间。
以前老师教我们不要在焊盘上打过孔,这都是过去式了,我们经常打板的嘉立创,4层板单独做盘中孔是要收费的,但6层板可以免费做盘中孔和升级2u"沉金工艺
,而且,在初期项目验证的时候,6层板比4层板可以更快速
的画完,再加上他们有6层板免费打样
,特别适合做项目初期的原型功能验证,没试过的小伙伴可以打板试一下。
硬件篇大概就介绍到这里,后面我们会针对某些元器件做深入分析以及软件驱动部分,请大家持续关注。原项目地址:https://github.com/joshr120/PD-Stepper