基于USB的实时数据采集系统设计 毕业论文.doc_第1页
基于USB的实时数据采集系统设计 毕业论文.doc_第2页
基于USB的实时数据采集系统设计 毕业论文.doc_第3页
基于USB的实时数据采集系统设计 毕业论文.doc_第4页
基于USB的实时数据采集系统设计 毕业论文.doc_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于usb的实时数据采集系统设计 摘要 本论文讨论了一种外置的基于通用串行总线(usb)的实时数据采集系统的设计。内容包含该系统基本硬件,数据传输及应用软件的设计。硬件设计采用了优采测控公司的ua301数据采集卡作为数据采集芯片,该卡采用串行式传输,遵循usb1.1协议。其驱动程序完成应用程序与操作系统的usb接口功能,由ua301数据采集卡软盘提供。应用程序完成对外部采集设备进行控制以及从外设获取数据并显示,分析,处理和保存。本采集系统采用usb传输,支持即插即用,使用方便。系统具有多路数据数据采集能力,可完成单通道和三通道模拟信号的采集。usb传输接口可完全满足采集数据实时传送到主机的要求。本采集系统用户软件基于c+ builder可视化集成开发环境开发,能完成要求的数据采集功能,系统界面友好,简洁易用。关键词: 数据采集 通用串行总线(usb) ua301 c+ builderdesign of real-time data collector system based usbabstract a design of out-placed real-time data collect system with universal serial bus is discussed in this thesis. it includes system basic hardware、data transmission and design of application program. a ua301 data collect card product by addatech corp. serves as an external data collect equipment, adopting serial data transfer and keeping to usb1.1 protocol. device driver task of usb afford by its floppy disk, servers as interface between application program and usb operation system. application program implement controlling of external device and gathering、displaying、analyzing、disposing、and keeping data. this system data transmission uses serial mode, supports plugging and playing and utilized convenient. the system has ability of multi-channel data collection, and also can perform single channel or tri-channel in 32 routes single-end collecting. the usb interface can suffice the requirement of speed data transmission. the user software of this system designed based on c+ builder visual integration design environment ,can complete the abilities of requested data collection. the system has friendly interface and operated simply.key word: data collector system universal serial bus ua301 c+ builder 目 录摘要1目录3第一章 概述51.1数据采集技术引言51.2 通用串型总线(usb)传输技术优点51.3数据采集技术的分类及本课题采用方案61.4论文研究内容和目的6第二章 usb技术原理简介72.1 usb总线的性能及特点72.2 usb总线的数据流模型82.2.1 usb系统的结构82.2.2 usb的数据流92.3 usb事务处理102.4 usb设备框架112.4.1设备状态112.4.2 usb设备的操作12第三章 ua301型a/d采集器123.1主要功能特点及技术指标123.2 a/d 数采卡硬件连接及其驱动133.4 ua301编程函数简介14第四章 ua301数据采集系统软件设计154.1系统功能设计154.2设计效果说明154.3总体设计与概要说明174.4 系统界面设计184.4.1启动窗体设计184.4.2主界面设计194.4.2.1 主界面菜单设计204.4.2.2 主界面工具按钮设计224.4.2.3 状态栏设计224.4.3 辅助窗体界面设计234.5 功能模块实现264.5.1系统设置程序模块264.5.1.1系统采样周期设置模块264.5.1.2系统采样参数设置模块274.5.2数据采集实现模块284.5.2.1系统配置和初始化模块284.5.2.2主界面功能键模块29结论37致谢38参考文献39第一章 概 述1.1数据采集技术引言 电子技术是这半个世纪以来发展最迅速,应用最广泛的技术学科之一。特别是随着大规模集成电路和计算机技术的飞速发展,数字技术渗透到各个技术领域,各种以数字技术为基础的装置、系统层出不穷,例如,数字仪表、数字控制、数字通讯,数字电视等等。但是自然界中绝大多数物理信号是模拟信号,所以,要想利用数字技术对这些信号进行处理和加工,就必须首先把模拟信号转换成数字信号,然后再把相应的数字信号保存下来,以备进行下一步的处理。如视频信号、音频信号等。由于本世纪是一个信息社会的世纪,也就是一个数字信息的世纪。人们对量化成数字形式的信息需求越来越大。因此近年来数据采集及其应用技术受到人们越来越广泛的关注。 实际上数据采集技术是伴随计算机技术的发展而发展起来的,在计算机诞生之初,计算机的应用领域主要局限于数学计算。并且其性能还不足以进行大规模的数据处理,因此数据采集并未单独成为一门技术而进行研究。但随着科学技术的发展,计算机的性能也随摩尔定律在发展,计算机的应用领域也不再局限于科学计算,而是深入到工业自动化、国防、航天、通信等领域。这就不仅要求把外部模拟量变成数字量,而且要求把数字量保存在一定媒质上,这样就诞生了数据采集这一技术。这一技术起源详细资料请参阅7。1.2 通用串型总线(usb)传输技术优点传统的i/o(输入输出)模式中,外围设备被映像为cpu的i/o地址空间,并被分配一个制定的irq(中断请求)或一个dma信道。这些系统资源被分配给指定的外围设备。外围设备消耗了pc的许多系统资源并使许多系统资源不可实用,并且容易产生冲突,这就造成了许多问题。这些问题涉及到中断请求的分配,i/o地址冲突和设备的灵活性差等。 它将对用户带来很多的不方便。例如,连接不同的设备所需要的不同接口和数据线,扩展卡的安装及配置麻烦,外围设备不能热插拔以及连接器和相关数据线成本较高等等问题。usb作为一种新的解决方案能够克服上述缺点,并能提供新的能力。对于pc用户来说,usb实现了真正的即插即用和热拔插,在多的外设(不超过127个)通过usb集线器就可以实现和计算机的连接。因此,usb技术的提出是基于采用连接技术实现外设的简单连接,达到方便用户、降低成本,扩展pc连接外设的目的,使pc的功能扩展变得非常简单方便,并能最大限度的降低用户对计算机技术的需要,是所有的外设均成为“傻瓜”式设备。对于工业应用来说,usb本身就是一种工业级总线标准,其可靠性等级可以很好的满足工业现场测量控制系统的要求。另外,由于起诉具有的外挂式特点,它可很好的满足工业测量的环境要求、具有抗干扰能力、可抗容易的实现地光电隔离、测量系统的改变和扩展很容易和方便。1.3数据采集技术的分类及本课题采用方案数据采集技术是伴随计算机的发展而发展的。第一种是以单片机为核心的数据采集系统,这种数据采集技术,一般注重数据采集和控制的实时性。除了进行一些简单的数字处理之外,一般不进行大规模的存储、这是由于单片机本身的架构所决定的,而不适合于大量的数据存储。第二种是以计算机为控制核心的数据采集系统,这种数据采集技术根据其传输方式,又分为并行和串行式采集系统。根据安置方式又分为内置和外置式采集系统。外置式采集种数据采集方式不受机箱内电磁辐射的干扰,因此这种数据采集性能稳定,可要求的精度高。见8。数据采集系统将输入的模拟信号转换为数字信号送到微机形成数据文件并进行处理.系统应具有较好的实时性和较高的数据精度及数据完整性,这就要求采集卡a/d转换设备能满足转换精度,转换速率以及抗干扰性能等要求。同时,对a/d转换设备与微机间的数据传输也提出了要求。系统采用usb接口连接微机与数据采集设备,其目的:1.使用方便。可热插拔,且支持pnp(即插即用).2.为pc实时提供数据.3.端口可灵活扩展。可适应不同类型的外设。在外设供电方面具有灵活性.综合上述确定本课题采用外置串行式(usb)采集方案。1.4论文研究内容和目的 本论文涉及数据采集的硬件知识和软件设计。影响数据采集硬件主要因素是a/d转换和数据传输方式。而软件设计要简洁易用。故本文主要研究内容为:一,数据采集设备 包括硬件和软件.要求:采样率100k;数据精度12bit;32路任意单通道采样或连续三通道采样;通过软件设置由用户软件触发;16kb缓冲存储器(fifo);抗干扰性能较好。二,通用串行总线传输(usb) 采用usb1.1标准接口.包括usb接口电路、固件firmware)及usb用户驱动程序.usb接口电路把采集到的数据按照usb协议转换为相应的usb数据格式,通过usb总践传送到主机,并接收主机发送的命令。固件完成数据的接收和发送,并按收到的请求执行操作。三,控制软件 控制软件为用户提供usb数据采集设备的操作界面。用户界面要求美观大方,操作简易。使用者通过pc上的此应用软件对数据采集设备及接口设置工作参数,如采集通道,采集速率以及数据采集的触发等。应用软件还将完成数据预处理,分并能在此基础上实现信号显示、处理与存储等功能。第二章 usb技术原理简介 2.1 usb总线的性能及特点 通用串行总线(usb)在连接pc外围设备方面具有很多优于传统连接的特点.其特性包括:1低成本 为了把外设连接到pc机上,usb提供一种低成本的解决方案。2热插拔 设备连接后由usb自动检刻,并且由软件自动配置,完成后立刻就能使用,不需要用户进行干涉。3单一的连接器类型 usb定义了一种简单的连接器,它可以用来连接任何一个usb设备.多个连接器可以通过usb集线器连接。4127个设备 每个usb总线支特127个设备。5不同的传输速率 usb支待低速(1.5m/s),全速(12m/s)以及高速(48m/s)三种速率。6数据线供电 外围设备能够直接通过数据线进行供电.数据线可提供5v, 100ma-500ma的直流电源.7不需要系统资源 需要地址空间以及中断请求线路。8错误监测和恢复 usb事务处理(transition)包括错误检测机制,确保数据无错传输。9节能 如果连续3ms没有总线活动的话,usb就会自动进挂起状态,处于挂起状态的设备消耗的电流不超过500a。10支持四种类型的传输方式 usb定义了四种不间传愉类型来满足不同设备的需求,类型包括:块传输、同步传翰、中断传输和拉制传输。 usb为设备提供了对多种性能的选择以使设备达到较好的性能价格比,并且能适用于不同系统。表2-1按照数据传输率(usb可达)进行了分类,可以看到,usbi.1包括全速和低速的情况,而告诉是usb2.0提供的特性.总的来说,高速、中速的是要求同步的或大量数据的传输的设备,低速的一般是交互设备。 表2-1 usb 按数据传输率分类2.2 usb总线的数据流模型本节介绍了数据如何在usb系统中传送.2.2.1 usb系统的结构usb提供了主机与所连接的usb设备之间的通信功能。不同层次的实现对usb的有不同要求, usb以分层的方式使不同层次的开发者只常要关心usb相关层次的特性功能细节,而不必掌握从硬件结构到软件系统的所有细节。usb系统的结构即总线拓朴(bus topology),总线拓朴结构包括四个重要的组成部分:主机和设备:usb系统的基础组成部分。物理拓朴结构:描述usb系统中的各组成部分是如何连接起来的。逻挥拓朴结构:描述usb系统中各种组成部分的地位和作用,以及描述从主机和设备的角度观察到的usb系统。客户软件层与应用层的关系:描述从客户软件层看到的应用层的情况,以及从应用层看到的客户软件层的情况。usb主机的逻辑结构包括:usb主机控制器(usb host controller)usb系统软件集合:usb驱动程序,主机控制器的驱动程序,主机软件客户软件usb主机在usb系统中是一个起协调作用的实体,它不仅占有特殊的物理位置,而且对于usb以及连到usb上的设备来说,还负有特殊责任。主机控制所有的对usb的访问.一个usb设备想要访问总线必须由主机给于它使用权.主机还负责监督usb的拓朴结构。一个usb设备的逻辑结构包括usb总线接口usb逻辑设备功能设备总线的物理拓朴结构:usb系统中的设备与主机的连接方式采用的是星形连接,如图2-1,图中的hub是一组usb的连接点,主机中有一个被嵌入的集线器叫根集线器(root hub),主机通过根集线器提供若千个连接点,提供具体应用功能的设备是应用设备。许多不同功能的设备放在一起构成一个复合设备。总线逻辑拓朴结构:在物理结构上,设备通过hub连到主机上,但在逻辑上,主机是直接与各个逻辑设备通信的,就好象它们是直接被连到主机上一样.这个逻样关系如图2-2所示。hub也是逻辑设备。usb系统中的工作都是从逻样角度来看持的,但主机必须对物理结构有了解。 图2-1: usb物理总线的拓扑 图2-2 :usb 逻辑总线的拓扑2.2.2 usb的数据流usb是为主机软件和它的usb应用设备间的通信服务的,对客户与应用间不同的交互,usb设备对数据流有不同的要求.usb允许各种不同的数据流相互独立地进入一个usb设备.每种通信流都采取了某种总线访问方法来完成主机上的软件与设备之间的通信.每个通信流最终到达设备上某个对应的端口.一个usb逻辑设备对usb系统来说就是一个端口集合。端口可以根据它们实现的接口来分类.usb系统软件通过一个缺省的控制通道来管理设备.而客户软件用一系列通道管理接口。这一系列通道的一端为端口,一端为缓冲区.客户软件要求通信数据在主机上的一个缓冲和usb设备上的一个端口之间进行.主机控制器或usb设备(取决于数据传送方向)将数据打包后在usb上传.由主机拉制器(hc)协调何时用总线访问在usb上传递数据。图2-5说明了数据如何在主机侧中的内存缓冲和设备中的端口中传送。详细的端口及通信流介绍请参阅参考文献1。主机上的软件通过一系列的通信流与逻辑设备进行通信。这一系列的通信流是由usb设备的软件和硬件设计时选择的,使设备能传送由usb提供的字符。 图2-3: usb通信流2.3 usb事务处理在usb上的每次传送都是由一些信息包组成的.这些信息包组合起来定义某个事务处理,而某个事务处理又是作为一个大的传送的一部分执行的。事务处理一般由三个阶段(信息包)组成。但是也可以由其中一个、两个或三个阶段组成,由传送类型而定,如表2-2。其详细过程见1。令牌阶段数据包阶段握手包阶段 表2-2: 事务处理的三个阶段令牌包阶段:每个事务处理都从一个令牌阶段开始,它定义了事务处理的类型,当事务处理的目标是一个指定的usb设备时这个阶段还包括设备地址。某些令牌包是独立的,因而没有其它附加的信息包跟随,而另一些令牌包总是跟随有一个到两个附加的信息包。令牌包定义了在usb上进行广播事务处理的类型.所有的事务处理都从一个令牌包开始每个令牌包由它们的包id进行标识。数据包阶段:很多事务处理类型都包括一个数据阶段,该阶段负责运送和传输相关的数据。数据阶段在一个事务处31中可以传输的最大数据包大小是1023字节。但是,允许的最大的数据包大小取决于传送类型;有两种类型的数据包data 0和data1用于支持在发送方和接收方之间的长传输同步。防止传输过程中事务处理丢失。握手阶段:所有的usb传输的实现都要保证能够正确进行数据传送,除了同步传送外,都有握手阶段。握手阶段时数据发送方提供了一个反馈信号,通知发送方数据是否已经被正确地接收到了。如果有错,就要重发.信息包是用来执行所有usb事务处理的机制.表2-3所示是usb信息包基本格式。同步序列包id包特定信息crc校验位包结束标志 表2-3:usb信息包节本格式2.4 usb设备框架usb设备可被划分三层:底层是传送和接收数据包的总线接口。中间层处理总线接口与不同端口之间的数据路由,端口是数据传输的最终的数据源或数据接收端(sink)。最上层的功能由串行总线设备提供,比如硬盘,或数据采集卡。2.4.1设备状态usb设备会响应上行端口(upstream port)传来一个复位(reset)信号进行复位操作。当reset信号完成的时候,usb设备业已复位.转换图2-8所示。 图2-4: usb设备转换图2.4.2 usb设备的操作在整个usb系统中,主机是所有活动的主控方。所有的usb设备通过响应主机的不同请求来实现设备配置,在主机的控制下完成数据的传输。us设备的有以下操作:动态插接与断开、数据传送和电源管理。第三章 ua301型a/d采集器 ua301型a/d采集器是优采公司开发的usb总线数据采集产品, 可与带usb接口的各种台式计算机, 笔记本机, 工控机连接构成高性能的数据采集测量系统. 该产品采用美国新型 12位a/d转换芯片, 设计讲究, 测量精度高, 速度快, 编程简便, 且具有usb设备体积小巧, 连接方便, 无需外接电源, 即插即用, 可带电拔插等特有优点. 可广泛应用于科学实验, 工业测量控制领域。3.1主要功能特点及技术指标 功能特点: 带有程控放大器方便测量小信号 任意设定采样通道数, 可通道自动扫描采集 16k先进先出(fifo)缓冲存储器, 可实现自动数据块采集 软件或定时器触发采样, 可任意设定采样频率 3-16bit数字量i/o 可连续大数据量采集 带dc/dc隔离电源, 精度稳定 小盒式, 小机箱式供应方便使用 丰富的软件支持技术指标: 1.a/d部分 分辩率: 12bit 精度: 优于0.05(满量程) 最高实用采样频率: 100khz 模入通道: 16或32 单端 模入范围: 5v,10 v 程控增益:1、2、4、8、16倍(选装1、2、4、8、16、32、64、128) 输入阻抗: 100m 触发方式: 定时器触发, 软件触发 fifo存储器: 16kb(可扩 23kb) 2.数字量i/o 数字量i/o: 3路(可扩至16路) 可编程输入或输出 ttl电平兼容 3.定时计数器 3通道可编程定时计数起器(8254) 字长: 16bit卡上时钟:6mhz4.软件设备驱动程序和安装程序(.sys .inf)简捷高效的采集函数库(.dll .lib) 3.2 a/d 数采卡硬件连接及其驱动 ua301盒式采集器一端装有一只37芯d型插座, 另一端装有方形usb插座. 使用时, 37芯d型插座接信号; usb插座接usb电缆, 电缆另一端接主机usb插口。37芯d型插座, 定义如图3-1所示: 其中: ch x 为模拟输入通道, d x 数字量i/o线。(a)通道模拟输入型信号插座定义 (b)通道模拟输入型信号插座定义 图31:ua301a/d 卡管角信号定义ua301在windows 98/2000 下工作, 使用时需要安装设备驱动程序. 一台计算机在第一次连接ua301时需要人工安装设备驱动程序, 以后再连接ua301时设备驱动程序会自动安装.ua301数采卡随卡附送ua300驱动软盘,可直接使用。3.3 ua301编程函数简介ua301可使用各种windows编程工具编程, 如:c+ builder, vc+, vb, delphi, bc+. 等。 而且随板提供专用的动态连接库ua300. dll。编程方便。在此动态连接库中提供了许多简洁高效的采集和控制函数, 支持ua301采集器的各种功能, 用户可简单方便地调用这些函数完成各种数据采集工作. 动态连接库ua300. dll提供的函数如下:1. openua300 打开ua301 设备2. closeua300 关闭ua301 设备3. ssinit 单通道单点采集初始化 4. ssad 单通道单点采集5. mminit 单或多通道多点采集初始化6. readdata 单或多通道多点采集函数的详细说明请参阅此采集卡内附介绍。 第四章 ua301数据采集系统软件设计在明确了用户的需求或软件设定的功能后,下一步的任务就是对未来的软件系统进行设计。软件设计可分为概要设计和详细设计。概要设计的任务是确定软件系统的结构,进行模块划分,确定每个模块的功能,接口以及模块间的调用关系。详细设计的任务是为每个模块设计实现的细节。此外,在概要设计阶段还应对全局数据结构进行设计,详细设计阶段还应对局部数据结构进行设计。软件设计应该遵循软件工程的原则:抽象、模块化、信息隐蔽和模块独立。4.1系统功能设计几乎所有的工程技术领域都会涉及到信号的采集与处理,其信号表现形式有电、磁、机械以及热、光、声等等。信号采集就是采集这些信号对象,对其进行处理。信号处理的目的一般是对信号进行分析、变换、综合、估值与识别等。这里信号的类别有两种:一是连续信号(模拟信号),它的幅度和时间都取连续变量;另一种是数字信号,它的幅度三和时间都取离散值。一般来说,数字信号处理的对象是数字信号而模拟信号处理的对象是模拟信号。但是,如果系统中增加模数转换器和数模转换器,那么,数字信号处理系统也可以处理模拟信号,反之也可行。由于数字信号处理的直接对象是数字信号,处理的方法是数值运算的方式,与模拟信号处理相比具有灵活性、高精度、高稳定性、便于集成和对数字信号存储、运算系统可以获得高性能指标。故本数据采集系统采用数字信号处理的方式并采用软件实现的方法对系统进行设计。本课题设计的用户控制软件(ua301usb数据采集系统)应实现如下功能:1. 对数据采集设备(ua301数据采集卡)设置工作参数。2. 具有数据采集与显示功能。包括单通道采样和多通道采样,定点采样和连续采样,并具有在两种采样方式下均能实现文本显示和图象显示的功能。3. 具有部分数据处理功能。包括诸如采样数据fft谱分析,并可扩展其它数据分析与处理的功能。4. 系统应具有部分可发布应用程序相应功能,如数据存储,系统帮助等等。4.2设计效果说明 本设计软件的数据采集与处理系统运行主界面如图41所示。 图41: 数据采集系统程序主界面 本采集系统操作过程如下:1. 首先打开应用程序,系统进入启动画面,相应如图42所示。点击启动画面即可进入程序主界面,在菜单数据采集的下拉菜单中进行系统设置。其中可以设置系统采样周期和系统采样参数,相应界面如图43所示,设置完毕系统将自动保存这些信息,下次使用将会使用这次的设置作为默认设置。 图42:系统启动界面(a) 系统采样周期设置 (b)系统采样参数设置 图43: 系统设置界面2. 设置完毕就可以进行数据采集了。单击菜单栏上的“数据采集”按钮,则系统自动进入数据采集界面,相应界面如图44所示。 图44:数据采集界面这时候可以进行采集了,采集方式有定点采集和连续采集,在这中间可以进行画面刷新,曲线方式显示或文本方式显示,存储及返回等操作。3. 如果要进行一些数据处理可以点击信号分析按钮,在其中可以进行信号的fft谱分析等。4.3总体设计与概要说明由上述章节已经了解本系统程序的效果,接下来就要设计实现这个系统。该系统的设计需要了解以下几个方面的知识:1 .usb技术原理(包含传输协议)基于usb的数据采集系统,设计时必然要考虑到usb传输技术方面的知识。在论文第二章讲述了这方面的内容。2 .ua301型a/d采集器性能及相关使用方法.详见论文第三章所述。3. c+ builder开发环境本系统采用c+ builder开发环境进行开发,其中涉及到windows消息机制、图形用户界面、外部dll调用等诸多方面的内容。程序设计流程:要实现数据采集和处理的功能,首先必须建立相应的界面,然后按照事件响应的顺序和要实现的程序效果添加代码,实现软件功能。 4.4 系统界面设计本节来开发各个模块的界面和菜单。本系统主要用到五个窗体:启动窗体、主窗体,系统设置(包含系统采样周期设置和系统采样参数设置)窗体、数据显示窗体。接下来就详细介绍这些窗体及其控件属性设置。4.4.1启动窗体设计本小节主要描述本系统用到的启动界面窗体概要实现步骤。启动窗体用于主控窗体的启动之前的显示,一般显示内容比较专业化或标志化,用以标明即将启动的系统涉及的主要方面,设计人以及系统版权标识。本usb采集系统启动界面制作得简单而大方,具体步骤为:新建窗体form1,修改form1的“name”属性为“f_face”,调整form大小,在form1中添加分别添加控件tpanel和timage,调整form大小并修改控件相应属性后载入启动图片,tform 、tpanel 、timage属性修改如表4-1:控件名称修改过的属性 设置f_face(tform)caption欢迎使用positionposcreencenter oncloseformcloseoncreateformcreateonshowformshowpanel1(tpanel)align altopcaption空imageback(timage)align altoponclickimagebackclick 表4-1:启动form中主要属性修改图片image载入方法:在 imageback的picture属性栏点击“”或双击打开图片编辑器,载入设计好的图片,点击“确定”按钮即可将图片载入了。相关设置见2完成后启动画面如图4-2所示。创建本系统启动窗体包含的头文件为:#include #pragma hdrstop#include u_face.h#include u_main.h#include #include #pragma package(smart_init)#pragma resource *.dfm 其中u_main为主体窗体头文件,启动窗体启动后,将出现图31的画面。实现进入主窗口的步骤需要添加一些代码。在imagebackclick函数中添加如下代码:f_face-hide();f_face-refresh();f_face-close();函数实现功能是在窗体上点击任意地点(panel中的背景图片区域),窗体被隐藏和更新并关闭。在formclose函数中添加以下代码:f_main=new tf_main(application);f_main-showmodal();delete f_main;代码实现在启动窗体关闭时执行主窗体f_main,利用窗体showmodal 方法关闭本启动窗口后执行之后的应用程序。4.4.2主界面设计本小节介绍usb采集系统用户主界面的设计。在tf_main中name属性修改为“f_main”,caption属性修改为“欢迎使用ua301 usb数据采集系统 wangjust 工作室出品”。在f_main中放置控件tmainmenu 、toolbar、tpanel和tstatusbar。设计出的主窗体界面如图45所示: 图4-5: 主界面由上图可以看出,设计出的主界面由主菜单,工具栏,显示窗口(容器)以及容器下部的状态栏组成。4.4.2.1 主界面菜单设计菜单由文件、系统设置、数据采集、信号分析预处理以及帮助系统几大模块构成。主菜单下拉在操作中点击可见。其中文件下拉菜单为打开文本数据、打开图表数据、打印预览、打印设置、打印、设置工作目录和退出。系统设置下拉菜单有采样周期和采样参数两项,点击将分别进入两个相应的系统设置窗体。数据采集下拉菜单有定点采集、连续采集开始和连续采集结束。由于这些设定相对简单些,其后的下拉菜单就不一一介绍了。菜单设计相关部分见3。现在给出主菜单main_menu中部分属性的修改表4-2:控件名称修改过的属性设置mf_opentxt(tmenuitem)caption打开数据文件namemf_opentxtonclickbt_opentxtclickmf_prn(tmenuitem)caption打印namemf_prnonclickbt_prnclickmf_quit(tmenuitem)caption退出 namemf_quitonclickmf_quitclickmf_date(tmenuitem)caption采样参数namemf_dataonclickbt_dataclick 表4-2:主菜单main_menu中部分属性的修改在菜单中添加相应的tmainitem,并设置其onclick函数。示例设置方法:在c builder的查看菜单下调出“对象检查器”,点击main_menu文件下拉菜单中的虚线框,在对象检查器将出现“ tmainitem”字样,并且caption属性为空白,如图46(a),现在可以在对象检查器修改这个菜单的属性了,如将caption设置为“退出”,在其后添加“&x”即设置其快捷键为x ,如图46(b),再将name设置为“mf_quit”,在点击对象检查器上的“事件”按钮,将其鼠标事件onclick设置为“mf_quitclick”,如图46(c).双击mf_quitclick就出现“void _fastcall tf_main:mf_quitclick(tobject *sender)”代码框,相应功能代码之后功能模块中给出。 (a) (b) (c) 图46:菜单按钮属性修改示例设计出的主菜单及其下拉菜单示例如图47所示: 图47:主菜单及其下拉菜单示例4.4.2.2 主界面工具按钮设计工具栏加速按钮是在toolbar中添加,工具栏中部分按钮修改过的属性如下表:控件名称修改过的属性设置bt_opentxt(ttoolbutton)imageindex0hint打开文本数据文档namebt_opentxtonclickbt_opentxtclickbt_prnimageindex19hint打印文本信息或曲线图形信息namebt_prnonclickbt_prnclickbt_dataimageindex8hint系统采样参数设置namebt_dataonclickbt_dataclickspeedbutton1captionexitnamespeedbutton1onclickmf_quitclick 表4-3:工具栏中部分按钮修改过的属性由表即可看出,工具加速按钮的onclick事件与其对应的下拉菜单按钮的onclick事件一致。工具栏中每个按钮均设定了与其对应的hint属性,当鼠标移动到按钮上时,将会显示按钮功能,即按钮设定的hint属性。显示示例如图48。本系统工具栏分为五个小部分,分别为:打开文本数据文档和打开实时存储的曲线图形文档,打印机及其页面设置、打印信息预览和打印,系统采样收起设置和系统采样参数设置,开始进行数据采样和进行数据处理,以及帮助主题和exit(退出系统加速键)。 图48:设计出的工具栏按钮及其hint属性显示4.4.2.3 状态栏设计在status_panel(tpanel)中添加状态条控件tstatusbar就可设计程序状态显示拦。状态栏将在程序运行时显示相关信息。本系统状态栏将在操作时显示操作人员姓名,当前状态和登陆时间。状态栏中部分修改过的属性如下表:控件名称修改过的属性设置statusbar(tstatusbar)alignalbottompanels(tstatuspanels)statusbar. panels0stylepstexttext 操作人员姓名bevelpbraisedstatusbar. panels1stylepstexttext空bevelpblowered 表4-4:状态栏中部分修改过的属性设计出的状态栏如图49所示。 图49: 状态栏主显示窗口在刚由启动窗体登入时显示一幅画面,显示系统的专业性以及使系统更加美观。如图41所示。4.4.3 辅助窗体界面设计本系统辅助窗体根据功能所需包含系统设置部分和数据采样部分。前一部分完成采样设置,后一部分完成数据采集和显示。 (a) (b) 图4-10:系统设置辅助窗体界面4.4.3.1系统设置辅助窗体界面系统设置辅助窗体包含两个辅助窗体,它们是系统采样周期设置和系统采样参数设置。如图4-10(a) 和图4-10(b)所示:以采样参数设置窗体的设计为例来说明辅助窗体界面的设计。新建一窗体,修改其“name”属性为“f_data”,“caption”属性为“系统采样参数设置”,调整其大小,添加控件并修改其属性如图410(b)所示。f_data面板上包含一个label控件和两个panel控件。在panel1中添加三个tcspinedit控件,两个tradiobutton控件和一些label控件。在panel 中添加两个tbitbtn控件。分别修改他们的属性,其中部分主要属性修改如下表4-5所示:控件名称修改过的属性设置cs_edit_ch(tcspinedit)increment1maxvalue31minvalue0cs_edit_gain(tcspinedit)increment1maxvalue10minvalue1cs_edit_rate(tcspinedit)increment5maxvalue100minvalue2rb_sch(tradiobutton)caption单通道采样checkedtruetabstoptrue rb_mch(tradiobutton)caption多通道采样checkedfalsetabstopfalse 表4-5:采样参数设置窗体部分主要属性修改图410(a)为系统采样周期设置窗体。本窗体用来设置系统的采样间隔时间和采样长度。由于ua301数据采集卡最高采样频率为100k,故采样时间间隔不得低于0.01毫秒。图410(b)为系统采样周期设置窗体。本窗体用来选择单通道与多通道,并设置采样其实通道、采样频率和放大倍数。其中通道号为0-31.受采集卡频率限制,采样频率不得高于100k。放大倍数可取数值为1、2、4、8等。这些限制条件将在属性设置里进行设置。有关控见使用见3,4。这两个辅助窗体完成后,点击系统设置下拉菜单,可在弹出的对话框中进行设置,两个窗体共同完成设定ua301数据采集参数的功能。4.4.3.2主窗体界面中的数据显示窗口设计在主菜单上将鼠标移到按钮数据采样上即可触发数据采样窗体,本系统数据采集主体触发以及数据显示与处理即在这个窗体中完成。本窗口实际上是主窗体功能实现窗口设计窗体如图4-11: 图4-11: 主界面数据显示功能窗体由图4-11可以看出,为实现预设功能,设计了很多功能按纽,放置了文本显示和曲线显示容器。这里显示了设计所需的主要组件:mainmenu、table、imagelist、openpicturedialog、opendialog、timer、savepicturedialog、savedialog。其中mainmenu 为主菜单控件,即介绍过;table为帮助文档内部控件; imagelist 用于工具蓝图标添加,openpicturedialog 和opendialog控件分别用于弹出打开存储的图像和文本对话框, savepict

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论