实验预期目标:

实现智能小车进行光标追踪定位,实现智能小车的平稳的速度控制,此外还可以智能避障。

实验平台:

KL26 单片机,编程语言 C,OV7725 摄像头,SHARP 红外传感器,舵机,电机,
车架等。

实验条件:

没有强烈日光下的条件下。

控制算法:(增量,位置)

  1. 舵机控制算法:
    在智能小车在采集到图像数据后,为了使智能小车能够迅速定位光标所在位置,并且调整车体方向,因为其简介明了的公式以及良好的控制效果被广泛地应用在工业现场。在舵机控制上,采用 PID 控制算法中 PD 控制算法。PID 是传统的工业控制算法,智能小车在舵机控制上整体具有较大的惯性,所以方向控制有迟滞性,为抑制车体在方向转换时的抖动和控制量输出的积分死区,为此采用 PD 控制算法来调节。假如使用 PID 调节的话,那么积分项会不停的累加所以就会造成积分饱和的现象,积分饱和就是指积分项在 e(t)不断的累积下,控制量的输出达到了最大,但是误差还在累积,这样就会造成积分项过大,即使误差变为开始反向后,由于积分项的累加不能及时的减小控制量的输出,造成整个系统的震荡。模拟系统 PD 调节器的公式如公式(1)所示。

          P(t)= Kp[e(t) +Td *de(t)/ dt] (1)
    

式中,P(t)——调节器的输出信号(此系统的输出 PWM 占空比);
e(t)——调节器的偏差信号,(此系统的采集图像的目标中值和摄像头中线的偏差);
Kp——调节器的比例系数;
Td——调节器的微分时间;

经过计算机离散后的公式如(2)所示。

      P(k)=Kp{E(k)+(Td /T)[E(k)-E(k-1)]} (2)

式中,T——采样周期;
E(k)——第 k 次采样时的偏差;
E(k-1)——第 k 次采样时的偏差值;
k——采样序号;
P(t)——第 k 次采样调节器的输出;
2. 电机控制算法:
PID 算法包括位置 PID 式和增量式 PID,其中位置式 PID适用于阀门开度和输出一一对应的情况,比如经过归一化后,控制量输出 0.5那么阀门就开到一半,控制量输出为 0,那么阀门就会全关(没用信号时为常闭阀门)。例如电机和舵机就用位置式 PID 即可。而增量式 PID 它的输出是控制量的增量,每次只输出一个增量,用于控制一些带有积分环节的执行机构,比如步进电机等。他们都是 PID 调节只是形式不同而已。增量式的优点就是每次只是输出一个控制增量,其误动作很小,系统故障的时候不至于产生较大的波动;增量式也不会产生积分饱和的问题,因为在推导出增量式以后,每次输出的增量都只是与 e(k),e(k-1),e(k+1)有关,与误差的累积量无关,所以不会有误差累积的问题;在手动和自动的控制输出切换的时候不会产生设定值变化过大造成的系统振荡。而在采用位置式的时候,也可以根据一些策略来控制积分饱和问题,例如积分限幅,即将积分项的输出控制在一定范围内,不让其过大,此外还有积分分
离等积分项控制算法。
在控制智能小车的电机时采用的是位置式的变形,推导如下:
当前的输出:

上一次的输出:

将(3)和(4)作差:

得:

以上的位置式变形后就不需要积分项的累加,只需要上一次的输出以及e(k),e(k-1),e(k+1)三次连续的偏差即可。
上述的算法中,其中有比例系数,积分系数,微分系数,这三个量的好坏影响着整个系统的运行,三个参数的选择十分关键,可利用建模的方式进行分析此外工业现场一般利用经验来调试参数,这种方式用于系统精度要求不高的情况下。
3. 摄像头控制算法:
摄像头采集图像后,将图像数据进行处理,通过将摄像头传来的数据进行解压,解压为一个二值化的二维数组,摄像头的控制主要操作这个数组。这个二维数组就代表着一幅图像,我们的目的是将图像采集的光标中点坐标信息提取出来,因为实验在理想的没有强烈日光的影响下,我们的图像中只会有光标产生的图像。我们遍历二维数组的每一个像素(这里一个数组的数据代表着一个像素),当遍历到像素值跳变的时候:像素值从0变到1的时候,记住这个下角标,然后在1变到0的时候记住此时下角标,然后作差得出当前行的宽度,继续遍历每一行,然后通过冒泡算法得出光标最宽的一行即光标的纵坐标,然后将最宽的一行的左右跳变点的横坐标相加除以2再加上最左边的跳变点就得出光标中心的横坐标。最后将纵坐标的值带入舵机进行PD运算。在这个过程中虽然是在理想的情况下,但是图像避免不了还是会有一些噪点,所以采用图像滤波的方法,因为我们对图像信息不需要清晰图像信息,只要坐标位置,顾才有高斯模糊。高斯模糊简述:我们已当前遍历像素点为中心,取此像素点的邻域像素点,并给每个像素点赋值满足某一特定分布的权重最后相加取值进行判断。
4. 避障控制算法:
在避障上会遇到的问题主要是误判以及评价指标的偶然性,所以采用四个传感器来减少偶然性,并给每个传感器对应的数据分配符合实际情况的权重,以为由于传感器的位置不同,他们的评价指标必然不同,不能同一相比。第二点就是才回来的数据的质量问题,由于某些原因,传感器采集回来的数据会有噪声所以采用滑动平均滤波的方法来讲这些数据的毛刺去除。滑动平均值滤波:由于均值滤波的每次都要攒齐一定的数据进行加权平均,所以会占用一定的时间,而采用滑动平均滤波则是采用排队的方式的先进先出原则进行滤波,这样加大运行效率。

