EDN首页   博客首页

日志档案

发表于 2008-9-4 21:10:36

2

标签: 连续路径识别  实现方法  

连续路径识别的实现方法


                 连续路径识别的实现方法

     对于电光组来说,横向的路径检测精度是比较低的。我们有必要想方设法提高其检测精度。现对常用的连续路径识别方法做一说明:

     普通的数字量只有10,当我们用数字量进行检测时,其出现的组合是比较少的。假如有14个传感器,25cm宽的传感阵列。假如最多同时有2个检测到路径,那么可能出现的组合有27种,精度是250/27=9.259mm。这时,我们很容易就能发现转向时的阶梯现象,那个死区是很容易看出来的。这就导致的转向的不灵敏。

现 在我们把一个传感器的输出当作模拟量。其实传感器的感应区应该是一个圆盘,半径越小,返回的有效值应该越大。这样就可以用返回的有效值的大小来确定道路与 传感器的距离。应该指出,现在的距离是个绝对值,我们没法确定是正的还是负的(一个有效值实际上对应着两个实际距离)。那么,我们就必须借助于别的传感 器。找到次有效值最大的传感器,比较它们的位置关系,这样就可以确定其正负了。为了保险,在运用时通常是找出最大有效和次最大有效,求两个距离,再求平 均。

理论上说,我们有必要测出每个传感器的特性曲线,以便进行有效值与距离的转换。但我用的时候,只是大概测了一下,然后用理想的感触三角模型处理,效果基本可以。

现在我们算一下用这种方法达到的精度。设14个传感器,25cm宽,两两之间的交叉方式如下所示:

点击看大图

我用数字量时对每个传感器进行了编号,以便于线性化处理。编号分别为:-13-11-9-75-3-1135791113。很明显,当两个同时有效时取两个的平均,共27级。精度是9.259mm

当使用模拟量时,理论上是无级的,是平滑的。但为了计算方便,我们把它也分为若干级。简单的做法是这样的,把上面的编号扩大N倍,如10倍。这时,它的级数就是270级,精度为0.9259mm。这个精度是可以达到的。我没有测,因为我的模型就不是精确的,测的数据没有参考价值。但是,通过这样处理得到的效果是很明显的,小车的转向基本上没有了阶梯,是很平滑的。

实际应用时,有必要测一下其特性,以便选取合适的数学模型,使结果更精确,有效。要尽量选取特性好且特性一致的传感器,以便于处理。

编程时要注意尽量避免浮点运算,多用整形,提高处理速度。

系统分类: 单片机   |   用户分类: 杂谈   |   来源: 原创   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(92)    回复(0)  

投一票您将和博主都有获奖机会!