基于51单片机的自动避障小车的研究与设计

基于51单片机的自动避障小车的研究与设计

徐永杰

(西南林学院计算机与信息科学系,云南 昆明 650224)

摘 要: 本文介绍了利用红外反射式传感器实现小车自动避障的设计与实现,能在有障碍物的情况下判断并自动躲避。自动避障是基于自动避障小车(AAOV—auto-avoid obstacle -vehicle)的机器人系统。实验中采用反射式红外传感器采集外界信号,红外反射式传感器采集后的信号经A/D转换器转换为数字信号,再由单片机对数字信号进行处理,控制电机,躲避障碍物。系统控制核心采用AT89C51单片机,电机驱动芯片采用TA7267BP,利用三相电机来控制避障小车的转向,A/D转换器采用串行的TLC0831芯片,反射式传感器采用QRB1114型。该技术可以应用于儿童智能玩具开发、隧道或管道检测,无人驾驶机动车、无人工厂、仓库、服务机器人等领域。

关键词:自动避障 红外传感器 单片机 电路设计

The research and design of AAOV-auto-avoid abstacle car which

bases on 51 single chips

Yongjie Xu

(Southwest Forestry University Computer And Information Science

Department Kunming ,Yunnan 650224)

[SUMMARY] This article introduces the design and execution of automatically avoiding obstacles by usage of the reflected infrared sensor on smsll cars.It makes the small cars judge and evade the obstacles automatically. Avoiding obstacles automatically is based on the AAOV-auto-avoid obstacle-vehicle of robot system.In the experiment,it adopts reflected infrared sensor to collect the external world signals which is transforms into number signals by the A/D conversion machine later then.After that,the single chip will handle these number signals and control current machine to avoid obstacles.The control core in system adops the AT89C2051 single chip;the current machine driving CMOS chip adops TA726TBP list,making use of 3-phasen current machine to control car’s direction;the A/D conversion machine adops series lines TLC0831CMOS chip;the reflecting type sensor adops QRB1114. This technology could serve to the development of children’s intelligent toys ,the examnation of tunnels and pipes, driverless mobile, robot factory, warehouse, service robot and etc.

KEYWORD:AAOV-auto-avoid infraned sensor single chip Microcomputer,current design

目 录

目 录 .............................................................. III

前言 ................................................................... 1

1 避障小车设计思路 ..................................................... 2

1.1 设计思路 .......................................................... 2

1.2 系统组成 .......................................................... 2

2 控制核心——单片机 ................................................... 3

2.1 单片机的发展历史 .................................................. 3

2.2 单片机的特点 ...................................................... 3

2.3 单片机的应用领域 .................................................. 4

2.3.1 单片机在智能仪表中的应用 ...................................... 4

2.3.2 单片机在机电一体化中的应用 .................................... 4

2.4 单片机外部晶振 .................................................... 4

3 AT89C51单片机 ........................................................ 5

3.1 主要性能参数 ...................................................... 5

3.2 单片机选择 ........................................................ 5

4 传感器 ............................................................... 6

4.1 传感器选择 ........................................................ 6

4.2 红外反射式光电传感器特性与工作原理 ................................ 6

4.3 两种反射式型号的传感器参数比较 .................................... 7

4.3.1 QRB1114型反射式传感器 ........................................ 7

4.3.2 ST178型反射式传感器 .......................................... 8

4.3.3 自制传感器测试数据及实物图片 .................................. 9

4.4 具体设计与实现 ................................................... 12

4.5 QRB1114反射式红外传感器与A/D转换器连接电路 ..................... 12

5 模/数(A/D)转换器 .................................................... 14

5.1A/D 转换的主要性能指标 ............................................ 14

5.1.1 分辨率 ....................................................... 14

5.1.2 转换时间 ..................................................... 14

5.1.3 量程 ......................................................... 14

5.1.4 精度 ......................................................... 14

5.2 A/D转换的外围电路 ............................................... 14

5.2.1 采样保持电路 ................................................. 15

5.2.2 多路转换模拟开关 ............................................. 15

5.2.3 三态门 ....................................................... 15

5.3 8位A/D转换器----ADC0809芯片 .................................... 15

5.3.1 ADC0809的主要特性 ........................................... 16

5.3.2 ADC0809内部结构 ............................................. 16

5.3.3 ADC0809引脚功能 ............................................. 17

5.3.4 ADC0809的工作过程 ........................................... 18

5.3.5 ADC0809与8051单片机模拟实验 ................................ 18

5.3.6 ADC0809与8051模拟实验程序 .................................. 19

5.4 TLC0831八位串行A/D转换器 ....................................... 20

5.4.1 TLC0831的特点 ............................................... 20

5.4.2 TLC0831引脚功能 ............................................. 20

5.4.3 TLC0831电气特性 ............................................. 21

5.4.4 功能方框图及功能说明 ......................................... 21

5.5 TLC0831与8051单片机模拟实验 .................................... 22

5.5.1 TLC0851与8051模拟实验电路图 ................................ 22

5.5.2 TLC0851与8051模拟实验程序 .................................. 23

6 单片机驱动直流小电机 ................................................ 25

6.1 电机驱动电路器件 ................................................. 25

6.2 驱动电路的基本功能 ............................................... 25

6.3 H桥式电路原理 ................................................... 25

6.4 驱动芯片比较 ..................................................... 26

6.4.1 电机驱动芯片 L298 ............................................ 26

6.4.2 电机驱动专用芯片TA7267BP .................................... 27

6.5 驱动芯片选择 ..................................................... 29

6.6 TA7267BP驱动芯片与AT89C51单片机连接电路 ........................ 30

7 单片机控制避障小车方向 .............................................. 31

7.1 步进电机控制系统及各部分功能 ..................................... 31

7.2 步进电机 ......................................................... 32

7.3 单片机控制步进电机接口电路 ....................................... 32

8 避障小车的动力——微型电机 .......................................... 34

8.1 三种类型的电机比较 ............................................... 34

8.2 电机选择 ......................................................... 34

9 电路图及电机驱动程序和万向轮驱动程序 ................................ 36

9.1 电路全图 ......................................................... 36

9.2 程序选择 ......................................................... 36

9.3 程序流程图 ....................................................... 36

9.4 程序清单 ......................................................... 37

10 结论 ............................................................... 39

参考文献 .............................................................. 40 指导教师简介 .......................................... 错误!未定义书签。 致谢 .................................................. 错误!未定义书签。

前言

自第一台工业机器人诞生以来,机器人技术经历了一个长期而又缓慢的发展过程。到了90年代,随着计算机、微电子、网络等技术的快速发展,机器人已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,迅速改变着人们的生活方式。人们在不断认识、探讨和改造自然的过程中,总结经验,不断创新,致力于制造出能替代人类劳动的机器人。[1]

本文的内容是设计一部自动避障小车,此设计将信号采集,信号处理,命令执行,避障等功能集为一体,采用了四个模块,每个模块都执行相应的功能,使整个系统的稳定性达到了比较高的水平。

自动避障小车可用于隧道及管道检测。此类工作由于其特殊性和高难度性时常给工人带来生命危险。但是通过一台自动避障小车,就可以轻而易举地降低危险度,还能节约大量时间和资金投入。对一些运输企业来说,自动避障小车加以改进就是一台很好的运输设备,虽然其造价昂贵,但它给整个社会的运输业带来的便利却不容忽视。作为一种无人操纵的自动化运输设备,自动避障小车具有运输效率高、节能、工作可靠、能实现柔性运输、使用灵活、无公害等许多优点。自动避障小车已经成为现代企业提高生产效率,降低生产成本的有力工具。但是由于其高昂的造价和复杂的制造工艺令许多中小企业望而却步,使得其在国内一直无法得到普及和推广。因此设计一种低价位又满足以上特点,且适合中小型企业需求的自动避障小车就显得非常迫切。[2]

1 避障小车设计思路

1.1 设计思路

一块电路板,板载两个电动机,其中一个作为动力装置配置到两个车轮上,另一个作为一个车轮的方向控制来用,设计三个车轮或四个,分别为动力车轮(两个)和方向车轮(一个或两个),方向车轮在前,动力车轮在后。其中作为动力车轮的两个必须并行的焊接到电路板上,两个电动机用大小齿轮与车轮连接,来控制车的速度。一个传感器,感测前方物体;一块单片机用来控制整个电路。

车在行走的过程中,通过传感器来探测前方是否有物体,如果有,传感器向单片机发出一个倒车的信号和方向控制信号,车向后倒,同时方向轮逆时针转动,车倒到一定距离后,传感器检测不到障碍物信号,方向轮恢复,继续前进。

1.2 系统组成

图1-1 系统组成方框图

避障小车系统由单片机控制,该系统主要有四部分组成,即控制模块、电机驱动模块、方向电机控制模块和数据采集模块。

2 控制核心——单片机

本设计采用的控制核心是单片机,其原因是控制简单,操作方便,数据处理速度快,体积小等优点。

2.1 单片机的发展历史

从单片机的发展历史来看,可以分为四个阶段

第一阶段(1974-1976 ):单片机初级阶段。因工艺限制,此阶段的单片机采用双片的形式而且功能比较简单。例如仙童公司生产的F8单片机,只包括了8位CPU (Central Processing Unit,称中央处理器,由计算机的运算器和控制器组成,是计算机的核心),64个字节RAM (Random Access Memory,随机存取存储器)和两个并行口,需要加一块具有1KBROM (Read Only Memory,只读存储器)、定时器/计数器和两个并行口的3851芯片才能组成一台完整的计算机。

第二阶段(1976-1978年):低性能单片机阶段。此阶段的单片机已为一台完整的计算机,但内部资源不够丰富,以Intel公司生产的MCS-48系列为代表,片内集成了8位CPU, 8位定时器/计数器、RAM和ROM等,但无串行口,中断系统也比较简单,片内RAM和ROM容量较小且寻址范围不大于4KB。

第三阶段(1978 -1982 ):高性能单片机阶段。此阶段的单片机内部资源丰富,以Intel公司生产的MCS-51系列为代表,片内集成了8位CPU, 16位定时器/计数器、串行I/O口、多级中断系统、RAM和ROM等,片内RAM和ROM容量加大,寻址范围可达64KB。有的型号内部还带有A/D转换器。

第四阶段(1982-- ): 8位单片机的巩固发展阶段及16位、32位单片机推出阶段。16位单片机以Intel公司生产的MCS -96系列为代表,在片内带有多通道A/D转换器和高速输入/输出(HSI/HSO)部件,中断处理和实时处理能力很强。[3]

2.2 单片机的特点

综合来看,单片机具有如下明显的特点:

1) 小巧灵活、成本低、易于产品化。能利用它方便组装成各种智能式测控设备及各种智能仪器仪表,很容易满足仪器设备既智能化又微型化的要求。

2) 可靠性高、使用的温度范围宽。单片机芯片一般是按工业测控环境要求设计的,能适应各种恶劣的环境。这一特点是其他几种无法比拟的。

3) 易扩展、控制能力强。通过单片机本身或扩展可以方便地构成各种规模的应用系统及多机和分布式计算机控制系统。

4) 指令系统相对简单,较易掌握,且指令中较丰富的逻辑控制功能指令,能较方便地直接操作外部输入输出设备。[4]

2.3 单片机的应用领域

目前单片机的应用己深入到国民经济的各个领域,对各个行业的技术改造和产品的更新换代起重要的推动作用。由单片机的特点决定了单片机的主要应用领域——智能仪器仪表、机电一体化、实时控制、民用电子产品和国防工业等方面。

2.3.1 单片机在智能仪表中的应用

单片机广泛应用于实验室、交通工具、计量等各种仪器仪表之中,使仪器仪表智能化,提高它们的测量精度,加强其功能,简化仪器仪表的结构,便于使用、维护和改进。例如:电度表校验仪,电阻、电容、电感测量仪,船舶航行状态记录仪,烟叶水分测试仪,智能超声波测厚仪等。单片机在该领域的应用,不仅使传统的仪器仪表发生根本的变革,也给传统的仪器仪表行业的改造带来了曙光和美好的前景。

2.3.2 单片机在机电一体化中的应用

机电一体化是机械工业发展的重要方向。机电一体化产品是集机械技术、微电子技术、自动化技术和计算机技术于一体,具有智能化特征的机电产品,列如:微电控制的铣床、车床、钻床、磨床等等。单片机的出现促进了机电-体化的进程,它作为机电产品中的控制器,能充分发挥它的体积小、可靠性高、控制功能强、安装方便等优点,大大提升了机器的功能,提高了机器的自动化、智能化程度。[4]

2.4 单片机外部晶振

晶振为单片机提供时钟周期,没有晶振,就无法执行程序代码,单片机就无法工作。单片机工作时,是一条一条地从ROM中取指令,然后一步一步的执行,单片机访问一次存储器的时间称为一个机器周期,这是一个时间基准。一个机器周期包括12个时钟周期。单片机的所有指令中,有些完成的比较快,只要一个时钟周期就行了,有的比较慢,需要2个时钟周期,还有两条指令,需要四个时钟周周期才行。[5]

3 AT89C51单片机

AT89C51是美国ATMEL生产的低电压,高性能CMOS8位单片机,如图3-1 所示,片内含2KB的可反复擦写的只读程序存储器(PEROM)和128B的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度,非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大AT89C51单片机可为你提供许多高性价比的适用场合。[6]

3.1 主要性能参数

与MCS-51产品指令系统完全兼容

4K字节可重擦写Flash内存存储器

1000次擦写周期

全静态操作:0HZ-20MHZ

三级加密程序存储器

