课程设计(论文)基于单片机的超声波测距仪.doc
《课程设计(论文)基于单片机的超声波测距仪.doc》由会员分享,可在线阅读,更多相关《课程设计(论文)基于单片机的超声波测距仪.doc(20页珍藏版)》请在三一办公上搜索。
1、目 录第一章 绪论11.1 嵌入式系统简介11.2 研究背景及意义1第二章 超声波测距仪简介. 2第三章 原理图设计.3第四章 PCB设计.6 第五章 程序设计及作品展示. .75.1 程序设计框图75.2 作品展示85.3 源代码9总结.19第一章 绪论1.1 嵌入式系统简介随着电子技术的快速发展,特别是大规模集成电路的产生而出现的微型机,使现代科学研究得到了质的飞跃,而嵌入式微控制器技术的出现则给现代工业控制领域带来了一次新的技术革命。由嵌入式微控制器组成的系统,最明显的优势就是可以嵌入到任何微型或小型仪器、设备中。 嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适
2、应应用系统,对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统1。嵌入式系统是将先进的计算机技术、半导体技术、电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。 嵌入式系统是以嵌入式计算机为技术核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统2。和通用计算机不同,嵌入式系统是针对具体应用的专用系统,目的就是要把一切变得更简单、更方便、更普遍、更适用;它的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能。嵌
3、入式系统通常由嵌入式处理器、外围设备、嵌入式操作系统和应用软件等极大部分组成1.2 研究背景及意义超声波是一种在弹性介质中的机械振荡,它是由与介质相接触的振所引起的,其频率在20kHz以上,是人耳听不到的一种声波,传播速度仅为光波的百万分之一,纵向分辨率较高。近年来,随着国民经济科学技术及工业自动化的发展,特别是移动机器人的自动避障导航系统和视觉识别系统的需要,出现了许多识别方法和原理根据其信息载体的不同可归纳为光学方法和超声波方法,但光学方法在某些领域有其局限性,相比之下,超声波方法在这些方面具有突出的优点:愁啊黄色光波对色彩光照度不敏感,可用于识别透明及漫反射差的物体(如玻璃抛光体);对外
4、界光线和电磁场不敏感,可用于黑暗有灰尘或烟雾电磁干扰性强等有毒的恶劣环境中;超声波传感器结构简单体积小费用低信息处理简单可靠,易于小型化和集成化。因此,超声检测法已越来越引起人们的重视,被广泛应用在液位测量机械手控制车辆自动导航物体识别等方面特别是在空气测距中,由于空气中波速较慢,其回波信号中包含的沿传播方向上的结构信息很容易检测出来,具有很高的分辨力,因此其准确度也较其他方法高。 第二章 超声波测距仪简介在日常生产生活中,很多场合如汽车倒车、机器人避障、工业测井、水库液位测量等需要自动进行非接触测距。而超声波是指频率大于20kHz的在弹性介质中产生的机械震荡波,其具有指向性强、能量消耗缓慢、
5、传播距离相对较远等特点,因此常被用于非接触测距。由于超声波对光线、色彩和电磁场不敏感,因此超声波测距对环境有较好的适应能力,此外超声波测量在实时、精度、价格也能得到很好地折衷。发展方向:由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在移动机器人研制上也得到了广泛的应用。超声波测距原理:超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中遇到障碍物就立即返回来,超声波接收器收到
6、反射波就立即停止计时。超声波在空气中的传播速度为340m/s,根据计时器记录的时间,就可以计算出发射点距离障碍物的距离(s),即:s=340*t/2。这就是所谓的时间差测距法。超声波测距的原理是利用超声波在空气中的传播速度为已知,测量声波在发射后遇到障碍物反射回来的时间,根据发射和接收的时间差计算出发射点到障碍物的实际距离。由此可见,超声波测距原理与雷达原理是一样的。由于超声波易于定向发射、方向性好、强度易于控制,且与被测物体不需要直接接触的优点,是作为液体高度测量的理想手段。 Figure1 测量原理第三章 原理图设计本设计采用 Protel 99SE进行原理图设计,设计的原理图共一张,如下
7、:电源模块:采用USB供电的方式,对整个电路进行供电。数码管显示电路:采用四位一体共阳数码管,实时显示距离,单位是厘米。数码管驱动电路:驱动数码管实时显示测到的距离。单片机:采用STC89C52单片机作为主控芯片,HC-SR04超声波模块采集数据,采集到的数据经处理器STC89C52处理之后通过数码管显示出来。STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52
8、为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 Figure2 STC89C52引脚图 Figure3 STC89C52实物 超声波测距模块:在这个板子中采用的是HC-SR04超声波模块。1:这个模块性能稳定,测度距离精确。但和国外的SRF05,SRF02等超声波测距模块还是有一定的差距的。2:主要的技术参数: 1)使用电压 : DC 5V 2)静态电流 : 小于2mA 3) 电平输出 : 高5V 4)感应角度 : 不大于15度 5)探测距离 : 2cm-450cm 6)高精度 : 可达0.2cm 7)输入触发信号 : 10us的TTL脉冲 8)输出回响信号 : 输出TTL电平信号,与
9、射程成比例3:HC-SR04实物图: Figure4 HC-SR04模块实物图 4:接口定义这个模块共有四个引脚(Vcc,Trigger,Echo,GND)。Vcc端接电源,Trigger 端接触发信号输入,Echo端接回响信号输出,GND接地。 5: 模块工作原理 1)采用IO触发测距,给至少10us的高电平信号; 2)模块自动发送8个40kHz的方波,自动检测是否有信号返回; 3)有信号返回,通过IO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速)/2; 原理如下图所示: Figure5 模块工作原理 第四章 PCB设计原理图设计完毕后,采用Pro
10、tel 99SE进行PCB板设计。PCB设计主要按照以下步骤实现:1.根据元件资料、手册完成所需元器件的PCB封装。注意完成后,要以1比1的比例打印进行核对。2.确定PCB尺寸。3.综合考虑按照使用习惯、走线难度,为原理图中的不同模块摆放元器件。元器件分布尽量平均、有序。4.连接走线。走线时,为了增加系统的稳定性,遵守以下原则:电源地线要隔离,走线尽量以短、粗、少转角为准则。5.铺地,并且铺数字地。6.丝印调整,增强PCB可识性。完成后的PCB为单层板如下图所示: Figure6 PCB图第五章 程序设计及作品展示5.1 程序设计框图 5.2 作品展示5.3 源代码 头文件coon_def.h
11、,定义了一些延时函数。#ifndef _COON_DEF_H_#define _COON_DEF_H_/当前主板类型/#define _TIANXIANG_MCU_ 1 /#define _HXZ_MCU_ 2 /#define _COON_MCU_ 3 /数据类型#define uchar unsigned char /无符号字符型#define uint unsigned int /无符号整型/设备数据交互模式#define PARALLEL_MODE 1 /并行模式#define SERIAL_MODE 2 /串行模式#define MCU_FREQUENCY_12 (12) /12M处
12、理器主频/#define MCU_FREQUENCY_110592 (11.0592) /11.0592M处理器主频#define NEED_MS_SLEEP 1 /需要毫秒级延时函数#define NEED_US_SLEEP 1 /需要微秒级延时函数#endif /_COON_DEF_H_头文件coon_reg.h,是51微控制器的通用头文件,包含了一些定义和命令。/*-REG51.HHeader file for generic 80C51 and 80C31 microcontroller.Copyright (c) 1988-2002 Keil Elektronik GmbH and
13、Keil Software, Inc.All rights reserved.-*/#ifndef _COON_REG_H_#define _COON_REG_H_/* BYTE Register */sfr P0 = 0x80; /P0寄存器(可位寻址)sfr P1 = 0x90; /P1寄存器(可位寻址)sfr P2 = 0xA0; /P2寄存器(可位寻址)sfr P3 = 0xB0; /P3寄存器(可位寻址)sfr PSW = 0xD0; /程序状态字(可位寻址)sfr ACC = 0xE0; /累加器(可位寻址)sfr B = 0xF0; /乘法寄存器(可位寻址)sfr SP = 0x
14、81; /堆栈指针sfr DPL = 0x82; /数据存储器指针DPTR低8位sfr DPH = 0x83; /数据存储器指针DPTR高8位sfr PCON = 0x87; /电源控制及波特率选择sfr TCON = 0x88; /定时器控制(可位寻址)sfr TMOD = 0x89; /定时器方式选择sfr TL0 = 0x8A; /定时器0低8位sfr TL1 = 0x8B; /定时器1低8位sfr TH0 = 0x8C; /定时器0高8位sfr TH1 = 0x8D; /定时器1高8位sfr IE = 0xA8; /中断允许寄存器(可位寻址)sfr IP = 0xB8; /中断优先级寄
15、存器(可位寻址)sfr SCON = 0x98; /串行口控制器(可位寻址)sfr SBUF = 0x99; /串行数据缓冲/* BIT Register */* PSW 程序状态寄存器 */sbit CY = 0xD7; /进位/借位标志.表示是否有向高位的进位/借位sbit AC = 0xD6; /辅助进位/借位标志.表示是否有向高4位进位/借位sbit F0 = 0xD5; /用户定义标志位sbit RS1 = 0xD4;sbit RS0 = 0xD3;sbit OV = 0xD2; /溢出标志位sbit F1 = 0xD1; /用户定义标志位sbit P = 0xD0; /奇偶标志位.
16、累加器A中1的个数,P为1表示奇数个1/* TCON 中断控制寄存器 */sbit TF1 = 0x8F; /当计数器T1溢出时,由硬件将TF1置0,当CPU响应该中断后,由硬件将该位置0sbit TR1 = 0x8E;sbit TF0 = 0x8D; /当计数器T0溢出时,由硬件将TF0置0,当CPU响应该中断后,由硬件将该位置0sbit TR0 = 0x8C;sbit IE1 = 0x8B; /标示是否有外部中断1发生.如有外部中断发生则,由硬件将该位置为1,当CPU处理该中断后,由硬件将该位置0sbit IT1 = 0x8A; /设置外部中断1的触发方式.1:表示负跳变触发,0:表示的电
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 论文 基于 单片机 超声波 测距仪
链接地址:https://www.31ppt.com/p-3993539.html