CSDN话题挑战赛第2期
参赛话题:学习笔记

博客写作背景—-项目中解决的问题

最近遇到一个使用stm32单片机多路采集信号的项目,还需要在上位机进行波形的查看,信号算法的处理,初步定为使用labview编写上位机程序进行处理。为啥用labview呢,因为LabVIEW是NI的数据采集创新软件产品,其全称是实验室虚拟仪器工程平台(Laboratory Virtual Instrument Engineering Workbench),是一种基于图形语言(Graphics Language,图形化编程语言)的测试系统软件开发平台。LabVIEW并不局限于虚拟仪器的开发,它的作用是为大型复杂测试系统提供通用的软件开发平台。目前,LabVIEW已经成为测试领域应用最广泛和最有前途的软件开发平台之一。

下面是我最近写程序的一些知识,进行了部分的整理,发出来和大家一起分享,也方便我以后查找自己的编程过程。

(1)编程知识点–LabVIEW数据采集卡
利用LIAT中的模拟采样函数库,通过Arduino Uno控制板上的模拟输入端口采集模拟信号,并上传至LabVIEW界面上显示波形,实现一个数据采集的功能。

(2)硬件连接
将需测量信号的正负两端分别接至Arduino Uno控制板上的模拟输入端口和GND引脚上,并在LabVIEW软件上选择所连接的端口号。

(3)程序设计
本例修改自LabVIEW Interface for Arduino函数库中的示例,位于函数选板“函数”→"Arduino"→"Example"→"Finite Analog Samp-ling Example",修改后的LabVIEW前面板和程序框图如图1、图2和图3所示。


在软件运行前设置Arduino Uno控制板的串口号、采集端口、采样速率(Hz)和采样时间(s)。

LabVIEW程序首先通过设置的串口号与Arduino Uno控制板建立连接,然后等待事件结构,若采集键被按下,则点亮“采集中”LED灯,再调用模拟采样函数库中的Get Finite Analog Sample函数节点以设置好的采集端口、采样速率和采样点数来实现有限采样并送入波形显示控件,完成之后熄灭“采集中”LED灯,采样点数通过采样速率和采样时间计算得到;若清除键被按下,则清除波形显示。最后,断开与Arduino Uno控制板的连接。

(4)实验与演示
在采样速率1000Hz的情况下,将Arduino Uno控制板上的3.3V电压输出接至模拟输入端口A0

物联沃分享整理
物联沃-IOTWORD物联网 » LabVIEW数据采集卡

发表评论