本站小编为你精心准备了虚拟仪器数据采集系统设计参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
虚拟仪器的出现不仅大大降低实验仪器成本且功能强大。串行总线USB具有高速稳定的传输能力,支持热插拔等特点,采用USB接口总线已经是虚拟仪器技术发展的必然趋势。MSP430F5529单片机集成了AD转换器和USB2.0接口,硬件电路简单,减少了信号干扰,易于实现。传统的USB驱动程序开发难度大。而NI公司的NI-VISAdriverwizard软件可帮助用户快速生成USB驱动文件,开发者无须花费大量精力学习USB协议的细节,便能实现单片机与PC的通信。不过更简单的方法是直接安装TI公司提供的USB_CDC通信驱动文件MSP430_CDC.inf,利用虚拟串口实现USB通信。
1系统硬件组成
系统整个架构如图1所示。MSP430F5529芯片是数据采集模块的核心,该单片机是一种超低功耗的16位混合模拟控制器,内置12位SAR内核的AD转换模块,在没有CPU干预下,该缓冲器允许对16路独立采集而来的ADC信号进行转化和存储。最高采样速度可达200kbps。转换基准电压均可软件选择内部或外部电压源。该单片机内部的基准电压可设置为1.5V或2.5V。信号调理电路应将信号控制在转换基准电压范围内。同时该单片机还集成USB2.0接口模块,其内部SRAM为8K,在使用USB通信时占用2K的SRAM。这样的高度集成使得一个最小单片机系统就构成一个采集卡。用户需注意ADC接地和干扰防范,具体硬件电路参考用户手册即可。
2系统软件组成
系统软件设计主要包括USB固件程序设计,USB驱动程序设计以及LabVIEW软件程序设计三个部分。USB固件程序从功能上分为USB通信和AD数据采集两部分。从最底层开发USB通信程序对不熟悉USB协议的人来讲是不可能完成的任务。参考TI公司官方网站USB开发资源包使问题变得简单,它包含了开发一个基于USB的MSP430项目所需的所有源代码和示例应用程序。开发者可直接套用其框架和USBAPI库函数完成,如果用户使用的是CCS集成开发环境,通过Help-->WelcometoCCS打开欢迎界面,展开MSP430ware,在这里可导入相关例程。
固件开发的另一部分就是AD采集程序的编写。MSP430的AD采集模块功能强大,有四种转化模式:单通道模式,重复单通道模式,序列模式和重复序列模式。本文用6.6端口实现单通道多次转换采集端口,其相关控制寄存器设置语句如下。传统USB驱动开发对于非计算机专业的用户来讲难度很大。但是利用NI-VISA提供的USB驱动程序生成软件使得问题简化。首先打开NI-VISADriverWizard开发向导,根据提示输入USB设备相关信息,主要是VID(USBManufacturerID)和PID(USBModelCode)的正确填写(MSP430F5529的VID为“0x2047”,PID为“0x0400”)。然后将配置好的INF文件安装在Windows环境下,再将USB设备插入主机完成驱动程序的安装。完成后可用NIMAX软件做通信测试,打开NIMAX设备和接口项,发现MSP430F5529支持三种常见设备分别是通信设备类(CDC),人机接口设备类(HID),大容量存储类(MSC),并显示为USBRAW设备。对于USBRAW设备,每个设备可能使用它们自己的通信协议,用户须了解相关USB通信协议,若程序中USB相关参数设置不正确会导致通信错误。还有没有更简单的方法?事实上,对于MSP430F5529的CDC通信,无须用VISA驱动向导生成USB驱动程序。TI公司提供了USB_CDC通信驱动程序文件MSP430_CDC.inf,用户直接安装就可以快速稳定的实现单片机与LabVIEW间的通信。安装完毕,打开windows系统的设备管理器,在端口项目下显示MSP430_F5529_UE_CDC(COMxx),其中xx为串口号。这样的虚拟串口使得用户不需去了解USB协议,而数据的传输却是通过USB接口完成的。
上位机LabVIEW软件程序的编写利用NI-VISA函数按串口通信编写,采用顺序结构:首先添加VISA资源名称控件,配置串口函数,添加VISA打开函数。这样通过串口资源选择和相关参数设置,如波特率、数据位、停止位等,完成初始化VISA设备的过程。然后调用VISA写入函数,向单片机写入控制信息。单片机响应后采集数据并发送。再调用VISA读取函数读入采集的数据。要注意,VISA读取函数前需通过使用VISABytesatSerialPort节点查询当前串口接收缓冲区中的数据字节数。最后使用VISA关闭函数结束会话。图2为LabVIEW读取程序框图。下位机是12位ADC转换模块,每发送两位数据为一个采集点,上位机LabVIEW中需对数据进行变换,才能正确显示。
3结束语
用信号发生器产生一个2V的正弦信号,LabVIEW显示结果正确。该数据采集系统硬件上简单可靠。软件上,利用TI公司提供的USB_CDC通信驱动文件和USB_API库函数,使得不了解USB通信协议的用户也能快速实现与上位机LabVIEW的通信,极大的缩短开发时间。
作者:李飞 单位:泰州学院 江苏省泰州