120×8字节内部RAM

32个可编程I/O口线

2个16位定时/计数器

6个中断源

可编程串行UART通道

低功耗空闲和掉电模式[6]

3.2 单片机选择

由于Intel公司将MCS-51的核心技术授权给了很多公司,所以目前单片机的种类很多,在选择单片机时要依据实际设计要求选择合适的单片机。本设计只用到单片机的一个定时器和一些I/O口,在考虑单片机价格和性能后,选用了AT89C51型单片机。如图3-1所示。

4 传感器

传感器是用来感知周围事物的仪器。接近觉传感器是用于感知机器人周围障碍物的接近程度的仪器。当机器人与障碍物非常接近时,传感器发出报警,故其感知过程不包括与障碍物的直接接触。接近觉传感器介于触觉传感器和视觉传感器之间,不仅可以测距和定位,而且可以沟通视觉和触觉传感器的信息,在机器人基于传感器信号控制中起特殊作用。[7] 4.1 传感器选择

实现自动避障小车的接近觉功能有多种方式:1)光电接近觉传感器,光电接近觉传感器塞速度快,抗干扰能力强,测量点小,具有可使用CCD(视频摄像头的“视网膜”)摄像头进行图象采集和识别,适用范围广等优点;但是不适用在小体积系统使用,并且还涉及图象采集、图象识别等领域。2)电容式接近传感器,基于检测对象表面靠近传感元件时的电容变化。3)超声波传感器,根据波从发射到接收的传播过程中所受到的影响来检测物体的接近程度。4)红外反射式光电传感器,它包括一个可以发射红外光的固态发光二极管和一个用作接收器的固态光敏二极管(或光敏三极管)。[7]

根据本设计使用场合的具体情况,传感器要感知的对象是物体的有无和物体的接近程度,与精确的测距系统有相似之处,但又有不同,只要求判断出简单的阈值或提供远、近分档的距离。因此使用较简单的接近传感器实现小车避障是有依据可循的并且是可行的。为了简单起见,系统中使用了一个红外反射式光电传感器,用于障碍判断。

4.2 红外反射式光电传感器特性与工作原理

反射式光电传感器的光源有多种,常用的有红外发光二极管,普通发光二极管,以及激光二极管,前两种光源容易受到外界光源的干扰,而激光二极管发出的光的频率较集中,传感器只接收很窄的频率范围信号,不容易被干扰但价格较贵。[8]理论上光电传感器只要位于被测区域反射表面可受到光源照射同时又能被接收管接收到的范围就能进行检测,然而这是一种理想的结果。因为光的反射受到多种因素的影响,如反射表面的形状、颜色、光洁度,日光、日光灯照射等不确定因素。[9]原理如图4-1 所示:

射 表 面

图4-1 红外发射接收原理

4.3 两种反射式型号的传感器参数比较

市场上反射式传感器种类很多,不同的产品适用的场合不同,对于本设计要求,只要能感测到避障小车前150mm左右的障碍物就可以了,所以,我们根据要求我们选择了QRB1114[10]型和ST178P型。[11] 4.3.1 QRB1114型反射式传感器

表4-1 QRB1114极限参数

项目 输入

正向电压 正向电流

符号

数值 50

单位 mA

IF VR

P

5 V

耗散功率

输出

射-集电压 集-射电压

100 30

mW V

VCEO VECO

P

4.5 V

集电极功耗 100 mW

表4-2 QRB1114电气特性

项目 输 入

正向电流 正向电压

符号

测试条件

最小

典型

最大 1.7

单位 V

VF IF=40mA

VR=5.0

IR

100 uA

输 出

集电极暗电流

ICEO IL

VCE=10V IF=0mA VCE=5V IF=40mA

100 nA

集电极亮电流 0.60 mA

QRB1114标准电流与障碍物距离曲线

4.3.2 ST178型反射式传感器

表4-3 ST178极限参数

项目 输入

正向电压 正向电流

符号

数值 50

单位 mA

IF VR

P

6 V

耗散功率

输出

射-集电压 集-射电压

75 25

mW V

VCEO VECO

P

6 V

集电极功耗 50 mW

表4-4 ST178电气特性

项目 输

正向电压

符号

测试条件

最小

典型 1.25

最大 1.5

单位 V

VF IF=20mA

入 正向电流

IR ICEO IL

VR=5.0

VCE=20V IF=0mA VCE=15V IF=8mA

10 uA

输 出

集电极暗电流 1 uA

集电极亮电流 0.50 mA

ST178标准电流与障碍物距离曲线

4.3.3 自制传感器测试数据及实物图片

由于设计的需要,我们在电子元件厂买了对红外对射管,具体参数不详细,最大支持电压为5V。在测试当中,我们发现此对射管在日光灯的照射下,阴暗的条件下,干扰太大,在晴朗的天气条件下,测试数据比较理想。[12]下面是我们在晴朗的天气条件下测得的数据

障碍物距离与电压

表4-5

障碍物距离(mm) 电压(V)

0 4.70

50 4.68

100 4.65

150 4.60

200 4.52

250 4.30

300 4.13

350 4.00

400 3.95

450 3.90

500 3.90

无限 3.90

障碍物距离与电流

表4-6

障碍物距离(mm)

50

100

150

200

250

300

350

400

450

500

550

600

无限

电流(uA) 0.7 1.1 1.3 1.4 1.4 1.4 1.4 2.7 4.3 5.6 7.0 7.9 8.4 11.4

障碍物距离与电流曲线

自制传感器测试时图片

图4-2-1

4-2-2

图4-2-3

4.4 具体设计与实现

接近觉传感器应用场合不同选择不同,感觉的距离范围不同,可从几毫米到几米。对于自动动避障小车,反射距离在150mm左右,探测环境在阴影之下,不易受到日光的干扰。因此,我们选用QRB1114和ST178型号的反射式红外传感器,这两种传感器选用FS-359F反射红外对管,043W和048W型封装。这两种封装形状规则,便于安装。对于障碍物的检测,可以使用超声波传感器,效果也较好,但电路系统庞大,还需占用大量MCU时间。上文的激光传感器虽然性能不错,但价格较贵。从需要100—250mm垂直探测距离的要求来看,普通的红外反射式传感器又很难胜任。QRB1114与ST178反射式传感器经过比较发现,它们都很适合本设计所用的传感器,QRB1114反射式传感器测试最佳距离为150mm,ST178反射式传感器测试最佳距离为80mm,经过我们组商量,考虑到控制上的问题,我们采用了QRB1114型反射式红外传感器,其原因是可以探测障碍物的距离远,有利于自动避障小车躲避障碍。符合设计要求。QRB1114在使用约50mA的发射电流,没有强烈日光干扰(在有日光灯的房间里)最佳探测距离能达150mm,完全能满足探测距离要求。红外传感器的电路有多种形式,在这里为了安装调试方便,我们采用了图4-2的电路形式。[20]

图4-2 红外反射式光电传感器电路

4.5 QRB1114反射式红外传感器与A/D转换器连接电路

反射式红外传感器采集的模拟量(A)就是大小随时间连续变化的量,例如锅炉的温度,燃气管道中燃气的流量、压强、输电线的电压、电流等。要对这些物理量加

以控制,就要用传感器把它们的信号检测出来,传送到单片机中。由单片机中的程序判断该怎样输出命令。但是单片机中的信号是反映电平高低的离散的数字信号(D),因此在输入到单片机之前还要把连续变化的模拟物理量先用变送器变成连续变化的模拟量,再用采样/保持器每隔一定时间间隔(很短)采一次模拟电压量的样,保持一定时间(很短),送A/D(模/数)转换器,将模拟电压量(A)转换成反映电平高

[13]低的离散的数字信号(D)。之后再送入单片机计算处理。反射式红外传感器与A/D

转换器连接电路如图4-3 所示。

图 4-3 反射式红外传感器与A/D转换器连接电路

5 模/数(A/D)转换器

A/D转换器是指通过一定的电路将模拟量转变为数字量。模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非电信号。但是在A/D转换前,输入到A/D转换器的输入信号必须经过各种传感器把各种物理量转换成电信号。A/D转换后,输出的数字信号有8位、10位、12位和14位。在本设计中,由于传感器采集的是外界电压信号,故需要一个合适的A/D转换器用来转换外界信号给单片机。

5.1A/D 转换的主要性能指标 5.1.1 分辨率

分辨率是指A/D转换器能分辨的最小模拟输入量。通常用转换成的数字量的位数来表示,如8位,10位,12位,15位等.位数越高,分辨率越高。例如,对于8位A/D转换器,当输入电压满刻度为5V时,其输出数字量的变化范围为0—255,转换电路对输入模拟电压的分辨能力为5V/255=19.5mV。[14]

5.1.2 转换时间

转换时间是A/D转换完成一次转换所需的时间。目前常用的A/D转换集成芯片的转换时间约为几个微秒至200微秒。

转换时间是编程必须考虑的参数,若CPU输入A/D转换后的数据,采用无条件传送方式,从启动A/D转换开始,延时等待,转换结束,才可输入数据。此延时等待时间必须大于或等于A/D转换时间。[14] 5.1.3 量程

量程是指所能转换的输入电压范围。 5.1.4 精度

A/D转换精度分为绝对精度和相对精度两种。

(1)绝对精度:是指对应于一个给定量A/D转换器的误差,其误差大小由实际模拟量输入值与理论值来度量。

(2)相对精度:由绝对误差决定。相对误差是指绝对误差与满刻度值之比,一般用百分数来表示。 5.2 A/D转换的外围电路

在实际系统中用到A/D转换时,还要考虑模拟量的变化速度与A/D转换器的转换

速度,为此引入了采样保持电路.还需考虑一个A/D转换器的转换速度,为此引入了多路转换模拟开关,以及数据输出线与系统总线的连接,三态门的概念。 5.2.1 采样保持电路

如果A/D转换器的转换速度比模拟信号高出许多倍,那么,模拟信号可以直接加到A/D转换器,但是如果模拟信号变化比较快,为了保证转换精度,就要在A/D转换之前加上采样保持电路,使得A/D转换期间保持输入模拟信号不变。

采样保持电路有两种工作状态,一种是采样状态,一种是保持状态.在采样状态,输出随输入而变换;在保持状态,输出保持为某一个值。

目前,采样保持电路集成在一个芯片中,为专用的采样保持芯片。如AD583K,AD582K等芯片.另外还有A/D芯片带有保持电路,如12位AD1554为采样保持A/D芯片。[14]

5.2.2 多路转换模拟开关

在实际工程中,有时要求同时测量温度,压力,温度,风速,流量等多种参数,根据测量值发出相应的控制,有时要求测量同一参数,但不同的测量点,都用公共的A/D,D/A转换电路,这就要求解决多 个回路和A/D,D/A转换器之间的切换问题。一般采用两种方法,一种方法是用独立的多路转换模拟开关轮流切换各回路和A/D,D/A之间的通路,对于A/D转换来说,要用到多路输入,一路输出模拟开关电路,对于D/A转换来说,要用到一路输入,多路输出的模拟开关电路,去控制多个对象。这两种电路都有专用的集成电路芯片。[14] 5.2.3 三态门

A/D转换器的数据输出是否能直接与CPU数据总线相连,要看数据输出端是否具有可控的三态输出门。有的A/D转换器带有三态输出门,当A/D转换结束时,CPU执行一条输入指令,用读信号打开三态门,将数据从A/D转换器取出,读入CPU。有的A/D转换器不带三态输出门,可外接三态门电路实现A/D转换器和CPU之间的数据传输。

[14]

5.3 8位A/D转换器----ADC0809芯片

ADC0809芯片是CMOS单片型逐次逼近式A/D转换器,如图5-1、5-2内部结构和引脚图。

图5-1 ADC0809内部结构图

图 5-2 ADC0809引脚图

5.3.1 ADC0809的主要特性

(1)它具有8路模拟量输入,8位A/D转换器 (2)转换时间为100us

(3)模拟输入电压范围0 -- +5V,不需零点和满刻度校准 (4)低功耗,约15mW 5.3.2 ADC0809内部结构 1)通道选择开关

可采集8路模拟信号,通过多路转换开关,实现分时采集8路模拟信号。 2)通道地址锁存和译码

用来控制通道选择开关.通过ADDA,ADDB,ADDC三个地址选择端的译码作用,控制通道选择开关,接通某一路的模拟信号,采集并保持该路模拟信号,输入到ADC0809比较器的输入端。 3)逐次逼近A/D转换器

该部分包括比较器,8位开关树形D/A转换器,逐次逼近寄存器,把输入的模拟信号进行逐次逼近式A/D转换,转换结束后把转换数据从逐次逼近寄存器传送到8位锁存三态门。

4)8位锁存器和三态门

经A/D转换的数字量保存在8位锁存寄存器中,当输出允许信号OE有效时,打开三态门,转换后的数据通过数据总线传送到CPU.由于ADC0809具有三态门输出,因而数据线可直接挂在CPU数据总线上。[14] 5.3.3 ADC0809引脚功能

ADDA,ADDB,ADDC:地址输入线,用来选通8路模拟输入中的一路.它们与模拟信号的关系如下表

表5-1地址输入线与模拟信号的关系

ADDC 0

ADDB 0

ADDA 0

模拟信号

IN0 IN1 IN2 IN3 IN4 N5 IN6 IN7

0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1

IN0--IN7:8路模拟信号输入端。

ALE:地址锁存允许信号。输入,高电平有效.用来控制通道选择开关的打开与闭合。

ALE=1时,接通某一路的模拟信号,ALE=0时,锁存该路的模拟信号。

