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

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

求助KK中的“陀螺仪”部分

[复制链接]
跳转到指定楼层
楼主
发表于 2013-6-18 21:52 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
看着kk中的陀螺仪信号读取与处理,感觉有点糊涂,有没有正在研究这些部分的人哦,可以一起讨论讨论啊~~~~

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

16
 楼主| 发表于 2013-7-29 15:19 | 只看该作者
dailing 发表于 2013-7-25 09:33
其次,其实IIC速率可以很高的,不一定是标准的那个时间长度,现在很多器件的通讯波特率远远高于标准;
我 ...

谢谢你哦~~~~你的回答对我很有用
15
发表于 2013-7-25 09:33 | 只看该作者
本帖最后由 dailing 于 2013-7-25 09:36 编辑
jeremyshw 发表于 2013-7-23 19:51
#define SMPLRT_DIV      0x19    //陀螺仪采样率,典型值:0x07(125Hz)
这条语句不是陀螺仪采样频率最高 ...

其次,其实IIC速率可以很高的,不一定是标准的那个时间长度,现在很多器件的通讯波特率远远高于标准;
我也用的MPU6050,其实延时可以很短,我的延时就一个空函数,
这样的话IIC速率可以很高;
你单片机50MHz,采样率到1KHz应该没问题,但是解算就看你怎么写代码了。
你可以试下,如果IIC读出来的数据总有几个是连着的并且相同,就说明采样率不够了;
不过到500Hz是肯定没问题的

MPU速率设置见楼上
14
发表于 2013-7-25 09:22 | 只看该作者

这是MPU 6050 寄存器映射截图:
采样率的计算公式:
                 OutPut Rate   
采样率=----------------------
                 1+SMPLRT_DIV

你直接把SMPLRT_DIV 减小就行了,
看这个应该是用的1KHz的Output Rate,
所以采样率最高可以到1KHz,把SMPLRT_DIV 设为0;


就陀螺仪来说,如果使能那个DLPF,还可以提高到8KHz

13
 楼主| 发表于 2013-7-23 19:51 | 只看该作者
dailing 发表于 2013-7-22 22:45
确实有点低啊,我用的是Freescal 的单片机 MC9S系列,解算频率 为500Hz,我也用的MPU6050,为什么提不高呢 ...

#define SMPLRT_DIV      0x19    //陀螺仪采样率,典型值:0x07(125Hz)
这条语句不是陀螺仪采样频率最高只有125Hz吗?我想陀螺仪的采样频率得比姿态计算的频率高一些吧,不然角度计算的实时性可能会出错吧。。。

我的单片机有50MHz的,但是没有I2C通信,所以自己写了一个通信。延迟有点大,一条语句最短也得需要10us时间,导致整个通信过程时间有点长。所以现在提高到了100Hz,继续提高感觉有点困难。。。

12
发表于 2013-7-23 06:04 | 只看该作者
群友说KK就像没调好的无副翼直机手感,期待中,后天我的也就到了,希望不要秒炸
11
发表于 2013-7-22 22:45 | 只看该作者
jeremyshw 发表于 2013-7-20 22:46
想请教您一个问题,我的四旋翼计算姿态的频率是20Hz,然后控制姿态的频率也是20Hz,发现滞后有点严重。结 ...

确实有点低啊,我用的是Freescal 的单片机 MC9S系列,解算频率 为500Hz,我也用的MPU6050,为什么提不高呢
MPU6050加了滤波最高好像700多赫兹的,
难道是你单片机不够?

10
 楼主| 发表于 2013-7-20 22:46 | 只看该作者
dailing 发表于 2013-7-10 23:12
确实没有角度,KK用的是PD闭环控制,没有搞角速度积分,前几天实测过,KK只是在各个轴上实现稳定,不动遥控 ...

想请教您一个问题,我的四旋翼计算姿态的频率是20Hz,然后控制姿态的频率也是20Hz,发现滞后有点严重。结果怎么调参数都调不出来。。。
这个是不是一个问题呢?频率有点低,而且比较麻烦的问题是姿态计算的频率已经提不高了,用的是MPU6050.。。。


9
发表于 2013-7-14 16:07 | 只看该作者
dailing 发表于 2013-7-14 14:33
积分确实是会有漂移,
但是如果不做自稳的话,是可以用积分的,
可以考虑用控做角度调节,就是说把控的 ...


但是这样。。不太可行啊。
8
发表于 2013-7-14 14:33 | 只看该作者
kingofpop 发表于 2013-7-14 10:12
小白问个问题,假如说kk有角度的积分了,时间长了陀螺仪漂移怎么办?kk没有加速度计去修正。

所以应该 ...

积分确实是会有漂移,
但是如果不做自稳的话,是可以用积分的,
可以考虑用控做角度调节,就是说把控的信号加在积分里面,或者对遥控的信号也进行积分,两者相比较,得出目标姿态,进行控制
说的简单点就是目标角姿态不是0度,而是让遥控调节目标姿态
这样也可以实现KK的效果,并且更精确,

7
发表于 2013-7-14 10:14 | 只看该作者
KK玩的就是操控技术了,有神人就是用KK飞暴力,太牛了
6
发表于 2013-7-14 10:12 | 只看该作者
dailing 发表于 2013-7-10 23:12
确实没有角度,KK用的是PD闭环控制,没有搞角速度积分,前几天实测过,KK只是在各个轴上实现稳定,不动遥控 ...

小白问个问题,假如说kk有角度的积分了,时间长了陀螺仪漂移怎么办?kk没有加速度计去修正。

所以应该是不能加?


5
 楼主| 发表于 2013-7-14 10:04 | 只看该作者
dailing 发表于 2013-7-10 23:12
确实没有角度,KK用的是PD闭环控制,没有搞角速度积分,前几天实测过,KK只是在各个轴上实现稳定,不动遥控 ...

恩,谢谢热心解答~~~
不用kk里面的了,用陀螺仪积分测角度了~~~

4
发表于 2013-7-10 23:12 | 只看该作者
确实没有角度,KK用的是PD闭环控制,没有搞角速度积分,前几天实测过,KK只是在各个轴上实现稳定,不动遥控,可以慢慢把四旋翼在任意方向转任意角度,也就是说,由于某些原因偏过一些角度会无法修正。
我自己正在写飞控,基本已经完成了,个人觉得无论是否搞悬停,有角速度积分还是比较好的,我目前没加悬停,因为加速度和角速度叠加算法上出现些瓶颈,角速度积分的漂移始终难以解决,如果以角速度积分做PD闭环控制,效果会比不用积分的好很多,在外部扰动下能很快恢复原始姿态,而kk没加积分的会很麻烦,它只提供了抗拒姿态改变的反向扭矩,却无法恢复原始状态,必须手动调整。
不过KK好像是用了平滑滤波的,而这个又有另外一个问题:会出现少许延迟。

不过总的来说,KK受硬件限制太过严重,楼主要做飞控的话KK算法只能做参考而已,KK是在接收机PWM信号间隙进行采样与计算,时间,空间限制过大,无法实现相对复杂的算法。因此他们力求使用的尽量简单的方法。
3
发表于 2013-7-10 16:45 | 只看该作者
感觉里面的陀螺没有计算角度,只是用到了陀螺的变化量,经过运算后,加载到电机的输出

沙发
发表于 2013-6-18 23:39 | 只看该作者
你先说说吧
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

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

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