这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 请牛人进来解答问题哈!!!

共8条 1/1 1 跳转至

请牛人进来解答问题哈!!!

菜鸟
2015-07-20 12:25:18     打赏

1,关于小车的的调试问题:

1)我把转向PD与速度PI程序都屏蔽了,直留下直立PD,为什么怎么调都无法直立静止不动?我是想先把小车PD调到静止不动保持直立,然后再加入速度PI控制,最后在加入转向PD,一步一步的完成,从而学习PID算法的调试与控制;

2)试数:

PID调试的参数数值有什么好的方法或者上位机软件吗?不能一个一个的使用笨办法来试数吧

 

2,上位机波形图软件该怎么看?

1)角度-红色线,需要看哪个数值才是程序里需要的数值?是看X还是Y数据?看波形图是不是与直立PD这个函数角度值有关,默认是0;

2)用这个波形软件对小车调试起什么作用?主要是看哪些参数,这个软件也是我指的困惑

 

3,现在的目的就是先学会调试小车达到平衡静止不动,无论手怎么推都可以回到原先的位置保持不动,然后再做后续的实验,问题:想获取智能手机的APP通过蓝牙发送到小车蓝牙模块进行接收,手机的APP参数指令数据该怎么获得?我的是苹果4S,没有APP说明与代码

 

4,这些都做好了会开个“开发进度”帖子实时更行我的学习进度,现在还不行,不敢出丑;




关键词: 调试     PID    

院士
2015-07-20 14:19:36     打赏
2楼
耐心等待回复

菜鸟
2015-07-20 16:33:57     打赏
3楼

2(1) 关于上位机的波形问题。

你可以发送任何想观测的波形到上位机。

如何发送六轴数据,请参考这里http://forum.eepw.com.cn/thread/274941/1


菜鸟
2015-07-20 18:15:54     打赏
4楼
帮顶

菜鸟
2015-07-20 21:46:38     打赏
5楼
5,想用小车蓝牙与笔记本蓝牙连接调试小车PID参数,还可以查看上位机的波形,为什么串口1改为串口3,串口3波特率也该为115200,修改完还是不行?用蓝牙调试是为了方便,用线麻烦还有限制

助工
2015-07-20 23:41:49     打赏
6楼

1.http://forum.eepw.com.cn/thread/274400/1

2.我一直觉得如果理解了pid控制器在系统中的作用,任何参数整定都可以非常快的完成

3.没有苹果手机app

5.那个蓝牙默认是9600波特率


菜鸟
2015-07-20 23:42:34     打赏
7楼
第一个问题,我个人的理解是这样的,

    我自己也曾经做过这个小车,而且是从最基础的 PID 开始调试的。
建议是这样,在关闭速度闭环、转弯控制的情况下将 P I  D 都设置为0 。
先调P ,让小车站起来,不过一推就倒,然后调 D ,纯站立的话,PD 就可以很好了,

(其实也就是 站立角度我们认为是0.当偏离角度大于10的时候,我们启动PID 控制,对PWM 加一个偏离角的加速度,也即是PWM=K*角度,偏离的角度越大,那么小车需要的加速度越大,如果小车在-10~10 之间的时候,就不管它,PWM=0;至于,PD  差不多就是PWM=K*角度+D*角速度) 一般的话,D 是小于1)

关于参数整定,和调试,

    我只能说,如果你自己的技术达到,可以通过类似于上位机发送P I  D 的值给下位机,那么你就不要一直不停烧写程序,可以通过上位机发送的方式,将参数调整好,否则就只能用最笨的方法,调整一次值,编译一次,下载一次,看效果,然后在调整--编译--下载--看效果,知道您满意为止。 据大牛们说有一款调试四轴的上位机可以完成该效果,
这里就发出来,供大家参考咯,MWC上位机,我还不会哈,哪位大神有教程,顺便分享下咯,嘿嘿,让我等平民也用上大气的上位机,那酸爽,嘿嘿。(http://share.eepw.com.cn/share/download/id/310459)


对于第二个,刚刚小弟参照 官方给的教程,看了下,貌似Y 是我们想要的,X也是我们想要的。  
    对于Y ,大致意思就是您想看到的值,中间的图像可以很直观的表现出它的走势,便于您的分析,右上角的值,可以很清晰的展现出它当下的具体数值。
    对于X,暂时没想到有啥用,不过既然出来了,感觉应该是跟时间,周期这块相关的,或者就是为了给Y 服务用的,(哪位大牛有更加详细的解答,望探讨。)


第三个问题,就真心爱莫能助了,要不您自己写一个苹果版本的APP 要不就换个安卓手机玩吧,嘿嘿。


至于您说的 推一把小车,它会自己回来,是因为加入了速度闭环,也就是对编码器的数据进行了读取,得到了它走过的距离,然后你再相反的方向走那么多,小车就回到了原点。


蓝牙那个是肯定可以的,不过需要楼主,你自己调试咯, 毕竟是学习板车, 自己想通了,调出来的,总是伴随一阵有一阵的成就感铺面而来,您说是吧。嘿嘿


菜鸟
2015-07-21 12:12:40     打赏
8楼

int balance(float Angle,float Gyro)   //

   float Bias;
  int balance;
  Bias=Angle+0;              //
  balance=35*Bias+Gyro*0.125;//
  return balance;
}

----------------------------------------------------------------

Bias=Angle+0;     这个应该是代表 读回6050的角度值  +/-  小车的机械值(通过上位机查看的角度值吧) 

1)这个Angle获取的是6050读回来的角度值,那么通过上位机波形看到的显示角度数值是修改 “Angle”值  还是  “ 0” 这个值?

2)“0”这个值代表的是什么机械值?

3)查看上位机波形里的角度红线这个数值有什么作用?最终要调试的是PID参数,与查看角度有什么关联?

4)Angle  与  0  个人理解:  Angle是读回来的角度值,  0 代表的是小车通过给上位机发送小车的角度红色曲线值,来修饰误差值?比如:如果上微机看到的是角度值是  -1 ,那么Angle - 1;如果是  1  ,那么Angle + 1;这样不知道是否理解的对?


共8条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]