基于单片机的多功能智能小车设计

news/2024/6/25 13:55:24
第一章 绪论

1.1 课题背景和意义

随着计算机、微电子、信息技术的快速发展,智能化技术的发展速度越来越快,智能化与人们生活的联系也越来越紧密,智能化是未来社会发展的必然趋势。智能小车实际上就是一个可以自由移动的智能机器人,比较适合在人们无法工作的地方工作,也可取代人们完成一些复杂、危险性质的工作。作为现代自动控制领域内十分伟大的一项发明智能小车、机器人已经和人们的生产生活紧密的联系在了一起。

智能小车,是一个包含周围环境探测、识别反应、自动控制等功能于一体的综合系统,它综合地运用了微控制器、传感、遥控、机械结构、电子基础、自动控制等多学科的知识。智能小车是一个复杂而又庞大的系统,其内部有许多块控制芯片作为其控制核心,多种传感器来采集外部环境信息并将接收到的信息传给主控制器,然后由控制器来控制其各个模块执行相应的动作。智能小车由于成本较低,甚至还能够胜任一些人们都无法胜任的工作,它已逐步深入到工业、农业以及社会生活的各个方面。本课题设计的智能小车中用到的遥控技术、显示技术、单片机控制系统、传感技术、自动避障技术已广泛应用于工农业生产、国防军事、医疗卫生、宇宙探测等诸多领域,特别是其在军事侦察、反恐、防暴、防核化及污染等危险和恶劣环境中有着广阔的应用前景,由此可见其有着及其重要的研究意义。

1.2 课题研究现状和发展趋势

  1.2.1 研究现状

智能小车、机器人的发展研究从上世纪60年代至今已有几十年的历史,自从上世纪60年代末期,第一台能够自主移动机器人问世以后,经过几十年的发展智能机器人已经从最初的示教模仿机器人发展到现在的具有感知功能的智能机器人,在技术上取得了很大的进步许多国家都对智能机器人进行了大量的研究。由于各国的科研实力不同,其水平也有高低,其中美国和日本在该项技术的研究处于领先地位。

法国提出了让智能机器人具有自动认知功能的一项科技计划,使其能够在复杂的环境中通过自主感知判断来自动执行各种动作。美国发明的智能机器人,可以帮助人们送信件、食品等生活用品,还可以牵引吸尘器来打扫卫生。日本目前已经研制成功的人形机器人,其可以模仿人们的各种面部表情而且非常逼真。近年来发明的的手术机器人已经广泛的应用在实际医疗手术中而且稳定性好,安全性高。我国的智能小车、机器人的研究已经有三十多年的历史,特别是在军事领域的应用方面已经取得了较大的成果,已经相继研制出了复杂的智能机器人,危险作业机器人、仿人机器人、复合结构移动机器人等。国内的许多高校也都在不停的进行着这方面的研究而且也有了层出不穷的成果,例如中科院研制的能够和人对话的机器人、上海交大研制的具有较强越障能力的仿人关节结构的机器人等。与此同时,我国也开展了智能移动机器人基础理论研究,在某些方面取得了世界领先的成果,正在逐渐缩小与发达国家的差距。

  1.2.2 发展趋势

随着各方面技术的不断进步与完善,各个国家对于智能小车、机器人的科研能力都再逐步的加强,未来的智能机器人可能会朝着以下几个方面发展:使用高强度的轻质材料让机器人的结构越来越灵巧动作执行也更加灵活;应用网络化技术来远距离操作控制机器人群体为人们工作;通过复杂生物机电系统和人机耦合系统来研究出具有仿生感知、生物神经的仿人机器人。相信未来会有具有更高智能化的、更加生动有趣的智能机器人出现在我们的周围,而且会极大的改变和方便人们的生产生活。

1.3 课题内容和要求

本设计的智能小车用微处理器(即单片机)作为整个系统的控制核心部分,主要包括单片机控制模块、遥控模块、避障模块、循迹模块、数据显示模块等模块。要求能够实现以下几种功能:

(1)遥控功能,即通过遥控器来控制小车的启动、停止、左转、右转、后退等动作。

(2)自动避障功能,即小车在前方遇到障碍时可以立即做出反应,自动左转或右转躲避障碍。

(3)自动循迹功能,即小车可以自动沿着规定的路线行驶。

(4)能够实时显示小车行驶的速度、路程等数据。

要求通过此次的实际动手设计掌握以下基本技能:

(1)学会电子产品的设计开发过程;

(2)掌握单片机原理、遥控原理、显示原理等;

(3)能够熟练进行系统的硬件电路设计以及软件设计;

(4)熟练使用相关的电子设计和仿真软件;

(5)查阅国内外相关文献,掌握智能小车的最新研究动态和未来发展趋势。

