当前位置:首页 >> IT/计算机 >> 超声波避障小车设计1

超声波避障小车设计1


摘 要
80C51 单片机是一款八位单片机,他的易用性和多功能性受到了广大使用者的好 评。这里介绍的是如何用 80C51 单片机完成智能小车测避障功能。本系统以设计题目 的要求为目的, 采用 80C51 单片机为控制核心, 利用超声波传感器检测道路上的障碍, 控制电动小汽车的自动避障, 快慢速行驶, 以及自动停车。 整个系统的电路结构简单, 可靠性能高。实验测试结果满足要求,本文着重介绍了该系统的硬件设计方法及测试 结果分析。 采用的技术主要有: (1) 通过编程来控制小车的速度; (2) 传感器的有效应用; (3) 新型显示芯片的采用

关键词 80C51 单片机、光电检测器、PWM 调速、电动小车

Title

I

Abstract
80C51 is a 8 bit single chip computer.Its easily useing and multi-function suffer large users. This article introduce the CCUT graduation design with the 80C51 single chip copmuter.This design combines with scientific research object. This system regard the request of the topic, adopting 80C51 for controling core,super sonic sensor for test the hinder.It can run in a high

and a low speed or stop automatically.It also can record the time ,distance and the speed or searching light and mark automatically The electric circuit

construction of whole system is simple, the function is dependable. Experiment test result satisfy the request, this text emphasizes introduced hardware system designs and the result analyse. The adoption of technique as: the

(1) Reduce the speed by program the engine; (2) efficient application of the sensor; (3) The adoption of the new display chip.

Keywords Keywords 80C51 single chip computer、light electricity detector、PWM speed adjusting


II



摘 要 .................................................................. I Abstract .............................................................. II 第一章 前 言 ........................................................... 1 第二章 方案设计与论证 .................................................. 3 (一)直流调速系统 ................................................. 3 (二)检测系统 ..................................................... 4 (三)显示电路 ..................................................... 9 (四)系统原理图 ................................................... 9 第三章 硬件设计 ....................................................... 10 (一)80C51 单片机硬件结构 ......................................... 10 (二)最小应用系统设计 ............................................ 11 (三)前向通道设计 ................................................ 12 (四)后向通道设计 ................................................ 14 (五)显示电路设计 ................................................ 17 第四章 软件设计 ....................................................... 20 (一)主程序设计 .................................................. 20 (二)显示子程序设计 .............................................. 24 (三)避障子程序设计 .............................................. 25 (四)软件抗干扰技术 .............................................. 26 (五)“看门狗”技术 .............................................. 28 (六)可编程逻辑器件 .............................................. 29 第五章 测试数据、测试结果分析及结论 ................................... 31 致 谢 ................................................................ 32

参 考 文 献 ........................................................... 33 附录 A 程序清单 ........................................................ 34 附录 B 硬件原理图 ...................................................... 42

III

第一章 前 言
随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。本设计就是 在这样的背景下提出的,指导教师已经有充分的准备。本题目是结合科研项目而确定 的设计类课题。设计的智能电动小车应该能够实时显示时间、速度、里程,具有自动 寻迹、寻光、避障功能,可程控行驶速度、准确定位停车。 根据题目的要求,确定如下方案:在现有玩具电动车的基础上,加装光电、红外 线、 超声波传感器及金属探测器, 实现对电动车的速度、 位置、 运行状况的实时测量, 并将测量数据传送至单片机进行处理, 然后由单片机根据所检测的各种数据实现对电 动车的智能控制。 这种方案能实现对电动车的运动状态进行实时控制, 控制灵活、 可靠, 精度高, 可满足对系统的各项要求。本设计采用 MCS-51 系列中的 80C51 单片机。以 80C51 为 控制核心,利用超声波传感器检测道路上的障碍,控制电动小汽车的自动避障,快慢 速行驶,以及自动停车,并可以自动记录时间、里程和速度,自动寻迹和寻光功能。 80C51 是一款八位单片机,它的易用性和多功能性受到了广大使用者的好评。下面就 简要的介绍一下单片机及其典型应用方式: “单片机”一词是 Single-Chip Microcomputer 较准确的译法,但最能准确反映 单片机设计思想﹑并且具有技术眼光的词汇是 Microcomputer(微处理器) 。之所以 出现了 Sigle-chip Microcomputer 一词,实在是因为早期,甚至到 MCS-51 时期,单 片机准确地体现了 Sigle-chip Microcomputer 的形态和内容。然而发展到 MCS-96, 发展到新一代 80C51﹑M68HC05﹑M68HC11 系列单片机时, 在单片机中着力扩展了各种 控制功能。如 A/D﹑PWM﹑PCA 计数器捕获/比较逻辑﹑高速 I/O 口﹑WDT 等,已突破 了 Microcomputer 的传统内容,朝 Microcomputer 的内涵发展。因此,目前已到了该 给单片机正名的时候了,国外已逐渐统一成 Microcomputer。 从最初的单片机发展到如今的新一代单片机。大致经历了三个年代。如以 Intel8 位单片机为例,这三个年代划大致是: 第一代:以 1976 年推出的 MCS-48 系列为代表,其主要的技术特征是将 CPU 和 计算机外围电路集成到了一个芯片上,作为与通用 CPU 分道扬镳﹑构成新型工业微 控制器取得了成功,为单片机的进一步发展开辟了成功之路。 第二代:以 MCS-51 的 8051﹑8052 为代表,其主要的技术特征是为片机配置了完 善的外部并行总线(AB﹑DB﹑CB)和具有多机识别功能的串行通讯接口(UART),规 范了功能单元的 SFR 控制模式及适应控制器特点的布尔处理系统和指令系统, 为发展 具有良好的兼容性的新一代单片机奠定了良好的基础。 无论是第一代还是第二代单片
1

机都还未突破单片计算机的内涵。 第三代:以 80C51 系列为代表,它包括了 Intel 公司发展 MCS-51 系列的 一代产品,如 8xC152﹑80C51FA/FB﹑80C51GA/GB﹑8xC451﹑8xC452,还包括了 Philips﹑Siemens﹑ADM﹑Fujutsu﹑OKI﹑Harria-Metra﹑ATMEL 等公司以 80C51 为 核心推出的大量各具特色﹑与 80C51 兼容的单片机。 新一代的单片机的最主要的技术 特点是向外部接口电路扩展,以实现 Microcomputer 完善的控制功能为己任,将一些 外部接口功能单元如 A/D﹑PWM﹑PCA(可编程计数器阵列)﹑WDT(监视定时器)﹑高速 I/O 口﹑计数器的捕获/比较逻辑等。这一代单片机中,在总线方面最重要的进展是 为单片机配置了芯片间的串行总线,为单片机应用系统设计提供了更加灵活的方式。 Philips 公司还为这一代单片机 80C51 系列 8xC592 单片机引入了具有较强功能的设 备间网络系统总线----CAN(Controller Area Network BUS). 新一代单片机为外部提供了相当完善的总线结构, 为系统的扩展与配置打下了良 好的基础。Microcontroller 并没有过分强调“单片” ,因为向单片形式发展是一切 先进电子系统都在追求的理想,并不为单片机所专有。单片机的应用方式随对象、环 境、规模不同而大相径庭,不必独崇一宗。 按照所使用单片机的类型不同, 单片机应用系统结构可分成总线方式和非总线方 式。 总线方式的应用系统中, 单片机都具有完善的外部扩展总线, 如并行三总线 (AB、 DB、CB) 、串行通讯总线(如 UART),通过这些总线可方便地扩展外围单元、外设接 口等。采用总线方式的应用系统多属复杂的工控系统、智能仪表、监测系统,或满足 这些应用系统而构成的多机与网络系统。 非总线方式的应用系统省去了外部并行总线,可构成各种小封装芯片,有限的 引脚可提供更多的用户 I/O 口,可使应用系统的芯片数量最少。非总线方式的应用系 统多属小型控制器、测控单元、单元仪表等。 总线方式的单片机在不使用外部并行总线时,外部并行总线引脚可作为 I/O 口 用。在掩摸用户程序时,还可要求将这些 I/O 口改造成具有各种驱动能力的 I/O 口。 本设计就采用了比较先进的 80C51 为控制核心,80C51 采用 CHOMS 工艺,功耗很 低。该设计具有实际意义,可以应用于考古、医疗器械等许多方面。

2

第二章 方案设计与论证
根据题目的要求, 确定如下方案: 在现有玩具电动车的基础上, 加装光电检测器, 实现对电动车的速度、位置、运行状况的实时测量,并将测量数据传送至单片机进行 处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。 这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高, 可满足对系统的各项要求。

(一)直流调速系统
方案一:串电阻调速系统。 方案二:静止可控整流器。简称 V-M 系统。 方案三:脉宽调速系统。 旋转变流系统由交流发电机拖动直流电动机实现变流, 由发电机给需要调速的直 流电动机供电, 调节发电机的励磁电流即可改变其输出电压, 从而调节电动机的转速。 改变励磁电流的方向则输出电压的极性和电动机的转向都随着改变, 所以 G-M 系统的 可逆运行是很容易实现的。该系统需要旋转变流机组,至少包含两台与调速电动机容 量相当的旋转电机,还要一台励磁发电机,设备多、体积大、费用高、效率低、维护 不方便等缺点。且技术落后,因此搁置不用。 V-M 系统是当今直流调速系统的主要形式。它可以是单相、三相或更多相数,半 波、全波、半控、全控等类型,可实现平滑调速。V-M 系统的缺点是晶闸管的单向导 电性,它不允许电流反向,给系统的可逆运行造成困难。它的另一个缺点是运行条件 要求高,维护运行麻烦。最后,当系统处于低速运行时,系统的功率因数很低,并产 生较大的谐波电流危害附近的用电设备。 采用晶闸管的直流斩波器基本原理与整流电路不同的是, 在这里晶闸管不受相位 控制,而是工作在开关状态。当晶闸管被触发导通时,电源电压加到电动机上,当晶 闸管关断时,直流电源与电动机断开,电动机经二极管续流,两端电压接近于零。脉 冲宽度调制(Pulse Width Modulation) ,简称 PWM。脉冲周期不变,只改变晶闸管 的导通时间,即通过改变脉冲宽度来进行直流调速。 与 V-M 系统相比,PWM 调速系统有下列优点: (1)由于 PWM 调速系统的开关频率较高,仅靠电枢电感的滤波作用就可以获得 脉动很小的直流电流,电枢电流容易连续,系统的低速运行平稳,调速范围较宽,可 达 1:10000 左右。由于电流波形比 V-M 系统好,在相同的平均电流下,电动机的损 耗和发热都比较小。

3

(2)同样由于开关频率高,若与快速响应的电机相配合,系统可以获得很宽的 频带,因此快速响应性能好,动态抗扰能力强。 (3)由于电力电子器件只工作在开关状态,主电路损耗较小,装置效率较高。 根据以上综合比较,以及本设计中受控电机的容量和直流电机调速的发展方向, 本设计采用了 H 型单极型可逆 PWM 变换器进行调速。 脉宽调速系统的主电路采用脉宽调制式变换器,简称 PWM 变换器。 脉宽调速也可通过单片机控制继电器的闭合来实现,但是驱动能力有限。为顺利 实现电动小汽车的前行与倒车,本设计采用了可逆 PWM 变换器。可逆 PWM 变换器主电 路的结构式有 H 型、T 型等类型。我们在设计中采用了常用的双极式 H 型变换器,它 是由 4 个三极电力晶体管和 4 各续流二极管组成的桥式电路。

(二)检测系统
检测系统主要实现光电检测,即利用各种传感器对电动车的避障、位置、行车状 态进行测量。 1.行车起始、终点及光线检测: 本系统采用反射式红外线光电传感器用于检测路面的起始、终点(2cm 宽的黑 线) ,玩具车底盘上沿黑线放置一套,以适应起始的记数开始和终点的停车的需要。 利用超声波传感器检测障碍。光线跟踪,采用光敏三极管接收灯泡发出的光线,当感 受到光线照射时,其 c-e 间的阻值下降,检测电路输出高电平,经 LM393 电压比较器 和 74LS14 施密特触发器整形后送单片机控制。 本系统共设计两个光电三极管,分别放置在电动车车头的左、右两个方向,用来 控制电动车的行走方向,当左侧光电管受到光照时,单片机控制转向电机向左转;当 右侧光电管受到光照时,单片机控制转向电机向右转;当左、右两侧光电管都受到光 照时,单片机控制直行。见图 2.1 电动车的方向检测电路(a)。 行车方向检测电路(见图 2.2 电动车的方向检测电路(b))采用反射接收原理配 置了一对红外线发射、接收传感器。该电路包括一个红外发光二极管、一个红外光敏 三极管及其上拉电阻。红外发光二极管发射一定强度的红外线照射物体,红外光敏三 极管在接收到反射回来的红外线后导通,发出一个电平跳变信号。 此套红外光电传感器固定在底盘前沿,贴近地面。正常行驶时,发射管发射红外 光照射地面, 光线经白纸反射后被接收管接收, 输出高电平信号; 电动车经过黑线时, 发射端发射的光线被黑线吸收,接收端接收不到反射光线,传感器输出低电平信号后 送 80C51 单片机处理,判断执行哪一种预先编制的程序来控制玩具车的行驶状态。

4

图 2.1 电动车的方向检测电路(a)

图 2.2 电动车的方向检测电路(b)

前进时,驱动轮直流电机正转,进入减速区时,由单片机控制进行 PWM 变频调速,通过 软件改变脉冲调宽波形的占空比,实现调速。最后经反接制动实现停车。前行与倒车 控制电路的核心是桥式电路和继电器。电桥上设置有两组开关,一组常闭,另一组常 开。 电桥一端接电源, 另一端接了一个三极管。 三极管导通时, 电桥通过三极管接地, 电机电枢中有电流通过;三极管截止时,电桥浮空,电机电枢中没有电流通过。系统 通过电桥的输出端为转向电机供电。 通过对继电器开闭的控制即可控制电机的开断和 转速方向进而达到控制玩具车前行与倒车的目的,实现随动控制系统的纠偏功能。如 图 2.3 前行与倒车控制电路所示。
5

VCC

+ A -

D1 300 500

D2

74LS06 1 A 2

74LS06 1 A 2

d1 d882

d2 8050

图 2.3 前行与倒车控制电路

检测放大器方案: 方案一: 使用普通单级比例放大电路。 其特点是结构简单、 调试方便、 价格低廉。 但是也存在着许多不足。如抗干扰能力差、共模抑制比低等。 方案二:采用差动放大电路。选择优质元件构成比例放大电路,虽然可以达到一 定的精度,但有时仍不能满足某些特殊要求。例如,在测量本设计中的光电检测信号 时需要把检测过来的电平信号放大并滤除干扰, 而且要求对共模干扰信号具有相当强 的抑制能力。 这种情况下须采用差动放大电路, 并应设法减小温漂。 但在实际操作中, 往往满足了高共模抑制比的要求,却使运算放大器输出饱和;为获得单片机能识别的 TTL 电平却又无法抑制共模干扰。 方案三:电压比较器方案。电压比较器的功能是比较两个电压的大小,例如将一 个信号电压 Ui 和一个参考电压 Ur 进行比较,在 Ui>Ur 和 Ui<Ur 两种不同情况下,电 压比较器输出两个不同的电平,即高电平和低电平。而 Ui 变化经过 Ur 时,比较器的 输出将从一个电压跳变到另一个电平。 比较器有各种不同的类型。对它的要求是:鉴别要准确,反应要灵敏,动作要迅 速,抗干扰能力要强,还应有一定的保护措施,以防止因过电压或过电流而造成器件 损坏。 比较器的特点: ⑴ 工作在开环或正反馈状态。放大、运算电路为了实现性能稳定并满足
6

一定的精度要求,这些电路中的运放均引入了深度负反馈;而为了提高比较器的反应 速度和灵敏度,它所采用的运放不但没有引入负反馈,有时甚至还加正反 馈。因此比较器的性能分析方法与放大、运算电路是不同的。 ⑵ 非线性。由于比较器中运放处于开环或正反馈状态,它的两个输入端之间的

电位差与开环电压放大倍数的乘积通常超过最大输出电压, 使其内部某些管子进入饱 和区或截止区,因此在绝大多数情况下输出与输入不成线性关系,即在放大、运算等 电路中常用的计算方法对于比较器不再适用。 ⑶ 开关特性。比较器的输出通常只有高电平和低电平两种稳定状态,因此它相

