使用A4950制作的步进电机驱动器&&mcu软件细分

0、成果展示

一、背景描述

二、A4950简介

三、画原理图和电路板

四、写程序成功驱动两项四线步进电机【42步进电机】

一、背景描述

在专用步进电机控制芯片(A4988,DRV8825,TMC2208,TMC5160,TB6600等)几乎覆盖市场 的情况下,想通过A4950+mcu模拟细分来控制步进电机,这个行为是不是闭门造车?-----这个问题先不谈

我目前要做的是:通过mcu软件模拟细分的时序电压+借用A4988的H桥。

它不是一个量产或开发的好工具,但是作为学习步进电机原理的芯片它是不错的。

我相信这是一个极好的学习项目,能深刻理解步进电机微步驱动的精髓及其他细节(拍、细分、步距角、齿距角、噪声、发热、啸叫、励磁、力矩、PWM、SPWM、扭矩、保持电流、运行速度、梯形加速、S型加速、pid控制、编码器、相电流、堵转、过流保护、欠压保护、过压保护、斩波、衰减模式、混合控制模型、高速失步、低速抖动、共振、反向电动势、死区等)。

二、A4950简介
0、优势和特点

1、引脚


2、真值表

翻译一下:

10*Vs > VREF时,可能会触发衰减模式

3、衰减模式



4、芯片描述
1)待机模式

2)VREF和最大电流限制


3)过流保护

4)强制关机

5)制动

6)同步整流

7)LSS脚的PCB设计

8)接地和散热

9)去耦

三、画原理图和电路板

参考PCB设计


*

【硬件疑问】

VREF给多大电压?

RS怎么选?

去耦电容怎么选?

地线怎么走线?

大电流的线宽怎么考虑?

电源?信号?散热?怎么画?

是否尽量避开斩波区域?------衰减模式控制: 这是最大的挑战。A4950的衰减模式是固定的(混合衰减)。在高速或高电感电机下,你可能无法获得最佳性能。专用驱动器允许你编程设置衰减模式以适应不同电机。

没有真正的电流反馈: 这是一个开环电流控制。我们假设DAC设置的VREF电压能精确对应到电机线圈电流。实际上,由于电机反电动势、绕组电阻和电感的影响,电流波形会失真,尤其是在高速时。专用驱动器(如TMC2208)有精密的闭环电流控制来补偿这一点。A4950没有这个电流补偿的功能。

**

【软件疑问】

**复杂性: 需要处理MCU的DAC、定时器、中断等底层硬件,并编写所有控制逻辑。一个专用的步进驱动器只需要你提供"步进脉冲"和"方向"信号。

可能还要考虑加编码器做闭环。

【电流环怎么处理】这是一个本质问题:或者说想用mcu模拟电流时序实现步进电机细分,不可避免的要分析电流环。
1)精确控制扭矩 :对于直流电机,扭矩与电流成正比。控制了电流,就等于精确控制了电机的输出扭矩。这对于机器人、机械臂等需要力控的应用至关重要。
2)实现步进电机微步的核心 :微步驱动要求线圈电流能输出完美的正弦波。没有电流环,在高转速或负载变化时,实际电流波形会严重失真,导致微步失效、振动和噪音。电流环能强制电流跟上指令波形。
3)提供过载和短路保护 :电流环能瞬间检测到电流异常(如堵转、短路),并立即关闭驱动,保护电机和驱动器免受损坏。这是最基本的过流保护机制。。
4)提升动态响应:当负载突然变化时(例如电机遇到阻力),电流环能迅速增加电流以维持转速,使系统响应更快、更刚健。

好吧,写到这里我知道答案了,A4950不是mcu软件细分+电流环方案里的完美器件,现在要考虑还要不要用A4950;要不要直接设计配套外围电路实现电流环控制。

**

**

算了,事已至此不如直接上FOC控制步进电机,殊途同归,我的核心目的是通过复杂的软件逻辑配合传感器和相应的硬件调整磁场、电流,来实现对步进电机的精准控制。

**

四、写程序成功驱动两项四线步进电机【42步进电机】

**

相关推荐
m0_553210042 小时前
stm32f407移植modbus协议
stm32·单片机·嵌入式硬件
LaoZhangGong1233 小时前
uip之TCP服务器
服务器·网络·stm32·tcp/ip·tcp·uip
@good_good_study3 小时前
STM32 static void、extern void、void
stm32·单片机
国科安芯3 小时前
RISC-V怎么实现核间中断?核心本地中断控制器(CLINT)深度解析
网络·stm32·单片机·嵌入式硬件·架构·risc-v·安全性测试
bai5459363 小时前
STM32 CubeIDE(1.18.0) LED闪烁
stm32·单片机·嵌入式硬件
@good_good_study4 小时前
STM32 高级定时器中断实验
stm32·单片机
小李做物联网4 小时前
【单片机毕设】136.1基于单片机stm32排队叫号系统-三窗口物联网嵌入式项目程序
stm32·单片机·嵌入式硬件·物联网
d111111111d4 小时前
什么是野指针,在STM32中如何避免野指针问题
笔记·stm32·单片机·嵌入式硬件·学习
不想毕业4 小时前
stm32:编码电机原理
stm32·单片机·嵌入式硬件