基于PIC16F877的红外测距系统

来源:本站
导读:目前正在解读《基于PIC16F877的红外测距系统》的相关信息,《基于PIC16F877的红外测距系统》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《基于PIC16F877的红外测距系统》的详细说明。
简介:介绍基于PIC单片机的越障机器人红外测距系统,给出了系统的硬件结构,电路设计和软件设计。试验结果表明,设计方案可行,系统工作稳定可靠。

越障机器人在行进过程中需要不断地获取关于前方障碍的信息,从而对机器人进行有效地控制。由于机器人体积小,对传感器要求精度高,因此采用单片机进行控制。PIC16F877内有8通道、具有10位精度的A/D转换模块,我们利用基于PIC16F877的红外测距系统种单片机设计了一个红外测距系统。

1红外传感器的原理

传感器的红外发光管发出红外光,光敏接收管接收前方物体反射光;接收管接收的光强随反射物体的距离变化,据此判断前方基于PIC16F877的红外测距系统否有障碍物并根据接收信号强弱判断物体的距离。

2PIC16F877简介

PIC16F877单片机是由美基于PIC16F877的红外测距系统Microchip公司生产的8位单片微机,具有独特的RISC(精简指令集)结构,数据总线和指令总线分离的哈佛总线结构,使指令只有单字基于PIC16F877的红外测距系统的特性,且允许指令码的位数可多于8位的数据位数,这与传统的采用CISC结构的8位单片机相比,可以达到2∶1的代码压缩,速度提高4倍。

P1C16F877芯片上集成有8K的Flash可重复编程存储器,368byte的数据存储器,256byte的EEPROM数据存储器,3个定时/计数器,2个集捕捉、比较、脉宽调制3项功能于一身的CCP模块,同步串行通信端口,10位多通道A/D转换器,以及时钟、上电复位、看门狗等。芯片引脚共40条。

3基于PIC16F877的红外测距系统

3.1硬件电路设计

首先利用红外发光管TLN205发射红外光,红外光在遇到前面的障碍物反射,由红外接收管TPS708接收,此时TPS708会产生一个与光强相对应的电流。电流经由LM358两级放大后,在输出端可以得到一个0~3V的模拟电压,作为PIC16F877单片机RA0端口的模拟输入量。单片机在完成初始化和端口选择后,即开始进行A/D转换,重复等待与检查转换完成标志值是否已为零,最后将转换结果通过译码器74LS138在LED上显示出来。

红外光发射及接收电路如图1所示,Vin为控制输入信号(采用高低电平输入),以控制发光管的开关。单片机硬件连接图电路如图2所示。

基于PIC16F877的红外测距系统

基于PIC16F877的红外测距系统

基于PIC16F877的红外测距系统

3.2软件设计

主程序和A/D转换子程序流程图如图3和图4所示。

基于PIC16F877的红外测距系统

基于PIC16F877的红外测距系统

3.2.1设定输入/输出引脚

PIC16F877单片机D口的8个端口作为数据输出使用,同时将A口的RA0引脚设定为模拟电压输入。控制D口输入/输出功能的TRISD寄存器(地址为88h)全设为0;A口输入输出功能的TRISA寄存器(地址为85h)〈0〉位为1。PIC指令如下所示:

bankel TRISD;选择寄存器所在的数据存储体

clrf TRISD;设定D口为数据输出口

bsf TRISA,0;设定RA0位输入口

3.2.2A/D转换

PIC16F877单片机A/D转换的初始设定存放在A/DCON1寄存器(地址为9fH)与A/DCON0寄存器(地址为1fH)中。A/D转换初始设定与选择模拟输入端的程序如下:

基于PIC16F877的红外测距系统

A/D转换启动的控制信号是A/DCON0寄存器的〈2〉位,设为1表示启动转换,设为0表示不要转换。A/D转换的结果放在A/DRESH及A/DRESL寄存器,程序如下:

基于PIC16F877的红外测距系统

4试验结论

按上述设计,我们制作了实际的红外测距系统,并进行了测量实验。图5为实验曲线,其中虚线代表拟合后的二次曲线,曲线拟合采用matlab提供的拟合函数polyfit。从图中可以看出,所设计的红外传感器能够实现0~25cm之间的距离测量,且具有较高的精度,完全能够满足控制要求。基于PIC16F877的红外测距系统

基于PIC16F877的红外测距系统考文献

[1]何信龙,李雪银.PIC16F87X快速上手[M].清华大学出版社,2002.

提醒:《基于PIC16F877的红外测距系统》最后刷新时间 2024-03-14 01:16:50,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《基于PIC16F877的红外测距系统》该内容的真实性请自行鉴别。