2-1、2-2、„2-8:8位数字量输出端。

START:A/D转换启动信号,输入,高电平有效。

EOC:A/D转换结束信号,输出,高电平有效,EOC信号可用来申请中断。 CLK:时钟脉冲输入端.要求时钟频率不高于640KHZ。

REF(+),REFREF(-):基准电压。一般与微机接口时,-VREF为0V或-5V,+VREF为+5V或0V。[14]

5.3.4 ADC0809的工作过程

ADC0809的工作过程是:首先确定ADDA,ADDB,ADDC三位地址决定选择哪一路模拟信号,然后使ALE=1,使该路模拟信号经选择开关达到比较器的输入端。启动START,START的上升沿将逐次逼近寄存器复位,下降沿启动A/D转换.这时EOC输出信号变低,指示转换正在进行。

A/D转换结束,EOC变为高电平,指示A/D转换结束。此时,数据已保存到8位锁存器.EOC信号可作为中断申请号,通知CPU转换结束,可以输入数据.中断服务程序所要做的事情是使OE信号变为高电平,打开三态门,由ADC0809输出的数字量传送到CPU。也可以采用查询式,CPU执行输入指令,查询EOC端是否变为该电平状态。若为低电平,则等待,若为高电平, 从OE 端输入一个高电平信号,打开三态门输入数据。[14] 5.3.5 ADC0809与8051单片机模拟实验

我们用ADC0809采集来的信号,驱动P1.0口上的二极管,当外界的电压超过4.60V时,二极管就发亮,否则熄灭。电路图如图5-3。[16]

图5-3 ADC0809与单片机连接图

5.3.6 ADC0809与8051模拟实验程序

经我们计算,当模拟电压是4.60V时,汇编语言代码为224。 模拟程序如下: CSEG AT

LJMP

0000H START 4000H P1.2

DPTR,#0CFA0H P1.2

$

;EL试验箱仿真地址

CSEG AT STARA STEB

MOV JNB MOVE MOV CLR SUBB JC STEB AJMP

A,@DPTR 40H, C A, #224 DEM P1.0 LP P1.0

A

;与4.60V电压比较

DEM: CLR

AJMP END

LP

仿真结果,如果模拟输入电压大于4.60V时,发光二极管发光,否则熄灭。[16] 5.4 TLC0831八位串行A/D转换器

TLC0831是8位逐次逼近模数转换器。有一个输入通道,串行输出可以配置为和标准移位寄存器或处理器接口。

5.4.1 TLC0831的特点 8位分辨率

易于和微处理器接口或独立使用 满比例工作或用5V基准电压

单通道或多路选择的双通道,可单端或差分输入选择 单5V供电,输入范围0—+5V 输入和输出与TTL和CMOS兼容 在FCLOCK=250KHZ时,转换时间为32us

设计成可以和国家半导体公司的ADC0831和ADC0832互换 总非调整误差 1 LSB[16] 5.4.2 TLC0831引脚功能

CS:片选端,低电平有效。 IN+与IN-:模拟信号差分输入端。 REF:基准电压(0—5V)输入端。 DOUT:8位数据串行输出端。 CLK:时钟脉冲输入端。[16] TLC0831时序如图9

5.4.3 TLC0831电气特性

表5-2TLC0831电器特性

电源电压

VCC

逻辑 模拟

5V

输入电压范围

-0.3V至CC+0.3V

VV

-0.3V至CC+0.3V

输入电流

Ir

±5mA ±20mA

总输入电流

5.4.4 功能方框图及功能说明

如图5-4所示:

图 5-4 TLC0831功能方框图

TLC0831使用采样-数据-比较器的结构,用逐次逼近流程,转换差分模拟输入信号。要转换的输入电压连到一个输入端,相对于地(单端输入)或另一个输入端(差

分输入)。TLC0831只有一个极性已固定配置的差分输入端,因此不需要地址信号。TLC0831可以使用差分信号,连在它的IN+和IN-端;或使IN-连到地,信号连到+IN。作为单端输入。当连到分配正端的输入电压低于分配为负端的输入电压时,转换结果全为0。

通过和控制处理器相连的串行数据链路传送控制命令,用软件对通道选择和输入端进行配置。串行通信格式在不增加封装大小的情况下,可以在转换器中包含更多的功能。另外,可把转换器和模拟传感器放在一起,和远端的控制处理器串行通信,而不用进行低电平的模拟信号的远程传送。这样处理过程返回到处理器的是无噪声的数字数据。

置CS为低方能启动转换器开始,使所有逻辑电路使能。CS在整个转换过程中必须置为低。接着从处理器接收一个时钟,一个时钟的时间间隔被自动插入,以使多路转换器选定的通道稳定。DO脱离高阻状态,提供一个时钟的时间间隔的前导电平,以使多路稳定。SAR比较器把从电阻梯形网络输出的逐次信号和输入信号进行比较。比较器输出指出模拟输入是大于还是小于电阻梯形网络的输出。在转换过程中,转换数据同时从DO端输出,以最高位(MSB)开头。经过8个时钟后,转换完成。当CS变高,内部所有寄存器清零。此时,输出电路变为高阻状态。如果希望开始另一个转换,CS必须做一个从高到低的变跳,后面紧接地址数据。[16] 5.5 TLC0831与8051单片机模拟实验

利用传感器采集的信号,来控制LED灯亮/灭实验,当传感器采集的信号超过4.60V时,发光二极管就亮,我们正是利用这一功能,来控制电机按照预先设计的程序运行,从而达到控制的目的。

5.5.1 TLC0851与8051模拟实验电路图

如图5-5所示:

图 5-5 TLC0831与8051模拟实验连接图

5.5.2 TLC0851与8051模拟实验程序

经我们计算,当模拟电压是4.60V时,汇编语言代码为224。 程序如下: Start: clk Lp:

p1.0

;关灯

;调读数据子程序

acall rd

CLR C ;清进位位

CJNE A,#224,LP0 ;读出数据与4.60V比较 LP0: JC START ;小于4.60V转START SETB P1.0 ;大于4.60V开灯报警 SJMP LP ;转LP重读数据

RD: CLR P1.1 ;片选有效,启动A/D转换 SETB P1.2 ;置时钟高电平 MOV R0,A ;延时2个晶振周期

CLR P1.2 ;置时钟低电平 MOV R1,#8 ;要读8位数据 LP1: SETB P1.2 ;置时钟高电平 MOV R0,A ;延时2个晶振周期 CLR P1.2 ;置时钟低电平

MOV C,P1.3 ;将转换好的数据送进位位 MOV C,P1.3 ;重送一次 RLC A ;送A并左移一位 DJNZ R1,LP1 ;8位数据未取完转LP1 SETB P1.1 ;8位数据取完使片选无效 RET ;

仿真结果与ADC809一样,如果模拟输入电压大于4.60V时,发光二极管发光,否则熄灭。[15]

6 单片机驱动直流小电机

控制电机运动,例如转向,速度和角度的控制,是单片机在机电控制中的一个典型的应用。直流电机的控制性能优越,特别适合速度的控制,为了实现直流电机的正反转运行,只需要改变电机电源的极性。这种电压极性的变化和运转时间的长短由单片机实现,而提供直流电机正常运转的电流则需要驱动电路实现。[5] 6.1 电机驱动电路器件

单片机本身具备一定的驱动能力,其I/O口的电流在10mA左右,像驱动发光二极管之类的器件并不需要特殊的驱动电路。但是对于直流电机这类负载较大的器件,单片机无法为其提供足够的电流。尤其是在直流电机刚启动时,电机的启动电流往往会达到其正常工作电流的4~5倍,所以,这一类的电路需要专门的驱动电路完成对电机的驱动,而单片机只是完成逻辑控制部分的工作。[5] 6.2 驱动电路的基本功能

驱动电路的基本功能是要有足够的电流驱动电机转动,在本设计中,还需要利用单片机的逻辑电平输出控制电机的正反转。 6.3 H桥式电路原理

桥式电路是一种最基本的驱动电路结构。控制电机正反转的桥式驱动电路有单电源和双电源两种驱动方式。由于本设计要求,采用单电源驱动方式。[5]如图6-1所示

图6-1 单电源H桥式驱动方式电路

在图中的四个二极管为续流二极管。如果选用的驱动电路中使用的是晶体三极管,那么这四个二极管是必须使用的,其主要作用是用以消除电机所产生的反向电动势,避免电机的反向电动势对晶体三极管的反向击穿。[5]

单电源方式的桥式驱动电路又称为全桥式方式驱动或者H桥方式驱动。电机正转时三极管Q1和Q4导通,反转时Q2和Q3导通,两种情况下,加在电机两端的电压极性相反。当四个晶体管全部关闭时,电机就停止转动。若Q1和Q3关闭,而Q2和Q4导通时,电机处于短路制动状态,将在瞬时停止转动。[5]这四种状态对应的H桥式驱动电路状态如图6-2所示。

图6-2 H桥式电路的四种状态

图13从左到右分别表示H桥式驱动电路的开关工作状态的切换,电机分别处于正转、反转、停止和短路制动四个状态。

从图中可以看出,通过三极管的放大,保证了电机的驱动电流;通过桥式电路,对不同开关的选择,可以实现单片机的数字电平控制三极管的导通和截止,从而控制小电机的正反转。[5] 6.4 驱动芯片比较

6.4.1 电机驱动芯片 L298

L298 是 ST 公司生产的一款高电压、大电流、小功率电机驱动芯片。该芯片内含两个 H 桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器、线圈等电感性负载;采用标准 TTL 逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作;有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈給控制电路。

[18]

其具有以下电气特性:

1)电源驱动电压 Vs 可达 5V~46V,逻辑支持电压 Vss 为 4.5V~7V; 2)输入高电压 Vih 为 2.3~Vss,输入低电压为 0V~1.5V;

3)峰值驱动电流可达 3A,正常工作电流为 2A,总驱动电流可达 4A; 4)响应速度快,提供纳秒级的响应速度;

5)提供过温保护,工作温度范围可达-25℃~130℃,正常工作温度为 13℃~ 35℃。温度过高或温度过低时,芯片均会停止工作,防止其损坏。 L298 采用的是 15 脚的 Multiwatt 封装,各引脚功能分布如表 6-1 所示:

表6-1 L298各引脚功能

引脚 符号 功能

1 CURRENT SENSING A 在这两个引脚与地(GND)之间连接电流检测15 CURRENT SENSING B 电阻,用来反馈负载电流,实现恒流控制 2 3

OUTPUT 1

OUTPUT 2

4 SUPPLY VOLTAGE 电机驱动电源输入端,此脚和地(GND)之间需要连接100nF的无感电容 5 INPUT 1 7 INPUT 2 6 ENABLE A 11 ENABLE B

8 GND 接地端。

9 LOGIC SUPPLY VOLTAGE 逻辑控制部分的电源输入端 10 INPUT 3 12 INPUT 4 13 OUTPUT 3 14 OUTPUT 4

6.4.2 电机驱动专用芯片TA7267BP

TA7267BP是东芝公司生产的一款专用于小型直流电机驱动的专用芯片。该芯片

在相应的逻辑电平的控制下,能够实现电机的正转、反转、停止和刹车四种动作。其

逻辑电平的工作电压为6~18V,驱动电机工作的电压为0~18V,是一款单电源供电芯片。[18]该芯片外观如图6-3所示。

图6-3 TA7267BP驱动芯片

实际上,TA7267BP的驱动原理是将桥式电路中所用的分离器件集成为一体,并定义了相关管脚的逻辑电平,从而使得驱动部分模块化,便于用户使用。内部原理如图6-4 所示。

图6-4 TA7267BP内部原理图

表6-2所示为TA7267BP中7个管脚的定义。这7个管脚中的1和2连接到单

片机的逻辑控制指令输出管脚,而3和5管脚则分别连接到所要控制的电机上。

表6-2 TA7267BP管脚定义

管脚号 1 2 3 4 5 6 7

名称 IN1 IN2 OUT1 GND OUT2 VS VCC

作用

控制指令输入1 控制指令输入1 电机输出1 地信号 电机输出2 驱动电机电源 逻辑电路电源

TA7267BP是依靠单片机输入到1、2管脚上的逻辑电平变化实现电机正转、反转、停止、刹车四个状态的选择。这四个状态的变化所对应的逻辑电平如表6-3所示。

表6-3 TA7267BP输出和电机状态的变化

IN1 1 0 1 0

IN2 1 1 0 0

OUT1 L L H

OUT2 L H L

电机状态 刹车 正转 反转 停止

High Imedance(高阻抗状态)

在TA7267BP中,施加在6、7管脚上的电源电压最大不能超过25V,常规的数字电路电源应该在6~18V之间,不能超过这个范围。工作电流平均为1A,峰值为3A,TA7267BP在电机启动时的电流不能超过这个峰值。根据TA7267BP各引脚对电平的控制,可以很方便地利用单片机实现对小电机的转动状态控制。[18] 6.5 驱动芯片选择

如果用户对成本的要求不高,那么选用专用的电机驱动芯片则是一种交为理想的选择。目前,专用的电机驱动芯片很多,需要针对使用的机电型号和额定功率进行选择。考虑到本设计的需要,L298的电源驱动电压,逻辑支持电压,正常工作电流等都与实际需求有点差异。最终我们选择了TA7267BP专用电机驱动芯片,其优势是操

作简单,驱动电路不复杂,容易实现电机正转、反转,停止及刹车,与实际设计需求很符合。

6.6 TA7267BP驱动芯片与AT89C51单片机连接电路

