智能循迹避障小车设计(5)

2018-11-28 15:41

邵阳学院毕业设计(论文)

4.3无线遥控程序模块

无线红外遥控程序模块流程示意图如下图4.3所示:

图4.3无线红外遥控解码程序流程图

首先需要开始并且初始化定时器,关闭外部中断,防止再有信号到达红外接收器中导致程序出现运行死掉的情况,之后需要设置一个短暂的延时程序,用以进行红外发射器的按键消除抖动。接着判断红外发射器的发射信号是否消失,如果消失则可能只是按键的抖动,则程序不需要进行执行,这个时候可以再次打开外部中断,并返回到程序开始。

- 17 -

邵阳学院毕业设计(论文)

在能够检测到红外发射器的发射信号依旧持续存在的情况下,将会对接受到的红外信号进行一个相应的采集,如上图流程图中,其实都只是按照相应的编码进行一定的采集,从而确定红外发射器所发出的指令信号具体是哪一个。原理图如下图4.4所示。

图4.4无线红外遥控原理图

程序所设置的管脚以及无线红外遥控整体原理图如上图所示,可以看出红外接受器件十分的简洁。在单片机接受到红外发射器所发出的红外信号,经过红外接收器件的信号接受之后,根据之前所述的程序解码流程图,单片机将会得到一个清晰明确的由红外发射端所发射出的命令。根据这个命令,单片机将进行相应的指令。

目前由于驱动电机的选择,故单片机能够接受到的指令为驱动电机的五种状态,即:前进、后退、左转、右转、停止。在单片机接受到这五个指令中的其中一种之后,将会开始调用驱动电机程序模块的子程序,来使小车进行相应的状态改变。

4.4寻光拓展程序模块

寻光拓展模块是根据安装在小车两侧的光敏电阻的阻值,经过电压比较器之后转换为数字信号,再由单片机根据此数字信号来进行相应处理的。所以单片机将会一直读取两边光敏电阻的输出电压是多少。在两侧的光敏电阻同时检测到光源时,即小车整体都处于光线的照射下,这个时候驱动电机将会保持直线前进。然而,当左侧光敏电阻检测到光线时且右侧光敏电阻未检测到光线时,单片机将会使得驱动电机开始停止前进,并向左侧方向偏转,此时小车将会左转;当左侧光敏电阻未检测到光线时且右侧光敏电阻检测到光线时,单片机将会使得驱动电机开始停止前进,并向右侧方向偏转,此时小车将会右转。当左右两侧的光敏电阻都没有检测到光线时,驱动电机停止运行,小车将会停下。

- 18 -

邵阳学院毕业设计(论文)

寻光拓展程序流程如图4.5所示。 开始程序初始化读取数据判断状态右转前进左转 图4.5寻光拓展模块程序流程图

4.5驱动电机程序模块

驱动电机程序模块主要是根据下表来进行配置单片机对应的输入输出端口: M1A 0 1 0 0 1 M1B 0 0 1 1 0 M2A 0 1 0 1 0 M2B 0 0 1 0 1 状态 停止 前进 后退 左转 右转 其程序输入输出端口的输出电平情况是由单片机控制执行的,当电机M1的A、

B两个端口以及电机M2的A、B两个端口输出都为0时,电机停止运行,小车禁

止不动;当电机M1和电机M2的A端为1,且电机M1和电机M2的B端为0时,小车向前行驶;当电机M1和电机M2的A端为0,且电机M1和电机M2的

B端为1时,小车后退,向后行驶。当电机M1的B端和电机M2的A端为1,且

电机M2的B端和电机M1的A端为0时,小车向左行驶;当电机M1的B端和电机M2的A端为0,且电机M2的B端和电机M1的A端为1时,小车向右行驶。

- 19 -

邵阳学院毕业设计(论文)

第5章 系统测试与分析

依照本次论文的计划选择,总体体系调试分析大体上可分为硬件测试分析和软件测试分析两大类。由于硬件设计所使用的元器件种类及个数较为繁杂,故需先将元器件的原理图脉络整理清晰。

5.1硬件调试

在整体方案及模块原理确定下来之后,还需对整体的原理图以及单片机的各个输入输出端口进行合理的分配。还要完整全面的对整体设计进行思考,是否有哪些地方存在不足,有哪些地方还能有所改进。

最终确定了如下图5.1所示的原理图:

图5.1智能循迹避障小车原理图

在原理图设计好之后开始整理元器件,根据所设计的原理图对小车进行相应的焊接工作。焊接时要细致、仔细同是要对照原理图检查清楚,尽量的避免出现断线、虚焊、假焊等问题。

待焊接完成之后还需再次对电路板进行一次检查,在检查无误之后可以使用万用表进行相应的检测。首先使用用万用表测量主观意识上认为容易出现问题的地方,之后对电路图整体进行测量检测,要特别值得注意的是电源和地是否存在短路的问题,一旦短路将会导致整个电路无法工作,严重的还会烧毁电路中的元器件。

- 20 -

邵阳学院毕业设计(论文)

在用万用表检查清楚确认无误之后才能对电路板上电进行检查,当给电路板加电时,要事先查看电子元器件的电源耐压值是不是处在元器件的额定合理值,上电后再用万用表的电压档查看关键点电压是不是处在所需范围内。

上电之后开始测试各个模块的功能是否正常。如出现问题则对出现问题的模块进行隔离,排查出现的问题可能是由哪些原因导致的,查找出原因后开始解决问题。

在测试各个模块的功能都正常时,还需要经过调整循迹模块功能板上的滑动变阻器的阻值来调节红外探测器的灵敏程度。灵敏度太大的话,会导致小车在环境不稳定的情况下容易受到干扰,灵敏度太小的话可能导致小车无法正常的工作使用。需要多次实验调整到一个合适的值。

在小车各个模块的功能能够完美实现的情况下,对小车的器件以及连接的螺母,焊点等进行加固,防止小车在行驶的过程中部件模块掉落等情况的出现。

5.2软件调试

系统软件模块部分的调试的流程为:首先编写各个模块的独立子程序,要注意的是不能够出现全局变量导致模块与模块之间的变量冲突,编写各个模块的独立子程序完成之后还需检查清楚,程序是否每一步都是按照程序流程图所绘制的走向,程序是否出现错误,出现了错误的问题能否解决。

等各个模块的独立子程序编写完成之后还需对整体程序进行整合汇总。在汇总的过程中需要注意的是整体程序的流程指向,在调用子程序时是否合理,有没有考虑不周全的地方,各个输入输出管脚的分配是否合理。这些问题都解决之后开始运行程序,对整个程序进行测试调通。

程序确定没有出现问题之后开始汇编,并用Keil软件生成HEX文件烧写至单片机中。观察小车工作运行是否正常。

通过软件调试检查出编写的程序中出现过了许许多多各式各样的问题。经过不知多少次的各个模块的独立子程序的修改,一步一步的慢慢的完善整体程序,来解决出现的问题。

最终编写出了一套可以稳定使用的程序。

- 21 -


智能循迹避障小车设计(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:【全国百强校word】河北省衡水中学2017届高三上学期第14周周测英

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: