智能寻迹避障小车寻迹系统设计说明

合集下载

智能循迹避障小车设计说明

智能循迹避障小车设计说明

智能循迹避障小车设计说明智能循迹避障小车是一种基于微控制器控制的智能小车,它能够根据预设程序进行自主行驶、循迹和避障。

下面是对智能循迹避障小车的设计说明:1.硬件设计智能循迹避障小车的硬件设计包括以下组成部分:1.1 微控制器:使用单片机实现小车的控制和决策,采用常见的单片机有STC、ATmega、STM32等。

1.2 传感器:使用光电传感器进行循迹,超声波传感器进行避障。

在循迹方面,一般采用两个光电传感器,安装在小车底部,分别检测黑线和白色地面;在避障方面,一般采用超声波传感器,安装在小车前方,检测前方物体距离。

1.3 驱动电机:小车驱动电机一般采用直流减速电机,通过H桥驱动电路实现正反转控制。

1.4 电源:小车电源采用锂电池或干电池供电。

1.5 其他:小车还需要一些辅助元件,如LED指示灯、蜂鸣器等。

2.软件设计智能循迹避障小车的软件设计包括以下几个方面:2.1 循迹算法:根据光电传感器检测到的黑线和白色地面的信号,判断小车当前位置,控制小车朝着黑线方向运动。

2.2 避障算法:根据超声波传感器检测到的前方距离信息,判断小车前方是否有障碍物,避免碰撞。

2.3 控制逻辑:根据传感器数据计算得出的小车状态,进行控制决策。

比如,避障优先还是循迹优先,小车如何避障等。

2.4 通信协议:如果需要远程控制或传输数据,需要设计相应的通信协议。

3.功能实现基于硬件和软件设计,实现智能循迹避障小车以下功能:3.1 循迹:小车能够自主行驶,按照预设的循迹算法进行路径规划和执行。

3.2 避障:小车能够根据预设的避障算法,自主避开前方障碍物,避免碰撞。

3.3 情境感知:小车能够通过传感器感知环境,根据感知到的信息做出相应的控制决策。

3.4 远程控制:如果需要,可以通过通信模块实现小车的远程控制和数据传输。

循迹避障智能小车设计

循迹避障智能小车设计

循迹避障智能小车设计一、硬件设计1、车体结构智能小车的车体结构通常采用四轮驱动或两轮驱动的方式。

四轮驱动能够提供更好的稳定性和动力,但结构相对复杂;两轮驱动则较为简单,但在稳定性方面可能稍逊一筹。

在选择车体结构时,需要根据实际应用场景和需求进行权衡。

为了保证小车的灵活性和适应性,车架材料一般选择轻质且坚固的铝合金或塑料。

同时,合理设计车轮的布局和尺寸,以确保小车能够在不同的地形上顺利行驶。

2、传感器模块(1)循迹传感器循迹传感器是实现小车循迹功能的关键部件。

常见的循迹传感器有光电传感器和红外传感器。

光电传感器通过检测反射光的强度来判断黑线的位置;红外传感器则利用红外线的反射特性来实现循迹。

在实际应用中,可以根据小车的运行速度和精度要求选择合适的传感器。

为了提高循迹的准确性,通常会在小车的底部安装多个传感器,形成传感器阵列。

通过对传感器信号的综合处理,可以更加精确地判断小车的位置和行驶方向。

(2)避障传感器避障传感器主要用于检测小车前方的障碍物。

常用的避障传感器有超声波传感器、激光传感器和红外测距传感器。

超声波传感器通过发射和接收超声波来测量距离;激光传感器则利用激光的反射来计算距离;红外测距传感器则是根据红外线的传播时间来确定距离。

在选择避障传感器时,需要考虑其测量范围、精度、响应速度等因素。

一般来说,超声波传感器测量范围较大,但精度相对较低;激光传感器精度高,但成本较高;红外测距传感器则介于两者之间。

3、控制模块控制模块是智能小车的核心部分,负责处理传感器数据、控制电机驱动和实现各种逻辑功能。

