数据控制器(共12篇)
数据控制器 篇1
1引言
工业控制系统中的实时数据库对流程工业生产现场信息的采集、装置监控以及历史数据管理等功能,己成为控制系统中的重要组成部分。由于控制系统需要长期运行,其保存的历史数据量非常大,实时数据库对于历史数据的存储容量成为实时数据库性能的一个重要指标。然而,由于常见的商业数据库,如Oracle、SQL Server和DB2等,这些数据库并非专为实时数据而设计的,其并发性、吞吐性满足不了现场的实时性要求,不适用处理不断更新快速变化的数据及具有时间限制的事务,经测试关系型数据库通常每秒存储约千余条记录,这严重影响了数据的实时性。基于此,采用了基于COM中间件技术,利用面向对象语言C++开发了数据控制器,利用数据控制器提供的数据缓冲池,不仅可以将瞬态实时数据实时地显示,而且提供的应用程序接口,如API(Application Programming Interface)显示历史数据(如趋势图),可以很好实现对实时数据有效地管理,满足实时系统的要求。
2实时数据库存储数据的两种方法
目前,主流实时数据库就存储方式而言,通常分为两种,一是采用独立的文件I/O管理,如OSI公司的PI;另一种是采用嵌入式关系型数据库,如Wonderware公司的IndustrialSQL(InSQL)。由于大多数的连续生产型企业中已成熟地的部署了关系型数据库,同时,这些数据库提供完善的管理工具,编程人员可以很方便的定义实时数据以及能利用SQL语言进行访问和存储,很容易实现对实时数据的修改和查询,因此,在满足企业生产现场要求的前提下,宜充分发挥、利用现有的资源。
3数据控制器的设计
3.1中间件的定义
中间件是介于应用系统和系统软件之间的一类软件。它使用系统软件所提供的基础服务,衔接网络上应用系统和各个部分或不同的应用,能够达到资源共享和功能共享的目的。中间件抽象了典型的应用模式,应用软件制造者可以基于标准的形式进行开发,利用现有的软件构件装配适用于不同领域、功能各异的应用软件。在具体实现上,中间件是一个用应用程序接口定义的分布式软件管理框架,具有强大的通信能力和良好的可扩展性。
3.2中间件分类
中间件具有易集成、易移植、易演进、高可靠和易使用的优点。目前主流的中间件技术主要有微软公司的COM/COM+/DCOM,对象管理组织(Object Management Group,OMG)的CORBA,和Sun公司的J2EE技术。
按照IDC的分类方法,中间件可分为6类。分别是:终端仿真/屏幕转换;数据访问中间件;远程过程调用中间件;消息中间件;交易中间件;对象中间件等。
本文是基于数据访问中间件和交易中间件的思想,采用COM技术实现数据控制器。
3.3数据控制器的设计
数据控制器依据现场的具体情况可采用灵活的数据存储管理方式,如文件方式,基于数据库方式,本文将着重讨论数据库方式。
商品化的实时数据库通常以时间做为实时数据(历史数据)的主要识别标志,即时标,然而在大多数情况下,实时数据源,如电厂的DCS系统,在提供实时数据时,通常采用UDP广播方式,即将多个实时数据以特定的格式组织起来,形成一个(或多个)大的数据包,用户通过拆分数据包以得到目标数据,由于UDP协议包(帧)大小的限制(通常小于1K字节),经现场实测,发送5000点的实时数据需要2-3秒(同时受网络环境制约),因此DCS发送数据的时间与最终实时数据库的记录时标必然不符,显然,时标在这种情况下意义已经不是很大。
数据控制器根据这种情况,在组织实时数据时,采用二次拼接的方法,即将目标数据拆分后,再全部重新组织起来,形成新的数据包统一进行存储管理,因此,数据控制器的时标是针对某一时间的全部实时数据,而不是独立的单个实时数据,因而在某种程度上讲,它比较真实的反映了时间与实时数据之间的同步。
数据控制器需安装于WinNT操作系统下,它只提供异种操作系统的数据访问功能。
数据控制器的工作原理如图1所示。
(1)数据采集端。
在一个数据采集周期内,数据采集端将首次获取到数据包的时间做为时标,余下的数据包在采集时将忽略接收时间,直到该数据采集周期结束,在此周期中,数据采集端需同步完成全部实时数据的二次拼接,即数据采集周期结束后,数据采集端需按约定的格式同时生成一个包含全部实时数据的数据池。
依据应用要求的不同,必要时,数据采集端可以对数据池进行实时无损压缩或实时编码,这两种方式相比较而言,尽管采用实时编码后的数据池将会增大,但用户可通过数据库系统的SQL语句对实时数据进行各种操作。
在形成最终的数据池后,数据采集端需依照数据链路协议的约定将数据池中的数据进行组织并将其发送到数据控制器。
(2)数据链路。
数据链路可依据实际情况采用不同的网络传输协议,如TCP/IP,NETBIOS等,由于数据量较大且采集频率较高,因此,数据链路不宜采用实时连接的方式,即在传送数据时实时建立网络接连,传输完毕后再断开连接,尽管这样做可以减少网络带宽消耗,但由于需要频繁建立连接,因此效率反而不高。
(3)数据链路接口。
数据链路接口负责建立数据链路,同时维护管理多个数据采集端发送的实时数据。
(4)数据缓冲池。
由于在实际应用中,瞬态实时数据(如组态图)的访问量要远远大于历史数据(如趋势图)的访问量,因此,设立数据缓冲池可大幅提高实时数据的访问效率,其工作原理如下: 实时数据进入中间件后,首先在数据缓冲池中生成一个唯一的样本,同时对这个样本进行还原,如解压或解码。 当需要访问瞬态实时数据时,中间件将直接从数据缓冲池(内存)中读取目标值并将其返送到数据申请方,由于避免了磁盘I/O及管理维护这些数据的额外消耗,因此效率很高,且提供了100%的访问命中率。 数据缓冲池中的样本是唯一的,它只保留接收到的最新的瞬态实时数据。
(5)事务及负载平衡处理。
实际应用中历史数据(趋势)的访问是整个中间件的性能瓶颈,数据控制器提供了事务及负载平衡处理。 同关系数据库不同,由于目的单一,因此中间件的事务及负载平衡处理相对简单的多,它主要通过大容量的缓存来提高历史数据的访问命中率,同时尽量避免磁盘I/O处理。
(6)数据库接口。
数据控制器支持全部主流的关系型数据库,如ORACLE,SQL Server,DB2等。 数据控制器通过数据库接口实现历史数据的存储与读取。
(7)应用接口。
数据控制器提供了二种显式外部接口(Window操作系统),可覆盖绝大多数应用系统的要求。
①常规应用接口,即API方式;②WEB应用接口,即Active Server Page对象。 中间件同时提供了标准TCP/IP协议接口,当上面两种接口不能满足应用的需求时,可通过TCP/IP协议进行编程访问。
(8)B/S应用。
通过ASP对象接口,用户可在支持ASP对象的浏览器中访问实时数据。
(9)C/S应用。
用户可通过编程导入接口API函数实现实时数据的访问。
(10)数据库。
即用于存储管理实时数据的关系型数据库,视现场情形而定。
(11)异种平台应用。
通过TCP/IP协议访问实时数据。一般而言,只要支持IEEE浮点数格式的应用无需改动即可直接访问实时数据。
4数据控制器接口示例
int DC_Init ; //初始化
5性能分析
经在发电厂现场运行测试,数据控制器的主要技术参数见表1。
6结束语
基于中间件技术的数据控制器与数据库技术相结合方法,不仅能满足实时系统对实时数据管理的要求,而且与国内外的实时数据库系统相比,具有投资小、效率高、实时性强等特点。该系统在我区某发电厂运行以来,运行状态良好。
参考文献
[1]宋清昆等.组态软件实时数据库系统的设计.计算机应用,2008,27(1):55~57
[2]陆桂明,郑忠洋.组态软件实时数据库研究.微计算机信息,2007,23(11):157~159
[3]宋利康等.权限管理中间件的研究与实现.南京航空航天大学学报,2007,39(4):481~484
[4]蔡瑞强,程浩忠.基于中间件技术的电力市场辅助服务实时数据库设计.继电器,2007,35(12):15~17
[5]吴德州,武君胜.面向电力系统的分布式实时数据库设计.科学技术与工程,2008,8(4):929~934
[6]王晓东等.基于中间件的开发研究.计算机应用研究,2001,8:54~57
数据控制器 篇2
介绍了随钻测量仪测试系统中,基于MC68HC908GZ60微处理器的`数据采集控制器设计.利用MC68HC908GZ60微处理器的串行外围接口模块SPI,实现微处理器与A/D模块之间串行通讯.采集到的数据通过RS-232串行接口送入计算机进行实时处理,用数据采集测试软件动态监测系统工作状况.通过测试系统联凋数据曲线图分析,可知设计满足要求.测试系统的应用使随钻测量仪调试工作变得方便、直观,进一步提高了生产效率.
作 者:吕小维 李安宗 张维 白岩 李童 杨亚萍 作者单位:吕小维(中国石油集团测井有限公司随钻测井仪器研究中心,陕西,西安,710061;西安石油大学电子工程学院,陕西,西安,710065)
李安宗,张维,白岩,李童,杨亚萍(中国石油集团测井有限公司随钻测井仪器研究中心,陕西,西安,710061)
控制数据流 确保云安全 篇3
云计算是一种基于互联网使用或交付服务的技术或商业模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云计算一经推出,就受到了业界极大推崇,并推出了一系列基于云计算平台的服务。然而在云计算服务中安全问题一直令人担忧,云计算特有的数据和服务外包、虚拟化、多租户和跨域共享等特点,给安全带来了前所未有的挑战。本文在考虑云计算技术、云计算模型与体系架构等方面对云安全的影响之外,从数据流的角度来探讨云计算平台下的安全问题。
云平台下数据流向的分类
从云平台数据流的方向来看,大致可分为以下几类(如图1所示)。
1.外部访问虚拟机实例。外部用户访问虚拟机上发布的业务,流量走向为:互联网进入 -> 云平台核心区 -> 云平台接入区 -> 物理机网卡 -> 虚拟机实例。
2.虚拟机实例访问外部。由虚拟机访问互联网,流量走向与上一种情况相反,虚拟机实例 -> 物理机网卡 -> 平台接入区 -> 云平台核心区 -> 互联网。
3.跨物理机的虚拟机实例之间访问。虚拟机实例1->物理机1网卡->接入交换机1->核心交换->接入交换机2->物理机2网卡->虚拟机实例3。
4.同一物理机上的各虚拟机实例之间互相访问(隐蔽信道)。流量路线为:物理机1上的虚拟机实例1访问虚拟机实例 2。
5.物理机和虚拟机实例之间的访问(虚拟机逃逸)。为物理机和虚拟机实例之间的双向流量,物理机与虚拟机实例互相访问。
不同数据流向适用不同防护方法
针对外部访问虚拟机实例的情形,此种情况下与传统IDC的防护思路一样,不同之处在于部分串联设备部署方式需要考虑调整。一是因为云平台扁平化是趋势,能少串一个设备是一个设备;二来设备吞吐向来也不是云计算的优势,云平台下数十G的链路串上去也载荷过大,可以考虑旁路部署按需防护。
针对虚拟机实例访问外部的情形,通常云平台虚拟机实例用来对外提供服务的情况和案例比较多,较少有主动访问互联网的情况。不过有一种较为常见的场景就是虚拟机被攻击者控制后用作跳板,往外进行大流量的分布式拒绝服务攻击。在这种情形下一方面会消耗服务器的CPU资源,另一方面也会消耗云平台的大量带宽。因此有必要对由内往外的流量进行监测,这里就可以使用NTA,将进行分布式拒绝服务攻击的虚拟机实例路由直接丢弃。
针对跨物理机的虚拟机实例之间访问的情形,由于跨物理机的虚拟机实例访问会经过传统的交换机,因此该场景下可采用传统的安全措施来进行防护,如访问控制列表、入侵检测系统、入侵防御系统等。如果没有这类需求,可直接通过划分VLAN的方式隔离。
针对同一物理机和虚拟机之间的访问(虚拟机逃逸)的情形,由于Hypervisor存在一些已知的漏洞,这就为攻击者从已控制的虚拟机利用 Hypervisor的漏洞渗透到Hypervisor 提供了可能。虽然利用这种方式的技术难度相对较高,但是由于所有的VM都由Hypervisor来控制(启动、停止、暂停、重启虚拟机,监控和配置虚拟机资源等),因此危害相当大。要解决这个问题必须得修复Hypervisor的漏洞,这一方面依赖于能否发现这些已知漏洞(可采用漏洞扫描工具或渗透测试服务),另一方面依赖于虚拟化厂商提供的补丁。同时,笔者认为可以采用VEPA或者类似VEPA之类的技术,将VM到Hypervisor的双向流量引出到外部的交换机转发,这样就为监测这类攻击提供了可能。
同一物理机上的不同虚拟之间互访
针对同一物理机上的虚拟机实例之间访问(隐蔽信道)的情形,常见的虚拟化软件缺省采用VEB(即vSwitch)来完成同一个物理机上的虚拟机实例之间通信。由于多数 vSwitch 只进行二层转发,导致虚拟机实例互访流量不可见,固而是云平台下的一大安全隐患。
vSwitch的转发过程为:正常情况下,vSwitch处理过程与传统交换机类似,如果从物理网卡收到报文,查询MAC表转发。如果从虚拟机实例收到报文,目的MAC在外部则从物理网卡转发,在内部则查询MAC表转发。
目前的思路有两种:一种是通过 vSwitch来解决。vSwitch在二层转发基础上还可实现其他功能,根据VMware公布的资料,至少包括VLAN、安全功能、流量管理、甚至负载均衡等功能,但是由于实现这些功能需要消耗大量服务器的CPU资源,使用效果有待考验。
另一种解决办法是采用IEEE标准组织提出的802.1Qbg EVB(边缘虚拟桥技术)和802.1Qbh BPE(桥接口扩展标准技术)两条标准。这里主要探讨应用范围更广的802.1Qbg EVB,其包含了传统的vSwitch功能的VEB模式、VEPA 和通道技术。VEB上面已经说过了,简单说一下另外两种处理方式。
一种是VEPA。VEPA组件从虚拟机实例1接收到数据后,先转发到物理网卡,物理网卡首先转发出去到接入交换机,再由接入交换机根据MAC表原端口转回,VEPA收到从接入交换机来的报文才查表进行内部转发,最终数据到达虚拟机实例2和虚拟机实例3(如图2)。
通过这种方式可以将所有虚拟机实例之间的交互数据通过接入交换机上进行转发,因此可以在交换机上实施访问控制策略,隔离不相关的业务,对流量进行分析实现入侵检测和审计等功能。
另一种是通道技术,多通道技术方案将交换机端口或网卡划分为多个逻辑通道,并且各通道间逻辑隔离。每个逻辑通道可由用户根据需要定义成VEB、VEPA或Dircetor IO的任何一种。每个逻辑通道作为一个独立的到外部网络的通道进行处理。多通道技术借用了 802.1ad S-TAG 标准,通过一个附加的S-TAG和VLAN-ID来区分网卡或交换机端口上划分的不同逻辑通道。如图4所示,多个VEB或VEPA共享同一个物理网卡。
从理论上来说,虚拟机之间可以套用安全域划分的概念,依靠多通道技术进行合理地虚拟安全域划分,同一个虚拟安全域内采用 VEB 技术,域内虚拟机互访不受限制,保证了足够的交换性能;虚拟安全域之间采用VEPA技术,将流量引到交换机上,部署访问控制与流量监控策略等;对于单独的安全域,尤其是独立业务的虚拟机,采用 Dircetor IO,与其他虚拟机流量隔离,直接转发到外部,在外部交换机上监控其流量。
以上从数据流走向的视角介绍了5种不同访问情形下各自不同的防护方法,来为云安全提供一定支撑。实际上,想要妥善地解决云安全的问题,通过单一的手段是远远不够的,需要建立一个完备的体系,这涉及多个层面,需要从法律、技术、监管三个层面同时进行。
数据控制器 篇4
一、数据仓库概念
数据仓库是在数据库发展的基础上产生的, 美国W H.Inmon博士将数据仓库定义为:“一个面向主题的、集成的、非易失的并且随时间而变化的数据集合, 用于支持管理层的决策过程”。数据库为数据仓库提供数据, 是数据仓库的基础。数据仓库主要应用于联机决策分析。
二、数据质量定义
提到数据质量, 人们首先想到的就是控制错误数据的输入, 以保证所输入的都是合法的数据值。实际上, 数据质量的定义不仅如此。数据质量反映数据仓库中数据的固有属性, 可分为数据的完整性、源数据的可信性、数据的正确性、数据的一致性以及数据的唯一性等。
数据仓库中对数据质量的定义如下:
(1) 正确性。数据要正确, 它的值就必须与数据域一致。
(2) 准确性。数据值可能是正确的但不一定准确, 而且不准确数据不会符合预先定义好的业务规则。
(3) 一致性。数据用户经常会发现一个文件中的某个字段的值与另一文件中相同字段的值不一样。
(4) 完整性。我们往往把关注的重点局限于某一个用户或者部门的数据需求上, 这样会忽略一些重要的其他相关数据元素。
(5) 数据整合。许多企业的数据是散布于众多系统和文件中的, 因此数据存在冗余且缺乏一致性。这些系统和文件中的数据模式不同, 未经整合将无法使用。
三、数据出现问题的原因
ERP系统数据出现问题的主要原因是: (1) 数据输入不规范, 同一部门不同的成员有不同的数据输入格式, 造成数据不单一。 (2) 数据操作权限混乱, 数出多门, 同一业务数据在不同部门出现不同值。 (3) 企业本身一些业务不规范, 没有及时形成业务数据, 导致系统中的数据不完整。 (4) 数据储存多样性, 数据以不同的模式存储在不同的文件和数据库中, 数据存储在物理上独立的多个数据中心中, 数据存储在不同的硬件平台之上, 并且这些平台运行不同的操作系统。 (5) 多数据源造成的, 有的数据来自关系数据库系统, 有的来自文档, 数据源本身的正确性和质量会直接影响数据质量。
四、数据质量问题分类
ERP系统数据质量问题按照数据源可划分为单数据源问题和多数据源问题两类。
单数据源数据质量问题分为如下4类:
(l) 属性 (字段) 。这类错误仅仅局限于单个属性的值。例如, city=“客户”, 属于输入错误。正确的输入是城市名称。
(2) 记录。这类错误表现在同一条记录中不同的属性值之间出现的不一致。例如, city=“北京”, zip=300012, 属性依赖冲突, 城市名称和邮编之间应该是相对应的。
(3) 记录类型。这类错误表现在同一个数据源中不同的记录之间的不一致关系。例如, 记录1: (“李四”, “三星公司”) , 记录2: (“李四”, “诺基亚公司”) , 同一实体被不同的值描述, 属于冲突错误。
(4) 数据源。这类错误表现在数据源中的某些属性值和其他数据源中相关值的不一致关系。例如, 员工:name=“李四”, DEP=15, 属于引用错误, 存在编号为15的部门, 但该员工不在此部门。
多数据源数据质量问题包括:在多数据源集成过程中, 每个数据源往往是为了满足特定的服务需求而进行设计、部署和维护的, 也就是说它们在设计开发时是相互独立的, 因此与这些数据源相关的数据库管理系统、数据模型、数据模式的设计以及数据格式等都存在很大程度的不同。此外, 每一个数据源中都可能包含脏数据, 不同数据源对同一数据可能存在不同的表示形式、数据重复或者数据冲突。因而相同的数据质量问题在多数据源集成之后, 会比在单数据源情形下表现得更为复杂和严重, 比如结构冲突、命名冲突、重复记录等。命名冲突是指相同的名字用于不同的数据对象, 或者不同的名字用于同一个数据对象。结构冲突存在很多种不同的情况, 往往是指在不同数据源中对同一个数据对象的不同表示, 比如属性的粒度、不同的组成结构、不同的数据类型、不同完整性约束等。此外, 即使不同的数据源之间具有相同的属性名称和数据类型, 也仍然可能存在不同的数据值表示 (如, 在某一个数据源中用M、F分别表示男、女, 而在另一个数据源中用0、1来表示) 。另外, 不同数据源提供的信息可能聚焦在不同的聚合层次 (如某个数据源中单条记录描述的是某个产品的销售信息, 而另一个数据源中一条记录描述的可能是一组同类产品的销售信息) 以及代表的时间地点都有可能不同。
五、数据仓库环境下ERP系统数据质量控制实现
ERP数据质量的控制大体上可分为3种, 即对数据源引起的数据质量问题进行控制, 对抽取、转换、加载过程引起的数据质量问题进行控制和对数据仓库内部数据进行管理与控制。数据仓库环境下ERP系统数据质量控制主要是通过数据预处理方法来实现的。
按照ERP系统业务处理流程, 数据预处理内容划分为3类:
(1) 静态数据 (或称固定信息) , 一般是指在生产活动前要准备的数据, 即使是静态数据, 也要定期维护, 保持其准确性。系统运行时, 访问静态数据一般不作处理。
(2) 动态数据, 一般指生产活动中发生的数据, 不断发生、经常变动, 如客户合同、库存记录、完工报告等, 一旦建立, 就需要随时维护。
(3) 中间数据, 是指根据用户对管理工作的需要, 由计算机系统按照一定的逻辑程序, 综合静态数据和动态数据, 经过系统运算形成的各种报表。
静态数据和动态数据是输入数据, 中间数据是经过系统处理后的数据。如果输入的数据是不可靠的, 那么加工处理后的中间数据也是不可信的, 不可能用它做出正确的决策。
ERP系统基础数据来源主要有以下几种:
(1) 物料与产品信息, 包括生产中所涉及的原材料、中间体、产成品、各种辅料及各种包材, 涉及销售、计划、生产、供应、物料、成本、设计、工艺等部门, 体现了数据共享和信息集成。
(2) 生产管理信息, 包括企业进行生产所必需的基础辅助数据, 包括企业工作中心、工艺流程和工作日历等。
(3) 其他数据信息, 包括企业核算编码体系;部门、职员信息;会计科目、货币、计量单位、结算方式的信息;客户/供应商物品资料和价格的信息;客户/供应商资料及权限的信息等。这些数据作为系统管理中的基础数据, 在进行系统初始化时, 都必须首先准确录入。
在数据仓库环境下, 通过提取、转换和加载处理, 将数据从数据库中提取出来, 转换成与数据仓库一致的格式, 加载到数据仓库中集中存储, 系统根据需要对数据仓库中的相关数据进行数据挖掘 (DM) 或联机分析处理 (OLAP) , 然后将生成的结果传递给企业内部的或外部的人员, 以满足企业管理和决策的需要。
数据预处理主要包括5个过程:数据提取、数据清理、数据集成、数据变换与数据规约、数据加载。主要是根据要求从异地异构数据源 (包括各平台的数据库、文本文件、HTML文件、知识库等) 提取相关的数据, 然后对前一阶段产出的数据进行再加工, 检查数据的完整性及数据的一致性, 对其中的噪声数据进行处理, 对丢失的数据进行填补。
数据提取是将分散在多个数据源中的信息抽取出需要的数据。在Windows平台环境下, 利用基于ODBC等数据引擎的数据访问工具可快捷地访问几乎所有的数据库数据源, 即为每个数据源建立相应的系统DSN, 然后利用简单的导入/导出 (Import/Export) 或使用SQL存储过程实现数据提取。如果数据源以文本、表格等非数据形态出现, 提取其中的数据需要按不同方式进行考虑。通常情况下, 这种文本的格式是固定的或者具备某种特征的, 或者在局部范围内按一定规则变化, 可以在描述数据格式的基础上利用过程语言内嵌入的SQL语句或库函数调用让系统自动生成所需的提取代码。
数据清理操作是消除噪声或不一致数据, 也称为数据净化, 是针对原始数据中不完整的、含噪声的、不一致的数据进行整理和补充的过程。噪声数据是数据源中的错误或偏差数据。
数据集成操作是将来自不同数据源的数据整合成一致的存储数据, 这些来自不同数据库中的数据按照某一标准进行统一, 即将数据源中数据的单位、字长与内容统一起来, 将源数据中字段的同名异义、异名同义现象消除掉, 这些工作统称为数据的清理。即数据必须加以转换, 从而以统一的编码规则表示, 将源数据加载进数据仓库后进行某种程度的综合。例如, 有两个数据源存储与人员有关的信息, 在定义人员性别属性的类型时, 一个可能是char (2) , 存储的数据值为“男”和“女”;而另一个属性类型为char (1) , 数据值为“F”和“M”。这两个数据源的值都是正确的, 但对于目标数据来说, 必须以一种统一的方法来表示该属性值, 然后交由最终用户进行验证, 这样才能保证数据的质量。
数据变换是通过规格化和聚集形成适合挖掘的形式。数据规约操作是压缩现有的数据集, 既能减少数据集的大小, 又不影响数据挖掘的结果。数据变换与数据规约实际是对数据进行汇总、聚集、压缩, 而且不丢失信息。
数据加载主要是将经过转换和清洗的数据加载到数据仓库里面, 即入库。用户可以通过数据文件直接装载或直联数据库的方式来进行数据装载, 充分地体现其高效性。
六、结束语
随着ERP系统与数据仓库领域应用的紧密结合, 以及数据质量概念在ERP系统中的广泛应用, 将来ERP系统内部控制内容之一———数据控制, 其内涵不再局限于数据安全控制方面, 同时数据质量控制也会成为数据控制的一个重要内容。
摘要:ERP系统内部控制是企业管理信息化研究的一个重要内容, 本文应用数据仓库理论中的数据质量概念, 借鉴数据预处理方法, 从数据质量控制角度, 研究数据仓库环境下ERP系统的数据质量控制;在数据安全控制基础上引入数据质量控制内容, 将ERP系统内部控制内容之一——数据控制的内涵延伸。
关键词:数据仓库,ERP,数据质量控制
参考文献
[1]陈京民, 等.数据仓库与数据挖掘技术[M].北京:电子工业出版社, 2002:5.
[2]锡德.阿德尔曼, 等.数据仓库项目管理[M].薛宇, 王剑锋, 译.北京:清华大学出版社, 2003:293.
[3]熊霞.数据仓库中数据质量控制问题研究[D].武汉:武汉大学, 2004:24-26.
CGIS空间数据质量控制研究 篇5
CGIS空间数据质量控制研究
本文基于笔者多年从事GIS相关工作经验,以空间数据质量控制为研究对象,首先简要阐述了空间数据的.基本特征何内容,而后详细讨论了空间数据质量控制的基本概念,方法,在理论分析的基础上,笔者给出了当前一般城市基础数据状况及空间数据处理方法.相信对从事相关工作的同行有着重要的参考价值和借鉴意义.
作 者:张玉茜 作者单位:深圳市龙岗规划交通研究中心,广东深圳,518000刊 名:科技创新导报英文刊名:SCIENCE AND TECHNOLOGY INNOVATION HERALD年,卷(期):2009“”(9)分类号:P2关键词:空间数据质量控制 城市地理信息系统 数据处理
探讨测绘数据入库流程的质量控制 篇6
关键词数字化地形图;质量控制
中图分类号P208文献标识码A文章编号1673-9671-(2010)081-0152-02
1数字化地形图的特点
数字化地形图数据采集的手段多样,可为人工手扶数字化、扫描矢量化、航空遥感影像的数字化或野外数字化实测,在这些应用中,十分注重数据采集的精度,图形元素的分类、颜色、线型的设置以及最后绘图的成图质量。其特点表现为:
1)地物点、地貌点的空间位置表示精确;2)成图计算机作业,色彩丰富,功能齐全,使地形图极具可视性,符号统一,线划均匀;3)成果便于保存、查阅和今后更新,可对数据进行深层次开发和利用,特别是可以方便快速地为城市建设提供各种用途的专题图;4)数据检查修改具有隐蔽性。
2测绘数字化地形图入库前的质量检查
由于数据采集的过程不规范或成图过程中的误操作,以及GIS数据的特殊要求,测量成果往往存在很多数据质量问题,如房屋没有封闭、线不连续、实体没有属性或者属性错误等等,因此在入库前必须进行严格的质量检查。
图1数字化地形图入库流程图
2.1图形实体检查
检查的内容主要有地物编码是否正确,实体属性是否完整,地物是否放错图层,符号、线型、线宽是否规范,线自相交检查,是否存在伪节点、悬挂点,高程注记检查,建筑物注记检查,面状地物封闭检查,重复实体检查,复合线重复点检查等。
2.2属性数据检查
主要检查房屋楼层、结构等数据是否录入,高程点属性值与高程注记是否匹配,等高线高程注记是否正确。
2.3复合线减肥检查
凡是用复合线绘制的实体,主要是等高线,如果复合线结点过密,必然造成数据臃肿,数据量加大,有必要对密集结点的复合线进行滤波处理。
3两种地形图入库流程
根据不同成图方法的基础资料,采用不同的作业方法。对于数字化测图的成果资料,已有一套DWG格式数据,需整理加工出一套Mapinfo数据即可。具体方法是:利用CASS7.1软件,对数据进行编辑和检查错漏,然后输出Mapinfo6.0。
作业流程如图1所示。
对于平板仪测图的成果资料,先采用扫描矢量化方法获取数据,再进行数据加工处理。具体方法是:测绘原图经扫描后,利用Geoway3.0软件进行数字化采集,检查修改后输出Mapinfo数据一套。经二级检查后输出AutoCADMap2000数据一套。作业流程如图2所示。
图2平板薄膜地形图入库流程图
4入库数据的质量检查矢量
数字化测图的最终目的是将地形图转入GIS系统的数据库,入库的数据必须根据GIS系统的要求进行检查,要确保数据的质量。数据质量主要包括:位置精度、属性精度、逻辑一致性、完整性、现势性。
4.1地理精度检查
地理精度检查主要包括:各种地图要素的正确性,各种地理要素的表示是否协调一致,注记和符号的表示是否符合图式要求,综合取舍是否恰当,图面是否清晰、美观,图廓整饰是否正确、完整等。其主要通过内业图面检查和外业巡视对照检查完成。
4.2位置精度检查
位置精度即坐标精度,在一定的坐标系统下,以坐标方式反映各种要素关系与地面实际情况相吻合的程度,包括位置描述的数学基础,图廓点、格网点、控制点的精度以及平面位置精度,高程精度和图幅边界的接边精度等。
1)数学基础主要检查所用坐标系统的正确性、图廓线坐标及控制点的正确性检验等。
2)平面精度和高程精度检查通过重复设站,测定各地物点的坐标和高程,与图上相同的地物点进行比较,确定地物点的平面位置及高程误差。
3)整饰质量检查。整饰质量检查包括:各种符号注记是否符合图式规范要求;线划是否光滑、清晰,线形是否符合规定;名称、性质、高程等注记是否正确,位置是否合理,字体、字号及方向是否符合规定,是否压盖地物及点状符号;各种地理要素关系是否正确,是否有压盖、重叠等现象。
4.3属性精度检查
属性精度主要反映属性数据的正确性,它涉及分类、代码、属性值以及注记名称的正确性。属性精度主要检查点、线、面的属性代码及属性值的正确性、唯一性,注记的正确性,数据分层的正确性。要逐层检查是否有多余的属性,逐层检查各属性表中的属性项项名、类型、长度、顺序等是否正确,有无遗漏或多项;检查各要素分层、代码、属性值是否正确或遗漏。
4.4逻辑一致性的检查
逻辑一致性指数据定义统一性与描述数据集之间固有的逻辑关系正确性。逻辑一致性检查包括:属性一致性、格式一致性、分层一致性、拓扑关系的正确性和多边形闭合等。要检查各层是否有重复的要素,检查有向符号、有向线状要素的方向是否正确;检查多边形的闭合情况,标识码是否正确;检查各要素的关系是否合理,有无地理适应性矛盾,是否能正确反映各要素的分布特点和密度特征。
4.5完整性的检查
完整性是指符合选取标准的数据是否全部选取,即该表示的是否都完整表示。完整性检查包括:数据分层的完整性、数据层内部文件的完整性、要素的完整性、属性的完整性等。
4.6现势性的检查
现势性是指数据库中数据与当前实际情况的符合程度。
4.7附件质量检查
包括控制资料、底图、检查资料、文档资料及其他附属资料的正确性、完整性检查。
5数据格式转换
5.1定制CASS7.0的图元索引文件INDEX.INT
所谓图元就是图形的最小单位,一个复杂的符号可以含有多个图元,图元索引文件记录了每个图元的信息,该文件格式如下:CASS7.0编码,主参数,附参数,图元说明,用户编码,GIS表名。
修改“用户编码”、“GIS表名”两项,把它对应到MapInfo数据相应的内容,就可以用软件“输出到MapInfoMif/Mid”的功能,实现数据转出。
5.2在SurpMap软件中修改和编辑数据
在SurpMap 软件中读入Mif/Mid数据,并挂接SurpMap符号库,检查图形属性数据是否完整和遗漏。如发现问题,利用相关的工具进行修改,修改好后,打印出图,套合原始CAD图纸做比较,如有问题再次修改,直到与原始数据套合准确无误。
6结语
地理信息系统以其形象直观、操作灵活、功能强大等特点,在许多领域得到广泛应用。它将几何数据与属性数据完美地结合起来,将传统的数据库带入可视化空间,为用户提供了清晰而形象的图形界面。而数字化地形图是GIS的基础数据库,为了使GIS在我国经济建设中更有效地发挥作用,必须使数字化地形图适应GIS的发展。
参考文献
[1]郝力.等.城市地理信息系统及应用[M].北京:电子工业出版社,2002.
[2]黄金锋,方锋,李长辉.城市基础地理信息系统数据集成应用问题[J].工程勘察,2003,2.
数据控制器 篇7
关键词:MAD01,通道设置,数据处理
0 引言
随着现代工业系统的快速发展, 工业过程也不再满足过去简单使用行程开关和继电器。现在的工业过程控制需要引进大量先进的测试设备, 这些测试设备将其采集到的信号都转换成电压或者电流的模拟信号, 因此PLC必须具备识别这些模拟量的能力, 而识别模拟量最关键的问题就是如何将模拟电压电流信号转变成数字量。PLC使用环境为某高强石材抗折强度在线检测的压力过程控制。
1 压力在线检测系统原理
高强石材抗折强度在线检测系统结构如图1所示。
高强石材板经滚轴送至测试区域, PLC通过控制线驱动冲击头开始对板材缓慢的增加压力, 直至板材断裂, 在板材断裂瞬间冲击头承受压力急剧降低, PLC记录下最大压力信号, 然后驱动冲击头收回;PLC模拟量单元将压力信号转换并存储, 送入上位PC机进行数据处理, 将承受压力小于28Mpa的板材归类为不合格样品, 承受压力大于32MPa归类为过厚样品返回重新加工。
在整个在线检测过程中, 压力信号的采集与处理最为关键, 在单片机系统中要利用专门的数据采集和数模转换系统来完成该步骤, 而欧姆龙PLC自带了模数转换功能, 为控制系统数据的采集提供极大的方便;本文所选用的模拟量单元为欧姆龙公司C200H系列的MAD01。
在MAD01中, 上下限模拟量与数字量之间的关系如表1所示。
笔者所选的模拟量单元MAD01位于PLC机架的第二槽, 单元旋转开关在位置0, 所以模拟量输入和设置所占用的地址在IR100-IR109、DM1000-DM1099, 在设置单元旋转开关时一定要将PLC断电, 否则会损坏PLC。
2 模拟量通道设置
在使用PLC模拟量单元之前要进行输入通道和输入信号范围设置, 通道设置确定使用1通道或者2通道, 而输入信号范围设置则是根据外部设备来确定, 外部设备模拟量范围必须与PLC内部模拟量范围对应, 否则会造成PLC的损坏。以压力信号处理为例, 测定压力范围是0-40MPa, 精度为0.2%, 输出电压0-10V;模拟量占用1输入通道。
2.1 输入通道设置
通道的设置在DM1000字的4位和5位, 4位决定输入1, 5位决定输入2, 设置为0000000000001000使用编程软件在DM1000中写入#0018。
2.2 输入信号范围设置
信号范围的设置在DM1000的8、9、10、11位, 8、9位表示输入1的信号范围, 10、11表示输入2的信号范围, 00表示-10-10V, 01表示0-10V, 10表示1-5V (4-20mA) , 压力信号占用输入1, 电压范围0-10V, 因此在8、9位输入01.0000000100000000使用编程软件在DM1000字中写入#0100。
3 模拟量数据处理
在PLC中, 数据类型有3类:二进制、BCD码和十六进制, 一般存储器默认的是二进制数据, 在DM存储区只能使用十六进制数据, 而BCD码也可以使用, 但是需要专用的BCD数据拨码盘, 在用计算机对PLC编程时, 通过软件写入控制器的数据只能是十六进制数。
模拟量进入控制器后, 被转换后的数据以十六位二进制形式存储在IR存储区, 在使用转换后的二进制码时要将IR区的数据用传送指令送入DM区。输入1的转换结果存储在IR105字, 输入2转换字存储在IR106字。
这段程序是断线检测的数据传输程序, 利用传送指令将IR105、IR106的十六位二进制转换结果分别送入DM0001区和DM0002区。当模拟量转换后的十六位二进制数送入DM区后, 要使控制器对系统动作进行调节, 必须有数据比较, 根据数据比较来判断下一步的动作, 在数据比较过程中, 关键步骤是如何将十进制转换为控制器可以识别的十六进制或BCD码, 针对本文特定的压力测试仪, 笔者制作了一张模拟电压、十六制、十进制以及对应压力对应表。
根据以上对应表给出的数据, 我们可以知道不同压力对应的十六进制码和转换的规律, 模拟量的输入范围无论是1-5V还是0-10V, 模拟量单元都将它们平均分为20段, 范围1-5V的精度为0.2, 范围0-10V的精度为0.5, 无论是哪一种范围, 转换成十六进制后最大值都为0FA0, 转换为十进制则最大值为4000, 由于模拟量分为20段, 十进制也相应分为20段, 每段大小200, 先将十进制分段找出对应21点的大小, 再转换为十六进制, 如表所示。根据外部设备的量程将其分为20段21点, 本文所选用压力测试仪的量程为0-40MPa, 则每段精度为2%, 生产线要求压力在28-32Mpa, 即0AF0-0C80。
不同外部设备量程不同, 但是输入模拟量的范围比较规范, 都可以依此找出模拟量与数字量之间的关系。根据上表对应关系可以准确的找到压力与十六进制数据之间的关系, 可以实现对不同压力准确的控制和调节, 进一步在编程中方便使用。
4 结束语
通过使用欧姆龙PLC自带的模数转换功能, 大大增加了压力信号的转换效率和稳定性, 并在一定程度上防止外界对信号的干扰, 控制系统运行稳定使用情况良好。
参考文献
[1]谢克明.可编程控制器程序设计[M].北京:电子工业出版社, 2002.
数据控制器 篇8
随着大数据的飞速发展和技术的不断革新,基于大数据的数据挖掘、机器学习以及人工智能等技术深深地影响和改变着人们的生活。另一方面,“云”概念在飞速发展的计算机领域和网络技术领域中被广泛推广和应用,云计算是一种借助互联网实现的动态扩展数据交付、数据使用、资源分享的一种模式。云计算是在当今高度发达的计算机和网络技术的基础上发展出来的,因此二者的结合也是必然的。从2013年开始,大数据和云计算开始“联姻”,二者的关系越来越密切,庞大的数据和云处理技术相互依赖,云处理技术为大数据提供了数据存储、数据交付、数据扩展的基本平台,也是目前增加、产生、存储、交付庞大数据的一种重要平台。
在这样的大背景下,数据泄露的不和谐事件不断涌现。根据相关研究机构的一份研究报告,未来几年,数据泄露事件的增长率可能会达到100%,要想遏制类似事件的发生,必须让数据在其源头就能够得到安全保障。未来,随着云数据模型的不断扩展,云数据被攻击的可能性会越来越大,因此,所有涉及互联网的企业和用户,无论身处何地,无论从事何种行业,也不论规模大小,都需要重新认真思考大数据环境下云数据的安全问题。
1 访问控制原理
访问控制,顾名思义,就是对访问主机数据的用户的合法身份进行判断,通过特定的方式准许或者限制用户对主机系统上的数据的访问能力和访问范围,从而控制关键数据被访问的情况,阻止了不合法用户的入侵或破坏行为的发生。相比较而言,今天,在大数据环境下云数据访问控制的宗旨是依据数据访问控制技术对用户的数据访问权限和范围进行维护和控制,防止非法入侵者对数据系统进行数据的窃取或清空。综上,访问控制的主要作用是:防止系统的数据资源被非法用户访问;允许系统的数据自愿被合法用户访问;防止系统的数据资源被合法的用户超范围访问。在今天大数据环境下的云数据访问控制技术依然要实现这三个主要的作用。
1.1 传统技术
传统计算模式下的访问控制技术发展时间长,技术相对完善,到目前为止,主要有三种形式:
(1)自主访问控制形式,这种访问控制形式是主体对客体进行管理,由数据管理的主体自己决定某一访问数据的客体是否可以具备这一访问权力,然后对客体的访问权限进行允许范围内的部分授权或全部授权,给予主体对客体访问数据的充分自主选择权;
(2)强制性访问控制,这种形式的数据访问控制一般遵循两大原则,即“不上读”和“不下写”。一般来说,应用访问控制方式的数据信息机密性比较强,这样进行强制性客体进入数据系统的防护措施技术能够避免低级别的客体进入到高级别数据系统中对高级别数据进行查看;
(3)角色访问控制形式,见图1,在这种访问控制形式中,用户的访问权限是和其角色息息相关的,管理员对数据系统的不同角色授予不同的访问权限,用户通过申请成为不同的角色从而享受不同角色所具有的访问权限。
传统的数据访问控制技术遵循上述三种办法对数据平台的信息进行访问权限的控制和防护,以维护用户的数据安全。
1.2 遇到的问题
传统的数据访问控制技术相对完善,基本可以达到保护数据资源不被非法访问的目的,可是随着计算机和网络技术的发展,如今云计算时代到来,大数据环境的形成,数据的计算模式和存储模式都发生了翻天覆地的变化,这些变化主要包括:在大数据环境下,数据资源量大,分布分散,数据资源不再受用户的控制;云数据存储在云端,也就是各个云平台上,由于商业环境和技术的原因,用户对大数据的云平台缺少足够的信任;云数据分散给各个云端,基于一个点或者几个点设定的安全域,可以被数据的迁移技术轻松攻破,导致数据的安全域改变;对数据的访问量急剧增大,多租户技术的发展,迫使对数据的访问主体开展新的自定义;在虚拟化技术的高速发展下,极易对在云处理技术下的大数据进行窃取。
如何有效地将数据访问控制技术应用到大数据环境下的云数据安全维护是如今云计算发展的重要项目。为了对这一课题进行重点探讨,本文着重从访问控制模型、ABE密码机制和多用户访问控制等方面对大数据环境下云数据的访问控制进行研究。
2 云数据的访问控制技术
本文设计提出的大数据环境下云数据访问控制体系框图,如图2所示。云数据访问体系包括三大主体:用户,云平台,网络基础设施。云数据平台以及用户使用访问控制模型对数据进行访问以及维护,云数据和基础设施之间采用访问控制规则,另外,在云数据中,虚拟设备之间的访问控制基于虚拟访问控制和基于密码学的访问控制。
2.1 访问控制模型
本文提出的大数据环境下云数据访问控制的模型是基于属性的访问控制模型,该模型可以很好地适用于目前复杂的大数据信息系统,将实体属性的概念贯穿运用在整体的数据访问控制流程中,访问控制模型的整个过程利用机制、分控制策略以及控制模型对大环境数据的数据访问客体、主体、大数据环境等进行建模,对数据访问的权限进行一定条件的限制和适当授权。提升了数据用户访问控制的灵活性。
利用集合对其原理进行描述则是,RBAC包含于ABAC,用集合的观点说,RBAC含在ABAC的集合内,ABAC的集合特征是可以对不同的类对象进行分别的授权,支持对用户的级别进行不同的访问控制和权限授权。可以说,RBAC是ABAC集合中一个用户属性。当今,基于大数据环境下的云数据访问控制模型就是将RBAC和ABAC两个集合结合于一体,为数据用户提供高隐私且又可以支持云数据的访问控制。
相对来说,大数据环境具备3种属性,分别为U-云数据的使用者、R-云数据、E-大数据环境,将云数据的属性通过访问控制模型进行访问控制,在此基础上开展访问控制系统的开发设计,该数据访问控制系统的关键模块是在ABAC的集合内新增RBAC子元素,借助分层的数据办法将两者融合:上层是标准的RBAC,验证和查询审核数据模型;下层则是数据安全的基础信息,以进行策略的生成;最后步骤则是利用属性策略执行系统内的RBAC集合的控制维护,这样一来,就可以十分容易地兼顾二者的优点。
2.2 ABE密码机制
在大数据环境下云数据的访问控制之所以要采用密码体制,是因为存储云数据的云处理平台存储大量的用户数据,云平台是否可信则直接影响用户数据是否足够隐私性和完整。所以,用户数据选择可靠且使用密码机制的数据存储技术,可以保证数据用户将隐私的数据上传到云端数据存储平台中,数据用户则采取密码机制对自己的数据进行加密式的控制和保护。本文提出设计的大数据环境下云数据的访问控制体系中,选择使用ABE(属性基加密)的密码机制。
ABE密码体制在大数据环境下的模型,如图3所示,它主要包括提供者、授信中心、数据用户以及云存储服务器等四个参与主体。ABE密码体制的主要流程分为四步:一是数据用户在授信中心设置是否公开数据或加密,系统把钥匙提供给数据提供者;二是数据供给者收到系统的公钥后,自行设置数据加密参数,完成数据正式上传到云端中;第三,当云端新用户进入系统且将自己数据上传到可授信中心时,公钥和数据一同生成,系统传给用户,用户则可以根据公钥密码对数据进行访问;第四是有公钥和密码的用户可自行到云服务器进行数据的访问请求,通过后,数据提供者上传到云端的数据则可供给有公钥的数据用户自行下载或浏览,反之数据访问失败。
2.3 多用户访问控制
在大数据环境下云数据的访问频次十分高,在同一时间、同一服务器出现多个租户同时访问数据资源的情况十分常见,但是在同一个云服务器的不同应用和计算资源是有限的,为了避免多个用户同时访问而导致访问控制失败情况的发生,这就涉及到大数据环境下云数据访问的多用户访问控制技术。故将访问控制技术回归至模型的研究,将多租户访问技术与RBAC模型相融合,使其衍生出新的访问控制模型,如此便可有效地加强租户对数据的访问控制。将多租户认证系统(MTAS)与RBAC模型相结合,最终成为管理多租户认证系统模型。首先,在多租户认证系统的基础上添加信任的条件,然后对多租户之间的信任进行形式化分析,最后可以对角色的用户进行不同角色的高层级访问或低层级访问权限的区分,也可以对租户进行访问权限的控制管理,方便对云服务器的数据进行隔离,维护了大数据环境下云端用户数据的隐私和完整性。
3 结语
在大数据和云计算迅速发展的大背景下,数据泄露的不和谐事件不断涌现,云数据被攻击的可能性会越来越大。传统的数据访问控制技术相对完善,基本可以达到保护数据资源不被非法访问的目的,可是随着计算机和网络技术的发展,云计算时代的到来,大数据环境的形成,数据的计算模式和存储模式都发生了翻天覆地的变化。怎样有效地将数据访问控制技术应用到大数据环境下的云数据安全维护是如今云计算的发展方向。本文着重从访问控制模型、ABE密码机制和多用户访问控制等方面对大数据环境下云数据的访问控制进行研究,研究成果值得借鉴。
摘要:传统的数据访问控制技术相对完善,基本可以达到保护数据资源不被非法访问的目的,可是随着计算机和网络技术的发展,云计算时代到来,数据的计算模式和存储模式都发生了翻天覆地的变化。有效地将数据访问控制技术应用到大数据环境下的云数据安全维护是如今云计算发展的重要项目。面对这个挑战,着重从访问控制模型、ABE密码机制和多用户访问控制等方面对大数据环境下云数据的访问控制进行研究。
关键词:大数据,云数据,访问控制,安全维护
参考文献
[1]王于丁,杨家海,徐聪,等.云计算访问控制技术研究综述[J].软件学报,2015(5):1129-1150.
[2]李凤华,苏芒,史国振,等.访问控制模型研究进展及发展趋势[J].电子学报,2012,40(4):805-813.
[3]王小威,赵一鸣.一种基于任务角色的云计算访问控制模型[J].计算机工程,2012,38(24):9-13.
[4]黄毅,李肯立.一种面向云计算的任务-角色访问控制模型[J].计算机应用研究,2013,30(12):3735-3737.
[5]初晓博,秦宇.一种基于可信计算的分布式使用控制系统[J].计算机学报,2010,33(1):93-102.
[6]林果园,贺珊,黄皓,等.基于行为的云计算访问控制安全模型[J].通信学报,2012,33(3):59-66.
[7]孙国梓,董宇,李云.基于CP-ABE算法的云存储数据访问控制[J].通信学报,2011,32(7):146-152.
[8]洪澄,张敏,冯登国.AB-ACCS:一种云存储密文访问控制方法[J].计算机研究与发展,2010(47):259-265.
[9]李晓峰,冯登国,陈朝武,等.基于属性的访问控制模型[J].通信学报,2008,29(4):90-98.
数据控制器 篇9
近年来, 伴随着工程机械产品的不断成熟, 控制技术在该类产品上的应用也由粗放型控制向精细化、智能化的方向发展, 在基本动作控制实现的基础上, 越来越多的产品开始考虑精细化的控制细节。
许多工程机械在控制过程中, 需要对某个液压部件的压力进行存储记忆, 以便在以后的控制过程中使用。本文就如何通过控制程序进行记忆以及控制程序实现过程中的难点来讨论。
2 控制原理及其难点
2.1 硬件条件
随着控制器技术的发展, 许多工程机械上使用的工业控制器已经过渡到32位系统。速度更快、存储容量更大是32位控制器的特点, 而底层的实时系统更是为控制器的出色性能做出了强有力的保障。
2.2 控制原理
首先就是采集机械动作时的压力并记录这些数值;其次在以后的动作过程中, 判断压力是否达到期望的压力值:是则开启;否则等待, 等到压力满足要求时再开启。其基本控制过程如图1所示。
2.3 控制程序实现的难点
(1) 控制程序的关键点在于液压制动阀的动作时机, 而液压制动阀的动作时机取决于压力传感器数据的采集。如何设置采集频度, 所得的数据又将如何处理, 成为该控制程序的一个关键点。
(2) 为了适应不同的系统, 控制程序应具有一定的灵活性, 这就要求程序要存在适当的冗余;而此类安全性的控制程序对实时性又要求较高。因而, 如何平衡这两者之间的关系, 同时满足程序的灵活性和保证控制程序的实时性至关重要。
3 控制程序的实现
我们由控制的基本过程可以构架控制程序的流程图, 如图2。
参照前文提出的几个关键点及图2的控制流程图, 解决的方式如下:
3.1 初始化过程
当控制模块被激活后, 首先进入初始化过程, 该过程需要完成以下工作:
(1) 分配数据的存储空间、设置相应的指针:由于工业用的控制器的CPU和存储资源有限, 故而不建议采用动态分配的方式。动态分配一般会牺牲CPU的计算资源而获取较高的存储器资源的利用, 而且系统为了管理资源的动态分配、利用、释放, 还需附加其它的管理程序。因而没有必要过于追求存储资源利用的极限。建议选取一个合适的连续存储空间存放5~10组数据即可, 如果分配太小, 则会丧失灵活性;如果分配太大, 会造成浪费。
(2) 设置标志位:设置初始化标志位、偏移标志位、部分功能的激活标志位等。
(3) 设置采集时钟:时钟的采集频率依赖于控制器本身的硬件特性、存储空间的分配以及系统的需要。因为高端控制器本身带有数据采集的硬件功能, 所以我们只需充分利用, 没有必要把采样频率设置太高。同时, 对于控制器来说, 时钟的设置太高也会占用过多的资源, 过高的设置控制器也不会响应, 因而, 应用过程中应根据系统的实际需要来设定。
3.2 采集数据的存储与处理方式
(1) 数据的存储:分配一组连续的空间, 以下以5个数据的存储为例:
arr[0]~arr[4]为一个连续的数组空间, index为数组的指针。
假设在起升动作停止前有D6、D5、D4、D3、D2、D1、D0共7个数据, 在采集完数据D6后, 起升动作停止, 如图3所示。
下面以这7个数据为例, 分别讨论两种存储方式以及它们的优劣:
(a) 移动数据:每采集一个数据, 则将以前的数据依次向前移动一位, 留出arr[0]用来存放最新的数据, 即每次存放最新采集的数据前都要完成以下操作:
arr[3]存入rr[4];arr[2]存入arr[3];
arr[1]存入arr[2];arr[0]存入arr[1];
然后将最新采集的数据存储到arr[0]。
操作步骤如图4所示。
(b) 移动指针:将存储区看作是一个首尾相连的窗口, 每次操作先移动指针, 然后存储数据即可。具体操作如图5所示。
比较以上两种数据存储方式, 在占用的存储空间上是一样的, 但在执行效率上有差别。
第一种方式比较容易理解, 最新采集的数据始终都在最前面, 因而在处理数据时, 想要几个数据只要从前向后依次读取就可以了。缺点是在执行效率上略差, 每次都要将先前的数据向前移动一位。
第二种方式只需改变指针或者数组下标, 不需移动数据, 效率明显高一些, 但是在算法上要求精简, 否则效率会有所降低。推荐使用第二种方式, 即滑动窗口方式, 以获得较高的执行效率。
(2) 数据的处理:前面的数据存储已为后面的数据处理做足了准备。首先, 开辟的存储区里有更多的原始数据可以利用;其次, 存储方式为我们灵活地选取所需的数据提供了保障。可以在存储范围内任选前几组数据进行处理, 这是为了保证将液压系统的一些干扰降到最低。例如, 可以使用平均数, 也可以进行加权平均等, 依据系统的特性, 选择所需的方式。
3.3 程序处理中需注意的其它问题
(1) 抖动处理:人在进行操作时, 在临界区旁边, 经常会出现抖动, 即系统在开启与关闭两种状态下不断切换, 这个时候最好采用延时等手段去掉抖动, 以免造成程序判断的失效。
(2) 特殊状态的处理以及数据采集、存储的时机:特殊状态, 如初始状态要将存储区清空;再如当数据不满或小于预设的处理个数时要特殊处理, 因而可根据实际需要设置数据个数变量或者尾指针。
数据采集的时机也要仔细考虑, 例如, 适时停止存储数据, 否则将覆盖上次的压力记忆值。
3.4 程序的灵活性及通用性
虽说工业控制程序一般都与系统硬件及产品贴合得特别紧密, 但是对于一些具有共性的问题还是应当将其处理方法提取出来, 在控制程序上进行功能的封装, 这样可以处理一系列产品及相近的问题, 可以大大提高效率及缩短不同版本程序以减少管理开销。
3.5 示例模块接口演示及说明
图6示例模块采用了以上提及的大部分技术, 但在个别地方做了简化处理, 对各个变量进行说明如下:
(1) 输入
active:模块激活标志, 确定模块激活与否;
time_cycle:采样时间;
pressure:压力值;
movement:手柄信号, 确定动作等;
trigger_line:触发底线;
offset:数据处理窗口偏移值, 可灵活选取所需的数据;
recordcount:数据记录值, 确定采用记录的个数;
(2) 输出
action_trigger:确定是否开启液压制动阀。
4 结语
数据控制器 篇10
随着网络流量的日益庞大,链路带宽的不断提升,在高速数据采集系统中,对双倍速率同步动态随机存储器(Double Data Rate Synchronously Dynamic RAM,DDR SDRAM)[1]所提供的大容量缓冲技术也提出了挑战。
现有技术中,DDR控制器对数据的封装处理和读写控制方法难以很好地兼顾数据访问的可靠性和有效性,且容错纠错能力较低、内存管理复杂。本文研究并设计了一种改进型高性能DDR控制器,保证了数据存储取的正确性、高效性和连续性,有效提高DDR存储器的管理效率和内存利用率。适用于多光口/电口的千兆线速数据采集系统,提供高速大容量的缓冲能力,在网络流量峰值时,能够实现动态均衡,平滑处理,可显著提高数据采集密度与速率。
1 DDR控制器工作原理
基于FPGA实现的DDR控制器通常主要包括前端主控模块和后端用户模块。以目前主流的Virtex-5 FPGA器件参考设计结构为例,如图1所示。
前端主控模块由PHY控制器、主控制器和前端FIFO组成。PHY控制器完成DDR存储器初始化状态和读数据采集时序校准逻辑功能,主控制器实现DDR控制器状态机和用于地址/命令/数据的FIFO逻辑,前端FIFO作为一种用户接口,提供地址/命令、写数据和读数据3个FIFO。前2个FIFO由不同的用户后端逻辑加载,而读数据FIFO则由PHY控制器访问,以将采集的数据存储在每个读周期上。通过用户接口,可以发出命令,向DDR存储器提供写数据或者读数据操作[1,2,3]。因此,在前端主控模块的设计结构相对固定的情况下,后端用户模块以及与前端模块对接方式的良好设计,对提升DDR控制器的整体性能具有重要作用。
2 DDR控制器模块设计
2.1 基于FPGA的模块化设计
针对现有的DDR控制器对外部DDR存储器数据读写访问所存在的不足,提出一种基于FPGA实现的模块化设计,采用多数据包重组和转义思想,以及读写控制方法,其模块设计框图如图2所示。DDR控制器主要包括:多净荷包组装模块、写转义模块、读反向转义模块、多净荷包解封装模块、读写控制逻辑以及存储器接口逻辑。
其中,多净荷包组装模块将把从前一级处理模块送入的多个净荷数据包拼接为一个较大的数据包;写转义模块完成对预写入DDR存储器数据的转义处理;读反向转义模块则实现对从DDR存储器读出的数据流进行反向转义,解析出正确的原始组装净荷包;多净荷包解封装模块将提取出原始单个净荷包;读写控制逻辑模块负责对DDR存储器的读写访问进行控制;存储器接口逻辑模块主要实现图1中的前端主控功能,完成对外部DDR存储器的读写访问,并为应用提供命令、读、写接口。
2.2 基本工作流程
DDR控制器存储和读取数据的基本流程如图3所示。首先,对多个净荷包进行组装并进行写转义处理;然后,在处于写操作时钟周期时,将写转义处理后的数据写入到DDR存储器中。当到达读操作时钟周期时,从DDR存储器中读取数据,并对读出的数据流进行读反向转义和解封装,恢复出原始单个净荷包。
3 数据预处理与解析
3.1 多净荷包的组装
向DDR存储器写入数据前,对数据进行两级预处理。多净荷包组装是第一级数据预处理,该方法旨在有效减少短包对CPU的中断次数,降低资源开销,提高DDR控制器的处理效率。多净荷包组装模块封装的数据包格式如图4所示。
多净荷包组装过程:首先,将一个或一个以上原始数据净荷包分别增加一个标识有该包长度信息的数据包包头后级联在一起,并在第一个数据包包头前标识级联在一起的数据包的个数;然后,将级联在一起的数据包组装为一个复合数据包;在组装的同时,在复合数据包的头部加上64 bit特定的数据包起始标识符(Start of Frame, SOF),在数据包的尾部加上64 bit特定的数据包结束标识符(End of Frame, EOF)。其中,SOF和EOF可以在解析读出的数据流时,定位有效数据的起始位置与结束位置。
3.2 写转义的逻辑设计
写转义是第二级数据预处理,可避免在组装后的原始数据包中出现与SOF、EOF以及转义标识符相同的有效数据,从而影响数据的正确解析。写转义变换的规则是对相应的64 bit原始数据的最高位进行反码转换,并在其起始位置加上64 bit特定的转义标识符。写转义变换的实现流程如图5所示,其对应的写转义各状态含义见表1(TM是Transferred Meaning的英文缩写,表示转义)。
3.3 读反向转义的逻辑设计
读反向转义是写转义的逆过程,解析从DDR缓存所读取的数据流。读反向转义变换的规则是:从有SOF、EOF和转义标识符的数据流中读出并过滤掉SOF、EOF和转义标识符,同时将转义标识符后的64 bit数据的最高位进行反码转换,以恢复出原始数据。读反向转义的实现流程如图6所示,其对应的转义各状态含义见表2(RTM是Reverse Transferred Meaning的英文缩写)。
4 读写控制逻辑设计
本方案中对DDR的读写控制主要有两个关键点,一个是64 bit和256 bit数据转换,另一个是读写均衡控制。前者的目的在于更有效地利用接口宽度和转义数据的读写粒度,存储、读取和解析数据。后者则以平均、轮流占用时间片的方式实现读、写操作所占用时间的均匀分配。
4.1 存储管理寄存器
在读写控制逻辑模块定义3个256 bit位宽的存储管理寄存器,分别用于写地址计数、读地址计数和存储数量计数。3个寄存器的协同工作运转过程如图7所示。
写地址寄存器存放写入数据的地址。在写入1个256 bit的数据后,寄存器值加1,当达到1 Gbit容量的DDR存储器上限值时,寄存器值回到0。
读地址寄存器存放读取数据的地址。读地址寄存器在读出1个256 bit的数据后加1,当达到1 Gbit容量的DDR存储器上限值时,寄存器值回到0。
存储数量寄存器存放DDR存储器中当前存储的数据个数。在写入1个256 bit数据后加1,在读出1个256 bit数据后减1。当存储数量寄存器等于DDR存储器的容量大小时,表示存储器已满;当存储数量寄存器等于0时,表示DDR存储器为空。
4.2 64 bit和256 bit的转换
为了将写转义和读反向转义时,数据按64 bit粒度进行变换和解析,为达到存储器提供的256 bit读写接口的数据总线要求,在写转义后,对输出数据进行64 bit—256 bit的转换。而在读反向转义前,首先通过256 bit—64 bit FIFO将输入256 bit宽度的数据转换为64 bit位宽,为下一步反向转义做好数据准备。
4.3 读写均衡控制
为实现对DDR总线的分时复用[4,5],在读写控制模块中定义一个读写计数器,完成读写均衡控制中的计数功能。在连续写入固定量数据后,切换到读状态;在连续读出固定量数据后,又切换回写入状态,如此反复,可使读写吞吐量基本一致且足够大。
经仿真测试和计算单位时间内读写的数据个数,如果每次读写数据为4 kbyte,读、写操作的总速率可达到18 Gbit/s,每个单向具有9 Gbit/s的速率。写入数据时,如果连续写入数量未达到4 kbyte,却出现没有数据输入或DDR存储器已满时,将主动切换到读数据状态。在读数据时,在连续读出数量未达到4 kbyte,却出现DDR存储器已空时,将切换到写数据状态。
5 仿真测试
为了验证方案中转义处理的可靠性和有效性,图8给出了写转义和读反向转义的FPGA仿真图。 图8a中B_TM是写转义前的数据,A_TM是写转义后的数据,设置SOF标识为64 bit特定数据0x7e1234567e123456,EOF标识为64 bit特定数据0x7e12345d7e12345d,转义标识符为64 bit特定数据0x7e12345f7e12345f。从图中,可以看出写转义前的数据为0x7e1234567e123456,0x7e12345f7e12345f,0x300000004,……,其中,SOF标识后的第1个64 bit有效数据与转义标识符相同,于是对其进行转义变换为0x7e12345f7e12345f,0xfe12345f7e12345f,如图8b所示,B_ITM是从DDR存储器读出数据后,读反向转义前的数据。图8c中的A_ITM是读反转义后的数据,与原始数据一致。采用转义的方法后,读数据时的时延问题(发送读命令后,期望的数据要在几十个时钟周期后出现在读数据总线上)可以得到有效解决。
6 结束语
本文提出一种基于FPGA实现的DDR控制器设计方案,采用了多净荷包组装,转义与反向转义方法以及读写控制的流量均衡算法设计,改进了数据封装与解析方式以及读写控制方法。该DDR控制器统筹兼顾了数据读写的可靠性和有效性,有效提高了DDR存储器的管理效率和内存利用率。经实际应用测试,该DDR控制器在千兆线速数据采集卡中已得到有效运用,保证了高速大容量的数据缓冲功能,具有广泛适用性和较高的应用价值。
参考文献
[1]DOUBLE DATA RATE(DDR)SDRAM Specification[EB/OL].[2012-06-10].http://download.csdn.net/detail/macrojiali/3069228.
[2]使用Virtex-5FPGA器件实现DDR SDRAM控制器[EB/OL].[2012-06-10].http://www.docin.com/p-9751883.html.
[3]门亮,王立欣.基于FPGA的DDR SDRAM控制器在高速数据采集系统中的应用[J].电子产品世界,2007(C00):99-103.
[4]姚玮,赵海庆,陈金树.基于Stratix器件的高速DDR缓存系统优化设计[J].电视技术,2005,29(S1):69-72.
基于数据手套的遥控小车控制系统 篇11
摘要:针对目前智能小车主要采用手柄、键盘等方式实现遥控操作而存在功能单一、携带不便、操控不直观等缺点,提出采用数据手套实现智能小车的遥控操作,取得了良好的控制效果。介绍该系统的总体结构与基本工作原理,阐述采用数据手套实现智能小车遥控的具体设计方法,并研制出样机对其控制效果进行实验验证,结果表明:该控制系统能满足智能小车的各项控制要求,具有较好的应用价值。
关键词:智能遥控小车;数据手套;控制系统;样机实验
中图分类号:TP273文献标识码:A
Abstract:Nowadays, intelligent remote control cars are mainly controlled by using hand shank or keyboard, which is inconvenient and inflexible. In this paper, the data gloves were proposed to solve the problem, and desirable experimental results were obtained. The principle and the structure of the data glove were introduced. The design method was explained in detail and verified by experimental test. The results show that the design can meet the requirements of remote control cars and has application value.
Key words:intelligent remote control car; data glove; control system; prototype development
1引言
目前,智能遥控小车主要采用遥控手柄、键盘等方式实现遥控操作,这些操作方式虽已获得实际应用,但均存在不同程度的缺点,如遥控手柄能实现的功能较简单,缺乏完善的功能选择与参数设置功能,而键盘则存在携带不便、操控不直观等缺点[1-3]。为克服上述方式存在的不足,提出采用数据手套实现对智能小车进行遥控操作[4],取得了较好的控制效果。文中介绍了该控制系统的总体结构与基本工作原理,阐述了采用数据手套实现智能小车遥控的具体设计方法,并研制出实验样机对其控制效果进行了实验验证,结果证明了该控制系统的有效性。
2系统结构及基本工作原理
基于数据手套的智能遥控小车控制系统总体结构如图1所示[3, 5-8]。该控制系统包括右数据手套、左数据手套及智能小车控制器三部分,其中右数据手套主要用于小车控制模式选择、参数设置以及小车运动方向的实时控制,左数据手套主要用于配合右数据手套进行控制参数设置以及控制参数与小车运动状态的实时显示,小车控制器则通过接收右数据手套发出的控制指令对小车的运动状态进行实时控制等,各部分基本原理简要介绍如下。
2.1右数据手套基本工作原理
右数据手套的基本构成参见图1,其结构示意图如图2所示。图中序号1-9分别表示:微控制器Ⅰ、方位传感器Ⅰ、无线通信模块Ⅰ、拇指指套、食指指套、中指指套、无名指套、小指指套及直流稳压电源Ⅰ。
该数据手套的各指尖采用金属指套,其中拇指指套与直流稳压电源Ⅰ相连,其余四指指套分别与微控制器Ⅰ的I/O口相连,当拇指指套分别与其它手指指套接触时,不同的接触组合会使微控制器Ⅰ接收到不同的接触信号,微控制器Ⅰ根据采集到的手指接触信号实现对小车控制模式的选择与参数设置,同时微控制器Ⅰ还通过其方位传感器Ⅰ来获得操作者的手势信号,并根据该手势信号实现对小车运动方向的实时控制。
2.2左数据手套基本工作原理
左数据手套的基本构成参见图1,其基本结构及与右数据手套的操作示意图如图3所示。图中序号10-14分别表示左数据手套的微控制器Ⅱ、无线通信模块Ⅱ、显示模块、金属膜操作区及直流稳压电源Ⅱ。该数据手套的基本工作原理是:微控制器Ⅱ通过无线通信模块Ⅱ接收右数据手套发送的控制参数及小车控制器发送的小车运动状态信息,并将相关数据信息通过其显示模块予以显示;其中金属膜操作区主要用于配合右数据手套的手指接触操作,即当右数据手套的拇指接触于该金属膜操作区时,其它四指指套只要点击该金属膜操作区,就可实现相应的手指接触操作。
2.3小车控制器基本工作原理
小车控制器的基本构成如图1所示。该控制器包括微控制器Ⅲ、驱动模块、速度传感器、方位传感器Ⅲ、无线通信模块Ⅲ及直流稳压电源Ⅲ。其基本工作原理是:微控制器Ⅲ通过无线通信模块Ⅲ接收右数据手套发出的控制指令,同时采集其方位传感器与速度传感器的反馈信号,经相关运算处理后输出相应的控制信号使小车的实际运动速度和方向与相应的设定值保持一致,从而实现对小车运动状态进行有效控制的目的;同时微控制器Ⅲ还将采集的各传感器的反馈信号经无线通信模块Ⅲ反馈给左数据手套,以实现对小车运动状态的实时显示等。
3手势采集原理
如上所述,右数据手套的拇指指套与直流稳压电源Ⅰ相连,其余四指指套分别与微控制器Ⅰ的I/O口相连,各手指指套分配的I/O口情况如表1所示。
当四指指套分别与拇指指套接触时,微控制器Ⅰ对应的I/O口会收到一高电平信号。如图4所示为手指接触操作示意图,其中图4(a)为中指、无名指及小指同时与拇指的接触操作,则微控制器Ⅰ的P3.3、P3.4和P3.5口会检测到高电平信号;图4(b)为无名指与小指同时与拇指的接触操作,则微控制器Ⅰ的P3.4和P3.5口会检测到高电平信号等。手指间不同的接触组合代表不同的操作模式或设置不同的参数,其基本组合如表2所示,表中手掌平放和手掌竖起由微控制器Ⅰ通过方位传感器采集手掌方位信息予以识别,微控制器Ⅰ即根据采集到的不同手指接触信号实现小车控制模式选择与参数设置。
4系统控制软件设计
系统控制软件包括右数据手套、左数据手套及小车控制器控制软件三部分,各部分控制软件的基本功能分别简要介绍如下:
4.1右数据手套控制软件设计
右数据手套控制软件流程如图5所示。如上所述,该数据手套主要用于对小车进行控制模式选择与参数设置,以及对小车的运动方向进行实时控制等。其中控制模式包括自动模式和手动模式,自动模式用模式1表示,手动模式用模式2表示;自动模式指小车可按预先设置的控制参数自动运动,其基本原理是:选择模式1后系统进入参数设置界面,需设置的参数包括小车运动速度、方向及距离,所设参数可由左数据手套的液晶显示器予以显示,当参数设置完并确认后,微控制器Ⅰ即将所设置的参数发送给小车控制器,小车控制器根据接收到的控制参数对小车的运动状态进行自动控制;而手动模式指小车的运动方向由右数据手套实时采集右手手势信号进行控制,即微控制器Ⅰ通过其方位传感器Ⅰ实时采集右手手势信号,并将该信号发送给小车控制器以对小车的运动方向进行实时控制,而小车的运动速度可预先设定,运动距离不受限制。
4.2左数据手套控制软件设计
左数据手套控制软件流程如图6所示。如上所述,该数据手套主要用于显示右数据手套设置的控制参数及小车的运动状态信息。其基本工作原理是:开机后,其显示器首先进入模式选择界面,如选模式1(即自动模式),则接着显示右数据手套设置的控制参数,包括小车的运动速度、方向及距离,参数设置完后如收到右数据手套发送的参数确认信号,则左数据手套将开始接收小车控制器发送的小车运动状态信息,包括实际运动速度、方向和距离,并将接收的信息通过其显示器予以显示;如选模式2(即手动模式),则显示器只显示小车的运动状态信息,同样包括实际运动速度、方向和距离。如接收到操作完成信号,则显示器返回到模式选择界面。
4.3小车控制器控制软件设计
小车控制器控制软件流程如图7所示。其基本工作原理是:系统开机后,控制器首先接收控制模式参数并进行判断,若为模式1(即自动模式),则接着接收右数据手套发送的小车运动速度、方向和距离等控制参数,并根据控制参数向小车执行机构发出相应的控制指令,使小车按控制参数的要求自动运行,同时小车控制器还将小车的运动状态信息即实际速度、方向和距离发送给左数据手套予以显示,当小车的运动距离达到设定值时,小车停止运动;如果为模式2(手动模式),则小车控制器首先接收小车运动速度参数,接着接收右数据手套发送的小车运动方向信号(该信号由右数据手套的方位传感器实时采集操作者的手势而获得),并根据上述速度参数和方向信号向小车执行机构发出控制指令,使小车按操作者的手势确定的方向以指定速度运行,手动模式下的运动距离不受限制,可由操作者随时发出控制指令予以停车;在手动模式下,小车控制器同样将小车的运动状态信息即速度、方向和距离发送给左数据手套予以显示。
5样机实验
5.1样机研制
根据上述系统设计方案,研制出相应的实验样机,如图8所示。其中图8(a)、(b)、(c)分别为右数据手套、左数据手套及智能遥控小车实物照片。样机中各微控制器均采用STC公司型号为STC89C52RC的单片机[10,11],右数据手套中的方位传感器Ⅰ选用InvenSense公司的MPU6050型传感器[12],小车控制器中的方位传感器Ⅲ采用基于HMC1022磁阻传感器的电子罗盘模块[13, 14]等。
5.2样机实验
针对研制的实验样机,进行了相应的性能实验,部分实验图片分别如图9-11所示。其中:
图9为左数据手套显示器显示的模式选择界面。通过右数据手套输入数字1或2,即可选择自动模式或手动模式。
图10所示为自动模式控制参数设置界面。在图9所示模式选择界面输入数字1,即进入该参数设置界面,该界面实时显示右数据手套设置的控制参数,包括运动速度、角度和路程。其中运动速度分8个档位,每个档位代表不同的运动速度;角度以正北方向为参考方向,表示小车实际运动方向偏离该参考方向的角度,单位为度(°);路程表示小车的运动距离,单位:厘米。通过该界面最多可同时设置3组参数,每组参数为一条执行指令,即小车如按第1组参数确定的指令执行完后,则自动执行第2组参数对应的指令,然后第3组,待3组参数对应的指令全部执行完毕,则系统回到模式选择界面。
图11所示为小车运行状态显示界面。图中第1行显示的为小车当前运动速度,第2行为小车运动方向相对于参考方向的偏转角度,第3行为小车已行驶的距离。
6结论
针对目前智能遥控小车主要采用遥控手柄、键盘等方式实现遥控操作存在的不足,提出采用数据手套实现对智能小车进行遥控操作。文中介绍了系统的基本结构与工作原理,阐述了采用数据手套实现小车遥控操作的具体设计方法,并研制出实验样机对所设计的控制系统进行实验验证,结果表明:该控制系统能实现智能遥控小车确定的各项控制要求,具有较好的应用价值。
参考文献
[1]ZHAI S M,KRISTENSSONL P O. The word- gesture keyboard: reimagining keyboard interaction[J]. Communications of the ACM, 2012, 55(9): 91-101.
[2]申蔚. 虚拟现实技术[M]. 北京: 清华大学出版社,2009.
[3]张俊杰, 李世其, 熊友军. 基于数据手套的机械手控制技术应用[J]. 计算机应用研究, 2006, (7): 170-171,175.
[4]王家顺, 王田苗, 魏军, 等. 一种面向遥操作的新型数据手套研制[J]. 机器人, 2000, 22(3): 201-206.
[5]董玉华, 孙炎辉, 徐国凯, 等. 基于ZigBee 和加速度传感器的手势识别研究[J]. 传感技术学报, 2013, 26(7): 961-965.
[6]高龙琴, 王爱民, 黄惟一, 等. 基于18-传感器数据手套手部交互模型的建立[J]. 传感技术学报, 2007, 20(3): 523-527.
[7]郑江海, 林钧峰, 陈育群. 基于AT89C51 PWM驱动电路遥控小车的研究[J]. 长春工业大学学报:自然科学版, 2008,29(5): 556-561.
[8]黄建能, 杨光杰. 无线遥控小车[J]. 现代电子技术, 2012, 35(23): 126-128, 131.
[9]申忠宇, 郑启文, 王川, 等. 无线通信网络的多智能小车编队控制系统[J]. 东南大学学报:自然科学版,2013,43(1):18-21.
[10]李忠虎, 王庆宪. 基于CH375和STC89C52RC的无纸记录仪数据存储模块[J]. 仪表技术与传感器,2013,(9):47-48.
[11]何谦, 吴有杏, 李仁龙. 扩频多目标信号动态模拟系统的设计与实现[J]. 计算机测量与控制, 2014,22(6):1908-1911.
[12]谷丽华, 崔畅, 高松巍, 等. 基于MPU-6050的步态信号采集系统[J]. 沈阳工业大学学报,2015,37(2):176-182.
[13]王丽颖, 支炜, 孙红霞, 等. 基于HMC1022磁阻传感器的数字电子罗盘的设计与实现[J].电子测量技术,2009, 32(1):108-111.
数据控制器 篇12
1.1 概述
随着广播电视数字化、网络化的快速发展,广电网络的发展已逐渐迈向全业务时代。在《国民经济和社会发展第十一个五年规划纲要》中也明确指出:“加强宽带通信网、数字电视网、下一代互联网等基础设施建设,推进‘三网融合’,健全信息安全保障体系。”在政策的推动下,广电与电信行业业务在不断融合、渗透,除了模拟电视、数字电视等传统广播电视业务外,广电也开始涉足数据通信业务,以数据宽带业务为核心的广电增值业务逐渐成为广电网络业务发展的重点。
P2P (Peer to Peer对等网络技术)技术出现在20世纪90年代,采用分布式网络,网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源需要由网络提供服务和内容,能被其它对等节点 (Peer) 直接访问而无需经过中间实体。在此网络中的参与者既是资源(服务和内容)提供者(Server),又是资源(服务和内容)获取者(Client)。
新疆广电数据宽带网络开始建设于1998年,前期主要发展面向行业的以MPLS (Multi-Protocol Label Switching多协议标签交换)技术为主的VPN (Virtual Private Network虚拟专网)业务,随后开始发展宽带互联网业务。随着互联网应用的突飞猛进,广电网络运营商面对的流量的复杂性较以前大大增加。层出不穷的应用也给网络运维带来了更大的挑战,尤其是P2P类型应用的大量出现给网络运维带来了很大的压力,运营商在提供个人用户数据业务服务的时候,对网络的控制力度减弱,同时P2P技术的广泛应用导致那些版权所有者面临资料被随意使用的巨大威胁,而且还为互联网电信运营商带来网络容量和用户预期管理问题。
1.2 P2P在广电网络应用中存在的问题
随着大量的P2P应用出现,P2P技术逐渐对运营商的网络架构、流量流向、运营模式、价值链等产生影响。给新疆广电宽带数据网络造成的问题主要有:(1)无法避免带宽滥用,成本高昂。由于没有自己的网络出口资源,新疆广电宽带数据网络出口采用租用的方式,但各种P2P应用消耗了大量宝贵的出口资源,占用了超过50%的出口带宽。(2)流量模型无法建立,网络升级没有科学依据。由于无法控制P2P应用流量的增加,为提高用户体验,不得不进行网络带宽升级。但网络带宽频繁升级,却赶不上流量增长的速度,于是进入网络带宽升级——占满——再升级——再占满的升级怪圈当中。(3)大量的网络资源被低回报,甚至是没有回报的P2P类型应用占用,加之没有服务区分和足够的控制手段,无法提供和细化SLA (Service Level Agreement服务品质协议),无法提供满足不同层面客户需求的业务产品,严重影响市场普遍认同的高回报服务,如Vo IP、游戏、VOD等。
2 P2P流量特性分析
目前互联网P2P应用的增长异常迅猛,P2P流量也急剧增加,以新疆广电数据网络为例,流量中P2P类应用的流量占到了网络流量带宽的40%~60%,P2P已经逐步取代Http而成为Internet流量的主体。对P2P流量分析通常从两个特性进行分析,即空间特性和时间特性。
2.1 P2P流量的空间特性
P2P流量的空间特性包括两个方面,从宏观角度来看,P2P流量在地域分布上的差异性;从微观角度来看,P2P流量在不同Peer(对)之间分布的非均匀性。通过分析新疆广电数据网络的实际流量看,仅五分之一的Peer(对)就传输了90%的P2P流量。另一方面,由于广电网络属于区域性的运营商,网络用户数量有限,用户的P2P应用一般以资源下载、P2P流媒体类业务为主,而此类应用的P2P种子站点大多都在中国电信、中国网通等全国性的网络中,加上Peer(对)的上/下载流量存在的不对称性,导致在新疆广电数据网络出口流量中,流出流量比流入流量小20%~30%左右。
2.2 P2P流量的时间特性
由于大多数P2P用户是在下班后加入P2P网络并在晚上持续下载数据,因此网络的P2P流量在傍晚和凌晨之间最大,在上午显著下降。
3 P2P流量检测和控制
3.1 P2P的流量控制
目前常用的P2P流量检测技术有:端口检测、启发式检测和应用特征检测。
3.1.1 端口检测
P2P应用发展的初期使用一些固定的TCP或UDP端口进行控制和数据的通信,如早期Emule/Edonkey采用4661、4662端口,BT采用6881~6890端口等。通过检测端口即可判断P2P数据包。
优点:仅通过对网络传输层处理即可完成检测,逻辑简单,检测性能高。
缺点:基于端口的识别误报和漏报率偏高,无法检测在0~1024端口之间传输P2P应用,而越来越多的P2P应用开始使用端口跳变 (Port Hopping) 技术来逃避基于应用端口的流量检测,检测系统无法处理端口经常变换的情况,端口颗粒度太粗,控制容易出错。
3.1.2 启发式检测
启发式检测也叫DFI (Deep/Dynamic Packet Inspection) 深度/动态流检测技术。是一种基于流量行为的应用识别技术,根据各种应用的会话连接或数据流状态的不同,如:连接数、单IP地址的连接模式、上下行流量比例关系、数据包发送频率等指标来区分P2P应用类型。
优点:能够发现未知P2P应用,可用于加密协议检测,不用查看应用层协议内容。
缺点:检测准确度低,需要建立较为复杂的数学模型,算法效率较低。
3.1.3 应用特征检测
应用特征检测也叫DPI (Deep Packet Inspection) 深度包检测技术。是一种基于应用层的流量检测和控制技术,通过深入读取IP包载荷的内容来对OSI七层协议中的应用层信息进行重组,得到整个应用程序的内容,根据各种P2P应用协议使用的固定特征字来识别流量中的P2P应用。
优点:检测精准,能检测的P2P应用范围广,检测率不受端口变化的影响,误报和漏报比基于端口和启发式的流量检测方式低,适合流量的精确监控。
缺点:协议分析和特征搜寻需要投入一定人力,特征的选择对检测性能有很大影响,难以获取加密协议的特征,查看应用层的内容涉及隐私的问题。
3.2 P2P的流量控制
在对流量分析检测的基础上, 通过网络设备对P2P流量进行控制管理,根据控制设备在网络中的位置,将控制P2P数据包的技术分为直路串接控制、旁路控制和联动控制。
3.2.1 直路串接控制
直路串接流量控制通常以透明模式串接到网络设备中使用。通过对网络上的各种类型的应用流量进行分类,可以对不同类型的流量实施灵活的控制策略。
3.2.2 旁路控制
旁路控制主要采用数据包伪装技术将伪装的控制数据包发到正在通信的TCP、UDP连接中降低连接的数据传输速率或者切断连接以达到流量控制的目的。
3.2.3 联动控制
将流量检测设备旁路部署于待检测的网络中,负责识别各种协议并统计各种协议的流量, 并将检测结果和控制策略通知现网中的直路串接设备 (如防火墙) 。直路串接设备根据检测结果和流量控制策略来限制流量, 并将限制结果反馈给检测设备。直路串接设备存储已识别协议的特征,由自身来完成流量识别和统计功能。直路串联设备未能识别协议类型的新流量,则由流量检测设备来识别。
3.3 P2P流量检测与控制解决方案
P2P在采集分析、识别和管理方面比较困难。从采集分析看,由于流量特征不明显,所以需要一定的存储和计算能力才能达到实时检测过滤的效果。传统的网络设备的存储和处理能力有限,无法满足要求。只有专用应用流量管理设备的存储和处理能力才能达到实时采集分析;从识别来看,P2P现在大部分采用动态端口,而且数据包已经开始加密,并且其链接的IP广泛,所以通过固定IP链接或端口的识别无法满足要求。需要对数据包进行深度分析,才能准确识别P2P的数据包以及其内部的各种数据链接。而进行深度分析,需要一定的技术,对设备的运算能力要求也较高;从流量管理看,在P2P应用识别后,如果仅仅是屏蔽则只需要将P2P数据包屏蔽掉即可,但是如果需要将P2P流量限制到一个范围,最好的办法就是对请求队列做一定的修改,这也需要管理设备具有一定的计算能力。常见的P2P流量分析和管理方案有以下几种。
3.3.1 流统计状态路由器
由交换器、路由器设备生产商提出的解决方案。流统计状态路由器可以在IP层通过统计流量特征的方式识别P2P流, 从而可以提取出经过编译码的或者是未知的新型P2P流。这种方式缺点是更新相对缓慢,难以应对P2P的更新。优点是投入较低,控制效果明显。
3.3.2 应用流量管理器
由应用流量管理设备提供商提出的解决方案。通过DPI扫描分析出流的应用层协议,标识出具体的P2P业务类型,并修改数据包优先级和排列顺序进行管理。这种方式能够对P2P实现限制带宽等管理, 不过相对的投入较高。
3.3.3 智能防火墙
智能防火墙设备利用数字签名技术识别P2P数据, 并阻断未经授权的P2P流。这种方式相对简单,但是更新缓慢,而且管理方式限于屏蔽。
3.3.4 P2P缓存系统
P2P缓存系统是智能的P2P镜像、P2P缓存和流量导流技术的多种技术的综合。它是衍生在OSI/ISO网络七层参考模型网络层(Layer3)和应用层(Layer7)之间的综合业务服务层。所采用的技术包括IP层的网络技术、基于传输层(Layer4)的内容缓存技术、分布式存储技术、文件分发和传输技术、分布式计算技术等等,能够将正确的P2P流量内容在距离互联网用户接入最近的地方呈现出来。因此,P2P缓存技术是一种能够缓解互联网流量、梳理网络拥塞、分解互联网网站负载的新途径。
4 新疆广电网络P2P流量控制的方案选择
根据网络P2P流量的实际情况及将来的发展出发,新疆广电数据网络P2P流量控制管理计划按照疏堵结合实施原则,综合利用多种技术手段来实现。
首先采用封堵的方式,计划在互联网出口设置Allot公司的流量管理设备,对网络中的P2P流量进行限制,减少出口带宽压力。该款设备基于七层识别的流量管理,使用DPI技术进行流量分析,可以实现从宏观上识别流量的趋势和从微观角度分析某个主机、用户或者应用的实时状态,经过分析后的各种应用进入各自的管理队列中,实现不同业务的Qo S策略管理。该款管理设备采用直路串接控制方式,能够实现速率限制、上/下行控制、分类控制、时间策略和和用户应用限额等多种流量控制管理模式。利用专门的流量管理设备,以网络实际P2P流量的空间特性和时间特性为依据,制定相应的控制策略,实现对P2P出口流量的控制管理。
随着P2P技术应用的更加广泛,完全采用封堵的方式,将较大地影响用户P2P业务的使用体验。因此,后期应当结合疏导的方式,建设P2P缓存系统,利用P2P缓存技术改造现有网络。利用系统的P2P镜像和分布式存储,把外网的P2P流量缓存到本地,尽量使P2P流量本地化,使用户的P2P应用能够就地取材,减少出口带宽压力,提高网络性能,给用户提供良好的使用体验;同时,通过可管理的内容分发网络平台,还可以把多种不可管理、互不兼容的P2P应用转变成可管理的、单一的P2P内容分发平台,从而使运营商能够提供P2P下载、预览、点播、直播等网络视频增值服务,提高网络受益。
参考文献
[1]约翰.对等网[M].苏忠, 译.北京:清华大学出版社, 2003.
[2]谢亮.P2P技术与互联网安全[J].电信网技术, 2007, 5.
[3]刘琼, 徐鹏, 杨海涛, 彭芸.Peer-to-Peer文件共享系统的测量研究[J].软件学报, 2006 (10) :2131-2140.
[4]Zhou Lijuan, Li Zhitong, Liu Bin.P2P traffic identification by TCP flow analysis[C].Proceedings of International Workshop on Networking, Architecture, and Storages.Shenyang, China.Los Alamitos, CA, USA:IEEE Computer Society, 2006.