0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

电子设计 来源:郭婷 作者:电子设计 2018-12-06 09:35 次阅读

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所示。

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

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所示)

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

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

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

data bits:一帧信息中的位数,LabVIEW中允许5~8位数据,默认值为8位。

stop bits:一帧信息中的停止位的位数,可为1位、1位半或2位。

Parity:奇偶校验设置。可为无校验、奇校验或偶校验。

flow control:该参数数据类型为簇,用于串行通讯中的握手方式。

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

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

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

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

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

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

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

该节点用于将打开的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为单片机发送子程序。

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

LabVIEW与单片机串口的特性及在数据采集与信息分析系统的应用

3结论

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

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

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

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6001

    文章

    43973

    浏览量

    620817
  • LabVIEW
    +关注

    关注

    1918

    文章

    3619

    浏览量

    316983
  • 数据采集
    +关注

    关注

    38

    文章

    4523

    浏览量

    112313
收藏 人收藏

    评论

    相关推荐

    有谁做过80c51单片机作为数据采集系统,上位labview用来...

    有谁做过80c51单片机作为数据采集系统,用串口通信,上位labview用来显波的虚拟示波器?
    发表于 08-18 12:46

    基于LabVIEW单片机USB数据采集系统设计

    本帖最后由 eehome 于 2013-1-5 09:43 编辑 基于LabVIEW单片机USB数据采集系统设计
    发表于 09-04 12:43

    基于LabVIEW单片机多路数据采集系统的设计

    基于LabVIEW单片机多路数据采集系统的设计
    发表于 09-04 12:47

    基于LabVIEW单片机数据采集系统的设计

    基于LabVIEW单片机数据采集系统的设计
    发表于 09-04 12:58

    基于LabVIEW和AVR单片机的压力数据采集处理系统

    基于LabVIEW和AVR单片机的压力数据采集处理系统
    发表于 09-04 13:06

    基于LabVIEW单片机的切削温度数据采集系统

    基于LabVIEW单片机的切削温度数据采集系统
    发表于 09-04 13:27

    基于单片机labview声音信号数据采集数理系统

    我想做一个基于单片机16F877的数据采集系统,然后用labview做后面的数据分析可行性大吗?labv
    发表于 10-03 19:53

    基于LabVIEW串口通信的数据采集串口收录系统设计

    ,无需更换硬件设备[1]。基于此,本文在研究LabVIEW的基础上,开发了基于LabVIEW串口收录系统,以单片机为核心的硬件部分作为前端
    发表于 12-24 11:10

    基于PIC单片机USB接口的数据采集系统设计

    基于PIC单片机USB接口的数据采集系统设计 我们把所设计的数据采集系统功能分解为三大部分:数据采集
    发表于 08-23 11:30

    基于PIC单片机USB接口的数据采集系统设计

    A/D转换器采集数据,暂存于数据缓冲区,再根据主机命令发给主机。这部分功能由一个单片机及接口来实现是最优方式。   数据通信部分应包含:简单、高效、通用的
    发表于 07-02 05:07

    基于LabVIEW单片机串口的信号处理的研究

    基于LabVIEW单片机串口的信号处理的研究:介绍了一种利用单片机采集数据,LabVIEW作为
    发表于 11-13 22:52 166次下载

    基于LabVIEW与凌阳SPCE061A实现串口数据采集

    基于LabVIEW与凌阳SPCE061A实现串口数据采集:介绍利用凌阳SPCE061A 单片机采集数据,
    发表于 11-13 23:02 39次下载

    基于LabVIEW与USB接口的实时数据采集系统

    基于LabVIEW与USB接口的实时数据采集系统 摘要:本文设计了一种基于LabVIEW与STC12C5410AD单片机
    发表于 03-10 14:13 7710次阅读
    基于<b class='flag-5'>LabVIEW</b>与USB接口的实时<b class='flag-5'>数据采集</b><b class='flag-5'>系统</b>

    基于LABVIEW与DSP串口数据采集系统

    基于LABVIEW与DSP串口数据采集系统
    发表于 01-20 16:26 41次下载

    基于LabVIEW_8.20的单片机数据采集系统设计_夏莉英

    设计了一个由PC 机与单片机组成的上下位机数据采集系统上位机以LabVIEW 为软件平台下位机以单片机、A/D 转 换器为主控芯片构成
    发表于 10-11 17:41 14次下载