常见的控制模块有单片机(如 Arduino、STM32 等)和微控制器(如 PIC、AVR 等)。

单片机具有开发简单、资源丰富等优点,适合初学者使用;微控制器则在性能和稳定性方面表现更优,适用于对系统要求较高的场合。

在实际设计中,可以根据需求和个人技术水平选择合适的控制模块。

4、电机驱动模块电机驱动模块用于控制小车的电机运转,实现前进、后退、转弯等动作。

智能循迹避障小车设计

智能循迹避障小车设计

智能循迹避障小车设计智能循迹避障小车的核心功能在于能够沿着特定的轨迹行驶,同时能够避开行驶过程中遇到的障碍物。

要实现这两个功能,需要在硬件和软件两个方面进行精心设计。

在硬件方面,首先是小车的车体结构。

通常选用坚固且轻便的材料,以保证小车的稳定性和灵活性。

车轮的选择也很重要,需要具备良好的抓地力和转动性能。

传感器是实现智能循迹避障功能的关键部件。

对于循迹功能,常用的是光电传感器或摄像头。

光电传感器通过检测地面上的反射光来判断轨迹,而摄像头则可以通过图像识别技术获取更精确的轨迹信息。

在避障方面,超声波传感器或红外传感器是常见的选择。

超声波传感器通过发射超声波并接收反射波来测量与障碍物的距离,红外传感器则通过检测障碍物反射的红外线来实现避障功能。

控制模块是小车的大脑,负责处理传感器采集到的数据,并控制电机的运转。

常用的控制芯片有单片机,如 Arduino 或 STM32 等。

电机驱动模块则用于将控制模块输出的信号转换为电机所需的驱动电流,以实现小车的前进、后退、转弯等动作。

电源模块为整个小车系统提供稳定的电力供应。

一般选择可充电的锂电池,其具有较高的能量密度和较长的续航能力。

在软件方面,编写高效可靠的程序是实现智能循迹避障功能的关键。

首先是传感器数据的采集和处理程序。

对于光电传感器或摄像头采集到的轨迹信息,需要进行滤波、放大等处理,以提高数据的准确性和可靠性。

对于超声波传感器或红外传感器采集到的避障数据,需要进行距离计算和障碍物判断。

控制算法是软件的核心部分。

对于循迹功能,常用的算法有 PID 控制算法。

通过不断调整电机的转速和转向,使小车能够准确地沿着轨迹行驶。

对于避障功能,通常采用基于距离的控制策略。

当检测到障碍物距离较近时,及时控制小车转向或停止,以避免碰撞。

电机控制程序负责根据控制算法的输出结果,精确控制电机的运转。

这需要对电机的特性有深入的了解,以实现平稳、快速的运动控制。

为了提高小车的性能和稳定性,还需要进行系统的调试和优化。

循迹避障智能小车设计(2023最新版)

循迹避障智能小车设计(2023最新版)

循迹避障智能小车设计
循迹避障智能小车设计文档范本:
⒈摘要
本文档旨在详细介绍循迹避障智能小车的设计方案。

介绍了小车的硬件组成、软件设计和算法实现,以及测试结果和优化方案。

⒉引言
介绍循迹避障智能小车的背景和应用场景,解释设计的目的和意义。

⒊系统架构
详细介绍循迹避障智能小车的系统组成,包括传感器模块、控制器、执行器等硬件部分,以及软件部分的整体架构。

⒋传感器设计
说明循迹避障智能小车所使用的传感器,包括红外线传感器、超声波传感器等的选择原因和工作原理,以及如何与控制器进行连接。

⒌控制器设计
介绍循迹避障智能小车的控制器设计,包括主控芯片的选择、引脚分配以及与传感器和执行器的连接方式。

⒍执行器设计
详细说明循迹避障智能小车的执行器设计,包括电机控制模块、转向模块等的选择和工作原理。

