时间:2023-03-17 18:06:46
序论:写作是一种深度的自我表达。它要求我们深入探索自己的思想和情感,挖掘那些隐藏在内心深处的真相,好投稿为您带来了七篇数据采集论文范文,愿它们成为您写作过程中的灵感催化剂,助力您的创作。
GPRS移动数据传输网络的主要作用就是对无线数据进行传输。在监控对象安装的数据采集点会对数据进行采集,然后经过GSM网络的空中接口模块,同时对数据进行解码处理,然后将其转换为可以在公网传输的格式,最后通过GPRS移动数据传输网络将数据传输至监控中心的服务器。在整个系统中,各个监控点的数据采集模块通过GPRS移动数据传输网络与监控中心相连,数据采集点同意使用STK卡,与此同时,监控中心会对各点进行登记,并在服务器中保存相关资料。各个监控点的数据采集模块中装有数据采集软件,该软件24h在线,对电网中的信息数据进行24h不间断的采集工作。关于信息的传输,使用的是JW0D2系列的GPRS无限透明数据传输终端。该终端基于移动网络,抗干扰能力较强,同时性能较高。此外,该传输终端还提供标准的RS232接口,以便实现与计算机的连接。在传输过程中,速率可以达到172kbps,能满足监控中心与各个监控点的数据采集与处理工作。由于电网数据传输的特殊性较强,因此本系统使用了安全保障,以保证系统运行的稳定性和可靠性。在网络安全方面,经过对信源加密、信道加密、登录防护、接入防护、访问防护等,能有效增强网络安全,加强安全防护。在硬件方面,使用VPN将公网接入到GPRS网中,成本低廉,不用租用专线。此外,使用VPN还可以增强安全性,客户端在链接应用服务器之前,要经过服务器的认证,而且整个数据传输过程均会加密,如此一来,安全性就得到了保障。另外,系统还对用户的SIM卡手机继续鉴别授权,在网络侧对SIM卡号和APN进行绑定处理,只有拥有权限的相关用户才能对专用APN进行访问,没经过授权的SIM卡将无法对APN网络进行访问。
2特点与优势
传输模块的特点主要有:①传输模块采用了工业级的GPRS模块,该模块性能较为稳定,而且其工作温度范围较大。另外,用了嵌入式的CPU作为处理器,功耗低、性能高,还能高速处理协议和大量的数据。②由于该模块的工作方式为multi-tasking,因此实时性较好。③其AT指令的预设简单方便。该模块的通信距离较远,而且具有覆盖面积广的特点,能使终端实时在线,能将无线电无法到达的区域采用GPRS通信的方式进行传输,真正实现了高效传输。此外,该系统还有组网灵活、扩展容易、维护简单、性价比高的特点。
与短消息服务相比,GPRS服务的实施性很强,而且系统不会出现延时的情况,可以对所有数据进行采集。此外,由于GPRS具有双向功能,还可以对采集设备进行反向控制,因此进一步提高了系统的便捷性。本系统的扩展性良好,是大面积覆盖的GPRS网络,所以该系统不存在盲区,而且由于该系统的输出容量较大,数据采集点较多,监控中心要与每一个监控点相连,因此需要系统能满足传输需求。该系统的传输容量较大,能满足突发性数据的传输要求,因此该系统的优点明显。
3结束语
基于通用信号处理开发板,利用FPGA技术控制AD9233芯片对目标模拟信号采样,再将采样量化后的数据写入USB接口芯片CY7C68013的FIFO中,FIFO写满后采用自动触发工作方式将数据传输到PC机。利用VC++6.0软件编写上位机实现友好的人机交互界面,将传输到PC机上的数据进行储存和实时回放。本系统主要实现以下两大功能:1)ADC模块对目标模拟信号进行采样,利用FPGA技术将采样后的数据传输到USB接口芯片CY7C68013的FIFO中存储。2)运用USB2.0总线数据传输技术,将雷达回波信号数据传输到PC机实时回放。分为应用层、内核层和物理层3部分。应用层和内核层主要由软件实现。应用层采用VC++6.0开发用户界面程序,为用户提供可视化操作界面。内核层基于DriverWorks和DDK开发系统驱动程序,主要起应用软件与硬件之间的桥梁作用,把客户端的控制命令或数据流传到硬件中,同时把硬件传输过来的数据进行缓存。物理层主要以FPGA为核心,对USB接口芯片CY7C68013进行控制,通过USB2.0总线实现对中频信号采集。系统设计采用自底向上的方法,从硬件设计开始逐步到最终的应用软件的设计。
2硬件设计
FPGA在触发信号下,控制ADC采样输入信号,并存入FIFO中。当存满时,将数据写入USB接口芯片CY7C68013,同时切换另一块FIFO接收ADC转换的数据,实现乒乓存储,以提高效率。FPGA模块的一个重要作用是控制USB接口芯片CY7C68013。当ADC采样后,数据进入FPGA模块,FPGA控制数据流将其写入CY7C68013的FIFO中,以便于USB向PC机传输。CY7C68013的数据传输模式采用异步slaveFIFO和同步slaveFIFO切换模式。通过实测,前者传输速度约为5~10Mbit/s,后者传输速度最高可达20Mbit/s,传输速度的提高可通过更改驱动程序的读取方式实现。
3软件设计
3.1USB驱动程序设计
USB2.0总线传输技术最高速率可达480Mbit/s。本系统采用批量传输的slaveFIFO模式。CY7C68013芯片内部提供了多个FIFO缓冲区,外部逻辑可对这些端点FIFO缓冲区直接进行读写操作。在该种传输模式下,USB数据在USB主机与外部逻辑通信时无需CPU的干预,可大大提高数据传输速度。Cypress公司为CY7C68013芯片提供了通用的驱动程序,用户可根据需求开发相应的固件程序。
3.2FPGA模块程序设计
系统中FPGA模块的核心作用是控制AD9233芯片进行采样。AD9233作为高速采样芯片,其最高采样速率达125Mbit/s,最大模拟带宽为650MHz。通过改变采样速率可使该系统采集不同速率需求的信号,扩展了该系统的应用范围。描述FPGA控制USB数据写入接口芯片FIFO的状态机如图6所示。状态1表示指向INFIFO,触发FIFOADR[1:0],转向状态2;状态2表示若FIFO未满则转向状态3,否则停留在状态2;状态3表示驱动数据到总线上,通过触发SLWR写数据到FIFO并增加FIFO的指针,然后转向状态4;状态4表示若还有数据写则转向状态2,否则转向完成。
3.3上位机设计
为实现人机交互,利用VC++MFC在PC机上编写了可视化操作界面,即上位机。上位机既用于数据采集的控制,同时也用于采集数据的实时回放。上位机界面如图7所示。上位机主要功能:1)按下“检测USB”按钮,可检测USB是否连接正常,并显示USB基本信息。2)按下“开始采集”按钮,可将采集的数据传输到PC机并实时回放数据波形;再次按下“开始采集”按钮,可暂停数据波形回放。3)按下“保存数据”按钮,可将采集的数据以*.dat文件的形式存储到PC机硬盘。4)按下“结束采集”按钮,可关闭采集系统并退出界面;或按下“确定”和“取消”按钮,也可直接退出界面。
4系统实测
为了测试数据采集与回放系统,利用通用信号处理开发板设计了DDS模块。该DDS模块产生一个正弦波作为测试信号,通过AD9744芯片转换后变为模拟信号输出,并将此输出信号接至示波器以便验证系统。数据采集与回放系统的实物图及系统实测波形与回放波形。
5结束语
1虚拟仪器的特点和构成
1.1虚拟仪器的特点
与传统仪器相比,虚拟仪器具有高效、开放、易用灵活、功能强大、性价比高、可操作性好等明显优点,具体表现为:
智能化程度高,处理能力强虚拟仪器的处理能力和智能化程度主要取决于仪器软件水平。用户完全可以根据实际应用需求,将先进的信号处理算法、人工智能技术和专家系统应用于仪器设计与集成,从而将智能仪器水平提高到一个新的层次。
复用性强,系统费用低应用虚拟仪器思想,用相同的基本硬件可构造多种不同功能的测试分析仪器,如同一个高速数字采样器,可设计出数字示波器、逻辑分析仪、计数器等多种仪器。这样形成的测试仪器系统功能更灵活、更高效、更开放、系统费用更低。通过与计算机网络连接,还可实现虚拟仪器的分布式共享,更好地发挥仪器的使用价值。
可操作性强,易用灵活虚拟仪器面板可由用户定义,针对不同应用可以设计不同的操作显示界面。使用计算机的多媒体处理能力可以使仪器操作变得更加直观、简便、易于理解,测量结果可以直接进入数据库系统或通过网络发送。测量完后还可打印、显示所需的报表或曲线,这些都使得仪器的可操作性大大提高而且易用、灵活。
1.2虚拟仪器的构成
虚拟仪器的构建主要从硬件电路的设计、软件开发与设计2个方面考虑。
硬件电路的设计主要根据用户所面对的任务决定,其中接口设计可选用的接口总线标准包括GPIB总线、VXI总线等。推荐选用VXI总线。因为他具有通用性强、可扩充性好、传输速率高、抗干扰能力强以及良好的开放性能等优点,因此自1987被首次推出后迅速得到各大仪器生产厂家的认可,目前VXI模块化仪器被认为是虚拟仪器的最理想平台,是仪器硬件的发展方向。由于VXI虚拟仪器的硬件平台的基本组成是一些通用模块和专用接口。因此硬件电路的设计一般可以选择用现有的各种不同的功能模块来搭建。通用模块包括:信号调理和高速数据采集;信号输出与控制;数据实时处理。这3部分概括了数字化仪器的基本组成。将具有一种或多种功能的通用模块组建起来,就能构成任何一种虚拟仪器。例如使用高速数据采集模块和高速实时数据处理模块就能构成1台示波器、1台数字化仪或1台频谱分析仪;使用信号输出与控制模块和实时数据处理模块就能构成1台函数发生器、1台信号源或1台控制器。专用接口是针对特定用途仪器需要的设计,也包括一些现场总线接口和各类传感器接口。系统的主要硬件包括控制器、主机箱和仪器模块。常用的控制方案有GPIB总线控制方式的硬件方案、MXI总线控制方式的硬件方案、嵌入式计算机控制方式的硬件方案3种。VXI仪器模块又称为器件(devices)。VXI有4种器件:寄存器基器件、消息基器件、存储器器件和扩展器件。存储器器件不过是专用寄存器基器件,用来保存和传输大量数据。扩展器目前是备用件,为今后新型器件提供发展通道。将VXI仪器制作成寄存器基器件,还是消息基器件是首先要做出的决策。寄存器基器件的通信情况极像VME总线器件,是在低层用二进制信息编制程序。他的明显优点在于速度寄存器基器件完全是在直接硬件控制这一层次上进行通信的。这种高速通信可以使测试系统吞吐量大大提高。因此,寄存器基器件适用于虚拟仪器中信号/输出部分的模块(如开关、多路复用器、数/模转换输出卡、模/
数转换输入卡、信号调理等)。消息基器件与寄存器基器件不同,他在高层次上用ASCII字符进行通信,与这种器件十分相似是独立HPIB仪器。消息基器件用一组意义明确的“字串行协议”相互进行通信,这种异步协议定义了在器件之间传送命令和数据所需的挂钩要求。消息基器件必须有CPU(或DSP)进行管理与控制。因此,消息基器件适用于虚拟仪器中数字信号处理部分的模块。
软件的开发与设计包括3部分:VXI总线接口软件、仪器驱动软件和应用软件(软面板)。软件结构如图1所示。
VXI总线接口软件由零槽控制器提供,包括资源管理器、资源编辑程序、交互式控制程序和编程函数库等。该软件在编程语言和VXI总线之间建立连接,提供对VXI背板总线的控制和支持,是实现VXI系统集成的基础。
仪器驱动程序是完成对某一特定仪器的控制与通信的软件程序,也即模块的驱动软件,他的设计必须符合VPP的2个规范,即VPP3.1《仪器驱动程序结构和模型》和VPP3.2《仪器驱动程序设计规范》。
“软面板”设计就是设计具有可变性、多层性、自、人性化的面板,这个面板应不仅同传统仪器面板一样具有显示器、LED、指针式表头、旋钮、滑动条、开关按钮、报警装置等功能部件,而且应还具有多个连贯操作面板、在线帮助功能等。
2虚拟仪器在数据采集中的应用
利用虚拟仪器制作数据采集器可以按照硬件设计、软件设计两个步骤来完成。
2.1硬件设计
硬件设计要完成以下内容:
1)模/数转换及数据存储
设置具有通用性的数据自动采集系统,一般应满足能对多路信号尽可能同步地进行采集,为了使所采集到的数据不但能够在数据采集器上进行存储,而且还能及时地在采集过程中将数据传送到上位机,选用存储量比较适中的先进先出存储器,这样既能满足少量数据存储的需要,又能在需要实时传送数据时,在A/D转换的同时进行数据传送,不丢失任何数据。)VXI总线接口
VXI总线数据采集器通常可以利用两种VXI总线通用接口消息基接口和寄存器基接口。消息基接口的作用是通过总线传送命令,从而控制仪器硬件的操作。通用寄存器基接口是由寄存器简单的读写来控制仪器硬件的操作。利用消息基接口进行设计,具体消息基接口的框图见图2。
3)采样通道控制
为了满足几种典型系统通道控制的要求,使通道的数量足够多,通道的选取比较灵活,可以利用寄存器电路、可预置计数器电路以及一些其他逻辑电路的配合,将采样通道设计成最多64路、最少2路可以任意选择,而且可以从任意一路开始采样,也可以到任意一路结束采样,只要截止通道号大于起始通道号就可以了。整个控制在虚拟仪器软面板上进行操作,通过消息基接口将命令写在这部分的控制寄存器中,从而设置计数器的初值以及采样的通道总数。
4)定时采样控制
由于不同的自动测试系统对采样时间间隔的要求不同,以及同一系统在不同的试验中需要的采样时间间隔也不尽相同,故可以采用程控的方式将采样时间间隔设置在2μs~13.0ms之间任意选择,可以增加或减少的最小单位是2μs。所有这些选择设置可以在虚拟仪器软面板上进行。
5)采样点数控制
根据不同测试系统的需求,将采样点数设计成可在一个比较大的范围中任意选择,该选择同样是在软面板上进行。
6)采样方式控制
总结各种自动测试系统的采样方式不外乎软件触发采样和硬件触发采样。在硬件触发采样中又包括同步整周期采样和非同步整周期采样,这2种采样又可以是定时进行的或等转速差进行的。所有这些采样方式,对于数据采集器来说都可以在软面板上进行选择。
2.2软件设计
软件是虚拟仪器的关键,为使VI系统结构清晰简洁,一般可采用组件化设计思想,将各部分彼此独立的软件单元分别制成
标准的组件,然后按照系统的总体要求组成完整的应用系统,一个标准的组件化的虚拟仪器软件系统,如图3所示。
应用软件为用户提供了建立虚拟仪器和扩展其功能的必要工具,以及利用PC机、工作站的强大功能。同时VPP联盟提出了建立虚拟仪器标准结构库(VISA)的建议,为虚拟仪器的研制与开发提供了标准。这也进一步使由通用的VXI数据采集模块、CPU/DSP模块来构成虚拟仪器成为可能。
基于虚拟仪器的数据采集器的软件包括系统管理软件、应用程序、仪器驱动软件和I/O接口软件。以往这4部分需要用户自己组织或开发,往往很困难,但现在NI公司提供了所有这四部分软件,使应用开发比以往容易得多。
下面简单介绍以NI公司的LabWindows/CVI为开发环境,来进行VXI虚拟仪器的驱动程序开发的方法。
第一步:生成仪器模块的用户接口资源文件(UIR)。用户接口资源、文件是仪器模块开发者利用LabWindows/CVI的用户界面编辑器为仪器模块设计的一个图形用户界面(GUI)。一个LabWindows/CVI的GUI由面板、命令按钮、图标、下拉菜单、曲线、旋钮、指示表以及许多其他控制项和说明项构成。
第二步:LabWindows/CVI事件驱动编程。应用程序开发环境LabWindows/CVI中设计一个用户接口,实际上是在用户计算机屏幕上定义一个面板,他由各种控制项(如命令按钮、菜单、曲线等)构成。用户选中这些控制项就可以产生一系列用户接口事件(events)。例如,当用户单击一个命令按钮,这个按钮产生一个用户接口事件,并传递给开发者编写的C语言驱动程序。这是运用了Windows编程的事件驱动机制。LabWindows/CVI中使用不同类型的控制项,在界面编辑器中将显示不同类型的信息,并产生不同操作的接口事件。在LabWindows/CVI的开发平台中,对事件驱动进行C程序编程时可采用2种基本的方法:回调函数法和事件循环处理法。
回调函数法是开发者为每一个用户界面的控制项写一个独立的用户界面的控制函数,当选中某个控制项,就调用相应的函数进行事件处理。在循环处理法中,只处理GUI控制项所产生的COMMIT事件。通过GetUserEvent函数过滤,将所有的COMMIT事件区分开,识别出是由哪个控制项所产生的事件,并执行相应的处理。
第三步:应用函数/VI集与应用程序软件包编写。应用函数/VI集需针对具体仪器模块功能进行编程,应用程序软件包只是一些功能强大、需要完善的数据处理能力的模块才需要提供,如波形分析仪模块、DSP模块等。
3结语
本文探讨了虚拟仪器的基本组成,以及实际的虚拟仪器软硬件设计的一般方法,这些方法经过实际设计工作运用证明是可靠的,可供系统工程技术人员在组建具体的基于VXI总线的虚拟仪器数据采集、测试时参考使用。
参考文献
1]赵勇.虚拟仪器软件平台和发展趋势[J].国外电子测量技术,2002,(1)
2]陈光禹.VXI总线测试平台[M].北京:电子科技大学出版社,1996
3]孙昕,张忠亭,薛长斌.集成VXI总线自动测试系统的方法[J].测控技术,1996,15(4)
目前,适用于短距离的无线通信技术大致有蓝牙技术、ZigBee技术及Wifi技术。相比较而立,ZigBee技术以其功耗低、结构简单、性价比高、扩展简便及安全可靠等优点成为构建WSN的最佳选择。本设计采用ZigBee技术,以Ad-Hoc方式构成的无线网络,整个网络采用簇-树状拓扑结构。每一个结点采用CC2530芯片作为微处理器。CC2530的引脚端口与传感器相连,形成数据采集的终端。
2数据采集系统总体架构设计
配电网数据采集系统主要包括三个基本模块:底层数据采集模块、数据传输模块和数据存储管理模块,具体结构如图3所示。底层数据采集模块由CC2530所带的电流、电压、温度、湿度、红外、振动等传感器组成,这些传感器所采集的数据经CC2530中的8051单片机简单处理后传至数据传输模块。数据传输模块由ZigBee路由器结点组成,这一部分也由CC2530芯片担当。这些路由器结点组成树状网络,形成数据上传至汇总结点的通道。数据存储与管理模块由ZigBee协调器与PC机组成,Zig-Bee协调器由CC2530担当,与PC机用USB线进行连接,串口进行数据通信。PC机接收数据后对数据进行进一步的存储与处理。PC上安装有网卡,形成与Internet网的连接端口,从而满足远程监控的需要。
3数据采集模块随机干扰的滤波设计
在无线传感网进行数据采集的过程中,测量通道中串入随机干扰是不可避免的。随机干扰的出现会引起测量误差,对远程的监控不利。因此,采取某种手段对采集数据进行滤波是保证采集数据准确性的前提。常用的数字滤波算法有算术平均滤波、加权平均滤波、中位值滤波、限值滤波等方法,本设计采用基于中位值滤波方法的中位值平均滤波方法。通常中位值滤波是对采集信号进行排序,取位于中间的数据作为一次的采样数据。这种方法对高频干扰和低频干扰都有一定的滤除效果,但是对于某些变化快速的采集数据,如电流、电压、振动等,不宜采用中位置滤波。中位值平均滤波方法是在中位值排序的基础上,将最大和最小的数据去掉,然后将剩余的数据进行平均,最终将平均值作为一次采样数据。因此无论对于缓慢变化的信号,还是对快速变化的信号,都能取得良好的滤波效果。
4总结
关键词:USB软件狗加解密技术反破解
在工业生产和科学技术研究过程的各行业中,常常要对各种数据进行采集,现在常用的采集方式是在PC机或工控机内安装数据采集卡,如A/D卡及422卡、485卡、采集卡不仅安装麻烦,易受机箱内环境的影响,而且由于受计算机插槽数量和地址、中断资源的限制,不可能挂接很多设备;而用串行总线USB(UniversalSerialBus)能很发地解决以上这些冲突。
利用89C51设计基于USB总线的数据采集设备,还可与MAX485结合起来实现数据的远程采集。该系统具有可靠性高、性价比高和多点采集等优点。
1系统硬件设计
USB数据采集系统硬件模块主要由串行A/D转换器、89C51芯片、USB接口芯片和多路模拟开关等组成。硬件总体结构框图如图1所示。
USB接口芯片采用NationalSemiconductor公司的一种专用芯片USBN9602。该芯片内部集成微处理器接口、FIFO存储器、时钟发生器、串行接口引擎(SIE)、收发器和电压转换器,支持DMA和微波接口。
多路模拟输入信号经多路模拟开关控制将其中的一路接入串行A/D转换器,A/D转换器经光电隔离后串行输出到移位寄存器,移位寄存器将此结果转为8位并行数据。89C51系统通过8位的并行接口传送A/D转换器采集的数据,存储在FIFO存储器中;一旦FIFO存满,SIE立刻对数据进行处理,然后89C51系统将数据从FIFO存储器中读出,由收发器通过数据线(D+、D-)送至主机。USBN9602与89C51的具体接口电路如图2所示。图中USBN9602的CLKOUT与89C51的XTAL1相连,即USBN9602的时钟输出为89C51提供时钟输入。USBN9602的复位端接RC电路,以保证复位电路可靠地工作。由于晶振频率较高,结合USBN9602内部网络,在XOUT端串接100μF电容及470μF电感,起稳定内部振荡频率的作用。
2系统软件设计
系统软件包括设备固件、USB设备驱动程序和应用程序。
2.1设备固件(firmaware)设计
此处固件是指固化到89C51Flash中的程序。其主要功能是:①控制A/D转换器的采样;②控制芯片USBN9602接受并处理USB驱动程序的请求及应用程序的控制指令。现主要介绍89C51系统如何控制USB控制器(USBN9602)与主机的通信。
89C51系统对USB控制器的操作是严格按照USB协议1.1进行的。按照USB协议1.1的规定,USB传输方式分为4种:控制传输、块传输、同步传输和中断传输。在实际开发中使用了控制传输和块传输。控制传输主要完成主机对设备的各种控制操作,也就是实现位于主机上的USB总线驱动程序(USBD.SYS)以及编写的功能驱动程序对设备的各种控制操作。块传输主要完成主机和设备间的大指数据传输以及对传输数据进行错误检测(若发生错误,它支持“重传”功能)。
89C51系统控制USB控制器的工作工程可以简单地概括为:当USB控制器从USB总线检测到主机启动的某一传输请求后,USB控制器通过中断方式将此请求通知89C51系统;89C51系统通过访问USB控制器的状态寄存器和数据寄存器,获得与此次传输有关的各种参数,并根据具体的传输参数,对USB控制器的控制寄存器和数据寄存器进行相应的操作,以完成主机的传输请求。理解了以上的工作过程就可以进行相应的固件设计。
2.2USB设备驱动程序设计
USB系统驱动程序的设计是基于驱动程序模型WDM(WindowDriverModel)的。WDM采用分层驱动程序模型:较高级的USB设备驱动程序和较低级的USB函数层。其中USB函数层由两部分组成:较高级的通用串行总线模块(USBD)和较低级的主控制器驱动程序模块(HCD)。
目前,Windwos98提供了多种USB设备驱动程序,但并不针对数据采集设备,因此需用DDK(设备驱动程序开发包)开发工具设计专用的USB设备驱动程序。目前,写USB驱动程序的软件也很多,它们均提供用于生成USB驱动的代码生成器,用户按照提示可以定义设备的配置和功能,然后做功能的修改即可。利用软件中提供的例子进行修改也是一个比较好的捷径。可以把USB设备驱动程序的功能划分成4个不同的模块来实现:初始化模块、即插即用管理模块、电源管理模块以及I/O功能实现模块。
初始化模块提供1个入口函数DriverEntry(),整个驱动程序的入口点为DriverEntry例程。在DriverEntry中,需要提供一个AddDevice例程,把驱动程序添加到驱动程序堆栈中去。另外,所有对各种IRP(I/O请求包,如:IRP_MJ_CREATE,IRP_MJ_WRITE,IRP_MJ_CLOSE,IRP_MJ_READ,IRP_MJ_DEVICE_CONTROL等)的处理例程都在此入口函数中作为定义,如:
DriverEntry(INPDRIVER_OBJECTDriverObject,…)//驱动程序入口
{
DriverObject->DriverExtension->AddDevice=USBAddDevice;
DriverObject->DriverUnload=USBUnload;
DriverObject->MajorFunction[IRP_MJ_READ]=USBRead;
DriverObject->MajorFunction[IRP_MJ_WRITE]=USBWrite;
…
}
图2USBN9602与89C51接口电路
即插即用管理模块用来实现USB设备的热插拔及动态配置。当硬件检测到有USB设备接入时,Windows98查找响应的驱动程序,并调用它的DriverEntry例程。PnP(即插即用)管理器调用驱动程序的AddDevice例程,告诉它添加了一个设备。在此处理过程中,驱动程序收到一个设备启动请求(IRP_MN_START_DEVICE)的IRP。同理,当要拔除时,PnP管理器会发出一个设备删除请求(IRP_MN_REMOVE_DEVICE)的IRP,由驱动程序进行处理。通过对这些PnP请求的处理,可支持设备的热插拔和即插即用功能。
电源管理模块负责设备的挂起与唤醒。
I/O功能实现模块完成I/O请求的大部分工作。若应用程序想对设备进行I/O操作,它便使用WindowsAPI函数,对WIN32子系统进行WIN32调用。此调用由I/O系统服务接收并通知I/O管理器,I/O管理将此请求构造成一个合适的I/O请求包(IRP)并把它传递给USB设备驱动程序。USB设备驱动程序接收到这个IRP以后,根据IRP中包含的具体操作代码,构造相应的USB请求块并把此URB(USB请求块)放到一个新的IRP中。然后,把此IRP传递到USB总线驱动程序,USB总线驱动程序根据IRP中所含的URB执行相应的操作(如从USB设备读取数据等),并把操作结构通过IRP返还给USB设备驱动程序。USB设备驱动程序接收到此IRP后,将操作结果通过IRP返还给I/O管理器。最后,I/O管理器将此IRP中操作结果返还给应用程序,至此应用程序对USB设备的一次I/O操作完成。
2.3应用程序设计
用户态的应用程序是数据采集系统的中心,其主要功能为:开启或关闭USB设备、检测USB设备、设置USB数据传输管道、设置A/D状态和数据采集端口、实时从USB接口采集数据、显示并分析数据。
由于USBN9602提供的FIFO不超过64字节,当它存满后,USBN9602自动将数据打包即时请求读入数据,由SIE自动发送数据包。另外,当系统启动A/D模块后,便会创建两个线程:采样线程和显示存盘线程。采样线程负责将采集数据写到应用程序提交的内存;而显示存盘线程负责给应用程序发送显示和存盘消息。当应用程序接收到此消息后,便从它提交的内存读取数据并显示和存盘。此处需要注意的是,采样线程和显示存盘线程在读写应用程序提交的内存时要保持同步。
3远程数据采集系统设计
传输距离是限制USB在工业现场应用的一个障碍,即使增加了中继或Hub,USB传输距离通常也不超过几十m,这对工业现场而言显然太短了。现在,工业现场有大量采用RS-485传输数据的采集设备,其优点主要为传输距离可达到1200m以上,并且可以挂接多个设备;但传输速度慢,且需要板卡支持,安装麻烦。将RS-485与USB结合起来,可以优势互补,产生一种快速、可靠、低成本的远程数据采集系统。
设计这样一个系统的关键设备是RS-485~USB转换器,可以采用USBN9602+89C51+MAX485实现这一功能。整个系统的基本思想是:将传感器采集到的模拟量数字化以后,利用RS-485协议将数据上传。RS-485~USB转换器在主机端接收485的数据。并通过USB接口传输到主机处理;而主机向USB发送数据时,数据通过RS-485~USB转换口转换为485协议向远端输送,从而实现远程数据的双向传输如图3所示。软件方面的设计与上面所述类似。
论文关键词:数据采集仪,锚杆支护,顶板离层,监测
1.引言
顶板离层是巷道围岩变形和破坏的主要形式之一,对于锚杆支护巷道来说,顶板离层则是最大的安全隐患。因此,对锚杆支护巷道进行离层监测,掌握顶板离层的状况,并及时采取相应的措施,阻止顶板失稳、避免突发性破坏的发生具有重要意义。顶板离层监测数据采集仪就是用以测试锚杆长度范围及范围外的顶板离层状况的监测仪器,用于判别锚杆支护参数是否合理,巷道服务期间顶板是否稳定,并以此为依据来避免顶板事故发生。
2.数据采集仪的组成及工作原理
顶板离层监测数据采集仪主要用来采集编码器的脉冲信号表示出的顶板离层的相对位移,并保存在闪存中,可通过无线装置对该设备进行各种参数的设置及存储数据的读取。
2.1数据采集仪的组成
顶板离层监测数据采集仪主要由以下几部分组成:
(1)数显设备:该数显设备可实时监测显示顶板的离层量,当顶板离层量超过一定限度,仪器报警。该数显设备的处理器采用Microchip公司生产的MSP430F4793IP,其性能优越,功耗低,资源丰富,数据处理能力强。
(2)机械放大器:该放大器主要是对顶板的离层量进行放大,以便于采集存储。其外壳的材质选用ABS树脂,该树脂具有突出的耐冲击性、阻燃性和耐磨性等优点。
2.2数据采集仪的工作原理
矿用本安数据采集仪的工作原理是:采用桥式电路进行测量、采用机械式放大装置进行放大,对信号进行模数转换、信号处理,之后进行存储、显示。其测量原理是:
A、B两相脉冲分别通过MSP430F4793IP单片机的P1.2/P1.3中断采集,以A相为基准。当单片机中断侦测到A相脉冲触发中断,判断是上升沿中断还是下降沿中断,如果是上升沿触发中断,当侦测到B相脉冲高电平时,计数器计数值加1,否则减1;如果是下降沿触发中断,当侦测到B相脉冲高电平时,计数器计数值减1,否则加1;P1.2中断完成前,反转A相触发脉冲标志MSP430F4793IP。
3.数据采集仪电气研究
3.1主机芯片的选型
数据采集仪主机对PIE—1000-G05E光电轴角编码器的输出脉冲进行收集、运算、存储和检测,通过数据转移设备对设备进行设置和各种参数及存储数据的读取,同时还实现和上位机的通讯。主要使用的芯片和设备包括单片机(MSP430F4793IP)、串行闪存芯片(JS28F128)、实时时钟芯片(PCF8563)和总线控制芯片(EP1C3T100C8)。
关键词:UML,建模,检测系统,实时系统
Abstract: This paper builds model for subway running state Measuring system based on UML-RT. Real-time analysis and design process of the system is illustrated by modeling system from an overall point by UML diagram such as use case diagram, class diagram, activity diagram and sequence diagram. The paper provides the basis for system development.
Key words: UML; modeling; Measuring system; real-time system
1.引言
地铁性能动态调试是列车调试过程中的重要环节,动态调试主要检测地铁车辆的牵引、动力、制动系统[1]。而现有的地铁动态调试测试手段主要是基于列车本身牵引网络系统自带测试软件,即利用列车通信网络中的列车诊断系统接收列车子系统(包括微机控制与非微机控制系统)的状态信息、故障信息,并进行评估、储存,在司机室的显示屏上进行显示[2]。因此其测量准确性无法衡量。为此开发地铁动态试验性能检测及数据分析装置对于列车的安全正常运行具有重要意义。
2.地铁运行状态检测系统建模
地铁动态试验性能检测及数据分析系统对列车运行过程中的速度、加速度、冲击率、闸瓦温度进行检测和分析。通过测速雷达、压力传感器、红外辐射温度等传感器分别测量地铁行驶过程中的速度、制动管路压力、制动器温度等特征量,然后利用无线传输装置将数据发送给由笔记本电脑和系统控制软件构成的系统控制终端,系统分析软件根据采集的数据进行牵引加速度、制动距离、制动减速度、冲击率、静态制动响应时间等状态量的计算,然后进行数据分析,由此完成对车辆运行状态的监测。
2.1用例模型
用例是模型中结构实体的指定功能,它描述了系统的功能需求,将系统看作黑盒,从外部执行者的角度来理解系统[3]。绘制用例图的第一步是确定系统的参与者。分析可知,系统共有三个参与者,即检测人员、管理人员及地铁。检测人员负责对地铁运行状态进行检测,包括速度、加速度、温度、压力的检测,得出检测结果后,在系统初步分析结果的基础上做出检测报告。管理人员负责进行用户管理和设备管理,以保证检测工作的正常进行。地铁是被检测对象的承载体,由各传感器对检测量进行检测。根据系统要实现的目的和任务,建立系统的用例图如图1所示。
系统中的关键用例有:
(1) 自检模块
系统启动时首先进行系统自检以确认检测设备是否有效,自检包括:测试数据采集命令、数据分析命令、数据导出命令能否正确输出,测试DMI(即人机界面,在本系统即为笔记本电脑)显示等。系统自检完成后能够在DMI上显示自检结果。
(2) 数据采集
根据要求选择各种传感器,将其安装在合适的位置。通过传感器对设备的电压或者电流信号进行采样、保持,并送入A/D转换器变成数字信号,然后将该信号送到FIFO中。当FIFO中存放的数据到了一定数目时,由ARM7从FIFO中读出,从而达到利用各传感器对相应的特征量进行测量的目的。
(3) 数据传输
监控或控制设备无线网络通信,目前主要采用IEEE802.11 a/b/g WLAN或者Zigbee技术。鉴于Zigbee是一种低耗、低成本且能满足要求的无线串行网络通信技术,本系统采用Zigbee无线传输技术,以CC1110无线soc为核心的无线通信装置进行数据传输。无线传输模块与传感器模块通过串口通信,无线传输模块取得传感器数据后以无线方式将采集到的监测数据发送到数据采集接入点(AP),然后数据采集接入点通过串行方式把数据传输到系统监测终端。
(4) 数据导出
将传感器检测到的数据导出,数据保存为通用格式,可以用EXCEL等第三方软件打开,方便数据分析阶段进行图表分析。
(5) 数据分析
对接收到的检测数据进行计算,根据预先设置好的监测数据阈值,对比采集到的监测数据,做出初步的分析判断,并可根据需要在数据导入EXCEL等第三方软件后进行图表分析。MATLAB在图像处理领域中,功能强大,使用简单,可用于对DMI界面的图像处理;C#可以快速开发可视化界面,数据读取等,用于检测设备测试结果分析界面的搭建[4][5]。在获取检测设备测试的数据之后,需要进行结果的分析与评估时,在C#主程序里通过匿名管道调用MATLAB可执行程序来对数据进行分析和评估。
(6) 数据库
对检测的数据及数据分析过程产生的图表行储存;对测试特征量的阀值进行设定;对用户进行管理等。
2.2类图分析
类图反映了系统中类的静态结构。类图不仅定义系统中的类,还表示类之间的联系,如关联、依赖、聚合等,同时也包括类的内部结构(类的属性和操作)。
检测系统提供显示和操作界面DMI,检测员通过对系统界面进行一系列操作完成检测过程,在此过程中DMI也会为检测员提供检测过程的参考信息。因此围绕DMI进行深入分析具有重要意义,其类图如图2所示。
1.控制的内容包括:
1) 数据采集的启动与停止:包括对速度、加速度、温度、压力等信息的采集进行控制,并将采集到的信息通过无线传输装置发送给控制终端并显示出来。
2) 数据分析的启动与停止:包括将采集的数据导入到EXCEL等第三方软件,并做图表分析。
2.显示的内容包括:
1) 采集数据显示:显示速度值、加速度值、压力值、温度值。
2) 警示信息显示:速度异常显示、加速度异常显示、压力异常显示、温度异常显示。
3) 数据分析结果显示:速度、加速度、温度、压力的分析图表显示。
4) 设备状态信息显示:控制模式、工作模式等信息显示。
2.3检测过程活动图
活动图在用例分析中主要用来描述用户当前完成的工作以及用例实例或对象中的活动[6],为了更详细地描述用户使用系统的工作过程,我们给出本系统的用户活动图。检测过程建模的主要业务有登录、数据采集、数据分析和数据存储。其活动图如图3所示。
事件流程可以描述如下:
检测人员使用用户名和密码登录系统;
检测人员发出数据采集指令,传感器进行数据采集;
无线传输装置将传感器采集到的数据发送到控制终端进行存储;
控制终端对数据进行计算,并作图表分析;
检测人员根据分析结果整理出检测报告;
检测人员也可再次登陆系统查看上次检测结果。
2.4检测过程序列图
为防止活动图变得过于复杂,数据采集、数据分析等过程都分别被压缩在了一个超级活动里,为了更详尽的描述实例间的消息,现在使用交互图[7]。序列图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互,检测过程序列图如图4所示。在活动图中已经详细表达清楚的内容在下面的序列图中不再进行赘述,仅从登录成功角度进行描述。
3.结论
本文利用实时UML,通过用例图、类图、活动图、序列图建立了地铁运行状态检测系统的模型,研究表明,为地铁运行状态检测系统构建UML 模型,能够规范系统开发流程、优化软件结构、提高系统开发效率,增强程序可读性和可维护性。该项工作的完成为地铁运行状态检测系统的开发提供了依据。
参考文献
[1]王磊,列车网络控制系统的分析与研究[D],西南交通大学硕士学位论文,2008,01
[2]李春璞,记者试乘长沙地铁提速停车都“温柔”[N],长沙晚报,2013-04-11(A8)
[3]GB/T 7928-2003,地铁车辆通用技术条件[S]
[4]李伟,CTCS-3级列控系统车载设备测试平台关键问题研究[D],北京交通大学硕士学位论文,2008,06
[5陈建球,CTCS级车载设备自动测试方法研究[D],北京交通大学硕士学位论文,2009,05