0
首页 精品范文 数据采集论文

数据采集论文

时间:2022-10-24 13:13:29

开篇:写作不仅是一种记录,更是一种创造,它让我们能够捕捉那些稍纵即逝的灵感,将它们永久地定格在纸上。下面是小编精心整理的12篇数据采集论文,希望这些内容能成为您创作过程中的良师益友,陪伴您不断探索和进步。

数据采集论文

第1篇

CC2530射频模块通过外引24个引脚,包括普通IO引脚P00-P24和电源、复位引脚,实现与电路的连接。电路包括复位电路、开关电路、传感器接口电路、按键指示电路、通信调试电路、电源供电电路。主要电路功能介绍如下:按键指示电路:节点包括Led和蜂鸣器指示电路,用于本节点的指示功能;支持按键功能,进行节点工作模式的转换。开关电路:由三极管电路组成,用于实现传感器供电的通断。通信调试电路:由串口电路和JTAG调试接口组成;串口负责与PC上位机软件的连接,方便修改节点的参数;JTAG接口方便上位机集成环境IAR等调试用。电源供电电路:基本供电由外部USB接口电源5V通过AMS1117转3.3V以及直接电池3.3V供电组成;传感器可由内部3.3V供电,而大于3.3V则由外部电源直接提供。传感器接口电路:包括危化品物流车辆常见的几种信号(0-5V、4-20mA、开关量、数字量)采集电路,可同时接四种类型的传感器。其中数字量主要是DS18B20、DHT11温湿度传感器的输出信号;0-5V主要是气体泄露检测、光敏、真空度传感器的输出信号;4-20mA主要是压力、液位传感器的输出信号;开关量主要是红外、门开关、倾斜传感器的输出信号;信号接入后进行了信号隔离和二极管钳位保护电路。

2节点软件

2.1节点软件架构软件设计部分主要是基于TI公司的Z-stack协议栈进行应用程序的开发。Z-stack协议栈是一款稳定性强的Zigbee开发协议栈,是对Zigbee标准的具体实现。协议栈APL(应用层)包含了主要的API函数接口,方便进行应用开发,从而实现对CC2530芯片硬件资源的控制功能。具体软件框架设计如图4所示。应用层软件主要包括节点间数据的接收/发送、节点内应用层与底层的交互。应用层的数据经过应用层数据帧格式进行封装传给底层继续封装并发送出去;接收数据则由底层先进行解释,再由应用层进行解释,然后进行数据的计算、更新参数等步骤。应用层还可通过API控制接口对底层进行控制与信号、参数获取。

2.2数据帧格式Zigbee采集节点和主节点模块的数据传输格式采用字符串形式进行数据的发送/接收。由于是采用字符进行数据传输,所以可以利用上位机现有的字符串处理函数,很容易校验数据正确性,并从数据帧中提取有效信息,避免因帧长度判断引起的错误。另外,基于Zigbee传输速率较低、传感器数据量小、刷新速度慢的需求等特点尽量减小和限制了协议中各数据域的占位宽度,保证传输效率。具体数据格式如表1所示。帧头:本协议节点间的应用层交互主要有命令帧和数据帧。帧头是辨别命令帧和数据帧而设立的。帧头包括:Set、Get、Ack、Data4种。Set指的是主节点对采集节点进行参数设定,为命令帧,是主节点需要对子节点进行参数配置的时候发送的,子节点收到此类型帧后,发回Ack帧,说明参数设置成功与否;Get指的是其他节点需要获取本节点信息,为命令帧,本节点收到此类型帧后,发送数据帧;Ack指的是节点间通信应答状态帧,SUCC为成功、FAIL为失败;Data指的是数据帧,携带节点参数、传感器采集数据。如表2所示。目的地址:目的地址指的是Zigbee网络中的设备唯一标识的网络ID。为十六进制0X0000-0XFFFF之间值。其中有几个地址值有特殊的含义,0XFFFF表示广播地址;0XFFFE表示所有接收功能打开的设备;0XFFFC表示所有路由设备;其余地址为单一设备的网络地址。网络地址的获得过程是:主节点设备启动成功后,自设定为Zigbee网络的主网络ID0X0000,子节点设备在申请加入成功后获得一个网络身份标志ID。帧类型:在帧头为Set、Get、Data时,此帧位置都有意义,分别代表设置、获取、携带相应类型的节点信息。这些类型包括,传感器数据(Sensor)、节点网络地址(NAdr)、节点网络类型(NType)、采集周期(Cycle)、产品信息(Info)、发送方式(SWay)、功率模式(PMode)、信道选择(Channel)、AD参考电压(ADMode)、默认发送地址(DSAdr)。信道数据:DataChannel796F800\r\n(第11(0x0B)无线信号通道)载荷:载荷是整个通信帧中最重要的部分,包括了通信的主要内容。载荷的具体内容需要根据帧类型来确定。描述如下:(1)帧类型为传感器数据:此时载荷部分包括传感器类型、传感器ID、传感器值。传感器类型包括危化品物流车辆常见信号:1.温度、2.门开关、3.真空度、4.液位、5.压力、6.电压、7.湿度、8.气体、9.红外10.光敏、11.倾斜。传感器ID从0开始分配,表示同种类传感器的使用编号。(2)帧类型为非传感器数据:此时载荷部分携带网络地址、采集周期、发送地址等值。结尾符:本协议结尾符为字符“\r\n”,加上字符串结束符‘\0’,固定为3个字节。结尾符是一帧数据的界定符,上位机软件可以根据此结尾符很快能判定帧的长度,避免一些数据长度判读错误的发生。

2.3软件处理流程Z-stack协议栈基于轮询机制,事件是最小处理单元,每个事件都有相应的处理函数,当事件管理数据结构相应的位置位时,协议栈通过轮询机制就能发现并跳入相对应处理函数进行处理步骤,处理完再返回轮询大循环。这里主要设置了3个事件,分别是串口事件、无线事件和采集事件。串口事件主要处理与上位机的通信;包括根据上位机命令修改本节点参数、接收发送数据等;无线事件主要处理数据的无线发送和接收;采集事件主要处理传感器的数据读入、封装、发送或者接收、解析、转发等。处理流程图如图5所示。

2.4上位机配置软件Zigbee设备逻辑类型包括3种,分别是主节点、路由节点、终端节点。对于不同设备类型的具体处理流程,本设计编写了统一的参数配置服务函数,可通过上位机软件方便进行配置。比如,终端节点配置成具有传感器数据的采集功能,可选择无线和串口两种发送方式,而对于路由器或者协调器,基于功耗考虑,则配置成不具有传感器数据采集功能。通过设计节点上位机配置软件ZigConfig来实现参数的配置,简单的界面操作就能通过串口以上述数据格式下载到节点,并烧写到CC2530的flash中永久保存起来,节点下一次启动将以新的参数启动。上位机配置软件介绍如下:(1)配置软件由QtCreator开发。QtCreator是Qt被Nokia收购后推出的一款新的轻量级跨平台集成开发环境(IDE)。支持的系统包括Linux(32位及64位)、MacOSX以及Windows。开发人员能利用该应用程序框架更快速及轻易地完成开发任务。(2)该配置软件完成节点的设备类型、接口采集逻辑、入网参数等的配置。可直接通过串口线与待配置节点连接,也可以通过一个中间节点对待配置节点进行无线配置,中间节点通过串口线与上位机连接。操作界面如图6所示。(3)如图7,图8所示,通过上位机配置软件S1(实物图如图6所示)可方便地对待配置节点S2进行参数配置。对于待配置设备,如果是终端设备,配置前需先按下配置按键,指示灯亮后,装置即进入配置模式;而如果是路由设备或协调器设备则无需此步骤。(4)有线配置如图6所示:上位机通过串口线连接待配置设备,然后配置软件上收到待配置节点S2发送过来的设备信息,并显示在界面上,然后点击配置按钮,即发送配置帧到节点S2,点击读取配置按钮,则将节点S2各项参数显示在界面上,如果节点S2是数据透传模块,则可以直接接收数据或填写目标地址发送数据。配置完后再按一下按键,指示灯不亮,表示配置完成。可以配置设备类型为Zigbee终端设备、路由设备、协调器设备和点对点透传设备;可以配置入网参数,比如PANID值、信道、网络模型、网络层次等;可以配置传感器发送周期,使各传感器通道数据可以同一周期发送,也可以不相同周期发送等。(5)无线配置如图8所示,采用一个节点作为数据中转与上位机有线连接,通过这个节点无线发送指令到待配置节点进行配置,配置过程中的操作步骤与有线时类似。

3节点测试

3.1信号强度RSSI(ReceivedSignalStrengthIndication)是接收端的信号强度指示,可用来判定链接质量。实际应用中,普遍采用简化后的Shadowing模型,即如下公式计算RSSI值。其中Pr(d)为接收端接收信号强度,Pr(d0)为参考处接收端接收信号强度,d为接收端与发送端实际距离,d0为接收端与发送端参考距离,n为路径损耗指数,通常取2~4。取d0=1m,实测得Pr(d0)的值代入,并取n=3代入公式(1)得新的计算公式。实际测试中取两个节点,分别设为协调器节点和终端节点。将协调器节点固定,令终端节点远离,终端节点加入协调器节点网络后,每隔1s发送一次数据到协调器节点。协调器接收到数据包后,从TI协议栈Z-Stack的数据结构afIncom-ingMSGPacket_t中提取RSSI值记录下来。100M范围每隔5M记录一次RSSI值,每次记录100个值,然后取100个中的随机值和平均值分别作为本次终值绘制曲线。

3.1.1空旷环境下测得Pr(d0)=-28dbm,按照公式(2)与实际数据,绘制对比曲线。从图9和图10对比曲线可以看出,随着两节点间距离增大,RSSI值会逐渐衰减,符合一般规律。0-20m范围内,RSSI衰减较快,之后较为平缓。40m后信号质量普遍较理论值平缓,可能是受硬件条件影响,误差增大。图9由于每次记录取的随机值,存在较大误差,图10每次记录取100个数据的平均值,曲线较为平缓。误差因素包括硬件设计、周边环境影响等。