⒎算法设计
阐述循迹避障智能小车所采用的算法设计,包括循迹算法和避障算法的原理和实现方法。

⒏系统测试与优化
描述循迹避障智能小车的测试方法和实验结果分析,以及针对存在的问题进行的优化措施。

⒐结论
总结循迹避障智能小车设计的成果,评估其性能和应用前景,并展望未来的发展方向。

⒑附件
提供循迹避障智能小车的原理图、源代码、测试数据等附件,以供读者参考使用。

1⒈法律名词及注释
在文档末尾提供相关法律名词的注释,并进行对应解释,以确保读者对相关法律概念的理解和使用的合法性。

智能寻迹小车设计说明书

智能寻迹小车设计说明书

第1章引言随着微电子技术的不断发展,微处理器芯片的集成程度越来越高,单片机已可以在一块芯片上同时集成 CPU、存储器、定时器/计数器、并行和串行接口、看门狗、前置放大器、 A/ D 转换器、 D/A 转换器等多种电路,这就很容易将计算机技术与测量控制技术结合,组成智能化测量控制系统。

这种技术促使机器人技术也有了突飞猛进的发展。

单片机技术作为自动控制技术的核心之一,被广泛应用于工业控制、智能仪器、机电产品、家用电器等领域。

随着微电子技术的迅速发展,单片机功能也越来越强大,本设计基于单片机技术在智能寻迹小车控制系统的设计中,以 STC89C52为核心,用 LG9110驱动两个减速电机,当产生信号驱动小车前进时,是通过寻迹模块里的传感器管是否寻到黑线产生的电平信号通过传感器再返回到单片机,单片机根据程序设计的要求作出相应的判断送给电机驱动模块,让小车实现前近、左转、右转、停车等基本功能,寻白线时,外部环境光线的强弱对小车的运动会产生很大的影响,基于此原因,本实验中的寻迹是指在白色地板上寻黑线。

1.1 设计目的1、了解机械部件结构与机械安装过程;2、掌握电动机齿轮箱内部结构及减速原理;3、了解电子元器件的基本形状及焊接过程;4、掌握电子元器件的焊接步骤与检测过程;5、了解单片机内部结构与程序编制方法;6、了解 LED 灯驱动方法,全面掌握流水灯/ 跑马灯编程技术;7、了解数码管内部结构,掌握数码显示技术;8、了解键盘结构原理,掌握中断查询技术;9、了解话筒电路结构,掌握话筒输入技术;10、了解蜂鸣器驱动技术,全面体现音乐报警功能;11、了解光敏电阻结构原理,充分体现夜间自动照明功能;12、了解红外发射与接收技术,有力体现防撞检测与智能寻迹功能13、了解直流电机驱动原理,掌握电机驱动技术;14、认识红外检测传感器,全面掌握红外遥控编码解码技术;15、了解 R232 通信协议,掌握串口通信技术。

16、通过本机系统学习,全面掌握智能自动寻迹机器人的控制方法。

智能循迹避障小车报告

智能循迹避障小车报告

摘要:本智能识别小车以STC89C52单片机为控制芯片,以直流电机,光电传感器,超声波传感器,电源电路以及其他电路构成。

系统由STC89C52通过IO口,通过红外传感器检测黑线,利用单片机输出PWM脉冲控制直流电机的转速和转向,循迹由TCRT5000型光电对管完成。

一、系统设计1、小车循迹,避障原理这里的循进是指小车在白色地板上寻黑线行走,通常采取的方法是红外探测法。

红外探测法,即利用红外a在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色地板时,发生漫反射反射光被装在小车上的按收管按收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光,单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。

红外探测器探测距离有限一殷最大不应超过3cm。

而避障则是通过超声波模块不断向前方发射超声波信号,通过接收反射回来的超声波信号,从而实现的避障。

当前方有障碍物时,超声波会向单片机串口发送一串数字,这些数字就是当前小车距离障碍物得距离。

当串口接收到信号时,会引发串口中断,单片机通过读取距离值,并且对此数值进行分析是不是距离小车很近,是的话就进行转向;否则继续循迹。

