智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 7583|回复: 31
打印 上一主题 下一主题

[转]智能车制作全过程(飞思卡尔---舵机篇)

  [复制链接]

1

主题

26

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
324
威望
256
贡献
34
兑换币
0
注册时间
2010-4-1
在线时间
17 小时
跳转到指定楼层
1#
发表于 2010-4-15 23:12:14 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

智能车制作全过程(飞思卡尔---舵机篇)

技术分类: 工业电子  | 2008-11-28
作者:king_of_wind: EDN China

  智能车的制作中,看经验来说,舵机的控制是个关键.相比驱动电机的调速,舵机的控制对于智能车的整体速度来说要重要的多.

  PID算法是个经典的算法,一定要将舵机的PID调好,这样来说即使不进行驱动电机的调速(匀速),也能跑出一个很好的成绩.

  机械方面:

  从我们的测试上来看,舵机的力矩比较大,完全足以驱动前轮的转向.因此舵机的相应速度就成了关键.怎么增加舵机的响应速度呢?更改舵机的电路?不行,组委会不允许.一个非常有效的办法是更改舵机连接件的长度.我们来看看示意图:

  从上图我们能看到,当舵机转动时,左右轮子就发生偏转.很明显,连接件长度增加,就会使舵机转动更小的转角而达到同样的效果.舵机的特点是转动一定的角度需要一定的时间.不如说(只是比喻,没有数据),舵机转动10度需要2ms,那么要使轮子转动同样的角度,增长连接件后就只需要转动5度,那么时间是1ms,就能反应更快了.据经验,这个舵机的连接件还有必要修改.大约增长0.5倍~2倍.

  在今年中,有人使用了两个舵机分别控制两个轮子.想法很好.但今年不允许使用了.

  接下来就是软件上面的问题了.

  这里的软件问题不单单是软件上的问题,因为我们要牵涉到传感器的布局问题.其实,没有人说自己的传感器布局是最好的,但是肯定有最适合你的算法的.比如说,常规的传感器布局是如下图:

                       


  这里好像说到了传感器,我们只是略微的一提.上图只是个示意图,意思就是在中心的地方传感器比较的密集,在两边的地方传感器比较的稀疏.这样做是有好处的,大家看车辆在行驶到转弯处的情况:

点击看原图

  相信看到这里,大家应该是一目了然了,在转弯的时候,车是偏离跑道的,所以两边比较稀疏还是比较科学的,关于这个,我们将在传感器中在仔细讨论。

  在说到接下来的舵机的控制问题,方法比较的多,有人是根据传感器的状态,运用查表法差出舵机应该的转角,这个做法简单,而且具有较好的滤波"效果",能够将错误的传感器状态滤掉;还有人根据计算出来的传感器的中心点(比如第四个和第五个传感器检测到黑线,中心点就是4.5),计算出舵机需要的转角,这个做法也比较的简单,但是必须有一个滤波的过程,必须要滤掉错误的传感器状态.比如说:现在传感器第四个,第五个和第11个检测到了黑线,显然第11个应该是个传感器检测错误.应该把它滤掉.关于这个如何滤波,我们待会在后面将进行讨论.还有人的做法就是采用PID算法,这个方法比较的好,其实也不是很难,就是PID参数整定的时候有些麻烦.

  大家可以自己选择喜欢的方法.

  关于滤波,有些许的方法:

  1.平均值排序法.

  这个方法大家肯定一听就知道是怎么回事.就是不急于执行,先多次检测被测传感器,累加,求平均值.这个方法不错,特别在单片机中.比如:你如果连续采集8次,累加,最后你只要右移三位(value=value>>3;)就是value=value/8的结果.毕竟,在单片机中,右移比除法要快嘛.

  2.中间值算法.

  这个算法也简单,顾名思义,就是取不大不小的中间的值.这个算法就需要把几次采集的值排序,然后使用中间的那个值.

  3.递推滤波.

  这个滤波方法比较的受认可,但是执行起来也有风险所在.先说这个算法,就是根据当前值(传感器的中心点所在值),推算接下来的传感器中心点的量,如果发现前后变化剧烈,就视为干扰因素,忽略.这个算法看起来比较的好.但是风险就在于:如果出现了错误,并且错误的中心点成为的当前值,那么以错误的中心点为基准,正确的中心点就成了干扰.这样就会出现极端情况.为了避免这个情况,我们应该有一个检查的模块,检查当前的中心点是否有效.这个检查,我们也许可以结合前面两种方法,在一定时间对中心点的有效性进行检查.

  4.限幅滤波.

  这个在舵机的控制中,特别是使用计算的方法获得PWM信号占空比的(用来控制舵机的转角),更是尤为重要.这个滤波的思路就是规定一个最大值和一个最小值,当计算出的值低于最小值时,令其等于最小值;大于最大值时,令其等于最大值.

10

主题

83

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2604
威望
1500
贡献
760
兑换币
525
注册时间
2011-9-7
在线时间
172 小时
32#
发表于 2012-2-24 14:05:30 | 只看该作者
好,不过不太懂。
回复 支持 反对

使用道具 举报

3

主题

62

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
485
威望
335
贡献
70
兑换币
4
注册时间
2011-10-23
在线时间
40 小时
31#
发表于 2012-2-16 11:54:56 | 只看该作者
不错
回复 支持 反对

使用道具 举报

1

主题

28

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
400
QQ
威望
254
贡献
50
兑换币
0
注册时间
2011-4-10
在线时间
48 小时
30#
发表于 2011-5-5 19:18:54 | 只看该作者
谢谢
回复 支持 反对

使用道具 举报

3

主题

179

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1119
QQ
威望
420
贡献
661
兑换币
2
注册时间
2010-10-30
在线时间
19 小时
29#
发表于 2011-4-26 17:31:32 | 只看该作者
挺好
回复 支持 反对

使用道具 举报

4

主题

142

帖子

0

精华

高级会员

乘风破浪

Rank: 4

积分
656
QQ
威望
436
贡献
208
兑换币
0
注册时间
2010-12-26
在线时间
6 小时
28#
发表于 2011-4-17 13:39:32 | 只看该作者
谢谢了!
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
264
QQ
威望
234
贡献
20
兑换币
0
注册时间
2011-3-26
在线时间
5 小时
27#
发表于 2011-4-16 12:45:14 | 只看该作者
互相学习咯!!
回复 支持 反对

使用道具 举报

4

主题

39

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
396
QQ
威望
301
贡献
63
兑换币
0
注册时间
2011-3-3
在线时间
16 小时
26#
发表于 2011-4-16 11:30:45 | 只看该作者
谢谢了
回复 支持 反对

使用道具 举报

7

主题

261

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
4370

优秀会员奖章

威望
1034
贡献
3110
兑换币
232
注册时间
2010-10-3
在线时间
113 小时
25#
发表于 2011-3-22 00:28:55 | 只看该作者
没有图啊
回复 支持 反对

使用道具 举报

4

主题

108

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1026
QQ
威望
345
贡献
611
兑换币
4
注册时间
2010-10-29
在线时间
35 小时
24#
发表于 2010-11-23 16:58:09 | 只看该作者
还是不懂
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-21 03:22 , Processed in 0.134066 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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