当与一个受输入信号控制的开关,当输入电压经过阈值时开关动作,使输出从一个电 平跳变到另一个电平。由于比较器的输入信号是模拟量,而它的输出电平是离散的, 因此电压比较器可作为模拟电路与数字电路之间的过渡电路。 由于比较器的上述特点,在分析时既不能象对待放大电路那样去计算放大倍数, 也不能象分析运算电路那样去求解输出与输入的函数关系, 而应当着重抓住比较器的 输出从一个电平跳变到另一个电平的临界条件所对应的输入电压值(阈值)来分析输 入量与输出量之间的关系。 如果在比较器的输入端加理想阶跃信号, 那么在理想情况下比较器的输出也应当 是理想的阶跃电压,而且没有延迟。但实际集成运放的最大转换速率总是有限的,因 此比较器输出电压的跳变不可能是理想的阶跃信号。 电压比较器的输出从低电平变为 高电平所须的时间称为响应时间。响应时间越短,响应速度越快。 减小比较器响应时间的主要方法有: a. 尽可能使输入信号接近理想情况,使它在阈值附近的变化接近理想阶跃 且幅度足够大。 b. 选用集成电压比较器。 c. 如果选用集成运放构成比较器,为了提高响应速度可以加限幅措施,以避免集 成运放内部的管子进入深饱和区。具体措施多为在集成运放的两个输入端并联二极 管。如图 2.4 电压比较器电路所示:

图 2.4 电压比较器电路

在本设计中,光电传感器只输出一种高低电平信号且伴有外界杂波干扰,所以我 们尝试采用了一种滞回比较器。简单电压比较器结构简单,而且灵敏度高,但它的抗 干扰能力差,也就是说如果输入信号因受干扰在阈值附近变化,则比较器输出就会反
7

复的从一个电平跳到另一个电平。如果用这样的输出电压控制电机或继电器,将出现 频繁动作或起停现象。 这种情况, 通常是不允许的。 而滞回比较器则解决了这个问题。 滞回比较器有两个数值不同的阈值,当输入信号因受干扰或其他原因发生变化时,只 要变化量不超过两个阈值之差,滞回比较器的输出电压就不会来回变化。所以抗干扰 能力强。 但是,滞回比较器毕竟是模拟器件,温度的漂移是它无法消除的。 方案四:施密特触发器。 综合考虑系统的各项性能,最后我们决定采用数字器件——施密特触发器。 施密特触发器是双稳态触发器的变形, 它有两个稳定状态, 触发方式为电平触发, 只要外加触发信号的幅值增加到足够大,它就从一个稳定状态翻转到另一个稳定状 态。施密特触发器具有与滞回比较器相类似的滞回特性,但施密特触发器的抗干扰能 力比滞回比较器更强。 2.行车距离检测 由于红外检测具有反应速度快、定位精度高,可靠性强以及可见光传感器所不能 比拟的优点,故采用红外光电码盘测速方案。具体电路同图 2.5 行车距离检测电路 所示:

图 2.5 行车距离检测电路

红外测距仪由测距轮,遮光盘,红外光电耦合器及凹槽型支架组成的。测长轮的 周长为记数的单位,最好取有效值为单一的数值(如 0.1 米) ,精度根据电动车控制 的需要确定。测距轮安装在车轮上,这样能使记数值准确一些。 遮光盘有一缺口,盘下方的凹形物为槽型光电耦合器,其两端高出部分的里面分 别装有红外发射管和红外接收管。遮光盘在凹槽中转动时,缺口进入凹槽时,红外线 可以通过,缺口离开凹槽红外线被阻挡。由此可见,测距轮每转一周,红外光接收管 均能接收到一个脉冲信号经过整形器后送入计数器或直接送入单片机中。 为实现可逆记数功能,我们在测距仪中并列放置了两个槽型光电耦合器,遮光盘 先后通过凹槽可产生两个脉冲信号。 根据两个脉冲信号发生的先后顺序与两个光电耦 合器的位置关系,即可计算出玩具车的行驶方向(前进或后退) 。 遮光盘及槽型光电耦合器均安装在不透光的盒子里,以避免外界光线的干扰,使 电路不能正常工作。
8

测距原理:将光栅安装在电机轴上,当电机转动时,光栅也随之转动,同时安装 在光栅一侧的红外发光二极管点亮,在光栅的另一侧设有红外三极管,用于接收红外 发光二极管发出的红外线信号。由于光栅随电机高速转动,则红外线三极管接收到的 就是一系列脉冲信号。将该信号传输到 80C51 单片机的内部计数器计数,根据预先实 测的数据换算关系即可计算出电动机车的行车距离。

(三)显示电路
本设计中用两片 4 位八段数码管 gem4561 作显示器,并具有双重功能,在小车不行 驶时其中一片显示年﹑月,另一片显示时﹑分; 当小车行驶时,分别显示时间和行驶 距离。

(四)系统原理图
简易智能电动车采用 80C51 单片机进行智能控制。开始由手动启动小车,并复位, 当经过规定的起始黑线,由超声波传感器和红外光电传感器检测,通过单片机控制小 车开始记数显示并避障、调速;系统的自动避障功能通过超声波传感器正前方检测和 红外光电传感器左右侧检测,由单片机控制实现;在电动车进驶过程中,采用双极式 H 型 PWM 脉宽调制技术,以提高系统的静动态性能;采用动态共阴显示行驶时间和里 程。 系统原理图如图 2.6 所示。

图 2.6 系统原理图

9

第三章 硬件设计
一个单片机应用系统的硬件电路设计包含有两部分内容:一是系统扩展,即单片 机内部的功能单元,如 ROM﹑RAM﹑I/O 口﹑定时/记数器﹑中断系统等能量不能满足 应用系统的要求时,必须在片外进行扩展,选择适当的芯片,设计相应的电路。二是 系统配置,既按照系统功能要求配置外围设备,如键盘显示器﹑打印机﹑A/D﹑D/A 转换器等,要设计合适的接口电路。

(一)80C51 单片机硬件结构
80C51 单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限 的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器、数据 存储器、程序存储器、并行 I/O 口、串行口、定时器/计数器、中断系统及特殊功 能寄存器。它们都是通过片内单一总线连接而成,其基本结构依旧是 CPU 加上外围 芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器的集中控制 方式。 1 微处理器 该单片机中有一个 8 位的微处理器,与通用的微处理器基本相同,同样包括了 运算器和控制器两大部分,只是增加了面向控制的处理功能,不仅可处理数据,还可 以进行位变量的处理。 2 数据存储器 片内为 128 个字节,片外最多可外扩至 64k 字节,用来存储程序在运行期间的 工作变量、运算的中间结果、数据暂存和缓冲、标志位等,所以称为数据存储器。 3 程序存储器 由于受集成度限制,片内只读存储器一般容量较小,如果片内的只读存储器的 容量不够,则需用扩展片外的只读存储器,片外最多可外扩至 64k 字节。 4 中断系统 具有 5 个中断源,2 级中断优先权。 5 定时器/计数器 片内有 2 个 16 位的定时器/计数器, 具有四种工作方式。 6 串行口 1 个全双工的串行口, 具有四种工作方式。 可用来进行串行通讯, 扩展并行 I/O 口,甚至与多个单片机相连构成多机系统,从而使单片机的功能更强且应用更广。

10

7 P1 口、P2 口、P3 口、P4 口 为 4 个并行 8 位 I/O 口。 8 特殊功能寄存器 共有 21 个,用于对片内的个功能的部件进行管理、控制、监视。实际上是一 些控制寄存器和状态寄存器,是一个具有特殊功能的 RAM 区。 由上可见,80C51 单片机的硬件结构具有功能部件种类全,功能强等特点。

(二)最小应用系统设计
80C51 是片内有 ROM/EPROM 的单片机,因此,这种芯片构成的最小系统简单 ﹑可靠。用 80C51 单片机构成最小应用系统时,只要将单片机接上时钟电路和复位 电路即可,如图 3.1 80C51 单片机最小系统所示。由于集成度的限制,最小应用系 统只能用作一些小型的控制单元。其应用特点: (1)有可供用户使用的大量 I/O 口线。 (2)内部存储器容量有限。 (3)应用系统开发具有特殊性。

图 3.1 80C51 单片机最小系统

