极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: 小学徒

Arduino平衡小车——开始不断更新

[复制链接]
发表于 2017-8-24 13:34:03 | 显示全部楼层
小学徒 发表于 2017-8-24 02:04
首先你这个问题很模糊。
应该这样理解:
AB相:可以这样用,A相接2中断脚,B相接任意引脚,,比如接4 ...

不知道lz能不能分享一下源码,我现在调车遇到一个瓶颈,没接电机之前mpu6050跑得好好的,但接上电机后跑了一会就不动了,三四天都没解决这个BUG,后面的PID调试都进行不下去了。。。。对了,lz有什么PID的调试经验吗,应该怎么调
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-24 16:28:57 | 显示全部楼层
星空为我而闪耀 发表于 2017-8-24 13:34
不知道lz能不能分享一下源码,我现在调车遇到一个瓶颈,没接电机之前mpu6050跑得好好的,但接上电机后跑 ...

lz是什么意思?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-24 16:30:08 | 显示全部楼层
星空为我而闪耀 发表于 2017-8-24 13:27
有点不是很理解lz的代码,粗略看了一下,其实lz只用到了单相,那还有一相的作用是什么,我在网上找到的通 ...

等我继续更新 吧
回复 支持 反对

使用道具 举报

发表于 2017-8-25 16:33:31 | 显示全部楼层

楼主的简写。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-25 20:40:03 | 显示全部楼层

哈哈  长见识了
回复 支持 反对

使用道具 举报

发表于 2017-8-28 22:16:52 | 显示全部楼层
还是发出来,别走下水道了,吧这贴搞红火,玩的肯定不少
回复 支持 反对

使用道具 举报

发表于 2017-8-30 10:48:39 | 显示全部楼层
http://www.geek-workshop.com/for ... mp;page=1#pid134594
楼主能帮我看看是什么问题吗
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-8-31 22:44:42 | 显示全部楼层
星空为我而闪耀 发表于 2017-8-30 10:48
http://www.geek-workshop.com/forum.php?mod=viewthread&tid=30778&page=1#pid134594
楼主能帮我看看是什 ...

我大概看了一下你的LOOP里面的内容,建议LOOP里面不要放太多运行的内容,
比如读取角度、卡尔曼滤波、PWM计算都应放在定时中断里运行。
回复 支持 反对

使用道具 举报

发表于 2017-9-1 10:39:24 | 显示全部楼层
你这也叫玩功放,这么简单,没事了可以交流,我玩电子管的多
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-9-3 13:25:55 | 显示全部楼层
太行摄狼 发表于 2017-9-1 10:39
你这也叫玩功放,这么简单,没事了可以交流,我玩电子管的多

哈哈,,,
回复 支持 反对

使用道具 举报

发表于 2017-9-6 16:07:53 | 显示全部楼层
本帖最后由 野子yz 于 2017-9-6 23:27 编辑

      有用到PID调节吗?目前处于学习中,了解了对角度和角速度的数据处理,不仅仅可以使用卡尔曼滤波,其他的方法也可以处理数据,但是对于PID调节平衡这一块,还不是太懂,或者是还有其他方法可以调节,可以请楼主说明解释一下吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-9-7 22:37:22 | 显示全部楼层
本帖最后由 小学徒 于 2017-9-7 23:52 编辑
野子yz 发表于 2017-9-6 16:07
有用到PID调节吗?目前处于学习中,了解了对角度和角速度的数据处理,不仅仅可以使用卡尔曼滤波,其 ...


用到PID,但平衡车里面的PID没有那么贴近PID原型,建议去理解一下温控调节PID。
平衡车里有两个PWM环节组成:分别为直立环和速度环
        直立环用PD
        速度环用PI       
  1.直立环:直立环的PWM由MPU6050得来,即PWM_zl = 角度 乘于一个比例系数+角速度乘于一个D系数。
                                                          例如:  Pwm_angle=36*bias+1.7*angle_dot;  
  2.速度环:速度环的PWM由测速经过一些运算得来,即PWM_sp =速度乘于一个比例系数 + 速度积分得到的位移乘于一个积分系数。     
                                                          例如:Pwm_speed=vKP*Speed+vKI*Position;//速度和位移环节控制      
                                                          Pwm=Pwm_angle+Pwm_speed;//总的PWM   
调节直立环的时候,先屏蔽掉其它环节,1.比如角度调试: Pwm= 36*bias;//把小车往一边方向倾斜,车轮有没有向那边转,正常的话应该是车轮向倾斜的那边倒,若是反过来转,只需要在36前面加个负号即可,下面的极性方向调节亦是如此。。。
                                                                2.接下来是角速度调节:Pwm= 1.7*angle_dot;//上电后正常时车轮不转,当把小车猛的向一边倾斜的时候车轮才会向那边转动,若反向则在1.7前添个负号即可。从这个现象就可以稍微理解到“微分具有超前作用”这句话 ,即 当小车稍向一边倾斜时,车轮就会同向转动,进而 避免了小车继续倒下去 的趋势。。。。。
                                                              3.直立环总调试:Pwm = 36*bias+1.7*angle_dot;  
     这时候已经有了角度和角速度这两个参数的参与控制,若你的小车系统比较灵敏,比如电机反应比较快速,再加上36 和1.7 这两个系数调的差不多,那你的小车已经足够可以站立起来了,只是它站的不会太久或者不稳罢了!这时候要想站得稳,用手拨动它都不倒,那就得加入速度环了!
        对于速度环更详细的说明,等下次更新。。。准备熄灯断网了。                 
回复 支持 反对

使用道具 举报

发表于 2017-9-8 16:07:37 | 显示全部楼层
本帖最后由 野子yz 于 2017-9-8 16:09 编辑
小学徒 发表于 2017-9-7 22:37
用到PID,但平衡车里面的PID没有那么贴近PID原型,建议去理解一下温控调节PID。
平衡车里有两个PWM环 ...


非常感谢你的回复,收获很大,可以发一份资料吗?关于MPU等一些代码的资料
邮箱 yuanliangchn@163.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-9-8 21:46:34 | 显示全部楼层
野子yz 发表于 2017-9-8 16:07
非常感谢你的回复,收获很大,可以发一份资料吗?关于MPU等一些代码的资料
邮箱

帖子 开头已经有MPU6050的程序
回复 支持 反对

使用道具 举报

发表于 2018-1-3 00:23:55 | 显示全部楼层
- -图片显示不了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2020-7-8 12:50 , Processed in 0.051024 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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