CSDN话题挑战赛第2期
参赛话题:学习笔记
学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程。这个过程中,我们去记录思考的过程,便于日后复习,梳理自己的思路。学习之乐,独乐乐,不如众乐乐,把知识讲给更多的人听,何乐而不为呢?
博客写作背景----项目中解决的问题
最近遇到一个使用stm32单片机多路采集信号的项目,还需要在上位机进行波形的查看,信号算法的处理,初步定为使用labview编写上位机程序进行处理。为啥用labview呢,因为LabVIEW是美国国家仪器公司(NI)的创新软件产品,其全称是实验室虚拟仪器工程平台(Laboratory Virtual Instrument Engineering Workbench),是一种基于G语言(Graphics Language,图形化编程语言)的测试系统软件开发平台。LabVIEW并不局限于虚拟仪器的开发,它的作用是为大型复杂测试系统提供通用的软件开发平台。目前,LabVIEW已经成为测试领域应用最广泛和最有前途的软件开发平台之一。LabVIEW的查错、调试功能也非常强大。程序查错无须先编译,只要有语法错误,LabVIEW就会自动显示并给出错误的类型、原因及准确位置。进行程序调试,既有传统的程序调试手段,如设置断点、单步运行等,又有独到的高亮执行工具,就像电影中的慢镜头,使程序动画式执行,利于设计者观察程序运行细节。同时可以在任何位置插入任意的数据探针,程序在调试状态下运行时,LabVIEW会给出各探针的具体数值,通过观察数据流的变化情况、程序运行的逻辑状态,寻找错误、判断原因,从而大大缩短程序调试时间。
下面是我最近写程序的一些知识,进行了部分的整理,发出来和大家一起分享,也方便我以后查找自己的编程过程。
编程知识点–做题思路
单点采集是最简单的一种形式,系统每次只采集一个信号点,若加上循环结构控制可实现持续的单点采集,但因为VI性能受限,只适用于较低频率的采样应用,如几秒钟、几分钟甚至几小时采集一个点,常用于过程控制、生化实验等场合。
单点采集常使用传统NI-DAQ VI中Analog Input下的两个易用VI实现,分别是:
(1)用于单通道采集的AI Sample Channel.vi
(2)用于多通道采集的AI Sample Channels.vi
device:设备号,整型数据,用于指定使用哪个设备进行采集;
channel/channels:通道号,用于指定使用哪一个或哪几个通道进行采集。对于单通道采集的AI Sample Channel.vi,直接填入通道号即可,如表示使用信道0进行单信道采集;对于多通道采集的AI Sample Channels.vi,各通道号可用英文逗号“,”隔开,或者在起始通道号之间使用英文冒号“:”表示使用序号连续的几个通道,如表示使用通道0、1、5、6、7进行采集,通道号的填写顺序规定了采集所得数据的顺序;
high limit与low limit:用于指定采集电压范围的最高值和最低值,LabVIEW会根据输入的电压范围自动配置增益;
sample/samples:采集所得数据,返回类型可以为浮点数或者单点波形数据,对于单通道采集用标量表示,对于多通道采集用数组表示。
在测量微弱信号时可以将信号在进入ADC之前进行放大,这样可以更好地恢复信号,因为同样情况下大信号的量化误差比小信号的量化误差要小。
增益的选择原则是使输入信号的电压范围尽可能与ADC的电压范围相匹配,但不可过大,否则放大后的信号电压超出ADC电压范围的部分将被截断,产生失真。
NI公司的数据采集卡在通过VI参数设置了信号输入范围(Input Limits)后可自行配置增益。
CSDN话题挑战赛第2期
参赛话题:学习笔记