当小车遇到第一个障碍后,就计数一次,这样当遇到第二个障碍物时,小车就可以以不同的形式躲避障碍物了。

2、选用方案(1):采用成品的小车地盘,通过改装来完成任务;(2):采用STC89C52单片机作为主控制器;(3):采用7V电源经7805稳压芯片降压后为其他芯片及器件供电。

(4):采用TCRT5000型红外传感器进行循迹;(5):L298N作为直流电机的驱动芯片;(6):通过对L298N使能端输入PWM来控制电机转速和转向;3、系统机构框图如下所示:二、硬件实现及单元电路设计与分析1、微控制模块设计与分析微控制器模块我们采用STC89C52。

该芯片采用双列直插是封装,便于焊接,性能比较稳定,而且在市场上也是比较廉价的单片机。

循迹避障智能小车的实验设计

循迹避障智能小车的实验设计

循迹避障智能小车的实验设计本实验旨在设计和实现一个能够循迹避障的智能小车,通过实践验证其实验设计方案是否可行。

通过本实验,希望能够提高小车的自动化水平,使其能够在复杂的路径环境中自主运行。

循迹避障智能小车:实验所用的智能小车需具备循迹和避障功能。

传感器:为了实现循迹和避障功能,我们需要使用多种传感器,如红外线传感器、超声波传感器等。

电路:实验中需要搭建的电路包括电源电路、传感器接口电路和控制器电路等。

编程软件:采用主流的编程语言如Python或C++进行编程,实现对小车的控制和传感器数据的处理。

搭建电路:根据设计要求,完成电源电路、传感器接口电路和控制器电路的搭建。

安装传感器:将红外线传感器和超声波传感器安装在小车上,并与电路连接。

编程设定:使用编程软件编写程序,实现小车的循迹和避障功能。

调试与优化:完成编程后进行小车调试,针对实际环境进行调整和优化。

通过实验,我们成功地实现了小车的循迹避障功能。

在实验过程中,小车能够准确地跟踪预设轨迹,并在遇到障碍物时自动规避。

实验成功的主要因素包括:正确的电路设计、合适的传感器选型、高效的编程实现以及良好的调试与优化。

在实验过程中,我们发现了一些需要改进的地方,例如传感器的灵敏度和避障算法的优化。

为了提高小车的性能,我们建议对传感器进行升级并改进避障算法,使其能够更好地适应复杂环境。

通过本次实验,我们验证了循迹避障智能小车实验设计方案的有效性。

实验结果表明,小车成功地实现了循迹避障功能。

在未来的工作中,我们将继续对小车的性能进行优化,以使其在更复杂的环境中表现出更好的性能。

本实验的设计与实现对于智能小车的应用和推广具有一定的实际意义和参考价值。

随着科技的不断发展,智能小车已经成为了研究热点之一。

避障循迹系统是智能小车的重要组成部分,它能够使小车自动避开障碍物并按照预定的轨迹行驶。

本文将介绍一种基于单片机的智能小车避障循迹系统设计,该设计具有简单、稳定、可靠等特点,具有一定的实用价值。

智能循迹、避障遥控小车设计

智能循迹、避障遥控小车设计

智能循迹、避障遥控小车设计摘要:本文设计了一款以STM32单片机为控制核心的智能小车,智能小车主要采用高灵敏度的光电管,对路面黑色轨迹进行检测,并利用单片机产生PWM波,控制小车速度。

能够平稳跟踪给定的路径实现循迹的目的。

整个系统基于普通玩具小车的机械结构,并利用了小车的底盘、前后轮电机及其自动复原装置,能够平稳跟踪路面黑色轨迹运行。

若遇到障碍物,通过检测障碍物离自己的距离来判断自己是前进、后退还是左转、右转,最终达到避障的目的。