第二章 总体方案设计与论证

本设计方案采用微处理器(AT89C52单片机)作为整个系统控制的中心,主要由两个部分构成,红外遥控发射部分和智能小车部分。其中智能小车部分主要由以下子模块构成:单片机控制模块、电源模块、电机驱动模块、循迹避障模块、转速检测模块、红外接收器和数据显示模块组成;红外遥控发射部分主要由遥控按键、编码芯片、红外发射三个部分构成。其总体设计框图包括两个部分,如图2.1所示:

 

   a 遥控部分框图                         b 小车部分框图

                 图2.1 系统总体设计框图

2.1 遥控控制模块设计与论证

目前比较常用的遥控控制方式有两种,红外遥控控制系统和无线遥控控制系统。

方案一:选择红外遥控装置作为小车的遥控控制器。红外遥控是通过遥控发射器内的编码芯片将按键信息调制成一串0和1的二进制代码,然后通过红外线发出,最后被红外接收装置接收进行解码,再运用单片机对解码后的码信息进行识别,然后再根据不同的码信息进行不同的控制操作[9]。

方案二:选择无线电遥控装置作为小车的遥控控制器。无线电遥控是利用不同频率的无线电波对远方的各种机构进行控制的遥控设备。这些信号被远方的接收设备接收后,可以驱动其他各种相应的机械或者电子设备去完成各种操作[6]。

红外遥控和无线遥控是对不同的载波来说的,红外遥控器是用红外线来传送控制信号的,它的特点是有方向性中间不能被阻挡,在室内使用时大概在7m的范围内有效;无线遥控器是用无线电波来传送控制的信号的,它的特点是无方向性,可以不面对面控制,距离远,有效距离可达数十米甚至数公里。

以上两种方案均可作为本设计的遥控控制器,虽然无线遥控控制的距离更远也更加灵敏,但对于本设计来说使用红外遥控已经足够了,而且红外遥控的原理更加简单易懂,所以本设计采用方案一即红外遥控作为小车的遥控控制系统。

2.2 电机驱动模块设计与论证

目前比较常用的小车驱动电机主要有两种选择:

方案一:选择直流电机作为小车的动力驱动。直流电机是将直流电能转换为机械能的一种装置,因其转动力矩大、体积较小、重量很轻、使用方便,所以其在一些小型的电动装置中的应用较多。直流电机的运行方式是这样的:在它里面有圆形的磁体会产生磁场,当给它转子上的绕组通电时,通电线圈在磁场中便会产生洛伦兹力带着线圈即转子转动,当转子转动时通电线圈内的磁场方向将会改变,所以绕组上的电流也要变换流向,在方向一直不变的洛伦兹力控制下电机将向顺时针或逆时针持续转动。由H型桥式电路直接驱动直流电机控制电机的正反转,通过软件编程使单片机输出不同占空比的PWM(脉宽调制信号)来控制直流电机的转速进而控制小车的行驶速度[6]。

方案二:选择步进电机作为小车的动力驱动。步进电机是将输入端输入的电脉冲信号转变为转子的角位移的可以实现精确定位的电机。电机转动的快慢取决于脉冲信号的频率、转动的圈数取决于脉冲的个数,在不超载的情况下其转动速度不受负载的影响,即给步进电机输入一个脉冲信号,电机的转子则转过一个角度,给其加上连接不断的脉冲波形则步进电机就能持续转动下去[5]。

相比直流电机,步进电机转过的角度是由脉冲信号控制的其可以实现小车的精确定位停车,步进电机调速也更加容易,只要输入不同频率的脉冲信号就能控制小车的行驶速度,而且它还有很好的止动能力。所以在本设计中我们选用了步进电机作为小车的驱动电机。

2.3 避障循迹模块设计与论证

目前主要有两种方案来实现小车的自动避障功能:

方案一:采用红外反射式光电传感器、电压比较器及一些电阻构成的障碍物检测电路来检测小车前方的障碍。障碍物检测电路安装在小车前部的中间及左右两边,来检测小车前方的障碍物。其障碍检测过程如下:红外发光二极管发出红外光,如果遇到小车前面的障碍物,红外线就会被物体反射回来,被光敏三极管吸收此时光敏三极管导通,并在输出端输出低电平信号至单片机,然后单片机调用寻迹避障子程序控制小车做出相应的避障反应,当左边遇到障碍物时单片机会自动调用右转子程序控制其右转,当右边遇到障碍物时单片机会自动调用左转子程序控制其左转。当无障碍物时,发出的红外线不被反射,光敏三极管截止,输出高电平信号,小车继续向前行驶[8]。