浅谈智能小车的控制策略相关推荐

  1. 浅谈智能摄像机背后的p2p连线技术

    浅谈智能摄像机背后的p2p连线技术 物联网主要由各类传感器(音视频/图像/温湿度/烟雾/压力/速度)+无线入网模块(WIFI/BLE/Zigbee/NB-IOT)组成, 经过约十年的发展,国内物联网已 ...

  2. 浅谈智能问答系统发展及在高校中需求现状

    在科技新时代的发展中,智能信息化一直是研究的热点,家里用的扫地机器人,强劲有效清除尘土:阿里巴巴2017年推出的AI智能产品-天猫精灵,能实现智能家居控制.查天气.语音购物.手机充值.百科查询.音乐播 ...

  3. 老杨说运维 | 2023,浅谈智能运维趋势(二)

    (文末附视频,一键观看精彩内容) 前言: 上文提到了智能运维现状中的变化趋势以及 上文提到了智能运维现状中的变化趋势以及过往误区,老杨认为智能运维的体系化建设还需从抓牢数据治理为起点,以终为始做好规划 ...

  4. 老杨说运维 | 2023,浅谈智能运维趋势(三)

    文末附有视频回顾 前言: 在回顾(一)中,老杨提到的智能运维发展趋势中,面对国际化形势不确定的情况,信创部分的比例要求正在递增.作为国家经济发展的新动能,信创发展已步入深水区,智能运维信创化已成为必行 ...

  5. 浅谈智能交通中的电子地图

    浅谈智能交通中的电子地图 20世纪80年代以来,随着经济的发展和人口的增长,车和人的矛盾变得越来越尖锐,交通拥挤和阻塞现象日益严重,交通污染与交通事故等日益困扰着交通事业的发展.路网通过能力已不能满足 ...

  6. 浅谈智能气压传感器在智能手机中的应用

    浅谈智能气压传感器在智能手机中的应用 手机之所以智能,离不开各种各样的传感器, 传感器技术的地位越来越重要.现在智能手机中比较常见的传感器有: 距离传感器:当接电话是,传感器会感应到距离,从而自动关掉 ...

  7. 浅谈智能消防疏散应急照明系统在高层建筑的设计与应用

    [摘 要]在城市现代化发展过程中,高层建筑日益增多.建筑向多功能.高层化方向发展成为城市发展的必然,在此背景下,需要重视建筑的消防工作,重新设定消防应急照明及疏散指示系统的标准,使消防应急照明疏散系统 ...

  8. 浅谈智能车入门——(一)概述

    为什么要参加智能车大赛 简介: 全国大学生智能汽车竞赛是由教育部高等教育司委托教育部高等学校自动化类专业教学指导委员会主办.先后由飞思卡尔半导体公司.恩智浦(中国)管理有限公司协办的赛事.竞赛过程包括 ...

  9. 浅谈智能微电网供电系统的谐波治理

    摘要:智能微电网供电系统的特性容易引发谐波,而谐波导致电力损耗加大,降低供电质量.本文从谐波的产 生原因和危害做出详细阐述,并结合智能微电网提出了治 理谐波的方法和措施.    关键词:智能微电网:谐 ...

最新文章

  1. GEMM性能提升200倍,AutoKernel算子优化工具正式开源
  2. 每天一个linux命令(6):rmdir 命令
  3. Cannot load 64-bit SWT libraries on 32-bit JVM
  4. kubernetes一次生产故障日记
  5. 在一起 10 年了,这封信你一定要收下
  6. AI框架你只会调包,这种想法很危险!
  7. JAVA反射使用手记
  8. oracle和mysql数据实时同步_异构数据源的CDC实时同步系统——最终选型实战
  9. 2020快手食品行业数据价值报告
  10. Element UI自定义表单验证 公共提取
  11. 在线编程语言模拟(Java,C,Python,R语言,Ruby,PHP,Perl,Go等)
  12. python Counter ^
  13. Delphi 2007 版本号大全
  14. 深度学习之语义分割(SegNet)
  15. VC6.0和VC2012的全局对象的释放!!!
  16. ajax 与 php 简单聊天室
  17. EZ 2018 03 16 NOIP2018 模拟赛(四)
  18. 幼儿抽象逻辑思维举例_张俊:幼儿到底是怎么学习数学的?
  19. CreateProcess创建一个隐藏进程
  20. 墨迹天气总显示内部服务器更新,墨迹天气常见问题之无法更新版本的解决

热门文章

  1. ENIGMA的兴亡(一) (转)
  2. 上海理工大学光电信息与计算机工程学院在哪个校区,上海理工大学光电信息与计算机工程学院特聘教授学术报告...
  3. c语言程序设计黑马答案,【上海校区】C语言程序设计100例之
  4. 华为鸿蒙应用名称填什么,鸿蒙报名这里边的应用名称选啥
  5. 海港城与迪士尼及彼思举办香港首个Pixar Fest;欧莱雅集团推出第一个采用生物酶解循环技术回收塑料制成的化妆品包装瓶 |知消...
  6. MPLS XXX原理及应用
  7. systemverilog中输入/输出系统任务和系统函数---$sformat和$sformatf使用方法及其区别
  8. 计算机毕业设计Python+uniapp+安卓养老管理APP(WEB+APP+LW)
  9. 易观分析发布:证券类APP用户体验指数评测框架
  10. PostgreSQL 14新插件pg_surgery