本帖最后由 大傻鱼 于 2013-11-15 10:20 编辑
这次我做的几套,是前段时间我做了一个开源硬件的科普活动,以此项目作为示例,带学生现场制作,剩下了一些套材,我自己做了一些接口和简单包装,写入了最新的1.04 版固件,并根据开发者的建议,在音频口连接了PPM in 接口(这个很容易让人联想到以后可以做成电脑模拟器),拿出来和大家分享吧。
成本: Arduino Nano:38元 GY-85 IMU:50元 音频接口、音频线、USB线:10元 电源接口、热缩管等
考虑到大家用的控不同,我做了几种供电口: 1、JST头,适合6-14V电源 3、杜邦头引出正负,适合6-14V电源,适合自己diy
鉴于是一篇很好的文章,故此删除了部分商业行为语句,希望引以为戒,版主留!
这里就简单说一下这个开源头追的用法,首先说说原理:这个开源头追是通过GY-85 IMU (惯性测量单元)芯片上集成的三轴陀螺仪、三轴加速度计和地磁计来实时输出当前位置与起始位置之间在三维空间中的变化,再通过Arduino Nano 控制器,转化成X 、Y 、Z 三个通道的PPM 信号,输入到遥控器中,通过遥控器的“教练”(Training )功能,映射3 个通道来控制云台的俯仰(Tilt ),倾斜(Roll )和方向(Pan )。
因此,想用这个开源头追,你的遥控器需要有几个条件: 1、有教练口,或者叫模拟器接口 2、至少有6个通道,因为除去控制飞机的油门、方向、副翼、升降,你还得腾出至少2个通道来控制云台 3、教练功能具有可编程能力,也就是PPM输入通道的自定义映射功能。这点很必要,比如JR 9XII遥控器的可编程教练功能,只能设定到1、2、3、4通道的开关,我可不想用脑袋控制飞机! 4、最好把教练开关改造一下,因为大多数遥控器的教练开关是复位扭子开关,最好换成两档扭子开关,否则你要用头追控制云台的时候,还得一直把着开关才能允许PPM通道输入。
1、在“模型设定”里找到“教练”, DeviationX的教练模式有三种:摇杆,就是PPM输入映射到1-4通道的摇杆,不选这个;通道和增强模式都可以,强烈建议用增强模式,后面会说到;
2、进入这个“增强”模式,把通道数设置成8个;
3、在“通道混控配置”中(DeviationX 3.0固件中没有这个高级模式,而suvsuvsuv大作的有两种高级模式,这个是高级模式2),将6、7、8通道分别添加PPM6、PPM7和PPM8,就是通过教练口输入的开源头追的三个通道;
4、将开源头追的音频口通过音频线和遥控器的教练口连接,给开源头追上电(5-14V),待自检结束后,进入遥控器的“通道监控”菜单,就可以弹道6、7、8通道随着头追晃动而摆动了。
5、再多说一点好玩的用法。前面说到要将教练模式设置成“增强”,在增强模式下,PPM输入通道可以与任意通道混控,混控的方式可以是替代、相乘、附件等等。如果你将头追的6、7、8通道与飞机的副翼、升降、方向通道混控,油门还是用摇杆控制,就可以用头追控制飞机哦,当然,得设置好混控的曲线的舵量什么的。我试验用这个头追控制四轴,飞起来很有意思。
下面是我的一段测试视频:
最后简单说说这个开源飞控的设置软件吧: 在源码的软件包中,有一叫做HeadTrackerGUI的软件,双击打开之,将开源头追通过USB线连接电脑(注意,连接USB时不要额外供电,否则容易损坏Arduino Nano的供电模块)。 连接后,点击右下角的Start plot,晃动头追,可以在示波器中看到三个轴向上的运动变化参数。 中间部分可以设置每个通道舵机的输出范围、中立点,正反舵等,还可以设置三个通道映射的到遥控器中的通道号(默认是PPM6 、PPM7 和PPM8 ,有些遥控器不能识别那么多通道,只能识别1-4 通道,那么久设置成1 、2 、3 吧) 如果需要给IMU芯片进行校准(一般不需要),可以在上的Tools菜单中找到校准向导,按照提示一步一步做即可。
哦,忘了说,其实这个开源头追基本上是刷好固件后傻瓜化使用,除了通道调整,基本不用校准什么的,如果在上电后,云台位置和脑袋初始位置不同意,只要把脑袋方向和摄像头方向保持一致,再按下Arduino Nano板上Reset按键,重新初始化一下就ok!
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
开源头追源码下载(包含设置用的GUI软件): Ardiuno IDE,向开源头追写入源码的程序:
参考/特别鸣谢: Denins Frie &Mangus 在RCGroups上的开源头追原帖:
ej189和suvsuvsuv在RCTW上关于Deviation X固件的开发贴:
|