




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连海事大学装订线毕 业 论 文二一三年六月基于数据采集卡的动态电阻检测系统 专业班级: 电子信息科学与技术2班 姓 名: 王凯 指导教师: 刘剑桥 信息科学技术学院摘 要目前,国内外PTC元件的应用日益广泛,测试与确定其性能参数意义重大。本文从PTC热敏电阻器测试规范出发,充分利用高速通用串行总线(USB)所具有的传输速度快、支持热插拔、即插即用、易于扩展、占用的系统资源少等优点,将其与传统的数据采集技术相结合,设计实现了一种基于USB的集数据采集、处理显示为一体的数据采集系统。论文重点阐述了系统的整体工作流程,各部分的原理,软件各模块的设计。系统采用USB接口作为PC机与测试仪器的通信端口,用MPS-010602多功能信号采集卡采集模拟信号,简化了硬件电路,降低了成本,提高了系统的抗干扰能力。系统软件以Visual C+作为开发平台,采用MFC可视化编程,根据 PTC 的测试流程,系统提供了友好的测试界面,用户只需简单的设置之后,便可以开始系统的测试,实时准确地对数据进行处理,实现曲线的显示。在数据误差处理中,分析了测试系统中存在的误差源,软件算法做了相应的处理。论文完成的基于USB总线的数据采集系统,为数据的采集提供了一种更有效、更经济、更方便的数据采集方式。关键词:PTC;数据采集;编程;MFCAbstractAt present, the PTC element is used widely at home and abroad, the testing and performance parameters is significant. this article was started from the PTC thermistor test code. The advantages of USB with high-speed ,hot-swappable, plug and play, easily to extend and less system resources were fully used. Then we combined it with traditional data acquisition technology, designed and achieved a system which was based USB technology with data acquisition, processing and display together.In this thesis, the overall workflow of the system, each part of the principle, design of software module were mainly discussed. System uses a USB interface for PC machines and apparatus for communication ports, collects analog signal by MPS-010602 signal acquisition card, so the circuit was simplifyed , expense of the system were reduced, and the anti-disturbing ability was enhanced.C+ was adopted as the programming language and Visual C+ was chosen as the developing platform. According to PTCs testing process, the system provides test-friendly interface, users only need simple settings, then you can start the system test, accurate data in real time, achieve curved display. In data processing, the error sources in the test system were analyzed, software algorithms was also processed properly.In this thesis,the data acquisition system which based on USB bus, provided a more effective, more economical and more convenient way of data collection for data collection.Key words: PTC; data collection; programming MFC目 录 第1章 绪论11.1 背景11.2 意义2第2章 原理32.1测试系统原理框架32.2 MPS-010602多功能USB信号采集卡42.3 数据采集与控制的方式62.3.1 动态链接库与API函数72.3.2 调用DLL有两种方法92.4 板卡提供的DLL文件中用到的函数112.5 热敏电阻的工作原理14第3章 软件设计流程及运行结果173.1 程序界面设计173.2 程序代码设计193.3 热敏电阻阻值采集29第4章 测试结果分析304.1测得数据304.2 误差分析及改进方案314.2.1 主回路采样电阻的误差314.2.2 采集误差31第5章 结论与展望325.1 总结325.2 展望32参 考 文 献33致 谢34II基于数据采集卡的动态电压检测系统基于数据采集卡的动态电压检测系统第1章 绪论1.1 背景数据采集(data acqusition)是获取信息的基本手段,数据采集技术作为信息科学的一个重要分支,是与传感器、信号测量与处理、微型计算机等技术为基础而形成的一门综合应用技术。它研究信息数据的采集、存储、处理及控制等,具有很强的实用性。随着科学技术的发展,数据采集系统得到了越来越广泛的应用,同时人们对数据采集系统的各项技术指标,如:采样率、分辨率、线性度、精度、输入范围、控制方法以及抗干扰能力等提出了越来越高的要求,特别是精度和采样率更是使用者和设计者所共同关注的重要问题,于是,高速及超高速数据采集系统应运而生并且得到了快速发展。今天,数据采集技术己在工业生产和科学技术研究等众多领域中得到了广泛应用并取得了良好效果。现在常用的采集方式是通过数据采集板卡,如A/D卡或422、485等总线板卡,它们一般多是通过ISA或是PCI等内置式接口实现PC机与外围系统之间的通信。内置式插卡容易受到PC机箱内高频信号的干扰影响,从而降低系统的采样精度和稳定性。此外,计算机主板上的插槽个数是有限的,加上仪器电路插卡的安装(必须断电、打开机箱操作)很不方便。更有甚者,在PC机箱内插入的专用插卡必须进行资源重配置,以避免资源冲突,而此项工作专业性很强,往往令人头疼。这些弱点使得他们的应用受到了很大的局限。现在的UART串行口虽然支持外插,但因其速度太慢,远不能适用现今高速设备的发展需求。而通用串行总线(Unveisral Serial Bus,简称USB)使高传输速度、易扩展性、方便的即插即用有机的结合在一起,很好地解决了以上这些冲突,很容易就能实现低成本、高可靠性、多点的数据采集。PTC材料是一种温度敏感性的导电材料,PTC(Positive Temperature Coefficient)即正温度系数,是指材料电阻率随自身温度升高而增大的一种特性1。通常人们所称的PTC材料是特指具有非线性PTC效应的材料,即材料的电阻率在某一定的温度范围内时基本保持不变或仅有很小的变化,而当温度达到材料的特定转变点温度(居里温度)附近时,材料的电阻率会在几度或几十度狭窄的温度范围内发生突变,电阻率迅速增大103109数量级。目前使用的PTC材料主要分为陶瓷基PTC材料和高分子基PTC材料两种类型。陶瓷基PTC材料在1955年由荷兰菲利浦公司的Herman最早发现并公开报道的,经贝尔实验室和日本村田制作所于1961年实用化,现在仍是以BaTiO3基和V3O3基为主。高分子基PTC复合材料是以有机聚合物(大多数为结晶聚合物如聚乙烯、聚丙烯、聚偏氟乙烯和聚环氧乙烷等)为基体,掺入炭黑、石墨或金属粉、金属氧化物等导电填料,经过特殊设计,采用分散复合、层积复合以及形成表面导电膜等方式而制得的一种多相复合高分子导电体。前者起骨架与填料载体的作用,后者起电流通道的作用,受热时聚合物膨胀,碳链断裂形成高阻。它最先由Frydman在1948年首先发现,但当时没有引起人们的重视。直到1966年Kohler报道了聚乙烯-炭黑复合材料具有PTC特性后,才引起人们的广泛关注,工业化高分子基PTC复合材料是20世纪80年代初由美国首先开发成功的2。陶瓷 PTC 热敏电阻器是以钛酸钡为主要成分的高技术半导体功能陶瓷,当温度达到某定值时,其电阻值会显著增加,特别是在居里温度点附近电阻值跃升有 37 个数量级3。虽然高聚物基的PTC材料准变温度低一些,但其成本低及易加工成型,可设计性好等特点是陶瓷基材料所不可代替的。在新产品方面研制出了片式PTC复合元件、多层结构PTC和高可靠性PTC等4。目前我国的PTC加热元件和PTC保护元件基本依靠进口。但中国石油天然气集团公司和不少高校院所已投入力量开发高分子基PTC系列元件5。1.2 意义目前,USB数据采集技术在国外已处于高速发展阶段,尤其是在高速数据传输速度、高实时性、高同步性等方面有雄厚的技术实力,从事USB数据采集开发的企业公司也很多,如DATX公司的DT98346系列产品,美国OceanOptics公司的ADC1000_USB7,NI公司的USB DAQ8卡系列。近两年,USB数据采集开发在国内已经开始起步,并迅速发展,水平不断提高。市场上国内的主要产品有北京优采公司的UA300系列、四川拓普公司的UDAQ、UBOX、UCARD-7等系列。虽然与国外同类产品相比,国内USB数据采集系统性能有一定差距,如大部分产品仍采用USB1.1协议,数据采集频率低,精度和分辨率低,数据处理能力差:存储容量小等等,但是国内各企业、科研机构正积极跟踪国外最新技术,不断提高USB数据采集的研究开发,力争保持国内产品低价位的同时达到国外产品的高品质。PTC 系列热敏电阻应用非常广泛,涉及到许多领域具体表现在以下几个方面:1、在电路控制及传感器中的应用:晶体管温度补偿电路、测温控温电路、电风扇、彩卷冲洗、电热水器、电热毯、日光灯、节能灯、电池充电、变压器、取暖器、彩电、程控交换机等;2、在电热器具中的应用:家用暖风机、暖房机、干燥机 (柜) 、空调、干衣机、干手器、卷发器、电饭煲、暖手器、电熨斗 (烙铁) 、电吹风、复印机、传真机等;3、在汽车中的应用:过载保护装置、混合加热器、低温启动加热器、燃料加热器、蜂窝状加热器、燃油液位指示器、发动机冷却水温度检测表等。目前正处于对PTC陶瓷材料性能的进一步优化和对PTC陶瓷元件应用的进一步推广的阶段,PTC 技术是一种前景十分宽广的新型应用技术9。 仪器仪表是人们对物质世界的信息进行测量、控制及有效利用的基本手段和设备,是信息产业的源头和重要组成部分,“没有测量就没有科学”。现代社会中,仪器仪表的发展水平已成为国家科技水平和综合国力的重要标志之一10。 目前已经存在部分参数综合的PTC测试仪器,但是为了提高测试效率,需要实现仪器的多工位化。本课题研究目的在于充分利用USB总线所具有的即插即用、自供电、自动检测等优点来有效的解决传统数据采集系统的缺陷,动态测量热敏电阻阻值的变化情况。参考目前市场情况和智能仪器的设计要求,本系统以计算机为核心,给出了一种基于USB总线的集数据采集、分析、显示为一体的数据采集系统,开发了专门的应用程序,测试时用户只需设置测试的参数后即可开始系统的测量工作,系统会自动完成余下的测试工作,大大提高了测试效率,提高了仪器的自动化、智能化程度。该系统实现了低成本、高可靠性的数据采集,并且易于携带,可以将数据采集产品模块轻松地带到现场完成数据采集工作。对数据的采集提供了一种更有效、更经济、更方便的数据采集方式。第2章 原理2.1测试系统原理框架根据数据采集系统测试的要求,提出了基于计算机USB口的数据采集系统方案,其原理框图如图2.1 所示。 图2.1 数据采集系统原理框图2.2 MPS-010602多功能USB信号采集卡 所用板卡实物图如下 MPS-010602信号采集卡是一款基于USB总线的多功能信号采集卡,具有16路单端模拟信号采集、4路模拟信号输出、8路数字信号输入/输出、2路比较器、2路计数器及2路PWM输出。可用于传感器信号数据采集与分析、工业现场监测与控制、高等院校科研与教学等多种领域。使用MPS-010602可以将传感器和控制器与计算机结合在一起,利用计算机强大的数据处理能力和灵活的软件编程方式,对信号进行分析、处理、显示与记录,从而用低廉的成本取代多种价格昂贵的专用仪器,并且能通过编程来获得免费的功能升级。先进的设计理念、丰富的硬件功能与简洁的编程方式使MPS-010602成为工业企业和科研机构必备的强大设计工具。MPS-010602采用 USB2.0高速总线接口,支持即插即用和热插拔,是便携式系统用户的最佳选择,可以取代传统仪器与 PCI等接口板卡。MPS-010602 可工作在 Win9X/Me、Win2000/XP 等常用操作系统中,并提供可供VB,VC, C+Builder,Dephi,LabVIEW,Matlab等常用编程语言调用的动态链接库,编程函数接口简单易用,易于编写应用程序。性能指标1、USB总线性能 USB2.0高速总线传输 支持热插拔和即插即用2、模拟信号输入 模拟输入通道:2路单端(同步);4路单端、8路单端、16路单端(多路扫描) 输入端口耐压:0V10V 输入信号量程0V10V(PGA=1)、0V5V(PGA=2)、0V2.5V(PGA=4)、0V1.25V(PGA=8)、0V0.625V(PGA=16) 模拟输入阻抗:40K欧姆 分辨率:12Bit(4096) 分辨力:2.5mV(PGA=1)、1.22mV(PGA=2)、0.6mV(PGA=4)、0.3mV(PGA=8)、0.152mV(PGA=16) 最大总误差:0.2% 可编程增益:1、2、4、8、16 采样时钟:5Ksps-80Ksps内部时钟或外部时钟 3、模拟信号输出 模拟输出通道:4路单端(同步) 模拟输出范围:0-2.5V 模拟输出电流:300微安 分辨率:12Bit(4096) 非线性误差:2LSB 刷新时钟:5Ksps-80Ksps内部时钟或外部时钟 4、数字信号输入/输出 输入/输出通道:8路 输入/输出模式:全输入/全输出/半输入半输出 输入电平:兼容TTL或CMOS 输出电平:CMOS 输入/输出时钟:5Ksps-80Ksps内部时钟或外部时钟 5、比较器 比较器个数:2 输入电压:0-3.3v 响应时间:10微秒 回差电压:正向与反向各2mv 比较器输出:CMOS电平 6、计数器 计数器个数:2 输入电平:TTL或CMOS 计数位:16位(最大65535) 工作时钟:5Ksps-80Ksps内部时钟或外部时钟 7、PWM输出 PWM输出通道:2PWM输出电平:CMOS PWM输出脉宽:8bit或16bit PWM时基:2M或24M PWM状态显示:LED 8、FIFO存储器 FIFO个数:4 存储深度:1K 9、工作温度 0-70应用领域:便携式仪表和测试设备、传感器信号采集与分析、工业控制。软件支持:提供Windows95/98/NT/2000/XP下的驱动程序及DLL文件,并提供LabVIEW编写的应用软件范例程序。2.3 数据采集与控制的方式在Windows环境下使用VC+无法直接实现数据采集与控制功能。要实现数据采集与控制,一般需要编写DLL和ActiveX控件,然后通过VC+的API功能调用和控件调用,实现对模拟量输入的功能。就VC+应用来说,一般厂商都为其数据采集卡提供了丰富的DLL函数和ActiveX控件,以便灵活地实现各种数据采集与控制功能。因此,通过厂商所提供的DLL或ActiveX控件,我们所写的控制程序代码就经过层层的转译,一直到DAQ卡上的缓存器,而检测程序代码则通过相反的管道将状态返回到我们所写的程序里。使用DLL编程较灵活,但实现较复杂,尤其对于中断触发的需求,需要设置多线程同步;使用ActiveX控件则可以用很少的代码实现软件触发、中断触发和DMA的数据采集功能。由于MPS-010602只提供了DLL(DynamicLinkableLibrary,动态链接库)文件,所以只能使用动态链接库(DLL)通过编程来实现模拟电压的采集。2.3.1 动态链接库与API函数MPS-010602采用DLL(DynamicLinkableLibrary,动态链接库)的方式来进行编程驱动。DLL的编制与具体的编程语言及编译器无关,只要遵循约定的DLL接口规范和调用方式,用各种语言编写的DLL都可以相互调用。DLL可以方便的在VC、VB、LabVIEW等语言下被调用,具体方式分别为:VC下调用DLLtypedefvoid(*FUNC)(void); /定义一个函数指针FUNCFunc; /定义一个函数指针变量HINSTANCEhDLL=LoadLibrary(DllTest.dll);/加载dllFunc=(FUNC)GetProcAddress(hDLL,FuncInDLL);/找到dll中的函数Func(); /调用dll里的函数先来阐述一下DLL(Dynamic Linkable Library)的概念,自从微软推出16位的Windows操作系统起,此后每种版本的Windows操作系统都非常依赖于动态链接库(DLL)中的函数和数据,实际上Windows操作系统中几乎所有的内容都由DLL以一种或另外一种形式代表着,例如显示的字体和图标存储在GDI DLL中、显示Windows桌面和处理用户的输入所需要的代码被存储在一个USER DLL中、Windows编程所需要的大量的API函数也被包含在Kernel DLL中。 在Windows操作系统中使用DLL有很多优点,最主要的一点是多个应用程序、甚至是不同语言编写的应用程序可以共享一个DLL文件,真正实现了资源“共享”,大大缩小了应用程序的执行代码,更加有效的利用了内存;使用DLL的另一个优点是DLL文件作为一个单独的程序模块,封装性、独立性好,在软件需要升级的时候,开发人员只需要修改相应的DLL文件就可以了,而且,当DLL中的函数改变后,只要不是参数的改变,程序代码并不需要重新编译。这在编程时十分有用,大大提高了软件开发和维护的效率。 DLL是建立在客户/服务器通信的概念上,包含若干函数、类或资源的库文件,函数和数据被存储在一个DLL(服务器)上并由一个或多个客户导出而使用,这些客户可以是应用程序或者是其它的DLL。DLL库不同于静态库,在静态库情况下,函数和数据被编译进一个二进制文件(通常扩展名为*.LIB),Visual C+的编译器在处理程序代码时将从静态库中恢复这些函数和数据并把他们和应用程序中的其他模块组合在一起生成可执行文件。这个过程称为静态链接,此时因为应用程序所需的全部内容都是从库中复制了出来,所以静态库本身并不需要与可执行文件一起发行。 在动态库的情况下,有两个文件,一个是引入库(.LIB)文件,一个是DLL文件,引入库文件包含被DLL导出的函数的名称和位置,DLL包含实际的函数和数据,应用程序使用LIB文件链接到所需要使用的DLL文件,库中的函数和数据并不复制到可执行文件中,因此在应用程序的可执行文件中,存放的不是被调用的函数代码,而是DLL中所要调用的函数的内存地址,这样当一个或多个应用程序运行是再把程序代码和被调用的函数代码链接起来,从而节省了内存资源。从上面的说明可以看出,DLL和.LIB文件必须随应用程序一起发行,否则应用程序将会产生错误。 微软的Visual C+支持三种DLL,它们分别是Non-MFC Dll(非MFC动态库)、Regular Dll(常规DLL)、Extension Dll(扩展DLL)。Non-MFC DLL指的是不用MFC的类库结构,直接用C语言写的DLL,其导出的函数是标准的C接口,能被非MFC或MFC编写的应用程序所调用。Regular DLL:和下述的Extension Dlls一样,是用MFC类库编写的,它的一个明显的特点是在源文件里有一个继承CWinApp的类(注意:此类DLL虽然从CWinApp派生,但没有消息循环),被导出的函数是C函数、C+类或者C+成员函数(注意不要把术语C+类与MFC的微软基础C+类相混淆),调用常规DLL的应用程序不必是MFC应用程序,只要是能调用类C函数的应用程序就可以,它们可以是在Visual C+、Dephi、Visual Basic、Borland C等编译环境下利用DLL开发应用程序。 常规DLL又可细分成静态链接到MFC和动态链接到MFC上的,这两种常规DLL的区别将在下面介绍。与常规DLL相比,使用扩展DLL用于导出增强MFC基础类的函数或子类,用这种类型的动态链接库,可以用来输出一个从MFC所继承下来的类。 扩展DLL是使用MFC的动态链接版本所创建的,并且它只被用MFC类库所编写的应用程序所调用。例如你已经创建了一个从MFC的CtoolBar类的派生类用于创建一个新的工具栏,为了导出这个类,你必须把它放到一个MFC扩展的DLL中。扩展DLL 和常规DLL不一样,它没有一个从CWinApp继承而来的类的对象,所以,开发人员必须在DLL中的DllMain函数添加初始化代码和结束代码。对动态链接库,我们还需建立如下概念: (1)DLL 的编制与具体的编程语言及编译器无关只要遵循约定的DLL接口规范和调用方式,用各种语言编写的DLL都可以相互调用。譬如Windows提供的系统DLL(其中包括了Windows的API),在任何开发环境中都能被调用,不在乎其是Visual Basic、Visual C+还是Delphi。 (2)动态链接库随处可见我们在Windows目录下的system32文件夹中会看到kernel32.dll、user32.dll和gdi32.dll,windows的大多数API都包含在这些DLL中。kernel32.dll中的函数主要处理内存管理和进程调度;user32.dll中的函数主要控制用户界面;gdi32.dll中的函数则负责图形方面的操作。一般的程序员都用过类似MessageBox的函数,其实它就包含在user32.dll这个动态链接库中。由此可见DLL对我们来说其实并不陌生。(3)VC动态链接库的分类Visual C+支持三种DLL,它们分别是Non-MFC DLL(非MFC动态库)、MFC Regular DLL(MFC规则DLL)、MFC Extension DLL(MFC扩展DLL)。非MFC动态库不采用MFC类库结构,其导出函数为标准的C接口,能被非MFC或MFC编写的应用程序所调用;MFC规则DLL 包含一个继承自CWinApp的类,但其无消息循环;MFC扩展DLL采用MFC的动态链接版本创建,它只能被用MFC类库所编写的应用程序所调用。常用的动态链接库安装在Windows目录下的、随Windows软件包提供的DLL。这些动态链接库中所包含的函数就称为Windows API函数。API函数,即Application Program Interface (应用程序接口),是一系列用C语言编写的函数库,是附带在Windows系统内部的一个极其重要的组成部分。Windows的32位API是一系列很复杂的函数、消息的集合,它可以看成Windows系统为在其下运行的各种开发系统提供的开放式通用功能增强接口,它使编程人员更容易地用不同类型的语言编制出运行在Windows系统上的应用程序。Win32 API包括了1000多个API调用,加上API附带的几百种Windows常量、消息和数据类型结构,是用户用了一系列用于Windows编程的复杂而又有效的工具。2.3.2 调用DLL有两种方法 静态调用和动态调用。 (1).静态调用其步骤如下: 1、 把youApp.DLL拷到你目标工程(需调用youApp.DLL的工程)的Debug目录下; 2、把youApp.lib拷到你目标工程(需调用youApp.DLL的工程)目录下; 3、把youApp.h(包含输出函数的定义)拷到你目标工程(需调用youApp.DLL的工程)目录下;4、打开目标工程选中工程,选择Visual C+的Project主菜单的Settings菜单; 5、执行第4步后,VC将会弹出一个对话框,在对话框的多页显示控件中选择Link页。然后在Object/library modules输入框中输入:youApp.lib;6、选择目标工程Head Files加入:youApp.h文件;7、最后在目标工程(*.cpp,需要调用DLL中的函数)中包含你的:#include youApp.h 注:youApp是DLL的工程名。 (2).动态调用其程序如下。动态调用时只需做静态调用步骤1。void MPS() HINSTANCE hDllInst = LoadLibrary(youApp.DLL); if(hDllInst) typedef DWORD (WINAPI*MYFUNC)(DWORD,DWORD); MYFUNCyouFuntionNameAlias=NULL; / youFuntionNameAlias 函数别名 youFuntionNameAlias= (MYFUNC)GetProcAddress(hDllInst,youFuntionName); / youFuntionName 在DLL中声明的函数名 if(youFuntionNameAlias) youFuntionNameAlias(param1,param2); FreeLibrary(hDllInst); 显式(静态)调用: LIB + DLL + .H,注意.H中dllexport改为dllimport 隐式(动态)调用: DLL + 函数原型声明,先LoadLibrary,再GetProcAddress(即找到DLL中函数的地址),不用后FreeLibrary。2.4 板卡提供的DLL文件中用到的函数externCintSetPara(intSampleRate,intADChannalNumber,int*ADPGAofChannals,intDIOModal,unsignedshortPWM1,unsignedshortPWM2,intComparatorEnable,intExtTrigger,intDeviceNumber)intSetPara函数执行配置采集卡参数的功能。若函数执行成功,返回1;执行失败返回0。intSampleRate:采样率、刷新率等工作时钟频率。此参数为内部时钟频率设定。参数取值范围为5000-80000,小于5000将被设置为5000,大于80000将被设置为80000。若ExtTrigger=0,EX1和EX5对外输出该频率的时钟脉冲;若ExtTrigger=1,只有EX1输出时钟脉冲。对于AD而言,SampleRate的值为总采样率值,实际分配到每个通道上的采样率为SampleRate/(ADChannalNumber/2)。对于DA和DIO而言,SampleRate就是每个通道的工作频率值。intADChannalNumber:模拟输入通道数。ADChannalNumber=2,AD1与AD9分别被配置为两路模拟信号输入,并且为同步采集,其余ADx口无效;ADChannalNumber=4,AD1、AD2、AD9、AD10被配置为四路模拟信号输入,AD1与AD9同步,AD2与AD10同步,相邻通道为切换扫描模式,其余ADx口无效;ADChannalNumber=8,AD1、AD2、AD3、AD4、AD9、AD10、AD11、AD12被配置为八路模拟信号输入,AD1与AD9同步,AD2与AD10同步,AD3与AD11同步,AD4与AD12同步,相邻通道为切换扫描模式,其余ADx口无效;ADChannalNumber=16,所有通道被配置为十六路模拟信号输入,AD1与AD9同步,AD2与AD10同步,AD3与AD11同步,AD4与AD12同步,AD5与AD13同步,AD6与AD14同步,AD7与AD15同步,AD8与AD16同步,相邻通道为切换扫描模式。若给出的ADChannalNumber参数值小于4,则自动配置为2;若给出的ADChannalNumber大于4而小于8,则自动配置为4;若给出的ADChannalNumber大于8而小于16,则自动配置为8;若给出的ADChannalNumber大于16,则自动配置为16。int*ADPGAofChannals:模拟输入增益设置。ADPGAofChannals为一维16元素数组,数组元素依次代表模拟输入1-16通道的增益系数。每个元素的取值为:ADPGAofChannalsi=1,无增益;ADPGAofChannalsi=2,2倍增益;ADPGAofChannalsi=4,4倍增益;ADPGAofChannalsi=8,8倍增益;ADPGAofChannalsi=16,16倍增益。若ADPGAofChannalsi为其他值,则自动设置ADPGAofChannalsi=1。intDIOModal:数字输入/输出端口模式设置。DIOModal=0,D1-D8全部为输入模式;DIOModal=1,D1-D8全部为输出模式;DIOModal=2,D1-D4为输出模式,D5-D8为输入模式;DIOModal=3,D1-D4为输入模式,D5-D8为输出模式。若DIOModal为其他值自动配置DIOModal=0。unsignedshortPWM1:PWM1输出占空比设置。PWM1取值范围为0-65535,其值越大占空比越高。注:若SampleRate大于等于50000,PWM1时基为24M,PWM1输出为16bit循环模式;若SampleRate小于50000,PWM1时基为2M,PWM1输出为8bit循环模式(PWM1的高8位有效)。一般情况下建议使用16位循环模式。unsignedshortPWM2:PWM2输出占空比设置。PWM2取值范围为0-65535,其值越大占空比越高。注:若SampleRate大于等于50000,PWM2时基为24M,PWM2输出为16bit循环模式;若SampleRate小于50000,PWM2时基为2M,PWM2输出为8bit循环模式(PWM2的高8位有效)。一般情况下建议使用16位循环模式。intComparatorEnable:比较器使能。ComparatorEnable=0,比较器结果输出端被禁止,比较器无效;ComparatorEnable=1,比较器输出端被使能,EX4输出比较器1的比较结果,EX8输出比较器2的比较结果。intExtTrigger:外部时钟触发使能。ExtTrigger=0,使用内部时钟触发采集和输出;ExtTrigger为其他值时使用外部时钟触发。一般情况下建议使用内部时钟。若使用内部时钟,则内部时钟将从EX1与EX5输出;若使用外部时钟,则外部时钟从EX5输入,同时内部时钟从EX1输出。可通过该功能同步多块采集卡进行同步采集来扩展通道数。intDeviceNumber:操作所针对的设备号。当有多块采集卡同时连接到计算机时,将按照设备连接到计算机的先后顺序依次分配序号0、1、2、9,该序号将用于对卡进行标识。只有一块卡连接时,默认设备号为0。最多支持同连接10个设备。externCintDataIn(float*VoltageIn1,float*VoltageIn2,unsignedchar*DI,intSampleNumber,intDeviceNumber)intDataIn函数执行模拟信号和数字信号的采集功能。若函数执行成功,返回1;执行失败返回0。float*VoltageIn1:第一组模拟信号输入(AD1-AD8)的数据。VoltageIn1为一个一维数组,其每个元素代表一个采样点的电压值。如VoltageIn1i=1.245,则表示第i个样点对应的电压为1.245V。若采集卡工作在2通道模拟输入模式下,则VoltageIn1中的元素全部代表AD1采集到的数据;若采集卡工作在4通道模拟输入模式下,则VoltageIn1的第一个元素代表AD1采集到的数据,第二个元素代表AD2采集到的数据,第三个元素代表AD1采集到的数据,第四个元素代表AD2采集到的数据以此类推;若采集卡工作在8通道模拟输入模式下,则VoltageIn1的第一个元素代表AD1采集到的数据,第二个元素代表AD2采集到的数据,第三个元素代表AD3采集到的数据,第四个元素代表AD4采集到的数据,第五个元素代表AD1采集到的数据,以此类推;若采集卡工作在16通道模拟输入模式下,则VoltageIn1的第一个元素代表AD1采集到的数据,第二个元素代表AD2采集到的数据,第三个元素代表AD3采集到的数据,第八个元素代表AD8采集到的数据,第九个元素代表AD1采集到的数据,以此类推。若函数执行成功,该数组内数据被自动更新为最新采集到的数据(更新的元素个数由SampleNumber决定);若函数执行失败,该数组内数据无效。VoltageIn1所指向的数组大小应大于SampleNumber的大小。float*VoltageIn2:第二组模拟信号输入(AD9-AD16)的数据。VoltageIn2为一个一维数组,其每个元素代表一个采样点的电压值。如VoltageIn2i=1.245,则表示第i个样点对应的电压为1.245V。若采集卡工作在2通道模拟输入模式下,则VoltageIn1中的元素全部代表AD9采集到的数据;若采集卡工作在4通道模拟输入模式下,则VoltageIn2的第一个元素代表AD9采集到的数据,第二个元素代表AD10采集到的数据,第三个元素代表AD9采集到的数据,第四个元素代表AD10采集到的数据以此类推;若采集卡工作在8通道模拟输入模式下,则VoltageIn2的第一个元素代表AD9采集到的数据,第二个元素代表AD10采集到的数据,第三个元素代表AD11采集到的数据,第四个元素代表AD12采集到的数据,第五个元素代表AD9采集到的数据,以此类推;若采集卡工作在16通道模拟输入模式下,则VoltageIn2的第一个元素代表AD9采集到的数据,第二个元素代表AD10采集到的数据,第三个元素代表AD11采集到的数据,第八个元素代表AD16采集到的数据,第九个元素代表AD9采集到的数据,以此类推。若函数执行成功,该数组内数据被自动更新为最新采集到的数据(更新的元素个数由SampleNumber决定);若函数执行失败,该数组内数据无效。VoltageIn2所指向的数组大小应大于SampleNumber的大小。unsignedchar*DI:数字信号采集得到的数据。DI为一个一维数组,其每个元素为8位unsignedchar型数据,8个数据位分别代表同一时刻采样得到的8路数字端口电平状态。如:DIi=17,即DI=0b00010001,表示D1和D5为高电平,其余6个端口为低电平。无论数字输入/输出端口工作在输入模式还是输出模式,都可以获得当前Dx端口的电平状态。若函数执行成功,该数组内数据被自动更新为最新采集到的数据(更新的元素个数由SampleNumber决定);若函数执行失败,该数组内数据无效。DI指向的数组大小应大于SampleNumber的大小。intSampleNumber:一次采集的样点个数。该参数决定函数执行一次数据数组中所更新的数据个数,当从采集卡中读到SampleNumber个数据点后函数成功返回。该参数的最小值为128,且必须为128的倍数,否则根据向下就近原则自动配置为128的倍数。该参数无最大限制,但建议一次采集样点不要过大,以免等待时间过长影响程序执行效率。若SampleNumber较大或两次执行采集程序间隔较长,导致出现采集到的数据前段出现杂乱,可以将杂乱部分(一般为256个样点)从有效数据中剔除,或在采集有效数据之前先执行一个256样点的读数操作以清空FIFO的数据缓存。intDeviceNumber:操作所针对的设备号。2.5 热敏电阻的工作原理 热敏电阻就是阻值随温度变化的电阻,检测方法就是直接测其电阻,型号不同,在同一温度下,电阻值也不同。热敏电阻分类的,有做传感器,NTC和PTC都有,阻值可以通过分度表得出。有做安全防护的,NTC的叫防浪涌热敏电阻,常温有几十欧电阻,电流流过时发热,电阻减小。通常在开关电源的输入电容前可以见到,黑色圆片。PTC的叫PTC保险丝,电流流过时发热,阻值增至很大,强迫电流减小,通常也用在电源软启动电路中。NTC负温度系数热敏电阻工作原理NTC是Negative Temperature Coefficient 的缩写,意思是负的温度系数,泛指负温度系数很大的半导体材料或元器件,所谓NTC热敏电阻器就是负温度系数热敏电阻器。它是以锰、钴、镍和铜等金属氧化物为主要材料, 采用陶瓷工艺制造而成的。这些金属氧化物材料都具有半导体性质,因为在导电方式上完全类似锗、硅等半导体材料。温度低时,这些氧化物材料的载流子(电子和空穴)数目少,所以其电阻值较高;随着温度的升高,载流子数目增加,所以电阻值降低。NTC热敏电阻器在室温下的变化范围在1001000000欧姆,温度系数-2%-6.5%。NTC热敏电阻器可广泛应用于温度测量、温度补偿、抑制浪涌电流等场合。PTC正温度系数热敏电阻工作原理PTC是Positive Temperature Coefficient 的缩写,意思是正的温度系数,泛指正温度系数很大的半导体材料或元器件。通常我们提到的PTC是指正温度系数热敏电阻,简称PTC热敏电阻。PTC热敏电阻是一种典型具有温度敏感性的半导体电阻,超过一定的温度(居里温度)时,它的电阻值随着温度的升高呈阶跃性的增高。热敏电阻的一种,正温度系数热敏电阻其电阻值随着PTC热敏电阻。PTC材料的基本特性可用电阻温度特性、伏安特性、电流时间特性和耐压特性来表征,其中电阻温度特性是PTC材料最基本的特性11、12。电阻温度特性又称阻温特性,是指在规定电压下PTC热敏电阻的零功率电阻值与电阻体温度之间的关系。零功率是指在某一规定温度下测量PTC热敏电阻值时,保证功耗低到因功率引起的阻值的变化可以忽略的程度。BaTiO3基PTC热敏电阻器的阻温特性示意曲线如图2.2所示,Rn为额定零功率电阻,Rmin最小零功率电阻,相应温度为Tmin;Rb为开关电阻,相应温度Tb为开关温度,开关温度是电阻产生阶跃增大时的温度,与居里温度相对应;Rmax为最大零功率电阻,相应温度为Tmax。最大电阻与最小电阻之比Rmax/Rmin为升阻比,是表征PTC效应的重
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 老人死后工资管理办法
- 出行安全教育课件
- 渠道管理(第二版)项目三 渠道分析与战略制定(教案)
- 食品安全监控系统-洞察及研究
- 4.1 第1课时 因地制宜的农业分布 同步分层练(含答案)地理人教版八年级上册
- 2025未婚证明(模板)
- 基层岗位面试题及答案解析
- 2025合法的设备租赁合同书
- 2025合同范本:私营企业劳动合同模板
- 2025S店供货合同范本模板
- 文化政策与法规课件
- 社区社群团购新团长培训案例课件
- 外科学教学课件:食管癌
- 露天矿开采技术课件汇总全套ppt完整版课件最全教学教程整套课件全书电子教案
- 部编人教版九年级上册初中历史 第1课 古代埃及 教案(教学设计)
- 钢结构钢梁计算(PPT33张)
- 幼儿教师——散文诗
- 创伤骨折院前急救ppt课件(PPT 50页)
- DB3302_T 1130-2022建筑垃圾运输管理规范(高清-可复制)
- 锚杆、锚索锚固力计算
- 日语话剧展演策划
评论
0/150
提交评论