gjhk001 发表于 2020-1-3 17:42:43

【MCU实战经验】基于STM32F103的二轮平衡车(6轴上位机 源代..

前段时间搞了个平衡车,涉及stm32F3步进电机驱动   陀螺仪mpu3050   加速度计adxl345(也可以用6轴mpu6050)无线NRF24L01
      当初最大问题是卡尔曼滤波(进行陀螺仪与加速度计的数据融合)和pid调节
      对于卡尔曼滤波,经过自己不断深究,其实也不是很复杂,核心是五大公式,涉及矩阵运算,思想是预测值 最优估计值 噪声协方差的概念,难点:一些参数选择
http://www.stmcu.org.cn/module/forum/data/attachment/forum/201404/07/b6c31d01d41c9e1714958f9c56d01d8f.png
      说下用卡尔曼滤波的出发点,陀螺仪 加速度计都可以得到角度,而陀螺仪是先得到角速度再经积分才得到角度, 陀螺仪相比加速度计短时间内动态性能好,得到角度精准,但本身有小漂移,随着时间变长,不断积分,误差会越来越大,那就需要用加速度计进行校正


       对于pid算法,里面涉及二级pid,首先要明白小车速度跟给步进电机的频率是成正比的,就把频率等效为速度
       第一个pid,角度pid,通过测角度反馈给stm32f3产生频率(速度)来进行平衡调节(即调节角度)
       第二个pid,速度pid,由于角度调节产生了速度变化,而为了不改变设定的速度,需要进行速度调节,它的反馈来自不断角度pid的结果(由于速度跟频率成正比,不需要测速反馈)
       难点:pid整定参数
http://www.stmcu.org.cn/module/forum/data/attachment/forum/201404/07/dced2f010c1ef04643993a5e26c68477.jpg
http://www.stmcu.org.cn/module/forum/data/attachment/forum/201404/07/eed39bb1a85277ac150f8872704f0a55.jpg
http://www.stmcu.org.cn/module/forum/data/attachment/forum/201404/07/a7b8f3f8fde79ff6a9df96b46007ce63.jpg**** Hidden Message *****

kunchen 发表于 2020-1-3 18:11:08

学习一下

Sonnyu 发表于 2020-7-20 09:04:23

感谢分享

woyiranshiwo3 发表于 2020-7-22 11:12:33

是有刷电机吗

woyiranshiwo3 发表于 2020-7-22 11:12:33

是有刷电机吗

fmqwh626a 发表于 2020-8-14 09:34:28

多谢分享,

as123858855 发表于 2020-8-15 21:29:38

666666666666

my21cn 发表于 2020-8-16 14:36:29

very gooooooood

harry26 发表于 2020-8-19 11:22:54

感谢分享

yinshuai 发表于 2020-12-2 15:20:20

:):):):):):):):):)
页: [1] 2 3 4 5 6
查看完整版本: 【MCU实战经验】基于STM32F103的二轮平衡车(6轴上位机 源代..