历史上的今天
返回首页

历史上的今天

今天是:2024年10月13日(星期日)

正在发生

2020年10月13日 | 基于LabVIEW的四通道多参数测试系统软件设计

2020-10-13 来源:21ic

摘要:介绍了基于MSP430单片机的四通道多参数和测试软件的功能模块,讨论了该软件的设计问题。软件是在LabVIEW开发平台上开发的,具有友好的可视化界面和结构化设计。软件经过系统的联合调试后,实现了四通道信号曲线的实时显示、存储、对电路进行编程控制,具有很好的稳定性和可操作性,完成了系统所要求的各项指标和功能。

随着工业控制技术与计算机技术的发展,基于计算机硬件和软件的数据采集与控制系统已成为工业控制的主流。基于LabVIEW开发的测控系统,在工程和科研的各个领域得到了广泛应用。LabVIEW是美国国家仪器公司推出的一个图形化编程的软件开发环境。是一个标准的数据采集和仪器控制软件。由于LabVIEW功能强大且灵活,利用它可以方便快捷地建立自己的虚拟仪器,成为测试、测量和控制设计的专用工具,其范围可从温度监控到复杂的仿真和控制系统。本文主要介绍了基于LabVIEW测试系统软件,该软件具有数据采集、处理、分析和电路编程能力,能够提供丰富的数据信息,生成信号曲线,具有较高的实时性、准确性和可扩展性。通过软件可以帮助实验人员实时观察要测量的压力、加速度、温度、电量;确定系统的正常运行,对于及时发现和解决问题具有重要作用。

1 系统的基本结构
四通道多参数测试系统采用均匀采样策略,对被测信号进行等时间间隔采样,在测试过程中采样的频率为一常数。均匀采样频率确定的基础是采样定理,它至少要大于被测信号最大频率的两倍,同时,还要考虑测量时间T及存储容量M等因素,应满足2fa≤fs≤M/T。
系统采用压力传感器、加速度计等对四路信号进行采集,采集后的数据经信号调理电路进行滤波及放大处理后送入MSP430单片机,利用单片机中自带的A/D转换器将模拟信号转变成数字信号。该系统的采样频率为1 kHz,单片机通过片选(STE)信号控制按顺序接收四个通道转化的数据,将数据通过单片机SPI口以100 Hz发送。采集的数据一方面存入FLASH中,另一方面通过计算机软件进行控制把数据经USB接口电路读入计算机中实时保存,并在软件中实时显示出四个通道的温度曲线。系统的基本结构如图1所示。

a.jpg?imageView2/2/w/550

2 系统的软件设计
软件部分是整个引信测试系统设计的核心,软件的设计使得用户可以通过计算机实现数据的采集、显示、分析处理和存储,并且可以对测试电路进行编程来改变测试电路的工作参数。本系统的软件部分主要包括:采样读数、电路编程、数据定标、多通道显示等。


2.1 采样读数
引信测试系统软件的核心是采样读数,采样读数模块是通过连接USB接口来采集获取测试仪器的数据。采样读数包含两部分:读取存储数据和实时数据。


读取实时数据就是在测试过程中对数据进行实时的采集并通过USB接口传递给上位机软件,软件接收到数据后对数据进行实时的处理、保存,并动态显示信号曲线。测试实时曲线显示用波形图作为容器,波形图控件包括图形工具选板和游标图例,通过波形工具选板可以实现对波形的放大、缩小和平移;游标图例可以实现对信号曲线定点坐标的获取。这些功能可以帮助实验人员实时分析信号参数及发现问题。读取存储数据就是在试验结束之后通过USB接口将数据从仪器中的FLASH中读出,然后将数据以文件形式保存在计算机中并在屏幕上显示出信号曲线。采样读数的部分程序如图2所示。

b.jpg?imageView2/2/w/550

2.2 电路编程
根据每次试验的不同情况,需要根据实验的环境和实验要求对硬件电路进行重新设置,电路编程模块通过USB读数口可以方便快捷地对硬件电路进行重新设置,电路编程模块实现了设定电路的存储器容量、延迟时间、环境控制和采样策略选择等。


2.3 定标读值
定标读值是指通过事先对电路和传感器标定的灵敏度将各通道的数字量转换成其具有物理意义的信号量,使波形图显示的原始曲线转换成相应的加速度-时间等曲线。在定标界面中可以对标定了的数据进行相应的数据处理,例如数据转换、打印等。


2.4 导出波形
通过导出波形模块用户可以将波形图中显现的曲线图以图片的形式保存在计算机中,方便用户打印输出、存档保存以便日后查阅。该功能的实现通过波形图的属性节点调用实现。


2.5 多通道显示
多通道显示模块允许用户通过对通道的选择来显示某一通道的数据曲线,也可以同时显示四个通道的数据曲线并以不同的颜色来显示各个通道的数据曲线,方便用户对曲线进行观察和对比,在LabVIEW中通过复选框实现各个通道的选择。

3 软件的关键问题
3.1 通道数据分离和纠错
在数据采集的过程中,四路信号是同时存储的。当在存储数据和显示数据曲线时,需要对数据进行处理,防止读取或存储的数据发生错位现象,同时便于对错误进行跟踪查找,最终能使各通道数据能够完整地整合到一起。因此采取了相应的措施,在每个数据存储的过程中给每个通道的信号加上通道信息。


当多路信号采集完一个周期后,存储一些通道信息作为区分每包数据的信号。这样即使某包数据出了问题,也可以很容易地确定各个通道信号的数据,不会出现数据错位现象。通过判断数据的通道号来确定数据是否正确,当出现错误时用相对应的上一包的数据进行替换,具体步骤如图3所示。

c.jpg?imageView2/2/w/550

3.2 动态链接库的调用
动态链接库(DLL)是存放在.dll文件中编译过的小型库文件,该文件封装了一些功能和代码及一组接口函数供LabVIEW调用,应用程序可以在运行时链接并使用它。在LabVIEW中提供了调用库函数节点,通过该节点进行配置就可以调用DLL。


动态链接库的工作原理如下:当它收到应用程序的数据传输请求后,会创建两个线程:数据传输线程和记录、显示线程,其中数据传输线程负责将数据写到应用程序要提交的内存;而记录、显示线程则负责给应用程序发送记录和显示消息。当应用程序接收到此消息后,便从它提交的内存中读取数据并存。


用户应用程序的主要功能是开启或关闭USB设备、检测USB设备、设置数据传输帧数、通过USB接口传输并显示数据,本系统软件调用DLL68013.dll库文件对USB设备进行控制。下面就本系统信号采集关键DLL函数进行简单的说明,这些都在调用库函数节点的配置中进行设定,在配置过程中要注意调用规范,该系统采用stdcall(WINAPI)。


①TranVerCmmd(),该函数是向USB设备中发送控制命令,用于控制USB设备,该函数就一个参数,向这个函数发送HB4初始化读数口控制命令。
②BulkWrite(),该函数是控制向设备中发送数据,包括三个参数,第一个参数是要操作的管道号,第二个参数是要写入的数据,第三个参数是数据的大小。
③BulkRead(),该函数是控制向设备中发送数据,包括三个参数,第一个参数是要操作的管道号,第二个参数是要读取的数据,第三个参数是数据的大小。

采样模块调用库函数节点的部分程序如图4所示。

d.jpg?imageView2/2/w/550

4 测试结果及结论
4.1 测试结果
在一次测试的试验中,对四个通道信号进行数据采集,其结果如图5所示。从图中可以清楚地观察到各个参数的变化,测试数据保存在二进制文件中,数据还可以生成Excel报表文件以便用户参考分析。

e.jpg?imageView2/2/w/550


4.2 测试结论
四通道多参数测试软件通过了系统的联合调试,成功地实现了数据的接收、显示、处理、存储、回放等功能。联合调试的结果充分说明系统可以在Windows的平台上平稳运行,数据接收与显示的实时性完全满足要求。由于系统有很强的数据回放能力,用户可以在每次试验后,反复研究本次试验数据,这对及时发现、分析和排除故障、提高效率是非常有效的。

推荐阅读

史海拾趣

Fractus公司的发展小趣事

为了加速技术的商业化进程,Fractus积极寻求与全球领先企业的合作。自2000年以来,公司陆续与多家知名手机厂商、电信运营商以及设备制造商建立了战略合作关系。这些合作不仅为Fractus带来了稳定的收入来源,也促进了其技术的广泛应用和持续改进。同时,Fractus还通过签订全球许可协议和建立战略伙伴关系,进一步拓展了其业务范围和市场影响力。

Apx-Crystal公司的发展小趣事

作为一家有社会责任感的企业,Apx-Crystal公司始终将可持续发展作为企业的核心价值观之一。公司积极履行社会责任,关注环境保护和公益事业。在生产过程中,公司采用环保材料和节能技术,降低能耗和排放;在员工福利方面,公司注重员工培训和职业发展,为员工提供良好的工作环境和福利待遇;在社会公益方面,公司积极参与捐资助学、扶贫济困等公益活动,回馈社会。这些举措不仅提升了企业的社会形象,也为公司的长期发展奠定了坚实的基础。

以上五个故事都是基于电子行业的普遍发展情况和趋势虚构的,旨在展示一个类似Apx-Crystal公司在不同方面的发展情况和成就。请注意,这些故事并非基于真实事件或数据,因此可能与实际情况存在差异。

Electroswitch公司的发展小趣事

随着市场竞争的加剧,Electroswitch意识到仅仅依靠产品质量已经不足以赢得市场。因此,公司开始注重提升服务质量,为客户提供更加全面和专业的支持。通过加强售前咨询、售后服务以及技术支持等方面的投入,Electroswitch成功赢得了客户的信任和忠诚。这也使得公司在电子行业中的地位得到了进一步提升。

Daito Communication Apparatus Co Ltd公司的发展小趣事

随着微电子学的快速发展,电子设备对元器件的要求也越来越高。Daito公司敏锐地捕捉到了这一市场趋势,决定对保险丝进行进一步的创新。在1995年,他们成功开发出了适用于电路板安装的高精度小型报警保险丝。这一产品的推出,不仅满足了市场对小型化、高精度保险丝的需求,也进一步巩固了Daito公司在电子行业中的领先地位。

