LabVIEW与单片机串口在数据采集系统中的应用

发布者:心想的45号最新更新时间:2012-11-24 来源: 21ic 关键字:LabVIEW  单片机串口  数据采集系统 手机看文章 扫描二维码
随时随地手机看文章

1.LabVIEW分析

LabVIEW是一种程序开发环境,由美国国家仪器(NI)公司研制开发的,类似于C和BASIC开发环境,但是LabVIEW与其他计算机语言的显着区别是:其他计算机语言都是采用基于文本的语言产生代码,而LabVIEW使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。

LabVIEW也有传统的程序调试工具,如设置断点、以动画方式显示数据及其子程序(子VI)的结果、单步执行等等,便于程序的调试。采用数据流编程方式,程序框图中节点之间的数据流向决定了VI及函数的执行顺序。

它主要的方便就是,一个硬件的情况下,可以通过改变软件,就可以实现不同的仪器仪表的功能,非常方便,是相当于软件即硬件!现在的图形化主要是上层的系统,国内现在已经开发出图形化的单片机编程系统(支持32位的嵌入式系统,并且可以扩展的),不断完善中(大家可以搜索 CPUVIEW 会有更详细信息;)。

1.1VISA简介

VISI俗称虚拟仪器软件规范,是所有标准I/O函数库及其相关规范的总称,用于完成计算机与仪器之间的连接,实现对仪器的控制。VISI本身并不具备编程能力,是通过调用底层驱动程序来实现对仪器的编程,其层次如图1所示。VISA是采用VPP标准的I/O接口软件,其软件结构包含三部分,如图2所示。

VISA的I/O控制特点

①适用于各种仪器类型(如VXI仪器、GPIB仪器、RS-232串行仪器、消息基器件、寄存器器件、存储器器件等仪器);

②适用于各种硬件接口类型;适用于单、多处理器结构或分布式网络结构;

③适用于多种网络机制。

VISA的I/O软件库的源程序是唯一的,与操作系统及编程语言无关,只是提供了标准形式的API文件作为系统的输出。

1.2VISA库中的串口通讯函数

主要的串口通讯函数调用路径为:FunctionsInstrument I/OVISAVISA AdvancedInterface SpecificSerial。

①VISA Configure Serial Port节点(图3所示)

该节点主要用于串口的初始化。主要参数如下:

VISA resource name:VISA资源名称,本文指串口号。baud rate:波特率,默认为9600。
data bits:一帧信息中的位数,LabVIEW中允许5~8位数据,默认值为8位。
stop bits:一帧信息中的停止位的位数,可为1位、1位半或2位。
Parity:奇偶校验设置。可为无校验、奇校验或偶校验。
flow control:该参数数据类型为簇,用于串行通讯中的握手方式。

②VISA Read节点(图4所示)

该节点为串口读子VI,为本文中的主要节点,将串口中的数据读出,然后利用LabVIEW的强大数据处理功能对其进行分析处理。主要参数意义如下:

VISA resource name:VISA资源名称,本文指串口号。baud rate:波特率,默认为9600。
 

byte count:用于设置所要读的字符数。由于LabVIEW的串行通讯子VI只允许对字符串的读写,因此本文中在进行数据处理时,必须要实现字符串与数字之间的正确转换。其次,若要读入当前串口中的所有字符,则要执行“VISA Bytes at Serial Port”子VI,用以确定将要读入的确切的字节数,然后将其输出作为VISA Read节点的输入即可。[page]

③VISA Close节点(图5所示)

该节点用于将打开的VISA资源关闭。只有一个主要参数:

VISA resource name:VISA资源名称,本文指串口号。baud rate:波特率,默认为9600。
 

本文所用LabVIEW串口通讯程序的波特率为9600,8位数据位,无奇偶校验,1位停止位,硬件握手、禁止软。

2单片机设计

2.1硬件

MCS-51单片机有一个全双工串行口其功能非常强大。

该串行口有4种工作方式,由片内的定时器/计数器产生,接收、发送均可触发中断系统,使用十分方便,波特率还可用软件设置。

有2个物理上独立的接收、发送缓冲器SBUF,对外也有两条独立的收、发信号线RXD(P3.0)和TXD(P3.1)。

本文采用RS232串行接口标准,在电气特性上,RS232采用负逻辑,要求高低两信号间有较大的幅度,标准为:逻辑“1”在-5V~-15V之间,逻辑“0”在+5V~+15V之间,通常采用-10V左右为逻辑1,+10V左右为逻辑0。由于MCS-51系统的信号输入输出为TTL电平,逻辑1为3.8V左右,逻辑0为0.4V左右,因此,必须外接电路实现TTL电平到RS232电平的转换。本文特别采用MAX232E实现此转换。

