怎样用arduino制作无刷云台控制器,转codevisonlife的贴-Arduino中文社区 - Powered by Discuz! Archiver

190808149 发表于 2016-9-30 14:33

怎样用arduino制作无刷云台控制器,转codevisonlife的贴

本帖最后由 190808149 于 2016-9-30 14:50 编辑

最近发现了在与非网上的氛围不错,最近一直在做关于无刷云台的课题,导师抓的不紧,自己也就松懈了,所以每周规定自己要在这里发两篇相关博文,记录下自己的学习历程,如果其中内容涉及到了版权问题,请跟我联系(应该不会有这个问题)

先说我的云台的作用,在飞行器进行航拍的时候由于飞行器的振动,会对摄像机的航拍产生影响所以非常有必要使用云台进行稳定,在目前中国市场上,比较流行的云台都是使用BGC 云台控制器+无刷电机+自己做的云台架子,一般是两轴,价格在2k左右,基本原理是使用六轴与相机捷联,控制器控制无刷电机进行相关的角度补偿使相机达到稳定的拍摄环境。

我的云台的设计步骤:

我自己分了三个阶段
1,姿态信息的读取与处理
包括六轴传感器的驱动程序,上位机的使用,传感器信息转化为角度信息,还有传感器信息的滤波处理(重点)。

2,无刷电机控制
包括,驱动电路的选取,无刷电机的选取与pid控制;

3,系统整体调试。
目前只进行到了第一阶段,目前已完成了驱动程序的编写和上位机的选取,在进行角度信息的转化,这时候要参考bgc的代码,所以把自己的题目设定为对bgc的代码的解读。我也注意到对于在arduiono环境下开发跟在stm32下还是有很大不同的,但是对于某些函数的学习还是挺有用的。

今天先贴两张bgc的上位机的照片,不得不不说,上位机做的非常简介漂亮,




搬运工按:无人机领域好陌生,还好上图显示,我熟悉的arduino又回来了。

接着作者总结:

今天先到这里,下午还有开会。。
后记,其实最近很纠结,怀疑自己做研发的能力,这段时间跟论坛上的大牛们交流发现自己查的太多了。。。所以最近一直想找个其他的方向让自己尝试一下。

牛,学习了。大家有兴趣,除可以和原作者交流外,搬运工本人也愿意参加学习讨论。

根据原作本人口味,估计是研究生大爷?嗯,行文太文质彬彬了。看了作者的文章,云台原理本搬运工倒是弄清楚了。但具体咋做?还是没个谱。
转载文章这一点特别符合现代高校某些师生的谱。论文发了一大堆,都是保健按摩屋的门帘子,隐隐约约看不清。

这就对了。你都做出来了,人家论文不是给你做了嫁衣?

学他们那点货,只能当去读个幼稚园。搞点科技过家家。

所以来点实在的: BGC有玩家组装成功了。

硬件篇:       
    最大4s电源输入,单片机控制+MOS管驱动,另外可以加蜂鸣器。
   我手头这片是这个样子的:
   主控板和传感器:               三轴扩展板:

QQ截图20150126114531.png (136.35 KB, 下载次数: 6)
下载附件保存到相册
2015-5-14 10:08 上传




QQ截图20150126114520.png (68.35 KB, 下载次数: 2)
下载附件保存到相册
2015-5-14 10:08 上传



      
它的具体工作原理是传感器获取位置信息,单片机进行数据处理计算,输出给Mos对电机进行驱动和控制。其实来说,和飞控的工作原理基本相同。

无刷电机是DYS2208 实话说没听过这个牌子,看网址.hk 意思是 香港的?
这个电机看起来还是不错的:
      
QQ截图20150126114707.png (171.9 KB, 下载次数: 1)
下载附件保存到相册
2015-5-14 10:08 上传








装起来就是这个样子



对嘛,这才实在,有大图,有接线图,有零件的讨论。

接着是软件设置:

软件篇:软件部分,首先你需要USB驱动,不然电脑都认不得控制板。
调参软件肯定要有,我找到了一个汉化版,感谢汉化人员的辛勤工作和努力。多谢啦~
(不接动力电源)
在接入控制板后选择端口进行链接,接通后显示我的固件版本是2.2 b2


120420vlkkl2elxxkmom3m.jpg (113.08 KB, 下载次数: 17)
下载附件保存到相册
2015-5-14 10:08 上传






在调参软件目录firmware下有备用固件,对于固件错误的同学可以尝试刷固件:
(不知道其他版本的固件能不能通用,不过烧写方法一样的)

120420vlkkl2elxxkmom3m.jpg (39.39 KB, 下载次数: 14)
下载附件保存到相册
2015-5-14 10:08 上传



   
120420vlkkl2elxxkmom3m.jpg (6.92 KB, 下载次数: 13)
下载附件保存到相册
2015-5-14 10:08 上传





首先是传感器安置,很重要。
传感器有三个纬度,图中 红色代表的是传感器,黄色代表的是接线口。
前X轴 左Y轴 上Z轴。不同的硬件可能有不同的方向。

120420vlkkl2elxxkmom3m.jpg (32.49 KB, 下载次数: 8)
下载附件保存到相册
2015-5-14 10:08 上传






我把传感器放在了这里,尽量避免接触地面。
设置传感器的方向:
这里指的是飞机的前进方向,机身向上 是传感器的 向上 ;机身向右 是传感器的 向左。
这样就有了 -Y 这样的设定。 如果设定错误就有可能乱摆不停。

120420vlkkl2elxxkmom3m.jpg (64.37 KB, 下载次数: 14)
下载附件保存到相册
2015-5-14 10:08 上传





120420vlkkl2elxxkmom3m.jpg (115.27 KB, 下载次数: 17)
下载附件保存到相册
2015-5-14 10:08 上传




这个时候写入一次数据,之后开始校准。
有时写入参数后,软件不再反应,这时可以拔了再插。


校准过程请把你的相机塞好,把他摆平不要动,点击校准加速度计,用来测定云台的归中平面。
之后校准陀螺仪用来消除零点飘逸,也就是消除 归中平面跑飞的情况。
然后是设置电机参数。我的三个电机都是12n14p 的结构,磁极数是14.
电机功率方面,横滚最费力,所以分配功率要大。这三个数据是卖家给的参数配置里给的,先这么用。
一次我把 YAW功率给到了150 上电调试了10分钟,烫的不能摸,心想玩完了,3轴要变两轴喽。

120420vlkkl2elxxkmom3m.jpg (115.73 KB, 下载次数: 16)
下载附件保存到相册
2015-5-14 10:08 上传







在高级设置页面下,需要打开电机输出,不然没有功率输出,电机不会动。
PWM速率设定为高,不会有异响。

120420vlkkl2elxxkmom3m.jpg (127.75 KB, 下载次数: 20)
下载附件保存到相册
2015-5-14 10:08 上传







其他的 我用一个通道去控制俯仰,其他禁用,并且都设置在角度模式上。就大体OK了。

120420vlkkl2elxxkmom3m.jpg (118.14 KB, 下载次数: 22)
下载附件保存到相册
2015-5-14 10:08 上传







啥?PID还没教怎么调。不要来找我,我也不是很会,只是不断摸索而已。
想精通请自学自动控制原理之经典PID控制理论。


祝愿各位爽飞。


1966496638 发表于 2016-11-11 10:56

楼主,能发一份这样的资料给我吗?1966496638@qq.com

gangguo 发表于 2017-3-20 16:46

楼主,想看看电机驱动部分的源码,能给一份资料吗?谢谢!!

zz900712 发表于 2019-3-20 13:12

求资料290983735@qq.com

秃子 发表于 2020-10-24 10:11

求份资料 先谢谢楼主 279928227@qq.com:)
页: [1]
查看完整版本: 怎样用arduino制作无刷云台控制器,转codevisonlife的贴