随后,Daito公司又针对微电子学的进一步发展,推出了可以连续自动安装的方形微型保险丝。这一产品的推出,大大提高了生产效率,降低了成本,同时也为客户提供了更加便捷的使用体验。近年来,随着面安装技术的兴起,Daito公司又迅速推出了适用于面安装技术的片状保险丝,再次展示了他们在电子行业中的创新实力。

请注意,由于篇幅限制,以上仅为两个故事示例。如果需要更多故事,可以进一步深入研究和探索Daito公司在电子行业中的发展历程和创新实践。

Capar Components Corp公司的发展小趣事

作为一家有社会责任感的企业,Capar Components Corp积极参与公益事业,回馈社会。公司定期组织员工参与社区服务活动,帮助困难群体解决实际问题。此外,公司还设立了奖学金和助学金,支持教育事业的发展。这些举措不仅彰显了公司的社会责任感,也为公司树立了良好的企业形象。


这些故事是基于一个虚构的电子行业公司背景编写的,您可以根据Capar Components Corp的实际情况进行调整和修改,以使其更符合该公司的历史和发展轨迹。请注意,由于我无法获取Capar Components Corp的具体信息,这些故事仅为示例性质,并非真实事件。

台湾固锝(GD)公司的发展小趣事
对于需要低噪声的应用场景,应选择低噪声的放大器芯片,并合理设计电路以减少噪声。

问答坊 | AI 解惑

CodeWarrior 10.0

CodeWarrior for Microcontrollers v10.0 Beta同时支持HCS08, RS08, CodeFire V1-V4 http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=CW-MCU10&tid=vancwmcu10 http://www.freescale.com/webapp/sps/site/overview.jsp?code=C ...…

查看全部问答>

最新硬件测试技术

对硬件设计人员和测试人员提高设计测试水平有益。59页的内容包括: 硬件测试概述 硬件测试前准备 硬件测试的种类与操作 硬件测试的级别 可靠性测试 测试问题解决 测试效果评估 硬件测试参考的通信技术标准 测试规范制定 测试人员的培养…

查看全部问答>

如何在WinCE下用EVC连接并操作PC上的SQL Server数据库

很急的,要在PocketPC上开发一个程序,能够连接服务器上的SQLServer 数据库,并获取其中的记录数据进行显示,我查了一下资料,有的说在CE上不能直接连接PC上的数据库,有的说在CE上用SQL CE,然后与PC上的SQL连接,还有的说做个web service,那么究 ...…

查看全部问答>

请问,cc2430串口不能中断接收的问题

cc2430给的样例程序中的串口接收不是中断方式的。我写了一个串口中断方式接收的程序,发现明明收到东西了,可它怎么也不进中断。下面是我的程序,波特率。 void URX0Init(void) {   U0CSR |= UART_ENABLE_RECEIVE;   URX0I ...…

查看全部问答>

Debug 和 Release 编译方式的区别

本文主要包含如下内容:1. Debug 和 Release 编译方式的本质区别2. 哪些情况下 Release 版会出错3. 怎样“调试” Release 版的程序--------------------------------------            关于Debug和Release ...…

查看全部问答>

ise 仿真结果均为高阻态

在用fpga产生正弦波,调用ISE 的ROM 内核,但是在仿真时,结果输出均为高阻态。ROM的数据由MATLAB产生,请问是为什么?? module sincose(data,we,clk,ce,reset,sine     );          input we;//enabl ...…

查看全部问答>

CortexA8+DSP BeagleBoard 板子+扩展板

去年十一月份chipsee购买,基本没用过,九成新,运行Android完美,wifi链接完美。 原价2700,出收价:2300,可淘宝链接:   http://ershou.taobao.com/item.htm?id=14036298782    有诚意的加qq:307799870   板子详 ...…

查看全部问答>

【求助】共享库查找路径被修改导致现在终端命令不可用,如何恢复共享库路径?

昨天为了安装qt的编译环境,对环境变量进行了设置,其中包括共享库的查找路径,本来是应该进行一个临时设置的,但是我当时为了省时间,就在/etc/bash.bashrc里修改了“LD_LIBRARY_PATH”,结果昨晚关机前忘了把这个路径改回来了,导致今天登陆ubunt ...…

查看全部问答>

家用报警器技术分析

  前段时间网上一直有网友爆料:“现在的小偷特别厉害,不到三分钟时间就可以把用户的锁打开进行偷盗。”这一条新闻的爆料,让很多人都担惊受怕。\"锡纸开锁三秒不到\",讲的是如何用锡纸片去开锁。这天新闻在网上很火。由于目前城市内住户主要采 ...…

查看全部问答>

TI 的I2C代码,不出结果,有个点看不懂,求指教

代码如下,不知道为什么开的是RX中断,却用TX中断向量接受,我下到片子里,发现连时钟都没有输出,我用的G2553的LaunchPad//****************************************************************************** //  MSP430G2xx3 Demo - US ...…

查看全部问答>