9678浏览
查看: 9678|回复: 12

[项目] 【自制无人机】Arduino+无刷电机+PID实现平衡木

[复制链接]
本帖最后由 云天 于 2020-8-8 22:40 编辑

【自制无人机】Arduino+无刷电机+PID实现平衡木图1


【自制无人机】Arduino+无刷电机+PID实现平衡木图2
【前言】

之前,一直用Arduino和无刷电机的电调纠缠。先说正解,【自制无人机】“辛”路历程(六)电调中提到的控制程序是没有问题的。
[mw_shl_code=c,false]#include <Servo.h> // Using servo library to control ESC
Servo esc; // Creating a servo class with name as esc
int val; // Creating a variable val
void setup()
{
esc.attach(9); // Specify the esc signal pin,Here as D9
esc.writeMicroseconds(1000); // initialize the signal to 1000
Serial.begin(9600);
}
void loop()
{
val= analogRead(A0); // Read input from analog pin a0 and store in val
val= map(val, 0, 1023,1000,2000); // mapping val to minimum and maximum(Change if needed)
Serial.println(val);
esc.writeMicroseconds(val); // using val as the signal to esc
}[/mw_shl_code]

【Mind+代码】
实现控制无刷电机
【自制无人机】Arduino+无刷电机+PID实现平衡木图12


这个项目中断了很长一段时间,原因是我不明白,1、Arduino有时能通过电调控制电机,有时不能,问题出在哪?2、也在于我只有一个无刷电机和一个电调,用不了替换法,不知是哪个出问题?3、还有就是,有网友说,可以用Arduino程序通过电调调整电机的油门,我一直做不好。


【调整油门】
看过这个帖子“MTO1804无刷电机引发的悲惨经历之二——电调优化”后,我测试出我的电调是没有问题的。我把测试过程简单的陈述一下:
1、下载软件叫做BLHeliSuite
进入下载页面,记住要下载BLHeliSuite16714902。
2、首先使用Arduino Uno(其他大多数Arduino板也行)连接到电脑,识别后选中Arduino的接口,如下图设置:
【自制无人机】Arduino+无刷电机+PID实现平衡木图4


【自制无人机】Arduino+无刷电机+PID实现平衡木图5


3、在ESC Setup标签中线选择正确的Interface
【自制无人机】Arduino+无刷电机+PID实现平衡木图6


4、选择正确的Arduino接口,然后点击Connect,再点Check
【自制无人机】Arduino+无刷电机+PID实现平衡木图7



【自制无人机】Arduino+无刷电机+PID实现平衡木图8



【自制无人机】Arduino+无刷电机+PID实现平衡木图9



5、正确识别
【自制无人机】Arduino+无刷电机+PID实现平衡木图10

注意:电调的白色Sig线接到Uno的D11,黑色的Gnd接Uno的地线,连接的时候一般先插信号线,后插电源线,断开连接的时候则先拔电源线,再拔信号线。电调由3s锂电池供电,不用和Arduino共地。   
至此,我可以调整电机油门了。


【替换法】
【自制无人机】Arduino+无刷电机+PID实现平衡木图3

我又从DF商城上买了三个MTO1804无刷电机
【自制无人机】Arduino+无刷电机+PID实现平衡木图15

可我怎么买了三个CW电机,三个!三个!三个!我手里的是一个CCW电机。(CW和CCW都表示旋转的方向,【CW】clockwise 的缩写,表示顺时针旋转【CCW】counter-clockwise的缩写,表示逆时针旋转)
通过电调与电机交替测试,测试出电调是好的,电机是坏的。测试过程中,又一个电机被我玩坏了。怎么坏的?都是螺丝惹的祸。

【自制无人机】Arduino+无刷电机+PID实现平衡木图16



新坏的
【自制无人机】Arduino+无刷电机+PID实现平衡木图17


之前弄坏的
【自制无人机】Arduino+无刷电机+PID实现平衡木图18



热缩管被螺丝穿透
【自制无人机】Arduino+无刷电机+PID实现平衡木图20



【自制无人机】Arduino+无刷电机+PID实现平衡木图19



新坏的,用导线连接,并用导电液修补连接处。
【自制无人机】Arduino+无刷电机+PID实现平衡木图21




之前坏的可直接用焊上。

至此,两电机修好。一,我认为弄坏两电机,我个人责任最大;二,我同时认为设计上出存在缺陷。

三轴加速

测试MMA7361三轴加速度传感器,MIND+
【自制无人机】Arduino+无刷电机+PID实现平衡木图13

【自制无人机】Arduino+无刷电机+PID实现平衡木图11

【自制无人机】Arduino+无刷电机+PID实现平衡木图24

X轴接在A0上,测得平衡位置,值为330左右。

【平衡木】

【自制无人机】Arduino+无刷电机+PID实现平衡木图14

两电机电调分别接在9,10口上。


【自制无人机】Arduino+无刷电机+PID实现平衡木图22

程序中使用PID算法。

【PID算法】

【自制无人机】Arduino+无刷电机+PID实现平衡木图23

可参考如下帖子:
PID无刷电机控制教程丨Arduino控制丨无人机测试小实验

【演示视频】













rzyzzxw  版主

发表于 2020-8-9 08:58:22

追剧中……
回复

使用道具 举报

rzegkly  版主

发表于 2020-8-9 10:01:09

自制无人作品很棒,学习了
回复

使用道具 举报

云天  初级技神
 楼主|

发表于 2020-8-9 12:32:36

一直在向制作成品无人机努力,给自己定了一年的时间
回复

使用道具 举报

云天  初级技神
 楼主|

发表于 2020-8-9 12:36:45

这个帖子,是个重要的里程碑。
回复

使用道具 举报

云天  初级技神
 楼主|

发表于 2020-8-9 12:41:23

过程中,学习到了很多相关知识!
回复

使用道具 举报

digi_cow  高级技匠

发表于 2020-8-11 10:12:10

螺丝过长,导致穿透热缩管甚至触及线圈,这个问题我看了下可能存在于几乎所有此类电机身上。可能加工难度问题,顶部都没有限位。很有可能先要交学费,然后才想到要自己把握螺丝长度,太长要垫垫片或切掉一部分。
回复

使用道具 举报

云天  初级技神
 楼主|

发表于 2020-8-11 10:34:11

digi_cow 发表于 2020-8-11 10:12
螺丝过长,导致穿透热缩管甚至触及线圈,这个问题我看了下可能存在于几乎所有此类电机身上。可能加工难度问 ...

分析的透彻
回复

使用道具 举报

阿土  初级技师

发表于 2020-8-11 19:00:48

外转子无刷电机的螺丝长度不要超过定子座太高,要不然螺丝顶到漆包线后会造成短路,这个属于航模知识,一般作为常识去认知就好了
回复

使用道具 举报

佛系唐法官  中级技师

发表于 2020-8-29 19:11:59

回复

使用道具 举报

TuTu  高级技师

发表于 2020-9-4 14:09:05

持续关注~!加油加油~!
回复

使用道具 举报

金色年华  见习技师

发表于 2020-11-23 11:56:11

请问楼主,这款编程软件在哪里可以下载?
回复

使用道具 举报

云天  初级技神
 楼主|

发表于 2020-11-24 19:00:13

金色年华 发表于 2020-11-23 11:56
请问楼主,这款编程软件在哪里可以下载?

Mind+
http://mindplus.cc/
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail