虚拟仪器课程设计正文Word格式文档下载.docx
《虚拟仪器课程设计正文Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《虚拟仪器课程设计正文Word格式文档下载.docx(9页珍藏版)》请在冰点文库上搜索。
![虚拟仪器课程设计正文Word格式文档下载.docx](https://file1.bingdoc.com/fileroot1/2023-5/10/685a3dce-03fe-49bd-927b-06d793aadfa8/685a3dce-03fe-49bd-927b-06d793aadfa81.gif)
2016年7月12日
摘要:
本系统以AT89C51单片机为主控,利用HC-SR04超声波模块进行距离测量。
超声波模块采集到的数据发送到单片机,单片机进行相关处理后通过串口发送到电脑上显示,在电脑上利用LabVIEW设计上位机软件,实现数据的实时显示与报警提示功能。
整个系统采用模块化设计,包括超声波测距模块、单片机最小系统模块、串口发送模块以及上位机设计模块。
软件设计主要包括主程序设计、发射端程序、接收中断子程序、串口发送子程序以及上位机设计程序。
整个系统通过调试能较精确并快速的测量距离,软硬件设计合理、抗干扰能力强、实时性良好。
关键词:
超声波,测距,串口,LabVIEW,数据实时显示与报警
Abstract:
ThissystemAT89C51microcontrollerasmastertheuseHC-SR04ultrasonicdistancemeasurementmodule.Ultrasonicmodulesendsthecollecteddatatobackmicrocontroller,themicrocontrollercorrelationprocesssentthroughtheserialportonthecomputertodisplay,onacomputerusingLabVIEWdesignPCsoftware,datareal-timedisplayandalarmfunction.Theentiresystemismodularindesign,includingultrasonicrangingmodule,thesmallestsingle-chipsystemmodule,serialportmoduleandPCmoduledesign.Softwaredesignincludesthemainprogramdesign,launchtheprogramends,thereceptioninterruptsubroutine,sendsubroutineserialportandPCdesignprogram.Bycommissioningtheentiresystemcanbemoreaccuratelyandquicklymeasurethedistance,therationaldesignofhardwareandsoftware,anti-interferenceability,realgood.
Keywords:
ultrasonic,ranging,serialport,LabVIEW,real-timedatadisplayandalarm
1绪论
1.1研究的背景
目前超声波测距已得到广泛应用,国内一般使用专用集成电路根据超声波测距原理设计各种测距仪器,但是专用集成电路的成本较高、功能单一。
而以单片机为核心的测距仪器可以实现预置、多端口检测、显示、报警等多种功能,并且成本低、精度高、操作简单、工作稳定、可靠。
以8051为内核的单片机系列,其硬件结构具有功能部件齐全、功能强等特点。
尤其值得一提的是,出8位CPU外,还具备一个很强的位处理器,它实际上是一个完整的位微计算机,即包含完整的位CPU,位RAM、ROM(EPROM),位寻址寄存器、I/O口和指令集。
所以,8051是双CPU的单片机。
位处理在开关决策、逻辑电路仿真、过程测控等方面极为有效;
而8位处理则在数据采集和处理等方面具有明显长处。
1.2研究的意义
超声波是一种在弹性介质中的机械震荡,由于其指向性强、能量消耗缓慢、传播距离较远等到优点,经常用于测量距离。
本文设计的倒车雷达系统就是利用超声波的上述特性做到对倒车距离实时和高精度的检测,同时,此系统成本低、设计简单、精度和稳定性好,有望得到广泛的应用,从而减少交通事故的发生。
在现实生活中,一些传统的距离测量方式在某些特殊场合存在不可克服的缺陷。
而利用超声波测量距离可以很好地解决这一问题。
目前市面上常见的超声波测距系统不仅价格昂贵,体积过大而且精度也不高等种种因素,使得在一些中小规模的应用领域中难以得到广泛的应用。
为解决这一系列难题,本文设计了一款基于AT89C51单片机的低成本、高精度、微型化的超声波测距仪。
再利用usb转串口使电脑与单片机进行通信,在电脑上用LabVIEW设计上位机程序,让所测得的数据在电脑上显示;
并利用键盘设定一个安全距离,当测得的数据大于安全距离时报警。
2方案设计
2.1设计思路
测量距离方法有很多种,短距离可以用尺,远距离有激光测距等,超声波测距适用于高精度中长距离测量。
因为超声波在标准空气中传播速度为331.45米/秒,由单片机负责计时,单片机使用12.0M晶振,所以此系统测量精度理论上可以达到毫米级。
目前比较普遍的测距的原理:
通过发射具有特征频率的超声波对被摄目标的探测,通过发射出特征频率的超声波和反射回接受到特征频率的超声波所用的时间,换算出距离,如超声波液位物位传感器,超声波探头,适合需要非接触测量场合,超声波测厚,超声波汽车测距告警装置等。
2.2系统结构设计
超声波测距仪系统结构如图2-1所示。
它主要由单片机、超声波发射及接收电路、超声波传感器、键盘、LED显示电路及电源电路组成。
系统主要功能包括:
1)超声波的发射、接收,并根据计时时间计算测量距离;
2)检测空气温度用于距离计算的补偿;
3)LED显示器显示距离、温度;
4)键盘接收用户命令并处理;
5)当系统运行不正常时,用电平式开关与上电复位电路复位。
图2-1超声波测距仪系统结构框图
3主要元件介绍
3.1单片机AT89C51
AT89C51是一个低功耗高性能单片机,
40个引脚,32个外部双向输入/输出(I/O)
端口,同时内含2个外中断口,2个16位
可编程定时计数器,2个全双工串行通信口,
AT89C51可以按照常规方法进行编程,也可
以在线编程。
其将通用的微处理器和Flash
3.2超声波传感器HC-SR04
3.2.1超声波测距原理
超声波测距原理是利用超声波从发射到接收过程中传播的时间来计算出传播距离。
3.2.2超声波测距模块HC-SR04简介
HC-SR04超声波测距模块可提供2cm-400cm
的非接触式距离感测功能,测距精度可达高到3mm模块包括超声波发射器、接收器与控制电路。
整,否则会影响测量的结果。
3.3上位机设计软件LabVIEW
LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:
其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。
LabVIEW软件是NI设计平台的核心,也是开发测量或控制系统的理想选择。
LabVIEW开发环境集成了工程师和科学家快速构建各种应用所需的所有工具,旨在帮助工程师和科学家解决问题、提高生产力和不断创新
例如:
NILabVIEW应用程序生成器(Windows版)。
4硬件电路设计
4.1单片机最小系统
51单片机最小系统由复位电路和晶振电路构成。
图4-151单片机最小系统
4.2超声波模块与单片机连接电路
超声波模块HC-SR04共有四个引脚,其中第一脚VCC接电源正极(+5v),第4脚GND电路连接原理图如图4-2所示。
图4-2超声波模块与单片机连接电路原理图
4.3串口通信电路
该器件内置USB功能控制器、USB收发器、振荡器和带有全部调制解调器控制信号的UART,只需外接几只电容就可实现USB信号与RS232信号的转换,能够方便嵌入到各种设备;
该器件作为USB/RS232双向转换器,一方面从主机接收USB数据并将其转换为RS232信息流格式发送给外设;
另一方面从RS232外设接收数据转换为USB数据格式传送回主机。
这些工作全部由器件自动完成,开发者无需考虑固件设计。
PL2303的高兼容驱动可在大多操作系统上模拟成传统COM端口,并允许基于COM端口应用可方便地转换成USB接口应用,通讯波特率高达6Mb/s。
在工作模式和休眠模式时都具有功
图3-5PL2303USB转串口原理图
5软件设计
软件采用模块化设计方法,由主程序、超声波发生子程序、超声波接收中断子程序、串口发送子程序等模块组成。
5.1主程序设计
图5-1为主程序流程图。
系统上电后,首先系统初始化,进入循环后,控制超声波传感器发出超声波,同时使定时器T0开始定时。
延时一段时间,当检测到接收回波时,立即使T0停止工作,保存定时器的计数值。
通过距离计算公式得出所测距离,将数值通过串口发送到电脑上。
N
Y
开始
系统初始化
T0停止计时,保存计时值
发射超声波,T0计时
是否接收到
反射波
利用计算公式得出距离,
通过串口发送数值到电脑
图5-1为主程序流程图
5.2子程序设计
5.2.1超声波接收中断子程序
TL0=0;
}
5.2.2串口发送子程序
串口发送程序使用定时器外部中断1,波特率设置为9600。
5.3LabVIEW主程序设计
图5-3是利用LabVIEW设计的超声波倒车系统程序框图。
首先在程序执行前,打开串口选择,对COM端口号进行选择后,开始运行程序。
然后上位机通过串口开始接收下位机数据,也就是单片机所采集的超声波测量距离数据,并在波形图表控件上显示当前测量的距离。
再根据自己实际的倒车情况选择所需的倒车距离警示范围,上位机进行判断并进行实时显示。
图5-3超声波雷达倒车系统程序框图
5.3.1前面板控件组成
前面板如下图5-4所示:
图5-4前面板
LabVIEW上位机界面配合下位机(单片机)能够实现实时数据采集,加以更加直观的监测系统性能。
前面板各种功能控件的使用,使得系统人机交互更加轻松。
5.3.2程序框图设计
图5-5总程序框图
1.所示。
图5-8报警距离设计
6系统调试
系统调试主要是检测设计系统是否能完成任务要求的功能。
首先让系统自动连续运行,在设置里面选转旋钮输入设置倒车距离警示值,采集间隔根据超声波回传数据时间,获取数据后即刻通过串口传送至LabVIEW上位机测试系统,系统显示图6-1如下:
图6-2警示灯闪烁
在调试中,设计的超声波雷达倒车系统测试结果能够实现所需的功能,在系统的数据显示及警报反应效率中较为理想。
反复测试后,本系统设计较为成功。
7心得体会
通过学习我了解到它有一下几个有点:
第一,图形化的语言,只要你知道它的每一个图标和各种内置的函数是表达怎么样一个意思,你就会用它简单快捷的实现你所要实现的功能;
第二,很多硬件的东西可以用LabVIEW的内置各种函数来代替,不仅大大节省了很多外部的各种电路元件,而且利用电脑的CPU高速处理系统,让我们面对更加复杂的控制任务时更加从容,而不是局限于单片机系统有限的处理速度和片内资源;
第三,用户可以根据自己的需要定义和制造各种仪器,LabVIEW的强大之处正在于此,把各种的仪器都在电脑上虚拟化了,让我们的工作更加方便。
在本次课程设计过程中,我为能理解和应用专业课学习成果而感悟颇深,同时我也深深的感受到了基础知识的重要性。
在以后的学习生活中切不可急于求成而忽略了基础的夯实,对一门系统学科,应该扎实的学习他的每一部分知识,充分利用各种实践环节,切实做到理论联系实践,学以致用。
同样,通过这次课程设计我也体会到我们学习上的不足。
课程设计的这段时间过得相当充实,在日后的学习与工作中,我仍将认真巩固对专业基础知识的学习。
8谢辞
本次设计是在王孝平老师精心指导和大力支持下完成的,非常感谢老师为了指导我的课程设计,放弃了休息的时间,老师的这种无私奉献的敬业精神令人钦佩,在此我向老师表示的最诚挚的谢意。
感谢老师对我的辛勤培育。
老师严肃的科学态度,严谨的治学精神,灵活的思维方式,耐心细致的言传身教深深感染激励着我,将使我终身受益。
课程虽然学完了,但我们对于这门课的学习才刚刚起步,真心希望我们能够在这方面能有更深的造诣!
感谢老师给我的帮助,在做课程设计期间对我的细心教导!
参考文献
[1]张健,韩薪莘.《LabVIEW图形化编程与实例应用》.北京:
中国铁道出社
[2]戴鹏飞.《测试工程与LabVEIW应用》.北京:
电子工业出版社
[3]路林吉.虚拟仪器的应用.电子技术
[4]侯国屏.《LabVIEW7.1编程与虚拟仪器设计》.清华大学出版社
[5]杨乐平.李海涛,宵相生,等.LabVIEW
程序设计与应用.北京:
电子工业社
[6]顾春禄,贾姝娟,刘茹敏.基于单片机的数字温度计设计.
[7]程军.传感器及实用检测技术[M].广东:
华南理工大学出版社,2008.8
[8]陈杰,黄鸿.传感器与检测技术.北京:
高等教育出版社,2002.8
[9]蒋延彪.单片机原理及应用[M].重庆:
重庆大学出版社,2003.8
附录
附录1下位机电路图
附录2程序表单
#include<
reg51.h>
intrins.h>
typedefunsignedcharuint8;
typedefunsignedintuint16;
sbitTrig=P2^0;
//触发引脚定义
sbitEcho=P3^2;
//测量引脚定义
sbittest=P2^7;
//测试数据
uint16distance;
//定义全局变量
/******************************************
系统测试