计算机数据采集系统(利用开发微机数据采集与处理软件系统设计)

中国论文网 发表于2022-11-17 21:33:04 归属于电子论文 本文已影响387 我要投稿 手机版

       中国论文网为大家解读本文的相关内容:                                   

摘要  :结合开发“无线电话务模拟训练系统”Win32版软件的实例,本文详细介绍利用Delphi3.0开发微机数据采集与处理软件系统的方法。


关键词:Delphi ADC DAC

数据采集与处理是计算机应用的一个重要分支,主要研究信息数据的采集、存贮、处理及控制等内容。70年代以来,由于微机技术的快速发展及其在军、民用工程领域的广泛应用,尤其是适于通用微机(如IBM PC系列)使用的板卡级数据采集产品的大量出现,以微机为核心的可编程数据采集与处理技术得到迅速发展。现在的微机,只需在其扩展槽内插上一块数据采集板,并辅以应用软件,即可组成一套微机数据采集与处理系统,实现信息处理和实时控制功能。

 

数据采集与处理技术主要研究模数、数模转换(A/D、D/A)、数据处理等问题,需要计算机硬件电路和软件编程知识。

数据采集:为对温度、压力、流量、速度、位移、振动、噪声等物理量进行测控,首先通过传感器把上述物理量转换成模拟电信号,而后由A/D—D/A板将模拟电信号转换成时间、数值上量化且离散的数字量输入计算机系统。数据采集的核心是A/D转换。

数据处理:计算机根据被测控对象的需要,对采集到的数据进行数学分析运算,处理结果一方面送至显示器、打印机等外设,一方面由A/D—D/A板将数字量转换成模拟电信号输出,对外部物理量进行实时监控。数据处理的核心是数值处理和D/A转换。

2、微机数据采集与处理系统硬件组成

系统主要由被测控对象(设备)、A/D—D/A通道、开关量I/O通道、微机等组成,如图1所示。较复杂的系统包括单片机等多机系统。

图1 微机数据采集与处理系统硬件组成

3、与IBM PC兼容的板卡级数据采集产品

利用IBM PC系列微机及其兼容机I/O通道开放的设计特点,许多厂商已经设计出采用板卡级结构的数据采集产品。这类产品在一块印刷电路板上包括了模拟多路开关(MUX)、采样保持电路(S/H)、模数、数模转换器(ADC、DAC)等部件(有的板型还提供并行I/O接口8255,定时/计数器8254/8254等通用可编程芯片),采用IBM PC总线,可直接插入微机任一扩展槽。本文介绍台湾AXIOM公司生产的AX5412高速数据采集板,以及利用Delphi开发该产品A/D—D/A接口软件的方法。

㈠、预备知识

设采样点数为1024,采样频率为3000HZ,32位定时器采用1MHZ基频率,连接PC机8259的2级中断。

⑴设定采样参数

Point:=1024;//采样点数为1024

Count:=1000000/3000;//采样频率为3000HZ,Count为计数器1和计数器2级联成的

//定时器的计数值

Count1:=2;//设定计数器1的计数值为2

Count2:=Int(Count/2);//计算计数器1的计数值

Low1:=2;//计数器1计数值的低字节

High1:=0;//计数器1计数值的高字节

Low2:=Count2 mod 256;//计数器2计数值的低字节

High2:=Count2/256;//计数器2计数值的高字节

with myPort do

begin

Port[Basea+11]:=0;//增益为1

Port[Basea+2]:=$11H;//通道1单通道连续采样

Port[Basea+15]:=$74H;//选择计数器1为工作计数器,按方式2工作,对计数器进

//行2次读/写操作,先低字节,后高字节

Port[Basea+13]:=Low1;//写计数器1计数值的低字节

Port[Basea+13]:=High1;//写计数器1计数值的高字节

Port[Basea+15]:=$B4H;//选择计数器1为工作计数器,按方式2工作,对计数器进

//行2次读/写操作,先低字节,后高字节

Port[Basea+13]:=Low2;//写计数器2计数值的低字节

Port[Basea+13]:=High2;//写计数器2计数值的高字节

end;

⑵编写中断服务程序

procedure HwInterrupt(Sender: TObject);//中断服务程序

{...}

ImportHigh:=Port[Basea+1];//读A/D转换高8位

ImportLow:=Port[Basea];//读A/D转换高8位

Sample[i]:=ImportHigh*16 or ImportLow/16;//计算12位A/D转换结果,并赋值给采

//样数组

i:=i+1;

Port[Basea+8]:=0;//清中断

end;

⑶设置中断

with myPort do

begin

if ActiveHW then CloseDriver

else

begin

OpenDriver;

if not ActiveHW then

begin

MessageBeep(0);

eBox(‘系统发现指定I/O端口未能成功打开‘,

‘请注意‘,mb_OK or mb_ICONHAND);

end

else

begin

IRQNumber:=2;

SetIRQ;

end;

end;

end;

⑷开中断,进行采样

Port[Basea+9]:=$A3H;//选择定时器触发,连接PC机2级中断,开中断

Port[Basea+8]:=1;//选择定时器触发

i:=0;

while iPoint do ;//等待中断,每中断一次采样一个数据,直至采满Point个点

⑸退出系统前关闭中断

procedure ose(Sender: TObject; var Action: TCloseAction);

begin

{...}

river;

{...}

end;

在实际工作中,读者应根据具体数据采集板的硬件特性,参考上述方法,编写数据采集、分析、输出代码。

参考文献

 

  中国论文网(www.lunwen.net.cn)免费学术期刊论文发表,目录,论文查重入口,本科毕业论文怎么写,职称论文范文,论文摘要,论文文献资料,毕业论文格式,论文检测降重服务。

返回电子论文列表
展开剩余(