智能报警越障小车

目 录

摘要„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2 关键词„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2 Abstract „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2 Key words „„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2 引言„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2 1 设计任务和要求„„„„„„„„„„„„„„„„„„„„„„„„„„„„„3

1.1 设计任务„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„3

1.2 设计要求„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„3 2 系统方案选择与论证„„„„„„„„„„„„„„„„„„„„„„„„„„„3

2.1系统总体方案与论证„„„„„„„„„„„„„„„„„„„„„„„„„„3

2.2各模块方案选择与论证„„„„„„„„„„„„„„„„„„„„„„„„„4

2.2.1 车体的选择„„„„„„„„„„„„„„„„„„„„„„„„„„„„4

2.2.2 控制器模块(单片机的选择)„„„„„„„„„„„„„„„„„„„„„4

2.2.3 探测障碍模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„5

2.2.4 电机模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„5

2.2.5 电机驱动模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„5

2.2.6 语音报警模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„5

2.2.7 越障模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„„6

2.2.8电源模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„6

2.2.9机械手模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„„6

2.2.10显示模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„6

2.3 智能报警越障机器人最终方案„„„„„„„„„„„„„„„„„„„„„„6 3 系统硬件设计„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„7

3.1 系统的总体及单元电路设计„„„„„„„„„„„„„„„„„„„„„7

3.2 单元电路的功能以及工作原理的分析„„„„„„„„„„„„„„„„7

3.2.1微控制器模块电路„„„„„„„„„„„„„„„„„„„„„„„„„„7

3.2.2探测障碍模块电路„„„„„„„„„„„„„„„„„„„„„„„„„„7

3.2.3电机驱动模块电路„„„„„„„„„„„„„„„„„„„„„„„„„„8

3.2.4显示模块电路„„„„„„„„„„„„„„„„„„„„„„„„„„„„8

3.2.5电源模块电路„„„„„„„„„„„„„„„„„„„„„„„„„„„„9

3.2.6 舵机控制越障模块电路„„„„„„„„„„„„„„„„„„„„„„„9

3.2.7 语音报警模块电路„„„„„„„„„„„„„„„„„„„„„„„„„10 4 系统软件系统的设计与实现„„„„„„„„„„„„„„„„„„„„„„„10 5 系统调试„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„11

5.1硬件调试„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„11

5.2软件调试„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„11

5.3调试结果„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„11

5.3.1 电路的测试方法„„„„„„„„„„„„„„„„„„„„„„„„„„11

5.3.2 测试仪器及设备„„„„„„„„„„„„„„„„„„„„„„„„„„12

5.3.3 舵机测试„„„„„„„„„„„„„„„„„„„„„„„„„„„„„12

5.3.4整车测试„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„12 6总结„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„12 参考文献:„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„12 附录A 智能报警越障机器人实物图„„„„„„„„„„„„„„„„„„„„„13 附录B 系统的整体程序„„„„„„„„„„„„„„„„„„„„„„„„„„14 致谢„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„19

智能报警越障机器人的设计

摘要:以ATMEL 公司的89s52单片机为控制核心,实现机器人的智能越障及语音报警,包括对障碍物的检测,通过ISD4004语音芯片报警,并自主爬越障碍。在对障碍物的检测中,采用红外传感器发现障碍;在语音报警提示中,采用ISD4004已经录制好的语音进行播放提示;在爬越障碍过程中,通过舵机控制机械手将小车前部抬起一定的角度来实施爬越障碍。通过传感器及各种控制装置和ISD4004语音芯片进行报警提示及12864液晶显示,该装置达到了环境、机器人及与人之间的信息交换。机器人结构简单、成本低, 可以广泛应用在跨越路肩或宽台阶的各种场合。

关键词:越障机器人;89s52芯片;ISD4004;舵机

Intelligent warning obstacle crossing robot's design

Electronic information science and technology Xiong Wei

Tutor Zhang Guanfen

Abstract: Centering on the 89s52 microcontroller of A TMEL Company realize the robot’s intelligent obstacle-navigation and voice alarm, including obstacle detection and independently climbing over obstacles through the ISD4004 voice chip. In the obstacles detection, obstacles will be found by infrared sensor; In voice-prompting for warning and alarm, audio tone will be broadcasted through voice recorded by ISD4004; In the process of climbing over obstacles, the front of trolley will be lifted up to certain angle to climb over obstacles through steering engine manipulator. Through the transducer and various control devices and ISD4004 speech chips for alarm prompt and 12864 LCD display, this device reaches information exchange of environment, robot and human. Robot owns simple structure, low cost and can be widely used in road shoulder or crossing the wide steps on various occasions.

Key words:Robot obstacle-navigation; 89s52 chip; ISD4004; steering engine

引言:自从20世纪60年代初人类创造了第一台工业机器人以后,机器人就显示出它极大的生命力,在短短40多年的时间中,机器人技术得到了迅速的发展,工业机器人已在工业发达国家的生产中得到了广泛的应用。越障报警机器人具有防爆、越障、涉水、自定位、采集识别和传输各种数据的功能,能进入事故现场采集影像、数据信息、对盲人进行引导,为及时抢险救人提供重要依据和参考。

1 设计任务和要求

1.1 设计任务

设计制作一台智能车,该小车能在自由行走过程中,发现障碍物的同时进行语音报警提示前方有障碍,翻越障碍物后提示越过障碍物。

1.2 设计要求

(1)小车启动出发,在平坦的陆地上能以较快的速度行驶。

(2)如果小车前方10cm 有障碍物,红外开关能够及时探测到障碍物。

(3)当小车发现障碍物的时候,语音系统能够及时发出警报,以提示操作人员做出相应的应急处理。

(4)当无其他路径可寻时,而必须跨越障碍物时,小车前部有机械手协助小车翻越障碍物。

(5)小车有强劲的动力装置,能使之翻越至少25cm 高的障碍物。

(6)当翻越障碍物后,语音系统能够及时做出提示,使小车全速前进。

2 系统方案选择与论证

2.1 系统总体方案与论证

由题目分析可得:本设计需要一个控制器模块、探测障碍模块、语音报警模块、爬越障碍模块、液晶显示模块、电源模块、电机驱动模块等几部分组成的系统来实现题目

图1系统整体设计框图

为实现本系统的功能,下面分别对各部分的设计方案进行具体的分析论证。

在越障环节中,本越障车体高为10cm (车底部离地高为2cm ),要想爬越高为20cm 的障碍,当小车遇到障碍物之前必须借助外力把车前部抬起,然后借助小车后轮强大的推动力让小车爬上障碍物,进而使之翻越障碍物。因此只需要将小车前部进行改造,装上一个机械手臂就可以达到要求。

在语音报警环节中,通过ISD4004语音芯片播放已经录制好的提示。ISD4004语音录放原理框图如图2图2 ISD4004语音控制原理框图

2.2 各模块方案选择与论证

2.2.1 车体的选择

移动越障机器人所处环境大多为复杂的非结构化环境,因此需要机器人具备高机动性、强大的环境感知能力和快速反应能力。目前主要的越障方式有:轮式、腿式、履带式以及复合方式。其中轮式的效率最高,但适应能力最差;而腿式的适应能力最强,但效率最差;履带式有着良好的爬坡性能和很强的越障能力,适应能力也较强,效率也较高;复合方式则需要较强的机械加工能力。

因此我们采用改装市面的坦克式车模底盘和铝合金外壳。车模左右安装直流电机且带有电感以防止启动时电流过大烧坏电机。坦克式底盘车身稳定,便于跨越各种障碍,机动性强,摩擦大,车身美观,整体协调。

2.2.2 控制器模块(单片机的选择)

方案1:采用凌阳公司的16位单片机,它是16位控制器,具有体积小、驱动能力高、集成度高、易扩展、可靠性高、功耗低、结构简单、中断处理能力强等特点。处理速度高,尤其适用于语音处理和识别等领域。但是当凌阳单片机应用语音处理和辨识时,由于其占用的CPU 资源较多而使得凌阳单片机同时处理其它任务的速度和能力降低。本系统主要是进行寻迹越障运行的检测以及电机的控制。如果单纯的使用凌阳单片机,在语音播报的同时小车的控制容易出现不稳定的情况。从系统的稳定性和编程的简洁性考虑,我们放弃了单纯使用凌阳单片机而考虑其它的方案。

