傅里叶变换光谱仪FTS(Fourier Transform SpeCTRometer)具有高通光能力,多通道探测、高分辨率、光谱范围宽等优点,是光谱分析强有力的工具,常用于宽光谱、复杂光谱或极弱光谱的测量[1]。目前傅里叶变换的光谱测量范围主要集中于红外波段,但是利用光束折叠技术的方法,可以将傅里叶变换的光谱测量范围扩展到可见光波段。与传统文本语言编程相比,LabWindows/CVI编程更适合FTS系统对干涉信号进行采集、加窗、快速傅里叶变换等信号处理方法的需求,进而提高了测量系统干涉图的数据采集、分析和处理能力[2]。
本文设计的基于LabWindows/CVI的傅里叶变换光谱测量数据采集系统,采用了光束折叠的方法,通过参考光对被测光在DSP数据采集系统中进行实时数据采集,并通过PCI转接卡,将结果传到计算机上进行显示处理,充分利用LabWindows/CVI软件的编程优势,进而实现了光谱分辨率的精确计算。
1 系统设计原理
1.1 傅里叶变换原理
傅里叶变换光谱技术(FTS)[3]的研究始于1880年迈克尔逊发明的干涉仪,它依靠动镜移动与固镜之间的不同波长光程差产生干涉图样。利用光束折叠技术,将傅里叶变换光谱测量范围由红外扩展到可见光[4],这是测量光谱的有效方法。测量原理是:采用两路干涉仪——参考光干涉仪和被测光干涉仪,并使之动镜处于同一运动电移台上,如图1所示,当电移台移动时,使用普通迈克尔逊干涉仪的被测光干涉仪产生的光程差为2x下,被测光干涉仪将光束折叠四次,得到的光程差为8x,光电传感单元接收的干涉条纹电流强度I为:
当被测光同样为He-Ne激光时,得到的干涉图的交流成分为:It(x)=It0 cos(4?仔?滓0x)。
因而当光源同为一种单色光源时,得到的干涉图信号是余弦波,并且被测光干涉图的周期是参考光干涉图周期的4倍,即被测光干涉图信号在一个周期内可以包含8个参考光干涉图的过零点。
1.2 采集系统的设计方案
系统的整体框图如图1所示,参考光干涉仪和被测光干涉仪产生的干涉图信号,经过光电传感单元,将光信号转化成电信号,其中参考光干涉仪的电信号经过过零比较器产生时钟脉冲信号,对被测光经传感单元出来的信号在DSP数据采集系统中进行采集,将采集到的数据通过PLX Technology公司提供的PCI接口卡芯片Plx 9052送入计算机,运用LabWindows/CVI软件进行数据处理和显示。
计算机通过MPC08运动控制卡来控制处于同一电移台上参考光干涉仪和被测光干涉仪上动镜的移动状态,从而保证干涉图的实时产生。
2系统硬件构成
硬件系统是由自行研制的DSP数据采集系统和电移台运动控制系统构成。
2.1 DSP数据采集系统
DSP数据采集系统是基于MOTOROLA56001芯片和主控芯片ADSP21020自行研制的多通道数据采集系统,采样频率可达400 kHz,具有12 bit的分辨率。A/D采样触发方式有两种:软件搜索峰值和过零检测。软件搜索峰值以搜索参考信号的最大值和最小值作为对被测光采样的触发时刻;而过零检测方法是检测参考光信号经过零比较电路出来的信号的过零点作为对被测光采样的触发时刻。在DSP数据采集系统内部通过触发时刻信号由IEEE 单精度DSP微处理芯片ADSP21020的双向主机端口来发送命令对被测信号进行采样。将采样的数据存储到DSP56001的SRAM区,由ADSP21020读取通过PCI接口卡芯片PLX9052传送到计算机上的LabWindows/CVI界面显示。
2.2 运动控制系统
干涉仪中动镜的运动状态是由运动控制系统控制的,因而运动控制系统的好坏直接影响干涉图产生的效果。此运动控制系统是由乐创自动化技术有限公司提供的MPC08运动控制卡、北京卓立汉光公司提供的高精度电移台KSA400-11-SF、伺服电机驱动器和交叉压板构成。计算机通过运动控制卡控制电移台的运动状态。在LabWindows/CVI的工程中加入动态链接库(MPC08.lib),在C文件中加上运动控制卡的MPC.h文件即#include “Mpc.h”,就可以直接调用运动控制卡中自带的一些函数来进行控制平移台的运动状态,如开始和停止等。
3 LabWindows/CVI数据采集系统软件设计
3.1 LabWindows/CVI的特点
LabWindows/CVI是美国NI公司开发的32 bit以ANSI C为核心的开发平台,将功能强大、使用灵活的C语言与数据采集、分析和表达等测控专业工具有机结合[5]。其集成化开发平台、交互式编程方法、丰富的面板功能和库函数等特点使LabWindows/CVI自身功能更加强大、应用方便,成为工程技术开发人员建立检测系统、自动测量环境、数据采集系统、过程监控系统首选的软件[6]。
3.2 LabWindows/CVI与硬件系统的通信
只有提供正确的连接DSP数据采集系统的基于PLX9052芯片的转接卡和运动控制卡MPC08的驱动,LabWindows/CVI才可对数据采集系统进行控制。动态链接库的设计主要解决硬件系统与应用程序之间的通信,使用LabWindows/CVI平台开发的应用程序不能直接调用 Windows的 API函数,而在 Windows平台下,应用程序与DSP数据采集设备的通信都要使用 Windows的API函数,因此,两者之间必须建立联系[7]。
常用的调用动态链接库中的方法是在工程中加入动态链接库(.lib)因而直接将运动控制卡的动态链接库MPC08.lib和MPC.h添加到LabWindows/CVI工程文件中,可以实现与运动控制系统的通信。而针对自行设计的DSP数据采集系统的通信,是将PCI接口卡的PLX9052的动态链接库PlxApi.lib、PciApi.h、Plx.h、PlxApi.h、PlxDefinitionCheck.h、PlxError.h、PlxType.h添加到LabWindows/CVI工程文件中,并在C文件中加上#include“PlxApi.h”,来实现与自制DSP数据采集系统之间的通信。
3.3 数据采集系统的界面设计
LabWindows/CVI数据采集系统的界面包含数据获得主界面和数据分析界面。主界面如图2所示,包括参数初始化、运动控制、单次数据采集和分析、N次数据采集和分析、数据显示模块及光程差点搜索六个部分。
[1] [2] 下一页