1、时钟电路 80C51 虽然有内部振荡电路,但要形成时钟,必须外部附加电路。80C51 单片机 的时钟产生方法有两种。内部时钟方式和外部时钟方式。 本设计采用内部时钟方式,利用芯片内部的振荡电路,在 XTAL1、XTAL2 引脚上 外接定时元件, 内部的振荡电路便产生自激振荡。 本设计采用最常用的内部时钟方式, 即用外接晶体和电容组成的并联谐振回路。 振荡晶体可在 1.2MHZ 到 12MHZ 之间选择。 电容值无严格要求,但电容取值对振荡频率输出的稳定性、大小、振荡电路起振速度 有少许影响,CX1、CX2 可在 20pF 到 100pF 之间取值,但在 60pF 到 70pF 时振荡器有 较高的频率稳定性。所以本设计中,振荡晶体选择 6MHZ,电容选择 65pF. 在设计印刷电路板时, 晶体和电容应尽可能靠近单片机芯片安装, 以减少寄生电

11

容,更好的保证振荡器稳定和可靠地工作。为了提高温度稳定性,应采用 NPO 电容。 2、复位电路 80C51 的复位是由外部的复位电路来实现的。复位引脚 RST 通过一个斯密特触发器用 来抑制噪声,在每个机器周期的 S5P2,斯密特触发器的输出电平由复位电路采样一 次,然后才能得到内部复位操作所需要的信号。 复位电路通常采用上电自动复位和按钮复位两种方式。 最简单的上电自动复位电路如图 3.2 80C51 复位电路所示。上电自动复位是通过 外部复位电路的电容充电来实现的。只要 Vcc 的上升时间不超过 1ms,就可以实现自 动上电复位。时钟频率用 6MHZ 时 C 取 22uF,R 取 1KΩ。 除了上电复位外,有时还需要按键手动复位。本设计就是用的按键手动复位。按 键手动复位有电平方式和脉冲方式两种。其中电平复位是通过 RST 端经电阻与电源 Vcc 接通而实现的。按键手动复位电路见下图。时钟频率选用 6MHZ 时,C 取 22uF,Rs 取 200Ω,RK 取 1KΩ。

图 3.2 80C51 复位电路

(三)前向通道设计
单片机用与测控系统时,总要有与被测对象相联系的前向通道。因此,前向通 道设计与被测对象的状态、特征、所处环境密切相关。在前向通道设计时要考虑到传 感器或敏感元件选择、通道结构、信号调节、电源配置、抗干扰设计等。在通道电路 设计中还涉及到模拟电路诸多问题。 1﹑前向通道的含义 当将单片机用作测﹑控系统时,系统中总要有被测信号输入通道,有计算机拾

12

取必要的输入信息。作为测试系统,对被测对象拾取必要的原始参量信号是系统的核 心任务,对控制系统来说,对被控对象状态的测试以及对控制条件的监测也是不可缺 少的环节。 对被测对象状态的测试一般都离不开传感器或敏感元件,这是因为被测对象的 状态参数常常是一些非电物理量,如温度、压力、载荷、位移等,而计算机是一个数 字电路系统。因此,在前向通道中,传感器、敏感元件及其相关电路占有重要地位。 对被测对象的信号的拾取其主要任务就是最忠实地反映被测对象的真实状态, 它包括实时性与测量精度。同时使这些测量信号能满足计算机输入接口的电平要求。 因此,单片机应用系统中的前向通道体现了被测对象与系统相互联系的信号输 入通道, 原始参数输入通道。 由于在该通道中主要是传感器与传感器有关的信号调节、 变换电路, 故也可称为传感器接口通道。 在单片机应用系统中,对信号输入、传感、变换应作广义理解,例如开关量的 检测及信号输入,在单片机的各种应用系统中有着广泛的应用。最简单的开关量输入 通道就是一个具有 TTL 电平的状态开关, 如水银温度触点、 温度晶闸管、 时间继电器、 限位开关等。故只要反映外界状态的信号输入通道都可称为前向通道。 并不是所有单片机应用系统都有前向通道,例如时序控制系统,只根据系统内 部的时间序列来控制外部的运行状态; 分布式测控系统中的智能控制总站完成上级主 计算机与现场测、 控子站计算机之间的指令、 数据传送。 这些应用系统没有被测对象, 故不需要前向通道。 2﹑前向通道的设计 (1)传感器的比较 识别障碍的首要问题是传感器的选择,下面对几种传感器的优缺点进行说明(见 表 3.1) 。探测障碍的最简单的方法是使用超声波传感器,它是利用向目标发射超声 波脉冲,计算其往返时间来判定距离的。该方法被广泛应用于移动机器人的研究上。 其优点是价格便宜,易于使用,且在 10m 以内能给出精确的测量。不过在 ITS 系统中 除了上文提出的场景限制外,还有以下问题。首先因其只能在 10m 以内有效使用,所 以并不适合 ITS 系统。 另外超声波传感器的工作原理基于声, 即使可以使之测达 100m 远,但其更新频率为 2Hz,而且还有可能在传输中受到它信号的干扰,所以在 CW/ICC 系统中使用是不实际的。
表 3.1 传感器性能比较

传感器类型 超声波 视觉









价格合理,夜间不受影响。 测量范围小,对天气变化敏感。 易于多目标测量和分类, 分辨 不能直接测量距离,算法复杂,处理

13

激光雷达 MMW 雷达

率好。

速度慢。

价格相合理,夜间不受影响 对水、灰尘、灯光敏感。 不受灯光、天气影响。 价格贵

视觉传感器在 CW 系统中使用得非常广泛。其优点是尺寸小,价格合理,在一定 的宽度和视觉域内可以测量定多个目标, 并且可以利用测量的图像根据外形和大小对 目标进行分类。但是算法复杂,处理速度慢。雷达传感器在军事和航空领域已经使用 了几十年。主要优点是可以鲁棒地探测到障碍而不受天气或灯光条件限制。近十年来 随着尺寸及价格的降低,在汽车行业开始被使用。但是仍存在性价比的问题。 (2)超声波障碍检测 超声波是一种在弹性介质中的机械振荡,其频率超过 20KHz,分横向振荡和纵向 振荡两种,超声波可以在气体、液体及固体中传播,其传播速度不同。它有折射和反 射现象,且在传播过程中有衰减。利用超声波的特性,可做成各种超声波传感器,结 合不同的电路,可以制成超声波仪器及装置,在通讯、医疗及家电中获得广泛应用。 作为超声波传感器的材料,主要为压电晶体。压电晶体组成的超声波传感器是一 种可逆传感器, 它可以将电能转变成机械振荡而产生超声波, 同时它接收到超声波时, 也能转变成电能,故它分为发送器和接收器。超声波传感器有透射型、反射型两种类 型,常用于防盗报警器、接近开关、测距及材料探伤、测厚等。 本设计采用 T/R-40-12 小型超声波传感器作为探测前方障碍物体的检测元件,其 中心频率为 40Hz,由 80C51 发出的 40KHz 脉冲信号驱动超声波传感器发送器发出 40KHz 的脉冲超声波,如电动车前方遇到有障碍物时,此超声波信号被障碍物反射回 来, 由接收器接收, LM318 两级放大, 经 再经带有锁相环的音频解码芯片 LM567 解码, 当 LM567 的输入信号大于 25mV 时,输出端由高电平变为低电平,送 80C51 单片机处 理。超声波检测如图 3.3 超声波检测电路所示。

图 3.3 超声波检测电路

(四)后向通道设计
在工业控制系统中,单片机总要对控制对象实现操作,因此,在这样的系统中,
14