方案2:采用可编程逻辑期间CPLD 作为控制器。CPLD 可以实现各种复杂的逻辑功能、规模大、密度高、体积小、稳定性高、IO 资源丰富、易于进行功能扩展。采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模控制系统的控制核心。但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高。且从使用及经济的角度考虑我们放弃了此方案。

方案3:采用Atmel 公司的8051单片机作为主控制器。AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完

全兼容。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash ,使AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能: 8k 字节Flash ,256字节RAM ,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM 、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

从方便使用的角度考虑,我们选择了方案3。

2.2.3 探测障碍模块

方案1:用超声波传感器进行探测障碍。超声波传感器的原理是:超声波由压电陶瓷超声波传感器发出后,遇到障碍物便反射回来,再被超声波传感器接收。超声波传感器在避障的设计中被广泛应用。但是超声波传感器需要40KHz 的方波信号来工作,对工作频率要求较高,偏差在1%内,而且用模拟电路来做方波发生器比较难以实现。购买成品模块的成本较高。因此我们考虑其它的方案。

方案2:采用光电开关传感器进行探测障碍。光电开关的工作原理是根据光线发射头发出的光束,被物体反射,其接收电路据此做出判断反应,物体对红外光由同步回路选通而检测物体的有无。当有光线反射回来时,输出低电平。当没有光线反射回来时,输出高电平。光电开关操作简单,使用方便,检测距离能够达到要求。光电开关的实物请见附录1图2

在比较后我们选择了方案2。

2.2.4 电机模块

本系统为智能电动车,对于电动车来说,其驱动轮的驱动电机的选择就显得十分重要。由于本实验要实现对路径的准确定位和精确测量,我们综合考虑了一下两种方案。

方案1:采用步进电机作为该系统的驱动电机。由于其转过的角度可以精确的定位,可以实现小车前进路程和位置的精确定位。虽然采用步进电机有诸多优点,步进电机的

输出力矩较低,随转速的升高而下降,且在较高转速时会急剧下降,其转速较低,不适用于小车等有一定速度要求的系统。经综合比较考虑,我们放弃了此方案。

方案2:采用直流电机作为系统的驱动电机。直流电机运转平稳,精度有一定得保证。直流电机控制的精确度虽然没有步进电机那样高,但完全可以满足本题目的要求。

能够较好的满足系统的要求,因此我们选择了此方案。

2.2.5 电机驱动模块

方案1:采用继电器对电机的开关进行控制,可以完成电机的正转,反转,调速,但继电器响应时间慢使小车运动灵敏度降低,增加了避障的难度,而且机械架构易磨损,可靠性不高,适用于中小功率的电机驱动并不经济。

方案2:采用专用芯片L298N 作为电机驱动芯片。一片L298N 可以分别控制两个直流电机,而且还带有控制使能端,操作方便,性能稳定。

综合以上考虑我们选择方案2的采专用芯片L298N 作为电机驱动芯片。

2.2.6 语音报警模块

通过网上收集语音芯片的资料,我们采用ISD4004芯片作为此模块的核心芯片。ISD4004语音芯片是由美国ISD 公司推出不久的新产品,与普通的录音/重放芯片相比,ISD4004具有如下特点:首先是记录声音没有段长度的限制,并且声音记录不需要A/D转换和压缩。其次,快速闪存作为存储介质,无需电源可保存数据长达100年,重复记录10000次以上。此外,ISD4004具有记录时间长(可达16分钟,本文采用的为8分钟的ISD4004语音芯片)的优点。最后,ISD4004开发应用具有所需外围电路简单的优点。

ISD4004语音电路的特点:

1 单片8至16分钟语音录放

2 内置微控制器串行通信接口

3 3V 单电源工作

