摘要
随着计算机技术的发展,数据采集在生产生活中具有非常重要的实际意义,它连接了计算机与外部物理世界,被广泛的应用在各个领域。对于一个现场来说,数据的采集、转换和处理在整个系统控制中占有至关重要的地位,然而在实际现场的数据采集中,如何解决这些问题是系统控制的关键所在,各种类型信号采集的难易程度差别很大。实际采集时,噪声会增加采集的难度。因此,如何能够在现场有效采集到所需数据并且设计出适当的数据库对采集到的海量数据进行存储和查询及后期处理是很重要的课题。本课题设计的系统是将模拟电压信号转换为数字信号数据,并被使用 VB 开发的查询系统所查询。
VB 在众多的软件开发工具中,具有可视化的程序设计特色,特别是开发数据库应用系统时具备着简单、易学、数据库访问技术灵活多样等特点,受到广泛应用。对于本课题基于客户/服务器端数据库应用程序的应用而言,VB 是本课题所采用的开发环境首选。
结合现场数据采集的关键点,本课题基于 VB 环境数据采集的提出一种数据采集的有效方案:结合动态链接库 DLL(Dynamic Link Library)实现在现场的数据采集。这种方案利用了 DLL 的应用程序共享代码和资源的特点,能将 DLL 与用户程序分开,用户可以更具需要更新 DLL 而不用频繁改动集成好的可执行的.exe 程序。
关键词:数据采集,动态链接库,数据库接口
ABSTRACT
As the development of the computer technology, data acquisition has great meanings in manufacturing industry and living. Data acquisition connects artificial intelligence with external physical world, it has been widely used in various fields. In every field, data acquisition, conversion and procession play an important role in the controls of a whole system. But In the actual field data collection, how to solve data acquisition, conversion and procession is the key of a control system, because of how to handle the data are differents between different signals. When sampling the data, the noise signal will Increase the difficulty of the real signal acquisition. So how to get the needed data in the field and store it in a rational data base for the query and handle in the future is becoming an important issue.
In this paper, using VB as the development environment, because VB is an visual program which will ease the difficult in design the database.Combining the characteristics of field data collection, this paper presents an efficient program of data collection, which using the Dynamic Link Library to achieve data acquisition. By using the characteristic of sharing the resource and code of DLL, user can design *.exe files without change the code frequently.application code and resource sharing features, can separate DLL and the user program, the user can be more frequent need to update the DLL without having to change a good integrated executable. Exe programs.
Keywords: Data Collection ,DLL,Datebase API
当今,数据采集技术应用范围非常的广阔。通常采集的数据包括多种物理量,比如高度、压力、硬度、温度等,这些数据可以是模拟量,或者是数字量。数据采集通常是选择采样点采样的方式进行的,按照采样周期对所设定的采样点数据进行重复数据采集。在这些采样点所采集到的数据往往一般是瞬时值,不过也可以是特征值。无论是模拟数据值,还是数字数据值,只要是准确的数据测量都是数据采集的基础。
通常在计算机设计领域中,图形或图像的数字化过程也可定义为数据采集,而此时被采集的是几何量(或包括物理量,如灰度)数据等。在工业测量控制领域,需要获取大量的实时现场参数,由于环境恶劣复杂多变,数据采集系统多为工控机来完成,但工控机体积功耗大,安装不方便。嵌入式处理器的高速发展有效地弥补了工控机的不足,尤其是 ARM 处理器。
然而,对于一个现场来说,数据的采集、转换和处理在整个工业控制中占有很大的比重,如何解决这些问题是工业控制的关键所在。现场的数据较特殊性,一般具有多任务、多干扰源、强实时性的特点,在软件中需着重解决这些问题。
Visual Basic(简称 VB)是设计 Windows 应用程序强有力的开发工具,它易学好用,具有丰富的控件以及强大的多任务处理功能。相对于以 C 或 C++语言为基础的等传统开发软件来说,采用 VB 来处理现场数据比较简单方便。虽有这些优点但在工业控制中单纯使用 VB 来实现数据采集还是有些不够直接。本文给出了基于 VB 环境数据采集的一种可行方案:结合动态链接库 DLL(Dynamic Link Library)实现在现场的数据采集。DLL 是 Microsoft Windows 环境下一种可执行文件,编程人员可利用这类文件实现应用程序共享代码和资源,其优点是:DLL 与用户程序分开,用户可以更具需要更新 DLL 而不用频繁改动集成好的可执行的.exe 程序[1]。
当前,随着数据采集被广泛应用于互联网和分布式领域,数据采集领域的形势也随之发生了巨大变化。利用串行、无线通信或红外通信方式,实现对移动数据采集器的应用软件升级,通过制订上位机(PC)与移动数据采集器的通信协议,实现两者之间阻塞式通信交互过程。在工业、工程、生产车间等部门,尤其是在对信息实时性能要求较高或者恶劣的数据采集环境中更突出其应用的必要性。例如:
在工业生产和科学技术研究的各行业中,常常利用 PC 或工控机对各种数据进行采集。现在常用的采集方式是通过数据采集板卡,常用的有 A/D 卡以及 422、485 等总线板卡。卫星数据采集系统是利用航天遥测、遥控、遥监等技术,对航天器远地点进行各种监测,并根据需求进行自动采集,经过卫星传输到数据中心处理后,送给用户使用的应用系统。
数据采集的在多个领域有着十分重要的应用。它是计算机与外部物理世界连接的桥梁。而且总线兼容型数据采集器的数量不断增大。同时,与计算机相兼容的数据采集系统的数量也在增加。大型数据采集仪器和先进设备已经完备,从而将数据采集领域带入了一个全新的时代[2]。
现场数据采集模块运行关键技术是现场实时的温度信号通过热电偶传感器送到模拟输入信号调理模块中,此时将温度(mV)信号调理为标准电压信号(0.5V),再通过模拟/数字转换卡转换为计算机能够处理的数字信号,而后通过 RS485 总线将采集到的数字信号传送到计算机中下一步的数据库处理。
VB 具有硬件平台需求不高,支持 Client/Server 体系结构开发[3]。Visualbasic发展至今,凭借着其面向对象、可视化的一些列程序设计特色,开发数据库应用系统的简单、易学等特点,受到许多程序员的欢迎。VB 的数据库访问技术是数据库应用开发中的关键环节,而 VB 提供给了程序开发人员灵活多样的数据库访问技术,例如:ODBC、OLEDB、DAO、ADO 等,由于上述的这些技术,各有优缺点,所以在实际开发应用的时候,必然涉及到选择适当技术的问题。此外,在确定访问数据库具体应该采用哪种技术的选择也并不容易,通常要考虑:数据源的类型、访问速度要求、功能与代码比、是否要进行底层控制等等因素的制约。在设计数据库应用系统时,面对各种纷乱复杂的技术,往往难于做出最好的选择。
本文介绍了 VB 支持的 ODBC、DAO、OLEDB 和 ADO 等几种数据库访问技术的特点。主要讲述了 VB 程序开发时最常用的三种数据访问接口的对象模型及其原理特性,然后结出它们各自适用场合来分析各种数据访问接口的对象模型的利弊,然后选择最佳的访问接口作为本系统应用的技术手段。
本文首先研究的工作是数据采集系统前端的硬件电压模拟信号采集到转化为数字信号的过程。即传感器对设备的电压信号进行采样、保持,并经多路采集通道,进入 A/D 转换器变成数字信号。然后将该信号送到 FIFO 中。ARM 嵌入式核心开发板是整个系统硬件部分的核心,采集通道的切换、A/D 转换器的启动和停止、转换后的数据在 FIFO 中的存放、中断请求以通知的产生以及 ARM 读取存放在 FIFO 中的数据等等控制过程都是 ARM 嵌入式核心开发板来实现的。而由 ARM核心板读出来的数据,通过以太网接口或者 RS232 发送给后端的数据库系统处理。
本文接着研究的是动态链接库。动态链接是相对于静态链接而言的,是一个可以被其它应用程序共享的程序模块。利用了 DLL 的应用程序共享代码和资源的特点,将前期转化来的数字信号与数据库共享。
最后,本文对 VB 的 ODBC、DAO、OLEDB 和 ADO 等几种数据库访问技术的介绍和对数据采集系统需求加以分析,同时对真个系统进行设计,开发出基于VB 的工业数据采集及其数据库查询系统,并对该平台中的部分功能进行了适当的测试,获得了一定的数据结果。
电压数据采集及查询系统开发:
用户程序主界面
打开设备
开始接收数据
数据接收完毕
数据列表显示
数据曲线图显示
目 录
第一章 绪论
1.1 课题背景和意义
1.2 需要的关键技术
1.3 论文的主要研究工作
1.4 内容组织结构
第二章 开发技术基础
2.1 数据采集介绍
2.2 数据采集技术
2.2.1 数据采集应用的原理
2.2.2 数据采集硬件系统方案
2.3 VB 开发技术
2.3.1 VB 软件介绍
2.3.2 VB 的技术特点
2.4 系统实现的关键技术
2.4.1 动态链接库(DLL)
2.4.2 动态连接库(DLL)技术优点
2.4.3 开放式数据连接(ODBC)技术
2.4.4 对象的链接与嵌入(OLE)技术
2.4.5 数据访问对象(DAO)等技术
2.5 数据库开发技术
2.5.1 数据库的基本结构
2.5.2 数据库技术的主要特点
2.5.3 数据库的结构种类
2.5.4 数据库的数据库模式
2.6 结构化查询语言(SQL
2.7 本章小结
第三章 系统需求与设计
3.1 功能需求
3.1.1 系统架构需求
3.1.2 基本功能的需求
3.2 性能需求
3.2.1 系统的安全需求
3.2.2 系统的性能需求
3.3 VB 实现现场数据采集设计
3.3.1 ARM 系统介绍
3.3.2 现场数据采集
3.4 系统整体设计
3.4.1 通信的帧设计
3.4.2 数据采集系统的设计
3.4.3 数据库查询系统的设计
3.5 利用 VB 调用动态链接库设计
3.6 VB 与数据库的接口设计
3.7 数据库生成
3.8 本章小结
第四章 数据采集和数据库查询系统的实现
4.1 现场数据采集的实现
4.2 建立 DLL 模块定义文件的实现
4.3 动态链接库的调用
4.4 应用程序方法
4.4.1 仪表及其数据通信协议
4.4.2 部分参数的技术说明
4.4.3 源程序代码
4.5 基于 VB 实现对数据库的查询
4.5.1 数据库文件
4.5.2 ADODC 与数据库文件的关系
4.5.3 用 VB6.0 创建查询窗体
4.6 程序实现
4.6.1 显示窗体设置源程序
4.6.2 数据通讯部分的设计
4.6.3 自定义动态连接库(DLL)的建立和调用
4.7 本章小结
第五章 系统测试
5.1 数据接收测试
5.2 数据输出及显示
5.3 本章小结
第六章 结论
致 谢
参考文献
(如您需要查看本篇毕业设计全文,请您联系客服索取)