LabVIEW课程设计-基于LabVIEW软件平台的流水灯的设计原理及过程_第1页
LabVIEW课程设计-基于LabVIEW软件平台的流水灯的设计原理及过程_第2页
LabVIEW课程设计-基于LabVIEW软件平台的流水灯的设计原理及过程_第3页
LabVIEW课程设计-基于LabVIEW软件平台的流水灯的设计原理及过程_第4页
LabVIEW课程设计-基于LabVIEW软件平台的流水灯的设计原理及过程_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、摘要:本文运用虚拟仪器的设计思想,介绍了一种基于LabVIEW软件平台的流水灯的设计原理及过程。利用LabVIEW开发环境设计上位机的界面,上位机通过串行口与AT89C52单片机通信,从而实现对端口配置、流水灯的显示。运用LabVIEW进行系统开发具有很强的灵活性,能较容易地实现系统的各项功能,并使系统具有很强扩展性。关键字:虚拟仪器 AT89C52单片机 串口通信 流水灯。目 录 TOC o 1-3 h z u HYPERLINK l _Toc346213197 第一章 概述 PAGEREF _Toc346213197 h - 3 - HYPERLINK l _Toc346213198 1.

2、1 LabVIEW 简介 PAGEREF _Toc346213198 h - 3 - HYPERLINK l _Toc346213199 1.2 LabVIEW 特点 PAGEREF _Toc346213199 h - 3 - HYPERLINK l _Toc346213200 1.3 LabVIEW 未来 PAGEREF _Toc346213200 h - 4 - HYPERLINK l _Toc346213201 第二章 设计方案 PAGEREF _Toc346213201 h - 4 - HYPERLINK l _Toc346213202 2.1 上位机 PAGEREF _Toc3462

3、13202 h - 5 - HYPERLINK l _Toc346213203 2.2 下位机AT89C52 PAGEREF _Toc346213203 h - 5 - HYPERLINK l _Toc346213204 2.3 RS232串口 PAGEREF _Toc346213204 h - 6 - HYPERLINK l _Toc346213205 第三章 硬件设计 PAGEREF _Toc346213205 h - 7 - HYPERLINK l _Toc346213206 3.1 时钟晶振模块 PAGEREF _Toc346213206 h - 7 - HYPERLINK l _To

4、c346213207 3.2 复位模块 PAGEREF _Toc346213207 h - 7 - HYPERLINK l _Toc346213208 3.3 LED显示模块 PAGEREF _Toc346213208 h - 8 - HYPERLINK l _Toc346213209 3.4 串口通讯模块 PAGEREF _Toc346213209 h - 8 - HYPERLINK l _Toc346213210 第四章 软件设计 PAGEREF _Toc346213210 h - 9 - HYPERLINK l _Toc346213211 4.1 AT89C52主程序设计 PAGEREF

5、 _Toc346213211 h - 9 - HYPERLINK l _Toc346213212 4.1.1 串口工作原理部分 PAGEREF _Toc346213212 h - 10 - HYPERLINK l _Toc346213213 4.2 上位机设计 PAGEREF _Toc346213213 h - 10 - HYPERLINK l _Toc346213214 4.2.1 端口设置区设计 PAGEREF _Toc346213214 h - 10 - HYPERLINK l _Toc346213215 4.2.2 命令控件区设计 PAGEREF _Toc346213215 h - 1

6、1 - HYPERLINK l _Toc346213216 4.2.3 显示控件区设计 PAGEREF _Toc346213216 h - 12 - HYPERLINK l _Toc346213217 参考文献 PAGEREF _Toc346213217 h - 14 - HYPERLINK l _Toc346213218 心得体会 PAGEREF _Toc346213218 h - 15 - HYPERLINK l _Toc346213219 附录 PAGEREF _Toc346213219 h - 16 -第一章 概述1.1 LabVIEW 简介LabVIEW是一种程序开发环境,由美国国家

7、仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。与 C 和 BASIC 一样,LabVIEW也是通用的编程系统,有一个完成任何编程任务的庞大函数库。LabVIEW的函数库包括数据采集、GPIB、串口控制、数据分析、数据显示及数据存储等等。LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。LabVIEW(Laboratory Virtual In

8、strument Engineering Workbench)是一种用图标代替文本行创建应用程序的图形化编程语言。传统文本编程语言根据语句和指令的先后顺序决定程序执行顺序,而 LabVIEW则采用数据流编程方式,程序框图中节点之间的数据流向决定了VI及函数的执行顺序。VI指虚拟仪器,是 LabVIEW的程序模块。LabVIEW提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户界面在 LabVIEW中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制。这就是图形化源代码,又称G代码。LabVIEW的图形化源代码在某种程度上类似于流程图,因此又被称

