5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
楼主: c_nmusic
打印 上一主题 下一主题

共轴双桨自动驾驶直升机

[复制链接]
621
发表于 2008-12-29 19:20 | 只看该作者
原帖由 c_nmusic 于 2008-12-29 09:28 发表
感谢楼上的建议啊。:em05:

自旋,我后来发现最主要的原因是有一个马达被撞得歪了。没有完全垂直于四轴,所以产生了一个侧向的力。不过目前最最麻烦的还是漂移问题,现在的飘移程度太大了。我看过别人用同样电调, ...


这个微波的大约就是10多20块一个的样子,因为是工业通用器件所以很便宜。
HB100微波移动传感器:
HB100 (移动微波探测模块)应用多普勒现象感测移动的X-波段微波传感器,广泛应用于防盗,自动感应门,自动感应灯,交通测速,智能化控制,医疗生命探测等领域。


技术参数

发射:
1发射频率 :                       10.525 GHz
2频率设置精度 :                   3MHz
3输出功率(最小):                   13dBm EIRP
4工作电压 :                       5V±0.25V
5工作电流(CW):                    60mA max., 37mA typical
6谐波发射:                        <-10dBm
7脉冲工作模式:
8平均电流 (5%DC) :                2mA typ.
9脉冲宽度(Min.):                   5uSec
10负载循环(Min.):                    1%
接收:
1灵敏度(10dB S/N ratio)3Hz至80Hz 带宽:   -86dBm
3Hz至80Hz带宽杂波                   10uV
2天线增益:                             8dBi
3垂直面3dB波束宽度:                   36度
4水平面 3dB 波束宽度:                  72度
5重量:                                 8 克
6规格:                               37×45×8mm




你那个微型压电陀螺装了3个,似乎理论上不能实现3轴稳定。 因为加上滚转,实际有6个轴。那个简易陀螺好像只能检测平移不能检测旋转?

这个基于积分算法的稳定首先要求初始数据可靠,但在那么强烈的振动下很怀疑陀螺传来的数据能有多可信,在加上本身精度就不佳。我想总的精度就很难令人满意了。
另外你应该是把陀螺仪装在中心吧? 这样的话,即使外侧桨有很大起伏的时候,实际中心位置变化很小,相对振动来说,信号小得陀螺基本难以反应。我想是不是装到最外面比较好?虽然看起来振动更大了,但空间位置变动幅度比振动(应该是高频的容易消除)大得多,说不定会有更好的效果?
这个意思是装4套。。。外部稳定了,中心自然稳定了。


不过我还是比较赞成用光学法来实现空间位置的稳定。
这个方法响应速度极快,而且相对位置越近的时候,分辨率越高(陀螺则和距离无关)。也就是越接近障碍物,它反应会越灵敏。对那种机械振动则应该是不敏感的。因为它是基于外部参照的,每次位置数据都自动重新校正,不会有积分算法检测加速度的那些问题。

欢迎继续阅读楼主其他信息

622
 楼主| 发表于 2008-12-29 20:29 | 只看该作者
感谢你的资料。

那个陀螺仪就是用来检测旋转的,而加速度计是可以用来检测平移时产生的加速度,所以3个陀螺仪就可以实现3轴稳定平衡了。
正因为陀螺仪检测的是角速度,所以装的位置越距离中心进,检测到的转动越大,所以我才把他装到四轴正中心。
震动目前看起来还是不错的,因为有好几层的橡胶减震,所以马达转动产生的震动没有影响到陀螺仪。这个是实际测试过的。

光学定位目前看起来能够实现的速度是个大问题,加上图像识别的时间,恐怕难做到快速平衡的要求。

目前四轴采用的3轴陀螺仪/3轴加速度计的配置应该算是经典配置了,已经有很多成功案例了。

[ 本帖最后由 c_nmusic 于 2008-12-29 20:32 编辑 ]
623
发表于 2008-12-29 22:50 | 只看该作者
最差的光学鼠标芯片的对外输出的刷新频率是40HZ(这种好像现在不生产了),好一点的是90HZ,还有更高的。。。内部采样频率是1500HZ应该能满足使用了吧?
624
 楼主| 发表于 2008-12-30 09:16 | 只看该作者
问题并不是输出的刷新率,而是探测范围。

目前的光电鼠标芯片上的传感器面积都很小,一般都是20X20像素的。即便配合上长焦距的镜头,类似淘宝上手指鼠标,对移动的检测距离也不会很远。估计距离不会超过2米吧。而四轴如果在空旷地方起飞,随随便便四周距离参照物的范围就可以超过2米,这样芯片就无法识别了。

所以如果要用光学检测的话,还是需要专门的传感器芯片。但这样的话就需要快速的DSP,而且即使这样识别速度能达到多快也是一个问题。
625
 楼主| 发表于 2008-12-31 14:43 | 只看该作者
