智能车制作

标题: 从mpu6050互补滤波得到PWM的最终输出 [打印本页]

作者: 共和时代    时间: 2013-9-29 09:45
标题: 从mpu6050互补滤波得到PWM的最终输出
       双轮平衡车中,我读取了mpu6050的角度值,并且通过互补滤波得到新的角度值。然后怎么得到最终输出PWM的值????新手求教导!!       网上有资料说   1、  电机输出 = Kp ×角度 + Kd ×角速度  可以得到PWM。
                  2、 先用角度转换成相应的PWM,比如PWM = 角度 * 比例 + 死区电压。然后PWM再用PD子函数去处理,也就是PwmOut = PD_calculate(PWM);然后得到所求的PwmOut,是这样吗?或者有事怎么样?求思路?





作者: 共和时代    时间: 2013-9-30 11:35
查了很久的资料。还是我自己说我的方法吧。
首先读取mpu6050的加速度与角速度。然后计算出角度。
再然后用卡尔曼滤波得到估计的角度A。
然后计算偏差E0=设定值-A;E1=E0;
然后就PWM=KP*E0+Kd*(E0-E1)+死区PWM。
然后就调Kp,Kd好啦。。
有不对的请指教哦,亲。
作者: wobuaihx    时间: 2014-6-18 20:49
我也遇到这个问题了 我现在用的是 电机输出 = Kp ×角度 + Kd ×角速度  
作者: 徐鹏    时间: 2015-1-6 16:42
电机输出 = Kp ×角度 + Kd ×加速度




欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2