在上一篇《树莓派使用PCA9685扩展PWM驱动舵机入坑指南》中简单介绍了树莓派使用PCA9685驱动sg90的180°舵机的应用。本身因为想做无人机,所以就研究了下如何驱动无刷电机(调)。原想本质上都是pwm方波输出给电机(调)即可,但无奈对pwm及电路知识欠缺,踩了很大的坑。但自己始终没有放弃,对于菜鸟也只有疯狂的刺探测试了。最终,实现了在树莓派3上的电调(机)油门模拟测试程序,而无需用遥控器或单片机来解锁测试油门。
测试环境全家福:
1.树莓派3 2.IO扩展板 3.PCA9685 16路pwm模块 4.XXD 30A 电调 5.A2212/1000KV无刷电机 6.2200mA/25C/3s电源
上次在 《树莓派使用PCA9685扩展PWM驱动舵机入坑指南》中说过,PCA9685必须要启用V+供电。连接好电调电机和PCA965和树莓派后,根据网上的资料要对电调进行解锁初始化,担心初始化失败或电调成砖怎么办?还好我多虑了。将电调和电池连接后,电机豁然发出单个哔~音,间隔有2到3秒左右。于是修改了之前测试舵机的程序,依然是50HZ频率。运行程序,重新对电调进行上电,还是哔~音间隔发出,每任何反应。上好盈官网查询资料,间隔哔~音是因为没有检测到PWM信号。可程序在运行,是哪里出了问题?断开电调,拿出万用表测量下PCA9685的电源输出,3.3v貌似是对的,测pwm信号也是有波动的。只能再搜索资料了,网上逛了半天没啥收获,回头看看PCA9685的模块,鬼使神差的翻到背面看了下丝印,V+最大5至6V,在看下正面16路PWM的电源输出管脚,旁边的丝印写着V+。于是把PCA9685的V+输入换到5V上。重新用原来舵机测试程序测试,重新接上电调,几次间隔哔~音后,传来连续的三生哔~音。。。还没反应过来,电机已经从我的桌面飞了出去。前辈们说得对,一定不要接螺旋桨。抑制住激动的心,下单了一副护目镜。
想找现成的电机油门测试程序,大都是51或stm32的,都下了,但没任何参考价值。算了自己摸索吧,做个keyboard throttle simulator吧。当然比较矬是命令行形式的。
好了,带你飞,感受下:
PC电调A2212/1000KV油门测试
类似之前的文章 《树莓派使用PCA9685扩展PWM驱动舵机入坑指南》中的程序。加入了键盘输入读取。
/**
* @brief
* This program is a command line tool for Brushless Motor(A2212/13T 1000KV) test.
* And you can use the keyboard to simulate the throttle:
*
* ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
* ┃ KEY ┃ Function ┃
* ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
* ┃ 1 ┃ pulse + 50 ┃
* ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
* ┃ 2 ┃ pulse - 50 ┃
* ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
* ┃ 3 ┃ pulse lowest 850 ┃
* ┣━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
* ┃ 4 ┃ pulse full 2450 ┃
* ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
* NOTE: You need to press the key 1 when this program started and befor the ESC power on.This operation will let pwm working ready for ECS detect.
* @copyright 251575105@qq.com
*/