ac6602.docx
《ac6602.docx》由会员分享,可在线阅读,更多相关《ac6602.docx(25页珍藏版)》请在冰豆网上搜索。
ac6602
AC6602
AC6602L
使用手册
●16路隔离12位AD
●AC6602支持12路隔离输入/12路隔离输出
wwlab
2006年4月
在开始使用前请仔细阅读下面说明
检查
打开包装请查验如下:
✧AC6602或AC6602L卡一个
✧手册及光盘。
✧DB25插头一套、40芯扁平电缆一条。
安装
关掉PC机电源,将AC6602插入主机的任何一个PCI插槽中并将外部的输入、输出线连好。
如果主机有多套AC系列PCI插卡,请每次只安装一个插卡。
软件驱动安装请查看第3章说明。
保修
本产品自售出之日起一年内,用户遵守储存、运输和使用要求,而产品质量不合要求,凭保修单免费维修。
因违反操作规定和要求而造成损坏的,需缴纳器件费和维修费及相应的运输费用,如果板卡有明显烧毁、烧糊情况原则上不予维修。
如果板卡开箱测试有问题,可以免费维修(限购买板卡10天内)。
目录
一
AC6602说明………………………………………………………………………………………………………………………….
4
1.1AC6602板简介……………………………………………………………………………………………………………………
4
1.2性能参数…………………………………………………………………………………………………………………………
4
二
硬件原理说明…………………………………………………………………………………………………………………………
6
2.1模拟输入部分……………………………………………………………………………………………………………………
6
2.2开关量输入、输出………………………………………………………………………………………………………………
7
三
硬件设置与连接……………………………………………………………………………………………………………………..
8
3.1安装………………………………………………………………………………………………………………………………
8
3.2输入输出插座定义………………………………………………………………………………………………………………
8
3.3配套端子板………………………………………………………………………………………………………………………
9
3.4常用信号连接与处理……………………………………………………………………………………………………………
10
四
AC6602的编程……………………………………………………………………………………………………………………….
11
4.1软件安装与说明…………………………………………………………………………………………………………………
11
4.2接口函数说明……………………………………………………………………………………………………………………
12
4.3VC程序编程说明…………………………………………………………………………………………………………………
14
4.4VB程序编程说明…………………………………………………………………………………………………………………
15
4.5LabVIEW程序编程说明…………………………………………………………………………………………………………
16
4.6Delphi程序编程说明……………………………………………………………………………………………………………
16
五
附录……………………………………………………………………………………………………………………………………
17
5.1AC6602示意图………………………………………………………………………………………………………………….
17
5.2电位器调整………………………………………………………………………………………………………………………
17
5.3AC6602地址译码功能说明………………………………………………………………………………………………………
17
一、AC6602说明
1.1AC6602板简介
AC6602是一款多功能隔离A/D板,AD工作在查询方式,采用PCI总线支持即插即用、无需地址跳线。
AC6602具有16路单端模拟输入、24路隔离开关量(12路输入及12路输出),开关量输出可以驱动继电器。
AC6602采用大规模可编程门阵列设计,提高可靠性。
AC6602L没有开关量输入输出,其他与AC6602相同。
注:
AC6602与AC6602L的区别为:
AC6602L不支持开关量输入输出,其他相同。
以下如果没有特殊声明,以AC6602的名称代替。
应用范围:
⏹慢速直流电压、电流(需要转换板)信号采集。
⏹小型测控、仪表系统。
1.2性能参数:
AD部分
⏹A/D转换器:
100KHz12位A/DADS7816,A/D内置采样保持器。
工作方式:
软件查询。
(windows2000/XP下速度受操作系统限制,速度大约为:
10KHz-15KHz)。
⏹16路单端输入,输入阻抗:
1MΩ,最大输入耐压:
<+12V/-12V,瞬时输入耐压:
-30V-+30V,DB25孔式输入连接器。
⏹输入:
双极性输入范围:
5V,单极性输入范围:
5V、10V。
输入范围软件选择。
对应输入幅度及精度如下:
输入
系统精度
(FSR)
跳字
0-10V
0.1%
1LSB
0-5V
0.1%
1LSB
-5V-+5V
0.1%
1LSB
注:
以上测试为典型数值,温度23度±10度,测试样本1000点。
⏹A/D最大通过率:
70KHz,输入通道建立时间<8uS。
⏹隔离电压:
大于500伏。
⏹AD部分独立隔离。
开关量部分(AC6602L不支持):
⏹24路隔离开关量(2个8位、2个4位),12入、12出。
40脚扁平电缆插座输入、输出。
开关量输出复位后,输出对地为高阻状态。
开关量部分独立隔离。
⏹隔离电压:
大于500伏。
⏹12路隔离输入:
1.输入电压范围5-24伏,输入电流2-12毫安。
2.输入限流电阻2K欧姆。
3.输入为共阴模式。
4.最大输入频率10KHz。
⏹12路隔离输出:
1.与输入共地。
2.12路OC输出(集电极开路输出)。
3.输出下拉电流:
定于100毫安/路。
4.输出速度大于:
10KHz。
5.输出上升或下降时间:
小于50微秒。
系统:
⏹PCI总线,符合PCIV2.1标准,供电:
+5伏。
⏹工作温度:
0-70℃。
⏹板卡尺寸:
12(W)X9(H)(厘米)
⏹AC6602占用64个I/O选通空间(自动分配)。
二、硬件原理说明
AC6602采用CHPCI接口芯片及门阵列作为主控芯片。
门阵列控制模拟输入、采样及开关量。
原理框图如下。
16路模拟输入量程选择
输入
电子A/D门阵列
开关
12DI
12DO
PCI桥PCI总线
2.1模拟输入部分
AC6602具有16路单端模拟输入,通过16:
1电子开关,用户可以通过通道控制寄存器,控制输入16路中的一路到AD转换器进行转换。
一路模拟输入部分的等效输入示意图:
模拟信号由DB25插座输入,经过输入保护电阻R=1K到输入电子开关选择通道,并经过缓冲放大到AD输入。
输入对地的1M下拉电阻,保证输入没有连接时输入近似为“0”。
AD输入可以软件选择三个量程,为:
5/10/±5伏。
对应电压转换为:
5伏:
电压=data*5000/4095.0(mV)
data:
12位采样数据(范围:
0-4095)。
10伏:
电压=data*10000/4095.0(mV)
data:
12位采样数据(范围:
0-4095)。
±5伏:
电压=(data-2048)*5000/2048.0(mV)
data:
12位采样数据(范围:
0-4095)。
2.2开关量输入、输出
开关量输入、输出由板上门阵列直接输入、输出。
输出部分上电为高阻状态。
隔离输出为OC输出,可以转接驱动大电流设备。
12路开关量输入通道表示为:
DI0-DI11。
12路开关量输出通道表示为:
DO0-DO11。
输入部分原理:
输入电压经过2K限流电阻进入光电耦合器,输入到板卡内部。
输出部分原理:
光电耦合器输出与8050功率放大部分构成达林顿输出,输出电流大于100毫安。
三、硬件设置与连接
3.1安装:
首先设置好AC6602的模拟输入范围,关掉PC机电源,将AC6602插入主机的任何一个PCI插槽中并将外部的输入、输出线连好。
如果主机有多套AC系列PCI插卡,请注意并标记插槽的顺序与号码以方便连接与编程。
连接注意事项:
1.注意模拟、开关量的地线必须与外部设备可靠连接。
2.外部的输入电压必须在规定范围之内。
3.输出不允许对地线或外部电源短路,否则会立即烧毁板卡。
4.连接器插头插拔时,必须关闭主机及外部设备的电源。
5.如果需要电流输入,可以配接AC157滤波及I/V转换板。
6.如果现场噪音大,用户可以配接AC157滤波板。
3.2输入输出插座定义
❑P1DB25插座
P1插座负责16路模拟输入的连接。
定义如下:
1.AIN0-AIN15:
对应16路模拟输入通道0-15号。
2.9,22脚:
模拟输入、输出地线。
❑P2开关量输入输出插座
P240线扁平电缆插座连接32路开关量输入、输出。
定义:
7.DI0-DI11:
16路开关量输入通道0-15号。
8.DO0-DO11:
16路开关量输出0-15号。
9.脚:
9,10,19,20,29,30,39,40地线。
10.DI12-DI15,DO12-DO15没用。
3.3配套端子板
AC6602模拟输入可以配接AC157,AC110端子板。
AC157提供:
⏹16路模拟输入的低通滤波
⏹25路螺丝端子接线
⏹可以选装输入I/V变换。
如果需要输入放大,可以选配AC110:
⏹四路模拟放大,倍率100、500倍。
⏹提供冷端补偿,支持热电偶温度校正。
开关量可以配接AC142或AC145端子板
AC142:
⏹40路螺丝端子
⏹DB37或40脚扁平电缆插座。
AC141N:
⏹16路继电器板。
⏹16路7A大功率继电器。
连接:
P1P2
AC157
AC142
AC141N
3.4常用信号连接与处理
❑输出电压
❑开关量输出驱动继电器
四、AC6602的编程
本章介绍驱动的安装、动态链接库函数使用方法以及针对AC6602的软件开发指导。
请用户在编程前,仔细阅读本手册,了解相关信息。
4.1:
软件安装与说明
4.1.1软件说明
AC6602附带光盘中,提供如下内容:
1.说明书。
2.驱动程序,支持win98/win2000/winXP操作系统。
3.MFC、VisaulC++、VisaulBasic编程实例。
4.AC6602测试程序。
注:
由于win98、winNT微软已经不提供支持,不建议使用。
AC6602卡的驱动不支持winNT。
⏹在光盘的\PCI\AC6602\DRIVER目录中包含:
ac6602.inf、ac6602.sys、ac6602.dll、AC6602.LIB、AC6602.h4个文件。
✧AC6602.inf驱动安装文件。
✧AC6602.sys驱动程序。
✧Ac6602.dll动态链接库。
✧AC6602.LIBVC的库文件。
✧AC6602.hVC调用函数的头文件
⏹在光盘的\PCI\AC6602\VC目录中包含:
✧VC的编程例子
✧编程需要的include文件。
✧AC6602.h应用显式调用DLL时的函数声明文件。
⏹在光盘的\PCI\AC6602\VB目录中包含:
✧VB的编程例子
✧VB编程需要的声明模块程序ac6602.bas。
⏹在光盘的\PCI\AC6602\MFC目录中包含:
✧MFC的编程例子
✧Ac6602.h应用显式调用DLL时的函数声明文件
⏹在光盘的\PCI\AC6602\DELPHI目录中包含:
✧DELPHI的编程例子
⏹在光盘的\PCI\AC6602\LABVIEW目录中包含:
✧LABVIEW的例子
⏹AC6602.EXE:
测试程序。
4.1.2驱动安装
安装方法:
1.关闭计算机电源,将AC6602板入一个PCI插槽。
如果有多个AC6602板卡,请每一次安装一个AC6602板卡。
PCI插槽序号最低的卡的设备号为“0”,依次类推设备号为“1、2”。
2.打开计算机电源,启动Windows
3.Windows将会显示找到新硬件,可按找到新硬件向导进行下一步
4.选择搜索适用我的设备的驱动程序,下一步;
5.选择驱动所在目录,进行安装。
(目录:
\PCI\AC6602\driver)
6.按找到新硬件向导的提示进行下一步;
7.Windows将显示完成添加/删除硬件向导,单击完成即可完成安装过程。
8.完成后如果安装第二个AC6602,请关闭计算机电源,插入第二块AC6602插卡,重复上述安装过程。
安装后,程序自动将ac6602.dll动态链接库程序拷贝到windows系统的system32目录中,用户用也可以自己将DLL拷贝到当前工作目录中。
驱动安装完毕后在\控制面板\系统\设备管理中可以找到AC6602卡,察看属性-〉资源,如果出现AC6602的IO地址,表明驱动安装正确。
1.安装完毕后将在设备管理器中出现一个其他设备(其他设备是问号,不表示设备有问题,只是表示系统不知道AC6602板卡是何种设备)。
2.如果需要更新设备驱动,请在硬件设备管理目录下选择AC6602卡-〉按鼠标右键选择属性–〉选择驱动程序–〉选择重新安装驱动程序。
3.当VisaulC++/VisaulBasic例程从CD-ROM复制到硬盘时,属性仍将保持为只读属性,这将影响用户调试程序。
请将属性改为文档属性,这样就可以进行正常的编译、调试工作了。
4.2接口函数说明
本卡以DLL-动态链接库的方式封装了用户在win98/win2000/winXP环境下编程需要的函数。
动态链接库可以被windows环境下的多数编程语言调用,用户只要正确使用调用格式就能正确调用函数。
本手册只提供了VC、VB的调用例子,有关其他语言调用的方法,用户可以参考其他书籍或直接在网上查找。
设备函数
❑打开一个AC6602设备
函数:
HANDLEAC6602_OpenDevice(longDeviceNum)
参数:
✧DeviceNum:
入口参数,AC6602设备号,=0、1、2….,表示第一个、第二个AC6602插卡。
设备号的定义参考驱动安装部分。
✧函数返回值:
卡的操作句柄。
注:
VC中如果句柄不等于INVALID_HANDLE_VALUE,表示正确。
VB中如果句柄不等于&HFFFFFFFF,正确。
❑关闭一个AC6602设备
函数:
longAC6602_CloseDevice(HANDLEhHandle)
功能:
关闭以hHandle打开的AC6602卡。
参数:
✧hHandle:
入口参数,卡的操作句柄。
✧函数返回数值:
0:
成功/-1:
失败。
AD函数
❑对AD一个通道采样
函数:
longAC6602_AD(HANDLEhHandle,longchannel,longgain)
功能:
对通道号为channel的通道采样,并且设置输入范围为gain。
参数:
✧hHandle:
入口参数,卡的操作句柄。
✧channel:
入口参数,=0-15对应AD输入通道0-15号
✧gain:
入口参数,=0、1、2对应设置AD输入范围:
5伏/10伏/±5伏。
✧函数返回数值:
12位采样数据,范围0-4095。
转换电压计算:
AD输入可以软件选择三个量程,为:
5/10/±5伏。
对应电压转换为:
0-5伏:
电压=data*5000/4095.0(mV)
data:
12位采样数据(范围:
0-4095)。
0-10伏:
电压=data*10000/4095.0(mV)
data:
12位采样数据(范围:
0-4095)。
±5伏:
电压=(data-2048)*5000/2048.0(mV)
data:
12位采样数据(范围:
0-4095)。
开关量函数
AC6602具有24路开关量,分为12路输入、12路输出。
❑开关量输入
功能:
读入12路开关量输入通道DI0-DI11。
函数:
longAC6602_DI(HANDLEhHandle)
✧hHandle:
入口参数,卡的操作句柄。
✧函数返回:
出口参数,返回读入的数据,低12位有效。
12位数据(D11-D0)分别对应端口输入DI11-DI0。
❑开关量输出
功能:
设置12位输出数据DO0-DO11。
函数:
longAC6602_DO(HANDLEhHandle,longiodata)
✧hHandle:
入口参数,卡的操作句柄。
✧iodata:
入口参数,要输出的数据。
低12位有效。
12位数据(D11-D0)分别对应输出端口DO11-DO0。
✧函数返回:
出口参数,=0操作成功,其它失败。
4.3:
VC程序编程说明
编程前,请将ac6602.lib及ac6602.h程序拷贝到用户当前目录中。
(需要的文件在\ac6602\driver目录中)
VC编程的基本流程:
1.利用显式调用加载函数。
ac6602.lib、ac6602_lib.h文件必须在当前工作目录中。
方法,程序的开始处加入如下语句:
#pragmacomment(lib,"ac6602.lib")
#include"ac6602.h"
详细可以参考VC目录中的程序,AC6602.H文件包含了需要的函数的声明过程。
2.利用AC6602_OpenDevice函数获得板卡的操作句柄。
3.在退出程序时必须执行如下操作:
利用AC6602_CloseDevice函数关闭句柄
例:
//获得所有AC6602的操作函数
#pragmacomment(lib,"ac6602.lib")
#include"ac6602_lib.h"
HANDLEhDevice=INVALID_HANDLE_VALUE;//硬件操作句柄
Main()
{
//获得AC6602硬件操作句柄
hDevice=AC6602_OpenDevice(0);//创建设备驱动句柄,设备号为0
………………………//用户程序
//读入开关量
intdi_data=AC6602_DI(hDevice);
//退出
AC6602_CloseDevice(hDevice);//关闭操作句柄
}
详细可以参考光盘上的AC6602的VC目录下的例子。
在编程时必须注意,硬件操作句柄HANDLE必须为全局变量或必须传递给有相应硬件操作的函数。
硬件句柄只要在程序启动时打开一次即可,不需要每次打开或关闭。
4.4:
VB程序编程说明
VB编程的基本流程:
1.在工程菜单中选择添加模块,将ac6602.bas模块添加进来(该模块在光盘中\pci\ac6602\vb目录中,应用时将文件拷贝到当前工作目录),此文件为所有函数的声明文件。
2.在模块中定义一个硬件操作句柄,为一个long属性的全局变量,这样可以被用户程序中的所有form调用(例:
ac6602.bas中声明的句柄hd6602)。
3.利用AC6602_OpenDevice函数获得板卡的操作句柄。
在退出程序时必须执行如下操作:
利用AC6602_CloseDevice函数关闭句柄
注:
ac6602.bas模块已经包含了所有必要的6602函数的声明语句。
例:
DIMhd6602aslong
PrivateSubForm_Load()
DIMIaslong
hd6602=AC6602_OpenDevice(0)‘打开设备0号,获得驱动句柄
…………………‘其他操作
EndSub
………………………………………
PrivateSubForm_Unload(CancelAsInteger)
AC6602_CloseDriverhd6602‘关闭驱动
EndSub
注:
VB中如果设备操作句柄不等于&HFFFFFFFF为有效句柄。
4.5:
LabVIEW程序编程说明
本公司生产的所有采集卡的相关接口函数,均以动态链接库的形式提供给用户。
在使用LabVIEW对本公司采集卡进行开发时,只需通过LabVIEW中的CallLibraryFunctionNode节点来调用我们所提供的动态链接库函数即可对硬件进行相关操作。
目前,本公司已将客户在LabVIEW中通过CallLibraryFunctionNode节点调用DLL函数的过程全部编译为SubVI的形式,用户只需在LabVIEW的BlockDiagram中点击右键,选择ALLFunctions->SelectaVI,找到\AC6602(SubVI)目录,将所需SubVI添加到LabVIEW的BlockDiagram中,即可完成对DLL函数的调用。
详见光盘中的LabVIEW例程及《双诺公司采集卡LabVIEW开发手册》。
4.6:
Delphi程序编程说明
在Delphi中调用动态链接库的方式分为静态调用和动态调用,本公司所提供的例程均采用静态调用方式(有关动态调用方式请参见光盘中的《双诺公司采集卡Delphi开发说明》)。
Delphi编程的基本流程:
1.在.pas文件中的implementation处声明动态连接库中的函数。
2.定义一个硬件操作句柄,为一个ulong属性的全局变量。
3.利用AC6602_OpenDevice函数获得板卡的操作句柄。
在退出程序时必须执行如下操作:
利用AC6602_CloseDevice函数关闭句柄
例:
var
hd6602:
ulong;//句柄
…………………
procedureTForm1.FormCreate(Sender:
TObject);
var
i:
ulong;
begin
hd6602:
=AC6602_OpenDevice(0);
end;
…………………………
……………………//其他操作
procedureTForm1.Formdestroy(Sender:
TObject);
begin
AC6602_CloseDevice(hd6602);
end;
end.
注:
Delphi中如果设备操作句柄不等于$FFFFFFFF为有效句柄。
有关用户其他方面的应用请参