1、背景及意义近年来人工智能技术的快速发展,智能小车技术也已经发展到可以模仿人类行为程度,主要是因为自动化生产设备越来越精密,它不仅给传统产业带来了翻天覆地的变化,而且提高了我们生活生产的质量。

智能小车具有自动循迹、避障和可控行驶等诸多功能,可以在不同环境完成工作,智能小车在各个行业都有不错的应用价值。

例如,在日常生活中,智能小车可以像导盲犬那样给盲人指引正确的道路。

在军事方面,智能小车可以代替我们在危险区域的排雷和侦察等任务。

在科学研究中,智能小车可以在外星球上完成探索或返回照片。

另外,它可以帮助人们在复杂的环境中执行设备检查和货物处理等任务。

2、智能小车硬件设计小车通过红外探测法实现循迹功能,红外接收装置和发射装置实现避障功能,红外传感器实现测速功能,超声波系统实现测距。

车轮应用了PWM调速系统和L298N芯片来控制调速和车轮旋转,还有用液晶显示模块LCD1602来显示小车基本情况。

通过c语言完成对小车行动指令的编程,实现小车按照设定路线行驶、避障。

智能小车硬件设计主要是电源模块设计、单片机最小系统的设计、循迹模块设计、避障模块电路设计以及遥控电路设计等。

电源模块设计主要为单片机最小系统以及需要的外围电路中用到的芯片进行供电,供电电压为+5V,因此需要一个恒定+5V的稳压电源,本文中主要是通过直流稳压电源7805输出恒定电源的方式来进行设计,输入电源电压为36V一下,交直流方式均可,直流电源模块电路图如图1所示图1 电源模块部分电路图单片机最小系统采用了传统的STM32最小系统的设计,包含电源滤波部分、晶振部分电路、复位电路等,为最常用的电路,在此不再进行赘述。

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

第二章智能寻迹避障小车寻迹系统设计1.任务任务一:产生智能寻迹避障小车沿黑线转圈的控制程序;任务二:产生智能寻迹避障小车带状态显示沿黑线转圈的控制程序;2.要求(1)能控制智能寻迹避障小车沿黑线实现转圈功能;(2)行走过程中小车一直压着黑线走,不得冲出黑线圆圈之外或之;(3)智能寻迹避障小车可以从小于90度的任意方向寻找到黑线圆圈;2.1 项目描述该项目的主要容是:在智能寻迹避障小车电机控制系统之上扩展寻迹电路,然后运用C 语言对系统进行编程,使智能寻迹避障小车实现沿黑线转圆圈的功能,并且在行走过程中小车一直压着黑线走,不得冲出黑线圆圈之外或之;当人为将小车拿开,再从小于90度的任意方向放置小车,小车应能重新找回轨道,并沿黑线继续转圈。

通过该项目的学习与实践,可以让读者获得如下知识和技能:继续掌握单片机I/O端口的应用;掌握红外线收、发对管的工作原理与控制方法;掌握数码管的工作原理与控制方法;掌握单片机C语言的编程方法与技巧;能够编写出智能寻迹避障小车沿黑线实现转圈功能的控制函数;2.1 必备知识2.1.1 关于红外线传感器红外线定义:在光谱中波长自0.76至400微米的一段称为红外线,红外线是不可见光线。

所有高于绝对零度(-273.15℃)的物质都可以产生红外线。

现代物理学称之为热射线。

医用红外线可分为两类:近红外线与远红外线。

红外线发射器:红外线发射管在LED封装行业中主要有三个常用的波段,如下850NM、875NM、940NM。

根据波长的特性运用的产品也有很大的差异,850NM波长的主要用于红外线监控设备,875NM主要用于医疗设备,940NM波段的主要用于红外线控制设备。

如:红外线遥控器、光电开关、光电计数设备等。

红外线对管应用:本项目中,小车的寻迹功能采用红外线收、发对管实现。

具体工作过程如下:两对红外线收、发对管安装在智能寻迹避障小车底盘正前方,红外发射管一直发射信号,接收管时刻准备接收信号。

两对对着地的红外管发射红外信号,信号在白色的地面上反射回接收管,通过接收管把信号送回单片机进行处理,完成相应的动作。

假如在黑色的地面上,信号被地面吸收,就无信号返回,单片机检测到无信号,根据程序也会做出相应的动作。

如图2.1所示为红外线收、发对管外型示意图。

图2.1 红外收、发对管外形图2.3 案例设计2.3.1 系统设计方案本项目采用单片机最小系统+红外寻线传感器来实现小车寻线功能。

系统设计框图如图2.2所示。

STC89C52复位电路时钟电路红外寻迹传感器单片机最小系统电机驱动芯片直流电机P0口P3口图2.2 系统设计框图2.3.2 硬件电路设计智能寻迹避障小车寻线电路原理图如图2.3所示:它是在单片机最小系统的基础上直接由单片机的P3连接红外线收、发对个构成的,其中单片机的P3.5端口控制左边寻线电路模块,右边寻线电路模块由P3.6控制。

为了保准巡线信号的准确度,一般要求左、右红外发射对管安装时离地面高度控制在0.5cm 比较理想,距离太大,可能造成信号不灵敏,巡线不够准确,距离太小,也可能造成小车前进会与地面产生刮擦,从而损坏器件;另外,左、右收、发对管安装的距离应保持在比黑线条的宽度多一点,做到夹在黑线条,并处于黑线条的边缘,不能压在黑线上。

这样巡线才能准确。

图2.3 智能寻迹避障小车寻线电路原理图2.3.3 系统软件设计任务一:产生智能寻迹避障小车沿黑线转圈的控制程序;1、源程序#include<at89x52.h>#define uint unsigned int#define uchar unsigned char#define out P2sbit zuo1=P0^1;sbit zuo2=P0^0;sbit you1=P0^3;sbit you2=P0^2;sbit zuod=P3^5;sbit youd=P3^6;sbit qiand=P3^7; //左右前 3个红外传感器sbit jiao=P0^6;sbit D1=P2^0;sbit D2=P0^7;void delay(uint x){uchar i;while(x--)for(i=0;i<123;i++);}void qian(){zuo1=0;zuo2=1; //左边往前you1=0;you2=1; //右边往前}void hou(){zuo1=1;zuo2=0; //左边往后you1=1;you2=0; //右边往后}void zuo(){zuo1=1;zuo2=0; //左边往后you1=0;you2=1; //右边往前}void you(){zuo1=0;zuo2=1; //左边往前you1=1;you2=0; //右边往后}void main(){while(1){if(zuod==0&youd==0) //如果左右两个传感器没有检测到黑线{qian(); //直走}if(zuod==1&youd==0) //如果左边的传感器检测到黑线{while(1){zuo(); //左转D1=0;if(zuod==0) //一直左转到传感器检测不到为止{D1=1;break; //跳出循环}}}if(youd==1&zuod==0){while(1){you();D2=0;if(youd==0){D2=1;break; //道理同上}}}}}2、程序运行及调试按图2.3连接智能寻迹避障小车控制电路,编译以上程序,将产生的可执行文件烧写到智能寻迹避障小车的单片机程序存储器,然后将小车放置在黑线圆圈的任意位置,开启电源,小车会沿着黑线不断转圈;将小车从黑线上拿走,然后再放放置黑线旁边,只要小车与黑线不成90度放置,则小车通过自我修正,会重新找到黑线轨迹,继续转圈。

3、程序设计思路基本思路是:先判断智能寻线小车左、右寻线传感器是否夹在黑线边缘,如果是说明寻线传感器处于白色区域,则小车前进;如果不是,则再判断左、右传感器所处的位置,如果左边传感器压到黑线,左传感器指示灯D1亮,说明小车已经偏右,则应调左转函数修正,使左边传感器退出黑色区域;当退出黑色区域后,左传感器指示灯D1灭;当右边传感器压到黑是,方法跟左边处理类是:调用右转函数修正,同时D2亮,修正完,D2灭。

总之,小车在沿黑线转圈过程中,左、右寻线传感器始终是夹在黑线边缘(即白色区域)的,如果不在白色区域,就要根据情况调用左转、或右转函数进行修正。

程序流程图如图2.4所示:图2.4 智能寻迹避障小车寻黑线转圈流程图任务二:产生智能寻迹避障小车带状态显示沿黑线转圈的控制程序;1、源程序#include<at89x52.h>#define uint unsigned int#define uchar unsigned char#define out P2sbit zuo1=P0^1;sbit zuo2=P0^0;sbit you1=P0^3;sbit you2=P0^2;sbit zuod=P3^5;sbit youd=P3^6;sbit qiand=P3^7; //左右前 3个红外传感器sbit jiao=P0^6;sbit D1=P2^0;sbit D2=P0^7;uchar code ZM[]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09,};void delay(uint x){uchar i;while(x--)for(i=0;i<123;i++);}void qian(){zuo1=0;zuo2=1; //左边往前you1=0;you2=1; //右边往前}void hou(){zuo1=1;zuo2=0; //左边往后you1=1;you2=0; //右边往后}void zuo(){zuo1=1;zuo2=0; //左边往后you1=0;you2=1; //右边往前}void you(){zuo1=0;zuo2=1; //左边往前you1=1;you2=0; //右边往后}void main(){while(1){if(zuod==0&youd==0) //如果左右两个传感器没有检测到黑线{qian(); //直走out=ZM[1];}if(zuod==1&youd==0) //如果左边的传感器检测到黑线{while(1){zuo();out=ZM[3]; //左转D1=0;if(zuod==0) //一直左转到传感器检测不到为止{D1=1;break; //跳出循环}}}if(youd==1&zuod==0){while(1){you();out=ZM[4];D2=0;if(youd==0){D2=1;break; //道理同上}}}}}2、程序运行及调试程序的运行与调试与任务一相同,当程序下载到小车控制电路单片机中,开机运行,小车除完成任务一的动作外,还会在小车行进过程中在数码管上显示小车的状态,比如,小车前进,则在数码管上显示“1”;小车左转弯则在数码管上显示“3”;小车右转弯则在数码管上显示“4”。

3、程序设计思路程序设计思路与任务一基本相同,只是在小车直行、左转、右转函数后面调用相应的状态显示字符。

其程序流程图如图2.5所示。

图2.5 带小车行走状态显示、转圈程序流程图2.4相关知识2.4.1 显示模块显示器是最常用的输出设备,其种类繁多,但在单片机系统设计中常用的是发光二极管显示器(LED)和液晶显示器(LCD)两种。

由于这两种显示器结构简单,价格便宜,接口容易实现,因而得到广泛应用。

下面介绍发光二极管显示器(LED)的结构、工作原理及其接口电路。

1、LED结构与原理LED显示器又称为数码管,它主要由8个发光二极管组成,如图2.6(a)所示。

图中,a~g为数字或字符显示段,h段为小数点显示,通过a~g为7个发光段的不同组合,可以显示0~9和A~F共16个数字和字母。

例如,当a、b、g、e、d段亮时,显示数字“2”,当a、f、e、g段亮时,则显示字母“F”。

LED可以分为共阴极和共阳极两种结构,如图2.6(b)和(c)所示。

其中图(b)为共阴极结构。

即把8个发光二极管阴极连在一起。

这时如果需要点亮a~g中的任何一盏灯,则只需要在相应端输入高电平即可;输入低电平则截止。

比如我们现在要显示数字“3”,则只要在对应的a、b、c、d、g段送入高电平,在其他端送入低电平即可,点亮为“3”。

图(c)为共阳极结构。

其显示端输入低电平有效,高电平截止。

abcdefgh(a)引脚分布图(b)共阴LED (c)共阳LED图2.6八段LED显示块表2-1列出了共阳极与共阴极LED显示器显示数字、字母与显示代码之间的对应关系。

相关文档
最新文档