采用TLC0831芯片进行数据的采集。TLC0831芯片为8位逐次逼近电压型A/D转换器,不需寻址,支持单信道输入串口输出,极性设置固定。其主要特点为:8位分辨率;5V的电源提供0~5V的可调基准电压;输入输出可与TTL和MOS兼容。若要提高信号的采样频率,只需选择转换速度较快的A/D芯片即可。硬件部分原理图如图6。

2.2软件

下面给出单片机软件部分的主要程序。波特率设置为9600,用定时器1产生波特率,串口工作在方式1,无奇偶校验。定时器0设定采样的时间间隔。TLC0831为A/D转换器数据采样子程序,SEND为单片机发送子程序。



3结论

虚拟仪器研究的另一个问题是各种标准仪器的互连及与计算机的连接。目前使用较多的是 IEEE 488 或 GPIB协议,未来的仪器也应当是网络化的。

LabVIEW是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW [2]集成了与满足 GPIB、VXI、RS-232 和 RS-485 协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、ActiveX 等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。

由单片机进行前端数据采集,在通过串口与LabVIEW的数据通讯,巧妙的利用LabVIEW强大的信号分析处理功能,开发了一套投资少、操作简便的数据采集与信息分析系统(其虚拟面板如图7所示)。从系统运行良好,可以看出本实验很成功,可以投入市场。

关键字:LabVIEW  单片机串口  数据采集系统 引用地址:LabVIEW与单片机串口在数据采集系统中的应用

上一篇:基于单片机的低功耗高精度融雪测量仪的设计
下一篇:非常简单的8*8LED点阵c51源代码

推荐阅读最新更新时间:2024-03-16 13:13