9、作程序框图代码。1.2 LabVIEW 特点尽可能采用了通用的硬件,各种仪器的差异主要是软件。可充分发挥计算机的能力,有强大的数据处理功能,可以创造出功能更强的仪器。用户可以根据自己的需要定义和制造各种仪器。1.3 LabVIEW 未来虚拟仪器研究的另一个问题是各种标准仪器的互连及与计算机的连接。目前使用较多的是IEEE488 或GPIB协议。未来的仪器也应当是网络化的。LabVIEW是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW集成了与满足 GPIB、VXI、RS-232和 RS-485 协议的硬件及数据采集

10、卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。图形化的程序语言,又称为 “G” 语言。使用这种语言编程时,基本上不写程序代码,取而代之的是流程图或框图。它尽可能利用了技术人员、科学家、工程师所熟悉的术语、图标和概念,因此,LabVIEW是一个面向最终用户的工具。它可以增强你构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径。使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。利用 LabVIEW,可产生独立

11、运行的可执行文件,它是一个真正的32位/64位编译器。像许多重要的软件一样,LabVIEW提供了Windows、UNIX、Linux、Macintosh的多种版本。它主要的方便就是,一个硬件的情况下,可以通过改变软件,就可以实现不同的仪器仪表的功能,非常方便,是相当于软件即硬件!现在的图形化主要是上层的系统,国内现在已经开发出图形化的单片机编程系统(支持32位的嵌入式系统,并且可以扩展的)。 第二章 设计方案下位机使用AT89C52进行流水灯设计,上位机使用LabVIEW进行界面设计,显示出端口设置数据和8个LED灯的显示,通过RS232进行串口通讯传送数据到上位机中显示。AT89C52晶振时

12、钟复位电路8位LED上位机显示控件区命令控件区端口设置区RS232串口图2.1 设计框架2.1 上位机上位机是指人可以直接发出操控命令的计算机,一般是PC,屏幕上显示各种信号变化。下位机是直接控制设备获取设备状况的计算机,一般是PLC、单片机之类的。上位机发出的命令首先给下位机,下位机再根据此命令解释成相应时序信号直接控制相应设备。下位机不时读取设备状态数据(一般为模拟量),转换成数字信号反馈给上位机。简言之如此,实际情况千差万别,但万变不离其宗:上下位机都需要编程,都有专门的开发系统。 通常上位机和下位机通讯可以采用不同的通讯协议, 可以有RS232的串口通讯,或者采用RS485串行通讯,当

13、用计算机和PLC通讯的时候不但可以采用传统的D形式的串行通讯,还可以采用更适合工业控制的双线的profibus-dp通讯,采用封装好的程序开发工具就可以实现PLC和上位机的通讯。当然可以自己编写驱动类的接口协议控制上位机和下位机的通讯。2.2 下位机AT89C52AT89C52是美国Atmel公司生产的低电压、高性能CMOS 8位单片机,片内含8KB的可反复檫写的程序存储器和12B的随机存取数据存储器(RAM),器件采用Atmel公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内配置通用8位中央处理器(CPU)和Flash存储单元,功能强大的AT89C52单片机可灵活应用于

14、各种控制领域。AT89C52单片机属于AT89C51单片机的增强型,与Intel公司的80C52在引脚排列、硬件组成、工作特点和指令系统等方面兼容。其主要工作特性是: 片内程序存储器内含8KB的Flash程序存储器,可擦写寿命为1000次; 片内数据存储器内含256字节的RAM; 具有32根可编程I/O口线; 具有3个可编程定时器; 中断系统是具有8个中断源、6个中断矢量、2个级优先权的中断结构;串行口是具有一个全双工的可编程串行通信口; 具有一个数据指针DPTR; 低功耗工作模式有空闲模式和掉电模式; 具有可编程的3级程序锁定位;AT89C52工作电源电压为5(1+0.2)V,且典型值为5V

15、; AT89C52最高工作频率为24MHz。 2.3 RS232串口 RS232是个人计算机上的通讯接口之一,由电子工业协会(Electronic Industries Association,EIA) 所制定的异步传输标准接口。通常 RS-232 接口以9个引脚 (DB-9) 或是25个引脚 (DB-25) 的型态出现,一般个人计算机上会有两组 RS232 接口,分别称为 COM1 和 COM2。 RS232-C是美国电子工业协会EIA(Electronic Industry Association)制定的一种串行物理接口标准。RS是英文“推荐标准”的缩写,232为标识号,C表示修改次数。R

16、S232-C标准设有25条信号线,包括一个主通道和一个辅助通道。在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地线。 RS232-C标准规定的数据传输速率为50、75、100、150、300、600、1200、2400、4800、9600、19200波特。 串行通信接口标准经过使用和发展,目前已经有几种。但都是在RS232标准的基础上经过改进而形成的。所以,以RS232-C为主来讨论。RS232-C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协议。它适合于数据传输速率在020000b/s范围内的通信。这个