总要有后向通道。后向通道是计算机实现控制运算处理后,对控制对象的输出通道接 口。 根据单片机的输出和控制对象实现控制信号的要求,后向通道具有以下特点: (1) 小信号输出、大功率控制。根据目前单片机输出功率的限制,不能输出控制对 象所要求的功率信号。 (2) 是一个输出通道。输出伺服驱动系统控制信号,而伺服驱动系统中的状态反馈 信号通常是作为检测信号输入前向通道。 (3) 接近控制对象,环境恶劣。控制对象多为大功率伺服驱动机构,电磁、机械干 扰较为严重。但后向通道是一个输出通道,而且输出电平较高,不易受到直接 损害。但这些干扰易从系统的前向通道窜入。 单片机在完成控制处理后, 总是以数字信号通过 I/O 口或数据总线送给控制对 象。这些数字信号形态主要有开关量、二进制数字量和频率量,可直接用于开 关量、数字量系统及频率调制系统,但对于一些模拟量控制系统,则应通过数 /模转换成模拟量控制信号。 根据单片机输出信号形态及控制对象要求,后向通道应解决: (1) 功率驱动。将单片机输出信号进行功率放大,以满足伺服驱动的功率要求。 (2) 干扰防治。 主要防治伺服驱动系统通过信号通道﹑电源以及空间电磁场对计算 机系统的干扰。 通常采用信号隔离﹑电源隔离和对功率开关实现过零切换等方 法进行干扰防治。 (3) 数/模转换。对于二进制输出的数字量采用 D/A 变换器;对于频率量输出则可 以采用 本设计调速采用 PWM 调速: 为顺利实现电动小汽车的左转和右转,本设计采用了可逆 PWM 变换器。可逆 PWM 变换器主电路的结构式有 H 型、T 型等类型。我们在设计中采用了常用的双极式 H 型 变换器,它是由 4 个三极电力晶体管和 4 个续流二极管组成的桥式电路。图 3.4 为双 极式 H 型可逆 PWM 变换器的电路原理图。

15

VCC

q3 1 A 2 r1 10k 74LS06 8550 q1 8550 D1 D3 r4 10K 2 A 1

74LS06

M
1K

1K

q4 1 A 2 r2 10k 74LS06 8050 q2 8050 D2 D4 r3 10K 2 A 1

74LS06

图 3.4 双极式 H 型可逆 PWM 变换器电路原理图 4 个电力晶体管的基极驱动电压分为两组。VT1 和 VT4 同时导通和关断,其驱动 电路中 Ub1=Ub4;VT2 和 VT3 同时动作,其驱动电压 Ub2=Ub3= -Ub1。 双极式 PWM 变换器的优点如下: (1)电流一定连续; (2)可使电动机在四象限中运行; (3)电机停止时有微振电流,能消除静摩擦死区; (4)低速时,每个晶体管的驱动脉冲仍较宽,有利于保证晶体管可靠导通; (5)低速平稳性好,调速范围可达 20000 左右。 1、脉宽调制原理: 脉宽调制器本身是一个由运算放大器和几个输入信号组成的电压比较器。 运算放 大器工作在开换状态,稍微有一点输入信号就可使其输出电压达到饱和值,当输入电 压极性改变时,输出电压就在正、负饱和值之间变化,这样就完成了把连续电压变成 脉冲电压的转换作用。加在运算放大器反相输入端上的有三个输入信号。一个输入信 号是锯齿波调制信号,另一个是控制电压,其极性大小可随时改变,与锯齿波调制信 号相减,从而在运算放大器的输出端得到周期不变、脉宽可变的调制输出电压。只要 改变控制电压的极性,也就改变了 PWM 变换器输出平均电压的极性,因而改变了电动 机的转向.改变控制电压的大小,则调节了输出脉冲电压的宽度,从而调节电动机的转 速.只要锯齿波的线性度足够好,输出脉冲的宽度是和控制电压的大小成正比的. 2、逻辑延时环节: 在可逆 PWM 变换器中,跨接在电源两端的上下两个晶体管经常交替工作.由于晶体管
16

的关断过程中有一段存储时间和电流下降时间,总称关断时间,在这段时间内晶体 管并未完全关断.如果在此期间另一个晶体管已经导通,则将造成上下两管之通,从 而使电源正负极短路.为避免发生这种情况,设置了由 RC 电路构成的延时环节. 3 电源的设计 本设计的电源为车载电源。为保证电源工作可靠,单片机系统与动力伺服系统的 电源采用了大功率、大容量的蓄电池;而传感器的工作电源则采用了小巧轻便的干电 池。 。

(五)显示电路设计
本设计中用两片 4 位八段数码管 5461 作显示器,并具有双重功能,在小车不行驶 时其中一片显示年月,另一片显示时.分. 当小车行驶时,分别显示时间和行驶距离原 理图如图 1. 本设计中采用新型芯片 EM78P458 作为显示驱动器,它的管脚如图 3.5 EM78P458 管脚介绍所示,用单片机的并行口控制,一个数码显示电路用 4 个口线,用专用驱动芯 片控制可以减少对 CPU 的利用时间,单片机将有更多的时间去完成其他功能.
图 3.5 EM78P458 的管脚
20 19 18 75 16 15 14 13 12 11 led2 led1 vss 17 vcc d3 d2 d1 d0 dp EM78P458 led3 led4 a b gnd c d e f g 1 2 3 4 5 6 7 8 9 10

该芯片共有 20 个管脚,管脚 LED1﹑LED2﹑LED3﹑LED4 分别接 10k 电阻和三极 管后与 4 位八段数码管 5461 中的 a1﹑a2﹑a3﹑a4 四个数位选择端相连, 这四个数位 选择端用来产生 LED 选通信号。 管脚 a﹑b﹑c﹑d﹑e﹑f﹑g﹑dp 分别接 680 欧电阻后与四位八段数码管 5461 中 的 a﹑b﹑c﹑d﹑e﹑f﹑g﹑dp 相连,分别控制各段码和小数点。 管脚 d0﹑d1﹑d2﹑d3 接单片机并行口, 通过对单片机对芯片进行控制。 管脚 vss 串上 10k 电阻后与 vcc 管脚相接后再接+5v 电源,管脚 gnd 接地。 该芯片所驱动的显示电路如图 3.6 EM78P458 集成显示电路所示

图 3.6 EM78P458 集成显示电路

17

显示驱动器支持动态显示,其显示功能如表 4.2 真值表所示,0000-1001 显示从 0-9 数字,1010 是未进位时是小数点清位,1011 是进位后加小数点,1100-1111 是八 段共阴数码管的位选。
表 4.2 真值表

D3 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

D2 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

D1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

D0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

显示 0 1 2 3 4 5 6 7 8 9 清小数点 加小数点 a1 选通 a2 选通 a3 选通 a4 选通

18

gem4561ae

a b c d e f g dp a1 a2 20 a2 VCC a1 10k 10k 6.8k 19 18 75 16 15 14 13 12 11 dp EM78P458 led2 led1 vss 17 vcc d3 d2 d1 d0 dp led3 led4 a b gnd c d e f g 1 2 3 4 5 6 7 8 9 10 680 680 680 680 680 10k 10k 680 680 9014 c d e f g 9014 9014 9014 a4 a3 a3 a4 a b

19

第四章 软件设计
系统软件设计说明 在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每 个生产对象的实际需要设计应用程序。因此,软件设计在微机控制系统设计中占重要 地位。对于本系统,软件更为重要。 在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。数据处 理包括:数据的采集、数字滤波、标度变换等。过程控制程序主要是使单片机按一定 的方法进行计算,然后再输出,以便控制生产。 为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一 部分叫做一个模块。所谓“模块” ,实质上就是所完成一定功能,相对独立的程序段, 这种程序设计方法叫模块程序设计法。 模块程序设计法的主要优点是: 1、 单个模块比起一个完整的程序易编写及调试; 2、 模块可以共存,一个模块可以被多个任务在不同条件下调用; 3、 模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。 本系统软件采用模块化结构,由主程序﹑定时子程序、避障子程序﹑中断子程序 ﹑显示子程序﹑调速子程序﹑算法子程序构成。

(一)主程序设计
主程序清单如下: limiw miao fenmi fmiao meter fenzh point shimi shifn equ equ equ equ equ equ equ equ equ 30h ;厘米位 31h ;秒位 32h ;分米位 33h ;分秒位 34h ;米位 35h ;分位 36h ;小数点位 37h ;十米位 38h ;十分位

sudu jishk

equ equ

39h ;速度控制 3ah ;记时开始

20

zhond zhodu zhon maicho jinweb bhcs

equ equ equ equ equ equ

3bh 3ch 3eh 3fh 40h 41h

dpan fenchu fencun pand

equ equ equ equ

42h 43h 44h 45h

fenmc org ajmp org ajmp org ajmp org main:

equ 0000h main 000bh st0 001bh st1 0100h

51h

mov limiw,#00h mov miao,#00h mov fenmi,#00h mov fmiao,#00h mov meter,#00h mov fenzh,#00h mov point,#0bh mov shimi,#00h mov shifn,#00h mov jishk,#00h mov zhond,#00h mov zhodu,#00h mov zhon,#00h
21

mov maicho,#00h mov jinweb,#03h mov bhcs,#00h mov sp,#6fh mov tmod,#21h mov th0,#3ch mov tl0,#0b0h mov th1,#9ch mov tl1,#9ch setb ea setb et0 setb et1 mov p1,#0aah acall xianshi 软件流程 如图 4.1 流程图所示:

22

初 始 化

否 开光是否按 是 低速行驶

是否遇到黑线 是 否 是 高速行驶 计时开始 计里程开始

是 是否偏离 否 否 转向

是 是否有障碍 是 否 否 是 是否有光源 否 是 否 停车
图 4.1 流程图

转向躲避

驶向光源

23

(二)显示子程序设计
程序清单如下: xianshi: mov p1,#0aah mov p1,#0cch mov a,limiw swap a add a,miao mov p1,a nop nop mov p1,#0ddh mov a,fenmi swap a add a,fmiao mov p1,a nop nop mov p1,#0eeh mov a,#0b0h add a,point mov p1,a nop nop mov p1,#0eeh mov a,meter swap a add a,fenzh mov p1,a nop nop mov p1,#0ffh mov a,shimi swap a
24

add a,shifn mov p1,a ret

(三)避障子程序设计
程序清单如下: zhangai: jb 25h,stop jnb 22h,youzhuan jnb 23h,youzhuan jnb 24h,zuozhuan jnb 26h,zuozhuan ajmp jiance zuozhuan: clr p0.5 clr p0.4 mov sudu,#05h acall delaa setb p0.4 setb p0.5 mov sudu,#07h ajmp jiance youzhuan: clr p0.6 clr p0.7 mov sudu,#05h acall delaa setb p0.7 setb p0.6 mov sudu,#07h ajmp jiance stop: acall delay jnb 25h,zhangai clr tr0
25

mov a,fenmi mov fenmc,a mov a,#02h add a,fenmc mov fenmc,a here: cjne a,fenmi,here clr tr1 setb p2.6 acall delaa setb p2.7 ajmp $

(四)软件抗干扰技术
提高玩具车智能控制的可靠性,仅靠硬件抗干扰是不够的,需要进一步借助于软件抗 干扰技术来克服某些干扰。在单片机控制系统中,如能正确的采用软件抗干扰技术, 与硬件干扰措施构成双道抗干扰防线,无疑为了将大大提高控制系统的可靠性。经常 采用的软件抗干扰技术是数字滤波技术、开关量的软件抗干扰技术、指令冗余技术、 软件陷阱技术等。 1、数字滤波技术: 一般单片机应用系统的模拟输入信号中,均含有种种噪音和干扰,它们来自被测 量本身、传感器、外界干扰等。为了进行准确测量和控制,必须消除被测信号中的噪 音和干扰。对于这类信号,采用积分时间等于 20ms 的整数倍的双积分 A/D 转换器, 可有效的消除其影响。后者为随机信号,它不是周期信号。对于随机干扰,我们可以 用数字滤波方法予以削弱或滤除。所谓数字滤波,就是通过一定的计算或判断程序减 少干扰在有用信号中的比重。故实质上它是一种程序滤波。数字滤波克服了模拟滤波 器的不足,它与模拟滤波器相比 ,有以下几个优点: 数字滤波是用程序实现的,不需要增加硬设备,所以可靠性高,稳定性好。 数字滤波可以根据信号的不同,采用不同的滤波方法或滤波参数,具有灵活、方 便,功能强的特点。 数字滤波可以对频率很低的信号实现滤波,克服了模拟滤波器的缺陷。 由于数字滤波器具有以上优点, 所以数字滤波在微机应用系统中得到了广泛的应 用。 2、开关量的软件抗干扰技术: 干扰信号多呈毛刺状, 作用时间短, 利用这一点, 我们在采集某一开关量信号时, 可多次重复采集,直到连续两次或两次以上结果完全一致方为有效。若多次采样后, 信号总是变化不定,可停止采集,给出报警信号,由于开关量信号主要是来自各类开

26

关型状态传感器,如限位开关、操作按钮、电气触点等,对这些信号的采集不能用多 次平均的方法,必须绝对一致才行。如果开关量信号超过 8 个,可按 8 个一组进行分 组处理, 也可定义多字节信息暂存区, 按类似方法处理。 在满足实时性要求的前提下, 如果在各次采集数字信号之间接入一段延时,效果会好一些,就能对抗较宽的干扰。 输出设备是电位控制型还是同步锁存型,对干扰的敏感性相对较大。前者有良好 的抗‘毛刺’干扰能力,后者不耐干扰,当锁存线上出现干扰时,它就会盲目锁存当 前的数据,也不管此时数据是否有效。输出设备和惯性(响应速度)与干扰的耐受能 力也有很大关系。惯性大的输出设备(如各类电磁执行机构)对‘毛刺’干扰有一定 的耐受能力。惯性小的输出设备(如通行口、显示设备)耐受能力就小一些。在软件 上, 最为有效的方法就是重复输出同一个数据。 只要有可能, 其重复周期尽可能短些。 外设设备接受到一个被干扰的错误信息后,还来不及作出有效的反应,一个正确的信 息又来了,就可及时防止错误动作的产生。另外,各类数据锁存器尽可能和 CPU 安装 在同一电路板上,使传输线上传送的都是锁存好的电位控制信号,对于重要的输出设 备,最好建立检测通道,CPU 可以检测通道来确定输出结果的正确性。 3、指令冗余技术: 当 CPU 受到干扰后,往往将一些操作数当作指令码来执行,引起程序混乱。当程 序弹飞到某一字节指令上时,便自动纳入正轨。当弹飞到某一双字节指令上时,有可 能落到其操作数上,从而继续出错。当程序弹飞到三字节指令上时,因它有两个操作 数,继续出错的机会就更大。因此,我们应多采用单字节指令(NOP)或将单字节指令 重复书写, 这便是指令冗余。 指令冗余无疑会降低系统的效率, 但在绝大多数情况下, CPU 还不至于忙到不能多执行几条指令的程度,故这种方法还是被广泛采用。 在一些对程序流向起决定作用的指令之前插入两条 NOP 指令, 以保证弹飞的程序 迅速纳入正确轨道。在某些对系统工作状态重要的指令前也可插入两条 NOP 指令,以 保证正确执行。指令冗余技术可以减少程序弹飞的次数,使其很快进入程序轨道,但 这并不能保证在失控期间不干坏事,更不能保证程序纳入正常轨道后就太平无事了, 解决这个问题必须采用软件容错技术。 (4)软件陷阱技术: 指令冗余使弹飞的程序安定下来是有条件的。 首先, 弹飞的程序必须落到程序区; 其次,必须执行到冗余指令。所谓软件陷阱,就是一套引导指令,强行将捕获的程序 引向一个指定的地址,在那里有一段专门对程序出错进行处理的程序。如果我们把这 段程序的入口标号记为 ERR 的话,软件陷阱即为一条无条件转移指令,为了加强其 捕捉效果,一般还在它前面加两条 NOP 指令,因此真正的软件陷阱由 3 条指令构成: NOP NOP ERR
27

软件陷阱安排在以下四种地方: (1)未使用的中断向量区。 (2)未使用的大片 ROM 空间 (3)表格 4、程序区 由于软件陷阱都安排在正常程序执行不到的地方,故不影响程序执行效率,在当 前 EPROM 容量不成问题的条件下,还是多多益善。

(五) “看门狗”技术
PC 受到干扰而失控,引起程序乱飞,也可能使程序陷入“死循环” 。指令技术、软件 陷阱技术不能使失控的程序摆脱“死循环”的困境,这时系统完全瘫痪。如果操作者 在场,就可以按下人工复位安钮,强制系统复位。但操作者不能一直监视着系统,也 往往是在引起不良后果之后才进行人工复位。 为使程序脱离 “死循环” 通常采用 , “看 门狗技术”“看门狗”技术就是不断监视程序循环运行时间,若发现时间超过已知的 。 循环设定时间,则认为系统陷入了“死循环” ,然后强迫程序返回到 0000H 入口,在 0000H 处安排一段出错处理程序,使系统运行纳入正规。 “看门狗”技术可由硬件实现,可由软件实现,也可由两者结合实现。本系统采 用硬件“看门狗”电路。 实现硬件“看门狗”电路方案较多,目前采用较多的方案有以下几种: 1、采用微处理器监控器; 2、采用单稳态电路来实现“看门狗” ,单稳定电路可采用 74LS123; 3、采用内带震荡器的记数芯片。 本设计采用第三种方案实现“看门狗”电路,下面就对该方案作以介绍。 (1)基本原理 CD4060 是带震荡器的 14 位计数器, 由该芯片构成的看门狗电路如图 4.2 看门狗 电路图所示。 4060 记数频率由 RT 和 CT 决定。设实际的程序所需工作周期为 T,分频器记满时 间为 T’,当 T’>T 且系统正常工作时,程序每隔 T 对 4060 进行扫描一次,分频且永 无记满输出信号。如系统工作不正常(如程序跑飞、死循环等) ,程序对 4060 发不出 扫描信号,分频器记满输出一脉冲号使 CPU 复位。 (2)参数选择 4060 的振荡频率 f 由 RT 、CT 决定。Rs 用于改善振荡器的稳定性,Rs 要大于 RT。 一般取 Rs=10RT,且 RT>1kΩ,CT≥100pF。如果 Rs=450Ω,RT=45Ω,CT=1uF,则 f=10HZ。 4060 的振荡频率和 Qi(i=6,7,8,9,10,12,13,14)的选择要根据情况确定。

28

图 4.2 看门狗电路图

(3)几个原则 看门狗电路必须由硬件逻辑组成,不宜由可编程计数器充当,因为 CPU 失控后, 可能会修改可编程器件参数,使看门狗失效。 4060 的 RST 线上阻容组成的微分电路很重要,因为扫描输入信号是 CPU 产生的 正脉冲,若此信号变“1”后,由于干扰,程序乱飞,微分电路只能让上跳沿通过, 不会封死 4060,看门狗仍能计数起作用。若没有微分电路,扫描输入信号上的“1” 状态封死 4060,使之不能记数,看门狗不起作用。 CPU 必须在正确完成所有工作后才能发扫描输入信号,且程序中发扫描信号的地 方不能太多。否则,正好在哪里有死循环,看门狗就不产生记满输出信号,不能重新 启动 CPU。 4060 的记满输出信号不但要接到 MCS-51 的 RST 脚, 而且还应接到其它芯片的 RST 脚,因为程序乱飞后,其它具有 RST 脚的芯片也混乱了,必须全部复位。

(六)可编程逻辑器件
可编程逻辑器件 GAL16V8 是 LATTICE 公司研制的一种电可擦除的可重复编程的低 密度 PLD 器件。它采用更为灵活的可编 I/O 结构,并采用了先进的 EECOMS 工艺,数 秒内即可完成芯片的擦除和编程过程,并可反复改写,是产品开发研制的理想器件之 一。 GAL16V8 技术特性 (1)电可擦除工艺 可重编程单元 100%成品率 可重配置逻辑 (2)高性能 E2CMOS 工艺 低功耗:45mA 最大运行功耗,35mA 最大维持功耗 高速度:15~25us 最快存取速度 (3)8 个输出逻辑单元 对于复杂逻辑设计具有最大灵活性 GAL16V8 可仿真 20 条引脚的 PAL 器件,具有功能 / 熔丝图 /参数的完全兼容性 (4)预置、加电复位全部寄存器 (5)具有保密单元、电子标签

29

(6)数据保持超过 20 年。 80C51 按键电路直接由 80C51 接口电路查询。消抖(延时 20ms)由软件延时完成。

30

第五章 测试数据、测试结果分析及结论
测试方法与仪器: 1、测试仪器 测试仪器包括秒表、数字万用表、信号发生器、示波器、MCS51 仿真机、直流稳 压电源等。 2、测试方法 数字万用表主要用来测试分立元件的电阻、压降、漏电流、截止/导通状态等参 数; 信号发生器与示波器用于测试各光电传感器信号的接收与传输; MCS51 仿真机用于测试软件; 直流稳压电源在测试期间为各待测系统供电; 秒表用于产品测试,按照任务书的基本要求对制成的电动车进行产品测试。 测试数据及测试结果分析: ⑴ 计时精度分析 ⑵ 测距精度分析 计时系统采用了新型显示芯片。理论上的误差不到 1 秒/年。 测速系统采用了电机轴光电码盘检测技术。电机轴与车轮轴之间

采用了齿轮箱二级减速,变比 1/16。车轮周长 135mm,光电码盘与电机轴安装在一起, 电 机 轴 每 一 转 产 生 2 个 脉 冲 , 车 轮 每 转 产 生 32 个 脉 冲 , 理 论 测 量 精 度 可 达 135mm/32=4.22mm<4.5mm ⑶ 定位精度分析 本设计采用实际测量与软件补偿技术, 理论上可使定位精度提高到 误差<10mm。 3、结论 历时三个月的设计过程中,我首先边查资料,边在实验室焊接小车的线路板。在焊接 过程中, 我感觉到即使是一个简单的电路, 要想很轻松的焊好, 也不是很容易的事情。 有时是“虚焊”的原因,有时可能是阻值选错。在焊接显示电路时,我就错将 680 欧的电阻焊成了 6.8 千欧。 这使我深深感受到理论与实际间的差距。 通过这样的设计, 提高了我的动手能力。每天在实验室除了焊接线路板,还可以上机编程,使我软件调 试知识也提高了。 本设计采用的是 80C51 单片机,这主要是因为该单片机的稳定性比较好。还可以 采用其它系列的单片机。比如采用陵阳单片机,就可以简化编程,但其稳定性不是很 好。

31





历时三个月的毕业设计已经告一段落。 经过自己不断的搜索努力以及白老师的耐 心指导和热情帮助,本设计已经基本完成。在这段时间里,白老师严谨的治学态度和 热忱的工作作风令我十分钦佩,他的指导使我受益非浅。同时本系 120 实验室的开放 也为我的设计提供了实习场地。在此对白文峰老师和牛晓升老师表示深深的感谢。 通过这次毕业设计,使我深刻地认识到学好专业知识的重要性,也理解了理论联 系实际的含义,并且检验了大学四年的学习成果。虽然在这次设计中对于知识的运用 和衔接还不够熟练。但是我将在以后的工作和学习中继续努力、不断完善。这三个月 的设计是对过去所学知识的系统提高和扩充的过程,为今后的发展打下了良好的基 础。 由于自身水平有限,设计中一定存在很多不足之处,敬请各位老师批评指正。

32

参 考 文 献
1 陈伯时,电力拖动自动控制系统.北京:机械工业出版社 2 何立民,单片机应用系统设计.北京:航天航空大学出版社 3 何希才,新型实用电子电路 400 例.电子工业出版社, 4 张毅刚,彭喜元.新编 MCS-51 单片机应用设计.第一版,哈尔滨工业大学出版 社,2003,25~27,411~417 5 赵负图,传感器集成电路手册.第一版,化学工业出版社,2004,590~591 6 李华,MCS-51 系列单片机实用接口技术,第三版,北京:1997 年 7 张红润,实用自动控制,成都:科技大学出版社。1990 年 1 月 8 康华光,电子技术基础,北京:高等教育出版社,1983 年 10 月 9 潘新民,微型计算机控制技术,北京:人民邮电技术出版社,1988 年 3 月 10 赵依军,单片机微型接口技术。北京:人民邮电技术出版社,1989 年 3 月 11 李广弟,单片机基础,北京:北京航空航天大学出版社,2001 12 胡汉才,单片机原理及其接口技术,北京:清华大学出版社,1996 13 王毅,单片机器件应用手册,北京:人民邮电出版社,1995

33

附录 A 程序清单
limiw miao fenmi fmiao meter fenzh point shimi shifn equ equ equ equ equ equ equ equ equ 30h ;厘米位 31h ;秒位 32h ;分米位 33h ;分秒位 34h ;米位 35h ;分位 36h ;小数点位 37h ;十米位 38h ;十分位

sudu jishk

equ equ

39h ;速度控制 3ah ;记时开始

zhond zhodu zhon maicho jinweb bhcs

equ equ equ equ equ equ

3bh 3ch 3eh 3fh 40h 41h

dpan fenchu fencun pand

equ equ equ equ

42h 43h 44h 45h

fenmc org ajmp org ajmp org

equ 0000h main 000bh st0 001bh

51h

34

ajmp org main:

st1 0100h

mov limiw,#00h mov miao,#00h mov fenmi,#00h mov fmiao,#00h mov meter,#00h mov fenzh,#00h mov point,#0bh mov shimi,#00h mov shifn,#00h mov jishk,#00h mov zhond,#00h mov zhodu,#00h mov zhon,#00h mov maicho,#00h mov jinweb,#03h mov bhcs,#00h mov sp,#6fh mov tmod,#21h mov th0,#3ch mov tl0,#0b0h mov th1,#9ch mov tl1,#9ch setb ea setb et0 setb et1 mov p1,#0aah acall xianshi qidong: jb p0.0,qidong acall delay jb p0.0,qidong mov sudu,#03h
35

clr p2.6 clr p2.7 setb tr1 start: jnb p2.3,start acall delay jnb p2.3,start mov sudu,#07h setb tr0 mov jishk,#01h call delaa call delaa call delaa call delaa call delaa jiance: mov c,p2.0 mov 22h,c mov c,p2.1 mov 23h,c mov c,p2.2 mov 24h,c mov c,p2.3 mov 25h,c mov c,p2.4 mov 26h,c zhangai: jb 25h,stop jnb 22h,youzhuan jnb 23h,youzhuan jnb 24h,zuozhuan jnb 26h,zuozhuan ajmp jiance zuozhuan: clr p0.5
36

clr p0.4 mov sudu,#05h acall delaa setb p0.4 setb p0.5 mov sudu,#07h ajmp jiance youzhuan: clr p0.6 clr p0.7 mov sudu,#05h acall delaa setb p0.7 setb p0.6 mov sudu,#07h ajmp jiance stop: acall delay jnb 25h,zhangai clr tr0 mov a,fenmi mov fenmc,a mov a,#02h add a,fenmc mov fenmc,a here: cjne a,fenmi,here clr tr1 setb p2.6 acall delaa setb p2.7 ajmp $ st0: push acc push psw mov th0,#3ch
37

mov tl0,#0b0h inc zhond mov a,#0ah cjne a,zhond,out mov zhond,#00h inc zhodu mov a,#02h cjne a,zhodu,miepo mov point,#0bh mov zhodu,#00h inc miao mov a,#0ah cjne a,miao,out mov miao,#00h inc fmiao mov a,#06h cjne a,fmiao,out mov fmiao,#00h inc fenzh mov a,#0ah cjne a,fenzh,out mov fenzh,#00h inc shifn out: call xianshi outb: pop psw pop acc reti miepo: mov point,#0ah ajmp out st1: push acc push psw
38

inc zhon mov a,sudu cjne a,zhon,hig setb p2.7 ajmp outi hig: mov a,#0ah cjne a,zhon,outi mov zhon,#00h clr p2.7 outi: mov a,#01h cjne a,jishk,outb jb p2.5,gao mov c,p2.5 mov 21h,c orl c,20h clr 20h jc youbh

ajmp outb gao: setb 20h ajmp outb youbh: inc maicho mov a,jinweb cjne a,maicho,outb mov maicho,#00h inc bhcs mov a,#02h cjne a,bhcs,jici mov jinweb,#03h goon:inc limiw mov a,#0ah cjne a,limiw,out
39

mov limiw,#00h inc fenmi cjne a,fenmi,out mov fenmi,#00h inc meter cjne a,meter,out mov meter,#00h inc shimi ajmp out jici: mov jinweb,#02h ajmp goon xianshi: mov p1,#0aah mov p1,#0cch mov a,limiw swap a add a,miao mov p1,a nop nop mov p1,#0ddh mov a,fenmi swap a add a,fmiao mov p1,a nop nop mov p1,#0eeh mov a,#0b0h add a,point mov p1,a nop nop mov p1,#0eeh
40

mov a,meter swap a add a,fenzh mov p1,a nop nop mov p1,#0ffh mov a,shimi swap a add a,shifn mov p1,a ret delay: mov 46h,#0ffh mov 47h,#0ffh i:djnz 47h,i1 i1:djnz 46h,i ret delaa: mov 48h,#0ah ii:mov 49h,#0afh ii2:mov 50h,#0ffh ii3:djnz 50h,ii3 djnz 49h,ii2 djnz 48h,ii ret

41

附录 B 硬件原理图

42


更多相关文档:

超声波避障小车设计.doc

哈尔滨工业大学课程设计说明书(论文) 开题报告 1 立项依据 1.1 立项目的 (1)设计一辆利用超声波传感器来实现避障功能的小车,使小车对其运动方向受到的阻 碍作出...

超声波避障小车设计新_图文.doc

辽宁工程技术大学控制电机综合训练项目 项目名称组别 超声波避障小车 第十组 测控

超声波避障小车设计.doc

超声波避障小车设计 - 摘 要 80C51 单片机是一款八位单片机, 他的易用性

单片机课程设计超声波避障小车.doc

单片机课程设计超声波避障小车 - 课程设计说明书(论文) 设计题目:超声波避障小车 院系:学院 班级: 设计者: 学号: 指导教师: 设计时间: 8.27~9.10 课程...

超声波避障小车程序设计.doc

超声波避障小车程序设计 - /*** ***...

智能超声波避障小车_图文.doc

智能超声波避障小车 - 智能超声波避障小车 姓名: 班级: 学号: 目录 摘要.

超声波避障小车_图文.doc

超声波避障小车 - 《单片机课程设计设计报告 设计课题: 超声波避障小车 专业班级: 电子信息工程 121 班 学生姓名: 指导教师: 设计时间: 范东耀 蔡岗 2015 ...

智能超声波避障小车汇总_图文.doc

智能超声波避障小车汇总 - 智能超声波避障小车 姓名: 班级: 学号: 目录 摘

智能超声波避障小车的设计与制作设计报告_图文.doc

智能超声波避障小车设计与制作设计报告 - 课题设计报告 项目:超声波避障小车设计与制作 -I- 摘要 智能小车是一种能够通过编程手段完成特定任务的小型化机器人,...

一种基于超声波的避障小车.doc

种基于超声波避障小车 - 摘要 随着机器人技术的发展, 自主移动机器人以其活

(毕业论文)智能超声波避障小车的设计与制作(可编辑).doc

智能超声波避障小车设计与制作 江阴职业技术学院 项目设计报告 项目超声波避障小车设计与制作 专业 学生姓名 班学级号 指导教师 完成日期 摘要 智能小车是一种...

毕业设计论文智能超声波避障小车_图文.doc

毕业设计论文智能超声波避障小车 - 编号: 毕业设计(论文)说明书 题 目: 智能超声波避障小车 系专 别: 业: 电子工程系 电子信息工程 题目类型:?理论研究 ?...

超声波避障小车设计毕业设计.doc

超声波避障小车设计毕业设计 - 摘要 80C51 单片机是一款八位单片机,他的易

智能避障小车课程设计_图文.doc

智能超声波避障小车 机电学院 机械电子工程(师范) 路小娃 2013095444026 谢嘉玲 ...1.3 项目主要研究内容本设计题目为智能避障小车设计,主要研究小车的避障功能,...

超声波避障小车_图文.ppt

超声波避障小车 - 测试技术课程课外小制作,超声波避障小车答辩

超声波避障小车设计本科毕业设计.doc

超声波避障小车设计本科毕业设计 - 摘要 80C51 单片机是一款八位单片机,他

超声避障小车设计报告.doc

超声避障小车设计报告 - 综合能力实训项目设计报告书 综合能力实训项目设计报告

超声波避障小车._图文.doc

超声波避障小车. - “智能机器人”创新实践班班级项目研究报告 超声波避障小车项目研究报告 项目组成员: 计科专业 0901 余恒洋 计科专业 0901 吴林 生医专业 ...

基于51单片机的超声波避障小车设计大学论文_图文.doc

基于51单片机的超声波避障小车设计大学论文 - 内蒙古科技大学 本科生毕业设计说明书(毕业论文) 题 目:基于单片机的超声波避障小车 设计 学生姓名:祝伟泰 学专班号...

基于80C51单片机小车超声波避障技术设计.doc

基于80C51单片机小车超声波避障技术设计基于80C51单片机小车超声波避障技术设计隐藏...新一代单片机为外部提供了相当完善的总线结构, 为系统的扩展与配置打下了良 好...

更多相关标签:
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com