3.1.2危化品物流车辆环境下采用深圳市中集集团液化气罐(空罐)危化品物流车辆进行实地测试,测试车辆长度14m,宽度2.5m。将协调器节点放置在车驾驶座,终端节点自由放置于车厢体内部,加入网络并发送数据到协调器节点。测得Pr(d0)=-44dbm,根据公式(2)和实际数据的结果曲线如下:由图11和图12可以看出,在车辆环境下,节点信号普遍较空旷环境下差,这主要是因为接收节点被放进车辆箱体内部,信号一定程度上受到厢体衰减。大于40m距离后信号变得不稳定,通信断续和重连情况发生频繁,此时RSSI值普遍>82dbm,80m后多次测试接收端均接收不到数据。

3.2数据传输将协调器节点放置在车驾驶座,终端节点自由放置于车辆厢体内部,加入网络并发送数据到协调器节点。在协调器端统计接收数据包个数,并计算丢包情况和最大稳定通信距离(即数据通信情况良好,极少发生重连情况),结果如下。由表3可以看出,主节点在车驾驶室情况下,车正前方和侧面信号要好于车后方信号,节点丢包率较低,通信距离>=25M,满足一般危化品物流车辆要求。另外,通信的最大稳定传输RSSI值是极少断网重连情况发生下的统计值,所以普遍低于信号强度曲线中的极限值。随着距离增大,节点间的网络传输也会变得不稳定,常常发生断网重连,甚至无法重连状况。实际数据包传输受节点间不同阻挡物、不同车型、车体电磁干扰、程序执行等因素影响。

3.3功耗通过万用表、示波器和在程序中设计测试模块的结合进行功耗测试,测试结果如下。从表4的测试结果可以看出,节点满足低功耗要求,休眠情况下,节点功耗低至0.33uA。

4结语

第2篇

关键词:MCF5249uClinuxWeb数据采集

引言

现在嵌入式系统的应用越来越广泛。随着网络技术发展和市场需求的变化,工业设备实现网络化管理控制已经成为一种必然趋势。M2M(MachinetoMachine)的网络通信已成为国内外研究热点,而Web技术为工业设备实现网络化管理提供了一种解决方案。本文从硬件和软件设计两个方面讨论了摩托罗拉MCF5249处理器在数据采集方面的应用,并实现了采集数据的远程Web表征。

由于这一系统面向广义的过程,所以只要可获得过程参数,就能实现过程行业的远程在线表征。特别是基于Web完成实时数据库生成,真正实现远程集群系统的数据资源无人工干预自动获取。其应用将会不断地延伸。

本文描述的摩托罗拉MCF5249是以ColdFire32位微处理器为基础的高性能处理器,该处理器内部集成了一个片内12位ADC,可用于工业数据采集。且数据采集系统基于嵌入式操作系统uClinux。由于uClinux是为没有MMU的微处理器设计的。且源泉代码公开,为降低成本和获取软件的自有产权提供了方便。当然,uClinux不是一个强实时系统,为支持一般过程系统,可以通过一些补丁程序来提高其实时性,所以本文讨论的数据采集系统主要应用于一些实时性要求不高的场合。

1数据采集系统的硬件设计

摩托罗拉MCF5249处理器内部集成了一个片内12位∑—ΔADC,它有四路输入(ADIN0~ADIN3),任一时刻只允许一路输入,由多路选择器决定。ADC的数字部分在MCF5249的内部,而模拟电压比较器由电路提供。A/D转换的输出引脚以脉宽调制的格式提供参考电压,因此,该输出需要一个的阻容电路,将其转换成直流电压,以备外部的电压比较器电路使用。数据采集系统的硬件原理图如图1所示。

由于微处理器不可承受负电压,所以必须将输入电压限制在0~+3V之间。Motorola公司不建议使用外部箝位二极管直接在模拟输入端进行过压保护,而在输入端引入1~10kΩ的限流电阻和低通滤波器,在低通滤波器的输入端连接二极管对输入电压进行箝位。

2数据采集系统的软件设计

数据采集系统的软件设计主要分为两大模块,即数据采集模块与数据显示模块。

2.1数据采集模块的设计

数据采集模块是系统的核心模块,为了提高数据采集的实时性,应采用中断方式完成数据采集。其流程图如图2所示。

MCF5249微处理器为其内部ADC提供了一个控制寄存器ADCONFIG,其地址是MBAR2_ADDR+0x402,在初始化程序中需要指定MBAR2_ADDR地址。

通过ADCONFIG寄存器可以设置A/D转换器工作方式、采样频率、是否采用中断方式等。下面给出设置ADCONFIG寄存器实例。

#defineMBAR2_ADDR0x8000000

#defineAD_CONFIG0x402

#defineAD_VALUE0x406

…………

//设置ADC

*(volatileunsignedshortint*)(MBAR2_ADDR+AD_CONFIG)=0x442;

该设置确定ADIN0作为模拟信号输入通道,采样频率设置为1/4系统总线时钟频率。当时钟产生4095次翻转时,系统产生一个软件中断(中断号为63)。一次采样结束,并将采样结果存于ADVALUE寄存器(其地址为MBAR2_ADDR+0x406)。A/D转换值可以用如下公式计算:

Vi=(X/(2n-1))×Vfullscate

其中,Vi为ADC的输入电压;Vfullscate为满量程输入电压;

X为ADC输出的数字量;

n为ADC的位数。

A/D转换的结果在中断处理程序中读取。读取一次转换的程序代码如下:

Volatileunsignedshortintm;

m=*(volatileunsignedshortint*)(MBAR2_ADDR+AD_VALUE);

通常,A/D转换需要连续采样。采样结果应存放在一个多访问循环队列MACQ(MultipleAccessCircularQueue)中。

MACQ是一个定长有序的数据结构。源进程(生产者,ADC采样程序)将数据存入MACQ,一旦初始化,MACQ总是满的。当有新的数据被存入(PUT)MACQ,旧数据即被丢弃(如图3)。应用进程(消费者)可以从MACQ中读取任何数据。读功能是非破坏性的,即读操作不会改变MACQ。

在uClinux中,A/D转换中断程序的编写方法是将A/D转换器作为一个字符设备来处理。中断程序是在linux/drivers/char目录下编写,其结构如下:*file:m5249_adirq.c

#include<linux/interrupt.h>

#include<asm/irq.h>

#defineADC_IRQ(128+63)//定义中断号

#defineMBAR2_ADDR0x8000000

#defineAD_CONFIG0x402

#defineAD_VALUE0x406

/*定义中断处理函数*/

voidadirq_interrupt(intirq,void*d,structpt_regs*regs){

在此读取A/D转换的值并存入队列中。

}

/*设备初始化函数*/