4 多段信息处理

5 工作电流25-30mA ,维持电流1uA

6 不耗电信息保存100年(典型值)

7 高质量、自然的语音还原技术

8 10万次录音周期(典型值)

综合以上考虑我们选择ISD4004语音芯片进行报警。

2.2.7 越障模块

方案1:采用步进电机控制越障手臂。步进电机可以精确地控制角度和距离。步进电机的输出力矩在较高转速时会急剧下降,其转速较低,不适用于前端机械手电机等有一定速度要求的系统。

方案2:采用舵机控制越障手臂。舵机是一种位置伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。舵机因体积小、扭矩大、控制方便而被广泛应用在与机器人的头、肩、肘、腕和指等关节结构中。舵机常采用PWM 波驱动。

综合以上考虑我们选择舵机控制。

2.2.8电源模块

方案1:采用普通电池,经7805稳压管对单片机、直流电机等供电,但对直流电机影响较大,电机转速变化大且不稳定,不利于该智能辅助手工作,因此我们放弃了此方案。

方案2:采用蓄电池为直流电机供电,将12V 电压降压、稳压后给单片机系统和其它芯片供电。蓄电池具有较强的电流驱动能力以及稳定的电压输出性能。但是蓄电池的体积过于庞大,在该智能辅助手上使用极为不方便,因此我们放弃此方案。

方案3:采用3节可充电式镍氢电池组成电池组供电,将12V 电压经7805电压转换为单片机、直流电机、舵机等额定电压为5V 器件供电,在将5V 电压经过LM317电压转换为3V 为语音芯片ISD4004供电。单片机和传感器工作稳定,直流电机正常工作平稳行进,且电池体积较小,重量较轻,能够满足系统要求。

上述论证可知,电池组可保持系统稳定,我们选取了方案3。

2.2.9机械手模块

由于市面上没有合适的机械手装置供我们改装。我们决定使用铝合金,三合板等自己加工制作。而且这样可以任意发挥, 且机械手的长短可以调至,有很强的创新性。

2.2.10显示模块

方案1:采用LED 数码管显示。LED 显示具有硬件电路结构简单、调试方便、软件实现相对容易等优点,但是数码管只能显示有限的数字和符号,不能再显示丰富的内容,因此我们放弃了这个方案。

方案2:采用12864液晶屏显示。液晶屏功耗低,显示内容丰富清晰,显示容量大,显示速度块,使用方便,广泛应用 。

综合上述:采用方案2。

2.3 智能报警越障机器人最终方案

经过反复的探讨和论证我们最终确定智能报警越障机器人的如下最终方案: 车体的选择:以履带式小车为车体

控制器模块:以ATMEL 公司的8051单片机为控制核心

探测障碍模块:采用光电开关传感器进行探测障碍

电机模块:以直流电机为驱动电机

电机驱动模块:采用专用芯片L298N 作为电机驱动芯片

语音报警模块:采用语音专用芯片ISD4004作为报警芯片

越障模块:采用舵机控制机械手进行爬越障碍

电源模块:采用12V 稳压电池组供电,经稳压管对系统进行供电

机械手模块:使用铝合金、三合板自己加工制作

显示模块:采用12864液晶显示

3 系统硬件设计

3.1 系统的总体及单元电路设计

本系统实现越障及语音报警功能,小车车体高10cm ,车底部离地面高2cm ,要翻越20cm 高的障碍物,在小车前部需要安装一个机械手臂,当小车遇到障碍物的时候,手臂把小车前部抬起,然后通过小车后轮强大的推动力,使之翻越障碍物,机械手臂采用舵机控制,当前方无障碍物行走的时候,舵机角度摆到1800前进,当前方遇到障碍物的时候,舵机角度摆到450, 开始实行越障。在语音报警方面我们采用语音芯片ISD4004,ISD4004系列工作电压3V, 单片录放时间8至16分钟, 音质好, 适用于移动电话及其他便携式电子产品中。芯片采用CMOS 技术, 内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮陈列。芯片设计是基于所有操作必须由微控制器控制, 操作命令可通过串行通信接口(SPI或Microwire) 送入。芯片采用多电平直接模拟量存储技术, 每个采样值直接存贮在片内闪烁存贮器中, 因此能够非常真实、自然地再现语音、音乐、音调和效果声, 避免了一般固体录音电路因量化和压缩造成的量化噪声和" 金属声" 。采样频率可为 4.0,5.3,6.4,8.0kHz,频率越低, 录放时间越长, 而音质则有所下降, 片内信息存于闪烁存贮器中, 可在断电情况下保存100年(典型值), 反复录音10万次。综上所述系统的设计方案为:采用89s52为核心,越障环节采用舵机控制,

