多传感器智能小车的软件设计毕业论文
2020-04-15 20:24:36
摘 要
本次毕业设计的题目是多传感器智能小车的软件设计,旨在通过编程使得小车能在预铺设好的道路上面自主行驶。硬件方面需要研究的内容有稳压电源电路、电机驱动电路、能量回收电路、主控单元(MCU) 电路、通信(USB、WIFI)接口电路、高频和低频通讯电路、音频信号采集电路、显示电路、常用接口电路(I/O、A/D、按键等)存储电路(RAM、EEPROM)等电路的设计。使用了AD10软件辅助硬件电路设计。
软件方面需要研究的内容包括智能小车对预铺设道路路况信息的采集,将图像信息转为微控制器可处理的数据,智能小车如何在预铺设道路上启动等。在研究过程中使用了IAR这种便捷高效的编译软件,在编写程序的过程中使用了大津法(OTSU)来对图像进行二值化运算。
关键词:电机驱动电路 主控单元电路 大津法 IAR
Abstract
The title of this graduation project is the software design of the multi-sensor intelligent car, which aims to make the car drive autonomously on the pre-paved road through programming. Hardware aspects need to study the contents of the stabilized voltage supply circuit, motor drive circuit, energy recovery circuit, main control unit (MCU) circuit, communication interface circuit (USB, WIFI), high frequency and low frequency communication circuit, the audio signal acquisition circuit, display circuit, interface circuit is commonly used (I/O, A/D, buttons, etc.) storage circuit block (RAM, EEPROM) circuit design. AD10 software was used.
In terms of software, the contents to be studied include the acquisition of the pre-laid road condition information by the intelligent vehicle, the transformation of image information into data that can be processed by the microcontroller, and how to start the intelligent vehicle on the pre-laid road. In the research process, IAR and Keil are used to compile the software, and OTSU method is used to perform binary operation on the image in the process of programming.
Key words: motor drive circuit;main control unit circuit;dajin method(OTSU);IAR
目录
一、绪论 5
二、硬件模块的资料与选择 5
1、电机驱动电路 5
2、稳压电源电路 7
3、主控单元(MCU)电路 7
4、JTAG接口电路 8
5、音频信号采集电路的设计 8
6、摄像头模块的设计 9
7、Altium Designer 10 10
三、智能小车软件设计、算法与程序设计 11
1、IAR软件的功能与介绍 11
2、大津法(OTSU) 13
3、PID控制算法 13
4、PWM控制技术 14
5、 灰度图像和二值化图像 15
四、智能小车软件设计 16
五、 设备的调试与总结 32
1、调试 32
2、总结 32
是一个脉宽控制(PWM)信号,所以与数字系统的接口十分方便,由上面的结论可知,为了避免这样的问题,我们只要将舵机与单片机的接口进行接线就可以了。
直流电机控制电路图,这是一个H桥电路,这种电路适合用于机器人和智能小车等场合中
2、稳压电源电路
电源是智能小车的动力来源,因此电源的性能——包括了精度和可靠性等的各项指标将会直接影响小车的的整体性能。一般来说电源可以采用线性稳压电源模块或开关电源模块。根据系统工作电流的大小,选择不同的电源电路,由于本次的智能小车的电源为5V,所以电流不大,可以采用线性稳压器设计单片机的电路。电源模块对于控制系统极其重要,关系到系统正常工作与否。线性电源技术十分成熟,制作成本相对较低就可以达到很高的稳定度,没有开关电源的干扰和噪声,波纹也很小。
3、主控单元(MCU)电路
微控制器的实质是微型计算机,它将微型计算机的主要部分集成在一个的单芯片上。在经历了三四十年的发展后,今天的微控制器成本越来越低,功能越来越强大。MCU根据其存
一个中央处理器核心、程序存储器、数据存储器、定时器或是计时器,除了这四个部分还有用来与外围设备以及扩展资源进行通信的输入输出端口,所有的这些都被集成在单个电路芯片上。
4、JTAG接口电路
JTAG目前主要用于芯片内部测试,是一种国际标准测试协议。JTAG接口可以简单的理解为用于给单片机烧写程序的接插件接口电路以及调试接口。JTAG的编程方式是在线编程,这对于工作效率的提升有很大的帮助。现在绝大部分比较复杂的器件都是支持JTAG协议
5、音频信号采集电路的设计
分为规则音频和不规则音频。随着电子技术,通信技术和计算机技术的长足发展,数字信号处理技术以其经济、方便、抗干扰能力强和灵活性给我们带来了巨大便利。
6、摄像头模块的设计
智能小车的赛道包含了直线、弯道、十字交叉等多种不同的赛道元素,摄像头作为赛车的“眼睛”,是赛车又快又稳的沿着赛道行驶的重要保证。摄像头属于视频输入设备,在使用摄像头的智能小车中,摄像头是最主要的传感器,对于小车的循迹有着至关重要的作用。
而言更加具有优势和操作上的简便性。按照信号类型分类又有数字摄像头和模拟摄像头之分,数字摄像头由于可以直接得到数字信号,相比较于需要专用芯片进行解析的模拟摄像头更具有优势,因此这次智能小车的摄像头优先考虑选用数字摄像头。
CCD图像传感器是将图像信号转换成数字信号的关键模块,常见的有面阵型CCD和线阵型CCD。面阵型CCD虽然可以一次成型一幅图像,但因为其成本较高,因而我们选择线阵型CCD,线阵型CCD加上运动结构,也可以扫描面阵图像,扫描过程中,CCD将图像的像素按顺序转换成电信号,且必须做到扫描同步,也就是每秒25帧,这样才能得到我们需要的图像信号。
CCD工作原理图
CCD结构图
线性CCD虽然有着以上的优点,但是在使用过程中也是可能遇到一些问题,比如环境光影响的问题。由于在智能车的应用中,白天的自然光或是晚上的人造灯光环境、正对光和背对光、以及赛场之间灯光条件的差异,这些不同的环境使得智能小车不能使用相同的曝光参数。由于镜头的参数难以改变,因此我们可以选择从软件方面下手,通过调整曝光量的方法,使镜头在弱光环境下增大曝光时间,在强光下减小曝光时间。
7、Altium Designer 10
Altium Designer 10是一款高效的硬件电路设计软件,这款软件包含了集成板级和FPGA(现场可编程门阵列)、PCB版图设计、编辑和制造,因其综合了电子产品开发一体化所需要的所有技术和功能,因此成为了本次毕智能小车硬件电路设计的最佳解决方案。
图设计和电路模拟仿真这两项功能。
AD10启动界面
三、智能小车软件设计、算法与程序设计
智能小车除了硬件以外,软件也是不可忽视的一部分,在本次毕业设计的课题中,使用的编程软件是IAR 。程序里使用了大津法来确定图像二值化分割阈值的算法 ,这是一种高效的运算方法,对智能小车程序的简洁性有着极大的帮助。PID控制算法和PWM 控制技术也是这次智能小车的舵机以及电机的控制需要用到的重要手段。
1、IAR软件的功能与介绍
C编译器IAR是总部在瑞典的IAR公司最著名的产品,IAR作为嵌入式系统开发工具,其开发工具的能力设计嵌入式系统的设计、开发和测试的每一个阶段,包括带有C/C 编译
不同芯片的所有特性,确保代码的长度不会太过繁冗。
虽然Keil和IAR同样都是软件开发工具,但是却各有优缺点。
(1)在Keil中文件夹的下一级必须为文件,不能是文件夹;而IAR则支持叠文件夹,因此可以更加方便对代码的管理。