目前看起来,四轴的平衡算法只剩下一种了。
那就是对陀螺仪数据进行积分,然后实现类似锁尾的控制方式。不光阻止四轴的一侧下沉或上浮,还要负责将这个轴恢复到初始位置。

最不喜欢的就是积分,因为非常容易把错误的数据给放大。但看起来目前没有别的方法了。
626
 楼主| 发表于 2009-1-6 21:57 | 只看该作者
最近一直在研究无刷电调。通过研究UAVP的代码,发现老外只用简单的PID对陀螺仪数据进行处理就可以达到稳定的效果。于是想也许是商品无刷电调的处理方法有问题,是不是内置了一个PID控制器造成修正姿态的延迟。

参考老外的电调原理图,自己画了一个电调板。顺便也画了一个电源板,这样可以做到接双电池,可以输出给10路电调供电。同时加了M8,串口和一个气压传感器。还有2组I2C接口,每组都可以接出10多个I2C设备。这样以后就不用把电源线焊出5、6个头了。

电路板已经送去作了,估计要1星期。这几天继续研究算法。现在发现利用卡尔曼滤波后的倾角信息反推出陀螺仪的数据效果很好。卡尔曼滤波的结果可以一直进行积分,都不会出现问题。甚至陀螺仪温飘引起的误差都可以被自动消除掉。可以这么说,加了40块的加速度传感器后,配合上卡尔曼滤波。50块的ENC-03陀螺仪的性能可以达到300块的AD公司的陀螺仪了。:em15:

刚才仔细测量了一下各个部分的处理时间。目前卡尔曼滤波的计算速度是2ms一次,500Hz。平衡算法的处理时间是10ms一次,100Hz。SD卡数据记录比较慢了,因为访问SD卡再加上传输数据比较耗时,17Hz,大约58ms。按理说这个速度对于平衡这个四轴来说应该足够了。电调的更新速度现在提高了3倍,经过测试新西达的电调可以接受4ms或者更短的PPM脉冲而不会出问题。

目前的问题就是对积分后的数据做PID所引起的震荡,按理说这个积分结果已经包含了速度信息,当积分接近0时,表明马达转速应该调整到稳定状态。可实际情况是马达虽然已经基本消除修正动作了,但四轴本身由于惯性还在往修正方向过度地运动。于是造成反向数据开始继续积分。一个震荡由此产生,而且越来越厉害。:em17:

[ 本帖最后由 c_nmusic 于 2009-1-6 22:03 编辑 ]
627
发表于 2009-1-8 14:48 | 只看该作者
LZ太牛啦``进度怎么样啦?
628
 楼主| 发表于 2009-1-8 17:34 | 只看该作者
今天试飞了一下,有些比较厉害的抖动。不过我已经把刷新频率提高到差不多250Hz了,应该快接近成功了吧。

我们的口号是:就算商品电调里有PID,我们也要用极快的频率让他P不出。:em15:

[ 本帖最后由 c_nmusic 于 2009-1-8 17:41 编辑 ]
629
 楼主| 发表于 2009-1-11 19:28 | 只看该作者
终于开始能稳定了,居然是意想不到的问题。

以前的陀螺仪/加速度计的板子我通过橡胶圈固定到底板上,结果不管使用什么算法,都无法飞稳定。老外的直接对陀螺仪做PID的方法更是不行了。前几天调试卡尔曼滤波的问题,顺便调整安装位置,把陀螺仪的板子上移到第二层,通过4个螺丝“悬挂”起来,结果以前不行的算法一下子好用了。再把安装位置还原回去就又不好使了。

我估计可能是2层间的塑料柱和玻纤板的自身震动的引起的,造成陀螺仪的数据无法准确反映出四轴的实际情况。

真是做梦也想不到的问题啊,看起来这个才是真正核心的问题,速度只是其次。

新西达的好赢兼容的电调性能还不错,目前的波形达到187Hz,居然没有任何问题。这个频率辉圣9g舵机都受不了了呢。
630
发表于 2009-1-11 23:29 | 只看该作者
精神上支持lz 等着看最终的成果 lz加油
631
 楼主| 发表于 2009-1-12 16:56 | 只看该作者
今天几次试飞都还是不错的,特别是刚才调整了锁尾PID参数后的那次,飞行非常平稳,直到落地都没有旋转。

但问题最大的漂移还是存在,看老外的代码,都有利用加速度计进行补偿。不过有意思的是老外都没有复杂的诸如卡尔曼滤波之类的东西,都是简单的求和、平均,外加一点点乘除移位等运算。看来老外也认同简单的就是最好的。我利用卡尔曼滤波几次尝试抑制漂移效果都不好,不是开始震荡就是越飘越厉害。:em17:

现在的X轴,Y轴以及锁尾都是只对陀螺仪的数据做了P运算,那个参数刚好是100:em15: 。看了一下刚才的飞行数据,漂移的时候机身的倾斜还是很明显的,加速度计的X轴和Y轴可以看到明显的左飘为正,右飘为负的数值。

