发布时间:2023-04-14 16:56:10
序言:写作是分享个人见解和探索未知领域的桥梁,我们为您精选了8篇的数据采集论文样本,期待这些样本能够为您提供丰富的参考和启发,请尽情阅读。
系统框架设计
林业资源监管通用数据采集系统采用C#语言、ArcEngine和开普互联智能表台进行设计开发。系统分为B/S架构的Web配置系统和C/S架构的桌面系统两部分,如图1所示。这种设计方式基于:1)B/S架构已成为林业业务系统的主流架构,借助配置系统以便将通用数据采集系统与业务系统进行集成;2)使桌面系统可以专注于数据采集,实现与业务流程、功能的松散耦合。Web配置系统包括数据交换以及桌面系统的配置管理功能模块,支持本地和远程配置方式。数据交换通过将事先制作完成的支撑数据提供给桌面系统,作为各业务数据采集系统运行的基础,并将采集完成的数据返回数据库,提供给其他业务系统使用。配置管理支持对采集数据、支撑数据以及桌面系统功能界面的配置,并将配置结果保存在XML配置文件中,作为桌面业务系统运行的基础。通过配置系统为桌面系统提供支撑数据并进行相关配置,就可以为不同业务定制数据采集系统。桌面系统包括通用功能元件、业务系统配置、动态数据的管理以及界面的生成4个功能模块。通用功能元件包含数据采集的一般功能。业务系统配置提供配置内容的读写功能。动态数据管理根据配置实现对不同业务支撑数据的访问、更新以及采集数据的导出。界面生成根据配置信息生成特定于业务的系统界面。桌面系统框架采用变种MVC模式(模型--视图--控制器),该模式采用数据驱动设计[9],使得视图、控制器和模型可以随业务而变。在数据层,空间数据与属性数据分表存储,空间数据表只存储与业务无关的图形信息,从而能以统一的形式访问、处理及显示空间数据,不受业务变化的影响。而与业务紧密相关的属性数据单独存储在属性表中,并将与属性数据相关的视图、控制器及模型的变化存储在用开普互联智能表台制作的表单文件、数据映射文件中,系统在运行时就可以基于表单文件、数据映射文件及配置文件动态地构建视图、控制器及模型,从而将业务数据的变化隔离在源代码之外,使源代码高度内聚,不会变异。由于两类数据的处理方式不同,数据间的完整性通过逻辑校验来保证。
关键技术及实现
林业资源监管通用数据采集系统采用的关键技术包括智能配置、界面自动生成和动态数据管理技术。
1智能配置技术
智能配置技术是指将与业务相关的变化信息存储在配置文件中,系统在运行时读取配置文件,根据其中的信息实现对不同业务数据采集功能的定制。当业务数据采集需求发生变化时,仅需通过改变配置信息就能满足需求,这样既增加了系统的灵活性,又能保持系统的稳定。数据采集系统通过配置系统实现智能配置,主要包括系统配置、采集数据配置两方面。(1)系统配置。系统配置包括支撑数据、用户功能界面配置两部分。支撑数据的配置内容包括数据版本号,采集人员的账户信息及该账户关联的业务名列表,支撑数据中各数据名称、类型、对数据操作的命令和命令状态列表。版本号为自然数值,作为数据是否需要更新的依据;业务名列表的形式为“Reforestation/造林,Harvesting/采伐”,前面是业务系统的英文名,后面是对应的中文名,之间用反斜杠隔开,指明账号可以使用的数据采集系统;数据名称为数据文件的名称,类型包括数据库、表和普通文件。命令指明了如何处理数据,包括覆盖、更新、添加、删除4种。命令状态包括已执行或未执行,决定系统是否执行命令。用户功能界面配置内容包括功能元件、逻辑验证规则和表单配置。功能元件和逻辑验证规则的配置目标可以是单个图层或整个系统。功能元件的状态包括可见、隐藏、可用与禁用,当不需要使用某项功能时,根据功能元件的名称将其状态设置为隐藏或禁用即可。逻辑验证规则的配置内容包括SQL语句及其描述,通过执行SQL语句进行验证;SQL语句的执行方式不随业务变化,规则的描述为界面上呈现给用户的信息,如地类检查。表单的配置目标是图层,包括图层名、表单文件名及其描述,通过将图层名和表单文件名配对存储,就能根据图层找到对应的表单进行属性数据的录入,描述为用户界面上呈现给用户的信息,如造林模式表。(2)数据配置。采集数据的配置包括需要导出的数据版本号、表名称、数据记录主键序列以及其他数据文件的名称。数据版本是自然数值,作为外界是否需要下载该数据的依据。系统根据数据名称和主键序列导出数据。
2功能界面自动生成
功能界面自动生成以功能元件为基础,通过建立配置文件完成用户界面的按需定制。(1)系统功能元件。系统是功能元件的集合,功能元件可能是单个功能或一类功能,如图形创建是单个功能,图形编辑是一类功能,在界面上表现为单个控件。本文使用功能元件名称、控件名称、功能状态及功能描述来表达功能元件。对于用户而言,只需配置功能名称及状态来控制功能界面。系统功能元件信息存储在XML文档中,该文档需要按照模板文件制作,配置系统解析该XML文档,并在界面上列举出功能元件列表供用户配置。(2)界面生成算法。数据采集系统中涉及界面变化的模块主要包括:1)空间编辑和拓扑校验界面。该界面因功能是否需要使用而变化。2)属性编辑界面。该界面随数据内容和结构而变化。3)逻辑校验界面。该界面随校验规则内容而变化。界面自动生成以功能元件及系统配置文件为基础,通过解析配置文件动态生成用户界面,生成流程如图2所示。3个界面的生成算法各有不同。空间编辑和拓扑校验界面的生成是根据配置对WindowsForm控件的可见性和可用性进行控制来实现的;属性编辑界面的生成是通过加载开普互联智能表单文件到WindowsForm窗体中来实现的,开普互联智能表单界面如图3所示;逻辑校验界面的生成是通过加载验证规则到WindowsForm窗体中的列表控件中来实现的。
3动态数据库管理
动态数据库是结构和数据都可以随需要而变化的数据库[10--11],在本文中是指整个数据库的改变。数据采集系统以单一业务配置为基础,每个采集人员配备独立的设备和采集系统,但在人力和设备资源有限的情况下,数据采集系统需要支持多个业务的数据采集或多个采集人员共用一套设备和系统。系统需要根据业务、人员职责调用不同的支撑数据。解决方案为:建立以采集人员账号名和业务名组合命名的文件夹,通过配置系统将不同的支撑数据放到对应的文件夹内。当用户登录系统时,系统依据账号列出可操作业务,采集人员从中选择业务名称,系统就可以将正确的支撑数据供给用户使用。
4数据交换
数据交换包括支撑数据的上传及采集数据的下载,使用配置系统完成,交换的数据放在该系统目录下。支撑数据的上传有2种情况:1)采集系统的定制。将所有支撑数据以添加命令上传,桌面系统运行时会判断是否存在数据,如果不存在数据,就会从配置系统目录拷贝数据到本系统目录,结合这些数据形成特定于业务的采集系统。2)部分支撑数据的变更。将部分支撑数据以添加、删除、更新3种命令之一上传,桌面系统运行时检查配置系统目录下的数据版本号,如果版本号小于配置系统目录下数据版本号,就按照配置的命令进行更改。数据采集完成并通过校验后,由桌面系统将数据导出并压缩,然后拷贝到配置系统目录。每导出一次数据都会累加版本号,系统用户根据版本号下载最新的采集数据。
信号调理电路根据功能分为输入保护电路、抗混叠低通滤波电路、衰减电路、增益电路和电压抬升电路。(1)输入电压幅值最高在24V,为防止输入电压超出可测范围,在输入端采用两个24V的稳压管支路进行电压钳位保护,并且分别在两个支路串联不同颜色的发光二极管以显示正反向超压。(2)为了消除高频噪声信号和被测信号中的高频成分对信号采集的混叠效应,设计了二阶低通抗混叠滤波电路。为保证较好的抗混叠效果和测量带宽,设定滤波器的截止频率为300kHz。滤波电路形式固定如图2所示,其频域传递函数为。由式可得滤波器的截止频率fp≈0.64f0,fp=300kHz,得RC=3.4×10-7s。通过multisim仿真比较确定参数值。抗混叠低通滤波电路如图2所示。(3)LM3S9B96的ADC的输入电压范围是0V~3V,要实现采集0V~±24V的输入信号需要对信号进行衰减处理,衰减网络采用兆欧级精密电阻组成,其中固定电阻设定为1MΩ。这里选择8,4,2,1四级衰减,后期处理的数据可以通过移位操作进行数据还原。电路实现选用OMRON公司G5V-1小信号继电器作为开关控制,根据上位机传输的命令来选择合适的电阻支路。具体的数值对应关系如表1所示。(4)为满足采集小信号的需求,采用TI公司的增益可编程仪表放大器PGA205。PGA205具有四级数控增益,数控端直接连接到微控制器的I/O引脚[5]。输入幅值、放大倍数和数控端的对应关系同上述衰减电路类似,这里不列表赘述。增益电路如图3所示,PC4、PC5为数控端。(5)信号经过衰减和放大电路的调理后电压范围为0V~±3V电压信号将信号调理至0V~6V范围,再经过比例运算电路做1/2分压处理。运放选择TL052,是由TI公司生产的低失调加强型的JFET运算放大器,相对于TL07和TL08系列具有更快的转换速度。
2电源供电系统
本文中需要三级电源供电:3.3V,5V,±10V。5V电压通过SPX1117-3.3V稳压芯片转变为3.3V为系统供电,±10V要是给可编程放大器PGA205和运放TL052供电,该电压需要5V电压经过Boost升压电路得到,设计选用TPS61040开关电源芯片,其为低功耗的DC/DCBoost转换芯片,内部集成开关管,开关频率可达1MHz,输出电压纹波低[6]。双电源供电电路如图4所示。
3系统软件设计
本文软件设计任务主要是LM3S9B96芯片的初始化和内部各模块之间的逻辑控制,包括根据上位机的指令来设定调理电路。数据采集系统总的软件任务框图如图5所示。信号调理任务负责根据上位机发出的指令完成调理电路的设定;采样任务实现对模拟信号的采集;数据转移存储任务负责将数据从ADC转移到内存,再转移到USB缓存。数据转移任务利用DMA来实现,DMA的工作模式分为基本模式、乒乓模式和外设散聚模式,为了ADC采集不丢失数据,本文采用了乒乓模式,在程序设计时创建主数据结构体和副数据结构体交替接收数据,高效的完成数据转移任务;数据传输任务负责将数据从微控制器通过USB总线传输到上位机。USB总线标准是在1994年由英特尔、康柏、IBM、Microsoft等多家公司联合提出,包含了四种基本数据传输类型:控制传输、批量传输、中断传输和等时传输,本文需要向上位机传输大量数据,选择批量传输模式(BULK)传输数据[7]。基于LM3S系列芯片,TI公司提供了多层次十分丰富灵活的USB驱动库,简化软件的实现。
4上位机软件设计
NIVISA(VirtualInstrumentSoftwareArchitecture)是NI公司开发的一种用来与各种仪器总线进行通信的高级应用编程接口,VISA总线I/O软件是一个综合软件包,不受平台、总线和环境的限制。VISA是NI公司随LabVIEW配套提供的,从3.0版本开始支持USB通讯,根据是否符合USB测试和测量协议,VISA分为两种VISA类函数,可以控制两类USB设备:USBINSTR设备和USBRAW设备。这里使用USBRAW设备。利用VISA驱动程序开发向导产生INF文件用来通知Window系统将NI-VISA用作USB设备的默认驱动,完成之后才可以正常和下位机通讯。USBRAW类设备的读写时序为(1)ViOpen打开VISA设备;(2)ViProperty设定VISA设备的属性节点参数(指令端点和传输方式);(3)ViRead读写USBRAW(发送命令和设定字数);(4)ViClose关闭VISA(释放VISA设备所占资源)。上位机程序总体分为指令接受程序,数据接受程序、数据处理程序和波形显示程序。数据处理程序框图如图6所示。
5系统测试与结果
为了测试系统的可靠性,本文使用数字合成信号发生器DF1405模拟传感器输出信号作为数据采集系统的测试信号。经测试,设计系统完整实现了设计要求。5V10kHz正弦波测试结果如图7所示,通过点击Save控件可以完成数据的存储。
6结束语
关键词:USBRS485数据采集
在工业生产和科学技术研究的各行业中,常常利用PC或工控机对各种数据进行采集。这其中有很多地方需要对各种数据进行采集,如液位、温度、压力、频率等。现在常用的采集方式是通过数据采集板卡,常用的有A/D卡以及422、485等总线板卡。采用板卡不仅安装麻烦、易受机箱内环境的干扰,而且由于受计算机插槽数量和地址、中断资源的限制,不可能挂接很多设备。而通用串行总线(UniversalAerialBus,简称USB)的出现,很好地解决了以上这些冲突,很容易就能实现低成本、高可靠性、多点的数据采集。
1USB简介
USB是一些PC大厂商,如Microsoft、Intel等为了解决日益增加的PC外设与有限的主板插槽和端口之间的矛盾而制定的一种串行通信的标准,自1995年在Comdex上亮相以来至今已广泛地为各PC厂家所支持。现在生产的PC几乎都配备了USB接口,Microsft的Windows98、NT以及MacOS、Linux、FreeBSD等流行操作系统都增加了对USB的支持。
1.1USB系统的构成
USB系统主要由主控制器(HostController)、USBHub和USB外设(PeripheralsNode)组成系统拓扑结构,如图1所示。
1.2USB的主要优点
·速度快。USB有高速和低速两种方式,主模式为高速模式,速率为12Mbps,另外为了适应一些不需要很大吞吐量和很高实时性的设备,如鼠标等,USB还提供低速方式,速率为1.5Mb/s。
·设备安装和配置容易。安装USB设备不必再打开机箱,加减已安装过的设备完全不用关闭计算机。所有USB设备支持热拔插,系统对其进行自动配置,彻底抛弃了过去的跳线和拨码开关设置。
·易于扩展。通过使用Hub扩展可拨接多达127个外设。标准USB电缆长度为3m(5m低速)。通过Hub或中继器可以使外设距离达到30m。
·能够采用总线供电。USB总线提供最大达5V电压、500mA电流。
·使用灵活。USB共有4种传输模式:控制传输(control)、同步传输(Synchronization)、中断传输(interrupt)、批量传输(bulk),以适应不同设备的需要。
2采用USB传输的数据采集设备
2.1硬件组成
一个实用的USB数据采集系统包括A/D转换器、微控制器以及USB通信接口。为了扩展其用途,还可以加上多路模拟开关和数字I/O端口。
系统的A/D、数字I/O的设计可沿用传统的设计方法,根据采集的精度、速率、通道数等诸元素选择合适的芯片,设计时应充分注意抗干扰的性能,尤其对A/D采集更是如此。
在微控制器和USB接口的选择上有两种方式,一种是采用普通单片机加上专用的USB通信芯片。现在的专用芯片中较流行的有NationalSemiconductor公司的USBN9602、ScanLogic公司的SL11等。笔者曾经采用Atmel公司的89c51单片机和USBN9602芯片构成系统,取得了良好的效果。这种方案的设计和调试比较麻烦,成本相对而言也比较高。
另一种方案是采用具备USB通信功能的单片机。随着USB应用的日益广泛,Intel、SGS-Tomson、Cypress、Philips等芯片厂商都推出了具备USB通信接口的单片机。这些单片机处理能力强,有的本身就具备多路A/D,构成系统的电路简单,调试方便,电磁兼容性好,因此采用具备USB接口的单片机是构成USB数据采集系统较好的方案。不过,由于具备了USB接口,这些芯片与过去的开发系统通常是不兼容的,需要购买新的开发系统,投资较高。
USB的一大优点是可以提供电源。在数据采集设备中耗电量通常不大,因此可以设计成采用总线供电的设备。2.2软件构成
Windows98提供了多种USB设备的驱动程序,但好象还没有一种是专门针对数据采集系统的,所以必须针对特定的设备来编制驱动程序。尽管系统已经提供了很多标准接口函数,但编制驱动程序仍然是USB开发中最困难的一件事情,通常采用WindowsDDK来实现。目前有许多第三方软件厂商提供了各种各样的生成工具,象Compuware的driverworks,BlueWaters的DriverWizard等,它们能够很容易地在几分钟之内生成高质量的USB的驱动程序。
设备中单片机程序的编制也同样困难,而且没有任何一家厂商提供了自动生成的工具。编制一个稳定、完善的单片机程序直接关系到设备性能,必须给予充分的重视。
以上两个程序是开发者所关心的,用户不大关心。用户关心的是如何高效地通过鼠标来操作设备,如何处理和分析采集进来的大量数据,因此还必须有高质量的用户软件。用户软件必须有友好的界面,强大的数据分析和处理能力以及为用户提供进行再开发的接口。
3实现USB远距离采集数据传输
传输距离是限制USB在工业现场应用的一个障碍,即使增加了中继或Hub,USB传输距离通常也不超过几十米,这对工业现场而言显然是太短了。
现在工业现场有大量采用RS-485传输数据的采集设备。RS-485有其固有的优点,即它的传输距离可以达到1200米以上,并且可以挂接多个设备。其不足之处在于传输速度慢,采用总线方式,设备之间相互影响,可靠性差,需要板卡的支持,成本高,安装麻烦等。RS-485的这些缺点恰好能被USB所弥补,而USB传输距离的限制恰好又是RS-485的优势所在。如果能将两者结合起来,优势互补,就能够产生一种快速、可靠、低成本的远距离数据采集系统。
这种系统的基本思想是:在采集现场,将传感器采集到的模拟量数字化以后,利用RS-485协议将数据上传。在PC端有一个双向RS-485~USB的转换接口,利用这个转接口接收485的数据并通过USB接口传输至PC机进行分析处理。而主机向设备发送数据的过程正好相反:主机向USB口发送数据,数据通过485~USB转换口转换为485协议向远端输送,如图3所示。
在图3的方案中,关键设备是485~USB转换器。这样的设备在国内外都已经面市。笔者也曾经用NationalSemiconductor公司的USBN9602+89c51+MAX485实现过这一功能,在实际应用中取得了良好的效果。
需要特别说明的是,在485~USB转换器中,485接口的功能和通常采用485卡的接口性能(速率、驱动能力等)完全一样,也就是说,一个485~USB转换器就能够完全取代一块485卡,成本要低许多,同时具有安装方便、不受插槽数限制、不用外接电源等优点,为工业和科研数据采集提供了一条方便、廉价、有效的途径。
4综合式采集数据传输系统的实现
现在的数据采集系统通常有分布式和总线两种。采用USB接口易于实现分布式,而485接口则易于实现总线式,如果将这两者结合起来,则能够实现一种综合式的数据采集系统。实现方法是:仍然利用上面提到过的USB~485转换器实现两种协议的转换。由于USB的数据传输速率大大高于485,因此在每条485总线上仍然可以挂接多个设备,形成了图4所示的结构,其中D代表一个设备。
这种传输系统适用于一些由多个空间上相对分散的工作点,而每个工作点又有多个数据需要进行采集和传输的场合,例如大型粮库,每个粮仓在空间上相对分散,而每个粮仓又需要采集温度、湿度、二氧化碳浓度等一系列数据。在这样的情况下,每一个粮仓可以分配一条485总线,将温度、湿度、二氧化碳浓度等量的采集设备都挂接到485总线上,然后每个粮仓再通过485总线传输到监控中心,并转换为USB协议传输到PC机,多个粮仓的传输数据在转换为USB协议后可以通过Hub连接到一台PC机上。由于粮仓的各种数据监测实时性要求不是很高,因此采用这种方法可以用一台PC机完成对一个大型粮库的所有监测工作。
5前景展望
关键词:超低功耗MSP430数据采集USB接口设计
引言
实现系统运行的最小功耗是现代电子系统的普通取向,也是绿色电子的基本要求。采有最小功耗设计方法既能减少电子设备的使用功耗,又能减少备用状态下的功率消耗。在节省能源的同时还有利于减少电磁污染,有利于电子系统向便携式方向发展,有助于提高系统的可靠性。
现代工业生产和科学研究对数据采集的要求日益提高。在许多场合要求数据采集系统向便携化方向发展,要求系统具有体积小、功耗低、传输速率快、使用方便灵活等特点。在数据采集系统中,如何节省电能以使系统工作时间更长,如何通信才能使系统数据传输速度更快,已经成为系统开发过程中必须加以考虑的主要内容。
微控制器MSP430的超低功耗技术在众多单片机中独树一帜,同时它具有集成高度等特点,因此,选用该控制器作为系统的主控制器,实现数据采集和Flash存储等功能。此外,USB端口与以往的普通端口(串口与并口)相比具有传输速度快、功耗低、支持即插即用、维护方便等优点;因此在通信设计时,结合UART转USB芯片CP2101以实现USB接口通信。上述设计既利用了MSP430的超低功耗特性,又利用了CP2101设计USB接口的简便性,设计得到的数据采集系统可以实现便携化、低功耗、使用方便等目标。
1MSP430数据采集系统的USB接口设计
1.1采信系统简介
本系统实现多路数据的采集、Flash存储及USB通信等功能。单片机系统主要完成信息采集、A/D转换、对信号进行放大滤波处理、数据通信、Flash存储等;实时时钟记录采集数据的时间;CP2101实现USB接口,并把单片机采集到的信号传给微机;微机完成数据接收、存入数据库、数据处理、计算、显示等功能。
1.2超低功耗MSP430微控制器
MSP430是TI公司近几年推出的16位系列单片机。它采用最新的低功耗技术,工作在1.8~3.6V电压下,有正常工作模式(AM)和4种低功耗工作模式(LPM1、LPM2、LPM3、LPM4);在电流电压为3V时,各种模式的工作电流分别为AM:340μA、LPM1:70μA、LPM2:17μA、LPM3:2μA、LPM4:0.1μA,而且可以方便地在各种工作模式之间切换。它的赶低功耗性在实际应用中,尤其是电池供电的便携式设备中表现尤为突出。在系统初始化后进入待机模式,当有允许的中断请求时,CPU将在6μ的时间内被唤醒,进入活动模式,执行中断服务程序。执行完毕,在RETI指令之后,系统返回到中断前的状态,继续低功耗模式。
本设计采用MSP430F13X微控制器。它具有非常高的集成度,单片集成了多通道12位A/D转换、PWM功能定时器、斜边A/D转换、片内USART、看门狗定时器、片内数控振荡器(DCO)、大量的I/O端口、大容量的片内RAM和ROM以及Flash存储器。其中Flash存储器可以实现掉电保护和软件升级。
1.3USB接口芯片选型
通用串行总线USB是由Intel等厂商制定的连接计算机与具有USB接口的多种外设之间通信的串行总线。传统上,USB接口的开发较为复杂。在同其它USB接口芯片相比较之后,本设计选择了无需外部元件的UART转USB芯片CP2101。选择这种接口芯片,可使USB通信接口设计变得十分容易。与同类产品相比,CP2101具有以下优点:
①具有较小的封装。CP2101为28脚5mm×5mmMLP封装。这在PCB上的尺寸就比竞争对手小30%左右。
②高度成度。片内集成512字节EEOROM(用于存储厂家ID等数据),片内集成收发器、无需外部电阻;片内集成时钟,无需外部晶体。
③低成本,可实现USB转串口的解决方案。CP2101的USB功能无需外部元件,而大多数竞争者的USB器件则需要额外的终端晶体管、上拉电阻、晶振和EEPROM。具有竞争力的器件价格,简化的电路,无成本驱动支持使得CP2101在成本上的优势远超过竞争者的解决方案。
④具有低功耗、高速度的特性,符合USB2.0规范,适合于所有的UART接口(波特率为300bps~921.6kbps)。工业级温度范围为-40℃~85℃)。
2USB通信的硬件接口电路
硬件电路如图1所示。CP2101的SUSPEND与SUSPEND引脚接到MSP430F13X的普通串口上。这两个引脚传送USB挂起和恢复信号,此功能便于CP2101器件以及外部电路的电源管理。当在总线上检测到挂起信号时,CP2101将进入挂起模式,可以节省电能。在进入挂起模式时,CP2101会发出SUSPEND与SUSPEND信号。为了避免SUSPEND与SUSPEND在复位期间处于高电平,使用10kΩ的下拉电阻确保SUSPEND在复位期间处于低电平。
CP2101的USB功能控制器管理USB和UART间所有的数据传输,以及由USB主控制器发出的命令请求以及用于控制UART功能的命令等。CP2101的UART接口处理所有的RS232信号,包括控制和握手信号。CP2101的VBUS与VREGIN引脚必须始终连到USB的VBUS信号上。在VREGIN的输入端加去耦电容(1μF与0.1μF并联)。CP2101与单片机接口是标准UART电平,与计算的USB端口连接是USB标准电路,因此,无论与3V还是5V供电的单片机连接都不需要电平转换。
3USB通信接口的软件程序设计
USB接口程序设计包括三部分:单片机程序开发、USB设备驱动程序开发、主机应用程序开发。三者互相配置才能完成可靠、快速的数据传输。其中USB设备驱动程序Cygnal公司已经提供。这里所要编写的是剩下的两部分。一部分为单片机MSP430F13X的串行通信程序,即对波特率、数据位、校验位、有无奇偶校验等通信协议的设计及单片机串行通信功能控制器的设置;另一部分为主机对CP2101的通信程序,这部分要在VC++环境中调用API函数实现。
3.1单片机程序设计
在IAREmbeddedWorkbench嵌入式集成开发环境中,编写单片机通信程序,可实现在线编辑修改。MSP430的内核CPU结构是按照精简指令集和高透明指令的宗旨来设计的,使用的指令有硬件执行的内核指令和基于现有硬件结构的高效率的仿真指令。以下为系统发送数据的部分应用程序(包括初始化及触发UART端口程序):
#include"msp430x13x.h"
/*************************串口*************************/
voidsend_byte(charsdata){
TXBUF0=sdata;/*发送数据缓存(UTXBUF0)*/
while(IFG1&TUXIFG0)==0);/*目的操作数位测试,发送中断标志*/
}
/*************************main*************************/
voidmain(void){
chara;
uinta=0x0055;
WDTCTL=WDTPW+WDTHOLD;/*停看门狗,WDTCTL看门狗寄存器*/
UCTL0=CHAR;/*8位接收控制寄存器URCTL线路空闲\u24322异步\u26080无反馈8位1位停止位\u26080无校验位*/
UTCTL0=SSEL0;/*发送控制寄存器UTCTL0,UCLK=ACLK时钟*/
UBR00=0x0D;/*32Kb/2400b=13.65,波特率选择寄存器*/
UBR10=0x00;/*高字节*/
UMCTL0=0x6B;/*调节*/
ME1|=UTXE0+URXE0;
/*开USART0TXD/RXD接收/发送允许*/
IE1|=URXIF0;/*打开USART0RX接收中断允许位*/
P3SEL|=0x30;/*P3.4,5=USART0TXD/RXD,选择模块功能*/
P3DIR|=0x10;/*目标操作数置位,P3.4=1,输出模式*/
_EINT();/*开中断*/
//主循环
for(;;)
{send_byet(a++);}
}
3.2USB设备驱动程序的安装
当把开发板接到主机的USB端口时系统会提示发现新硬件,并要求安装驱动程序:
先安装CP2101的驱动程序CP2101_Drivers.exe到C:FilestoRS-232BridgeController.
完成上面两步的安装后,在系统的设备管理器中会看见CP2101虚拟的那个COM口。在以后的设计中就是对这个口进行操作。此时可能应用串口调试助手调试下位机程序,接收发送数据。
3.3主机应用程序设计
主机应用程序的编写使用VC++编译环境中的API(应用程序设计接口)函数实现。应用程序的设计方法与串口编程类似。首先必须查找设备并打开设备的句柄,然后进行读写和控制操作,最后是关闭设备句柄。为了提高效率,可使用多线程技术实现读写。具体步骤如下:
①把CP2101的动态链接库CP2101.DLL文件拷贝到,或者路径下。当程序运行时就能调用CP2101.DLL。
②在visualstudio6.0中打开CP2101SetIDs.dsw,选择Release或者Debug建立CP2101.EXE工程文件。
③在VC++6.0中链接CP2101.LIB,这时就可以应用CP2101的动态链接库了。
④在VC++里进行编程,用API功能函数对USB堆栈、CP2101的EEPROM及数据传输的通信协议等进行编程。
当数据传输完毕时,应用CP2101_Close()函数关闭设备句柄。可以根据实际应用修改CP2101的VID和PID,并用相应函数写进CP2101的EEPROM中。但须注意的是,修改后要用CP2101_Rest()函数使CP2101复位并重新安装驱动程序。
万福生科采用大量个人账户作为交易对象,为了配合虚构销售收入,万福生科伪造了相关采购和销售合同,虚构了300多个个人账户作为供应商账户。万福生科首先通过自有资金,打入事先虚构的300多个个人账户作为采购款,然后从个人账户转入公司账户,形成虚构销售收入入账。虚增的销售收入以现销的形式形成,使得审计过程难以发现收入虚增问题。同时,通过虚增在建工程和预付账款来虚增资产。万福生科选择利用在建工程来虚增资产是由于在建工程在没有转为固定资产前,其在报表中显示的账面价值难以测算,企业操作的空间很大。因为万福生科刚上市,有大量募投项目,在建工程项目放大不至于引人注意。首先从公司账户打入个人账户款项作为预付工程设备款,一部分预付工程设备款用来抵付因虚增收入、由个人账户转入公司的款项,另一部分预付工程设备款则形成在建工程。因在建工程核算的相对自由性,账面在建工程进行了大量虚构。万福生科的造假方式使得审计人员实施的交易实质性测试失灵。万福生科财务舞弊案件表明,财务舞弊的发生往往并非由于内部控制制度不健全,而是管理层凌驾于内部控制之上,致使内部控制未能发挥应有的作用。审计人员测试内部控制制度往往无法发现这种刻意隐瞒的管理层舞弊行为。因此,审计人员必须跳出企业账本和财务报表的束缚,灵活运用分析性程序来提高审计效果。
(一)分析关联财务数据间是否相互矛盾
万福生科财务造假案中,该公司披露的2010年、2011年净利润分别为5,555万元和6,026万元,而自由现金流分别为-3,997万元和-10,276万元,净利润和自由现金流两项指标出现了严重背离,据此可推断万福生科利润表或现金流量表数据可能存在造假嫌疑。万福生科2012年半年报显示,万福生科在在建工程没有项目转入固定资产的情况下,其在建工程从8,675万元增加至17,998万元,增加了8,323万元。但是,现金流量表中“购建固定资产、无形资产和其他长期资产支付的现金”只有5,883万元,据此可以推测预付工程款或者应付工程款增加。报表中显示的预付账款增加了2,632万元,但应付账款却只增加了379万元。应付账款和预付账款不仅包含投资活动的款项,还应包含经营活动的业务往来款项,两者的增加额与在建工程的增加相比相差甚远,由此可以推断有诸多的疑点。万福生科2011年年报和2012年半年报中对于在建工程的披露也存在着重大矛盾之处,在建工程项目在投入了大量资金后,工程进度反而降低了。如淀粉糖改扩工程和厂区绿化工程,在分别投入了2,601万元和74万元之后,工程进度却分别从90%、100%降低到30%、85%。
(二)分析与同行业水平是否不符
万福生科2011年年报摘要中公布的普米毛利率为12.39%、精米毛利率为17.62%。同行业中湖南金健米业股份有限公司2011年报中公布的粮油食品类毛利率为5.81%,北大荒农业股份有限公司2011年年报中公布的米业类毛利率为5.30%。与其他上市公司相比,其毛利率明显高于同行业的其他上市公司。万福生科招股说明书中公布的2010年、2009年和2008年存货周转率分别为1.71次、1.46次和1.56次。该公司所属的行业(农林渔林业)这三年平均存货周转率为3.44次、3.45次和3.68次。公司存货周转率不及行业平均水平的一半。与同行业相比较,万福生科存货的低周转率与高毛利率自相矛盾,这些数据表明,万福生科可能在利润表和资产负债表存在造假的嫌疑。
二、启示
(一)多进行定量分析
分析程序不仅研究不同财务数据之间以及财务数据与非财务数据之间的内在关系还包括必要时调查识别出的、与其他相关信息不一致或与预期数据严重偏离的波动和关系。分析程序不能只是进行定性分析,也不能满足于泛泛而谈。审计人员一定要进行对比分析,寻找出现异常变化的数据并寻找原因,解释的原因尽可能要进行定量分析。例如,上述案例中,可以通过对比万福生科与其同行业之间的存货周转率和毛利率,寻找可能存在舞弊嫌疑的突破点。
(二)以职业怀疑的态度分析各项交易的各个环节
关键词:铁路基础设施;监测;振动传感器;数据采集
中图分类号: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.
关键词: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程表安排如下:
确定选题 2周
实践、实习,搜集材料 4周
制定提纲,拟定论文框架 1周
完成初稿 1周
征求意见,修改论文 1周
定稿、誊清、装订 4天
做好参加答辩的准备 3天
总体上需要10周时间,若是从4月上旬开始,可在6月中下旬结束。
现以某校计算机应用专业的物业管理系统图书管理系统毕业设计计划示例如下:
题目一:物业管理系统
用于住宅小区的事务管理。设计该系统的目的是运用计算机,对小区内的水电费、物 业管理费收付款、住宅小区住户等信息进行管理,以实现物业管理的规范化。提高物业管理工作效率。
系统功能分为数据采集、信息查阅、数据库维护等模块。
题目二:图书管理系统
用于图书借还日常数据的微机处理,设计该系统的目的是运用计算机,对图书馆的图书借间、图书归类管理、还书进书处理、罚款登记处理等信息进行管理,以实现图书馆管理的规范化,提高工作效率。
系统功能分为数据采集、数据更新、信息查阅、数据库生成与维护等模块。时间安排:
1.系统需求分析确定系统的规模目标,(1周)
2.系统设计阶段确定开发系统的语言环境及管理模块结构,各人按所分工的模块开始设计。(3周)
3.各学员按设计的模块实现端程、调试。(4周)
4.进行总体合并,形成系统,由各小组负责人进行全面调试并检测各模块的兼容性。(1周)