图6-5 TA7267BP驱动芯片与AT89C51单片机连接电路

7 单片机控制避障小车方向

步进电机广泛应用与家电、计算机、打印机、数控机床等需要精确控制位置、转动角度和速度的场合,它的输入控制信号为数字脉冲量,便于单片机控制。典型的步进电机控制系统如图6-6所示

图6-6 典型的步进电机控制系统图

7.1 步进电机控制系统及各部分功能

步进电机控制系统主要由步进控制器、功率放大器及步进电机组成。步进电机控制器是由缓冲寄存器、环形分配器、控制逻辑及正和反反转控制门等组成。它的作用就是把输入的脉冲转换成环形脉冲,以便控制步进电机,并能进行正反向控制。功率放大器的作用就是把控制器输出的环形脉冲加以放大,以驱动步进点饥转动。在这种控制方式中,由于步进控制器线路复杂、成本高,因而限制了应用。但是采用计算机控制系统,由软件代替上述步进控制器,则问题将大大简化。这不仅简化了线路,降低了成本,而且可靠性也大为提高。特别是采用单片机控制,更可以根据系统的需要,灵活改变步进电机的控制方案,使用起来很方便。

主要区别在于用单片机代替了步进控制器。因此单片机的主要作用就是把并行二进制码转换成串行脉冲序列,并实现方向控制。每当步进电机脉冲输入线上得到一个脉冲,它便沿着转向控制线信号所确定的方向走一步。只要负载是在步进电机允许的范围之内,那么,每个脉冲将使电机转动一个固定的步距角度,根据步距角的大小及实际走的步数,只要知道初始位置,便可知道电机的最终位置。[15]如图7-1所示

图7-1带有专业芯片的控制系统

7.2 步进电机

常用的步进电机有三相、四相、五相、六相四种,其旋转方向与内部绕组的通电顺序有关。下面以三相步进电机为例说明 三相步进电机有三种工作方式: 单三拍,通电顺序为A-B-C-A; 双三拍,通电顺序为AB-BC-CA-AB 三相六拍,通电顺序为A-AB-B-BC-C-CA-A

如果按照上述三种方式和通电顺序进行通电,则步进电机正相转动。反之,如果通电方向与上述相反,则步进电机反向转动。[15]

表7-1三相双三拍电机步序控制位表

1 2 3

P1.7 0 0 0

0 0 0

0 0 0

0 0 0

0 0

P1.6

P1.5

P1.4

P1.3

P1.2 C 0 1 1

P1.1 B 1 1 0

P1.0 A 1 0 1

AB BC CA

03H 06H 05H

7.3 单片机控制步进电机接口电路

由于步进电机的驱动电流比较大,所以单片机与步进电机的连接都需要专门的接口电路及驱动电路。接口电路可以是单片机内部的I/O口,也可以是可编程接口芯片,如8255、8155等。驱动器可用大功率的复合管,也可以是专门的驱动器。有时为了抗干扰,或避免一旦驱动电路发生故障,造成功率放大器中的电平信号进入单片机而

[19]烧毁器件,在驱动器与单片机之间加一级光电隔离器。原理接口电路如图7-2所示。

我们采用三相双三拍控制方式,其通电顺序为:正转AB-BC-CA-AB,03-06-05-03;反

转AB-CA-BC-AB,03-05-06-03。

图7-2单片机控制步进电机接口电路图

8 避障小车的动力——微型电机

考虑到轮式走行机构结构简单可靠、高速稳定、能源利用率高、操作性和 通过性好的优点,避障小车选用轮式机构。避障小车两主动轮用同一个电机一起驱动。又考虑到采用蓄电池直流供电及TA7267BP驱动芯片,我们选用步进电机、直流电机或者直流无刷电机。 8.1 三种类型的电机比较

步进电机能直接实现数字控制,控制性能好,能快速启动、制动和反转,抗干扰能力强等优点。但运动增量和步距角固定,不仅分辨率缺乏灵活性,而且单步响应时有过冲量和震荡,不利于避障小车的稳定,承受惯性负载的能力差。尽管位置误差不积累,但摩擦负载增加了定位误差,控制线路复杂,不利于移避障小车小空间的要求。 直流电机的转动惯量相对可以做到很小,控制特性好,响应速度快,满足避障小车的灵敏性要求:具有很宽的调速范围,速度快,满足避障小车的快速性能要求:低速平稳性好,满足稳定性要求:机械特性硬,过载能力强,可以满足避障小车的爬坡要求。但是由于有换向器和电刷,导致电机可靠性变差,寿命减少,这将严重影响机器人实际应用。

直流无刷电机不仅完全具有普通直流电机的优点,而目由于没有换向器和电刷,可靠性高,寿命长,能够很好的满足避障小车的要求。由于直流无刷电机采用专用电子原器件实现电机换相,成木相对较高,目前这点影响可以忽略。而且直流无刷电机具有线性机械特性、调速范围宽、效率较高和控制电路简单等优点。所以我们选用直流无刷电机来驱动避障小车。 8.2 电机选择

通过查询多家公司直流无刷伺服电机产品,与Minmotor,EADmotors,Globemotors,Thosonmotors, Hurst Manufacturing等公司的同类产品相比,深圳市驰晟机电有限公司生产的TG-99 φ43.6直流无刷伺服电机较为理想,其性能优越。

深圳市驰晟机电有限公司生产的TG-99 φ43.6直流无刷伺服电机参数如表8-1所示:

表8-1 TG-99 φ43.6参数

机种 额定电压(V) 无负载转速

(r/min)

无负载电流(mA)

额定转速 (r/min)

额定电流 (mA)

质量(g) 备注

TG-99 12 3511 170 2267 2179 390 驱动器

9 电路图及电机驱动程序和万向轮驱动程序

9.1 电路全图

图8-1 避障小车电路全图

9.2 程序选择

本设计采用的的程序设计是汇编语言,汇编语言有一下特点:

1) 助记符指令和机器指令一一对应,所以汇编语言编写的程序效率高,占用存储空间小,运行速度快,因此汇编语言能编写出最优化的程序。

2) 使用汇编语言编程比使用高级语言困难。因为汇编语言是面向计算机的,汇编语言的程序设计人员必须对计算机硬件有相当深入的了解。这一点符合我们所学专业。

3) 汇编语言能直接访问存储器及接口电路,也能处理中断,因此汇编语言程序能直接管理和控制硬件设备。

4) 汇编语言缺乏通用性,程序不易移植,各种计算机都有自己的汇编语言,不同计算机的汇编语言之间不能通用。

9.3 程序流程图

图8-2 程序流程图

9.4 程序清单

STARA:SETB

SETB SETB SETB SETB

ACALL

CLR P0.0 P0.1 P0.2 P1.2 P1.3 R0 C ;关闭车轮转动 ;刹车 ;调读数据子程序,即读取信号 ;进位位清零

;读出的信号与安全信号0相比较 LP: CJNE

JC A ,#0, PL0 LP0:

FI:

NZ ;小于0,信号正常,电机正转 ;大于0时,方向转45度

ACALL CII0

FI1: SETB

CLR

ACALL

CLR

CJNE

JNC

SETB

SETB

ACALL

SJMP

读信号子程序

RD: CLR

SETB

MOV

CLR

MOV

LP1: STEB

MOV

CLR

MOV

MOV

RLC

DJNZ

SETB

RET

电路图及电机驱动程序和万向轮驱动程序 P1.3 ;P1.3对应IN1,P1.2对应IN2 P1.2 ;车反转 R0 ;取信号 C A, #0, FI1 FI1 ;信号不正常,转FI1 P1.2 P1.3 ;信号正常;刹车 CCI0 ;车轮反转45度 START P1.4 ;片选信号有效 P1.5 ;置时钟高电平 R0, A ;延时2个晶体振荡周期 P1.5 ;置时钟信号低电平 R1, #8 ;要读的8位数据 P1.5 R0, A P1.5 C, P1.6 ;将转化好的数据送进位位 C, P1.6 ;再送一次 A ;送A,并左移一位 R1, LP1 ;8位数据未取完转LP P1.4 ;8位数据取完片选无效

10 结论

在本设计中,由于条件和自身水平的原因,自己没能做出实物来。许多设计也仅是理论上的知识。在设计时,由于只对部分模块进行测试或试验,如果要做出实物来,可能还会有许多暂时还没想到的问题会出现。由于本设计中的避障方法太过简单,因此可能时常避不过障碍物,而且效率也不高,实际中的用途不是很大,但是确能把所学的许多知识回顾一遍并使之用到实际中去,使自己对所学的知识印象更加深刻。

本文主要完成了以下工作:

1)简要的介绍目前国内智能小车的概况

2)完成了对智能避障小车系统的电路、软件和部分硬件的设计;

3)完成了对一些模块的测试;

4)给出了系统不足及需要完善的地方。

本设计主要目的就是为了用所学的知识对智能机器人或小车在避障方面进行了探索,并加深自己对所学知识的体会。因此本设计中还有许多不足的地方希望老师、同学提出宝贵意见。

参考文献

[1] 吴建平. 红外反射式传感器在自主式寻迹小车导航中的应用[D]. 中国测试技术[J].

第30 卷第6 期,2004 年11 月: 29-31

[2] 江海蛟. 电动汽车用稀土永磁无刷直流电机的控制与研究[D]. 西北工业大学硕士学位论

文. 2003年11月:17-25

[3] 代庚辛. 基于80C196KC单片机的舞蹈机器人控制系统[D]. 西北工业大学硕士学位论文.

2004年11月:12-39

[4] 李广弟,朱月秀,王秀山. 单片机基础[M]. 北京航空航天大学出版社,2001. 5-18

[5] 求是科学. 单片机典型模块设计实例导航[M]. 人民邮电出版社,2004. 110-162

[6] 中国电子元件 AT89C51单片机应用手册[J]. 2003年14期. 19-21

[7] 孙宝元,杨宝清. 传感器及其应用手册[M]. 机械工业出版社,2004. 242-256

[8] 周继明,江世明. 传感器技术与应用[M]. 机械工业出版社, 2005. 126-130

[9] 吕泉,张红润. 传感器原理及应用[M]. 清华大学出版社,2006. 135-155

[10] 中国电子元件. QRB113与QRB114芯片介绍[J]. 2002年第22期. 39-41

[11] 中国电子元件. ST178传感器的应用技术[J]. 2003年第17期. 16-17

[12] 张红润,张亚凡. 传感技术与实验[M]. 清华大学出版社,2005. 178-186

[13] 中国电子元件. TLC0831 A/D转换芯片应用[J]. 2002年第8期. 12-17

[14] 刘星. 计算机接口技术[M]. 机械工业出版社,2004. 232-256

[15] 张大明. 单片微机控制应用技术[M]. 机械工业出版社,2006. 186-187

[16] 中国电子元件. TLC0832 A/D转换芯片应用[J] 2002年第8期. 18-21

[17] 中国电子元件. LM298芯片功能介绍[J]. 2001年第13期. 11-15

[18] 中国电子元件. TB7267BP芯片在驱动直流小电机中的应用[J]. 2001年第19期. 13-17

[19] 谢宜仁. 单片机实用技术问答[M]. 人民邮电出版社,2003. 396-420

[20] [美]Fred G. Martin. Robotic Explorations A Hands-on Introduction

to Engineering [M]. 电子工业出版社,2004. 106-127

基于51单片机的自动避障小车的研究与设计

徐永杰

(西南林学院计算机与信息科学系,云南 昆明 650224)

摘 要: 本文介绍了利用红外反射式传感器实现小车自动避障的设计与实现,能在有障碍物的情况下判断并自动躲避。自动避障是基于自动避障小车(AAOV—auto-avoid obstacle -vehicle)的机器人系统。实验中采用反射式红外传感器采集外界信号,红外反射式传感器采集后的信号经A/D转换器转换为数字信号,再由单片机对数字信号进行处理,控制电机,躲避障碍物。系统控制核心采用AT89C51单片机,电机驱动芯片采用TA7267BP,利用三相电机来控制避障小车的转向,A/D转换器采用串行的TLC0831芯片,反射式传感器采用QRB1114型。该技术可以应用于儿童智能玩具开发、隧道或管道检测,无人驾驶机动车、无人工厂、仓库、服务机器人等领域。

关键词:自动避障 红外传感器 单片机 电路设计

The research and design of AAOV-auto-avoid abstacle car which

bases on 51 single chips

Yongjie Xu

(Southwest Forestry University Computer And Information Science

Department Kunming ,Yunnan 650224)

[SUMMARY] This article introduces the design and execution of automatically avoiding obstacles by usage of the reflected infrared sensor on smsll cars.It makes the small cars judge and evade the obstacles automatically. Avoiding obstacles automatically is based on the AAOV-auto-avoid obstacle-vehicle of robot system.In the experiment,it adopts reflected infrared sensor to collect the external world signals which is transforms into number signals by the A/D conversion machine later then.After that,the single chip will handle these number signals and control current machine to avoid obstacles.The control core in system adops the AT89C2051 single chip;the current machine driving CMOS chip adops TA726TBP list,making use of 3-phasen current machine to control car’s direction;the A/D conversion machine adops series lines TLC0831CMOS chip;the reflecting type sensor adops QRB1114. This technology could serve to the development of children’s intelligent toys ,the examnation of tunnels and pipes, driverless mobile, robot factory, warehouse, service robot and etc.

KEYWORD:AAOV-auto-avoid infraned sensor single chip Microcomputer,current design

目 录

目 录 .............................................................. III

前言 ................................................................... 1

1 避障小车设计思路 ..................................................... 2