方案二:采用超声波原理来检测小车前方的障碍。其检测障碍的原理如下:先由超声波发射器向小车前方发射超声波,超声波在向前传播过程中,若遇到障碍物则会被反射回去,反射波被超声波回收装置接收后会产生一个电信号然后被转化为高低电平信号反馈给单片机,若为高电平则说明前方遇到障碍,然后由单片机调用避障子程来控制小车做出相应的躲避障碍的动作[7]。

在本设计我们采用了第一种方案实现小车的自动避障功能。

2.4 数据显示模块设计与论证

根据题目的要求小车可以实时显示其运动的速度、距离等数据。主要有两种方案来实现:

方案一:用共阳极数码管和可编程的键盘接口芯片组成数据显示电路,接口芯片直接与单片机的I/O口相连,由单片机精确控制实现LED动态显示。

方案二:用LCD液晶显示屏直接与单片机相连组成数据显示电路。LCD液晶显示屏是一种专门用来显示字符和数字的点阵型液晶模块,它是由若干个5X7或5X11点阵字符位组成的,一个字符占据一个点阵字符位,每位之间有一个点距的间隔将字符隔开,行与行之间也有间隔[8]。

由于本设计需要显示的数据较多,若用LED数码管来显示需多个数码管才能满足要求,这样电路设计过于复杂,相反只用一个LCD液晶显示屏即可显示要求数据,所以本设计我们采用方案二即LCD显示屏来显示实时数据。

2.5 转速测量模块设计与论证

方案一:选择霍尔开关型传感器测量小车车轮转速。具体做法是:在非磁性材料制作的转子上,固定好一片钢性磁体,将霍尔开关型传感器的感知接收面和磁体的磁极相对, 并在安装架上安装好(注意磁场方向不要弄错),轮子转动时磁体会跟着转动,在磁体转到和传感器的接收面相对时, 霍尔传感器便输出一个脉冲信号, 由两个脉冲间的时间间隔,便可算出转速,然后再根据车轮半径编程便可算出小汽车运行的速度[10]。

方案二:选择直射式光电检测器测量小车车轮转速。具体做法是: 在小车的驱动轮的主轴上安装一个开有十个透光槽的圆形叶片,保持叶片和驱动轮能够同步转动,然后在驱动轮旁安装好直射式光电检测器,叶片随着车轮的转动不断切割红外发射管与红外接受管之间的红外线通路,当叶片转动至透光槽与红外线通路重合时,检测器导通,红外接受管通过电流,当叶片转动至使透光槽遮住时,光通路断开。随着车轮不断的转动,便会输出连续的脉冲序列,测出脉冲的个数便可知叶片转过的孔数,从而可计算出车轮转动的转角和转速,然后再根据车轮半径由软件编程便可算出小车运行的速度[11]。

以上两种方案都能够测出小车车轮的转速。但是在本设计中,对于方案一来说,要想在很小的小车车轮上密集安装磁片比较困难,而且彼此之间也容易产生干扰。因此本设计拟采用方案二测量小车的转速。

2.6 电源模块设计与论证

电源是整个小车系统运行的基本条件,它的性能的好坏直接决定整个系统运行的稳定性和性能。小车的供电电源包含两部分,单片机控制模块电源和电机驱动模块电源,我们将单片机及其外围电路和步进电机分开供电,两者互相不影响,实现稳定供电。由于步进电机需较高的供电电压而单片机和其逻辑单元最大供电电压不能超过5V,因此需设计稳压电路。

方案一:采用8节1.5V干电池串联共12V直接给步进电机供电,然后经过由LM7805稳压芯片构成的稳压电路将电压降至5V后给电片机及其外围逻辑电路供电。但是本方案由于电池电量有限,而且数量较多的干电池重量较大会给驱动电机带来太大负担,也占用了太大的空间在体积较小的小车上使用太不方便,所以放弃了该方案。

方案二:采用12V蓄电池直接给步进电机供电,将电压降至5V后给单片机及其外围电路供电。蓄电池具有较长的续航能力以及电压输出的值基本不怎么变化,但是因为蓄电池的体积和质量过大,并不适合本设计的使用,所以我们并没有使用蓄电池来供电。

方案三:采用3节4.2V锂电池串联的方式共直接给步进电机供电,然后经过由稳压芯片构成的稳压电路将电压降至5V后给单片机及其外围逻辑电路供电。本方案锂电池的电量较足并且可以充电重复利用,3节锂电池重量和占用的空间都较小,因此该方案比较可行,最终我们选择了该方案作为小车的驱动电源[14]。

第三章 各模块硬件电路设计

