智能车实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

智能车实验报告

一.设计目标:

小车能自己识别道路,自主导航跑过指定道路。二.总体方案设计:

自动循迹智能汽车系统结构框图

单片机控制器

主板电源结构框图

2.1道路识别

根据麦克斯韦电磁场理论,交变电流会在周围产生交变的电磁场。

2.2原理流程图

2.3信号滤波过程

由于系统中存在噪声或干扰,进行算法滤波抑制和防止干扰是一项重要措施。可以选择“加权递推平均滤波法”。

2.4赛道检测方式

赛道路径几何特点:

由直线和圆弧组成。

2.5赛道路径检测内容:确定路径中心位置。

确定路径方向。

确定路径曲率。

需要在赛道垂直方向上

3-5点便可确定道路参数。

2.6赛道路径检测方法

最简单的方法:查表法

根据检测到的电压值,算出左右差值,每一个范围内的值,对应一个舵机转角。

缺点:速度快时,动态响应性不太好

PD控制方法:根据检测到的电压值,算出左右差值∆U1,并记录上次检测的左右差值∆U0,

PWM∆

-

VAL

=

P

+

D

U

1

)2

1

(*

U

_U

*

特点:P和D的参数调整合适会使转向比较平稳。

需要队员根据自己车的参数调整

舵机及电机驱动

利用占空比的变化,改变舵机的位置。方波脉冲信号的周期

为20ms,当方波脉冲宽度改变时,舵机转轴的角度发生变化,角度变化与脉冲宽度的变化成正比

电路连接好后,用一个逻辑输出的信号来控制马达。高电平(逻辑1)让继电器导通,马达转动;低电平(逻辑0)让继电器断开,马达停止。

在电路相同的情况下,把马达的“极性”反过来接,可以控制马

达的反转,断开继电器就能控制停止。

想要同时控制正反向的话,就需要更多的电路——最简单的就是H桥电路。H桥电路的“H”的意思是它实际电路在电路图上是一个字母H的样式。

马达速度。如果在其中一种状态下,频繁的切换开关状态,马达的转速就不再是匀速,而是变化的了,相应的扭矩也会改变。通常反应出来的是马达速度的变化。

电机驱动板

2.7电机速度控制

一、低速恒速控制

二、根据赛道状态进行变速控制

分段控制

将赛道分为直道,小半径弯道,大半径弯道,丢失路线。

不同的赛道对应不同的速度。

这些速度可以根据赛道的具体情况通过按键在比赛准备时设定。PID控制

测速反馈构成的闭环控制

三.硬件电路设计

核心板

母版

四.软件设计

编程方法概述

控制系统软件组成]:

系统软件:各种操作系统、编译软件等通用软件

应用软件:用户设计的处理特定任务的专用软件

程序设计的基本方法

明确任务:MCU在控制系统中的作用、采用的控制算法、输入/输出

信号的类型和频率、系统干扰类型、软件和硬件的功能划分等。编程方法:模块化与结构化程序设计。

1.模块化程序设计

模块化程序设计,其思想就是把整个程序分解为若干个具有

单入口单出口结构的子任务或功能模块,每个模块执行单一的功能,各个模块分别设计、调试成功之后再装配在一起,成为一个完整的程序。

(1)自底向上模块化设计。首先对最低层模块进行设计、编码、测试和调试。这些模块正常工作后,就可以用它来开发高层的模块。这种方法是汇编语言设计常用的方法。

(2)自顶向下模块化设计。首先对最高层模块进行编码、测试和调试。为了测试这些最高层模块,可以用“结点”来代替还未编码的较低层模块,但这些“结点”的输入和输出应满足程序说明部分的要求,但功能少得多。该方法一般适合用高级语言来设计程序。

2.结构化程序设计

结构化程序设计的基本思想是:任何程序都可用三种基本结构

表示,即顺序结构、选择结构和循环结构。由这三种基本结构经过反复嵌套构成的程序称为结构化程序。

三种结构形式

对应用程序的基本要求

实时性:指在被控制对象允许的时间范围内对系统进行采样、计算、处理、控制。采用汇编语言设计的应用程序的实时性最好。针对性:根据系统的具体需要设计应用程序。

灵活通用性:应用程序应具有一定的可移植性,可采用模块结构,将通用功能程序设计成与具体任务无关的子程序。

可靠性:应用程序应采用自检、软件陷阱、WATCHDOG等软件措施防止程序死机或失控。

应用程序的分类

过程监视程序:为监视和控制生产过程提供的人机界面(HMI),如各种键盘输入和CRT、LED、LCD显示输出等。

数据处理程序:A/D、D/A、数字滤波、线性化处理、工程转换等。控制算法程序:实现特定的控制要求,如PID、FUZZY等。

输出控制程序:将控制算法的结果转换成对执行机构的输出,如步

进电机的启停和加、减速,直流电机的速度调节等。

故障自诊断程序:检测控制系统各部分的工作状态,如RAM、ROM的

校验和检验,A/D和D/A的自检、显示装置自检等。

3.数字滤波程序设计

数字滤波是一种程序滤波,通过程序运算对采样信号进行平滑处理,消除或减少噪声的影响。与模拟滤波器比较,数字滤波具有以下优点:

(1)不需要增加硬件设备,且多通道可用一个滤波程序。(2)无阻抗匹配问题,可靠性高。

(3)可以对极低频率(0.01Hz)的干扰信号进行滤波。

(4)滤波器的参数调整方便灵活。

1.限幅滤波

限幅滤波是根据经验,确定连续两次采样信号的最大偏差。如果超过此偏差,则采样信号为干扰信号,放弃不用;否则采样信号有效。

设Y(K)、Y(K-1)、Y分别为本次采样、上次采样和最大偏差。当|Y(K)-Y(K-1)| Y时,Y(K)有效,保留为本次采样信号;

当|Y(K)-Y(K-1)| > Y时,Y(K)无效,以Y(K-1)为本次采样信号。

当信号幅度变化比较缓慢时,限幅滤波对于冲击性脉冲干扰的滤波效果较好。

2.中值滤波

相关文档
最新文档