1.1 设计思路 .......................................................... 2

1.2 系统组成 .......................................................... 2

2 控制核心——单片机 ................................................... 3

2.1 单片机的发展历史 .................................................. 3

2.2 单片机的特点 ...................................................... 3

2.3 单片机的应用领域 .................................................. 4

2.3.1 单片机在智能仪表中的应用 ...................................... 4

2.3.2 单片机在机电一体化中的应用 .................................... 4

2.4 单片机外部晶振 .................................................... 4

3 AT89C51单片机 ........................................................ 5

3.1 主要性能参数 ...................................................... 5

3.2 单片机选择 ........................................................ 5

4 传感器 ............................................................... 6

4.1 传感器选择 ........................................................ 6

4.2 红外反射式光电传感器特性与工作原理 ................................ 6

4.3 两种反射式型号的传感器参数比较 .................................... 7

4.3.1 QRB1114型反射式传感器 ........................................ 7

4.3.2 ST178型反射式传感器 .......................................... 8

4.3.3 自制传感器测试数据及实物图片 .................................. 9

4.4 具体设计与实现 ................................................... 12

4.5 QRB1114反射式红外传感器与A/D转换器连接电路 ..................... 12

5 模/数(A/D)转换器 .................................................... 14

5.1A/D 转换的主要性能指标 ............................................ 14

5.1.1 分辨率 ....................................................... 14

5.1.2 转换时间 ..................................................... 14

5.1.3 量程 ......................................................... 14

5.1.4 精度 ......................................................... 14

5.2 A/D转换的外围电路 ............................................... 14

5.2.1 采样保持电路 ................................................. 15

5.2.2 多路转换模拟开关 ............................................. 15

5.2.3 三态门 ....................................................... 15

5.3 8位A/D转换器----ADC0809芯片 .................................... 15

5.3.1 ADC0809的主要特性 ........................................... 16

5.3.2 ADC0809内部结构 ............................................. 16

5.3.3 ADC0809引脚功能 ............................................. 17

5.3.4 ADC0809的工作过程 ........................................... 18

5.3.5 ADC0809与8051单片机模拟实验 ................................ 18

5.3.6 ADC0809与8051模拟实验程序 .................................. 19

5.4 TLC0831八位串行A/D转换器 ....................................... 20

5.4.1 TLC0831的特点 ............................................... 20

5.4.2 TLC0831引脚功能 ............................................. 20

5.4.3 TLC0831电气特性 ............................................. 21

5.4.4 功能方框图及功能说明 ......................................... 21

5.5 TLC0831与8051单片机模拟实验 .................................... 22

5.5.1 TLC0851与8051模拟实验电路图 ................................ 22

5.5.2 TLC0851与8051模拟实验程序 .................................. 23

6 单片机驱动直流小电机 ................................................ 25

6.1 电机驱动电路器件 ................................................. 25

6.2 驱动电路的基本功能 ............................................... 25

6.3 H桥式电路原理 ................................................... 25

6.4 驱动芯片比较 ..................................................... 26

6.4.1 电机驱动芯片 L298 ............................................ 26

6.4.2 电机驱动专用芯片TA7267BP .................................... 27

6.5 驱动芯片选择 ..................................................... 29

6.6 TA7267BP驱动芯片与AT89C51单片机连接电路 ........................ 30

7 单片机控制避障小车方向 .............................................. 31

7.1 步进电机控制系统及各部分功能 ..................................... 31

7.2 步进电机 ......................................................... 32

7.3 单片机控制步进电机接口电路 ....................................... 32

8 避障小车的动力——微型电机 .......................................... 34

8.1 三种类型的电机比较 ............................................... 34

8.2 电机选择 ......................................................... 34

9 电路图及电机驱动程序和万向轮驱动程序 ................................ 36

9.1 电路全图 ......................................................... 36

9.2 程序选择 ......................................................... 36

9.3 程序流程图 ....................................................... 36

9.4 程序清单 ......................................................... 37

10 结论 ............................................................... 39

参考文献 .............................................................. 40 指导教师简介 .......................................... 错误!未定义书签。 致谢 .................................................. 错误!未定义书签。

前言

自第一台工业机器人诞生以来,机器人技术经历了一个长期而又缓慢的发展过程。到了90年代,随着计算机、微电子、网络等技术的快速发展,机器人已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,迅速改变着人们的生活方式。人们在不断认识、探讨和改造自然的过程中,总结经验,不断创新,致力于制造出能替代人类劳动的机器人。[1]

本文的内容是设计一部自动避障小车,此设计将信号采集,信号处理,命令执行,避障等功能集为一体,采用了四个模块,每个模块都执行相应的功能,使整个系统的稳定性达到了比较高的水平。

自动避障小车可用于隧道及管道检测。此类工作由于其特殊性和高难度性时常给工人带来生命危险。但是通过一台自动避障小车,就可以轻而易举地降低危险度,还能节约大量时间和资金投入。对一些运输企业来说,自动避障小车加以改进就是一台很好的运输设备,虽然其造价昂贵,但它给整个社会的运输业带来的便利却不容忽视。作为一种无人操纵的自动化运输设备,自动避障小车具有运输效率高、节能、工作可靠、能实现柔性运输、使用灵活、无公害等许多优点。自动避障小车已经成为现代企业提高生产效率,降低生产成本的有力工具。但是由于其高昂的造价和复杂的制造工艺令许多中小企业望而却步,使得其在国内一直无法得到普及和推广。因此设计一种低价位又满足以上特点,且适合中小型企业需求的自动避障小车就显得非常迫切。[2]

1 避障小车设计思路

1.1 设计思路

一块电路板,板载两个电动机,其中一个作为动力装置配置到两个车轮上,另一个作为一个车轮的方向控制来用,设计三个车轮或四个,分别为动力车轮(两个)和方向车轮(一个或两个),方向车轮在前,动力车轮在后。其中作为动力车轮的两个必须并行的焊接到电路板上,两个电动机用大小齿轮与车轮连接,来控制车的速度。一个传感器,感测前方物体;一块单片机用来控制整个电路。

车在行走的过程中,通过传感器来探测前方是否有物体,如果有,传感器向单片机发出一个倒车的信号和方向控制信号,车向后倒,同时方向轮逆时针转动,车倒到一定距离后,传感器检测不到障碍物信号,方向轮恢复,继续前进。

1.2 系统组成

图1-1 系统组成方框图

避障小车系统由单片机控制,该系统主要有四部分组成,即控制模块、电机驱动模块、方向电机控制模块和数据采集模块。

2 控制核心——单片机

本设计采用的控制核心是单片机,其原因是控制简单,操作方便,数据处理速度快,体积小等优点。

2.1 单片机的发展历史

从单片机的发展历史来看,可以分为四个阶段

第一阶段(1974-1976 ):单片机初级阶段。因工艺限制,此阶段的单片机采用双片的形式而且功能比较简单。例如仙童公司生产的F8单片机,只包括了8位CPU (Central Processing Unit,称中央处理器,由计算机的运算器和控制器组成,是计算机的核心),64个字节RAM (Random Access Memory,随机存取存储器)和两个并行口,需要加一块具有1KBROM (Read Only Memory,只读存储器)、定时器/计数器和两个并行口的3851芯片才能组成一台完整的计算机。

第二阶段(1976-1978年):低性能单片机阶段。此阶段的单片机已为一台完整的计算机,但内部资源不够丰富,以Intel公司生产的MCS-48系列为代表,片内集成了8位CPU, 8位定时器/计数器、RAM和ROM等,但无串行口,中断系统也比较简单,片内RAM和ROM容量较小且寻址范围不大于4KB。

第三阶段(1978 -1982 ):高性能单片机阶段。此阶段的单片机内部资源丰富,以Intel公司生产的MCS-51系列为代表,片内集成了8位CPU, 16位定时器/计数器、串行I/O口、多级中断系统、RAM和ROM等,片内RAM和ROM容量加大,寻址范围可达64KB。有的型号内部还带有A/D转换器。

第四阶段(1982-- ): 8位单片机的巩固发展阶段及16位、32位单片机推出阶段。16位单片机以Intel公司生产的MCS -96系列为代表,在片内带有多通道A/D转换器和高速输入/输出(HSI/HSO)部件,中断处理和实时处理能力很强。[3]

2.2 单片机的特点

综合来看,单片机具有如下明显的特点:

1) 小巧灵活、成本低、易于产品化。能利用它方便组装成各种智能式测控设备及各种智能仪器仪表,很容易满足仪器设备既智能化又微型化的要求。

2) 可靠性高、使用的温度范围宽。单片机芯片一般是按工业测控环境要求设计的,能适应各种恶劣的环境。这一特点是其他几种无法比拟的。

3) 易扩展、控制能力强。通过单片机本身或扩展可以方便地构成各种规模的应用系统及多机和分布式计算机控制系统。

4) 指令系统相对简单,较易掌握,且指令中较丰富的逻辑控制功能指令,能较方便地直接操作外部输入输出设备。[4]

2.3 单片机的应用领域

目前单片机的应用己深入到国民经济的各个领域,对各个行业的技术改造和产品的更新换代起重要的推动作用。由单片机的特点决定了单片机的主要应用领域——智能仪器仪表、机电一体化、实时控制、民用电子产品和国防工业等方面。

2.3.1 单片机在智能仪表中的应用

单片机广泛应用于实验室、交通工具、计量等各种仪器仪表之中,使仪器仪表智能化,提高它们的测量精度,加强其功能,简化仪器仪表的结构,便于使用、维护和改进。例如:电度表校验仪,电阻、电容、电感测量仪,船舶航行状态记录仪,烟叶水分测试仪,智能超声波测厚仪等。单片机在该领域的应用,不仅使传统的仪器仪表发生根本的变革,也给传统的仪器仪表行业的改造带来了曙光和美好的前景。

2.3.2 单片机在机电一体化中的应用

机电一体化是机械工业发展的重要方向。机电一体化产品是集机械技术、微电子技术、自动化技术和计算机技术于一体,具有智能化特征的机电产品,列如:微电控制的铣床、车床、钻床、磨床等等。单片机的出现促进了机电-体化的进程,它作为机电产品中的控制器,能充分发挥它的体积小、可靠性高、控制功能强、安装方便等优点,大大提升了机器的功能,提高了机器的自动化、智能化程度。[4]

2.4 单片机外部晶振

晶振为单片机提供时钟周期,没有晶振,就无法执行程序代码,单片机就无法工作。单片机工作时,是一条一条地从ROM中取指令,然后一步一步的执行,单片机访问一次存储器的时间称为一个机器周期,这是一个时间基准。一个机器周期包括12个时钟周期。单片机的所有指令中,有些完成的比较快,只要一个时钟周期就行了,有的比较慢,需要2个时钟周期,还有两条指令,需要四个时钟周周期才行。[5]

3 AT89C51单片机

AT89C51是美国ATMEL生产的低电压,高性能CMOS8位单片机,如图3-1 所示,片内含2KB的可反复擦写的只读程序存储器(PEROM)和128B的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度,非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大AT89C51单片机可为你提供许多高性价比的适用场合。[6]

3.1 主要性能参数

与MCS-51产品指令系统完全兼容

4K字节可重擦写Flash内存存储器

1000次擦写周期

全静态操作:0HZ-20MHZ

三级加密程序存储器

120×8字节内部RAM

32个可编程I/O口线

2个16位定时/计数器

6个中断源

可编程串行UART通道

低功耗空闲和掉电模式[6]

3.2 单片机选择

由于Intel公司将MCS-51的核心技术授权给了很多公司,所以目前单片机的种类很多,在选择单片机时要依据实际设计要求选择合适的单片机。本设计只用到单片机的一个定时器和一些I/O口,在考虑单片机价格和性能后,选用了AT89C51型单片机。如图3-1所示。

4 传感器

传感器是用来感知周围事物的仪器。接近觉传感器是用于感知机器人周围障碍物的接近程度的仪器。当机器人与障碍物非常接近时,传感器发出报警,故其感知过程不包括与障碍物的直接接触。接近觉传感器介于触觉传感器和视觉传感器之间,不仅可以测距和定位,而且可以沟通视觉和触觉传感器的信息,在机器人基于传感器信号控制中起特殊作用。[7] 4.1 传感器选择

实现自动避障小车的接近觉功能有多种方式:1)光电接近觉传感器,光电接近觉传感器塞速度快,抗干扰能力强,测量点小,具有可使用CCD(视频摄像头的“视网膜”)摄像头进行图象采集和识别,适用范围广等优点;但是不适用在小体积系统使用,并且还涉及图象采集、图象识别等领域。2)电容式接近传感器,基于检测对象表面靠近传感元件时的电容变化。3)超声波传感器,根据波从发射到接收的传播过程中所受到的影响来检测物体的接近程度。4)红外反射式光电传感器,它包括一个可以发射红外光的固态发光二极管和一个用作接收器的固态光敏二极管(或光敏三极管)。[7]

根据本设计使用场合的具体情况,传感器要感知的对象是物体的有无和物体的接近程度,与精确的测距系统有相似之处,但又有不同,只要求判断出简单的阈值或提供远、近分档的距离。因此使用较简单的接近传感器实现小车避障是有依据可循的并且是可行的。为了简单起见,系统中使用了一个红外反射式光电传感器,用于障碍判断。

4.2 红外反射式光电传感器特性与工作原理