本设计的遥控智能小车的硬件部分共分为两大模块:红外遥控发射器硬件模块和智能小车部分硬件模块。其中红外遥控发射硬件模块包含遥控按键、编码芯片、红外发射三个子模块;智能小车部分硬件模块包含单片机控制模块、电机驱动模块、避障循迹模块、显示模块、红外接收器模块、电源模块6个子模块。

首先介绍红外遥控发射器部分即遥控按键、编码芯片、红外发射三个子模块的硬件设计。

3.1 红外遥控发射器模块

  3.1.1 红外遥控模块的工作原理

红外线遥控是比较常见的一种遥控设备,它是利用波长为0.76~1.5μm之间的红外线来传送控制信号的遥控设备。其占据空间小、价格便宜、使用方便,在我们常用的家用电器比如电视、DVD,录音机、空凋等和一些小型电动玩具装置上均已应用了红外线遥控设备。但是红外遥控也有缺点比如容易受到空间和距离的限制,一般在7m的范围内有效且发射和接收之间不能被物体隔挡,但对于本设计的智能小车来说已经能够满足要求。

红外遥控系统一般由两大部分组成:一个红外发射部分,一个红外接收部分。其中发射部分主要由按键键盘、编码调制、LED红外发送器构成,它最重要的部分就是应用编码芯片对按键信息进行编码和发送;接收部分由光电转换放大器、解调、解码电路构成,其最重要的部分是对接收到的编码进行解调。其原理如图3.1所示:

                      图3.1 红外遥控系统原理框图

按下遥控器的一个按键,遥控器的编码芯片会对按键信息进行编码,然后通过LED红外发射器发出脉冲编码,被红外接收头接收后将编码解出并输入到单片机的外部中断,对接收到的脉冲编码进行位“0”和位“1”的识别,再根据不同的码信息调用相应的子程序来对小车进行不同的控制操作。

  3.1.2 HT6221编码芯片简介

HT6221是合泰公司生产的多功能遥控编码芯片,工作电压在1. 8V-3.5V,其采用PPM(Pulse Position Modulation)进行编码,周期能编码16位地址码和8


http://lihuaxi.xjx100.cn/news/2215685.html

相关文章

47.PyCharm P版突然无法启动

目录 1.启动cmd.exe,进到pycharm\bin目录,启动.\pycharm.bat,如果正常,就像下面这个样子,如果不正常,则会报错, 2.用记事本打开pycharm.bat文件,加上以下代码后 今晨,无…

Digital电路仿真软件的安装

文章目录 1. Java环境的安装 2. Digital安装 3. 软件配置 1. Java环境的安装 电路仿真软件Digital是一款用于设计和仿真数字逻辑电路的工具。它可以帮助用户创建、测试和调试各种数字电路,提供可视化的电路编辑环境,使得设计过程更加直观和便捷。 D…

举例说明 如何通过SparkUI和日志定位任务莫名失败?

有一个Task OOM: 通过概览信息,发现Stage 10的Task 36失败了4次导致Job失败。概览信息中显示最后一次失败的退出代码(exit code)是143,意味着发生了内存溢出(OOM,即Out of Memory)。…

线程池ThreadPoolExecutor源码分析

一、线程池基本概念和线程池前置知识 1.1 Java中创建线程的方式有哪些 传统答案: 继承Thread类 通过继承Thread类并重写其run方法来创建线程。具体步骤包括定义Thread类的子类,在子类中重写run方法以实现线程的具体逻辑,然后创建子类的实例…

[Linux] TCP协议介绍(1): TCP协议 数据格式、可靠性的控制、标记位... 简单介绍

上一篇文章, 针对UDP协议的格式、数据等内容做了一些简单的介绍. 并且提到, 在网络协议栈TCP/IP模型的传输层中, 有两个最具代表性的协议: UDP和TCP 下面就简单介绍分析一下TCP协议 TCP协议, 完整的称呼其实叫: 传输控制协议(Transmission Control Protocol) 从名字就可以看出…

Java云HIS医院管理系统源码 B/S架构 一体化电子病历系统源码 基于云端SaaS平台源码,采用B/S(Browser/Server)架构

“云”指系统采用云计算的技术和建设模式,具有可扩展、易共享、区域化、易协同、低成本、易维护、体验好的优势。“H”是医疗卫生,由原来医院 (Hospital)到现在的医疗卫生 (Healthcare),拓展了 H的内涵与外延。云 HIS 重新定义了医院信息系统…

方 法

方法的定义 方法是程序中最小的执行单元。 main() 方法也叫主方法。 方法必须先定义,然后才能调用。 方法的定义要写在 main() 的外面,类的里面。main() 也是方法,方法不能嵌套定义。 方法的编写顺序和执行顺序无关,执行顺序…

NDK-JNI

AndroidMManifest.xml <?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.com/tools" ><applicationandroid:allowB…