智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 3036|回复: 8
打印 上一主题 下一主题

请吉他手老师和各位大神帮忙看下光电转弯时抖动问题

[复制链接]

1

主题

13

帖子

0

精华

注册会员

Rank: 2

积分
147
威望
68
贡献
39
兑换币
44
注册时间
2013-2-19
在线时间
20 小时
跳转到指定楼层
1#
发表于 2013-2-25 12:55:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
吉他手老师和各位大神,我是线性CCD组的。现在小车可以较好的直立,目前正在调方向控制。方向控制我是采用去年电磁的思路。采用比例调节。在转弯的时候速度很慢的话可以转过去,但抖动很大,感觉就是抖过去的。我就想请问下这个什么原因呢?

29

主题

637

帖子

0

精华

常驻嘉宾

我是孤独的赛车手 车手是不需要女人的

Rank: 8Rank: 8

积分
3136
威望
1664
贡献
630
兑换币
621
注册时间
2011-4-16
在线时间
421 小时
2#
发表于 2013-2-25 13:23:18 | 只看该作者
是指震荡抖动 还是类似开关特性的抖动 你得讲清楚 第一个靠加微分负反馈 第二个你得改电机控制系数和偏置
回复 支持 反对

使用道具 举报

1

主题

13

帖子

0

精华

注册会员

Rank: 2

积分
147
威望
68
贡献
39
兑换币
44
注册时间
2013-2-19
在线时间
20 小时
3#
 楼主| 发表于 2013-2-25 13:29:58 | 只看该作者
fmadot 发表于 2013-2-25 13:23
是指震荡抖动 还是类似开关特性的抖动 你得讲清楚 第一个靠加微分负反馈 第二个你得改电机控制系数和偏置

你说的这两种抖动我不怎么区分得出来!电机控制系数是指?偏置是指死区参数么?
回复 支持 反对

使用道具 举报

6

主题

73

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1123
威望
735
贡献
170
兑换币
194
注册时间
2011-9-20
在线时间
109 小时
4#
发表于 2013-2-25 16:25:47 | 只看该作者
最好把你最后输出给电机的PWM输出程序贴出来。有可能出现速度控制以及角度控制叠加后符号为正,但是加上方向控制之后输出为负的情况。此时,如果你是两个轮子一起处理的话,会出现一个轮子不动,另一个轮子动,这样就会抖动了。所以,建议在对电机控制输出时两个轮子分开给。
回复 支持 反对

使用道具 举报

36

主题

1837

帖子

3

精华

跨届大侠

Rank: 10Rank: 10Rank: 10

积分
6375
威望
3368
贡献
1847
兑换币
2326
注册时间
2013-2-3
在线时间
580 小时
5#
发表于 2013-2-25 18:11:03 | 只看该作者
貌似吉他手老师已经潜水很久很久了。
回复 支持 反对

使用道具 举报

45

主题

171

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1704
QQ
威望
1032
贡献
200
兑换币
353
注册时间
2012-10-1
在线时间
236 小时
6#
发表于 2013-3-9 16:39:44 | 只看该作者
你好,你现在解决了没,我也是这个情况,能说说原因么
回复 支持 反对

使用道具 举报

45

主题

171

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1704
QQ
威望
1032
贡献
200
兑换币
353
注册时间
2012-10-1
在线时间
236 小时
7#
发表于 2013-3-9 16:41:24 | 只看该作者
wuzexiao 发表于 2013-2-25 16:25
最好把你最后输出给电机的PWM输出程序贴出来。有可能出现速度控制以及角度控制叠加后符号为正,但是加上方向 ...


      float fLeft, fRight;
     
      fLeft = g_fAngleControlOut-g_fSpeedControlOut-g_fDirectionControlOut;
      fRight = g_fAngleControlOut-g_fSpeedControlOut+ g_fDirectionControlOut;
      
///////////////////////////////////////////////////////////////////////////////////
/////////////////            电压死区补偿      ///////////////////////////////////
      if((fLeft > -MOTOR_OUT_DEAD_VAL) && (fLeft < 0))
      fLeft = -MOTOR_OUT_DEAD_VAL;
      else if((fLeft < MOTOR_OUT_DEAD_VAL) && (fLeft > 0))
      fLeft = MOTOR_OUT_DEAD_VAL;
      if((fRight > -MOTOR_OUT_DEAD_VAL) && (fRight < 0))
      fRight = -MOTOR_OUT_DEAD_VAL;
      else if((fRight < MOTOR_OUT_DEAD_VAL) && (fRight > 0))
      fRight = MOTOR_OUT_DEAD_VAL;
///////////////////////////////////////////////////////////////////////
      if(fLeft>4000)
      fLeft=4000;
      if(fLeft<-4000)
      fLeft=-4000;
      if(fRight>4000)
      fRight=4000;
      if(fRight<-4000)
      fRight=-4000;
      
      if(fLeft >= 0)
      {
          Left_Go((uint32_t)fLeft);
      }                               //左轮输出
      else if(fLeft < 0)
      {
          fLeft=-fLeft;
          Left_Break((uint32_t)fLeft);
      }
  
      if(fRight>=0)
      {
        
          Right_Go((uint32_t)fRight);
      } //右轮输出
      else if(fRight<0)
      {
          fRight=-fRight;
          Right_Break((uint32_t)fRight);
      }
   /*    uart_sendnumber(UART1, fRight);
       uart_sendstring(UART1,(uint
回复 支持 反对

使用道具 举报

45

主题

171

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1704
QQ
威望
1032
贡献
200
兑换币
353
注册时间
2012-10-1
在线时间
236 小时
8#
发表于 2013-3-9 16:42:46 | 只看该作者
fmadot 发表于 2013-2-25 13:23
是指震荡抖动 还是类似开关特性的抖动 你得讲清楚 第一个靠加微分负反馈 第二个你得改电机控制系数和偏置

请问什么是电机系数和偏置
回复 支持 反对

使用道具 举报

3

主题

76

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1037
威望
628
贡献
221
兑换币
206
注册时间
2012-2-6
在线时间
94 小时
毕业学校
陕西科技大学
9#
发表于 2013-3-12 19:23:13 | 只看该作者
我的也是啊,我想知道这跟陀螺仪是否安装水平有关系不
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-12-28 10:45 , Processed in 0.061210 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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