intadirq_init(){

intresult;

unsignedshortadc_irq;

adc_irq=ADC_IRQ;

result=request_irq(adc_irq,&adirq_interrupt,SA_INTERRUPT,5249_adirqNULL);//注册中断

if(result==-1)

{printk(“Can''''tgetassigned%d”adc_irq);

returnresult;}

return0;

}

中断服务程序的添加方法如下:

①编辑uClinux/drivers/char目录下的mem.c,添加“adirq_init();”;

②编辑此目录下的Makefile加入“obj-y+=m5249_adirq.o”;

③编译(make)。

2.2数据显示模块的设计

为了实现采集到的数据以Web方式显示,需要选择一个Web服务器。本文采用的Web服务器是BOA。在CGI程序中编写一个函数读取MACQ队列中的数据并显示。

主要有以下显示模块。

(1)编写一个CGI程序

*编写一个读取MACQ队列中数值的函

readFromMacq()。

*编写一个生成动态HTML页面的函数show()。

Voidshow_t(){

……

printf("Content-type:text/html");

prinft{"

<html>

<head>

<metahttp-equiv=pragmacontent=no-cache><metahttpequiv=expirecontent=now>

<title></title>

</head>

<body>");

在此将MACQ中的数据读出,假设值赋给变量n

prinft("<center")Thevalueis%x!</center>

</body>

</html>",n);

}

*编写一个CGI的主程序main_cgi。

在主程序中需要读取HTML页面中的字符,并判断应执行那一个CGI程序。

(2)用HTML语言编写一个主页

在主面中应包含:

<ahref=/cgi-bin/main_cgi.cgi?flag=10target=main>键接字符</a>.

其中,flag的值是main_cgi用于判断应执行哪一个CGI程序的标志。

第3篇

多路视频数据实时采集的软件实现

常永亮(飞行试验研究院测试所陕西西安710089)

【摘要】介绍了视频数据的采集、多路视频数据间的切换、视频数据的保存及基于C/S结构的实时视频数据传输与显示,在对四路飞行视频数据进行实时采集的运行时,各项需求已达到要求。

【关键词】视频数据、Divx编码、RTP/RTCP协议、TCP/UDP协议、媒体流、帧

1引言

随着信息技术的不断发展,人们将计算机技术引入视频采集、视频处理领域,用计算机处理视频信息和用数字传输视频数据在很多领域已有广泛的应用,在我们的飞机试飞中也被大量的应用。

视频图像采集的方法较多,基本可分为2大类:数字信号采集和模拟信号采集。前者采用图像采集芯片组完成图像的采集、帧存储器地址生成以及图像数据的刷新;除了要对采集模式进行设定外,主处理器不参与采集过程,我们只要在相应的帧存储器地址取出采集到的视频数据即可得到相应的视频数据,这种方法,无论在功能、性能、可靠性、速度等各方面都得到了显著的提高,但成本高。后者采用通用视频A/D转换器实现图像的采集,其特点是数据采集占用CPU的时间,对处理器的速度要求高,成本低、易于实现,能够满足某些图像采集系统的需要。

此系统要求每秒采最大25帧(设为可调),客户端实时显示最大25帧(设为可调),保存为MPEG4格式,画面要求为最大分辩率为1024X768。

多路视频实时采集使用的是VisionRGB-PRO卡(英国Datapath公司),此卡可同时实时采集两路视频数据,基本达到了本系统的要求,再用一台VGA矩阵切换器将前端数据源的四路视频数据进行人为切换采集。

2硬件环境的构建(硬件框架)

图一系统硬件框架图

上图为整个采集系统的硬件框架。

此采集系统主要实现对前端四路视频数据的人为切换式实时采集,在服务器端可同时采集和储存两路视频数据(在此只用一个视频采集卡),也可以一次只采集一路视频数据,再经网络实时传输到客户端显示,服务器端也实时显示所采集的视频。

在进行视频切换方面可在服务器端或客户端自行切换,在服务器端可通过串行口操作VGA矩阵切换进行相应的视频输入输出口的切换,在客户端可通过网络-服务器程序相应模块-串行口-VGA矩阵切换进行相应的视频输入输出口的切换。

3软件实现概述

3.1服务器端的实现

图二服务器端程序流程图

上图为服务器端实时采集视频的程序流程图。视频数据量较大,这就要求视频数据处理系统具有实时采集,大容量存储和实时处理的特点。在服务器端的实现是整个系统的关键,在此也承担了大量的工作,因此对软件和硬件方面要求也很高就成为必然。

软件要实现对视频数据的实时采集(最多两路)、控制视频接口、把视频数据实时编码保存并发送到多个客户端。以上就是要在服务器上实现的主要功能。

在采集方面最主要的是要有实时性,在此以事件驱动的方法从端口获取数据,采集到视频数据流在桌面显示的同时再编码保存,视频采集的数据要经软件的相应模块将其设为位图型式的视频帧,以利于在服务器端的显示和编码保存,在此采用Divx编码,Divx编码后形成以帧为格式的MPEG4流。Divx解码也是以帧的格式解压,因此有利于向客户端发送数据时以帧为单位发送视频数据流。

此处用到Divx编码就不得不把Divx编码作简要的介绍。

DivX由DivXNetworks公司开发的,即为我们通常所说的DVDrip格式,它采用了MPEG4的压缩算法同时又综合了MPEG-4与MP3各方面的技术,也就是使用DivX压缩技术对DVD盘片的视频图像进行高质量压缩,同时用MP3或AC3对音频进行压缩,然后再将视频与音频合成并加上相应的外挂字幕文件而形成的视频格式。其画质直逼DVD并且体积只有DVD的数分之一。这种编码对机器的要求也不高,所以DivX视频编码技术可以说是一种对DVD造成威胁最大的新生视频压缩格式,实际上Divx=(视频)MPEG4+(音频)MP3。

媒体流分为四个流:视频流、音频流、文本流、MIDI流,用视频卡采集的是两路视频流,保存时每路视频流多加了一个文本流,文本流主要应客户要求加入的服务器时间和一些人为输入的文本信息,在记录两个媒体流时一般有两种记录方法,在此采用的是将视频流和文本流记到一个文件中的方式,这样有利于文件以后的保存和查阅。

在采集软件实现方面主要应用了相应的SDK(Softwaredevelopmentkit)和API(应用编程接口),还可用VFW(VideoforWindows)。但后一种方法实现简单单路视频采集卡可以,对于多路视频的采集用第一种方法更加灵活,但实现比第二种复杂的多。在服务器实现软件方面主要有以下几大块:一是采集;二是保存;三是向客户端发送;四是串口的通行;五图像的形成;六是桌面显示;七是对图像亮度、颜色、位置等的调整;采集通道、采样率、采集时间的选择;等等。

在服务器端各方面协调工作是关键,程序启动首先默认上次设定的视频采集卡通道,如有视频数据就显示、保存,如果没有视频数据就等待,如果要调整视频采集卡通道可用串口给VGA矩阵切换器发送相应的命令让VGA矩阵切换器进行相应的输入输出通道切换。也可经客户端经网络到服务器串口到VGA矩阵切换器进行VGA矩阵切换器相应的输入输出通道切换(在后面介绍客户端时再介绍)。每次切换后将自动保存原视频文件,如切换后有视频数据将自动重新生成一个新的视频文件。

在服务器桌面显示的画面是没经任何编码处理的,但网络传输和保存的视频数据是经Divx编码的,这样有力的减轻了网络间传输和服务器的负担。

用局域网实时传输视频数据已在一些领域大量的应用,局域网以有线局域网居多,因为有线局域网技术成熟、传输速度快,但是长时间传输大量视频数据时也会引起传输速率不稳定,引起数据堵塞,会导致视频传输的质量大幅度下降,容易引起画面的重影、抖动、花屏、延迟等现象。

为了在局域网上有效的、高质量的实时传输媒体流,需要多种技术的支持,包括网络传输层协议的选择、编(解)码技术,网络传输层质量控制技术等等。

实时传输协议RTP是针对Internet上多媒体数据流的一个传输协议,实时传输控制协议RTCP负责管理传输质量在当前应用进程之间交换控制信息,RTP/RTCP协议只适合服务器端和客户端相对动态的实时多媒体数据流传输。但是,对于图像采集速度固定的实时视频采集,有时会引起采集的数据来不及压缩而直接丢弃而达不到实时的要求,所以没有采用RTP/RTCP协议,而是从发送端出发,实时判断网络状况,采用暂停发送的控制策略进行实时传输。

网络传输层质量控制技术采用的是TCP/UDP协议,UDP是一种不可靠的、无连接的协议,UDP适用于一次只传送少量数据、对可靠性要求不高的应用环境。它不提供检错和纠错功能,一旦网络出现堵塞时,大量的数据报文会丢失。对于Divx编解码技术,是以帧为单位进行编解码的,分为关键帧和非关键帧。在传输过程中,由于压缩率比较高,只要一帧中错一比特位,将影响其后的更多的比特位,直接造成图像的模糊、花屏等现象。只有等到下一次关键帧的到来才有可能恢复图像的清晰。为了保证传输的正确性,自己需要在应用层制定协议。如此一来,只能选择使用TCP来进行网络通信,TCP的目的是提供可靠的数据传输,并在相互进行通信的设备或服务之间保持一个虚拟连接。TCP在数据包接收无序、丢失或在交付期间被破坏时,负责数据恢复。它通过为其发送的每个数据包提供一个序号来完成此恢复。再辅助以暂停发送的控制策略,较好的解决局域网中实时视频传输容易引起的重影、抖动、花屏的问题。

为了达到视频传输的实时性,总的思想是最少的发送冗余信息,最大程度上发送最新的视频。

在服务器端视频采集采用从VisionRGB视频采集卡捕获视频图像,得到的是位图型式的视频帧,然后用Divx编码进行压缩,通过Winsock实现压缩后的视频数据在局域网中的实时传输,在客户端接收完的数据交给Divx解码器解压,最后实现视频显示。如图三所示:

图三网络间传输流程图

如果局域网通信速率很高且状态稳定,则进行实时视频传输就可以达到非常好的效果。但是在网络出现异常时会导致数据传输率不稳定或明显下降,造成发送端数据积压。此时就要采取一定的策略来控制发送端(服务器端),以达到实时性的要求,暂停发送策略很好的解决了这一现象。使用此策略有时会有丢帧的现象(100M局域网没有发现丢帧现象),但就客户端的要求是满足的,在服务器端的采集、显示、保存不受暂停发送策略的影响,也就是不会有丢帧的现象,虽然应用了暂停发送策略,但已经能够满足在客户端实时监控需求了。

3.2客户端的实现

在上面讲服务器端的实现时已经大概讲到客户端的实现,因为只要把服务器端实现好客户端实现难点就小的多。如图四所示:

图四客户端程序流程图

在客户端也可以自行选择要采集的通道,但对服务器端的采样率等都不能通过客户端进行设置,实现客户端时主要是要实时监听和服务器网络连接状态和判断接受的视频数据是否正常是否启用暂停发送策略等。每秒接收的帧数可自行调节,但不能大于服务器端每秒采集的帧数。

在客户端还要实时Divx解码,如果不解码就无法显示,Divx解码速度是完全可以达到实时显示的要求。Divx解码和显示在不同的两个线程中实现的,这样做主要是为了显示流畅。可以在两个不同客户端显示两个不同的视频通道采集的数据。

4结论

本系统作为电视跟踪系统的一部分,负责多路视频数据的实时采集、存储和视频编解码算法的实现、基于C/S结构的实时视频数据传输显示,在通过各种测试后在试运行期间已达到本系统的预期要求,本系统还支持事后的视频回放。

本系统的开发难点和重点在服务器端,服务器端的开发直接影响到整个系统开发。

参考文献

[1]《Windows核心编程》Microsoft公司〔美〕著

第4篇

1.1系统的整体结构设计整个系统采用了模块化的设计,各模块布局合理,整体的结构紧凑。主要功能是数据的传输和程序下载,USB转TTL模块的作用是给单片机供电以及上位PC机和下位单片机之间的电平转换,其原理图如图1所示。单片机与PC机是使用USB转TTL模块进行串口通信,它可以将USB虚拟成一个串口,解决笔记本电脑用户无串口的烦恼。此模块传输速度、传输准确性都满足实验需求,而且价格便宜,使用方便。

1.2系统各部分的功能介绍模拟信号采集部分的目的是为了采集所需要的原始的数据,即本系统中所需要的电压和电流。下位机以AT89C52RC单片机为控制单元,16路A/D转换芯片AD7705采集电压和电流信号转换为相应的数字信号,便于单片机后续的处理并以一定的协议将数据通过串口发送至PC机,最终通过运行在上位PC机的程序对接收到的数字信号进行处理和显示。微控制器STC89C52RC以一定的的协议将数据通过串口发送至PC机。单片机的晶振电路和复位电路是单片机正常工作的先决条件。PC机通过串行USB转串口接收单片机发送的数据,并进行实时处理和显示。

2系统硬件部分设计

2.1MCU芯片的选择STC89C52RC单片机是宏晶科技推出的新一代高速、低功耗和超强抗干扰的CMOS8位微控制器,采用经典的MCS-51内核,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。工作电压:5.5~3.3V(5V单片机)/3.8~2.0V(3V单片机)工作频率范围:0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHZ,用户应用程序空间为8k字节。

2.2A/D转换器选择及采样设计模数转换器,是把经过与标准量(或参考量)比较处理后的模拟量转换成以二进制数值表示的离散信号的转换器,简称ADC或A/D转换器。本系统模数转换器采用的是芯片AD7705,AD7705是AD公司推出的16位Σ-ΔA/D转换器,该转换器采用SPI兼容的三线串行接口,能够方便地与各种微控制器和DSP连接,也比并行接口方式大大节省了CPU的IO口,能直接将传感器测量到的多路微小信号进行AD转换。这种器件还具有高分辨率、宽动态范围、自校准、优良的抗噪声性能以及低电压低功耗等特点,非常适合仪表测量、工业控制等领域的应用[7]。本系统是采集两路信号(电压和电流),AD7705芯片精度为16位(Δ=(5/65536)V≈0.076mV,其精度满足实验需求),高精度A/D转换芯片AD7705有两个双端模拟信号输入通道,分辨率为16位无丢失代码,增益、信号极性以及更新速率等可由软件设置[8-10]。片内可编程增益放大器的增益范围为1~128,这使AD7705可与多种传感器直接相连,无须外接放大器,并且内置可编程的自校准电路,通过对零点和满度的校准,可有效去除零点漂移和增益误差的影响。接口为SPI串行总线,因而与单片机的接线大大减少,简化了硬件的设计。在测量电流时,我们对两种实验方案进行了比较,第一种是利用电流变送器进行电流的测量;第二种是利用采样电阻进行电流的测量。采用了第二套方案,原因是其价格低、精度满足实验要求。

3系统软件部分的设计

PC端主程序框架如图2所示。

3.1数据采集PC端软件设计PC端软件是基于MFC对话框进行程序的编写,其主要包括以下几部分:1.窗口界面的绘制(包括开始界面绘制、控件绘制、坐标系绘制、网格绘制、LIST表格绘制等);2.串口通信控件的连接、初始化和设置;3.数据库的嵌入(包括数据库的连接、读写、修改等);4.采集数据时的动态响应(包括动态图形绘制、动态数据表数据显示等)。

3.2界面介绍首先是开始界面,如图3所示。1.菜单栏区域:包括串口设置、开始采集、暂停、停止采集(同时关闭串口)四部分是本程序所有功能的体现;2.绘图区域:包括两个TABLE,一个是励磁电流不变、励磁电流变化两个子窗口。每个窗口中包含一个二维坐标系进行图形的绘制;3.数据表区域:包含一个LIST控件,对实时采集的数据进行显示;4.系统控制区域:与菜单栏区域功能相同,都是对采集整个过程进行控制,同时能够实时的对数据进行一个显示、也能够对偏差的数据进行手动删除,避免实验错误对绘制出的图像造成的影响,而影响实验效果。根据端口信息,选择串口端号,点击打开串口后,绿灯变为红灯,打开串口按钮变为灰色,表示串口已经连接,可以进行串口通信(即采集可以开始)。选择两种模式,“励磁电流不变”、“励磁电流变化”,并点击进入相应的子窗口。然后就可以进行采集。传输电流电压时,图像会实时显示,数据表也会同时显示。图5显示了励磁电流不变时,工作电流和霍尔电压之间的关系曲线。

4结论

第5篇

关键词:USB2.0EZ—USBFX2同步数据采集

随着计算机技术的迅速发展,对外部总线速度的要求越来越高。通用串行总线(UniversalSerialBus,即USB总线)凭借其即插即用、热插拔以及较高的传输速率等优点,成为PC机与外设连接的普遍标准。在许多便携式电脑上,已经找不到RS-232接口。迄今为止,常用的USB总线标准有1998年的USBl.1版本和2000年的USB2.0版本。其中1.1版本支持两种传输速率:1.5Mbps和12Mbps,主要应用在低速传输要求的场合;而2.0版本面向高数据率传输的场合,支持480Mbps的传输速度,并向下完全兼容USBl.1协议。在实际应用中,通常会遇到一些突发信号,需要对其进行高速采集,对数据进行高速传输,所以USB2.0标准自然成为首选。以Cypress公司的EZ-USBFX2系列中的CY7C68013芯片作为核心控制器,设计开发了一套符合USB2.0标准的高速同步数据采集器。

1CY7C68013芯片

Cypress公司的EZ-USBFX2系列中的CY7C68013,是目前市面上比较少的符合USB2.0标准的USB控制器之一。与其它同类芯片相比,它提供了4KB的FIFO和一个功能十分强大的GPIF(GeneralProgrammableInterface)模块。后者相当于一个可编程状态机,正是由于它的存在,使得CY7C68013比其它同类芯片具有强大的互联能力。图1是CY7C68013芯片的结构示意图,其主要特点如下:

·CY7C68013内部集成了一个增强型的51内核,其指令集与标准的8051兼容,并且在多方面有所改进。例如:最高工作频率可达48MHz,一个指令周期为4个时钟周期,两个UART接口,三个定时计数器,一个I2C接口引擎等。

·CY7C68013提供了一个串行接口引擎(SIE),负责完成大部分USB2.0协议的处理工作,从而大大减轻了USB协议处理的工作量,并且提供了4KB的FIFO保证数据高速传输的需要。

·为了满足与各种不同类型外设的互联需要,芯片中集成了一个GPIF模块,让用户可以按照外设的时序进行波形编辑,而不需要复杂的程序描述,就可以保证GPIF与内部.FIFO的协调工作,实现芯片与高速设备之间的逻辑连接和高速数据传输。这对于开发者来说是相当友好的。笔者就是利用这一特性,实现数据的高速同步采集及传输。

图1

2同步高速数据采集芯片AD7862

2.1AD7862的结构

AD7862是AD公司推出的高速、低功耗、双极性12位的A/D转换芯片,其中包含了两个独立的快速ADC模块(允许同时采样和转换两路信号)、4路模拟输入信号(VAl、VA2、VBl、VB2)、2.5V的内部电压基准以及一个12位的高速并行接口。芯片正常运行时功耗只有60mW,当使用节电方式时,只有50μW,对于自带电源的USB设备这种低功耗无疑是一种优点。该芯片的内部结构如图2所示。每个ADC都有一个两通道的多路选择器,芯片通过地址信号A0分别选通VAl、VA2或VBl、VB2,当一个CONVST信号到来时,同时转换地址A0选中的两路信号。

2.2AD7862的控制时序

AD7862的控制时序如图3所示。在USB2.0同步高速数据采集器中,利用GPIF实现图3所示的时序控制。其中CONVST是转换开始启动信号,下降沿触发两路ADC开始装换;BUSY信号在CONVST信号触发后;变成并保持为高电子状态,直到两路ADC转换完毕,才又回到低电平;地址A0用于对两路模拟信号的选择,CS信号和RD信号分别是芯片使能信号以及读允许信号。两者第一次同为低电平时,读出第一组ADC转换的数据;在第二次为高电平时,读出第二组ADC转换的数据。使用AD7862值得注意的一点是该芯片提供了电源管理功能,当芯片将第二组数据读出后,CONVST信号继续保持低电平,芯片进入休眠模式。这时芯片的功耗只有50μW。这一点对于现在的便携式设备十分重要。

3同步高速数据采集器的硬件设计

传统的高速数据采集卡一般都采用PCI总线设计,但是笔记本电脑以及大部分便携式设备是没有PCI插槽的。利用USB2.0技术,不仅保证了较高的数据传输率(传输率最大可以达到480Mbps),同时还具有便携和无需外加电源等优点。图4是系统的结构示意图。它的工作原理是:在GPIF模块的控制下,由AD7862对目标进行等间隔采样,然后将采样结果通过GPIF传送到CY7C68013的内部FIFO中缓存;当采集一定量的数据后,CY7C68013自动将数据打包(不需要8051的介入),通过USB总线传输到PC机中进行数据处理。由于有GPIF的硬件支持,CY7C68013中的8051内核只是在很少的时间内,对控制进行了辅助处理,大部分工作由GPIF硬件完成。这样8051还可以与其他外设进行互联等工作。在高速数据采集器上附加了两路RS-232接口,用于将GPS数据和高精度智能测深仪的数据中转到主控计算机上,大大方便了新近推出的笔记本电脑与传统外设之间的联系。因为新近推出的笔记本电脑大多不具有RS-232接口,而那些野外观测仪器大多只能通过RS-232接口进行数据交换。

对于CY7C68013来说,其配置和固件都是软的,存储在外部的E2PROM中,上电时从I2C总线自动装载到片内RAM中,修改起来十分方便,便于固件升级。由于CY7C68013提供了丰富的I/O口,所以进行功能扩展也是很方便的,例如增加一个GPIB数据口等。

4软件设计

USB设备的软件设计包括三方面:固件设计、硬件驱动程序设计以及高级应用程序的设计。

4.1固件(firmware)设计

Cypress公司为CY7C68013提供了一个开发框架,可以在KEILC51环境下开发。由于开发框架的引入,从而大大缩短了用户的研发周期。该框架由以下几部分组成:

(1)FW.C中包含了程序框架的MAIN函数,管理整个51内核的运行,因为Cypress对这个部分的功能进行了精心划分,一般是不用改动的。

图3

(2)用户必须将PERIPH.C实例化,它负责系统周边器件的互联。固件的设计主要针对这个文件,用户必须根据自己系统的需要,实例化这个文件,以实现自己的功能。在这个文件中有几个函数是比较关键的,在这里做一下特别说明:

·TD_Init函数,负责对USB端点进行初始化设置。本设计中将端点6设置为1024个字节,缓存深度为4级,模式设为自动输入方式。

·TD_Poll函数,负责系统中循环任务的处理。它主要是对各个端点的状态进行查询,处理各种OUT或IN端点的交互。值得说明的一点是,这种处理只是辅质的,大部分工作由硬件自动完成。

·DR_VendorCmnd函数,主要负责用户自定义命令的译码工作,用户请求通过端点O传输给内核。由于CY7C68013上SIE硬件的支持,用户只需查询固定地址单元即可获得当前的命令代码。

·GPIFINIT.C,其中只有一个Gpiflnit函数;它是GPIF模块的初始化函数,一般在TD_Init函数中调用。这个函数是由Cypress公司提供的一个GPIFDesigner开发工具根据用户设计的波形生成的,用户不需要自己设计波形查询表,减轻了设计者的工作强度。

·DSCR.A51是描述表文件,负责USB设备的描述工作,CY7C68013在上电后自动利用其中的VID和PID取代默认的VID和PID。

·两个包含文件EZUSB.LIB和USBJMPTB.OBJ,前者是EZUSB函数库的二进制文件,后者是USB的中断向量表。

固件调试,使用Cypress提供的EZ-USBcontrolpanel,具体的操作读者可以参考其自带帮助。

4.2驱动程序的设计

驱动程序负责对底层硬件的访问。在本设计的驱动程序开发中,使用的开发工具是Jungo公司的WinDriverv6.03,它支持多种操作系统。利用WinDriver开发的优点是用户不需要了解操作系统内部的具体工作机理,同时也不需要了解各个系统DDK(DevelopingorDebugginginKernel)的开发工具,用户只需使用WinDriver提供的开发平台,即可完成驱动程序的设计工作,剩下的底层细节由WinDriver内核统一处理,从而降低了对开发者编程能力的要求,同时也大大缩短了开发周期。下面就使用WinDriver开发驱动程序的步骤做一个简要说明(以在Windows操作系统下的开发为例):

(1)启动WinDriver的DriverWizard工具;

(2)利用DriverWizard检测硬件是否正常;

(3)在DriverWizard中选择所使用的开发环境,这里使用VB6.0开发环境,并生成驱动程序代码;

(4)对生成的代码进行修改,使其符合系统的需要;

(5)在WinDriver环境的用户模式下,调试驱动程序;

(6)如果程序需要内核访问,以提高驱动程序的效率,进入内核开发。

4.3高级应用程序的设计

第6篇

关键词:铁路基础设施;监测;振动传感器;数据采集

中图分类号:TN919 文献标识码:A

0.引言

进入21世纪以来,我国铁路建设发展迅猛,取得了良好的经济与社会效益。随着铁路运输速度的迅速提升,再加上其相对方便舒适的环境和价格上的优势,势必能吸引越来越多的人选择铁路作为他们旅行的交通工具,然而,伴随着铁路运输的飞速发展给人们带来的交通上的快捷与方便,车体与铁轨的振动故障对公共财产及人身安全构成了前所未有的威胁。

伴随着我国铁路立体跨越式的迅猛发展,轮轨间激扰力与激扰频率随着车辆行驶速度的不断提高,逐渐增大,变宽,结果会造成电机等吊挂设备和车内设备的高频高幅振动,引起车体设备振动能量的急速加剧。如果超过了铁路各设备所允许的振动强度范围,未来的工作性能指标及使用寿命将会受到过大的动态载荷和噪声的严重影响,情况越发严重会导致零部件的早期失效。当前大量事实表明,在长期作用的情况下,铁路振动故障可能会导致货物破损,轨道破坏,列车脱轨等危险情况。为确保铁路“安全、经济、快捷、舒适”的特点和优势,铁路建设要不断发展完善其各项功能,才能在越发激烈的市场竞争中取得优势,因此,各国都加强了对铁路振动的检测及分析,也增加了对其的投入力度。

今年我国对铁路振动检测领域的人力物力投入有明显增加,并且研究范围扩展到众多方面。以往铁路振动检测系统只配备在一些重要单位或者要害部门,而在2000年以后,各个铁路站段及各个振动检测站点基本都已经涉及发展应用到。铁路振动检测系统的重要性越来越被人们所认可,近些年又不断完善各项相应的标准和规范。为了保证铁路的运输安全、高效舒适的科学发展及以人为本的发展要求,确保铁路的优势和特点,如何准确检测高速铁路的振动并判断故障是摆在铁路工作者面前不容缓的实际问题。

1.数据采集系统设计方案

如图1所示,本论文用于铁路基础设施监测的振动传感器数据采集系统主要由下位机系统和上位机节点两个大的部分组成。系统设计方案的结构框图下位机系统里包含了振动传感器数据采集模块、IIC实时数据传输模块、微处理器模块和电源模块五个单元。

振动传感器把接收到的振动信号数字化,通过IIC数字传输方式,将数据发送给微处理器STM32F103ZET6。微处理器作为控制单元,用于接收振动传感器数据并进行数据处理分析计算,通过RS-232串口通信,运用MAX3232电平转换芯片及CH340 RS-232串口转USB芯片,实现了XYZ三轴振动数值发送到上位机进行控制显示。因为目前个人电脑上已很少有串口,所以我们使用RS-232串口转USB口芯片CH340G,数据可以从USB口进入PC上位机。由于每一个节点的检测范围有限,使用多个这样的节点共同检测则可以扩大系统的监测范围,提高系统的整体工作性能。整个铁路振动检测系统是由多个下位机节点互相协作共同完成系统功能的。

2.系统硬件设计

2.1 系统硬件设计思想

本论文的铁路振动检测系统是由振动传感器数据采集模块,IIC实时数据传输模块,微处理器模块以及RS-232有线通信模块和电源模块组成。

振动传感器数据采集模块对铁路振动的振动数据信号进行实时采集,将采集到的数据数字化,并通过IIC实时数据传输方式与单片机处理器通信,接着单片机处理器模块将采集的数据进行数据处理分析,通过有线通信模块上传到上位机进行实时显示及存储,为铁路振动故障的判断提供合理依据。

微处理器中有数据处理分析算法的设计,完成对采集到的实时振动信号进行数据处理分析,判断当前得到的振动数据是否在铁路设备所能产生的振动范围之内并对数据进行干扰点剔除,去直流及多项式趋势项和平滑处理,计算出与自然坐标系夹角的角度,使整个铁路振动检测系统的性能与数据准确性得到大幅度提高,很大程度上降低了系统的错误上报率。

2.2 系统介绍

如图2所示,系y硬件部分可以分为五个部分:振动传感器数据采集模块、IIC实时数据传输模块、微处理器模块、RS-232有线通信模块和电源模块。

数据采集模块:由单片机处理器模块发出相应的控制指令配置振动传感器的控制寄存器,内部控制寄存器来决定信号的采集速度、通信方式、数据输出格式与带宽,振动传感器根据内部控制寄存器的值按要求采集振动信号。

实时数据传输模块:振动传感器采集的实时数据通过IIC传输方式,将数据发送给处理器,为之后的数据处理分析奠定了基础。

微处理器模块:主要工作是通过系统软件控制数据采集模块完成振动数据信号的采集,并对数据进行处理分析,然后控制RS-232有线通信模块将处理完成的数据上传至PC上位机进行显示及存储。该模块是振动传感器数据采集模块和RS-232有线通信模块进行联系的核心部分。

RS-232有线通信模块:将微处理器模块处理完毕的数据,通过RS-232串口通信的方式传递给上位机,上位机会自动显示及存储数据,供振动故障的判断使用。

电源模块:通过该模块,将5V外部直流电源转换成系统所使用的3.3V电源。

结论

本论文设计了一套铁路振动检测系统,该系统采用下位机整体检测模块PC上位机整体控制数据流向,并对上传的检测数据进行显示保存。从与传统检测方法的比较来看,它能够更加高效、深入、细致的对铁路振动信号进行检测、处理分析及显示存储,并为铁路振动故障的判断提供可靠依据。

参考文献

[1]冯晓芳.中国高速铁路的发展与展望[J].科技资讯,2009(1):129-130.

[2]段合朋.铁道车辆振动特性及平稳性研究[D].成都:西南交通大学,2010.

[3]柴东明.铁路实用微型振动测试仪研究[J].设备管理与维修,1994(11):18-21.

[4] Testing and Approval of Railway Vehicles from the Point of View of their Dynamic Behavior-Safety-Track Fatigue-Ride Quality(2ed edn). (Pairs:UIC)UIC Code 518, 2003, 2.

第7篇

关键词:STM32F103,数据采集,数据通信

 

仿真驾驶模拟器是机械、电子及计算机技术为一体的复杂系统,该系统由驾驶室与电动伺服装置组成的仿真驾驶单元,计算机、投影机和环形幕组成显示单元及驾驶数据采集模块单元组成。仿真驾驶模拟器除可进行模拟驾驶训练外,还具有汽车驾驶技能形成性评价、个性化培训计划、交通事故经典案例教学、驾驶案例性测评等的汽车驾驶应用培训教学。论文格式。论文格式。其中数据采集单元实时采集仿真驾驶室内的各操纵机构状态,并将采集到的数据经串口传送到上位机,上位机通过汽车动力学模型及当前路况信息计算出当前速度、加速度、方向、位置等信息作为计算机实时生成图象和控制电动伺服缸动作依据,同时依据采集到的数据完成对驾驶行为过程回放、行为分析、技能等综合评估。

1数据采集系统总体设计

如图1所示,数据采集系统主要由各检测模块及检测电路、单片机、采集芯片、通信接口和上位机组成。其中采集芯片是系统的核心部件,采用ARM核心的STM32F103芯片,采集芯片控制系统的变速器、转向盘、加速踏板及各种开关等的位置状态,包括对数据进行采集、存取、时间参数设置与主机通信等。时钟信号也是由采集芯片产生,定时对采集芯片机产生复位信号,使主单片机完成一次数据采集,然后又进入休眠状态。其中转向装置采用光电编码器和现场可编程逻辑正列(FPEG)组成数字式传感器,通过RS232与STM32通信。

数据采集系统在工作时,对模拟数据首先要通过放大器对信号进行处理后传送到STM32F103的ADC模块转化为数字信号,对开关量和数字传感器信号通过I/O或通信接口传送到STM32F103,最后采集来的信号按照一定的通信协议发送到上位机处理。

图1 汽车模拟器数据采集系统总体设计

2 硬件设计

仿真驾驶室内的需要检测各种模拟装置的信号。这些状态根据采用的传感器可分为三类:数字量、模拟量和开关量。

2.1 模拟量的采集

加速踏板、离合器踏板和行车制动踏板(三踏板)的踏板行程分别反映供油量大小、离合器结合程度及制动力大小,所以传感器应采集出的是连续变化的量,即是模拟量。模拟量的采集要去抗干扰能力强,在设计中选择了线性位移传感器与三踏板的机械连接组成。线性位移传感器的阻值变化特性为直线型,能够准确反映三踏板行程的大小。

STM32 核心为CORTEX-M3,内部集成了2个1Msps12bit的独立ADC,2个ADC前端由两个多路切换器组成16路的模拟输入通道,并将每个模拟输入通道的结果存入对应的16个A/D转换数据寄存器(ADDR)中。并且内部高达 72MHZ的主频,高达1.25DMIPS/MHZ的处理速度,ADC最高速采样的时候需要1.5+12.5个ADC周期,高速的DMA传输功能,灵活强大的4个TIMER等。加速踏板、离合器踏板和行车制动踏板模拟信号经多路模拟开关和信号调理电路经相应的控制电路与ADC0、ADC1和ADC2三个模拟通道相连,完成对信号的采样与转换。

2.2 开关量采集

模拟的操作有大量的开关量信号。组合开关、点火开关等采用EQ153型实车开关来实现仿真驾驶的开关操作功能,在实车开关上都有微动开关,主芯片可通过光电隔离器与微动开关相连,提取开关量,并转换为标准逻辑电平进行处理。变速器采集模块采用两个PCB电路板构成变速器模拟装置,一个PCB电路板装有4对发光二极管和光敏三极管,一对放光二极管和光敏三极管构成一路采集,固定于变速器外壳内与机械结合采集档位杆操作动作,变速器采集模块与主控板I/O采集接口连接,当有档位使能动作时,主控单片机要实时采集到变速器的使能动作。手制动采集模块选用行程开关模拟,采集手制动动作,行程开关安装于手制动控制杆底侧,手制动采集模块接线端子与主控板I/O接口连接,主控板能实时采集到手制动操作使能。

2.3转向盘关电编码设计

转向盘度采集模块采集转向盘的旋转的角度、方向。考虑在实际驾驶中转向盘要求有一定的间隙,在采集时,采集精度要低,所以选用了以光电编码为原理的码盘检测机构与转向盘的转向立柱连接用于模拟转向装置,光电编码为750个脉冲/圈,将转向盘的角位移转换为电脉冲输出。光电编码单独采用现场可编程逻辑阵列(FPGA)数据处理,FPGA不仅具有高精度的同步传输能力,而且具有速度高、体积小、抗干扰能力强的优点。如图2所示,由光电编码器输出的A相、B相和Z相脉冲信号经光电耦合器抑制传输过程中的高频噪声信号后送入FPGA处理器,在FPGA中按照倍频和鉴别方向设置等进行计数处理,得到实时脉冲数,最后通过RS232与采集芯片通信,并传输到主控芯片STM32F103。

图2 转向盘光电编码硬件设计

2.3 与主机的通信接口

由于数据采集单元与上位机的主控室距离较长,所以采用传输距离可达1000多米,传输速率10Mbs的RS485总线通信标准。通信接口芯片采用Sipex公司的SP3075E芯片,接口设计如图3所示。论文格式。

图3 通信接口连接图

3软件设计

模拟器数据采集系统在数据采集过程中,应完成多路模拟信号的采集和转换,在上位机指令下将采集到的数据按一定的通信协议向上位机发送,并根据上位机下传的各种输出信号直行相应的操作并开始下一次数据采集,将采集的数据储存在采集系统的存储器中,等待上位机的上传指令。按照采集任务,主程序可分为多路AD转换模块、RS485通信模块和中断服务程序模块,软件流程图如图4所示。

图4 主程序流程图

3.1 AD信号采集程序片段及注释

ADC1->CR2.B.ADON = 1; //开启ADC

ADC1->SMPR1.W= 0; //设置每个通道的采样时间

ADC1->SQR1.W= 0; //设置序列转换长度和通道

ADC1->CR1.B.SCAN= 1; //扫描模式开启

ADC1->SQR1.B.L= 5; //转换长度为6

ADC1->CR2.B.DMA= 1; //使用DMA

ADC1->CR2.B.EXTTRIG= 1; //使用外部触发信号

ADC1->CR2.B.CAL= 1; //开始ADC校准

3.2通信接口程序片段及注释

与上位机的通信模块使用了两个中断,分别用于接收和发送中断。通信模块中还需设置破特率BRR。

USART1->BRR.W= UARTclk/Bud; //设置波特率

USART1->CR1.B.UE= 1; //使能UART1模块

USART1->CR1.B.TE= 1; //使能UART1模块发送功能

USART1->CR1.B.RE= 1; //使能UART1模块接收功以

USART1->CR3.B.DMAT= 1; //发送使用DMA方式

USART1->CR1.B.TCIE= 0; //禁止UART1模块发送完成中断

USART1->CR1.B.RXNEIE= 1; //使能UART1模块接收中断

NVIC->ISER2.B.UART1= 1; //使能UART1的中断

NVIC->ISER1.B.DMA1_CH4= 1; //使能DMA结束中断

4 结束语

本文阐述了汽车仿真驾驶模拟器数据采集系统的设计,经实践表明,STM32主控芯片具有强大的数据运算和处理能力,保证了汽车仿真模拟驾驶器数据采集系统能够以高精度和高准确度工作,完成对模拟器数据的采集。

参考文献:

[1]孙洪波等.TMS320C5000系列DSP系统设计与开发实例[M].北京:电子工业出版社,2004.

[2]周立功等.ARM嵌入式系统教程[M].北京:北京航空航天大学出版社,2005.

[3]张志勇.数据采集系统硬件设计与实现[J].应用能源技术,2009,10:36-38.

第8篇

一、计划的内容

计划的核心包括目标、措施、步骤,这就是通常所说的计划的三要素。

目标--做什么?本篇毕业论文所要完成的主要任务和重要的指标。措施--怎么做?要求确定执行计划的具体办法和途径。

步骤--何时做?制定毕业论文写作的整个进度和安排。这部分是论文写作计划的主体,其中包括获取材料的途径、方式及需要的时间,阅读方式、整理研究方法和期限,拟定提纲撰写初稿的进度。此外,还应考虑研究经费,进行物力、财力的预算。

二、写作日程表

编列协作日程表的主要目的在于全面筹划,避免前松后紧。院校专业的不同,水平,经验方面也有差异,很难有一个统一的时限,也没有什么统的格式。某学校的写作8程表安排如下:

确定选题                                    2周

实践、实习,搜集材料              4周

制定提纲,拟定论文框架           1周

完成初稿                                    1周

征求意见,修改论文                  1周

定稿、誊清、装订                      4天

做好参加答辩的准备                   3天

总体上需要10周时间,若是从4月上旬开始,可在6月中下旬结束。

现以某校计算机应用专业的物业管理系统图书管理系统毕业设计计划示例如下:

题目一:物业管理系统

用于住宅小区的事务管理。设计该系统的目的是运用计算机,对小区内的水电费、物 业管理费收付款、住宅小区住户等信息进行管理,以实现物业管理的规范化。提高物业管理工作效率。

系统功能分为数据采集、信息查阅、数据库维护等模块。

题目二:图书管理系统

用于图书借还日常数据的微机处理,设计该系统的目的是运用计算机,对图书馆的图书借间、图书归类管理、还书进书处理、罚款登记处理等信息进行管理,以实现图书馆管理的规范化,提高工作效率。

系统功能分为数据采集、数据更新、信息查阅、数据库生成与维护等模块。时间安排:

1.系统需求分析确定系统的规模目标,(1周)

2.系统设计阶段确定开发系统的语言环境及管理模块结构,各人按所分工的模块开始设计。(3周)

3.各学员按设计的模块实现端程、调试。(4周)

4.进行总体合并,形成系统,由各小组负责人进行全面调试并检测各模块的兼容性。(1周)

第9篇

【关键词】三维建模;三维空间模型;人机交互;摄影测量;三维点云

1、引言

随着数字采集技术的不断发展以及“数字地球”、“数字城市”概念的不断深化,人们已不再满足于传统二维手段描述的三维信息,目前三维模型已成为继图像、声音和视频之后的第四种多媒体数据类型[1],物体的表现形式也逐渐从二维表示向三维自动化建模的方向过渡。

目前实现三维建模的方法大致有以下几种:一是直接利用三维建模软件,如计算机辅助设计软件(AutoCAD)、三维动画渲染和制作软件(3D Studio Max)等工具人机交互式三维建模;二是直接利用GIS的二维数据和高度信息建立三维模型,但这种方法只局限于规则对象的建模;三是基于数字摄影测量原理对物体快速建模。随着数据采集技术的不断发展和自动化,根据三维激光点云数据自动构建三维模型正成为研究的热点。本文对现今常用的地物建模方法进行比较分析,总结出了各种建模方法的特点。

2、三维建模方法

本文以校园中建筑物为建模对象,分别通过以下3种常用的建模方法进行三维模型重建:基于AutoCAD的人机交互式建模、基于扫描点云的建模、基于近景摄影测量的建模。

2.1 基于AutoCAD的人机交互式建模

对于几何形体相对规则的建筑,常规使用免棱镜电子全站仪对建筑物构件的三维特征点进行散点式数据采集。本文采集数据同时采用“四位编码法”对特征点编码[2],并按建筑构件分类分层存储。绘图时根据特征点编码结合测绘顺序在CAD中编写LISP程序对建筑物实现自动展点和自动连线生成线框图。以同济大学某学生宿舍为例,在CAD中连线后的线框图见图1(a),图中3个蓝点为门上3个特征点,这些点不同时位于门所确定的竖直面内。可见三维绘图不是实测点位的简单连线或修补,需以实测点位为基础,综合考虑建筑的施工、形变和测量误差及建筑特性,采用拟合的方法对线框图进行局部处理,最后构建三维实体,如图1(b)所示。

(a)门窗的4个图元不共面

(b)构建后的实体效果

图1 绘制步骤及效果

此外,游天[3]等人利用对象三视图为底图在三维制作软件中直接建模,并将三面图对模型进行纹理映射提高模型的真实度。本文也以学校校门为例对此方法进行了验证,实验证明该方法构建的三维实体模型精度也能满足一般要求。

2.2基于扫描点云的建模

对于不规则物体,全站仪则显得无能为力了。三维激光扫描技术克服了传统数据采集方式的不足,应运而生的模型自动化重建技术愈来愈受到重视。目前基于扫描点云的建模一般流程可概括为点云的获取、表面重建、点云的处理与建模三个阶段。以校园某建筑为例具体实验步骤如下:

(1)点云数据获取。本实验采用Leica C10对某楼进行扫描测量,根据该楼的轮廓特征和实际扫描范围等影响因子,本次测量共设16站。

(2)点云数据预处理

为了给建模阶段提供较理想的点云数据,需对原始点云数据进行点云拼接、去噪、采样等预处理。点云数据预处理既可通过算法[4] [5] [6] [7] [8] [9]实现,也可以通过扫描仪配套软件如Cyclone、Faro Scene等完成。这一步操作十分重要,是决定后续数据质量好坏和执行效率的关键。

(3)点云数据建模

目前,对建筑物点云数据模型重建的研究多数从两个方面展开:一方面提取建筑物的边界特征,以特征为约束构建三维实体模型;另一方面是直接对点云数据网格化,建立拓扑关系,进行表面重建和优化。本实验采用点云数据分割、曲面拟合以及交互组合的方法来实现建筑物对象的三维建模。建模步骤大致可分类以下三大步:

a)海量散乱点云数据分割

点云分割是为下阶段精细建模做准备。本文根据空间点的邻域关系估算点与点间的拓扑关系,将建筑模型分割为平整墙面、屋顶和附件几大区域。

b)分割部分精细建模

自动识别提取点云数据特征,并以此特征为约束迭代拟合模型,在此基础上构建三角网格。

c)模型拼接

根据模型间的特征及法矢拼接相邻模型,对拼接后的两模型公共区域部分的三角网进行裁剪、检查以及模型修补和优化。

综合以上步骤,基于点云数据建成的三维模型效果如图2所示。

图2 文远楼三维模型

2.3基于近景摄影测量的建模

本实验摄影采用的是非量测型相机,以同济大学某建筑正门为例,根据近景摄影测量原理构建三维模型的流程步骤如下:

(1)影像采集。以多摄站正直环绕摄影方式用普通相机对大礼堂进行摄影,共布设8个摄站。图3为正门前的观测示意图,其中S1、S2为两个观测站,J1~J4分别为正门前4根柱子上粘贴的4个人工标志。

图3 现场观测图

(2)坐标解算。考虑到非量测数码相机的内、外方位元素的初始近似值未知以及像点、摄影中心、相应地物点间的不共线,需使用加入像点坐标改正数(本实验仅考虑物镜辐射方向的光学畸变改正数)的直接线性变换解法,建立像点坐标与相应物点空间坐标之间的线性关系。

(1)

式中,)为像片上以任意点为原点的像点坐标,为点的物方空间坐标,L1~L11为11个变换参数。

(3)绘制实体

在相片上采集一定密度的特征点并解算该特征点的三维坐标,反向投影到三维空间后借助三维绘图软件展绘建筑上的特征点,增补遗漏点,并利用计算机视觉技术构建一个线框和几何实体模型。图4为绘制的建筑前门线框模型。

图4 前门构建线框图

3、三维建模方法对比分析

基于人机交互的建模、基于扫描点云和基于摄影测量的建模这三种建模方法都是基于测量的建模方式,都需要以外业采集的三维坐标数据为基础进行建模。

基于人机交互的建模方法应用时间较长,技术路线较成熟,国内外研发的许多控制集成建模软件都可以利用基本的几何元素构建复杂的几何场景。这种建模方法灵活,能逼真再现对象的几何结构和表面纹理信息,适合用于对建模效果和细节要求较高的对象。但对于诸如小区、城市这样的大规模场景,如果每个模型都进行精细建模,不仅工作量大、费时费力,而且庞大的数据量也要求计算机硬件具备配套的处理能力,这也成为日后模型调用、管理的一大瓶颈。

基于点云的三维建模方法适用于不规则对象的三维建模,三维激光扫描技术克服了传统数据采集方式的不足,提高了数据采集的精度和效率,获得的点云数据信息量大,包含三维空间信息、颜色属性和反射强度信息,通过一定的算法对点云数据进行处理即可快速构建被测物体的三维模型。这种方法自动化程度高,构建的数字模型不仅精度较高还带有丰富的细节信息。但三维激光扫描在扫描过程中容易产生漏洞,且庞大的点云和数据处理技术也制约了该技术的进一步发展和广泛应用。

基于摄影测量的建模包括近景摄影和相片处理两个过程,且两阶段可独立进行。摄影时可根据测量精度要求选用量测摄影机或非量测摄影机;目前相片处理技术已相对成熟,许多现成的成熟软件和算法可以直接使用。这种方法建模速度快、自动化程度高。但近景摄影测量也存在一定的局限性,例如获取影像时需要布设控制网,这就加大了外业的工作强度;而且影像上灰度变化不明显部位无法获得同名点,这也就制约着三维建模的精度。

4、结论

通过以上的对比分析不难看出,三维模型重建过程中,建模方法和技术路线的选择尤为重要。在实际建模过程中,不要局限于某一种建模方法和技术,应从项目的实际情况出发,分析数据采集方式和数据类型,选择合适的建模方法。一般采集特征点及近景摄影测量技术结合建模软件构建简单建筑等规则对象模型,利用三维激光扫描点云对不规则物体进行精确建模。在实际应用中会遇到或规则或不规则的建筑物(群),需要采用不同的数据采集技术、三维建模方法和可视化工具,因此不同建模方法应相互融合、交织使用。

参考文献:

[1]许敏,张永生.三维实体模型库的设计与实现.微计算机信息.2008,vol.24(3-7): 207~209

[2]顾孝烈,鲍峰,程效军.测量学.第四版.上海:同济大学出版社,2011

[3]游天,夏青.三维实体模型的建模技术.测绘科学.2012,vol.37(6):172~174

[4]高志国.地面三维激光扫描数据处理及建模研究:[博士学位论文].长安:长安大学,2010

尹婷.三维激光扫描数据处理技术的研究:[博士学位论文].武汉:武汉理工大学,2010

[5]杨维国.基于OpenGL在激光扫描数据处理中的应用研究:[博士学位论文].上海:上海交通大学,2010

[6]尹婷.三维激光扫描数据处理技术的研究:[博士学位论文].武汉:武汉理工大学,2010

[7]盛业华,张卡,张凯等.地面三维激光扫描点云的多站数据无缝拼接.中国矿业大学学报.2010,vol.39(2):233~237

[8]官云兰.地面三维激光扫描数据处理中的若干问题研究:[博士学位论文].上海:同济大学,2008

[9]施贵刚.地面三维激光扫描数据处理技术及作业方法的研究:[博士学位论文].上海:同济大学,2010

第10篇

关键词:数据采集,波形发生器,DMA,工业控制

 

0 引言

某发射机构作为导弹武器系统的重要发射控制部件,其性能的好坏直接影响武器系统的总体战术指标。因此发射机构在研制过程中和投入生产后需进行严格的测试,进行常温测试、高低温测试和交付试验等,检测发射机构在常温及高低温状态下的性能。论文写作。通过测试,暴露出发射机构各分组件、部件、分部件及有关元器件的制造缺陷,可及早将这些问题予以排除,提高发射机构工作的可靠性,以完成产品的调试生产、质量控制、验收交付等任务。

1 问题的提出

发射机构测试系统是根据生产任务要求研发的,原有测试软件是用C语言在DOS下开发的,界面简单,操作复杂。随着计算机硬件的升级,WindowsXP已经成为主流的操作系统,研制在Windowsxp新的测试软件是非常必要的。

2 策划

2.1硬件设计

本测试系统主要由工艺发射机构产品、信号处理电路、数据采集板卡、工控机以及软件平台等组成。发射机构的一些数据被数据采集板卡测得;各项状态则通过信号处理电路进行调理后,引入工控机;软件系统根据测试要求输出控制信号,经过处理电路后来实现对产品的控制。工控机内装有研华公司的PCI-1710卡和PCI-1721用来控制产品状态和读取测试数据,系统结构如图1所示:

图1 发射机构测试系统硬件框架

2.2 系统的软件设计

发射机构测试系统的软件采用NI公司的LabWindows/CVI进行设计开发。该软件是面向计算机测控领域虚拟仪器软件开放平台,是以ANSI C为核心的交互式虚拟仪器开发环境,将功能强大的C语言和测控技术有机结合,具有灵活编程方法和丰富的函数库,为开发人员建立检测系统、自动测试环境、数据采集系统、过程监控系统等提供了理想的软件开发环境,是实现虚拟仪器及网络化仪器的快速途径。

为了提高测试模型组合的灵活性和通用性,采用模块化设计的原则,将测试系统分为数个模块。本测试系统软件功能的结构框图如图2所示。

图2 软件系统结构框图

系统状态控制模块可进行测试系统自检状态和测试状态的转换;

状态监控模块可监控发射机构的供电、开锁,切除等状态并显示到面板的指示灯;

发射机构状态控制模块可通过测控电路控制发射机构各种测试状态;

板卡控制模块可对PCI-1710和PCI-1721板卡进行控制和测试数据的采样;

功能测试模块可对发射机构的各个测试项目进行测试并记录测试结果;

数据记录模块可将测试数据导入到EXCEL电子表格并可打印输出;

3 实施方案

3.1 硬件设计方案:在测试系统中,除了要处理模拟量输入、输出信号外,还要处理开关量和脉冲量信息,以便及时反映开关量状态并执行监视、控制的功能。硬件中采用光电隔离技术,使用光电隔离不仅可以使计算机的控制输出通道与被控负载之间在电气上完全隔离而达到良好的抗电磁干扰技术指标,也使这些控制指令具备足够的功率驱动能力,进而可靠实现驱动继电器等部件的目的。

3.2 测控软件设计方案:测试软件主界面主要完成的功能是实现测控系统的功能选择和系统的测试数据管理,测试系统主界面如图3所示:

图3 测试系统软件主界面

从图中可以看出,用户界面是一个有机的界面系统。主要包括:

A. 测试信息区域,用于输入和显示本次测试的产品编号、操作者、检验员等信息。

B. 测试项目区域,配合快捷按键可测试中的各项参数,便于测试人员在测试过程中更加直观地观察测试过程。

C. 测试状态指示区域,用来指示发射机构的各个测试状态。

D. 测试过程消息区域,用来指示测试过程现在进行到那个步骤,并给出该测试步骤的状态信息。

E. 测试电压监视区域,主要在测试过程监测发射机构供电电压。

F. 测试信号波形指示区,在测试过程中显示测试信号的波形。

G.自动测试按钮,按下该按钮,可实现自动测试的功能。论文写作。

3.3 软件测试流程图如图4所示:

3.4 关键技术:

3.4.1信息信号和制导指令信号的模拟输出技术:

在本测试系统中,需要模拟导弹产生的信息信号和制导指令信号。测试软件采用DMA技术利用PCI-1721板卡产生各路波形信号。主要函数定义如下:

void SetMultiToOneBuffer(USHORTusEnabledChannel, int count);

voidSetRealBuffer(float far *lpBuf, long num, LPSWAVE lpWave);

voidUserThread();

voidadInterruptEvent();

voidadBufChangeEvent();

voidadOverrunEvent();

voidadTerminateEvent();

voidMyFreeBuffer();

int Inf_Out(intnum,long rate,float Magnitude0,float Magnitude1,float Magnitude2,floatMagnitude3);

通过上述函数将需要产生的波形先存入缓冲区,在启动PCI-1721的DMA数据传送的功能启动线程,即可产生需要的各种信号波形。

3.4.2 测试系统要求实时监控产品的各项状态。

由于使用Timer定时器时所发送的定时消息受到消息队列和系统时钟频率等因素的影响,不能使得定时消息得到及时的响应和处理。同时,测试流程中需要进行一定的延时等待,因此,不能使用Timer定时器。在此,使用异步定时器控件来实现实时监控的问题。异步定时器通过加载驱动位于toolbox中的 asynctmr.fp来实现调用。与定时器控件相比,异步定时器控件由于使用独立线程,与程序主线程无关,能够提供可靠的定时精度,不会受到主载荷的影响。异步定时器的建立、删除和设置,分别通过调用函数 NewAsyncTimer()、DiscardAsyncTimer()和SetAsyncTimerAttribute()来实现。定时响应函数的声明为:IntCVICALLBACK MyTimerCallback (int reserved, int theTimerId, int event, void*callbackData,int eventData1,int eventData2);

在测试系统软件启动以后,建立一个定时器;然后设置定时器的定时时间和响应函数;在软件退出时,删除定时器;在定时响应函数中,调用板卡控制模块提供的读取数据函数,来实现实时状态监测的功能。论文写作。

2.效果和结论:

测试软件现已经过调试和严格的测试,运行良好,测试结果可靠,操作界面友好,使用方便,测试结果准确,测试过程简洁优化,大大提高自动化检测水平。该测试系统现已经过检验验收,达到交付的状态,完全满足了发射机构自动测试的需要。

参考文献

[1]NationalInstrumentCorporation.LabWindos/CVIUserManual[M].2005.

[2]孙晓云,郭立炜,孙会琴.基于LabWindows/CVI的虚拟仪器设计与应用[M].北京:电子工业出版社,2005.

[3]张毅刚,乔立岩等.虚拟仪器软件开发环境LabWindows/CVI6.0编程指南[M].北京:机械工业出版社,2002.

[4]周磊,滕克难,施建礼.基于LabWindows/CVI高精度定时[J].电子测量技术,2004,4:29-30.

[5]郭雅荫,杨世凤,王建新.LabWindows/CVI与PCI数据采集卡通讯技术研究[J].电子测量技术,2007,30(5):78-80.

第11篇

在数据仓库建设过程中,经常遇到无信息系统进行管理的制式EXCEL报表数据。这类数据入库常采用以下两种方法:一是开发新的信息系统重新录入数据;二是借助第三方工具,如SQLLDR、POWERBUILDER、PL/SQL DEVELOPER等导入。方法1数据重复录入,工作量大;方法2简单,速度快,但无法解决下面三个问题:

一是名称转代码问题。通常,报表只提供单位或物资名称,而名称不利于信息的查询、维护,必须转换为代码;

二是名称与代码间的多对一映射问题。同一单位或物资在不同的报表中极有可能出现名称不一致现象,如何将其映射到同一代码也是直接导入无法解决的问题;

三是交叉报表数据无法直接入库。我们在详细分析各业务部门提供的EXCEL电子表格的基础上,对其进行了准确的类别划分,通过二级映射机制,设计了C/S结构的通用数据采集工具,很好地解决了此类数据的入库问题。

2 电子表格文档分类

EXCEL电子表格可分为三种主要样式:

行列式:电子表格中的行和数据库表中的记录一一对应,列与数据库表中的字段一一对应。

卡片式:每一页(SHEET)对应库中的一条记录(RECORD),单元格对应数据库表中某一行中的某一字段。

交叉式:电子表格中的一行应转换为数据库表中的多行。

3 设计思想

针对这三种主要表格样式,以通用性、易用性为指导思想,通过“两级映射”机制,即EXCEL文件到数据库表的映射、行列到表字段的映射,映射表结构见表1、表2,设计了相应的数据采集工具。

3.1 数据采集总体流程

数据采集总体流程如下:

(1)维护文件映射表和字段映射表;

(2)数据采集是否结束,结束转(7),否则转(3);

(3)判断表格形式,如为行列式,进入(5);如为卡片式进入(6);如为交叉表进入(7);

(4)行列式信息采集,转(3);

(5)卡片式信息采集,转(3);

(6)交叉表信息采集,转(3);

(7)采集结束。

3.2 行列式信息采集

由于行列式报表与数据库表在结构上的一致性,采集相对简单,只需注意以下三点:

真实数据从第几行开始;确定需要进行代码转换的列;确定列的代码转换类型。

3.3 卡片式信息采集

卡片式信息采集算法如下:

(1)确定文件中的卡片总数CNT,该数即为将入库的记录数;

(2)循环变量I初始化为1;

(3)I大于CNT,转(8),否则转(5);

(4)将第I张卡片信息读入临时数组;

(5)名称转代码处理;

(6)数据入库;

(7)I增1,转(3);

(8)数据采集结束。

3.4 交叉表信息采集

为节省篇幅,仅给出算法基本思想:

扫描EXCEL文档确定入库数据的总行数和总列数;初始化行指针和列指针;列指针为外层循环,行指针为内层循环,开始遍历数据,同时进行有效性检查和代码转换,有效数据入库,对无效数据记录精确到行列的出错信息,直至数据处理完毕。

第12篇

[关键词]门站计量,监控系统,总体设计

中图分类号:TH814 文献标识码:A 文章编号:1009-914X(2015)45-0077-02

1 门站工艺流程介绍

天然气门站具有过滤、储气、控制和计量等功能,主要负责为城市天然气管网提供气源,保障城市安全稳定供气[1]。天然气经由长输管线高压进入城市天然气门站,经由过滤器过滤掉较大液滴和固相颗粒杂质之后,进入及其管网,并对天然气计量之后进行加臭,随后通过调压系统将压力下调至0.4MPa~1.6MPa的压力之后,进入城市天然气管网为千家万户供气。根据门站的工艺流程分析可以确定门站主要需要监控的工艺设备有电动球阀、过滤器、流量计、调压器以及管道进出口端压力、温度和气体泄漏情况等参数,门站的工艺处理过程如图1所示[2]。

2 系统总体设计方案

2.1 功能需求分析

结合天然气门站工艺流程,可以得出天然气门站计量监控系统主要需要实现对入站和出站压力、温度、流量以及相关设备运行状态进行监控和计量。需要门站计量控制系统实现实时采集现场数据,并计量天然气流量,实现流量补偿功能;使用组态软件模拟门站包括天然气管道布局、电动球阀以及重要仪表位置的工艺流程;通过上位机监控系统可以监视门站现场电动球阀的运行状态并能控制球阀开闭;对门站以及各集气管道的进出口压力、压差和天然气泄漏浓度进行实时监测,当各个测量值超过门限值时进行声光报警;动态显示门站现场采集的各电气设备的生产数据,并提供实时数据曲线、历史数据曲线浏览功能;提供数据管理功能,包括实时数据、报警记录以及操作记录的归档,并提供查询统计接口;实现用户权限等级的管理机制,确保高权限用户的操作管理权以及低权限用户的浏览权;提供现场数据的远程浏览功能;利用OPC标准化接口驱动短消息报警模块发送短信到维护人员手机;留有对调度中心的数据上报接口,与调度中心的通信将在二期工程中由调度中心实现。

2.2 总体结构设计

天然气数据采集与监视控制系统主要由三个部分的组成:区域监控中心,无人值守站以及天然气门站。本论文作为第一期工程主要针对天然气门站进行软硬件升级苑,通过门站计量控制系统的实现,完成对现场设备进行数据采集,流量计量以及球阀控制。

门站计量监控系统采用的是上下位机协作工作模式。下位机由PLC315-2DP中央处理器模块、数字量输入输出模块、模拟量输入模块以及电源模块等硬件组成,负责实时采集现场数据、控制球阀、流量计量以及超限或故障报警;上位机采用WinCC组态软件模拟天然气门站的工艺流程,将下位机采集、处理的数据以及系统产生的报警信息和操作记录展现给工作人员,并能通过手机模块将报警信息及时发送到维修人员和工程师手机上,以便尽可能的缩短维护时间,同时需要将产生数据归档并提供控制球阀开闭的操作。门站计量控制系统的总体框架结构如图2所示。

由于工控现场的传感器和设备分布较为分散,在门站现场采用分布式I/O模块ET200M将采集到的信号汇总,然后再讲数据通过Profibus总线传输给PLC进行信号转换和处理。当PLC更新了数据后,会根据采集的压力、温度等数据计算天然气的瞬时流量和累积流量,然后通过工艺以太网将处理过的数据上传给门站监控室内的上位机监控系统。上位机监控系统完成对数据的和统计,并将数据定时传输给监控中心。同时远端客户可以通过浏览器远程访问门站计量监控系统,浏览门站设备的运行和计量情况。通过图2可以看出,天然气门站计量监控系统不仅需要完成对天然气流量的计量以及对现场采集数据的管理,还需要能够与监控中心或远端客户进行数据交互。

3 软硬件集成方案

3.1 软硬件平台选择

天然气门站计量监控系统分为上下位机两部分,主要分布在监控室和门站现场两个区域,其中监控室内包含了两台互为冗余的监控计算机以及PLC控制器;门站现场主要有电动球阀、各种工业测量仪表以及标准孔板等设备。

经过对现在工业领域市场上主流控制器的比较,本论文选用西门子公司生产的S7-300系列的PLC,其采用模块化结构,具备高速的指令运行速度,可实现浮点运算能计算较为复杂的算术运算,可按用户指定的刷新速度传送数据,可自动处理数据传送,可实现CPU智能化自诊断等优点,在工业自动化领域广泛应用[3]。对应于西门子公司的PLC作为控制器,上位机选用与S7-300系列全Q合的西门子的WinCC组态软件。该软件是一款面向监控与数据采集的组态软件,系统可靠性高。

为了提高监控系统的可靠性,上下位机均采用双机热备份冗余系统,同时为了配合PLC的冗余实现,将数据采集和输出模块交给分布式I/O模块ET200M进行管理。PLC组成软冗余系统作为控制系统的核心控制器,上位机监控系统采用双工控机通过工业交换机进行冗余,实现数据实时热备份,增强系统的可靠性和安全性,平台框架可参照图3。

3.2 软硬件设备配置

根据对计量控制系统平台选择的分析,确定了系统软硬件的框架平台,下位机采用PLC组成计量控制系统,大大加强了系统的集成度,与上位机之间采用以太网通讯方式,增强了数据的传输速度,满足了大数据量传输的需求,下面将对本计量监控系统软硬件选型进行详细介绍。

在门站计量控制系统中,监控室作为门站级的主控中心,监控室内工作人员通过上位机WinCC组态软件对整个站场实现监控。工业控制计算机配置CP1613工业以太网卡,计算机采用Windows XP SP3操作系统,并安装EXCEL 2007,WinCC V7.0 ASIA SPl和SIMATIC Manager STEP7(V5.5)。由于对孔板采用气体分段计量较为复杂,基于稳定性、可靠性、实用性的考虑,系统下位机的PLC采用西门子公司的S7-300系列,作为本系统的数据处理核心,主要完成数据采集、流量累计、现场控制等重要功能。其主要的软硬件配置如表1所示。

参考文献

[1]吴筱峰.城市天然气厂站中调压计量系统的设计[J]煤气与热力.2010(07):21-24