反射式光电传感器的光源有多种,常用的有红外发光二极管,普通发光二极管,以及激光二极管,前两种光源容易受到外界光源的干扰,而激光二极管发出的光的频率较集中,传感器只接收很窄的频率范围信号,不容易被干扰但价格较贵。[8]理论上光电传感器只要位于被测区域反射表面可受到光源照射同时又能被接收管接收到的范围就能进行检测,然而这是一种理想的结果。因为光的反射受到多种因素的影响,如反射表面的形状、颜色、光洁度,日光、日光灯照射等不确定因素。[9]原理如图4-1 所示:

射 表 面

图4-1 红外发射接收原理

4.3 两种反射式型号的传感器参数比较

市场上反射式传感器种类很多,不同的产品适用的场合不同,对于本设计要求,只要能感测到避障小车前150mm左右的障碍物就可以了,所以,我们根据要求我们选择了QRB1114[10]型和ST178P型。[11] 4.3.1 QRB1114型反射式传感器

表4-1 QRB1114极限参数

项目 输入

正向电压 正向电流

符号

数值 50

单位 mA

IF VR

P

5 V

耗散功率

输出

射-集电压 集-射电压

100 30

mW V

VCEO VECO

P

4.5 V

集电极功耗 100 mW

表4-2 QRB1114电气特性

项目 输 入

正向电流 正向电压

符号

测试条件

最小

典型

最大 1.7

单位 V

VF IF=40mA

VR=5.0

IR

100 uA

输 出

集电极暗电流

ICEO IL

VCE=10V IF=0mA VCE=5V IF=40mA

100 nA

集电极亮电流 0.60 mA

QRB1114标准电流与障碍物距离曲线

4.3.2 ST178型反射式传感器

表4-3 ST178极限参数

项目 输入

正向电压 正向电流

符号

数值 50

单位 mA

IF VR

P

6 V

耗散功率

输出

射-集电压 集-射电压

75 25

mW V

VCEO VECO

P

6 V

集电极功耗 50 mW

表4-4 ST178电气特性

项目 输

正向电压

符号

测试条件

最小

典型 1.25

最大 1.5

单位 V

VF IF=20mA

入 正向电流

IR ICEO IL

VR=5.0

VCE=20V IF=0mA VCE=15V IF=8mA

10 uA

输 出

集电极暗电流 1 uA

集电极亮电流 0.50 mA

ST178标准电流与障碍物距离曲线

4.3.3 自制传感器测试数据及实物图片

由于设计的需要,我们在电子元件厂买了对红外对射管,具体参数不详细,最大支持电压为5V。在测试当中,我们发现此对射管在日光灯的照射下,阴暗的条件下,干扰太大,在晴朗的天气条件下,测试数据比较理想。[12]下面是我们在晴朗的天气条件下测得的数据

障碍物距离与电压

表4-5

障碍物距离(mm) 电压(V)

0 4.70

50 4.68

100 4.65

150 4.60

200 4.52

250 4.30

300 4.13

350 4.00

400 3.95

450 3.90

500 3.90

无限 3.90

障碍物距离与电流

表4-6

障碍物距离(mm)

50

100

150

200

250

300

350

400

450

500

550

600

无限

电流(uA) 0.7 1.1 1.3 1.4 1.4 1.4 1.4 2.7 4.3 5.6 7.0 7.9 8.4 11.4

障碍物距离与电流曲线

自制传感器测试时图片

图4-2-1

4-2-2

图4-2-3

4.4 具体设计与实现

接近觉传感器应用场合不同选择不同,感觉的距离范围不同,可从几毫米到几米。对于自动动避障小车,反射距离在150mm左右,探测环境在阴影之下,不易受到日光的干扰。因此,我们选用QRB1114和ST178型号的反射式红外传感器,这两种传感器选用FS-359F反射红外对管,043W和048W型封装。这两种封装形状规则,便于安装。对于障碍物的检测,可以使用超声波传感器,效果也较好,但电路系统庞大,还需占用大量MCU时间。上文的激光传感器虽然性能不错,但价格较贵。从需要100—250mm垂直探测距离的要求来看,普通的红外反射式传感器又很难胜任。QRB1114与ST178反射式传感器经过比较发现,它们都很适合本设计所用的传感器,QRB1114反射式传感器测试最佳距离为150mm,ST178反射式传感器测试最佳距离为80mm,经过我们组商量,考虑到控制上的问题,我们采用了QRB1114型反射式红外传感器,其原因是可以探测障碍物的距离远,有利于自动避障小车躲避障碍。符合设计要求。QRB1114在使用约50mA的发射电流,没有强烈日光干扰(在有日光灯的房间里)最佳探测距离能达150mm,完全能满足探测距离要求。红外传感器的电路有多种形式,在这里为了安装调试方便,我们采用了图4-2的电路形式。[20]

图4-2 红外反射式光电传感器电路

4.5 QRB1114反射式红外传感器与A/D转换器连接电路

反射式红外传感器采集的模拟量(A)就是大小随时间连续变化的量,例如锅炉的温度,燃气管道中燃气的流量、压强、输电线的电压、电流等。要对这些物理量加

以控制,就要用传感器把它们的信号检测出来,传送到单片机中。由单片机中的程序判断该怎样输出命令。但是单片机中的信号是反映电平高低的离散的数字信号(D),因此在输入到单片机之前还要把连续变化的模拟物理量先用变送器变成连续变化的模拟量,再用采样/保持器每隔一定时间间隔(很短)采一次模拟电压量的样,保持一定时间(很短),送A/D(模/数)转换器,将模拟电压量(A)转换成反映电平高

[13]低的离散的数字信号(D)。之后再送入单片机计算处理。反射式红外传感器与A/D

转换器连接电路如图4-3 所示。

图 4-3 反射式红外传感器与A/D转换器连接电路

5 模/数(A/D)转换器

A/D转换器是指通过一定的电路将模拟量转变为数字量。模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非电信号。但是在A/D转换前,输入到A/D转换器的输入信号必须经过各种传感器把各种物理量转换成电信号。A/D转换后,输出的数字信号有8位、10位、12位和14位。在本设计中,由于传感器采集的是外界电压信号,故需要一个合适的A/D转换器用来转换外界信号给单片机。

5.1A/D 转换的主要性能指标 5.1.1 分辨率

分辨率是指A/D转换器能分辨的最小模拟输入量。通常用转换成的数字量的位数来表示,如8位,10位,12位,15位等.位数越高,分辨率越高。例如,对于8位A/D转换器,当输入电压满刻度为5V时,其输出数字量的变化范围为0—255,转换电路对输入模拟电压的分辨能力为5V/255=19.5mV。[14]

5.1.2 转换时间

转换时间是A/D转换完成一次转换所需的时间。目前常用的A/D转换集成芯片的转换时间约为几个微秒至200微秒。

转换时间是编程必须考虑的参数,若CPU输入A/D转换后的数据,采用无条件传送方式,从启动A/D转换开始,延时等待,转换结束,才可输入数据。此延时等待时间必须大于或等于A/D转换时间。[14] 5.1.3 量程

量程是指所能转换的输入电压范围。 5.1.4 精度

A/D转换精度分为绝对精度和相对精度两种。

(1)绝对精度:是指对应于一个给定量A/D转换器的误差,其误差大小由实际模拟量输入值与理论值来度量。

(2)相对精度:由绝对误差决定。相对误差是指绝对误差与满刻度值之比,一般用百分数来表示。 5.2 A/D转换的外围电路

在实际系统中用到A/D转换时,还要考虑模拟量的变化速度与A/D转换器的转换

速度,为此引入了采样保持电路.还需考虑一个A/D转换器的转换速度,为此引入了多路转换模拟开关,以及数据输出线与系统总线的连接,三态门的概念。 5.2.1 采样保持电路

如果A/D转换器的转换速度比模拟信号高出许多倍,那么,模拟信号可以直接加到A/D转换器,但是如果模拟信号变化比较快,为了保证转换精度,就要在A/D转换之前加上采样保持电路,使得A/D转换期间保持输入模拟信号不变。

采样保持电路有两种工作状态,一种是采样状态,一种是保持状态.在采样状态,输出随输入而变换;在保持状态,输出保持为某一个值。

目前,采样保持电路集成在一个芯片中,为专用的采样保持芯片。如AD583K,AD582K等芯片.另外还有A/D芯片带有保持电路,如12位AD1554为采样保持A/D芯片。[14]

5.2.2 多路转换模拟开关

在实际工程中,有时要求同时测量温度,压力,温度,风速,流量等多种参数,根据测量值发出相应的控制,有时要求测量同一参数,但不同的测量点,都用公共的A/D,D/A转换电路,这就要求解决多 个回路和A/D,D/A转换器之间的切换问题。一般采用两种方法,一种方法是用独立的多路转换模拟开关轮流切换各回路和A/D,D/A之间的通路,对于A/D转换来说,要用到多路输入,一路输出模拟开关电路,对于D/A转换来说,要用到一路输入,多路输出的模拟开关电路,去控制多个对象。这两种电路都有专用的集成电路芯片。[14] 5.2.3 三态门

A/D转换器的数据输出是否能直接与CPU数据总线相连,要看数据输出端是否具有可控的三态输出门。有的A/D转换器带有三态输出门,当A/D转换结束时,CPU执行一条输入指令,用读信号打开三态门,将数据从A/D转换器取出,读入CPU。有的A/D转换器不带三态输出门,可外接三态门电路实现A/D转换器和CPU之间的数据传输。

[14]

5.3 8位A/D转换器----ADC0809芯片

ADC0809芯片是CMOS单片型逐次逼近式A/D转换器,如图5-1、5-2内部结构和引脚图。

图5-1 ADC0809内部结构图

图 5-2 ADC0809引脚图

5.3.1 ADC0809的主要特性

(1)它具有8路模拟量输入,8位A/D转换器 (2)转换时间为100us

(3)模拟输入电压范围0 -- +5V,不需零点和满刻度校准 (4)低功耗,约15mW 5.3.2 ADC0809内部结构 1)通道选择开关

可采集8路模拟信号,通过多路转换开关,实现分时采集8路模拟信号。 2)通道地址锁存和译码

用来控制通道选择开关.通过ADDA,ADDB,ADDC三个地址选择端的译码作用,控制通道选择开关,接通某一路的模拟信号,采集并保持该路模拟信号,输入到ADC0809比较器的输入端。 3)逐次逼近A/D转换器

该部分包括比较器,8位开关树形D/A转换器,逐次逼近寄存器,把输入的模拟信号进行逐次逼近式A/D转换,转换结束后把转换数据从逐次逼近寄存器传送到8位锁存三态门。

4)8位锁存器和三态门

经A/D转换的数字量保存在8位锁存寄存器中,当输出允许信号OE有效时,打开三态门,转换后的数据通过数据总线传送到CPU.由于ADC0809具有三态门输出,因而数据线可直接挂在CPU数据总线上。[14] 5.3.3 ADC0809引脚功能

ADDA,ADDB,ADDC:地址输入线,用来选通8路模拟输入中的一路.它们与模拟信号的关系如下表

表5-1地址输入线与模拟信号的关系

ADDC 0

ADDB 0

ADDA 0

模拟信号

IN0 IN1 IN2 IN3 IN4 N5 IN6 IN7

0 0 1

0 1 0

0 1 1

1 0 0

1 0 1

1 1 0

1 1 1

IN0--IN7:8路模拟信号输入端。

ALE:地址锁存允许信号。输入,高电平有效.用来控制通道选择开关的打开与闭合。

ALE=1时,接通某一路的模拟信号,ALE=0时,锁存该路的模拟信号。

2-1、2-2、„2-8:8位数字量输出端。

START:A/D转换启动信号,输入,高电平有效。

EOC:A/D转换结束信号,输出,高电平有效,EOC信号可用来申请中断。 CLK:时钟脉冲输入端.要求时钟频率不高于640KHZ。

REF(+),REFREF(-):基准电压。一般与微机接口时,-VREF为0V或-5V,+VREF为+5V或0V。[14]

5.3.4 ADC0809的工作过程

ADC0809的工作过程是:首先确定ADDA,ADDB,ADDC三位地址决定选择哪一路模拟信号,然后使ALE=1,使该路模拟信号经选择开关达到比较器的输入端。启动START,START的上升沿将逐次逼近寄存器复位,下降沿启动A/D转换.这时EOC输出信号变低,指示转换正在进行。

A/D转换结束,EOC变为高电平,指示A/D转换结束。此时,数据已保存到8位锁存器.EOC信号可作为中断申请号,通知CPU转换结束,可以输入数据.中断服务程序所要做的事情是使OE信号变为高电平,打开三态门,由ADC0809输出的数字量传送到CPU。也可以采用查询式,CPU执行输入指令,查询EOC端是否变为该电平状态。若为低电平,则等待,若为高电平, 从OE 端输入一个高电平信号,打开三态门输入数据。[14] 5.3.5 ADC0809与8051单片机模拟实验

我们用ADC0809采集来的信号,驱动P1.0口上的二极管,当外界的电压超过4.60V时,二极管就发亮,否则熄灭。电路图如图5-3。[16]

图5-3 ADC0809与单片机连接图

5.3.6 ADC0809与8051模拟实验程序

经我们计算,当模拟电压是4.60V时,汇编语言代码为224。 模拟程序如下: CSEG AT

LJMP

0000H START 4000H P1.2

DPTR,#0CFA0H P1.2

$

;EL试验箱仿真地址

CSEG AT STARA STEB

MOV JNB MOVE MOV CLR SUBB JC STEB AJMP

A,@DPTR 40H, C A, #224 DEM P1.0 LP P1.0

A

;与4.60V电压比较

DEM: CLR

AJMP END

LP

仿真结果,如果模拟输入电压大于4.60V时,发光二极管发光,否则熄灭。[16] 5.4 TLC0831八位串行A/D转换器

TLC0831是8位逐次逼近模数转换器。有一个输入通道,串行输出可以配置为和标准移位寄存器或处理器接口。

5.4.1 TLC0831的特点 8位分辨率

易于和微处理器接口或独立使用 满比例工作或用5V基准电压

单通道或多路选择的双通道,可单端或差分输入选择 单5V供电,输入范围0—+5V 输入和输出与TTL和CMOS兼容 在FCLOCK=250KHZ时,转换时间为32us

设计成可以和国家半导体公司的ADC0831和ADC0832互换 总非调整误差 1 LSB[16] 5.4.2 TLC0831引脚功能

CS:片选端,低电平有效。 IN+与IN-:模拟信号差分输入端。 REF:基准电压(0—5V)输入端。 DOUT:8位数据串行输出端。 CLK:时钟脉冲输入端。[16] TLC0831时序如图9

5.4.3 TLC0831电气特性

表5-2TLC0831电器特性

电源电压

VCC

逻辑 模拟

5V

输入电压范围

-0.3V至CC+0.3V

VV

-0.3V至CC+0.3V

输入电流

Ir

±5mA ±20mA

总输入电流

5.4.4 功能方框图及功能说明

如图5-4所示:

图 5-4 TLC0831功能方框图

TLC0831使用采样-数据-比较器的结构,用逐次逼近流程,转换差分模拟输入信号。要转换的输入电压连到一个输入端,相对于地(单端输入)或另一个输入端(差

分输入)。TLC0831只有一个极性已固定配置的差分输入端,因此不需要地址信号。TLC0831可以使用差分信号,连在它的IN+和IN-端;或使IN-连到地,信号连到+IN。作为单端输入。当连到分配正端的输入电压低于分配为负端的输入电压时,转换结果全为0。

通过和控制处理器相连的串行数据链路传送控制命令,用软件对通道选择和输入端进行配置。串行通信格式在不增加封装大小的情况下,可以在转换器中包含更多的功能。另外,可把转换器和模拟传感器放在一起,和远端的控制处理器串行通信,而不用进行低电平的模拟信号的远程传送。这样处理过程返回到处理器的是无噪声的数字数据。

置CS为低方能启动转换器开始,使所有逻辑电路使能。CS在整个转换过程中必须置为低。接着从处理器接收一个时钟,一个时钟的时间间隔被自动插入,以使多路转换器选定的通道稳定。DO脱离高阻状态,提供一个时钟的时间间隔的前导电平,以使多路稳定。SAR比较器把从电阻梯形网络输出的逐次信号和输入信号进行比较。比较器输出指出模拟输入是大于还是小于电阻梯形网络的输出。在转换过程中,转换数据同时从DO端输出,以最高位(MSB)开头。经过8个时钟后,转换完成。当CS变高,内部所有寄存器清零。此时,输出电路变为高阻状态。如果希望开始另一个转换,CS必须做一个从高到低的变跳,后面紧接地址数据。[16] 5.5 TLC0831与8051单片机模拟实验

利用传感器采集的信号,来控制LED灯亮/灭实验,当传感器采集的信号超过4.60V时,发光二极管就亮,我们正是利用这一功能,来控制电机按照预先设计的程序运行,从而达到控制的目的。

5.5.1 TLC0851与8051模拟实验电路图

如图5-5所示:

图 5-5 TLC0831与8051模拟实验连接图

5.5.2 TLC0851与8051模拟实验程序

经我们计算,当模拟电压是4.60V时,汇编语言代码为224。 程序如下: Start: clk Lp:

p1.0

;关灯

;调读数据子程序

acall rd

CLR C ;清进位位

CJNE A,#224,LP0 ;读出数据与4.60V比较 LP0: JC START ;小于4.60V转START SETB P1.0 ;大于4.60V开灯报警 SJMP LP ;转LP重读数据

RD: CLR P1.1 ;片选有效,启动A/D转换 SETB P1.2 ;置时钟高电平 MOV R0,A ;延时2个晶振周期

CLR P1.2 ;置时钟低电平 MOV R1,#8 ;要读8位数据 LP1: SETB P1.2 ;置时钟高电平 MOV R0,A ;延时2个晶振周期 CLR P1.2 ;置时钟低电平

MOV C,P1.3 ;将转换好的数据送进位位 MOV C,P1.3 ;重送一次 RLC A ;送A并左移一位 DJNZ R1,LP1 ;8位数据未取完转LP1 SETB P1.1 ;8位数据取完使片选无效 RET ;

仿真结果与ADC809一样,如果模拟输入电压大于4.60V时,发光二极管发光,否则熄灭。[15]

6 单片机驱动直流小电机

控制电机运动,例如转向,速度和角度的控制,是单片机在机电控制中的一个典型的应用。直流电机的控制性能优越,特别适合速度的控制,为了实现直流电机的正反转运行,只需要改变电机电源的极性。这种电压极性的变化和运转时间的长短由单片机实现,而提供直流电机正常运转的电流则需要驱动电路实现。[5] 6.1 电机驱动电路器件

单片机本身具备一定的驱动能力,其I/O口的电流在10mA左右,像驱动发光二极管之类的器件并不需要特殊的驱动电路。但是对于直流电机这类负载较大的器件,单片机无法为其提供足够的电流。尤其是在直流电机刚启动时,电机的启动电流往往会达到其正常工作电流的4~5倍,所以,这一类的电路需要专门的驱动电路完成对电机的驱动,而单片机只是完成逻辑控制部分的工作。[5] 6.2 驱动电路的基本功能

驱动电路的基本功能是要有足够的电流驱动电机转动,在本设计中,还需要利用单片机的逻辑电平输出控制电机的正反转。 6.3 H桥式电路原理

桥式电路是一种最基本的驱动电路结构。控制电机正反转的桥式驱动电路有单电源和双电源两种驱动方式。由于本设计要求,采用单电源驱动方式。[5]如图6-1所示

图6-1 单电源H桥式驱动方式电路

在图中的四个二极管为续流二极管。如果选用的驱动电路中使用的是晶体三极管,那么这四个二极管是必须使用的,其主要作用是用以消除电机所产生的反向电动势,避免电机的反向电动势对晶体三极管的反向击穿。[5]

单电源方式的桥式驱动电路又称为全桥式方式驱动或者H桥方式驱动。电机正转时三极管Q1和Q4导通,反转时Q2和Q3导通,两种情况下,加在电机两端的电压极性相反。当四个晶体管全部关闭时,电机就停止转动。若Q1和Q3关闭,而Q2和Q4导通时,电机处于短路制动状态,将在瞬时停止转动。[5]这四种状态对应的H桥式驱动电路状态如图6-2所示。

图6-2 H桥式电路的四种状态

图13从左到右分别表示H桥式驱动电路的开关工作状态的切换,电机分别处于正转、反转、停止和短路制动四个状态。

从图中可以看出,通过三极管的放大,保证了电机的驱动电流;通过桥式电路,对不同开关的选择,可以实现单片机的数字电平控制三极管的导通和截止,从而控制小电机的正反转。[5] 6.4 驱动芯片比较

6.4.1 电机驱动芯片 L298

L298 是 ST 公司生产的一款高电压、大电流、小功率电机驱动芯片。该芯片内含两个 H 桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器、线圈等电感性负载;采用标准 TTL 逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作;有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈給控制电路。

[18]

其具有以下电气特性:

1)电源驱动电压 Vs 可达 5V~46V,逻辑支持电压 Vss 为 4.5V~7V; 2)输入高电压 Vih 为 2.3~Vss,输入低电压为 0V~1.5V;

3)峰值驱动电流可达 3A,正常工作电流为 2A,总驱动电流可达 4A; 4)响应速度快,提供纳秒级的响应速度;

5)提供过温保护,工作温度范围可达-25℃~130℃,正常工作温度为 13℃~ 35℃。温度过高或温度过低时,芯片均会停止工作,防止其损坏。 L298 采用的是 15 脚的 Multiwatt 封装,各引脚功能分布如表 6-1 所示:

表6-1 L298各引脚功能

引脚 符号 功能

1 CURRENT SENSING A 在这两个引脚与地(GND)之间连接电流检测15 CURRENT SENSING B 电阻,用来反馈负载电流,实现恒流控制 2 3

OUTPUT 1

OUTPUT 2

4 SUPPLY VOLTAGE 电机驱动电源输入端,此脚和地(GND)之间需要连接100nF的无感电容 5 INPUT 1 7 INPUT 2 6 ENABLE A 11 ENABLE B

8 GND 接地端。

9 LOGIC SUPPLY VOLTAGE 逻辑控制部分的电源输入端 10 INPUT 3 12 INPUT 4 13 OUTPUT 3 14 OUTPUT 4

6.4.2 电机驱动专用芯片TA7267BP

TA7267BP是东芝公司生产的一款专用于小型直流电机驱动的专用芯片。该芯片

在相应的逻辑电平的控制下,能够实现电机的正转、反转、停止和刹车四种动作。其

逻辑电平的工作电压为6~18V,驱动电机工作的电压为0~18V,是一款单电源供电芯片。[18]该芯片外观如图6-3所示。

图6-3 TA7267BP驱动芯片

实际上,TA7267BP的驱动原理是将桥式电路中所用的分离器件集成为一体,并定义了相关管脚的逻辑电平,从而使得驱动部分模块化,便于用户使用。内部原理如图6-4 所示。

图6-4 TA7267BP内部原理图

表6-2所示为TA7267BP中7个管脚的定义。这7个管脚中的1和2连接到单

片机的逻辑控制指令输出管脚,而3和5管脚则分别连接到所要控制的电机上。

表6-2 TA7267BP管脚定义

管脚号 1 2 3 4 5 6 7

名称 IN1 IN2 OUT1 GND OUT2 VS VCC

作用

控制指令输入1 控制指令输入1 电机输出1 地信号 电机输出2 驱动电机电源 逻辑电路电源

TA7267BP是依靠单片机输入到1、2管脚上的逻辑电平变化实现电机正转、反转、停止、刹车四个状态的选择。这四个状态的变化所对应的逻辑电平如表6-3所示。

表6-3 TA7267BP输出和电机状态的变化

IN1 1 0 1 0

IN2 1 1 0 0

OUT1 L L H

OUT2 L H L

电机状态 刹车 正转 反转 停止

High Imedance(高阻抗状态)

在TA7267BP中,施加在6、7管脚上的电源电压最大不能超过25V,常规的数字电路电源应该在6~18V之间,不能超过这个范围。工作电流平均为1A,峰值为3A,TA7267BP在电机启动时的电流不能超过这个峰值。根据TA7267BP各引脚对电平的控制,可以很方便地利用单片机实现对小电机的转动状态控制。[18] 6.5 驱动芯片选择

如果用户对成本的要求不高,那么选用专用的电机驱动芯片则是一种交为理想的选择。目前,专用的电机驱动芯片很多,需要针对使用的机电型号和额定功率进行选择。考虑到本设计的需要,L298的电源驱动电压,逻辑支持电压,正常工作电流等都与实际需求有点差异。最终我们选择了TA7267BP专用电机驱动芯片,其优势是操

作简单,驱动电路不复杂,容易实现电机正转、反转,停止及刹车,与实际设计需求很符合。

6.6 TA7267BP驱动芯片与AT89C51单片机连接电路

图6-5 TA7267BP驱动芯片与AT89C51单片机连接电路

7 单片机控制避障小车方向

步进电机广泛应用与家电、计算机、打印机、数控机床等需要精确控制位置、转动角度和速度的场合,它的输入控制信号为数字脉冲量,便于单片机控制。典型的步进电机控制系统如图6-6所示

图6-6 典型的步进电机控制系统图

7.1 步进电机控制系统及各部分功能

步进电机控制系统主要由步进控制器、功率放大器及步进电机组成。步进电机控制器是由缓冲寄存器、环形分配器、控制逻辑及正和反反转控制门等组成。它的作用就是把输入的脉冲转换成环形脉冲,以便控制步进电机,并能进行正反向控制。功率放大器的作用就是把控制器输出的环形脉冲加以放大,以驱动步进点饥转动。在这种控制方式中,由于步进控制器线路复杂、成本高,因而限制了应用。但是采用计算机控制系统,由软件代替上述步进控制器,则问题将大大简化。这不仅简化了线路,降低了成本,而且可靠性也大为提高。特别是采用单片机控制,更可以根据系统的需要,灵活改变步进电机的控制方案,使用起来很方便。

主要区别在于用单片机代替了步进控制器。因此单片机的主要作用就是把并行二进制码转换成串行脉冲序列,并实现方向控制。每当步进电机脉冲输入线上得到一个脉冲,它便沿着转向控制线信号所确定的方向走一步。只要负载是在步进电机允许的范围之内,那么,每个脉冲将使电机转动一个固定的步距角度,根据步距角的大小及实际走的步数,只要知道初始位置,便可知道电机的最终位置。[15]如图7-1所示

图7-1带有专业芯片的控制系统

7.2 步进电机

常用的步进电机有三相、四相、五相、六相四种,其旋转方向与内部绕组的通电顺序有关。下面以三相步进电机为例说明 三相步进电机有三种工作方式: 单三拍,通电顺序为A-B-C-A; 双三拍,通电顺序为AB-BC-CA-AB 三相六拍,通电顺序为A-AB-B-BC-C-CA-A

如果按照上述三种方式和通电顺序进行通电,则步进电机正相转动。反之,如果通电方向与上述相反,则步进电机反向转动。[15]

表7-1三相双三拍电机步序控制位表

