标题 | USB—4716模块的C#应用编程 |
范文 | 马聪 摘要:USB-4716是研华公司推出的通用数据采集,信号控制模块,性能强大,易上手,支持Labview,VB,VC++,C#等多种编程控制方式。该文结合工作实践介绍使用C#编程语言,Visual Studio开发平台,编写Windows图形界面风格Winform应用程序的一般步骤,方法和注意事项。 关键词:USB4716;C#;Visual Studio;Winform 中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)13-0084-02 随着科技进步,测控系统在自动化系统中的应用越来越广泛,对于一个全新测控系统的研制开发,相比于以往完全重新搭建硬件平台来构建测控系统的设计思路,使用成熟硬件模块与通用软件设计平台更加高效省时,同时这种设计思路也得到越来越多研发人员的青睐。基于模块化设计思路,成熟的硬件平台以及通用软件设计语言的设计理念,本文将介绍一种快速测控系统的设计与实现。 1 平台简介 1.1 硬件平台 1.1.1 USB-4716模块 1)16个单端/8个差分或组合方式模拟量输入通道(ADC:analog to digital converter),16位精度,采样率可达200KS/s; 2)2个模拟量输出通道(DAC:digital to analog converter); 3)8个数字量输出通道(DO:digital output); 4)8个数字量输入通道(DI:digital input); 5)USB通信和供电/支持热插拔/LED指示灯/自动校准功能…… 1.1.2 电脑 1) Window 2000/Windows XP/Windows 7操作系统; 2) 安装Visual Studio 2005(VS)以上版本开发平台。 1.2 软件平台 VS是目前最流行的Windows平台应用程序的集成开发环境。C#是微软公司发布的一种面向对象的高级程序设计语言。 2 软件功能块图 系统分为3大部分,分别是电脑,USB-4716模块以及外设部分,电脑用来编写运行Winform程序,USB-4716是通用数据采集与控制模块,外设根据应用不同会有所差异。 程序软件分为四大功能模块,如图1。 3 详细软件设计 软件开发流程依次为安装设备驱动,连接设备,打开VS,创建C# Winform应用程序,加载DLL,调用DLL方法编写程序等几个步骤。建议在连接设备之前先安装设备驱动,连接设备之后通过Windows设备管理器查看设备连接情况确保设备连接成功,这样安装会比较顺利。 设备驱动中包含厂商开发的DLL动态链接库,一旦加载完成,程序开发过程中就可以非常方便的调用DLL中的方法函数完成输入输出控制。其中比较常用的控件有:BufferedAiCtrl控件提供连续模拟信号输入方法调用,可设置采样频率;BufferedAoCtrl控件提供连续模拟信号输出控制,可输出波形;InstantAiCtrl控件提供即时模拟输入方法调用;InstantAoCtrl控件提供即时模拟输出方法调用;InstantDiCtrl控件提供即时数字输入方法调用;InstantDoCtrl控件提供即时数字输出方法调用。 3.1 ADC数据采集处理与显示 点击Use Instant AI,选择即时ADC采样模式,点击开始采集一次ADC模拟数据。 点击Use Buffered AI,选择连续采样模式,点击开始,按照设置的采样率连续采集ADC模拟数据,直至收到停止命令。 3.2 DAC模拟量输出控制 点击Use Instant AO,选择即时DAC输出模式,点击开始输出本次设置DAC电压值。 点击Use Buffered AO,选择连续DAC输出模式,点击开始,按照设置的输出频率连续输出设置的DAC电压值,直至收到停止命令。 3.3 数字量输出控制 默认DO数字输出状态为低电平,点击DO端口地址图标,变为蓝色,输出状态更新为高电平输出。 3.4 数字量输入采集与显示 默认DI状态实时更新,在没有外接输入状态下,内部弱上拉配置DI输入为逻辑高电平,一旦接收到物理低电平,即更新显示状态为逻辑低电平。 3.5 源代码示例 以下是C#编写的ADC采样代码,在ADSampling方法中直接调用instantAiCtrl1.Read方法,实现任意通道ADC信号的单次读取,简单易用。 public void ADSampling(int ADCChannel, ref double[] m_dataScaled) { if (instantAiCtrl1.Read(0, ADCChannel, m_dataScaled) != ErrorCode.Success) …… } 4 结束语 通过实际设计开发,我们发现使用标准数据采集与信号控制模块USB-4716,结合VS开发平台,C#编程语言,可以很方便地搭建数据采集与信号控制平台,极大地提高了工作效率,节约了设计开发时间。更重要的是,在更换测试需求后,可以通过简单更改外设配件以及代码移植实现全新测试功能。 参考文献: [1] USB-4716 用户手册——研华科技,2010年2月第一版 [EB/OL].http://downloadt.advantech.com.cn/ProductFile/Downloadfile2/1-HU9ZV3/USB-4716_user_manual(CH)_ed.1.pdf. [2] Windows驱动程序DAQNavi_USB4716_3.2.6.0.exe——研华科技 [EB/OL]. (2015-10-08).http://support.advantech.com.cn/support/DownloadSRDetail_New.aspx?SR_ID=1-FCIIF6&Doc _Source=Download. |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。