数据采集编程笔记

优快云话题挑战赛第2期
参赛话题:学习笔记
学习之路,长路漫漫,写学习笔记的过程就是把知识讲给自己听的过程。这个过程中,我们去记录思考的过程,便于日后复习,梳理自己的思路。学习之乐,独乐乐,不如众乐乐,把知识讲给更多的人听,何乐而不为呢?

  • 项目中解决的问题
    最近遇到一个使用stm32单片机多路采集信号的项目,还需要在上位机进行波形的查看,信号算法的处理,初步定为使用labview编写上位机程序进行处理。

NI公司开发了两套NI-DAQ驱动程序:传统NI-DAQ(Traditional NI-DAQ)和NI-DAQmx,都可以与LabVIEW和NI公司的硬件产品无缝结合使用,因此也成为利用LabVIEW构建数据采集系统时驱动程序的首选。

NI公司在20世纪90年代首次发布了传统NI-DAQ驱动,对已有的DAQ库进行了许多改进,包括双缓冲采集、对特定传感器类型提供内置标度等,然而在90年代后期,NI-DAQ的研发团队意识到,向传统NI-DAQ添加新特性和设备的同时又要保持API与以前版本兼容的难度越来越大,而且在长期的发展过程中,传统NI-DAQ的API也积累了一些亟待解决的问题。

因此NI公司重构了一个全新的API设计和体系结构,可以帮助NI-DAQ的开发者更轻松地添加新特性和新设备,解决许多现有的驱动问题,并且同时可以优化性能,这就诞生了NI-DAQmx。

NI-DAQmx与传统NI-DAQ相比,有如下突出的新特性。
(1)更轻松地添加DAQ API的新特性和新设备
传统NI-DAQ的许多API函数都有大量的参数而且没有有效的方式可以添加新参,而NI-DAQmx API通过一个丰富的属性层次来使用基于属性的方法,其易于扩展的特点使得添加新特性更为轻松。另外,NI-DAQmx使用了作为组件的插入式设计,添加新设备更为便利。

(2)更有效的多线程数据采集
传统NI-DAQ最初是为旧版本的单线程操作系统而设计的,在多线程操作系统下运行时,传统NI-DAQ必须将存取操作限制在每次一个线程,不能同时完成两个或更多的DAQ任务。NI-DAQmx使用多线程设计解决了这一问题,能够有效地利用多线程同时执行多个DAQ任务和访问驱动器。

(3)提高了数据采集性能
传统NI-DAQ对应用程序的控制能力不够强,如验证配置(检验)、保留资源(保留)和对硬件编程(实施)等,因此,用户不能重写这些应用程序以更快地运行。NI-DAQmx则利用一个基于已定义状态模型的设计提高了性能,并且对于检验、保留和实施等一些高级操作提供了高级的API功能,因此,用户拥有更强的控制能力以创建更高效的数据采集系统。

(4)提高了驱动性能和可靠性
用户每添加一个新特性或者对驱动进行一次改变,NI-DAQmx中一个严格且完备的功能和性能自动测试包就会检验这个改变是否引入了漏洞。NI-DAQmx也能够处理异常情况,如DAQ任务中止、看门狗定时器终止和设备的意外删除等。

(5)更便利的使用方式
传统NI-DAQ中含有的Easy I/O和中间I/O层使得创建一般的DAQ任务更加轻松,然而用户在需要添加更多高级特性时就不得不使用更高级的API进行重写。NI-DAQmx引入了以下方式,使得开发应用程序更为轻松。
配置工具助手,如DAQ助手。利用DAQ助手,用户可以图形化地选择他们希望进行测量的类型,保存配置以供以后使用,并自动生成代码;高级NI-DAQmx路由特性,简化了DAQ设备的触发和同步;报告并描述错误,帮助用户精确地确定错误的原因并推荐解决方案,使得调试DAQ应用程序更加便利。从LabVIEW 7开始引入的Express VI和多态性VI等新特性。利用Express VI,用户可以从一个简单的配置对话框来选择参数并构建DAQ系统。多态性VI则可根据DAQ任务的不同进行自动匹配,帮助用户更容易地找到特性。

正是由于NI-DAQmx的以上优异特性,NI公司现在将主要致力于NI-DAQmx的开发,而不再继续深入开发传统NI-DAQ,只是对传统NI-DAQ提供必要的维护和更新。传统NI-DAQ也不支持微软最新的操作系统Windows Vista。

NI-DAQmx支持最新的NI DAQ硬件,如M系列插入式DAQ设备,以及一些最新的USB DAQ设备等,将来新的NI DAQ硬件设备也将只受NI-DAQmx支持。NI-DAQmx也支持数以百计的传统NI-DAQ所支持的DAQ设备,但并不是全部设备,例如,一些使用ISA总线的设备就仅受传统NI-DAQ支持。如果想了解当前设备受哪套驱动程序支持,可访问http://www.ni.com/dataacquisition/software/zhs/并单击“DAQ驱动支持”查阅详情。

虽然NI公司推荐使用NI-DAQmx,但若有下列情形之一者,必须使用Traditional DAQ。
● NI-DAQmx不支持的设备,如一个AT(用于ISA接口)E系列多功能DAQ卡;
● 使用的LabVIEW、LabWindows/CVI或Measurement Studio版本在7.0之前;
● 需要使用Visual Basic 6编写数据采集程序;
● 需要从NI-DAQ 6.9.x版本升级并且存在不愿与NI-DAQmx相连接的应用程序。
在这里插入图片描述

NI-DAQmx和传统NI-DAQ驱动程序安装包都可随所购的NI公司硬件产品附赠,或者从NI公司技术支持网站http://www.ni.com/support/zhs/上单击“技术支持”下的“驱动与升级”免费下载(要求先免费注册)。在正确安装过传统NI-DAQ与NI-DAQmx之后,可以从LabVIEW的测量I/O子函数选板下找到这两套驱动程序VI的入口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr Robot

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值