1 2 3

P1.7 0 0 0

0 0 0

0 0 0

0 0 0

0 0

P1.6

P1.5

P1.4

P1.3

P1.2 C 0 1 1

P1.1 B 1 1 0

P1.0 A 1 0 1

AB BC CA

03H 06H 05H

7.3 单片机控制步进电机接口电路

由于步进电机的驱动电流比较大,所以单片机与步进电机的连接都需要专门的接口电路及驱动电路。接口电路可以是单片机内部的I/O口,也可以是可编程接口芯片,如8255、8155等。驱动器可用大功率的复合管,也可以是专门的驱动器。有时为了抗干扰,或避免一旦驱动电路发生故障,造成功率放大器中的电平信号进入单片机而

[19]烧毁器件,在驱动器与单片机之间加一级光电隔离器。原理接口电路如图7-2所示。

我们采用三相双三拍控制方式,其通电顺序为:正转AB-BC-CA-AB,03-06-05-03;反

转AB-CA-BC-AB,03-05-06-03。

图7-2单片机控制步进电机接口电路图

8 避障小车的动力——微型电机

考虑到轮式走行机构结构简单可靠、高速稳定、能源利用率高、操作性和 通过性好的优点,避障小车选用轮式机构。避障小车两主动轮用同一个电机一起驱动。又考虑到采用蓄电池直流供电及TA7267BP驱动芯片,我们选用步进电机、直流电机或者直流无刷电机。 8.1 三种类型的电机比较

步进电机能直接实现数字控制,控制性能好,能快速启动、制动和反转,抗干扰能力强等优点。但运动增量和步距角固定,不仅分辨率缺乏灵活性,而且单步响应时有过冲量和震荡,不利于避障小车的稳定,承受惯性负载的能力差。尽管位置误差不积累,但摩擦负载增加了定位误差,控制线路复杂,不利于移避障小车小空间的要求。 直流电机的转动惯量相对可以做到很小,控制特性好,响应速度快,满足避障小车的灵敏性要求:具有很宽的调速范围,速度快,满足避障小车的快速性能要求:低速平稳性好,满足稳定性要求:机械特性硬,过载能力强,可以满足避障小车的爬坡要求。但是由于有换向器和电刷,导致电机可靠性变差,寿命减少,这将严重影响机器人实际应用。

直流无刷电机不仅完全具有普通直流电机的优点,而目由于没有换向器和电刷,可靠性高,寿命长,能够很好的满足避障小车的要求。由于直流无刷电机采用专用电子原器件实现电机换相,成木相对较高,目前这点影响可以忽略。而且直流无刷电机具有线性机械特性、调速范围宽、效率较高和控制电路简单等优点。所以我们选用直流无刷电机来驱动避障小车。 8.2 电机选择

通过查询多家公司直流无刷伺服电机产品,与Minmotor,EADmotors,Globemotors,Thosonmotors, Hurst Manufacturing等公司的同类产品相比,深圳市驰晟机电有限公司生产的TG-99 φ43.6直流无刷伺服电机较为理想,其性能优越。

深圳市驰晟机电有限公司生产的TG-99 φ43.6直流无刷伺服电机参数如表8-1所示:

表8-1 TG-99 φ43.6参数

机种 额定电压(V) 无负载转速

(r/min)

无负载电流(mA)

额定转速 (r/min)

额定电流 (mA)

质量(g) 备注

TG-99 12 3511 170 2267 2179 390 驱动器

9 电路图及电机驱动程序和万向轮驱动程序

9.1 电路全图

图8-1 避障小车电路全图

9.2 程序选择

本设计采用的的程序设计是汇编语言,汇编语言有一下特点:

1) 助记符指令和机器指令一一对应,所以汇编语言编写的程序效率高,占用存储空间小,运行速度快,因此汇编语言能编写出最优化的程序。

2) 使用汇编语言编程比使用高级语言困难。因为汇编语言是面向计算机的,汇编语言的程序设计人员必须对计算机硬件有相当深入的了解。这一点符合我们所学专业。

3) 汇编语言能直接访问存储器及接口电路,也能处理中断,因此汇编语言程序能直接管理和控制硬件设备。

4) 汇编语言缺乏通用性,程序不易移植,各种计算机都有自己的汇编语言,不同计算机的汇编语言之间不能通用。

9.3 程序流程图

图8-2 程序流程图

9.4 程序清单

STARA:SETB

SETB SETB SETB SETB

ACALL

CLR P0.0 P0.1 P0.2 P1.2 P1.3 R0 C ;关闭车轮转动 ;刹车 ;调读数据子程序,即读取信号 ;进位位清零

;读出的信号与安全信号0相比较 LP: CJNE

JC A ,#0, PL0 LP0:

FI:

NZ ;小于0,信号正常,电机正转 ;大于0时,方向转45度

ACALL CII0

FI1: SETB

CLR

ACALL

CLR

CJNE

JNC

SETB

SETB

ACALL

SJMP

读信号子程序

RD: CLR

SETB

MOV

CLR

MOV

LP1: STEB

MOV

CLR

MOV

MOV

RLC

DJNZ

SETB

RET

电路图及电机驱动程序和万向轮驱动程序 P1.3 ;P1.3对应IN1,P1.2对应IN2 P1.2 ;车反转 R0 ;取信号 C A, #0, FI1 FI1 ;信号不正常,转FI1 P1.2 P1.3 ;信号正常;刹车 CCI0 ;车轮反转45度 START P1.4 ;片选信号有效 P1.5 ;置时钟高电平 R0, A ;延时2个晶体振荡周期 P1.5 ;置时钟信号低电平 R1, #8 ;要读的8位数据 P1.5 R0, A P1.5 C, P1.6 ;将转化好的数据送进位位 C, P1.6 ;再送一次 A ;送A,并左移一位 R1, LP1 ;8位数据未取完转LP P1.4 ;8位数据取完片选无效

10 结论

在本设计中,由于条件和自身水平的原因,自己没能做出实物来。许多设计也仅是理论上的知识。在设计时,由于只对部分模块进行测试或试验,如果要做出实物来,可能还会有许多暂时还没想到的问题会出现。由于本设计中的避障方法太过简单,因此可能时常避不过障碍物,而且效率也不高,实际中的用途不是很大,但是确能把所学的许多知识回顾一遍并使之用到实际中去,使自己对所学的知识印象更加深刻。

本文主要完成了以下工作:

1)简要的介绍目前国内智能小车的概况

2)完成了对智能避障小车系统的电路、软件和部分硬件的设计;

3)完成了对一些模块的测试;

4)给出了系统不足及需要完善的地方。

本设计主要目的就是为了用所学的知识对智能机器人或小车在避障方面进行了探索,并加深自己对所学知识的体会。因此本设计中还有许多不足的地方希望老师、同学提出宝贵意见。

参考文献

[1] 吴建平. 红外反射式传感器在自主式寻迹小车导航中的应用[D]. 中国测试技术[J].

第30 卷第6 期,2004 年11 月: 29-31

[2] 江海蛟. 电动汽车用稀土永磁无刷直流电机的控制与研究[D]. 西北工业大学硕士学位论

文. 2003年11月:17-25

[3] 代庚辛. 基于80C196KC单片机的舞蹈机器人控制系统[D]. 西北工业大学硕士学位论文.

2004年11月:12-39

[4] 李广弟,朱月秀,王秀山. 单片机基础[M]. 北京航空航天大学出版社,2001. 5-18

[5] 求是科学. 单片机典型模块设计实例导航[M]. 人民邮电出版社,2004. 110-162

[6] 中国电子元件 AT89C51单片机应用手册[J]. 2003年14期. 19-21

[7] 孙宝元,杨宝清. 传感器及其应用手册[M]. 机械工业出版社,2004. 242-256

[8] 周继明,江世明. 传感器技术与应用[M]. 机械工业出版社, 2005. 126-130

[9] 吕泉,张红润. 传感器原理及应用[M]. 清华大学出版社,2006. 135-155

[10] 中国电子元件. QRB113与QRB114芯片介绍[J]. 2002年第22期. 39-41

[11] 中国电子元件. ST178传感器的应用技术[J]. 2003年第17期. 16-17

[12] 张红润,张亚凡. 传感技术与实验[M]. 清华大学出版社,2005. 178-186

[13] 中国电子元件. TLC0831 A/D转换芯片应用[J]. 2002年第8期. 12-17

[14] 刘星. 计算机接口技术[M]. 机械工业出版社,2004. 232-256

[15] 张大明. 单片微机控制应用技术[M]. 机械工业出版社,2006. 186-187

[16] 中国电子元件. TLC0832 A/D转换芯片应用[J] 2002年第8期. 18-21

[17] 中国电子元件. LM298芯片功能介绍[J]. 2001年第13期. 11-15

[18] 中国电子元件. TB7267BP芯片在驱动直流小电机中的应用[J]. 2001年第19期. 13-17

[19] 谢宜仁. 单片机实用技术问答[M]. 人民邮电出版社,2003. 396-420

[20] [美]Fred G. Martin. Robotic Explorations A Hands-on Introduction

to Engineering [M]. 电子工业出版社,2004. 106-127


相关内容

  • 基于STM32的可遥控智能跟随小车设计
  • 基于STM32的可遥控智能跟随小车设计 刘 磊 孙晓菲 张 煜 )(西南交通大学电气工程学院 成都 611756 摘 要:针对物品搬运时人类双手仍无法完全解放的现状,设计并实现了一种基于S超声波测距以及比例控TM32.制算法的可遥控智能跟随小车.小车以S有智能跟随和红外遥控2个模式可选.跟随模式下用 ...

  • 基于单片机的智能小车文献综述(超详细)
  • 基于单片机的智能小车文献综述 摘要:随着电子工业的发展,智能技术广泛运用于各种领域,智能小车不仅在工业智能化上得到广泛的应用,而且运用于智能家居中的产品也越来越受到人们的青睐.国外智能车辆的研究历史较长.相比于国外,我国开展智能车辆技术方面的研究起步较晚,在智能车辆技术方面的研究总体上落后于发达国家 ...

  • 基于单片机的智能小车论文检测
  • 论文相似性检测报告 论文相似性检测报告 报告编号:c1864f91-affc-40ca-944f-a1c3010b23a3检测日期:2013年05月19日 检测范围:中国学术期刊数据库(CSPD).中国学位论文全文数据库(CDDB).中国学术会议论文数据库(CCPD).中国学术网页数据库(CSWD) ...

  • 智能小车的研究背景及意义
  • 1.1本课题的研究的背景以及现实意义 目前 ,在企业生产技术不断提高.对自动化技术要求不断加深的环境下,智能车辆以及在智能车辆基础上开发出来的产品已成为自动化物流运输.柔性生产组织等系统的关键设备.世界上许多国家都在积极进行智能车辆的研究和开发设计.移动机器人是机器人学中的一个重要分支,出现于20世 ...

  • 基于蓝牙遥控的智能小车设计
  • 摘要 无线遥控的小车,可以在危险的环境作业,人员搜索,可以在 各类领域中发挥着它特殊的作用,本次设计是选择基于蓝牙遥控的多功能智能小车为对象.控制系统以C51单片机为主控芯片,采用L298N为电机驱动芯片.HC-06蓝牙无线模块.12864液晶显示模块.四路循迹模块等构成外围扩展电路.将自制的控制电 ...

  • 电气自动化设计论文题目大全
  • 机电一体化 毕 业 设 计 论 文 题 目 第1-100个电气自动化毕业设计论文题目 1. 智能压力传感器系统设计 2. 智能定时器 3. 液位控制系统设计 4. 液晶控制模块的制作 5. 嵌入式激光打标机运动控制卡软件系统设计 6. 嵌入式激光打标机运动控制卡硬件系统设计 7. 基于单片机控制的数 ...

  • 电气自动化毕业设计论文题目
  • 电 气 自 动 化 毕 业 设 计 论 文 题 目 第1-100个电气自动化毕业设计论文题目 1. 智能压力传感器系统设计 2. 智能定时器 3. 液位控制系统设计 4. 液晶控制模块的制作 5. 嵌入式激光打标机运动控制卡软件系统设计 6. 嵌入式激光打标机运动控制卡硬件系统设计 7. 基于单片机 ...

  • 自动化毕业设计论文题目
  • 自 动 化 毕 业 设 计 论 文 题 目 1. 智能压力传感器系统设计 2. 智能定时器 3. 液位控制系统设计 4. 液晶控制模块的制作 5. 嵌入式激光打标机运动控制卡软件系统设计 6. 嵌入式激光打标机运动控制卡硬件系统设计 7. 基于单片机控制的数字气压计的设计与实现 8. 基于MSC12 ...

  • 基于单片机的智能循迹小车(文献综述)(4)
  • 基于MCS-51单片机智能小车控制器设计与实现 电子技术.计算机技术和制造技术的飞速发展,数码相机.DVD.洗衣机.汽车等消费类产品越来越呈现光机电一体化.智能化.小型化等趋势.各种智能化小车在市场玩具中也占一个很大的比例.根据美国玩具协会的调查统计,近年来全球玩具销量增幅与全球平均GDP增幅大致相 ...

  • 单片机毕业设计题目
  • 1. 智能压力传感器系统设计 2. 智能定时器 3. 液位控制系统设计 4. 液晶控制模块的制作 5. 嵌入式激光打标机运动控制卡软件系统设计 6. 嵌入式激光打标机运动控制卡硬件系统设计 7. 基于单片机控制的数字气压计的设计与实现 8. 基于MSC1211的温度智能温度传感器 9. 机器视觉系统 ...