语音报警环节采用语音芯片ISD4004,探测障碍部分采用红外开关,当小车前进红外开关发现障碍物时,ISD4004报警提示“前方有障碍”,舵机开始实施越障碍。

3.2 单元电路的功能以及工作原理的分析

3.2.1微控制器模块电路

由ATMEL 公司的89s52组成的控制模块电路简单,其最小系统如图3所示。

图3 单片机最小系统

3.2.2探测障碍模块电路

采用光电开关传感器进行壁障。光电开关根据光线发射头发出的光束,被障碍物反射,其接收电路据此做出判断反应,物体对红外光由同步回路选通而检测物体的有无。当有光线反射回来时,输出低电平。当没有光线反射回来时,输出高电平。高低电平的变化值传给单片机从而控制直流电机的运动状态。

我们在小车前端装备一个红外光电传感器,红外光电传感器的接线图和实物图如图4和图5所示。

图4红外光电传感器的接线图 图5红外光电传感器的实物图

3.2.3电机驱动模块电路

使用直流电机,与单片机建立连接需要中间有驱动电路,我们采用专用芯片L298N 作为电机驱动芯片。L298N 是一个具有很高电压大电流的全桥驱动芯片。它相应频率高,一片L298N 可以分别控制两个直流电机。而且还带有控制使能端。操作方便,稳定性好。L298N 驱动直流电机,它靠两个引脚控制一个电机的运动。L298N 的5、7、10、12四个

引脚接到单片机上,通过单片机输出高低电平就可以实现两个直流电机的正转和反转。电机驱动电路如图6所示。

3.2.4显示模块电路

采用的是带中文字库的12864液晶显示屏。它是一种具有4位/8位并行、2线或3线串行多种接口方式,其显示分辨率为128×64, 内置8192个16*16点汉字,和128个16*8点ASCII 字符集。该模块接口方式灵活,操作指令简单、方便,可以显示8×4行16×16点阵的汉字,也可完成图形显示,可构成全中文人机交互图形界面。低电压低功耗也是其又一显著特点。其线路连接图如图7所示。

图7 12864液晶接线示意图

3.2.5电源模块电路

采用3节手机电池组成电池组, 分别经LM7805和LM317稳压后给直流电机和单片机、光电传感器、语音芯片ISD4004等设备供电。其电路图如图8和图9所示。

图8 7805稳压电路

图9 LM317稳压电路

3.2.6 舵机控制越障模块电路

采用舵机进行爬越障碍。标准的舵机有3条导线,分别是:电源线、地线、控制线。电源线和地线用于提供舵机内部的直流电机和控制线路所需的能源.电压通常介于4~6V ,一般取5V 。注意,给舵机供电电源应能提供足够的功率。控制线的输入是一个宽度可调的周期性方波脉冲信号,方波脉冲信号的周期为20 ms(即频率为50 Hz)。当方波的脉冲宽度改变时,舵机转轴的角度发生改变,角度变化与脉冲宽度的变化成正比。

我们在小车前端装备一个舵机,通过舵机控制机械手臂摆动角度进行越障,舵机的

接线图和实物图如图

10和图11所示。

图10 舵机的接线图 图11 舵机的实物图

3.2.7 语音报警模块电路

语音报警模块我们采用语音芯片ISD4004为控制核心,之前预先录好声音,等待车体前进时,传感器触发语音报警控制。ISD4004电路如图12所示。

