智能车——三轮差速

打印 上一主题 下一主题

主题 1002|帖子 1002|积分 3006

摄像头车三轮
    在之前摄像头组都是用的4轮的车,我之前也是用四轮车练手的,厥后角逐规则出来了,变成要用三轮车了,三轮的前轮就是个摆设,任何移动转弯都要靠后边的两个轮,所以差速就尤为紧张了,之前在学校写了2套三轮的差速,但是不停没时间上赛道,(厥后放假回家买了一套赛道,结果赛道刚来就得新冠了,兜兜转转昨天才铺好赛道,元旦第一次上道,从上午10点不停搞到晚上11点,代码修修改改,删删减减,最后能跑直道和弯道。S弯道按照理论来说也是可以跑得,但是由于一共用了4个pid,以及驱动没有终极确认,所以嘛就没有太精细的调参数,大概调一调,能用就行了,否则的话,换了驱动还要重新调12个参数调起来还是很累的。
  下面说一说思绪:速度我是用了两个pid(左轮一个pid右轮一个pid,由于我这个左右轮有点误差),
  差速我用了两个pid,先用差速pid得到一个轮的速度,再把这个轮的速度和另一个轮的速度误差pid,就是让这个轮追上那个轮,然后把两个轮的速度分别进行pid,就是相当于一个串级pid。
  上一下代码
  1. void chasu_zhidao(float you_speed,float zuo_speed)//直道差速PID,让两个电机速度相等
  2. {
  3. //清零
  4.      speed_you=0;
  5.      speed_zuo=0;
  6.     float xunxian_cha_T=0;
  7.     float cha_puchang_T=0;
  8. //让电机跑起来,前边是左轮右轮,后边是速度
  9.     PID.INC_pid(&rmor_spd,you_speed);
  10.     PID.INC_pid(&lmor_spd,zuo_speed);
  11.     //得到两个轮的实际转速
  12.     speed_you=rmor_spd.act;
  13.     speed_zuo=lmor_spd.act;
  14.     temp=(float)(centerline[70]);
  15.     xunxian_cha=94-temp;//括号内的数代表中线的y坐标,根据摄像头高度进行调整100 40
  16.    xunxian_cha=kp1*xunxian_cha+ki1*xunxian_cha+kd1*(xunxian_cha-xunxian_cha);//误差的PID运算公式
  17.     lastxunxian_cha=xunxian_cha;//上一次的误差
  18.         if(xunxian_cha>0)
  19.         {
  20.             speed_you+=xunxian_cha;//右轮加速
  21.         }
  22.          if(xunxian_cha<0)
  23.         {
  24.              xunxian_cha_T=-(xunxian_cha);
  25.             speed_zuo+=xunxian_cha_T;//右轮
  26.         }
  27.     //差速PID补偿右轮速度
  28.         cha_puchang=speed_zuo-speed_you;
  29.         cha_puchang=kp2*cha_puchang+ki2*cha_puchang+kd2*(cha_puchang-last_cha_puchang);//误差的PID运算公式
  30.         last_cha_puchang=cha_puchang;//上一次的误差
  31.         if(cha_puchang>0)//左轮比右轮快
  32.         {
  33.             speed_you+=cha_puchang;
  34.         }
  35.          if(cha_puchang<0)//右轮比左轮块
  36.         {
  37.             cha_puchang_T=-(cha_puchang);
  38.             speed_zuo+=cha_puchang_T;
  39.         }
  40. }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

河曲智叟

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表