目前为了避免温飘,每次起飞前都自动重新校准一遍陀螺仪参数。可惜电池就没办法了,室外0度的情况下我的20C,2200mAh的电池也就飞几分钟就没电了。

目前的姿态调整频率稳定在100Hz左右,在这个速度下,我看只有P就挺不错的了,加上I后反而会引起震动。
632
 楼主| 发表于 2009-1-13 12:11 | 只看该作者
冬天在外面试飞,感觉不是很好。外面0度左右,电池很快就没电了。

刚才接上一个50A的电流表,实际测了一下四轴的电流消耗。11.1V,3S,20C,2200mAh电池,起飞时电流12A左右,90%油门20A左右。电流没有超过电池的安全放电要求。

看来就是温度的影响,刚冲好电的电池飞3分钟就没电了。:em17:

也不能说完全没电,就是飞3分钟后再飞电池电压下降非常快,然后接收机对电压波动比较敏感,造成收到的油门数据不正确,然后就停转了。
再飞的话,有一个电调就要重起了。

[ 本帖最后由 c_nmusic 于 2009-1-13 12:14 编辑 ]
633
发表于 2009-1-13 20:34 | 只看该作者
等待楼主成功视频。。。。:em24:
634
发表于 2009-1-14 02:22 | 只看该作者
:em26: :em26: 楼主这个搞好了后打算研究什么了?
635
 楼主| 发表于 2009-1-14 09:10 | 只看该作者
等到这个四轴遥控飞行稳定了,下面准备加GPS、气压传感器等等,争取往UAV的方向发展。

以四轴作为平台有好几个优势。首先它是自己设计的,所以想加什么都可以,没有限制。另外这个四轴比较结实,禁摔,不像LAMA或者MD500那样,摔几下就要买配件。然后就是这个四轴看起来“不完全像玩具”,那出去试飞感觉能好些。:em15:
636
 楼主| 发表于 2009-1-18 19:39 | 只看该作者
总结一下目前四轴碰到的问题:
1、减震,目前的陀螺仪和加速度计通过4根长螺丝“悬挂”到机架下面,这4根螺丝和机架之间用4个橡胶圈隔离,这样整个陀螺仪模块可以稍微晃动。如果没有这4个胶圈,直接用螺母把螺丝拧住,四轴就无法飞好。震动造成陀螺仪数据变化幅度很大。

2、卡尔曼滤波。目前的结论是,我无法让卡尔曼滤波在四轴上正确地发挥作用,在大震动环境下干脆数据不对。明明该是正的倾角,非要给我负的。结果就是只要用到卡尔曼滤波的算法都是失败。

3、接头接触不良。虽然那些杜邦插头看起来插的挺紧,但如果线和板没有固定结实,四轴的震动加上灰尘会让这些插头逐渐接触不良。我的板的油门接收信号线就是这样,害我还专门买了二次变频接收结果问题依旧。

4、补偿算法。目前的平衡算法是直接用PID对陀螺仪数据进行处理,而且只用了P参数就可以飞的还不错了。以前尝试用加速度计来补偿陀螺仪中立点漂移造成的影响,结果发现加速度计被震动干扰的非常厉害,机身即使倾斜严重也无法从加速度计的数据里看出来。现在不用这些补偿了,连积分也没用。只要四轴重心合适,是可以在空中自动恢复平衡的。前提是空间足够大。

5、ENC-03陀螺仪。便宜的东西就是质量一般。现在是冬天,外界温度很低,陀螺仪拿出去过一段时间就会由于温飘造成中立点变化。这还好说,我现在每次起飞前都重新定一下陀螺仪中立点。关键的问题就是如果机身受到冲击,比如掉下来。陀螺仪的数据一下子会变化很大,而有时候这个数值是不稳定的,好像陀螺仪那里被“卡住”了。如果以这个数据作为中立点,后面的数据变化会非常突然,完全不能表达实际的角度。目前我的Z轴陀螺仪就有这个问题,我的解决方法是——那起来拍几下,然后陀螺仪就老实了。

6、电池。同样的算法,同样的参数,针对刚充满电的电池和电不足的电池表现出来的飞行效果完全不一样。这是今天中午刚刚发现的。两者差异22%。如果不针对充满电的电池降低P参数就无法飞稳。

[ 本帖最后由 c_nmusic 于 2009-1-18 19:53 编辑 ]
637
发表于 2009-1-21 07:50 | 只看该作者
真复杂啊!
638
发表于 2009-1-21 16:05 | 只看该作者
花几个小时看完这个帖,学到不少东西。希望楼主早日成功!
639
发表于 2009-1-22 00:29 | 只看该作者
花了三天看完了
这么好得,补顶对不起我三天得网费啊
楼主加油!~~
640
发表于 2009-1-24 09:48 | 只看该作者
花了三天看完了
学了不少知识,楼主加油!~~
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /2 下一条

快速回复 返回顶部 返回列表