转自:king_of_wind

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

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信号占空比的(用来控制舵机的转角),更是尤为重要.这个滤波的思路就是规定一个最大值和一个最小值,当计算出的值低于最小值时,令其等于最小值;大于最大值时,令其等于最大值.

智能车改舵机中值步骤_智能车制作全过程(飞思卡尔---舵机篇)相关推荐

  1. 智能车改舵机中值步骤_飞思卡尔智能车摄像头组新手指南(10)--控制算法进阶篇之舵机3...

    曲率 彭岸辉 从理论上讲,相对于偏差量,曲率是智能车更好的一个控制变量.但由于路径检测单元的局限性,很难计算出非常精确的曲率. 注意:计算曲率的方法如果要提高精度,最好是能够将采到的畸形图像做一下校正 ...

  2. 智能车改舵机中值步骤_速度,舵机测试,专为舵机调中值

    /***********************************************************************/ // 功能:舵机和电机测试程序 // 运行条件: 1 ...

  3. 智能运维监管系统终端_智能运维系列(十三)| 面向智能化运维的CMDB系统构建...

    经过两年多的努力,在 2020 年微众银行智能化运维建设终于取得了明显成效,在智能监控领域的异常识别及根因定位方面发挥了巨大作用,甚至可以做到了秒级异常发现与定位.CMDB 系统(配置管理平台 Con ...

  4. 中值滤波_图像处理之低通滤波

    在图像处理或者计算机视觉应用中,在正式对图像进行分析处理前一般需要一个预处理的过程.预处理是对图像作一些诸如降维.降噪的操作,主要是为后续处理提供一个体积合适的.只包含所需信息的图像.这里通常会用到一 ...

  5. java中值滤波_中值滤波 java实现

    中值滤波器原理 如果不在边缘区域,图像的数据是平缓的,没有太大的差值.因此,一个噪声点的值要么过大,要么过小.比如下图,左图是没有处理的原图,250在该区域由为突出,通过对3*3的9个数据进行排序,将 ...

  6. 尼奥智能陪伴机器人如何绑定设备_智能儿童机器人联网配置、绑定设备及常见问题解决方案...

    配网失败,不能联网? 请按照使用说明书的步骤操作,如果按说明书联网依旧有问题,请参考以下方法: (1) 用"声纹配网"方式:请在安静的地方尝试"声纹配网"的方式 ...

  7. appinventor贪吃蛇制作步骤_旋转RGB制作指导

    0 前言 旋转LED的原理这里就不多说了,大家可以自行去查阅相关资料.之前是采用的16个单色LED,显示效果比较单一,这次采用了16个RGB,每个RGB最多可以显示7种颜色,增加了软硬件设计的复杂度, ...

  8. php制作万年历的步骤_使用PHP制作一个万年历

    主要运用date函数和mktime函数 完成结果如下: 代码如下: header("Content-type:text/html;charset=utf-8"); $year = ...

  9. php制作万年历的步骤_教大家制作简单的php日历

    最近的一个项目中,需要将数据用日历方式显示,网上有很多的JS插件,后面为了自己能有更大的控制权,决定自己制作一个日历显示.如下图所示: 一.计算数据 1.new一个Calendar类 2.初始化两个下 ...

  10. 红外寻迹小车基于K128单片机的红外对管飞思卡尔智能车(5个对管)程序部分

    红外寻迹小车基于K128单片机的红外对管飞思卡尔智能车(5个对管)软件部分包括: 出库 直行模块 大,小弯道 环岛 s弯 停车 #include "headfile.h" #inc ...

最新文章

  1. CSS3背景线性渐变
  2. ASP.NET在IIS上部署使用Oracle数据库无法连接数据库解决方法
  3. Asp.net中Json数据的转化,读取与应用
  4. MATLAB从入门到精通-辅助ANSYS APDL进行负泊松比铰链结构建模仿真(附源码)
  5. Spring 整合Struts2
  6. 从0开始编写dapper核心功能、压榨性能、自己动手丰衣足食
  7. 点钞机语音怎么打开_原来微信语音一样能转发? 居然还有人不知道
  8. oracle数据库主键消失,oracle数据库提示找不到主键
  9. [AngularJS] 理解AngularJS Directive中的Scope
  10. codeigniter view 试图里再引入view视图
  11. 一文弄懂“分布式锁”
  12. Ble扫描导致wifi信号弱/断开解决
  13. 给tomcat指定JDK
  14. 2021爱分析·快消品牌商数字化厂商全景报告
  15. 你真的会写for循环吗?来看看这些常见的for循环优化方式
  16. System V消息队列报Resource temporarily unavailable 错误
  17. 【知识兔】Ctrl+H,Word文档中超好用的快捷键
  18. Armv8-R系列之何为MPU?
  19. C++四书五经_完整版(侯捷)
  20. 2015年12月学习计划

热门文章

  1. mysql有mdf文件和ldf文件吗_mdf与ldf文件格式
  2. 是德科技Keysight|日置Rigol数据采集器自动计量校准软件NSAT-3070
  3. timesten java_使用java调用timesten实现Oracle入库
  4. matlab卡方拟合优度检验,卡方拟合优度检验在教学中的应用及Matlab实现_刘泽显...
  5. linux英英词典项目,[开发手记] 一款基于命令行的英英词典 (A CLI-Based EE Dictionary)...
  6. X-Scan-v3.3 漏洞扫描工具使用
  7. 宏基4750网卡驱动linux,宏基4750g驱动下载-宏基4750g网卡驱动程序官方版 - 极光下载站...
  8. Windows - 电脑屏幕眼睛保护色的取值
  9. QT从字体名获取字库文件路径(从宋体获取到simsun.ttc)
  10. 小米手机浏览器部分图片显示异常