C++语言是新一代的以面向对象(OOP)概念为根本的高级程序设计语言,它的面向对象的概念更加符合程序员开发软件的思维习惯,类封装性和模块化的构造非常适合软件的移植和维护,使用C++开发有助于提高软件工程的质量。VC++是美国微软公司利用C++的底层机理开发的新一代编译器,与其它一些C++编译器相同,都是以C++语言为编译对象。VC++在编译速度和代码优化方面,是同类产品的佼佼者,并且绝大多数的软件开发包都提供了对它的接口,这是VC++得到程序员认可的主要原因。对于理工科研究生和一些偏重于数值计算的工程技术人员,为了能够较好的在短期之内完成一个兼具友善界面和稳定的计算内核的程序,利用软件接口技术,可以借助于第三方的函数库。VC++能方便地形成应用软件中所需要的各种用户界面和工具并直接与系统及底层硬件交换数据。用VC++开发的系统具有容易维护升级、界面友好、代码效率高、执行速度快等一系列优点,因此已成为目前应用软件开发中广泛采用的主要工具之一。
MATLAB[11] [13]作为当今世界上应用最为广泛的数学软件,具有非常强大的数值计算、数据分析处理、系统分析、图形显示甚至符号运算的功能。已经在如生物工程,图像处理,语音处理,雷达探空,声纳探水,地震探地,以及控制论,系统论等各个领域得到广泛的应用。它是一个完整的数学平台,在这个平台上,用户只需寥寥数语就可以完成十分复杂的功能,大大提高了工程分析计算、图像处理的效率。但是MATLAB强大的功能只能在它所提供的平台上才能使用,即用户必须在安装MATLAB系统的机器上才能执行*.m文件,而在MATLAB环境下编成的M文件运行较慢,这样当用户需要将在MATLAB下已开发完毕的复杂算法应用到高级语言开发环境下时就带来了问题,将现成的东西集成高级语言开发的程序中还是用高级语言再重新实现一遍,显然大家所期望的是减少工作量,最好能将MATLAB下开发好的程序或函数直接应用到高级语言开发的程序中。文献综述
1.2 发展现状与趋势
1.3 本文主要内容和章节安排
本文介绍了对信号进行高速数据采集、采样,在MATLAB上设计相应的控制程序对高速数据采集卡PCI9812进行控制,对采集到的信号进行传输、处理,并展示出仿真和调试信号处理盒的结果。本文的章节安排:
第一章绪论。
第二章介绍了高速数据采集方面的知识,包括数据采集系统的组成以及其主要特点、功能。
第三章介绍了PCI9812(DAQ板卡,即高速数据采集卡),其中包括PCI9812的基本组成、A/D转换、各种触发方式以及触发方式的应用、数据格式等内容。
第四章介绍了本课题中对数据的采集处理,介绍了PCI9812的驱动,设计的MATLAB程序对PCI9812的控制以及对信号的处理。
第二章 高速数据采集
2.1 数据采集系统[4]
可以将数据采集系统的框图画成图2-1的形式。模拟输入信号,即在时间上与幅值上均连续变化的信号,首先经过一个预采样滤波器,然后由采样器每隔一个采样间隔读出一次数据,再由模数转换器(ADC)量化为二进制数码,即成为计算机可以接受的数字信号。
接着由计算机进行数据处理,经由数模转换器(DAC),将数字信号转换为模拟信号。在次转换过程中,二进制数码首先转换为连续时间脉冲,脉冲之间的空隙则经过“再建平滑滤波器”来填充平滑以恢复成模拟信号。