图12 ISD4004报警电路

4 系统软件系统的设计与实现

系统软件设计采用模块化设计方法。整个程序由初始化模块、探测障碍模块、语音报警模块等各种功能模块组成。上电后,进入系统初始化模块,系统软件开始运行。在执行过程中,根据选择分别调用各个功能模块完成对应的功能。程序流程图如图13所示。

图13 系统整体程序流程图

5 系统调试

5.1硬件调试

第一步,通电观察。将电路通电观察有无异常现象,例如有无器件冒烟现象,有无异常气味,手摸集成电路外封装,是否发烫等。如果出现异常现象,应立即关断电源,待排除故障后再通电。

第二步,静态调试。将信号输入端加固定的电平信号后进行的直流测试,可用万用表测出电路中各点的电位,通过和理论估算值比较,结合电路原理的分析,判断电路直流工作状态是否正常,及时发现电路中已损坏或处于临界工作状态的元器件。通过更换器件或调整电路参数,使电路直流工作状态符合设计要求。

第三步,动态调试。动态调试是在静态调试的基础上进行的,在电路的输入端加入合适的信号,按信号的流向,用示波器顺序检测各测试点的输出信号,若发现不正常现象,应分析其原因,并排除故障,再进行调试,直到满足要求。 5.2软件调试

第一步,下载程序实时调试。将程序下载到单片机中观察小车在运行过程中出现的问题。

第二部,分部调试。对小车在不同的路段时分别写程序调试。 第三部,总体调试。在小车分部调试成功后,将各部分程序结合起来进行总体调试。 第四步,具体问题分析。

(1)尽量避免使用延时函数控制小车行进。由于电机转速受电源电压的影响,在小车行进当中会因电池的电量不同而出现不同的结果。所以应尽量使用传感器检测。

(2)在关键的位置设置标记位,便于调试。

(3)结合实际问题调试,结合在小车实际运行时出现的问题具体现象具体分析在整体方案上进行细微处理,以求小车行进的精确。 5.3调试结果

5.3.1 电路的测试方法

为了保证实际制作出来的机器人系统能够稳定可靠地运行,我们对各个功能模块和程序分别运用仿真软件multisium 和protus 进行了仿真测试。

但实际制作出的电路和理论又会有一定的差距,为此我们还使用实验仪器对各个功能模块进行了测量。包括各个功能模块的工作电压和电流,各种传感器的灵敏度等。各种传感器的灵敏度测量数据如表1所示。

表1红外传感器灵敏度测量

调试测量过程中用到的仪器设备如表2所示。

表2测量仪器及设备表

机器人的机械手靠舵机转动的角度来控制。电机状态对应表如表3所示。

通过不断调试和改进,我们成功完成了对小车障碍物距离探测、越障高度、语音报警以及成功性的测量。测量结果如表4所示。

6总结

这次毕业设计过程中综合了所学的数字电路,模拟电路,单片机,C 语言对单片机编程,对大学所学的知识起了一个很好的巩固和总结,让我更好地了解了C 语言编程的技巧,更加熟练地应用Protel 99换电路图,同时也更更深层次地应用了许多硬件电路。这此过程中认识到自己的知识面太狭小,也许是自己制作的实品太少了,对一些芯片的了解甚少,今后在工作中一定要补充这块。同时也认识到理论和实践的差别,通过实际制作更能了解到一些模块电路和芯片的功能,特别是检查电路时,让自己对电路有更深的了解。 参考文献:

[1] 张华林.电子设计竞赛实训教程[M].1版. 北京:北京航空航天大学出版社,2007:152-164. [2] 全国大学生电子设计竞赛组委会. 第六届全国大学生电子设计竞赛获奖作品选编(2005)[M].1

版. 北京:北京理工大学出版社,2007:106-117.

[3] 黄智伟. 全国大学生电子设计竞赛训练教程[M].2版. 北京:北京航空航天大学出版社,2007:

89-105.

[4] 郭天祥.51单片机C 语言教程[M].1版. 北京:电子工业出版社,2009:450-457;418-423