最新版本的LabVIEW NXG,进行更智能的测试
2018年2月1日– 作为致力于为工程师和科学家提供解决方案来应对全球严峻的工程挑战的供应商,NI(美国国家仪器公司,National Instruments)今日宣布推出新版LabVIEW NXG,LabVIEW NXG是LabVIEW工程系统设计软件的下一代版本。 工程师现在可以使用LabVIEW NXG更智能地进行测试 - 快速设置仪器,根据设备规格自定义测试,并在任何设备上通过任意web浏览器轻松查看测量结果。 这个新版本的LabVIEW NXG新增了一些关键功能,提供了前所未有的长期优势,尤其是对于开发、部署和管理自动化测试和测量系统的工程师。 该版本引入了WebVI,这是一种用于构建基于Web的用户界面(UI)的V
[测试测量]
8051单片机串口复杂命令接收与解析
下面程序是为了实现二自由度自动进样检测器的控制而编写的. 在程序执行过程中, 我发现, 在发送Start.E再发送Stop.E后, 串口助手接收缓存区并未显示一连串 00 : 这说明在输入Start.E后, 虽然又收到Stop.E时执行了 en = 0 这个表达式, 但是回到第一层中断处理程序后, 这里的en还是 1 (并未变为我们希望的 0 ). 这说明, 以串口中断实现对二自由度自动进样检测仪的控制, 还是有一定难度的. 接下来我将致力于解决这一难题. #include STC89C5xRC.H char buf ;//存放串口传来的数据 int i = 0; int en; void UART_INT()
[单片机]
基于LabVIEW的汽车燃油泵性能测试检测系统
摘要 针对汽车电动燃油泵手工检测操作不便,数据精度、效率低等问题,以某款汽车燃油泵为研究对象,研制一种基于LabVIEW环境和数据采集卡的汽车电动燃油泵性能测试系统。该系统通过NI—USB 6210数据采集卡采集燃油压力、燃油流量、油泵工作电压和工作电流等参数,以LabVIEW编制的上位机界面实现控制参数的设定、油泵性能评价、数据显示、存储、历史记录查询等功能。实验结果表明,该系统的测试时问较传统检测方法缩短了90%以上,燃油泵性能的测试精度和检测效率均有大幅提高。 电动燃油泵是汽车发动机燃油供给系统中的关键部件,其作用是提供足够的燃油压力和流量,满足发动机各种工况对燃油的要求。燃油泵性能的好坏直接影响发动机的工作性能,因而必须
[测试测量]
基于<font color='red'>LabVIEW</font>的汽车燃油泵性能测试检测系统
基于labVIEW与单片机的上位机与下位机通信
在单片机控制系统中,经常会涉及到上位机与下位机的通信。本文主要通过一个简单的实例来介绍labVIEW与单片机的串口通信实现过程,包括下位机单片机的硬件与软件设计,上位机LabVIEW的前面板和程序框图设计。 1.概述 在现代测控系统中,我们经常会采用上位机和下位机的开发控制模式。下位机主要是用来采集数据,可以通过嵌入式控制器、单片机控制器、PLC等来实现。上位机主要是图形界面,用来实时显示采集数据,并进行数据分析及处理,同时可以控制下位机。上位机的实现可以通过各种高级语言,比如VB、Delphi等以及NI公司的图形化虚拟仪器软件开发环境LabVIEW.由于LabVIEW采用的是图形化的编程方法,所以无论你是否有过编程经验,都可
[单片机]
基于<font color='red'>labVIEW</font>与单片机的上位机与下位机通信
基于LabVIEW图形化开发平台实现医疗电子产品的设计和开发
LinkedIn针对医疗设备行业的投资最近几年一直处于上升阶段,在过去两年,针对医疗设备的风险投资几乎翻倍,2007年更是达到了40亿美元。无论从全球角度还是在中国市场,小型的、未上市的医疗设备制造商在具备产品、市场和创新的元素下,正逐步成为投资新宠。对于这些小型公司来说,如何从激烈的市场竞争中站稳脚跟并脱颖而出是非常困难的事情。他们的核心技术人员也许是生物医学领域的专家,掌握了一定的专利或研究成果,但如何在团队人员非常有限的情况下,快速的将专利或研究成果转化成产品、并保证产品的可靠性和稳定性是很大的难点。通过NI所提供的图形化开发环境LabVIEW和商业化嵌入式原型平台,领域专家或研发人员可以无缝集成硬件I/O与算法,在有限的团
[测试测量]
三坐标测量机简介
   三坐标测量仪是指在一个六面体的空间范围内,能够表现几何形状、长度及圆周分度等测量能力的仪器,又称为三坐标测量机或三坐标量床。三坐标测量仪又可定义“一种具有可作三个方向移动的探测器,可在三个相互垂直的导轨上移动,此探测器以接触或非接触等方式传递讯号,三个轴的位移测量系统(如光栅尺)经数据处理器或计算机等计算出工件的各点(x,y,z)及各项功能测量的仪器”。三坐标测量仪的测量功能应包括尺寸精度、定位精度、几何精度及轮廓精度等。   三坐标测量仪三轴均有气源制动开关及微动装置,可实现单轴的精密传动,数据采集系统采用高性能手动三坐标专用系统,可靠性好。应用于产品设计、模具装备、齿轮测量、叶片测量机械制造、工装夹具、汽摩配件、电
[测试测量]
基于LabVIEW的通用数据采集卡的驱动
介绍一种通过LabVIEW提供的Call Library Function Node实现对动态链接库(DLL)调用的方法,完成对通用数据采集卡的驱动,实现LabVIEW与通用数据采集卡的结合。? Baoding 071003, China) LabVIEW驱动通用数据采集插卡的方法有三种。 其一,直接用LabVIEW的Function模板内Advanced子模板的Port I/O图标编程,通过手动对基地址的设置,直接从特定的地址内存中读取数据。若采样速度要求不高,它是很方便直观的方法;其二,利用LabVIEW的Functions模板内Advanced子模板中CIN(Code Interface Node)图标,它适用于直接
[测试测量]
基于<font color='red'>LabVIEW</font>的通用数据采集卡的驱动
基于LabVIEW的异步电机转子断条检测
笼式异步电动机转子断条故障将会导致电机的运行性能恶化,对生产发展造成一定的损失,而且转子断条故障的发生概率高达10%,因此需要在故障发展初期进行早期检测并及时告警,进行维修。经研究表明笼式电动机发生断条故障后,在其定子电流中将会出现(1±2S)f0的附加电流分量(S为转差率、f0为电源频率),此电流分量称为边频分量,可作为转子断条故障的特征频率。早期广泛的采用对电流进行频谱分析来检测转子断条故障,然而在电机稳定运行时转差率很小,使得边频分量(1+2S)f0非常接近基波频率,同时边频分量的幅值只有基波频率的1%~3%,极容易被基波泄漏或噪声说覆盖,影响检测的灵敏性。而且直接对定子电流载波动。 为了解决这些不足文献采用了贝叶斯
[测试测量]
基于<font color='red'>LabVIEW</font>的异步电机转子断条检测
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved