毕业设计(论文)-智能小车避障系统设计.doc_第1页
毕业设计(论文)-智能小车避障系统设计.doc_第2页
毕业设计(论文)-智能小车避障系统设计.doc_第3页
毕业设计(论文)-智能小车避障系统设计.doc_第4页
毕业设计(论文)-智能小车避障系统设计.doc_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

在此处键入 I 毕业设计说明书 设计题目: 专 业: 班 级: 学 号: 姓 名: 指导教师: 二一五年十二月二日 在此处键入 II 目 录 摘 要 .1 第章 绪论 .2 第 2 章 方案论证 .3 2.1 系统总体方案设计.3 2.2 系统方案的选择与比较.3 2.2.1 控制模块方案的选择 .3 2.2.2 显示模块方案的选择 .4 2.2.3 超声波模块方案的选择 .4 2.2.4 驱动模块方案的选择 .4 2.3 系统总体方案论证.5 第 3 章 硬件电路设计 .6 3.1 整机设计.6 3.1.1 整机系统 .6 3.1.2 避障系统工作模式 .6 3.2 各功能模块硬件电路设计.8 3.2.1 单片机最小系统 .8 3.2.2 液晶显示电路 .12 3.2.3 驱动电路 .18 3.2.6 超声波测距避障电路 .21 第 4 章 系统软件设计 .23 4.1 主程序流程.23 4.2 主要子程序流程.23 4.2.1 液晶显示子程序流程 .24 4.2.2 超声波子程序流程 .24 4.2.3 避障子程序流程图 .26 在此处键入 III 4.3 软件调试.26 第 5 章 系统制作与调试 .28 5.1 硬件制作.28 5.1.1 Altium Designer 14 软件 .28 5.1.2 PCB 的设计与制作 .29 5.2 硬件电路的安装与焊接.31 5.3 电脑端的 ISP 控制软件.32 5.4 实物安装与调试.33 结 论 .36 参考文献 .37 附录 1 系统各部分设计原理图 .38 附录 2 系统各部分设计 PCB 板 .40 附录 3 元件清单表 .41 附录 4 源程序 .43 摘 要 系统以 MCS-51 单片机为控制核心,完成对系统各个子模块的控制工作,从 而保证各模块正常有序的完成任务;电源模块负责为整个系统供电,提供所需的 电压;采用超声波模块对障碍物进行探测和距离测定;显示模块负责显示小车距 离障碍物的距离和设计者姓名;语音模块负责对障碍物距离进行语音提示;红外 对管模块负责探测地面黑白线,保证小车按预定路线行驶;电机驱动模块负责小 车的运行,其中小车驱动由 L298N 驱动电路完成,速度由单片机输出的 PWM 波控制。同时,设计制作的实物功能齐全,美观大方。 关键词 避障;超声波;单片机 第章 绪论 近年来,随着电子测量技术的发展,运用超声波做出精确测量已成可能。随 着经济发展,电子测量技术应用越来越广泛,而超声波测量因其测量精确度高, 成本低,性能稳定而备受青睐。超声波是指频率在20kHz以上的声波,它属于机 械波的范畴。超声波也遵循一般机械波在弹性介质中的传播规律,如在介质的分 界面处发生反射和折射现象,在进入介质后被介质吸收而发生衰减等。正是因为 具有这些性质,使得超声波可以用于距离的测量中。随着科技水平的不断提高, 超声波测距技术被广泛应用于人们日常工作和生活之中。一般的超声波测距仪可 用于固定物体物位或液位的测量,适用于建筑物内部、液位高度的测量等。 由于超声测距是一种非接触检测技术,不受光线、被测对象颜色等的影响, 较其它仪器更卫生,更耐潮湿、粉尘、高温、腐蚀气体等恶劣环境,具有少维护、 不污染、高可靠、长寿命等特点。因此可广泛应用于造纸业、矿业、电厂、化工 业、特殊水处理、污水处理厂、农业用水、环保检测、食品(酒业、饮料业、添 加剂、食用油、奶制品) 、防汛、水文、明渠、空间定位、公路限高等行业中。 可在不同环境中进行距离准确度在线标定,可直接用于水、酒、糖、饮料等液位 控制,可进行差值设定,直接显示各种液位罐的液位、料位高度。因此,超声测 距在特殊环境下有较广泛的应用。利用超声波检测往往比较迅速、方便、计算简 单、易于实现实时控制,并且在测量精度方面能达到工业实用的指标要求,因此 为了使移动机器人能够自动躲避障碍物行走,就必须装备测距系统,以使其及时 获取距障碍物的位置信息(距离和方向) 。因此超声波测距在移动机器人的研究 上得到了广泛的应用。同时由于超声波测距系统具有以上的这些优点,因此在汽 车倒车雷达的研制方面也得到了广泛的应用。 超声波测距电路可以由传统的模拟或者数字电路构建,但是基于这些传统电 路构建的系统往往可靠性差,调试困难,可扩展性差,所以基于单片机的超声波 测距系统被广泛的应用。通过简单的外围电路发生和接收超声波,单片机通过采 样获取到超声波的传播时间,用软件来计算出距离,并且可以采集环境温度进行 测距补偿,其测量电路小巧,精度高,反映速度快,可靠性好。 第 2 章 方案论证 2.1 系统总体方案设计 根据设计任务要求,可将此系统划分为四个部分,第一个部分为单片机控制 模块,它由 STC89C52RC 单片机、单片机最小系统、串口通信电路和相应辅助电 路组成,并主要负责各个子模块的控制工作,从而保证各自模块正常有序的完成 各自任务;第二个部分为驱动模块,它的主要作用是驱动小车直流电机,使小车 运动。第三个部分为显示模块,它主要用于显示小车距离障碍物的距离等信息。 第四个部分为超声波传感器,他主要用于对小车运行前方的障碍物进行探测和对 障碍物距离进行判断。其系统结构如图 2-1 所示。 主 控 系 统 LCD 液晶显示模块 驱动模块 超声波模块 图 2-1 系统总框图 2.2 系统方案的选择与比较 2.2.1 控制模块方案的选择 第一种方案:选用数字逻辑电路平台,整个超声波测距避障的控制系统由计 数器、译码器和 555 定时器等数字芯片组成。其电路具有逻辑结构简单、精确控 制等优点,但也有功能单一、不易调试等缺点。 第二种方案:选用单片机平台,整个超声波测距避障控制系统由 MCS-51 单 片机最小系统作为主控制器。同时,STC89C52RC 单片机具有体积小、功耗低、 控制功能强、扩展灵活、微型化和使用方便等优点。 方案比较:虽然采用数字逻辑电路平台可以实现超声波测距避障,电路结构 简单,但整个系统的功能单一。为了高质量完成复杂的设计要求,此系统采用第 二种方案。 2.2.2 显示模块方案的选择 第一种方案:采用由 LED 彩灯、七段 LED 数码管组成的显示方案,但其只 能显示有限的指示信号和数码字符,无法达到设计要求。 第二种方案:采用由 1602LCD 液晶显示器组成的显示方案,该模块功能强 大,可方便的显示各种英文字符等内容。 方案比较:采用第一种方案不能很好的达到设计要求,数码管只能显示字码, 不能显示字母;而采用第二种方案能充分利用 1602LCD 液晶显示器显示障碍物 距离等信息。故选用第二种方案。 2.2.3 超声波模块方案的选择 第一种方案:采用 US-100 超声波模块,US-100 超声波测距模块可实现 2cm4.5m 的非接触测距功能、拥有 2.45.5V 的宽电压输入范围、静态功耗低 于 2mA,自带温度传感器对测距结果进行校正、同时具有 GPIO、串口等多种通 信方式、内带看门狗、工作稳定可靠。 第二种方案:采用 HY-SRF05 超声波模块,HY-SRF05 超声波测距模块可提 供 2cm450cm 的非接触距离感测功能,测距精度可达 3mm,模块包括超声波发 射器、接收器和控制电路。 方案比较:由于该系统的超声波模块主要用于对小车运行前方障碍物的探测 及障碍物距离的探测,故对功能要求不高。经过比较,故此方案选用第二种方案。 2.2.4 驱动模块方案的选择 第一种方案:采用由多个三极管和续流二极管组成的双 H 桥驱动电路,该 结构原理简单,但结构复杂且驱动电流过小。 第二种方案:采用以 L298N 为核心的集成驱动电路,该方案结构简单,且 驱动电流大。 方案比较:采用第一种方案时驱动电流不足,可能会出现小车运行缓慢,严 重时甚至会烧毁三极管;第二种方案驱动电流大,足以保证小车的运行,且体积 小、电路结构简单。故此设计选用第二种方案。 2.3 系统总体方案论证 系统系统设计方框总图如图 2-2 所示。 S T C 89C52RC 最小系统 1602LCD 显示模 块 L298N 驱动模块 SRF05 超声波模 块 图 2-2 系统设计方框总图 经上述对各模块的方案选择与论证,此设计的超声波测距避障系统主要以一 片 MCS-51 系列单片机为控制核心,STC89C52RC 单片机用作超声波测距避障系 统主控芯片;以 SRF05 超声波传感器作为障碍物测距传感器;以 1602LCD 液晶 显示器作为障碍物距离的显示;以 L298N 驱动模块作为小车运动的驱动部分。 第 3 章 硬件电路设计 硬件电路是整个系统的核心基础,需要全面考虑系统运行的各个状态。这里, 除了要实现整个超声波测距避障系统的基本功能以外,还需考虑以下几个因素: 系统的稳定度和性能指标;元器件的通用性和易购性;系统的可扩展性。 因此,硬件电路的设计至关重要,现对各功能模块进行深度的分析与探讨。 3.1 整机设计 3.1.1 整机系统 系统主要以一片 MCS-51 单片机为控制核心,采用模块化设计,完成整个循 迹避障系统。其具体分可为以下七个功能模块:单片机控制模块、超声波模块、 循迹模块、显示模块、语音提示模块和驱动模块。 1单片机最小系统作为整个硬件电路的核心电路,它既是协调各个模块使 之正常有序作的控制器,也是计算系统运行过程中数据参数的处理器。它由单片 机、时钟电路和复位电路三大部分组成。 2障碍物的探测和障碍物距离的测定采用 SRF05 超声波模块,分别探测小 车前、左、右的障碍物。 3采用 1602LCD 液晶显示模块显示障碍物距离,运用软件控制其分别显示 小车前方、左侧和右侧的障碍物距离。 4驱动电路模块采用 L298N 集成驱动,它将驱动直流电机来带动小车按预 定路线行驶。 3.1.2 避障系统工作模式 根据设计要求及实际应用规则,小车需多种情况下避障,其避障模式就会有 多种,需要根据不同的障碍情况作不同的规避动作。在此举两个最常见的类型。 一种是小车正面有障碍物的情况,另一种是小车侧面有障碍物的情况。 当小车正面有障碍物障时,单片机检测到前方障碍物与小车之间的距离小于 设定距离时,开始避障,此时单片机判断在小车左右方向障碍物离小车的距离分 别为多大,然后根据两边距离大小选择与障碍物距离大的一边转向行驶。当检测 到障碍物距离不再低于设定距离时,小车避障完毕恢复直线行驶。其运行图如图 3-1. 图 3-1 小车正面避障运行图 当小车侧面有障碍物时,单片机检测到侧面障碍物与小车之间距离小于设定 的距离时,运行侧面避障程序,向与障碍物方向相反的方向转向,直到侧面障碍 与小车距离大于设定的距离时恢复直线行驶。运行图如图 3-2 所示。 图 3-2 小车侧面避障运行状态 3.2 各功能模块硬件电路设计 3.2.1 单片机最小系统 单片微机(Single-Chip Microcomputer)简称为单片机。它在一块芯片上集成中 央处理单元 CPU、随机存储器 RAM、只读存储器 ROM、定时/计数和多功能输 入/输出 I/O 口,如并行口 I/O、串行口 I/O 和转换 A/D 等。 MCS-51 系列单片机在我国得到了广泛的应用,是单片机的主流系列,软硬 小车 障 碍 物 件应用设计资料丰富齐全。为了提高指令的执行速度和效率,采用了面向控制的 结构和指令系统的独立 CPU。 此设计主要采用 STC89C52RC 单片机作为系统的主控制芯片,这是因为它 是目前 应用比较广泛的 MCS-51 系列兼容型单片机。现将 STC89C52RC 单片机的特点 介绍如下: 1增强型 6 时钟/机器周期,12 时钟/机器周期 8051CPU。 2工作电压:3.4V5.5V。 3工作频率范围:040MHz,相当于普通 8051 的 080MHz,实际工作 频率可达 48MHz。 4用户应用程序空间 8K 字节。 5片上集成 1280 字节/512 字节 RAM。 6通用 I/O 口(32/36 个) ,复位后为:P1/P2/P3/P4 是准双向口/弱上拉(普 通 8051 传统 I/O 口) 。P0 口开漏输出,作为总线扩展用时,不用加上拉电阻, 但作为 I/O 口用时,则需加上拉电阻。 7ISP(在系统可编程)/IAP(在应用可编程) ,无需专用编程器/仿真器可 通过串口(P3.0/P3.1)直接下载用户程序,8K 程序 3 秒即可完成一片 ISP(在 系统可编程)/IAP (在应用可编程) ,无需专用编程器/仿真器可通过串口 (P3.0/P3.1)直接下载用户程序,8K 程序 3 秒即可完成一片。 8内置 EEPROM 功能和看门狗功能。 9共 3 个 16 位定时器/计数器,其中定时器 0 还可以当成 2 个 8 位定时器 使用。 10外部中断 4 路,下降沿中断或低电平触发中断,Power Down 模式可由 外部中断低电平触发中断方式唤醒。 11通用异步串行口(UART),还可用定时器软件实现多个 UART。 12工作温度范围:075。 STC89C52RC 单片机最小系统的基本工作电路包括电源电路、时钟电路和 复位电路。其组成方框图如图 3-3 所示: 单 片 机 电源电路 时钟电路 复位电路 图 3-3 单片机最小系统组成方框图 1电源电路 电源电路模块为单片机最小系统和其他功能模块提供标准的+5V 电源电压。 2时钟电路 单片机的时钟信号为单片机芯片内部的各种操作提供时间基准,时钟电路为 单片机产生时钟脉冲序列。作为单片机工作的时间基准,典型的晶体振荡频率为 12MHz。 MCS-51 系列单片的时钟信号可以由两种方式产生:一种为内部时钟方式, 利用芯片内部的振荡电路;另一种为外部时钟方式。其两种电路如图 3-4 所示。 (a)内部时钟方式 (b)外部时钟方式 图 3-4 单片机时钟信号示意图 3复位电路 单片机复位是使 CPU 和系统中的其他功能部件都恢复到一个确定的初始状 态,并从这个状态开始工作。当在 MCS-51 系列单片的 RST 引脚处引入高电平 并保持 2 个机器周期,单片机内部就执行复位操作。单片机常见的复位电路有两 种基本形式:一种是上自动电复位,另一种是手动复位。其两种电路方式如图 3-5(a) 、 (b)所示。在此设计中我们采用手动复位方式。 (a)上电自动复位 (b)手动复位 图 3-5 单片机复位电路示意图 由于 STC89C52RC 单片机芯片内有时钟振荡电路,所以此系统单片机均采 用内部时钟方式。只需在单片机的 XTAL1 和 XTAL2 引脚外接石英晶体和微调 电容,就构成了自激振荡器并在单片机内部产生时钟信号脉冲信号。同时,也采 用手动复位电路。其具体电路设计如图 3-6 所示。在此图中,C1、C2 电容的作 用的是稳定频率和快速起振,其值为 530pF,在此选择 30pF;晶振 X1 的振荡 频率范围在 1.212MHz 之间选择,在此选择 12MHz。 P1.0/T2 1 P1.1/T2EX 2 P1.2/ECI 3 P1.3/CEX0 4 P1.4/CEX1 5 P1.5/CEX2 6 P1.6/CEX3 7 P1.7/CEX4 8 RST 9 P3.0/RxD 10 P3.1/TxD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.5/T1 15 P3.6/WR 16 P3.7/RD 17 XTAL2 18 XTAL1 19 VSS 20 P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27 P2.7/A15 28 PSEN 29 ALE/PROG 30 EA/VPP 31 P0.7/AD7 32 P0.6/AD6 33 P0.5/AD5 34 P0.4/AD4 35 P0.3/AD3 36 P0.2/AD2 37 P0.1/AD1 38 P0.0/AD0 39 VCC 40 U2 STC12C5A60S2 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 10K RP2 Res Pack4 VCC D0 D1 D2 D3 D4 D5 GND D6 D7 TX RX 12 Y1 12M 30pF C1 Cap 30pF C2 Cap 1K R8 Res2 220 R6 Res2 22uF C5 Cap S2 SW-PB VCC GND GND 图 3-6 单片机最小系统电路图 EA/VP 31 X1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 1 1 RXD 10 89C5 2 图 3-7 单片机引脚图 单片机的引脚说明: 89C52 系列单片机采用 40Pin 封装的双列直接 DIP 结构,下图是它们的引脚 配置,40 个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4 组 8 位共 32 个 I/O 口,中断口线与 P3 口线复用。其引脚排列如图 3-7。 控制引脚介绍: 1ALE:系统扩展时,P0 口是八位数据线和低八位地址先复用引脚, ALE 用于把 P0 口输出的低八位地址锁存起来,以实现低八位地址和数据的 隔离。 2PSEN;低电平有效时,可实现对外部 ROM 单元的读操作。 3EA:当 EA 信号为低电平时,对 ROM 的读操作限制在外部程序存储 器;而当 EA 为高电平时,对 ROM 的读操作是从内部程序存储器开始的, 并可延至外部程序存储器。 4RST:当输入的复位信号延续两个机器周期以上的高电平时即为有效, 用以完成单片机的复位初始化操作。 5XTAL 和 XTAL2:外接晶振引线端。 并行 I/O 端口介绍:P0 端口P0.0-P0.7 P0 是一个 8 位漏极开路型双向 I/O 端口,端口置 1(对端口写 1)时作高阻抗输入端。作为输出口时能驱动 8 个 TTL。 P1 端口P1.0P1.7 P1 是一个带有内部上拉电阻的 8 位双向 I/0 端口。输出 时可驱动 4 个 TTL。端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。 对内部 Flash 程序存储器编程时,接收低 8 位地址信息。 P2 端口P2.0P2.7 P2 是一个带有内部上拉电阻的 8 位双向 I/0 端口。输出 时可驱动 4 个 TTL。端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。 对内部 Flash 程序存储器编程时,接收高 8 位地址和控制信息。在访问外部程序 和 16 位外部数据存储器时,P2 口送出高 8 位地址。而在访问 8 位地址的外部数 据存储器时其引脚上的内容在此期间不会改变。 P3 端口P3.0P3.7 P2 是一个带有内部上拉电阻的 8 位双向 I/0 端口。输出 时可驱动 4 个 TTL。端口置 1 时,内部上拉电阻将端口拉到高电平,作输入用。 除此之外 P3 端口还用于一些专门功能,具体请看下表 3-1。 3-1 P3 引脚的第二功能说明 P3 引脚兼用功能 P3.0串行通讯输入(RXD) P3.1串行通讯输出(TXD) P3.2外部中断 0 申请( INT0) P3.3外部中断 1 申请(INT1) P3.4定时器/计数器 0 的外部输入(T0) P3.5定时器/计数器 1 的外部输入(T1) P3.6外部数据存储器写选通 WR P3.7外部数据存储器写选通 RD 3.2.2 液晶显示电路 在此设计中,选用 1602LCD 液晶模块显示三个方向的障碍物距离。 11602LCD 液晶显示器介绍 液晶显示器(LCD)的主要原理是以电流刺激液晶分子产生点、线、面并配 合背部灯管构成画面。液晶体积小、功耗低、显示操作简单。此设计选用 1602LCD 液晶显示器。其外形如图 3-7 所示。 图 3-7 1602LCD 实物图 现将其主要技术参数和显示特性如下: 1电源:VDD 为+4.5V+5.5V; 2显示内容:16*2 字符; 3工作电流:2.0MA(5.0V); 4显示颜色:蓝屏; 5模块最佳工作电压:5.0V; 6显示角度:6:00 钟直视; 7与 MCU 接口:8 位并口; 8配置 LED 背光; 9多种软件功能:光标显示、画面移位、自定义字符、睡眠模式等。 其基本操作时序如图 3-8 所示。 其基本时序如表 3-2 所示。 其读写操作如图 3-9 所示。 其内存地址如图 3-10 所示。 其控制指令集如表 3-3 所示。 其控制接口时序如图 3-11 所示。 其初始化过程如下所示。 图 3-8 1602LCD 基本操作时序 表 3-2 1602LCD 时序参数 图 3-9 1602LCD 读写操作 图 3-10 1602LCD 内存地址 表 3-3 1602LCD 控制指令集 其初始化过程(复位过程): (1)延时 15MS (2)写指令 38H(不检测忙信号) (3)延时 5MS (4)写指令 38H(不检测忙信号) (5)延时 5MS (6)写指令 38H(不检测忙信号) (7) (以后每次写指令、读/写数据之前均需检测忙信号) (8)写指令 38H:显示模式设置 (9)写指令 08H:显示关闭 (10)写指令 01H:显示清屏 (11)写指令 06H:显示光标移到设置 (12)写指令 0CH:显示开关光标设置 图 3-11 1602LCD 控制接口时序图 2液晶显示电路设计 若要用单片机控制 1602LCD 液晶显示模块正常的显示字符、图形和动画, 就必须了解此液晶显示模块的各引脚定义和功能,其引脚功能介绍如表 3-4 所示。 其基本外形尺寸如图 3-12 所示。 图 3-12 LCD1602 外观图 表 3-4 1602LCD 液晶引脚功能介绍 在此设计中采用的 1602LCD 为标准的液晶显示器件。其典型的应用电路如 图所示。 图 3-13 液晶显示模块典型应用原理图 此设计分别采用一块 TC1602LCD 液晶显示模块显示障碍物距离和学号。 TC1602 显示的容量为 2 行 16 个字。液晶显示屏有微功耗、体积小、显示内容丰 富、超薄轻巧、使用方便等诸多优点,与数码管相比,显得更专业、美观。使用 时,可将 P0 与 LCD 的数据线相连,P2 口与 LCD 的控制线相连,如图所示。 图 3-14 1602LCD 液晶显示硬件电路图 3.2.3 驱动电路 在此设计中,小车使用的是直流电机。从单片机输出的信号功率很弱,即使 在没有其它外在负载时也无法带动电机,所以在实际电路中我们加入了电机驱动 芯片提高输入电机信号的功率,从而能够根据需要控制电机转动。本设计中电机 驱动采用 L298 集成 H 桥芯片如图 3-17。L298 中有两套 H 桥电路,刚好可以控 制两个电机。它的使能端可以外接高低电平,也可以利用单片机进行软件控制, 极大地满足各种复杂电路需要。该芯片的主要特点是:工作电压高,最高工作电 压可达 46V;输出电流大,瞬间峰值电流可达 3A,持续工作电流为 2A;内含两 个 H 桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电机, 继电器,线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控制端, 在不受输入信号影响的情况下允许或禁止器件工作;有一个逻辑电源输入端,是 内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电 路。引脚如功能如表 3-5 所示。 图 3-17 L298N 引脚图 L298N 可接受标准 TTL 逻辑电平信号 VSS,VSS 可接 4.57 V 电压。4 脚 VS 接电源电压,VS 电压范围 VIH 为2.546V。输出电流可达 2.5A,可驱动 电感性负载。1 脚和 15 脚下管的发射极分别单独引出以便接入电流采样电阻, 形成电流传感信号。L298N 可驱动 2 个电动机,OUT1、OUT2 和 OUT3、OUT4 之间可分别接电动机,此设计选用驱动两台电动机。5、7、10、12 脚接输入控 制电平,控制电机的正反转。ENA、ENB 接控制使能端,控制电机的停转。 本设计采用高电压,大电流的 L298N 全桥驱动芯片,其外围电路设计如图 3-18 所示,它响应频率高,一片 L298N 可以分别控制两个直流电机。两个电机 的四个正方向信号和两个 PWM 信号经 L298N 后能够很好的控制电机的正反转 和较大范围的控制电机电压。 表 3-5 L298N 引脚编号与功能 引脚编号名称功能 1电流传感器 A在该引脚和地之间接小阻值电阻可用来检测电流 2输出引脚 1内置驱动器 A 的输出端 1,接至电机 A 3输出引脚 2内置驱动器 A 的输出端 2,接至电机 A 4电机电源端电机供电输入端,电压可达 46V 5输入引脚 1内置驱动器 A 的逻辑控制输入端 1 6使能端 A内置驱动器 A 的使能端 7输入引脚 2内置驱动器 A 的逻辑控制输入端 2 8逻辑地逻辑地 9逻辑电源端逻辑控制电路的电源输入端为 5V 10输入引脚 3内置驱动器 B 的逻辑控制输入端 1 11使能端 B内置驱动器 B 的使能端 12输入引脚 4内置驱动器 B 的逻辑控制输入端 2 13输出引脚 3内置驱动器 B 的输出端 1,接至电机 B 14输出引脚 4内置驱动器 B 的输出端 2,接至电机 B 15电流传感器 B在该引脚和地之间接小阻值电阻可用来检测电流 表 3-6 L298N 对直流电机控制的逻辑功能表 说明:表 3-6 为 L298N 的逻辑控制表,其中 C、D 分别为 IN1、IN2 或 IN3、IN4;L 为低电平,H 为高电平,*为不管是低电平还是高电平。 如图 3-18 所示,本设计中 L298N OUT1、OUT2 和 OUT3、OUT4 之间各接 一个小直流电动机。VSS 9 脚接入经过稳压后的+5V,VS 4 脚直接接+9V 电源。 1、5、8 脚都接地。5、7、10、12 脚接输入控制信号(控制信号从单片机 P0.0、P0.1、P0.3、P0.4 发出,经光电耦合器 TLP521-4 后接 L298N 的 5、7、10、12 脚输入),控制电机的正反转。 输入CD输出 HHL正转 HLH反转 L*无输出,不工作 图 3-18 电机电路图 单片机的两个端口(P0.2、P0.5)给出 PWM 信号直接与 ENA、ENB 相连 控制使能端,从而达到控制电机直行、加减速、倒退等动作。在该模块设计中, 我们采用了小周期信号,通过改变小车的占空比对小车的速度进行调节。将小车 速度分为 20 个档,这样就可以让小车在调试过程中得到一个合理的速度,使其 行驶在对稳定的状态。 3.2.6 超声波测距避障电路 超声波电路原理图如图 3-20 所示。发射电路主要由低噪声 JFET 输入的运算 放大器和超声波发射换能器 R 构成,单片机 P1.0 端口输出的 40kHz 的方波信号 一路经一级反向器后送到超声波换能器的一个电极,另一路由单片机 P1.0 端口 经两级反向器后送到超声波换能器的另一个电极,用这种推换形式将方波信号加 到超声波换能器的两端,可以提高超声波的发射强度。输出端采两个反向器并联, 用以提高驱动能力。上位电阻 R20、R21 一方面可以提高运算放大器 TL074 输 出高电平的驱动能力,另一方面可以增加超声波换能器的阻尼效果,缩短其自由 振荡时间。压电式超声波换能器是利用压电晶体的谐振来工作的。超声波换能器 内部有两个压电晶片和一个换能板。当它的两极外加脉冲信号,其频率等于压电 晶片的固有振荡频率时,压电晶片会发生共振,并带动共振板振动产生超声波, 这时它就是一个超声波发生器;反之,如果两电极问未外加电压,当共振板接收 到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超 声波接收换能器。超声波发射换能器与接收换能器在结构上稍有不同,使用时应 分清器件上的标志。 图 3-20 超声波模块电路原理图 超声波接收电路由电平转换芯片 ST202 和超声波接收换能器 T 组成。ST202 是一款电平转换的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常 用的载波频率 38 kHz 与测距的超声波频率 40 kHz 较为接近,因为当 ST202 接受 到 40KHZ 的信号时,会在第 7 脚产生一个低电平下降脉冲,这个信号可以接到 单片机的外部中断引脚作为中断信号输入,可以利用它制作超声波接收电路。实 验证明用 ST202 接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的 抗干扰能力。 第 4 章 系统软件设计 硬件平台结构一旦确定,大的功能框架即形成,软件在硬件平台上构筑,完 成各部分硬件的控制和协调工作。系统功能是由软硬件共同实现的,由于软件的 可伸缩性,最终实现的系统功能可强可弱,差别可能很大。因此,软件是系统的 灵魂。软件采用模块化设计方法,不仅易于编程和调试,也可减小软件故障率和 提高软件的可靠性。 4.1 主程序流程 系统主程序模块主要完成对系统中各模块电路的初始化等工作,其主要包括 对液晶显示器、驱动电路和超声波传感器的初始化,同时循环发送脉冲信号,等 待外部中断以及根据所需要功能进行相应的操作。主程序流程如图 4-1 所示。 图 4-1 主程序流程图 4.2 主要子程序流程 4.2.1 液晶显示子程序流程 LCD 液晶显示模块可用于显示姓名和学号以及距离障碍物的距离,其数据 有单片机的 P2 口输入,其控制由单片机的 P0 口进行控制。由单片机最小系统 开 始 初 始 化 有障碍吗 启动小车 测距并显示 避障程序 有 无 对其进行实时刷新。其子程序流程如图 4-2 所示。 LCD 初始化 结束 与 STC89C52 单片机通信 显 示 动 画 1 显 示 动 画 2 显 示 动 画 3 开始 图 4-2 LCD 液晶显示子程序流程图 4.2.2 超声波子程序流程 主要是实现功能测距软件分为两部分,主程序和中断服务程序,如图 4-3 (a) (b)(c) 所示。主程序完成初始化工作、各路超声波发射和接收顺序的控制。定时 中断服务子程序完成三个方向超声波的轮流发射,外部中断服务子程序主要完成 时间值的读取、距离计算、结果的输出等工作。其主程序如图 4-3(a)所示。 主程序首先是对系统环境初始化,设置定时器 T0 工作模式为 16 位定时计 数器模式。置位总中断允许位 EA 并给显示端口 P0 和 P1 清 0。然后调用超声波 发生子程序送出一个超声波脉冲,为了避免超声波从发射器直接传送到接收器引 起的直射波触发,需要延时约 0.1 ms(这也就是超声波测距仪会有一个最小可测 距离的原因)后才打开外中断 0 接收返回的超声波信号。 由于采用的是 12MHz 的晶振,计数器每计一个数就是 1s,当主程序检测 到接收成功的标志位后,将计数器 T0 中的数(即超声波来回所用的时间)按式 (2)计算,即可得被测物体与测距仪之间的距离,设计时取 20时的声速为 344 m/s 则有:d=(ct)/2=172T0/10000cm(2)其中,T0 为计数器 T0 的计算值。 超声波发生子程序的作用是通过 P1.0 端口发送 2 个左右超声波脉冲信号 (频率约 40kHz 的方波) ,脉冲宽度为 12s 左右,同时把计数器 T0 打开进行计 时。超声波发生子程序较简单,但要求程序运行准确,所以采用 C 语言编程。 超声波测距仪主程序利用外中断检测返回超声波信号,一旦接收到返回超声波信 号(即 INT0 引脚出现低电平) ,立即进入中断程序。进入中断后就立即关闭计 时器 T 停止计时,并将测距成功标志字赋值 1。如果当计时器溢出时还未检测 到超声波返回信号,则定时器 T0 溢出中断将外中断 0 关闭,并将测距成功标志 字赋值 2 以表示此次测距不成功。 前方测距电路的输出端接单片机 INT0 端口, 中断优先级最高,左、右测距电路的输出通过与门 IC3A 的输出接单片机 INT1 端口,同时单片机 P1.3 和 P1.4 接到 IC3A 的输入端,中断源的识别由程序查询 来处理,中断优先级为先右后左。 图 4-3 超声波测距系统软件设计 4.2.3 避障子程序流程图 a 主程序流程图 外部中断入口 b 定时中断服务子程序c 外部中断服务子程序 初始化 开始 定时中断子程序 有回波吗 外部中断子程序 定时器中断入口 定时器初始化 发射超声波 三方均发射完否 N N Y Y 停止发射 返回 关外部中断 读取时间值 计算距离 结果输出 开外部中断 返回 返回 当小车检测到有障碍物后,进入避障子程序,判断障碍物的情况,根据障碍 物的情况选择相应的避障方式控制小车做出做出相应的避障动作。避障完成后退 出。其子程序流程图如图 4-4 所示。 图 4-4 避障子程序流程图 4.3 软件调试 单片机是本设计的核心控制器,只有保证单片机的正常工作才能完成程序的 运行及显示的控制。保证单片机最小系统能够正常工作是前提。判断办法就是用 万用表测量单片机时钟引脚(18、19 脚)的对地电压,以正常工作的单片机用 数字万用表测量为例:18 脚对地约 2.24V,19 脚对地约 2.09V。对于怀疑是复位 电路故障而不能正常工作的单片机也可以采用模拟复位的方法来判断,单片机正 常工作时第 9 脚对地电压为零,可以用导线短时间和5V 连接一下,模拟一下 上电复位,如果单片机能正常工作了,说明这个复位电路没问题。 本设计功能很多,所以对于它的程序也较为复杂,所以在编写程序和测试时 出现了相对较多的问题。如烧入程序后,LCD 显示屏显示闪动,不循迹。则要 首先对测用的延时进行逐渐修改,可以解决循迹问题。 本设计采用 Keil4 软件用来进行编写程序和程序的调试,它是目前最流行开 开 始 有障碍物 吗 障 碍 物 的 情 况 情况 1情况 2情况 3 结 束 情况 4 避障方式 1避障方式 2避障方式 3避障方式 4 无 有 发 MCS-51 系列单片机的软件。软件页面如图 4-5 所示。 Keil4 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的 仿真调试器等在内的完整开发方案,通过一个集成开发环境( uVision)将这些部 份组合在一起。运行 Keil4 软件需要 Pentium 或以上的 CPU,16MB 或更多 RAM、20M 以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP 等操作系 统。掌握这一软件的使用对于使用 51 系列单片机的爱好者来说是十分必要的。 图 4-5 Kil4l 软件界面图 在使用 Keil4 软件时需要注意的是:在程序编译的时候一定要记得输出.hex 文件,因为 STCISP.exe 只有.hex 文件才能下进单片机里去。 由于此循迹避障系统设计程序比较多,为了便于对程序的修改和可移植性等 要求,此设计软件设计使用 C 语言来进行编程,其特点是 C 语言简洁、使用方 便、灵活,具有强大的图形功能,C 语言生成目标代码质量高,程序执行效率高 等。 第 5 章 系统制作与调试 硬件的焊接与调试是整个超声波循迹避障系统设计必不可少的一个环节,它 将验证整个系统设计是否实现了所要完成的功能。 这一章重点介绍 PCB 主板的焊接、循迹传感器的焊接、驱动电路焊接、电 源电路的焊接与车体的搭建方法、ISP 软件的使用以及整机的调试。 5.1 硬件制作 5.1.1 Altium Designer 14 软件 自 20 世纪 80 年代中期以来,计算机应用已进入各个领域并发挥着越来越大 的作用。在这种背景下,美国 ACCEL Technologies Inc 公司推出了第一个应用于 电子线路设计的软件包TANGO,这个软件开创了电子设计自动化(EDA)的 先河。为了适应科学技术的发展,Protel Technology 公园以其强大的研发能力推 出了 Protel For Dos,从此 Protel 这个名字在业内日益响亮。 Altium Designer 14 包含许多高效的新特性和增强功能,能够使整个设计过 程统一起来,实现用户的电子产品创新理念,创造显著地经济效益。Altium Designer 14 其主要功能如下所示。 1高效的复杂电路板设计开发环境。 2高效能的 DirectX 图形引擎。 3实时的 3D 可视化显示。 4电子和机械实时同步设计。 5更真实的 PCB 着色和准确的对象几何尺寸。 6布线技术延伸到智能、快速的物理设计中。 7内部平面显示。 8支持适应制造技术得更高密度布线。 9加工前的实时制造规则检查。 10通过设计智能感知简化设计过程和项目导航。 11全新的 Cadence Allegro 和 Zuken CADSTAR 导入器。 12从设计到制造输出作用编辑器的改进。 13版本控制功能的增强。 14实时链接到供应商的数据库。 15库文件搜索功能的改进。 16以企业形式管理产品发布和发布设计数据。 17基于 FPGA 设计中的定制仪器。 18更为直观的逻辑分析仪。 19数字波形显示的增强控制。 20FPGA 工具反馈。 21用 C 语音开发定制的 FPGA 逻辑。 22可定制的 Wishbone 接口元件。 23基于 FPGA 仪器的现场面板。 24即插即用的软件平台生成器。 25增强的设备视图。 其软件界面如图 5-1 所示。 图 5-1 Altium Designer 14 软件界面图 5.1.2 PCB 的设计与制作 PCB 板的制作和主板的焊接一般包括印制底图图样描绘、底图掩膜层制作 和蚀刻加工等三个环节。 首先根据整机设计,采用电子设计自动化软件中的 Altium Designer 14 进行 印制电路板底图图样的设计。在软件环境下绘制好底图后,可用喷墨式或激光打 印机将 PCB 板的设计图样打印出来,然后进行制作。其图样如以下图样所示。 图 5-2 驱动电路 PCB 板图样 PCB 板的制作一般分制作印制电路板、清洗与打孔和检修三个环节。 1制作印制电路板 利用所打印的 PCB 板图样、热转印纸和恒温电熨斗完 成制作。而热转印法制板的不足之处是:由于热转印纸局部缺陷等原因,会出现 墨粉在热转印纸上局部附着不均匀等现象,对附着层太薄的地方,使抗腐蚀能力 下降,影响 PCB 板的质量。 2清除防护层 对于腐蚀好的印制电路板,选用细砂纸将防护层打磨掉, 并进行清洗。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论