USBDMP20A使用手册采集卡.docx
- 文档编号:7954176
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:17
- 大小:98.18KB
USBDMP20A使用手册采集卡.docx
《USBDMP20A使用手册采集卡.docx》由会员分享,可在线阅读,更多相关《USBDMP20A使用手册采集卡.docx(17页珍藏版)》请在冰豆网上搜索。
USBDMP20A使用手册采集卡
USB-DMP20A
使用手册
☐USB1.1兼容USB2.0总线AD数据采集控制模块
☐8路单端/4路双端16位高分辨率AD
☐内置高增益程控放大器,最高量程达0-20mV
☐一路12位DA
☐二路激励恒流源输出
☐开关量:
12路DI/12路DO
☐二路16位计数器
☐程控所有硬件设置,免跳线
Sdjn3k济南三科
2009/5V1.6
注意:
请在开始使用模块前仔细阅读本使用手册
检查
打开包装请查验如下:
✧USB-DMP20A数据采集模块
✧光盘。
✧USB电缆。
✧DB25插头,26Pin排线插头。
安装
将模块USB电缆插入主机的任何一个USB插槽中并将外部的输入、输出线连好。
如果主机有多套USB模块,请每次只安装一个模块。
软件启动安装请察看第3章说明。
保修
本产品自售出之日起一年内,用户遵守储存、运输和使用要求,而产品质量不合要求,凭保修单免费维修。
因违反操作规定和要求而造成损坏的,需缴纳器件费和维修费及相应的运输费用,如果板卡有明显烧毁、烧糊情况原则上不予维修。
如果板卡开箱测试有问题,可以免费维修(限购买模块10天内)。
目录
一、模块说明
◆USB-DMP20A模块简介
◆主要特点及性能
二、原理
◆简介
◆模拟输入及AD数据计算
1、模块输入
2、AD转换数据的计算
◆DA部分原理及数据计算
◆开关量输入/输出部分的原理
◆计数器
◆激励恒流源部分的原理及使用
三、安装与连接
◆安装
◆信号连接注意事项
◆连接器插座的定义
1、J1的定义
2、J2的定义
3、电源插口
4、USB插座
◆常用信号的连接与处理
四、软件
◆软件的安装及说明
◆操作函数说明
1、设备操作函数
2、AD操作函数
3、DA操作函数
4、开关量输入/输出操作函数
5、计数器操作函数
6、激励恒流源操作函数
◆应用程序编程说明
五、附录
◆USB-DMP20A模块示意图
一、USB-DMP20A说明
USB-DMP20A模块简介
USB-DMP20A是一款全速USB1.1兼容USB2.0总线16位高灵敏度、高分辨率数据采集模块,具有8路单端/4路差分模拟输入,8档程控增益放大,全部工作在软件设置模式、一路12位DA输出、开关量12路输入/12路输出、二路16位计数器,二路恒流源(200uA)输出,可直接驱动电阻温度传感器。
采用USB总线,支持即插即用。
USB-DMP20A的所有功能设置都可以通过软件控制,不需要硬件跳线。
主要特点、性能:
AD部分
⏹8路单端/4路差分输入。
输入电压:
±20mV(0-20mV)/±40mV(0-40mV)/±80mV(0-80mV)/±160mV(0-160mV)/±320mV(0-320mV)/±640mV(0-640mV)/±1.28V(0-1.28V)/2.56V(0-2.56V)/,共8档,软件程控。
⏹AD转换器:
16位AD。
⏹通道输入阻抗:
1兆欧姆。
⏹输入插座:
DB25电缆插座(J1)。
⏹系统精度:
±10uV(±0.5%LSB)。
⏹分辨率:
16位。
⏹噪音(峰值):
1uV(20mV输入档)~3.6uV(2.5V输入档).
⏹输入耐电压:
-0.3V~Vc。
(模拟输入电压不得高于工作电压+5V, 否则有烧毁模块的危险)
DA部分
⏹一路12位DA转换器,DB25电缆插座输出(J1)。
⏹输出电压:
0-2.5V。
⏹输出驱动电流:
5mA.
⏹分辨率12位。
⏹输出电压精度:
±1%FS
⏹输出最大失调电压:
±50mV
⏹输出电压建立时间:
小于100微秒。
开关量输入输出
⏹12路输入通道,性能:
1.输入电压:
TTL电平。
2.高电平:
大于2伏。
3.低电平:
小于0.8伏。
4.输入电压范围:
0-5伏
⏹12路输出通道,性能:
1.输出电压:
TTL电平。
2.高电平:
大于2.5伏。
3.低电平:
小于0.5伏。
4.最大输出电流:
2毫安/路。
⏹开关量输出上电自动清零。
⏹插座:
26脚扁平电缆插座
计数器
16位加法计数器,上升边沿有效。
参数:
✧最大输入频率1MHz
✧输入电压:
0-5伏
✧门限电压与开关量输入相同
恒流源输出
二路激励恒流源输出。
可激励驱动电阻温度传感器等纯电阻型传感器。
输出电流:
200uA(微安)
输出精度:
±1%(25℃)
温度飘移:
20ppm/℃
软件支持:
1.操作系统支持winXP
2.开发包:
驱动程序、DLL库函数
3.例程:
MFC、VC、VB、LabVIEW、Delphi
4.测试程序
硬件
⏹总线:
全速USB1.1兼容USB2.0总线标准。
⏹工作电流:
<500mA。
⏹电源:
USB电缆供电,可以选择外部电源供电。
⏹外部电源输入电压:
5伏,±5%。
⏹模块尺寸:
10.8cmx7cmx2.6cm
二、原理说明
⏹模拟输入
DMP20A模拟输入为8路单端(通道1-8),4路差分(通道1-2,3-4,5-6,7-8)输入。
AD输入有8档量程,由软件控制(详细见编程部分说明,分别对应增益选择:
0-7)。
输入范围:
单端:
0-20mV,0-40mV,0-80mV,0-160mV,0-320mV,0-640mV,
0-1.25V,0-2.56V
差分:
±20mV,±40mV,±80mV,±160mV,±±320mV,±640mV,
±1.25V,±2.56V
注:
单端输入每个模拟量输入对应一个通道,差分输入每对差分的正负输入分别对应一个通道,即AIN1为差分输入的正极输入端,AIN2为差分输入的负极输入端,以此类推。
DMP20A的差分输入为单极性差分输入,负输入是:
正极输入端相对负极输入端为“负”,而不是相对“地”为负。
例如:
正极输入端为1.5V,负极输入端为2.5V,即:
1.5-2.5=-1V。
但正、负二输入端均不可输入对“地”为负的电压。
⏹AD转换数据格式与计算
16位转换数据范围为0-65535,对应电压计算:
设:
data为16位转换结果。
Scope为所选择增益档的最大输入范围值(量纲为mV)。
*单端输入AD转换数据计算公式为:
电压[mV]=data*scope[mV]/65535
例如:
0-20mV档:
电压[mV]=data*20[mV]/65535
在该档每个数字量为0.0003051mV,也就是说理论上DMP20A模块的最高分辨率为0.0003051mV。
例如:
0-2.5V档:
电压[mV]=data*2500[mV]/65535
*差分输入AD转换数据计算公式为:
电压[mV]=(data-32767)*scope[mV]/32767
例如:
±20mV档:
电压[mV]=(data-32767)*20[mV]/32767
差分输入时,差模电压零伏对应的数字量data为32767,小于32767的为负电压。
其它各档,以此类推。
DA部分的原理
DMP20A模块提供1路12位DA,输出0-2.5伏,由软件控制。
DA输出上电输出状态为“0”。
设置数据有效范围:
0-4095,对应输出电压与设置数据的计算:
设:
data为12位DA设置数据
输出电压=(data)*2500/4095(mV)
注:
DMP20A模块的DA输出只适应控制静态或准静态对象,不适合输出波形。
因为在windows环境下用户无法精确定时。
开关量部分的原理:
DMP20A模块开关量为12路输入及12路输出接口.
所有的输出口在上电初始时为“0”或低电平。
输入接口为浮空状态,如果没有外部输入,读入数据不确定。
输入或输出的16位数据的低12位(D15-D0)有效,分别对应输入或输出通道11-0号(即0号通道为最低位)。
DMP20A模块开关量为5伏TTL电平,输入可以承受5伏电压,但必须有限流。
输出高于2.8伏(5伏TTL逻辑通常大于2.3伏,就认为为逻辑1)。
计数器
DMP20A模块具有2路16位加法计数器,计数器输入为上升边沿触发.
用户启动计数器后,计数器开始工作,每一个上升脉冲边沿使计数器进行“+1”操作。
激励恒流源
DMP20A模块具有2路激励恒流源输出,可用来驱动电阻温度传感器等纯电阻类传感器。
这可以免去使用变送器代来的成本及麻烦,并可提高系统可靠性及测量精度。
其应用原理图如下:
也可以使用下图用法:
在使用时因测量温度的范围及所选温度电阻(应尽量使用Pt1000)不同,注意选择适当的输入量程档位。
RTD:
电阻温度传感器,如:
Pt100.
注意:
在DMP20A模块内部,二路恒流源与模拟输入的AIN7、AIN8共用通道,因此,在启用恒流源IC1的同时,AIN7就不得再使用,在启用恒流源IC2的同时,AIN8就不得再使用,应分别将其浮空。
DMP20A模块内置有二路对外开放的集成运算放大器A1和A2。
三、安装与连接
安装
关于USB
用户的计算机必须支持USB接口,DMP20A模块支持全速USB1.1兼容USB2.0总线接口标准.一些品牌的笔记本计算机的供电能力有限,如果DMP20A模块因此不能正常工作,请额外配备+5伏电源(注意外部供电电压为5伏±5%),电源要求必须是稳压电源,输出电流大于500毫安。
用户在应用时请尽量采用随机配备的原装电缆。
如果需要单独配备电缆,要选择粗的电缆以满足供电要求。
模块的安装
在第一次使用本模块设备时,需安装系统软件,包括驱动程序、动态链接库DLL,模块设备的安装,请详见软件章节的驱动安装或产品所附光盘下的“设备安装说明”。
信号连接注意事项
⏹模拟输入:
1.输入连接电缆必须用屏蔽电缆,电缆的屏蔽外层最好只在一端连接到地线上。
2.模拟信号的地线应该连接到前端的模拟输出的地线上.
3.差分输入时,用户必须将DMP20A的地线连接到前端信号输出的地线上,如果有多个前端输出,可以在每一个输出的地线与DMP20A的地线之间串联一个1K-10K欧姆的电阻,防止地线之间的电流串扰干扰采集精度。
4.如果前端信号干扰较大,如电力信号采集应用时,最好将PC机的外壳与前端的地线单独连接。
这样可以避免干扰、高压烧毁DMP20A。
5.对于高精度采样,要求前端设备输出有尽量低的输出阻抗及电流驱动能力。
⏹模拟输出:
1.输出不得对外部电源及地线短路。
2.输出的电容负载能力有限(<5mA),注意不能驱动大的电容负载,否则会引起输出不稳定。
如果需要驱动电容、电感负载,应该在输出与被驱动设备间加入一个100-500欧姆的电阻。
⏹开关量:
1.开关量输入电平不能低于-0.3V或高于+5V。
2.输出不得对地线、电源短路。
3.输出如果需要驱动大功率设备,或为防止干扰应该选用适当的端子板,提升负载能力并将输出与设备隔离。
连接器插座定义
DMP20A模块有二个连接器:
J1-DB2525脚、J2-DIP2626脚。
●J1:
对应8路模拟输入、DA输出、计数器输入、激励恒流源IC1和IC2、内置的集成运算放大器A1和A2。
●J2:
对应12路DI、12路DO开关量及一组电源。
注意:
电源的负载不能太大(一般小于100mA).
J1定义:
说明:
❑AIN1-AIN8对应8路单端输入、4路差分输入,如下图。
GND为单、双端输入共同地端。
❑GND也为模拟输出(DA)、恒流源IC1、IC2及计数器TO1、TO2的地线。
❑A1-、A1+、A1OUT分别为内置运放A1的负极输入端、正极输入端和输出端,A2-、A2+、A2OUT分别为内置运放A2的负极输入端、正极输入端和输出端。
❑在连接电缆电线时,请注意插头上标有对应的脚位号码标号。
J2定义:
说明:
❑DI0-DI11对应开关量输入通道0-11号。
❑DO0-DO11对应开关量输出0-11号。
❑一组电源输出,用来提供隔离输入/输出时的模块端电源。
因负载 能力(小于100mA)及抗干扰,不得提供给被隔离的设备端使用。
●电源插座:
输入电源电压+5伏,范围±5%,电流:
大于500毫安。
插座极性如下:
地线
+5伏
注意:
在使用适配电源时,一定要确认电压及极性无误时方可通电使用,以避免烧毁模块。
●USB插座
插座为USB-A型插座,是连接PC计算机的通讯及由计算机供电的接口。
当它通过连线连接到计算机并得到计算机供电时,或使用适配电源时,电源指示灯将点亮。
当与计算机通讯并被计算机正确枚举后USB指示灯将点亮,在与计算机进行数据通信中,该指示灯将闪烁。
配套端子板
DMP20A模块可以根据不同需要配接端子板,可与供应商联系订制。
常用信号的连接、处理。
⏹DA输出驱动感性负载
⏹利用开关量输出驱动继电器
⏹光电隔离输入
注意:
隔离与被隔离端不能同电源、同地。
(注意图中的二个电源符和接地符是不同的)
四、软件
本章介绍驱动的安装、动态链接库函数使用方法以及针对DMP20A模块的软件开发指导。
请用户在编程前,仔细阅读本手册,了解相关信息。
由于软件可能不断更新,请用户察看光盘中的提示。
测试软件及其他软件的说明见光盘目录:
\USB\DMP20A
软件安装与说明
软件说明
DMP20A模块附带光盘中,提供如下内容:
1.说明书。
2.驱动程序,支持winXP操作系统。
3.VisaulC++、MFC、VB、Delphi编程实例。
4.DMP20A模块测试程序。
注:
由于win98、winNT微软已经不提供支持,不建议使用。
DMP20A模块的驱动不支持winNT。
☐在光盘的驱动程序(DRIVER)目录中包含:
DMP20A.inf、DMP20A.sys、DMP20A.dll等文件。
✧DMP20A.inf驱动安装文件。
✧DMP20A.sys驱动程序。
✧DMP20A.dll动态链接库。
✧编程需要的(DMP20Adll.h、DMP20Adll-A.h)头文件。
☐在光盘的编程例程目录中包含:
✧VC的编程例程
✧VB的编程例程
✧LabVIEW的编程例程
✧Delphi的编程例程
☐DMP20A.exe:
测试程序。
驱动安装
安装方法:
1.将DMP20A模块连线插入一个USB插槽,如果有多个DMP20A模块,请每一次安装一个DMP20A模块。
第一次安装的模块的设备号为“0”,第二次安装的模块的设备号为“1”,依次类推。
2.Windows将会显示找到新硬件,可按找到新硬件向导进行下一步
3.选择搜索适用我的设备的驱动程序,下一步;
4.选择驱动所在目录,进行安装。
(目录:
光盘所在盘符\DMP系列\DMP20A\驱动程序)
5.按找到新硬件向导的提示进行下一步;
6.Windows将显示完成添加/删除硬件向导,单击完成即可完成安装过程。
7.完成后如果安装第二个DMP20A模块,插入第二块DMP20A模块,重复上述安装过程。
安装后,程序自动将DMP20A.dll动态链接库程序拷贝到windows系统的system32目录中,用户用也可以自己将DLL拷贝到当前工作目录中。
驱动安装完毕后在\控制面板\系统\设备管理中的USB项目下可以找到DMP20A模块。
驱动安装详细过程也可参见产品所附光盘下的“设备安装说明”。
1.如果需要更新设备驱动,请在硬件设备管理目录下选择DMP20A〉按鼠标右键选择属性–〉选择驱动程序–〉选择重新安装驱动程序。
2.当例程从CD-ROM复制到硬盘时,属性仍将保持为只读属性,这将影响用户调试程序。
请将属性改为文档属性,这样就可以进行正常的编译、调试工作了。
接口函数说明
本卡以DLL-动态链接库的方式封装了用户在winXP环境下编程需要的函数。
动态链接库可以被windows环境下的多数编程语言调用,用户只要正确使用调用格式就能正确调用函数。
本手册提供了VC、VB、LabVIEW的调用例子,有关其他语言调用的方法,用户可以参考光盘所附例程及其他书籍或直接在网上查找。
设备操作函数
❑打开一个DMP20A模块设备
函数:
HANDLEOpenDevice(unsignedchar)
参数:
✧unsignedchar型参数:
入口参数,DMP20A模块设备号,=0、1、2….,表示第一个、第二个DMP20A模块。
设备号的定义参考驱动安装部分。
✧函数返回值:
DMP20A模块的操作句柄。
注:
VC中如果句柄不等于INVALID_HANDLE_VALUE,表示正确。
❑关闭一个DMP20A模块设备
函数:
longCloseDevice(HANDLEhDevice)
功能:
关闭以hDevice打开的DMP20A。
参数:
✧hDevice:
入口参数,DMP20A模块的操作句柄。
✧函数返回数值:
1:
成功/0:
失败。
AD操作函数
❑Read_Ad()
功能:
对一个通道进行采样,并返回返回转换结果。
函数:
longRead_Ad(HANDLEhDevice,UCHARch,UCHARgain, UCHARsidi)
参数:
✧hDevice:
入口参数,卡的操作句柄。
✧ch:
入口参数,单端1-8,差分11-14设置采样的通道号码。
✧gain:
设置AD的输入量程。
单端输入时,0-7分别对应选择的单端输入范围为:
0-20mV、0-40mV、0-80mV、0-160m、0-320mV、0-640mV、0-1.28V、0-2.56V.
双端输入时0-7对应选择的双端输入范围为:
±20mV、±40mV、±80mV、±160m、±320mV、0-640mV、±1.28V、±2.56V.
✧sidi:
1设置输入通道为8路单端模式,0设置输入通道为4路差分输入。
✧函数返回:
出口参数:
小于0失败,大于等于0时为AD转换结果(0-65535)。
DA操作函数
DMP20A模块在上电初始化时,DA输出为0V。
❑Set_Da()
功能:
设置DA输出数据。
函数:
unsignedcharSet_Da(HANDLEhDevice,unsignedintData)
参数:
✧hDevice:
人口参数,DMP20A模块的操作句柄。
✧data:
有效数值为0-4095,控制或设置DA的输出电压。
✧返回:
1成功,0:
失败
开关量操作函数
❑Get_Di()
功能:
读入12位开关量输入。
函数:
unsignedintGet_Di(HANDLEhDevice)
参数:
✧hDevice:
入口参数,DMP20A模块的操作句柄。
✧函数返回:
出口参数,返回读入的数据。
数据的低12位有效(D11-D0)对应输入端口11-0号。
❑Set_Do()
功能:
设置12位开关量数据输出。
函数:
unsignedintSet_Do(HANDLEhDevice,unsignedintDoData)
参数:
✧hDevice:
入口参数,DMP20A模块的操作句柄。
✧DoData:
入口参数,输出的开关量数据。
数据的低12位有效。
12位数据(D11-D0)分别对应端口的12个IO输出口11-0号
✧函数返回:
出口参数,1成功,0:
失败。
计数器操作函数
❑Set_Count()
功能:
启动(或关闭)计数器开始计数。
函数:
unsignedcharSet_Count(HANDLEhDevice,unsignedchar sw,unsignedchar n)
参数:
✧hDevice:
入口参数,DMP20A模块的操作句柄。
✧sw:
启动或关闭计数器,1为启动并开始计数,0为关闭。
✧n:
1为T1,2为T2,
✧函数返回:
1成功,0:
失败。
❑Read_Count()
功能:
读出16位计数器数据。
函数:
unsignedintRead_Count(HANDLEhDevice)
✧hDevice:
入口参数,DMP20A模块的操作句柄。
✧函数返回:
出口参数,大于等于0:
16位计数器数据。
-1错误。
设置激励恒流源
❑Set_Ic()
功能:
设置恒流源的开关。
函数:
unsignedcharSet_Ic(HANDLEhDevice,unsignedcharic,
unsignedcharn)
✧hDevice:
入口参数,DMP20A模块的操作句柄。
✧ic:
是否开启恒流源,1为开启,0为关闭。
(注意:
开启恒流源时对应的AD通道将不得使用)
✧n:
1为开关IC1,2为开关IC2
✧函数返回:
出口参数,1成功,0:
失败。
VC程序编程说明
编程前,将DMP20ADll-A.hDMP20ADll.h,程序拷贝到用户当前目录中。
(需要的文件在光盘中的<驱动程序>目录中)
VC编程的基本流程:
1.利用显式调用加载函数。
DMP20ADll-A.h、DMP20ADll.h文件必须在当前工作目录中。
方法,程序的开始处加入如下语句:
#include”DMP20ADll.h”
gLiDLL=LoadLibrary("DMP20A.dll");
#include”DMP20ADll-A.h”
详细可以参考光盘中的"例程",DMP20ADll-A.h文件包含了需要的函数的声明过程。
2.利用HANDLEOpenDevice()函数获得板卡的操作句柄。
3.在退出程序时必须执行如下操作:
利用CloseDevice(HANDLEhDevice)函数关闭句柄
例:
//获得所有DMP20A的操作函数
#include"DMP20ADll.h"
gLiDLL=LoadLibrary("DMP20A.dll"); 注:
gLiDLL是在DMP20ADll-A.h中定义的。
#include"DMP20ADll-A.h"
HANDLEhDevice=INVALID_HANDLE_VALUE;//定义硬件设备操作句柄
//获得硬件操作句柄
hDevice=OpenDevice(0);//创建设备驱动句柄,设备号为0
………………………//用户程序
//退出
CloseDevice(hDevice);//关闭操作句柄
详细可以参考光盘上的“例程”目录下的例子。
在例程序Dlg.ccp文件中对每步的操作做了较详细的注释.
在编程时必须注意,硬件操作句柄HANDLE必须为全局变量或必须传递给有相应硬件操作的函数。
硬件句柄只要在程序启动时打开一次即可。
VB编程及LabVIEW、Delphi编程说明
VB编程及LabVIEW、Delphi编程请参考产品光盘下的相关例程。
五、附录
DMP20A模块示意图:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- USBDMP20A 使用手册 采集