17、标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。由于通行设备厂商都生产与RS232-C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。 第三章 硬件设计在硬件设计中主要为下位机的AT89C52所设计的流水灯,其中包括基本的时钟晶振模块,复位电路模块,8位LED灯模块和最重要的串口通讯模块。3.1 时钟晶振模块外接晶振给单片机提供一个时钟信号(一个非常稳定的频率信号),使单片机各内部组件同步工作,并且在和外部设备通信时是也能达到同步。图3.1 时钟晶振模块3.2 复位模块手动开关复位使中央处理器CPU以及其他功能部件都恢复到一个确定的初始状态,并从这

18、个状态开始工作。除此之外,当单片机程序运行出现错误或系统处于死循环状态时,需要对单片机进行复位以及重新启动。图3.2 手动开关复位3.3 LED显示模块8位LED发光二极管实现流水灯操作。根据软件设计可得到1位LED循环左移,花样灯等。 8位LED显示3.4 串口通讯模块MAX232是一种把电脑的串行口RS232信号电平(-10,+10v)转换为单片机所用到的TTL信号点平(0,+5)的芯片。串口通讯模块使上位机与下位机得以通信,进行数据传送。图3.4 串口通讯第四章 软件设计4.1 AT89C52主程序设计 下位机程序设计中主要执行功能为流水灯显示和串口发送,主程序首先对系统的定时器和串口进

19、行初始化,然后通过程序SBUF接收P1口的信号,每接收到一个P1口信号就对上位机进行一次数据传送,通过上位机的设计界面显示数据。整个系统的主流程图如下图所示。开 始定时器初始化串口初始化LED流水灯串口上传LED显示设置图4.1 主流程图 串口工作原理部分系统的串口部分十分重要,主要是初始化部分对相应的寄存器进行设置,发送数据的时候只需要将数据写入SBUF里面即可,由发送中断标志位TI检测其数据发送结束。而接收则有中断方式和等待方式两种,本系统因为单片机所要完成的简单,所以采用等待的方式。串口的初始化程序流程图如图所示。开 始结 束设置T1工作方式设置波特率设置串口工作方式允许串口中断图4.2

20、 串口初始化程序流程图4.2 上位机设计本次使用LabVIEW对程序进行设计,界面中包括端口设置区,命令控件区,显示控件区。由于所学知识有限,设计中多数部分。 端口设置区设计端口设置区中包括五个部分,分别为:通讯口设置,波特率设置,数据位设置,校验位和停止位。通讯口中编辑项有COM1、COM2。波特率编辑项有300、600、1200、1800、2400、4800、7200、9600、14400、19200、28800、38400、56000、76800、115200。数据位中编辑项有6、7、8。校验位中编辑项有无、偶校验、奇校验。停止位中编辑项有1、1.5、2。其前、后面板显示如图4.3、图4

21、.4所示。 图4.3 端口设置区前面板设计 图4.4 端口设置区后面板设计 命令控件区设计命令控件区中包括:自动发送选择项,发送按钮,数据清空按钮,停止按钮。其前、后面板如图4.5、图4.6所示。图4.5 命令控件区前面板设计图4.6 命令控件区后面板设计 显示控件区设计现实空间区中包括数据发送区、数据接收区、发送周期显示、发送字节数、接收字节数和8位LED显示灯。其前、后面板如图所示。图4.7 显示控件区前面板设计图4.8 后面板数据发送区、发送周期设计图4.9 后面板数据接收区、发送/接收字节数设计图4.10 后面板LED灯显示设计参考文献1 江建军 孙彪著. LabVIEW程序设计教程2

22、 柴钰 著. 单片机原理及应用. 西安电子科技大学出版社. 2009年2月4 百度百科 5 百度资料 51f01dc281f心得体会通过各方面努力,本次实习基本完成。在LabVIEW设计的学习下,设计出了上下位机的LED通讯灯动态显示方案。通过这次系统的项目设计提高了我运用所学的专业基础知识来解决面临实际问题的能力,同时也提高了我查阅各种文献资料、使用LabVIEW软件的水平。通过这次设计,我发现了自己的很多不足以及许多知识的漏洞。在设计过程中遇到了不少困难,庆幸的是我得到了许多人的帮助。首先我要感谢我的指导老师昝老师设计过程中,他给的指导,丰富的设计经验和严谨的制学态度,是我解决问题的关键所

23、在。同时,还要感谢帮助我的所有同学。我想,本次实习对我们每个人都是影响很大的,它使我们基本掌握了LabVIEW通讯的设计方案,基本掌握了LabVIEW等软件的使用,并且对LabVIEW有了更深入的了解。在解决问题的过程中,我们不仅学到了很多专业的知识,还学会了分析问题,解决问题的方法。相信这些对我们以后的学习与工作都有很大的帮助。通过对自己在大学时间里所学的知识的回顾,并充分发挥对所学知识的理解和对课程设计的思考及书面表达能力,最终完成了这项实习。这次设计为我们今后进一步深化学习,积累了一定的宝贵经验。撰写论文的过程也是专业知识的学习过程,运用已有的专业基础知识,对其进行设计,分析和解决一个理论问题或实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论