智能车入门 | 您所在的位置:网站首页 › 小车循迹的原理 › 智能车入门 |
智能车入门——元素识别与循迹
![]() 这篇文章介绍如何让车真正跑起来。即按照规定路径循迹。 为了让小车能够在赛道上行驶,至少会使用左、右两个电感, 通过ADC采集经过运放处理的感应电动势值来计算偏差, 方法是将差比和计算出来的偏差以一定的比例关联到舵机的pwm占空比来控制舵机打角,进而控制小车进行转向 电磁循迹原理先简单讲一下电磁循迹的原理。 电磁场地是赛道中央铺设电磁线,电磁线的两头接信号发生器。 信号发生器就是产生50HZ的正弦信号, “电生磁”,电磁线通有正弦变化的电流,会在周围产生正弦的磁场, “磁生电”,工字电感就是由N圈线圈构成,变化的磁场+运动切割磁感线,会产生感应电流, 经过运放和AD转换得到我们的电磁信号值。 电感距离磁场越近,产生的感应电动势越大,距离越远,产生的感应电动势越小。 电感的布局,影响着 运动切割磁感线产生的电流,对循迹与元素识别起着重大影响 直观地来说,将车静置在赛道中央,同一水平高度上,与电磁线方向垂直放置的电感,获取的值大。 把车放到赛道上,各种姿势各种方向都摆一遍,就能很清楚知道电感方向和铜线方向的关系。 恩智浦智能车四轮组-- 1.电磁检测方案、运放选型_Doee hc的博客-CSDN博客 差比和算法 智能车电感差比和差加权算法研究_卓晴的博客-CSDN博客_差比和算法 差比和是 电磁组循迹比较基础的算法, 电磁组比较简单,经过这么多年的发展,应该还有其他的加权算法,就需要你们探索和借鉴。 简单巡线1.采集电感值 通过adc采集函数,获取到电感值。 在进入新的场地的时候,需要调节运放,使电感值在一定的范围。 放大倍数太低,不利于元素识别, 放大倍数太高,会在车贴近地面/环岛时,电感值爆满,不能正常循迹 2.归一化与滤波就是用第一步采集的最大值max(左右对称的电感用同一个),用adc采集的值value。进行 value/max*100,将值变到0~100的区间内。这样做的好处是,1、可以方便自己对数据的感知,在普通元素和特殊元素间;2、在赛道更换后,测新的赛道的最大值,改变max的值即可,有较强的适应性。3、方便数据处理。 3.加权算法利用算法处理得到的电感值,得到偏差值 4.由偏差值和其他信息, 控制电机转速与舵机打角。 【智能车学习】电磁循迹中的基本控制算法_Carry qinginger的博客-CSDN博客_电磁循迹 元素识别元素识别就是对磁场叠加的理解,和电感排布的选择, 比如,环岛,有几个特征: 1.中间是四根线的汇合,这一点电感值比直道大。 2.抽象地与普通直道相比,在赛道地一侧加了弯曲地铜线。 3.环岛中就是正常的弯道。 三岔:1.入口处,两根线分开了,每个三岔路都只有一根线,入口处电感值减少。 2.出口处,一根线变为两根线,电感值变大。 十字: 1.水平电感的值基本不受影响 2.垂直电感可以判到与前进方向交叉铜线 3. 根据磁场的叠加,如果把十字看成坐标轴,分成四块看成四个象限,那么四个象限磁场的叠加是不同的,45°电感可以测出这种区别 只是简单说一下,元素这一块有着自己的理解,调车的时候也方便, 具体的元素判断可以参考网上一些好的教程,智能车电磁组——环岛处理_彭小宴的博客-CSDN博客_智能车电磁环岛处理方法 这个需要多上网查阅相关资料。 代码结构 #include "headfile.h" void main() { DisableGlobalIRQ(); sys_clk = 30000000; board_init(); //初始化寄存器 初始化函数; EnableGlobalIRQ(); while(1) { 杂项 } } void TM4_Isr() interrupt 20 { TIM4_CLEAR_FLAG; //清除中断标志 信息采集;(编码器,陀螺仪,电感值) 信息加工;(元素/状态判断) 信息处理;(电机舵机控制等) } 单片机硬件电路嵌入式智能车智能车竞赛
打赏 0 点赞 0 收藏 0 分享 微信 微博 QQ 图片 上一篇:智能车入门——实现低速完赛<新手从零做车> 下一篇:智能车入门——跑车前的零碎知识<新手从零做车> |
CopyRight 2018-2019 实验室设备网 版权所有 |