[5] 孙肖子, 张企民. 模拟电子技术基础[M].1版. 西安:西安电子科技大学出版社,2001:33-39. [6] 余孟尝. 数字电子技术基础简明教程[M].2版. 北京:高等教育出版社,1999:196-201.

[7] 张永瑞, 刘振起, 杨林耀, 顾玉昆. 电子测量技术基础[M].1版. 西安:西安电子科技大学出版社,

1994:107-110.

[8] 谭浩强, 张基温.C 语言程序设计教程[M].3版. 北京:高等教育出版社,2006:85-88.

[9] 黄智伟. 全国大学生电子设计竞赛训练教程[M].2版. 北京:北京航空航天大学出版社,2007:

89-105.

附录A 智能报警越障机器人实物图

图1机器人小车侧面图

图2机器人小车正面图

附录B 系统的整体程序

#include #include

#define uint unsigned int #define uchar unsigned char

#define jd2 10 //10 jd2为180度 #define jd1 4 //4 jd1为45度 sbit cs= P1^0; sbit sclk=P1^1; sbit mosi=P1^2; sbit miso=P1^3; sbit led0=P1^4; sbit rac=P3^3; sbit INT=P3^2; sbit key1=P3^5; sbit key2=P3^1; uchar count=0,jd;

void delaydj(uint z)

{

uint x,y;

for(x=z;x>0;x--) for(y=110;y>0;y--);

}

void delay(uint i) //延时程序 { while(i--); }

void stopmode() //停止 { uchar m,i,j; cs=1; sclk=0; cs=0; m=0x30; for(i=0;i

m=_cror_(m,1); j=m

cs=1; }

void powerdown() //下电 {

uchar m,i,j; cs=1; sclk=0; cs=0; m=0x10; for(i=0;i

m=_cror_(m,1); j=m

void powerup() //上电 { uchar m,i,j; cs=1; sclk=0; cs=0; m=0x20; for(i=0;i

m=_cror_(m,1); j=m

void record4004(uint address) {

uchar i,m,j;

uint datasoute=0; powerup();

delay(5118);//上电延时 //录音地址 0--2400

delay(5118);//上电延时 delay(5118);//上电延时 cs=1; sclk=0; m=0xa0; cs=0;

for(i=0;i

address=_iror_(address,1); datasoute=address

for(i=0;i

m=_cror_(m,1); j=m

cs=1; sclk=0; m=0xb0; cs=0;

for(i=0;i

m=_cror_(m,1); j=m

cs=1; P0=0xff;

datasoute=0;

while(INT==1) //存储地址换行标志 {

if(rac) {

delay(20000); datasoute++; }

void audioout(uint address) //放音程序 {

uchar i,m,j; uint datasoute; powerup(); cs=1; sclk=0; cs=0; m=0xe0;

for(i=0;i

address=_iror_(address,1); datasoute=address

for(i=0;i

m=_cror_(m,1); j=m

cs=1; sclk=0; m=0xf0; cs=0;

for(i=0;i

m=_cror_(m,1); j=m

cs=1; P0=0xff;

while(INT==1)

}

void main() {

TMOD=0x01;

TH0=(65535-250)/256; TL0=(65535-250)%256; ET0=1; TR0=1; EA=1;

while(1) {

if(key1==0) {

jd=jd2; }

if(key1==1) {

jd=jd1; audioout(0); } } }

void time0() interrupt 1 {

TH0=(65535-250)/256; TL0=(65535-250)%256; count++;

if(count

led0=1; } else {

led0=0; }

if(count==40) count=0;

在这里非常的感谢系领导,老师为我们提供了优越的实验学习环境,让我们

有机会为兴趣和理想不断拼搏,非常的感谢张老师一直以来对我的细心指导,关心和鼓励。四年时光转眼就这样过去了,我在科技楼实验室学习了两年,在这两年里我学到了更多有用的知识,也学会了坚持,相信这些对我的一生来说都是非常宝贵的。再次的感谢各位老师。


© 2024 实用范文网 | 联系我们: webmaster# 6400.net.cn