本文来自“单片机爱好者”
无刷直流电机(Brushless Direct Current Motor, BLDCM)克服了有刷直流电机的先天性缺陷,以电子换向器取代了机械换向器,所以无刷直流电机既具有直流电机良好的调速性能等特点,又具有交流电机结构简单、无换向火花、运行可靠和易于维护等优点。无刷直流电机的实质是直流电源输入,采用电子逆变器将直流电转换为交流电,有转子位置反馈的三相交流永磁同步电机。
本设计是基于STM32 BLDC直流无刷电机控制器设计,并附上原理图和源码等,供网友参考学习。源代码是基于免费开源CoOS(UCOS类似)操作系统上写的,在学习无刷电机的控制同时还能学习到操作系统的知识。同时提供用Matlab的GUI编写的串口接收程序和开源的代码,实时接收速度和电流信息,便于PID测试,并且有CAN(TJA1050)接口。同时自己可以进行修改学习Matlab的GUI编程。
STM32 BLDC直流电机控制器组成如下:
1.STM32F103RB处理器 时钟72M Flash 64K RAM 20K
2.MOSFET SUD35N05-26L 55V 35A Rds=0.02
3. MOSFET驱动 IR2101S
4.输入开发板电源参数: 电源 10到20V,最大电流 20A
电源及STM32 BLDC开发板无刷电机图片:
软件资料包括如下:
有无刷电机转速调节的PID程序(基于免费开源CoOS操作系统)
自己做的Matlab GUI串口PID调试程序(开源,自己可以改进)
自己以前做的STM32程序
电机运行时PID调节图
无刷电机规格要求:
额定电压 12V
额定电流 2.26A
额定转速 13027RPM
STM32 BLDC直流无刷电机接口:
黄色线: Vcc +5V
灰色: GND
棕色:霍尔S1
蓝色:霍尔S2
橙色:霍尔S3
红色:A相
黑色:B相
绿色:C相
STM32 BLDC开发板接口配置:
1.无刷电机驱动
2.串口通信接口
3.CAN通信接口
4.有AD接口能检测电压和电流
5.两个按键和一个复位键
6.一个LED
7.JLINK调试接口
STM32 BLDC开发板配件:
交流220V转直流12V 6A电源
带霍尔无刷电机 12V 2.26A
STM32无刷电机驱动板
相关资料下载链接:
链接:https://pan.baidu.com/s/1TSnR_aLcqG1vor9A8Mpfiw 密码:fjbe
若两侧某一传感器检测到黑线,表明小车正脱离轨道,将3个检测点的结果融合后作为单片机的输入,机器人按照单片机P1口信息进行判断调整,实现路径跟踪和自动纠偏。取得了很好的识剐