智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 11831|回复: 28
打印 上一主题 下一主题

北科大之小车技术

  [复制链接]

10

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
387
QQ
威望
289
贡献
74
兑换币
0
注册时间
2010-6-26
在线时间
12 小时
跳转到指定楼层
1#
发表于 2010-7-7 11:14:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
第三届“飞思卡尔”杯全国大学生
智能汽车竞赛
技 术 报 告
学 校:北京科技大学



- 14 -
第三届全国大学生智能汽车邀请赛技术报告
第四章、智能车控制软件设计说明
4.1光感器的路径精确识别技术
在智能车系统中,光电(激光)传感器就是整个系统的“眼睛”,其对于路径的识别在控制系统中尤为重要。
4.1.1 光电传感器路径识别状态分析
由于往届竞赛对光电传感器排布方式研究已经比较深入,传统的“一”字型排布方式在众多排布方式中效果显著,是最常用的一种排布方式。模型车也充分利用了往年的成熟的传感器技术,其排布方式如图5.1。
图4.1 模型车激光传感器一字排布图
对于我们模型车,传感器在赛道上可能的状态有:在普通的赛道处、在起点处、在十字交叉线处,分别如下图(并未列出所有的状态图),下面将分别进行分析。
图4.2激光传感器在普通赛道上
- 15 -
第三届全国大学生智能汽车邀请赛技术报告
图4.3 激光传器在起点处
图4.4 激光传感器在十字交叉线处
为了识别赛车是处于什么样状态下,用于进行赛道记忆和速度控制,对于我们的数字型激光传感器,每个传感器只有0与1 两种状态,我们分别把14路传感器标记为1到14号传感器,每个传感器又可以对应一个是否在黑线上的标志位,分别为Sen_Flag[0]到Sen_Flag[13],相应在黑线上为1,不在黑线上为0,从而通过对任一时刻传感器标志位的读取就可以知道此时模型车的状态。
为了精确地识别起跑线和十字交叉线,在程序设计时还定义了一个名为Sen_ChangeCount的变量,表示传感器状态变化(由1变为0和由0变为1)的次数。
从上面的传感器状态图中可以轻松看出,在普通赛道上出除了赛车移出赛道之外传感器变化次数都为2次,而在起跑线处模型车的传感器状态变化次数为4次,在十字交叉线时传感器状态变化次数为0次。
为了进一步把各种状态分开,在程序中还定义了变量Sen_FlagCount,用于统计所有传感器状态标志位之和,即在黑线上的传感器的数目。结合以上几个变量,就可以准确地分清各个传感器状态了。各个传感器状态如下表:
- 16 -
第三届全国大学生智能汽车邀请赛技术报告
表4.1 传感器状态判定表
模型车状态
Sen_ChangeCount
Sen_FlagCount
起跑线处
4
>=8且<=11
十字交叉线处
0
=14
在普通赛道上
未移出黑线
2
>=1且<=3
在普通赛道上
移出黑线
0
0
通过上表,就可以轻松地把模型车任一时刻的传感器状态识别出来,也为赛道记忆识别起点等提供的必要的保障。
4.1.2 光电传感器路径识别算法
路径识别算法是我们使用的是模糊算法,这种算法的优点是能够根据传感器返回的状态值,得到车的重心偏离黑线的程度,还可以通过一定的算法,计算出舵机的转向角度,并且在一定程度上具有抗拒微小干扰的能力。具体算法介绍如下: 图4.5 传感器重心取值分配图
(1)、将每个传感器进行加权处理,给相应各个传感器的权重值,如图5.5所示。
(2)、当传感器检测到黑线时相应的传感器返回所在的权重值,并计算所有传感器的平均加权值,即偏离程度。计算公式为: ]Sen_Flag[i]Sen_Flag[iong[i]Sen_QuanZh nSen_Jiaqua.... 式(4 .1)
式中,Sen_Flag[i]为对应传感器的状态值,Sen_QuanZhong[i]为对应传感器的权重值,Sen_Jiaquan为传感器的加权平均值。
for(i=0;i<14;i++)
{
Sen_Jiaquan+=(Sen_Flag[i]*Sen_QuanZhong[i]);
Sen_FlagCount+=Sen_Flag[i];
}
Sen_Jiaquan= Sen_Jiaquan /Sen_FlagCount;
由上程序段即可以计算出此时模型车传感器的加权平均值,由此可以得到模型车的状
- 17 -
第三届全国大学生智能汽车邀请赛技术报告
态,为下一步控制决策提供必要的信息。
(3)、建立偏离程度和舵机转动角度所对应的PWM脉宽关系的模型,拟合二者的函数关系曲线。
在这里我们认为舵机转动的角度是和PWM脉宽成线性的正比关系,因此以一次函数来唯一确定PWM脉宽与舵机转动角度之间的关系。
建立的一次函数方程为: FactorPWMHalfnSen_JiaquaPWMMiddleTurnAngle... 式4 .2)
式中,TurnAngle为舵机应转的角度,PWMMiddle为车轮摆正是舵机PWM脉宽应赋的PWMDTYx的值,Sen_Jiaquan为由传感器状态求得的偏离程度,PWMHalf为舵机由中心摆到车轮允许的最大值PWMDTYx的变化值,Factor 为影响比例因数。由此,我们求出了在不同的传感器状态下舵机应转的角度。
4.2弯道策略分析
在车辆进弯时,需要对三个参数进行设定:切弯路径、转向角度、入弯速度。
其中,切弯路径主要决定了车辆是选择内道过弯还是外道过弯。切内道,路经最短,但是如果地面附着系数过小会导致车辆出现侧滑的不稳定行驶状态,原因是切内道时,曲率半径过小,同时速度又很快,所以模型车需要的向心力会很大,而赛道本身是平面结构,向心力将全部由来自地面的摩擦力提供,因此赛道表面的附着系数将对赛车的运行状态有很大影响。切外道,路径会略长,但是有更多的调整机会,同时曲率半径的增加会使得模型车可以拥有更高的过弯速度。
转向角度决定了车辆过弯的稳定性。合适的转向角度会减少车辆在转弯时的调整,不仅路径可以保证最优,运动状态的稳定也会带来效率的提高,减少时间。在考虑转向角度设置时需要注意以下几个问题:对于检测赛道偏移量的传感器而言,在增量较小时的转向灵敏度;检测到较大弯道时的转向灵敏度;对于类似S弯的变向连续弯道的处理。
对于入弯速度的分析,应该综合考虑路径和转向角度的影响。简单而言,我们会采取入弯减速,出弯加速的方案,这样理论上可以减少过弯时耗费的时间。然而,在过去几届比赛中,通过观察各参赛车对弯道的处理后,我们发现并不是所有人都选择了相同的方案。正如前面说到的那样,不联系路径和转向角度,只是单纯地分析过弯速度,会造成思路的局限甚至错误。例如,在不能及时判断入弯和出弯的标志点就采取“入弯减速、出弯加速”的方案,会出现弯道内行驶状态不稳定、路径差,同时出弯加速时机过晚,一样会浪费时间。所以现在本系统参考实际驾驶时的一些经验,对过弯速度的处理方式确定为:入弯时急减速,以得到足够的调整时间,获得正确的转向角度;在弯道内适当提速,并保持角度不变,为出弯时的加速节约时间;出弯时,先准确判断标志,然后加速,虽然会耗费一些时间,但是面对连续变向弯道可以减少判断出错的概率,保证行驶状态的稳定性,而且弯道内的有限加速对后面的提速也有很大的帮助。综合考虑用可以接收的额外时间换回行驶稳定性还是值得的。
下面以常见的几种弯道转角处理方式解释各方案的优缺点,其中,横坐标表示由传感器采集回来的赛道中心线相对赛车中心线的偏移量,纵坐标表示转角大小。
- 18 -
第三届全国大学生智能汽车邀请赛技术报告
cbad偏移量e偏移量偏移量偏移量偏移量
图4.6弯道转角处理方式
a图表示偏移量与转向角度呈线性关系,在计算及程序编写上都比较简单,也可以实现控制赛车行驶的目标,但是由于规则制定比较简单,对赛车实际行驶状态的分析不够全面,所以在实际应用时不能简单套用。
b图表示的是在赛车略微偏离赛道中心时,不要对行驶方向作太大调整,而是在当偏离度大到预定值时急速调整转角以保证过弯的及时,同时在以判断出是急弯后,也不要进行大的变动,因为此时转角的值已经很大,仅需对舵机进行微调就可以保证方向的正确性。这种方案的优点是综合考虑了赛车对个弯道的适应程度,同时保证了在直线行驶时的稳定性,和抗干扰性,但是对急弯的响应可能不够及时,这是该方案的主要缺点。
c图表示的对弯道的处理方案与B图恰好相反,它提高了相应灵敏度,降低了抗干扰性,对于多弯道,且弯道曲率半径较小的赛道有比较好的适应性。
d、e图是两种比较特殊的处理方案,它们不能用于赛车的全程控制,只是考虑到赛车的实际运行特点对某部分的偏移量有特别要求是使用。对于传统四轮车辆,转向时前轮有比较严格的角度关系,而它们的得到是由转向系统决定的。这样两套系统都对某个值做出了限制,必然会有矛盾,在车由0度转到最大转角时,并不是每时每刻都能同时满足两种条件的限制,那么为了赛车行驶的稳定性,我们可能会在小范围内对转角波动,以得到附近最合适的转角值,减小矛盾。
4.3弯道策略制定
在智能车比赛中,我们使用的是通用二输入一输出系统,其中两个输入量是中心线偏移量,和相邻两次检测的偏移量差值;输出量可以分别选用舵机转角值和速度输出值做两套系统。
中心线偏移量的隶属度函数表为9级:
- 19 -
第三届全国大学生智能汽车邀请赛技术报告
表4.2中心线偏移量的隶属度函数表
Lable
1
2
3
4
5
6
7
8
9
下底小值
0
7
16
24
37
46
55
68
80
下底大值
9
17
28
40
49
58
71
82
65535
左腰斜率
255
51
42
32
42
42
32
36
25
右腰斜率
28
51
42
32
42
42
32
36
255
偏移量差值的隶属度函数表为3级(计算时需要先做加100运算):
表4.3偏移量差值的隶属度函数表
Lable
1
2
3
下底小值
0
89
110
下底大值
90
111
255
左腰斜率
255
23
12
右腰斜率
12
23
255
速度规则表为:
表4.4速度规则表
中心线偏移量
big
big
midbig
midbig
mid
mid
lowmid
low
low
偏移量差值
big
big
midbig
midbig
mid
mid
lowmid
low
low
速度精确值为:
表4.5速度精确值
Low
lowmid
mid
midbig
big
26
32
32
28
37
转角规则表为:
- 20 -
第三届全国大学生智能汽车邀请赛技术报告
- 21 -
表4.6转角规则表
中心线偏移量
tiny
tiny
tinysmall
small
smallmiddle
middle
middlelarge
large
largehuge
tiny
tinysmall
small
smallmiddle
middle
middlelarge
large
largehuge
huge
偏移量
差值
tiny
tiny
tinysmall
small
smallmiddle
middle
middlelarge
large
huge
转角精确值为:
表4.7转角精确值
tiny
tinysmall
small
smallmiddle
middle
middlelarge
large
largehuge
huge
2
25
80
135
170
240
320
410
510
这套控制方案是基于07年第二届“飞思卡尔”全国大学生智能车竞赛的要求制定的,它实现了对不同曲率弯道的转角合理分配,速度精确限制等目标。
第三届全国大学生智能汽车邀请赛技术报告
第五章、开发工具、制作、安装、调试过程说明
5.1 开发工具
程序的开发是在组委会提供的CodeWarrior IDE下进行的,包括源程序的编写、编译和链接,并最终生成可执行文件。
CodeWarrior for S12 是面向以HC1和S12为CPU的单片机嵌入式应用开发软件包。包括集成开发环境IDE、处理器专家库、全芯片仿真、可视化参数显示工具、项目工程管理器、C交叉编译器、汇编器、链接器以及调试器。
5.2 调试过程
在调试过程中,我们开发了用于智能车监测智能车实时状态的智能车实时监测系统。能够方便的监测智能车在运动过程中转角,传感器状态,速度等信息,很大的方便了智能车的调试。
界面如图所示:
图5.1 赛道模拟结果
真实赛道如图:
- 22 -
第三届全国大学生智能汽车邀请赛技术报告
图5.2 真实赛道
- 23 -
第三届全国大学生智能汽车邀请赛技术报告
第六章、模型车的主要技术参数说明
6.1 智能车外形参数
车长:36cm
车宽:17cm
车高:7cm
车重:约1.5kg
6.2 电路部分参数
我们小组所改造的智能车采用一块比赛标准7.2V电池供电,电路中共有 16个电容,容量总计142.099μF。当模型车全功率开动时,功耗约为50W 。
6.3 除了车模原有的驱动电机、舵机之外伺服电机数量
除了车模原有的驱动电机、舵机之外使用了1个伺服电机。