(2)Keil只默认创建工程而工作区不会直接创建工程,若要多个工程聚合,则需要先创建一个mult的工作区,接着添加相应的工程。对于IAR,其默认的就是创建工程和工作区,如果要多个工程并存,直接添加即可完成。
(3)默认状态下,Keil的工具栏功能较多会显的操作界面有些繁冗,然而IAR的界面简洁很多,但是功能也会相对单薄些。
IAR工作界面
2、大津法(OTSU)
算法计算过程简单,图像的亮度和对比度也不会影响算法,因为这种种的优点,现在已经在数字图像处理上得到广泛应用。
方差作为一种关于灰度分布的度量,如果类间方差越大,说明构成图像的两部分差别变小,越不利于摄像头对图片信息的处理,图片不容易分出黑或白。因此这种方法又可以称为最大类间方差法。如下图是摄像头采集到的灰度图像和大津法处理后的二值化图像。
3、PID控制算法
单,适用性广,控制参数物理意义明确且选定简单等优点,对于本次的课题来说,我们需要控制的智能小车是个不变的控制对象,因此使用PID控制器是最优控制。 下图是一个最基本PID控制模式图例。
在本次智能小车的设计中,智能小车循迹方式主要是依靠对路面两侧黑线的检测。简单的来说,在小车行进的过程中,摄像头会自动识别道路状况,识别到道路两边的黑线后,取道路的中线作为智能小车的行进路线,如果某个时刻检测到黑线偏左,这个信息反馈给微控制器,然后小车向左转弯,同理 ,检测到黑线偏右,小车会向右转弯,这是比例控制(P)。
但是,智能小车因为智能小车有惯性,若果仅仅只是采用比例控制,会出现如下的状况。小车在检测黑线偏左而左转,当小车停止转向开始沿着中线行驶,会因为惯性有向左的趋势并且一直向左直到检测不到左侧的黑线,此时黑线会偏右,小车又会再次偏离轨道。这并不是我们设计智能小车所希望看到的情况, 因此除了使小车队方向有“感官”,还要使小车对方向变化的趋势有所“感知”。这种趋势类似于函数里函数变化的趋势,在小车的算法里,
在PID控制中,需要我们对PID控制器的参数进行选择,常见的有确定比例系数KP,积分时间常数TI、微分时间常数TD或者对系统过载,带载联动.
4、PWM控制技术
PWM是Pulse Width Modulaition的简称,也就是所谓的脉冲宽度调制。数字领域的PWM本质上就是具有高低电平的方波。该技术以PWM原理为基础,对半导体器件的开关进行控制,使得输出端产生具有幅值相等但宽度不等的方波,这些方波可以代替其他不规则的波形,也能更好的为我们所处理或者改进。随着电子技术的发展,未来的PWM技术有着多种发展方向,
PWM硬件电路图
外部的硬件PWM和电压比较器,这些优势的特性大大简化了所需要的外围电路。但是这种方法也有着明显的缺点,那就是电流控制的精度不高,且充电效率并不高。充电电流的大小是通过电流采样电阻实现的,在大电流快速充电的过程中,因为反电动势存在的缘故,所以重
悟空控制充电电流的负面影响。
- 绪论






























- 灰度图像和二值化图像

您需要先支付 50元 才能查看全部内容!立即支付