基于 STM32 的无刷电机驱动器
软件与应用说明
1.无刷电机驱动器基本功能
基于 STM32 的无刷电机驱动器,由 STM32F103CBT6 + IR2131 组成控制,6
片 IRF540 作为 UVW 功率驱动,带动一个 24-30V 的无刷电机。可以支持 UVW 霍尔
信号,以及 ABZ 光电编码器信号输入。控制器目前可以实现:
1. 设定固定 PWM 占空比的驱动电机正反转运行,占空比范围 0-1000;
2. 速度调节模式,给定速度,实现 PI 控制,可以设定/修改 P、I 参数和
静态允许差等,自动调节 PWM;
3. 驱动器使用 RS-485 接口,采用 Modbus 通信协议,在 PC 机上,可以方
便的进行直观的 P、I 等参数调节。
4. 用 Modbus 修改霍尔中断计算速度,和控制速度的时间,达到修改 PI 参
数的目的;在 PC 电脑的 Modbus 调试界面上,还能显示电机的实际速度
(RPM)、电机正反转、电机转动圈数和霍尔位置数、光电编码器的速度/
位置等参数。
2.主要技术特点与 STM32 资源分配
1. 工作电压:直流 24-30V;
2. 控制三相无刷电机用 stm32 的 TIM1 六个通道 PA10、PA9 和 PA8 分别做
驱动桥的高位控制(WH,VH,UH),PB15、PB14 和 PB13 分别做驱动桥
的低位控制(WL,VL,UL);
3. 编码器用 STM32 的 TIM2 三个通道 PA0、PA1 和 PA2 分别做编码器的 A 相、
B 相和 Z 相;
4. 霍尔反馈用 STM32 的 TIM3 三个通道 PA6、PA7、PB0 分别做霍尔反馈的
U、V、W;
5. PB7(RXD1)、PB8(TXD1)做 RS485 通信;
6. PA10(RXD)、PA9(TXD)做串口下载程序;
7. 可以实现用 PB9 做方向控制,目前没有做;暂用 MODBUS 控制方向;