8

主题

172

帖子

0

精华

金牌会员

http://iyinjia.taobao.com光电资 .

Rank: 6Rank: 6

积分
1046
威望
510
贡献
460
兑换币
22
注册时间
2010-1-17
在线时间
38 小时
2#
发表于 2010-7-7 11:56:05 | 只看该作者
此帖仅作者可见

使用道具 举报

49

主题

489

帖子

0

精华

金牌会员

董事长

Rank: 6Rank: 6

积分
2370
威望
754
贡献
1130
兑换币
0
注册时间
2009-10-30
在线时间
243 小时
3#
发表于 2010-7-7 13:53:59 | 只看该作者
此帖仅作者可见

使用道具 举报

1

主题

286

帖子

0

精华

禁止发言

积分
10167

论坛元老奖章

QQ
威望
5307
贡献
4706
兑换币
26
注册时间
2009-3-27
在线时间
77 小时
4#
发表于 2010-7-7 14:39:39 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

使用道具 举报

10

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
387
QQ
威望
289
贡献
74
兑换币
0
注册时间
2010-6-26
在线时间
12 小时
5#
 楼主| 发表于 2010-7-7 15:09:59 | 只看该作者
此帖仅作者可见

使用道具 举报

2

主题

16

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
297
QQ
威望
243
贡献
34
兑换币
0
注册时间
2010-8-5
在线时间
10 小时
6#
发表于 2010-8-5 16:22:17 | 只看该作者
此帖仅作者可见

使用道具 举报

1

主题

55

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
400
威望
281
贡献
53
兑换币
0
注册时间
2009-11-1
在线时间
33 小时
7#
发表于 2010-8-11 11:14:55 | 只看该作者
此帖仅作者可见

使用道具 举报

10

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
387
QQ
威望
289
贡献
74
兑换币
0
注册时间
2010-6-26
在线时间
12 小时
8#
 楼主| 发表于 2010-8-11 16:06:28 | 只看该作者
此帖仅作者可见

使用道具 举报

0

主题

23

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
259
威望
196
贡献
51
兑换币
2
注册时间
2010-7-10
在线时间
6 小时
9#
发表于 2010-9-6 13:14:54 | 只看该作者
此帖仅作者可见

使用道具 举报

6

主题

66

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2113
QQ
威望
309
贡献
1654
兑换币
0
注册时间
2010-8-14
在线时间
75 小时
10#
发表于 2010-9-6 16:04:38 | 只看该作者
此帖仅作者可见

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-20 23:44 , Processed in 0.073621 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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