通信工程用工协议十篇

发布时间:2024-04-29 07:40:47

通信工程用工协议篇1

关键词:网络协议动态链接库协议工作说明书

一、引言

pRt-Get定义为一个协议模拟器,所谓协议模拟器就是通过某种途径模拟各式各样的网络通信协议从而可以进行具体而实际的网络通信,最终达到同时支持多种通信协议的目的。pRt-Get不同于现今网上存在的各种网络工具,使用它可以编写基本上所有的基于Socket应用层的通信协议,pRt-Get的设计解决了用户使用网络工具时难以支持新出现的协议的问题。

二、pRt-Get的特点

作为一个优秀的协议模拟器,pRt-Get具备以下的几个特点:

1.pRt-Get是一个动态链接库。考虑到应用程序的扩展极其的不方便,所以没有把pRt-Get设计成应用程序的形式,而采用动态链接库的方式,该方式可以方便地进行二次开发,也方便扩展软件的功能。

2.pRt-Get是完全面向对象的。pRt-Get是一个可二次开发的动态链接库,所以面向对象的设计模式能令二次开发更加高效。

3.pRt-Get的代码扩展性高。使用pRt-Get时,如果pRt-Get本身提供的功能不够,那么用户可以通过扩展pRt-Get中对应的类,以实现自定义的功能。

4.pRt-Get支持自定义协议。pRt-Get的最大特色就是支持用户自定义应用层协议,通过用户编写的协议工作说明书,pRt-Get忠实地执行用户在说明书中指定的每一个操作,也就是说,用户无需编写任何一句代码就可以使pRt-Get支持自定义协议。

5.pRt-Get的使用方便。pRt-Get使用时只需要调用动态链接库就可以轻松地使用其中的协议控制类。

三、pRt-Get的设计

1.pRt-Get的工作层次

pRt-Get设计为一个动态链接库,它为系统应用程序提供中间层服务,使得应用程序无需了解网络通信的具体逻辑,只需把网络的内容当作本地的内容操作即可,从这点看起来pRt-Get也是一个协议,而且更是一个能提供很多协议服务的协议支持软件。pRt-Get在网络中的工作层次如图1所示。

对于使用pRt-Get作为网络通信协议的应用程序来说,用户可以指定pRt-Get使用哪个协议进行工作,因为pRt-Get是在需要使用时才加载协议内容的,所以用户可以随时动态指定pRt-Get使用的协议,甚至可以动态修改pRt-Get使用的协议内容。当协议组里面包含的协议不满足用户要求时,用户还可以添加新的协议,这只需要添加一个协议工作说明书到协议组里面就可以了。

应用程序

计算机

pRt-Get

协议组

协议内容

服务器

服务程序

用户

图1pRt-Get工作层次

pRt-Get工作时根据用户指定的协议加载协议工作说明书,然后再依照协议说明书内容与远端服务器/客户端协作工作。对于pRt-Get来说,远端机器是透明的,pRt-Get的机器透明性是基于工作在tCp协议上的Socket的,所以对于pRt-Get来说没有机器的差别,没有平台的差别。

2.pRt-Get的几个概念

在pRt-Get中,有一些基本概念贯穿于整个pRt-Get的设计和实现过程中。

(1)协议

pRt-Get中的协议对应着一个网络协议。协议在pRt-Get程序中只是一个逻辑的存在,并没有具体的某个协议的实现,所以如果要使pRt-Get支持某个协议的话,需要编写一个具体的协议工作说明书与pRt-Get相配合。也就是说协议工作说明书是pRt-Get的具体协议的载体,也是pRt-Get支持协议的体现。

(2)元素

元素是pRt-Get的一个新概念。所有的协议都是一些基本通信单元的组合,而pRt-Get就是通过将协议分解成一个个的基本单元从而做到支持各种协议的。这种基本单元就是元素。元素是pRt-Get中协议构成的基本单位,一个pRt-Get的协议本质上就是一些pRt-Get的元素序列,同样的,对元素的不同组合可以生成不同的协议,这就是pRt-Get可以支持不同协议的本质原因。

程序中的一个元素类的对象对应着协议工作说明书的实际一行,也就是代表着通信交互中的一个基本交互单元。协议工作说明书中指定了每一个通信单元应当使用的元素类,并执行相应动作实现对应的通讯单元。

为更好的实现通讯单元的分割和减少通信协议工作说明书的编写难度,定义了动作元素和辅助元素这两个概念。

动作元素:对应着一个通讯基本操作,它指明了对于本次操作应该如何进行。

辅助元素:对动作单元进行辅助处理的单元,它是从属于动作单元,一个动作元素可以有零个或多个辅助元素。

动作元素和辅助元素指定了协议的一个通信单元的工作方式,而本次通信的内容就由内容项指定了。一个元素由动作元素和辅助元素、内容三项组成,其结构如下:

动作单元[辅助单元]*[内容]

(3)分析器

pRt-Get中并没有协议的实体存在,代替的是用协议工作说明书作为协议的载体,而协议工作说明书只是一个文本文件,如何将这个协议工作说明书的内容加载到内存并转变为一个一个对应的元素,这个工作是由分析器来解决的。

分析器有协议分析器和元素分析器两种,分别用于不同用途。

协议分析器:协议分析器主要的工作是分析协议工作说明书并创建该说明书对应的元素序列,辅助protocol实体的创建。

元素分析器:元素分析器的工作是从一个字符串中分解出辅助元素和内容,以支持元素类的动作。

pRt-Get工作流程

pRt-Get的使用非常的方便,只需要使用URL创建出具体的一个协议对象则可以与主机通信,而此URL的要求为“protocol://host:port/file”格式,其中port并不是必须的,如果没有指定的话就会使用对应协议的协议工作说明书中指定的默认端口。

pRt-Get工作时,将会根据用户提交的协议名检查其协议说明书库中是否有该协议,如果发现对应的协议不存在则抛出一个异常提示用户。找到指定协议后,pRt-Get将创建一个协议对象以实现通信,并将协议工作说明书加载进内存中,分析生成一个元素序列,最后就执行元素序列以实现实际通信目的,其工作流程如图2所示。

读取

开始

结束

查找协议工作说明书

协议组

协议存在

抛出异常

创建协议对象

分析工作说明书

执行元素动作

图2pRt-Get工作流程图

四、主要包的设计

对pRt-Get的设计采用按功能结构分包的方式,将功能相近的类放置在一起,并按逻辑位置将其放在不同的命名空间之中。

pRt-Get中最核心的三个包分别是element(元素包)、analyze(分析工具包)和Util(其他工具包),此外,还有protocolmanager和protocol两个核心类。

pRt-Get将网络操作分为基本的单元——元素,在程序中的体现就是元素(element对象),pRt-Get将所有的元素类都放置在element包中,并通过接口ielement实现元素动作的统一。

analyze包是一个存放存放分析器的包。pRt-Get经常需要对协议工作说明文件进行分析,这就需要一个分析器专门对协议中的字符串进行分析,analyze包中的类就是负责此类工作。

pRt-Get在进行一些处理时经常会用到一些方法,为增加代码的重用率,将所有经常使用到的方法或操作封装为类存放在Util包中。

五、协议工作说明书

协议工作说明书是协议的真正载体,它以“协议名+.prt”为文件名存放在pRt-Get动态链接库目录的“protocol”文件夹下,pRt-Get加载协议时到这查找该协议是否存在,当查找到时就会加载为一个协议实体。

1.协议工作说明书的组成

网络通信主要是发送内容和接收内容,pRt-Get的主要作用就是屏蔽了这一层中繁琐的通信,使得用户可以直接对通信的有用内容进行处理。

基于网络通信只有发送和接收两种情况,协议工作说明书也只有两种基本元素:Send和Receive。Send发送数据,而发送的数据可以是在协议说明书中指定的常量,也可以是用户动态加载的内容。Receive同样也可以接收常量,或者接收到内存中对应的元素的Data数据中。除了这两种基本元素外,pRt-Get还扩展了另外两种元素:Skip和Repeat。Skip能忽略用户不感兴趣的内容,Repeat的作用就是重复进行用户的一些烦琐的操作,这些对提高用户的工作效率有很大的帮助。此外,还有其它一些辅助元素可以指定各种动作元素的具体操作内容。

2.协议工作说明书编写要求

编写协议工作说明书必须满足以下格式:

port端口号

(element名[辅助元素名]*内容)*

协议说明书的最开始应该是端口号说明,而后出现的是元素字符串。元素字符串由三部分组成,其中元素名是指该动作元素的名称;辅助元素指定了动作元素的一些要求,一个动作元素可以有几个辅助元素的存在;第三个部分就是内容,内容可以是常量内容,也可以是变量,也就是用户指定的数据。

一个协议说明书只能由一个端口号,但是却可以有多个元素,不同元素之间用换行隔开即可。定义一个协议说明书必须以该协议名称加上“.prt”为协议工作说明书名称,并将其放置在pRt-Get的动态链接库目录下的protocol文件夹内。

六、应用实例

多协议服务器是一个使用pRt-Get作为通信层的服务器软件,以文件映射作为虚拟路径管理手段。通过该服务器软件可以设置虚拟目录,用户可以指定访问需要使用的网络协议(如Http),当有客户端请求时,服务器调用pRt-Get创建一个协议实体执行通信,并由服务器解释请求的URL,将其映射为相关系统文件,客户端可以和服务器进行通信,请求服务器上的文件资源如图3所示。

图3利用pRt-Get模拟Http通信

七、结语

本文讨论了多协议模拟器pRt-Get的设计思路和方法,并通过实例模拟Http协议验证了文中所提设计方案的可行性。由于pRt-Get目前的版本设计中辅助元素还不够多,模拟器的交互设计还有所欠缺,下一步将增加辅助元素的设计,丰富模拟器的功能,增强其应用的灵活性。

参考文献

[1]陈富春.中XmL数据与关系数据的交互技术.现代计算机.2005(04):p35-37

通信工程用工协议篇2

【关键词】modbusRtU协议Delphi编程环境软件实现

随着近年来我国信息技术的快速发展成熟,我国的工业控制技术已经实现了自动化的发展,包括测控装置和被控对象在内的各类设备之间的交互性信息发送量也在逐步增加,但是,常规的控制系统已经不能满足及时有效的数据交换需要,而以太网技术则具有应用广泛、低成本、高速率等明显优势,并在工控领域的道路广泛的应用,逐步发展完善为现阶段较为现金的以太网技术。modbus是属于工业领域中得到广泛使用的一种完全标准、开放的通信网络协议。在冶金、制造业、基础设施建设、电力、供水和交通等工业领域行业众,modbus能够达成过程控制和数据采集等目标,并成为了业界一致认可的工业通用准则。modbus协议在pLC结构特征的基础上,还具有较高的性价比,且其主/从式通信机理可以实现数据的实时性传输,大部分的智能化仪表和pLC都能够为该协议的内部资源提供直接的支持。

1modbusRtU协议介绍

modbus协议属于分布式控制和工业通信系统协议的一种。对于该协议而言,控制器之间能够利用网络及其相关设备实现相互通信。modbus协议可以被视为一个能够帮助控制器识别的消息结构,且可以适用于所有的网络通信过程。该协议属于主从应答方式通信协议的一种,其主站能够与一个甚至多个从站相对应,因而协议更加易于实现,且更简单。

在modbus系统中,可通过tCp模式、aSCii模式和RtU模式等三种常用的模式进行传输,先对其进行简要说明:在aSCii系统模式运行过程中,所有的信息帧均以每8位字节为2个aSCii字符的形式进行传输,而RtU模式则是将所有信息中的8位数据转化为1个8位16进制的字符进行传输,因此,与aSCii模式相比,RtU模式仅需要较少的位数即可以表达同样的信息,而且在通信速率相同的情况下数据的流量也更大[3]。同时,tCp模式能够与以太网tCp/ip协议相互结合,并为XmL和Http等开放internet协议提供支持,且保留了传统modbus协议的应答/命令方式以及aSCii和RtU两种数据格式等基本特征,这就造成modbus/tCp能够在使用现场总线的基础上,将网页服务器置入设备中,从而有助于处理现实的问题。在modbusRtU协议中,主机设备将会发出一个信息,而从机设备也会相应地反馈一个信息,若相反,则从机设备接收到信息后,其会组织处一个向从机设备提供响应的信息,后将所发送的信息返回到主机设备。modbusRtU的查询响应示意图,见图1。

2软件的设计和实现方法

2.1CRC16的设计和实现

根据modbus协议所规定的校验方式,RtU模式应选择的CRC的校验方法。CRC也就是循环冗余码校验,其能够通过多项式的生成产生校验位编码。按照不同的生成多项式,CRC校验主要包括下述几类,即CRC-32、CRC-CCitt、CRC-12和CRC-16。现阶段,CRC-16校验码是仪表类中较为常用的一种校验码。由其算法实现方面来看,通常首先可以设置一个16位的寄存器,再将16位的CRC寄存器与8位的2进制数据低8位异或,后在CRC寄存器中放置结果,同时右移寄存器内容,最高位以0填补,并对右移后发生的移出位情况进行检查。

2.2modbus协议类的实现

上位机通信软件通常在Delphi编程环境中进行开发,并在Delphi编程环境通过spcomm控件进行串口编程。这一空间设计的主要对象为RS-232通用串口。modbusRtU协议通过面向对象技术封装的类,能够实现软件的重用、扩展和维护。modbus类的基本内涵主要包括下述三个基本成分,即功能码处理、报文处理和报文存储。modBus协议类的通讯标准可以定义为:在从机设备接收到主机设备发送的通讯命令后,对应地址码的设备能够收到相应的通讯命令,将地址码去除后,读取信息,若未发生错误,则立即执行相应的命令,再将执行的结构反馈到发送者处。

3总结

综上所述,在Delphi编程环境下根据本文所述的的方法,实现了modbusRtU协议串口通讯上位机软件的编制和运行,研究结果表明,这一软件能够在最短的时间内实现最大量的信息传输,同时实现了系统通讯可靠性、稳定性和高速性的目标,能够对下位机进行数据处理和监控。本文所述的母性具有通用性强、开发成本低以及模型实现简单等显著优势,因而在工业控制领域中得到了广泛的应用,可作为各类数据通讯设备的首选软件系统。

参考文献

[1]张立国,窦满峰.基于modbus协议多通信接口的工控组态软件pmSm控制[J].海特电机,2013,41(7):56-57.

[2]张成鹤,王平,郑林华等.可编程多协议收发器maX3160的原理与应用[J].国外电子元器件,2002,2(12):62-64.

通信工程用工协议篇3

关键词:安全协议;协议分析;协议设计;性能分析

0 引言

安全协议理论与技术是信息安全的基础和核心内容之一也是信息安全领域最复杂的研究和应用难题。安全协议融合了计算机网络和密码学两大应用。教学实践表明,计算机网络原理课程教学碰到的最大问题在于网络结构和协议的抽象性无法使学生彻底理解和掌握网络协议的工作流程;密码学课程的教学则容易陷入密码算法的理论学习而使学生无法体会密码技术的实际应用。因此,有效开展安全协议设计和分析的教学实践不仅可作为信息安全的入门基础,还可成为计算机网络和密码学课程内容相结合的深化教学。

1 安全协议的教学现状

近几年,信息安全作为一个计算机相关专业在国内兴起,对信息安全的产、学、研一体化发展起到较大推动作用,使我国的信息安全技术突飞猛进,取得了长足的发展。但是,由于信息安全是一个新兴的方向,专业基础课程的教学方面尚无太多的积累,还处于不断的摸索和改革之中。概括地讲,目前关于安全协议的教学存在如下几个问题:

(1)安全协议的教学定位不明确

当前,有关信息安全的教材层出不穷,普遍被认同的教学内容主要包括:密码学、密钥管理、访问控制、防火墙、入侵检测、信息安全模型与管理,以及信息安全相关法律等。安全协议渗透在密码学、密钥管理、访问控制等教学内容中,提出作为独立课程者甚少。纵使学生理解密码学基础知识,也难以系统掌握安全协议的原理与技术。

(2)缺乏通俗易懂的安全协议教材

目前为止,面向信息安全专业的安全协议教材仅出现过两本。一为中科院信息安全国家重点实验室撰写的《安全协议理论与技术》,全面介绍安全协议的形式化分析理论和方法;另一本为国内信息安全专家卿斯汉编著的《安全协议》,主要内容包含了作者多年来从事安全协议的研究成果。两本教材的共同点是内容相对集中在较高的学术研究水平上,主要围绕形式化理论分析技术,忽视了作为大学教材的通读性特点。因此,针对安全协议的设计和分析,尚无适合基础教学的教程。

(3)安全协议教学的实用性不强

众多高校开展安全协议相关内容教学,通常以详细介绍流行的安全协议实例为主,如讲解SSL、Set、pKi协议等原理和流程,尚未给出实现安全协议的工程方法及安全协议设计的要点等实践方法。这使学生停留在安全协议理论模型的认识上,无法掌握实现安全协议的相关技术。

因此,基于安全协议课程的重要性和教学现状,有必要寻求一种综合教学实践方法,倡导学生自主设计安全协议、灵活运用理论和工程相结合的方法分析安全协议,帮助学生快速掌握安全协议的基本原理与应用技术。

2 安全协议的综合教学实践方法

鉴于安全协议的设计和分析两个关键教学内容和目标的融合,综合教学和实践框架。型库。根据各个安全协议的标准设计,提炼和总结安全协议设计的一般方法,并作为设计规则归入安全协议设计方法集以传授给学生;同时,在标准协议的基础上,由教师简化协议模型,设计完成特定安全功能的安全协议需求,供安全协议设计时参考,并在此基础上构建安全协议自主设计命题库。

从自主设计题库中选取安全协议设计需求,在通用的安全协议设计方法指导下,学生开始自主设计安全协议。当然,有必要时需在安全协议设计之前开展相关的密码学预备知识讲解。

学生在完成安全协议的设计雏形后,开始学习运用各种形式化分析方法,如模态逻辑、代数系统等,对自己设计的安全协议进行安全性逻辑分析,找到安全不足之处,并反馈回协议设计阶段重新修改协议模型,直到在形式化分析工具的支持下,安全协议满足预定的安全需求时得到最终的协议设计框架。

针对自主设计的安全协议,进一步利用现有的密码开发工具包,包括开源的密码库如openssl、cryptlib等(或自主开发密码包),开发和实现已设计的安全协议,并在相应的网络环境中运行和测试安全协议。

安全性分析对安全协议至关重要,而协议执行的性能和稳定性分析在工程实践上是必要的。因此,学生需配套学习网络协议分析的方法,主要通过协议分析工具如著名的sniffer等,在安全协议的测试平台上对协议运行状态进行数据抓包分析,并运用基于网络原理的各种分析和统计方法,给出自主设计的安全协议执行性能分析报告。若安全协议在执行性能和稳定性方面无法满足现实的应用,则重新回到协议设计阶段修正安全协议设计。

通过安全协议设计和分析的综合实践过程,最终得到符合设计要求的安全协议集。鉴于教学积累考虑,可将自主设计的安全协议模型添加到安全协议自主设计命题库,以备后续教学实践。

3 综合教学方法的特点

(1)发挥学生的学习自觉性

以自主设计命题的形式引导学生学习安全协议的设计和分析技术,可充分调动学生的自主思维和相关知识的学习积极性。如安全协议的设计过程利于学生学习一般的协议设计方法;协议的分析过程帮助学生理解和掌握形式化分析技术;协议的测试和性能分析则培养学生利用密码技术开发安全协议的工程设计能力。

(2)支持学生的学习协作性

安全协议综合实践的过程既可指定学生单独完成,也可让学生分组合作,共同完成协议的设计和分析任务。如四个学生可分别担任协议设计、安全分析、实现和测试、性能分析四项工作,以此锻炼学生的自主研究和项目协作能力。

(3)知识点的综合和交叉

自主安全协议设计和分析过程包括标准模型简化、协议设计、形式化分析技术、密码库开发和调用技术,及网络协议分析等技术,可充分体现安全协议技术涵盖知识面的综合性,使学生全面认识信息安全的实施过程。

通信工程用工协议篇4

   在无线数据传输系统中,有总站终端和子站终端之分。通常总站终端设置在控制室,数量比较少,与控制系统数量对应设置;而子站终端通常设置在工业现场,其数量可以根据仪表的多少和传输通信速率的要求来选择。总站终端和子站终端之间通过多路由的无线方式传送信号,总站终端以有线方式与pLC系统或其他控制系统进行数据交换,子站终端和现场仪表之间也是通过硬接线的方式进行信号的传递,从而完成从现场的有线信号到无线信号再到控制室的有线信号这样一个传输路径。输入到无线通信子站终端的仪表信号,通过超短波的方式发送到远程总站终端实现接收,接收端将所需数据读取到对应的寄存器中,操作站根据要求读取出过程数据进行显示。总站终端与子站终端之间的无线通信数据格式可以根据控制系统的通信模块功能来选择。如控制系统是profibus协议的通信模块,在无线通信系统中也要选用profibus协议的通信模块;如控制系统是modbus协议的通信模块,在无线通信系统中要选用modbus协议的通信模块。对于现场仪表则要按照选用的通信协议的类型选择,如果不能直接选用具有同样通信协议的仪表,则需要增加协议转换模块,以按照统一的协议进行数据通信。

   无线数据传输抗干扰问题探讨

   由于大气环境中有多种电磁介质,厂商在选择无线频段时进行了充分的选择,并设计了专用的防护系统。但在实际项目中,无线数据传输系统还是会遇到许多干扰,如工业电磁干扰,民用通信干扰,大气层中的各种电磁、雷电干扰等,其中主要干扰因素:无线电磁波对无线传输设备及通道的干扰;电磁或电源对传感器及信号环路的干扰。无线数据传输抗干扰一般可采用以下方式:1)智能无线终端RtU采用带电磁屏蔽的外壳设计,从而对外界环境产生的射频(RF)干扰具有屏蔽作用[34]。2)无线传输采用“数字屏蔽”的军用技术及握手校验等方法,保证数据传输的可靠性及完整性。3)信号输入采用光电隔离,防电浪涌。通道间也相互隔离,a/D,D/a各自独立,保证设备的安全及数据精度。4)屏蔽双绞线传送所有模拟量信号,单端接地。5)通信电缆地线与各种现场地线分开。6)模拟量采集采用15位分辨率模板和算术平均滤波方法[5]。7)程序采取复置技术。在程序执行过程中,一旦发现现场故障或错误,就重新执行被干扰的先行技术若干次。若重复执行成功,说明为干扰;否则输出软件失败(Fault)或进行声光报警。

通信工程用工协议篇5

关键词:蓝牙无线技术;蓝牙协议:RBtFt

中图分类号:tn925

1蓝牙无线技术的重要性概述

蓝牙技术相比其他电子设备而言,是一种成本低、科技含量高的非封闭式的无线通讯技术,其使用范围受距离限制明显,只能在短距离范围内与电脑、便携设备、打印机、数码相机、键盘、电脑鼠标等实现无线连接。当前,受科学技术进步的推动和资源节约型社会的影响,无线连接技术发展迅速,受到社会欢迎。蓝牙无线技术的发展应用对于无线移动数据通信业务的发展起到了促进作用,蓝牙无线技术普遍采用的2.4G赫兹频带为全球通用标准,能保证蓝牙无线技术在世界各地的推广使用。换句话来说,蓝牙无线技术使得各种电子数码产品之间实现无线沟通,净化了空间和节约了资源。整合蓝牙无线技术,可以在设备方圆九米的范围内实现电脑、便携设备、收集、打印机、键盘等设备的无线连接,拓展无线通信网络道路。当前,蓝牙无线技术主要采取分散式网络结构和快跳频、短包技术,实现点对点及点对多点通信。

2蓝牙协议的概念

蓝牙协议的目的是使符合该协议的各种设备之间能够传递信息。两个相互之间传递信息设备需要使用相同的协议栈。蓝牙协议栈采用的结构是用来完成数据流的过滤和传输以及跳频和数据帧传输的分层结构。当然不同设备可以在不同的协议栈上实行。但是,必须遵循一个共同的原则,那就是所有的协议栈都要使用蓝牙协议中的数据层和物理层。支持蓝牙使用模式的应用层在协议中的最高位置。有的应用不要用到协议中的所有内容。相反,应用仅用在蓝牙协议栈中垂直方向的协议。基带,链路管理,逻辑链路控制与适应协议和服务搜索协议是蓝牙的核心协议的四个组成单元。(1)基带协议可以确保互相连接的蓝牙设备射频连接,以形成一个微小的网络。(2)在蓝牙各设备间连接的建立和设置需要链路管理协议。链路管理协议通过发起连接,进行身份验证和加密,通过协调确定基带数据大小;无线设备的节能模式和工作周期需要链路管理协议控制,以及那个微小网络内设备的连接状态也是由该协议所控制的。(3)逻辑链路控制和适配协议(L2Cap)可以说是基带的上层协议,L2Cap与链路管理协议是一个并列的关系,两个协议是并行工作的。但是这两个协议也有一定的区别,当业务数据不经过链路管理协议时,这个时候适配协议会提供上层服务。(4)服务搜索协议(SDp),使用该协议可以查询到相应的设备信息和服务类型,各蓝牙设备间在此基础上建立相应的连接。所谓的支持协议主要指的是蓝牙协议层,包括逻辑链路控制和适配协议(L2Cap)、无线射频通信(RFComm)和业务搜索协议(SDp)。L2Cap提供分割和重组业务。RFComm是用于传统串行端口应用的电缆替换协议。SDp包括一个客户/服务器架构,负责侦测或通报其它蓝牙设备。

3RBtFt协议的研究与实现

3.1RBtFt协议的可靠性和稳定性

RBtFt协议(ReliableBluetoothFiletransfer的简称)是指在RFC0mm协议基础之上建立的一条端到端(或点到点)的文件传输协议。该协议的主要目标在于在蓝牙设备和其他数码设备之间建立一条无线连接通道,该通道应具有可靠性和稳定性,以便践行文件的可靠传输。该协议目前通常采用的开发应用程序是VC++,以win98/2000/nt为应用平台,但RBtFt协议并不受VC++这一具体编程语言和win98/2000/nt操作系统的限制,它支持不同工作形式,包括一次传输多个文件、断点续传、CRC校验等等,其设计思想源是在传统的帧传输方式得到启发的(这中方式在数据传送过程中要求一帧一帧地发送,而不是整体发送)。为了确保文件传送的可靠性,RBtFt协议明确了RBtFt帧的定义,规定帧由报头和数据子包两部分组成,其中报头指明帧的类型(同时携带CRC校验信息),数据子包有不同的子包结束符构成,并明确是否有后续包等情况。RBtFt协议在进行数据传输时,采用发送---应答---握手---失败的传输方式,即在发送文件时一帧为单位,每发送一帧数据收到一个应答,说明此次发送是成功的。

蓝牙技术在利用RBtFF协议传送文件时,最先要做的工作是进行串口初始化操作,如果这个操作成功,成功报告将通过异步消息RBtFF―ConneCt向应用程序发送,告知系统文件传输通信线路连接已经建立。开始是连接通信线路,接通成功后开始发送数据,此时实际数据发送的多少将根据内部缓冲区的内存来决定,数据信息在内部缓冲区内被暂时存储起来,根据RBtFF协议将这些数据以一帧帧的文件形式,并在文件里加入了帧信息和CRC校验信息。接收方在接收文件的过程中,每成功接收一份文件,接收方系统将对接收的文件进行CRC校验。如果文件接收不成功,将通过RBtFF协议后重发或协商,如果发送成功的前提下,不会向应用程序系统发送任何信息报告,如果发送不成功,系统会自动放弃此链接线路,同时错误报告向发送给应用程序。应用程序将自我重新复位此链接线路,也可以进行其他对应的程序处理。在文件传输过程中,无论是文件发送方还是文件接收方,任何一方断开文件链接,应用系统内部都将接收到文件传输关闭的信息,断开文件传输链接线路。在文件接收方的按帧发送的数据将被去掉枕头并重新回入接收缓冲区,重新组合为原来的传输整体文件。之后再继续下一个文件的传输,直至文件完全传送。提高蓝牙无线传送文件的可靠性,在应用层面主要依靠RBtFF协议支持断点续传。断点续传的原理在于RBtFF数据帧在报头中携带有一个信息,该信息会指明文件数据在文件具体某个位置开始的偏移量。当发生错误或连接中断时,接收方发送一个带有偏移量的信息帧,使得应用程序系统能自动识别文件发送方重新传送文件的意思,这种技术在文件数据量大的时候效果明显。

3.2RBtFt协议发送文件的过程

蓝牙文件传输RBtFF协议发送单个文件的详细过程可以这么理解:当相互之间传递信息的设备,开始的时候设备要进行重试次数计数器的初始化,也就是计数器归零。当收发设备双方建立连接,发送方设备搜寻文件指针,读取文件长度并设置并发送报头,这个报头里包含有文件名称以及大小。接收方会发来的响应报头信息。此时若接收方返回“已经准备接收”,则开始发送第一个数据包,当然接收方可以拒绝接收并信息返回。接收方返回确认信息后发下一个数据包;若尝试连接过中重试20次后,还不能恢复连接,则放弃需要重新建立连接。当接收方发送带有偏移量的信息帧时,发送方接收该信息帧后,会自动跳到指定偏移量处继续传送,接收方放弃传输,文件传输完毕。“文件传输完毕”这样的提示信息会在设备屏幕上输出来。

4结束语

蓝牙无线文件传输协议RBtFt的研究与实现对于蓝牙技术的发展有重要作用,明晰RBtFt的工作原理和发送文件过程,有利于更好地实现蓝牙无线文件传输的发展。

参考文献:

[1]王楠,侯紫峰,宋建平等.蓝牙无线连接可靠性措施的研究与实现[J].小型微型计算机系统,2003(05).

[2]刘任庆.蓝牙技术的抗干扰性与可靠性分析[J].技术交流,2009(03).

通信工程用工协议篇6

关键词:计算机网络;网络协议;可视化分析;wireshark

中图分类号:G642.0文献标志码:a文章编号:1674-9324(2013)01-0242-02

《计算机网络》课程是目前高校电子信息类本科专业的核心课程,课程既具有较强的理论性又具有较强的实践性,在教学中是一门相对抽象、不易学好的课程[1,2]。在《计算机网络》课程的教学实践中,针对课程以网络协议体系为主线的特点,引入网络协议分析软件,精心设计教学环节,通过教学手段和方法的改进实现网络协议教学的可视化,激发了学生的学习积极性,强化了学生对知识的理解,有效提升了学生的实践能力和创新能力培养。

一、计算机网络课程教学中面临的挑战

《计算机网络》因其自身的课程特点,在教授这门课程时,学生和教师都面临很大的挑战。分析其原因,主要表现在以下几个方面。

首先,《计算机网络》课程知识结构庞杂,涉及通信、计算机软件及硬件等专业知识,又涉及协议设计方法、解决通信中容错、拥塞控制、资源标识、地址解析、路由等复杂的机制与算法,很多计算机及相关专业学生认为学习起来有一定困难。

其次,课程以tCp/ip体系结构为主线,各层的协议数据单元格式和字段语义、协议交互语法抽象,同步控制复杂,使得协议定义及实现成为课程的教学重点和难点。在传统教学中,教师通常只是使用自然语言解释协议工作机理,即使引入一些图表,但图表也很难将抽象的定义直观地呈现给学生,学生只能通过抽象思维想象计算机处理的数据形式,教师试图传递的网络工作“视图”与学生头脑中形成的“视图”不统一,难以达到良好的课堂教学效果。

最后,课程具有较强的实践性特点。实验是使学生得以深入理解课堂讲授内容直接和有效的手段,也是培养学生动手能力、创新意识和能力的重要途径。但实际教学中,受教师教学思路、实验设备环境等因素限制,实验效果不佳,不能很好地与理论教学相辅相成,相互促进。

为改变《计算机网络》课程难学、难教的局面,许多教师也尝试引入一些实验方法或工具,以提高教学实验效果,提升学生实践能力。例如,为使学生理解协议的工作原理,有些学校教师使用一些简单协议工作原理仿真原件,或让同学编写实现简单通信或协议的主要功能,学生通过操作简单交互界面,体验网络协议工作机理。但这种在应用层通过软件模拟如丢包、检错、寻址等功能更使学生感到虚幻,不能直观体验到真正协议的工作过程。我们之前也曾使用nS-2网络仿真器验证基本协议,但掌握nS-2的otCL语言对学生来说是入门的一大屏障,此外,基于nS-2所开展的仿真实验,需要实验者具备丰富的网络协议理论基础和经验积累,因此将nS-2平台应用于本科课程学习,在实践中发现有较大难度[3]。《计算机网络》课程教学目标和课程学习能力培养要求,学生需要理解数据通信及网络的基本概念、基本原理和基本设计方法,重点理解和掌握计算机网络体系结构中不同层协议的工作原理和过程,以及不同实体之间层协议交互的过程。作为一门理论与实践并重的课程,通过课程学习和实验,可以提高学生的动手能力和实践能力。

经过多年对《计算机网络》课程教学手段、方法的探索和总结,引入有效工具提高抽象知识的表现、强化实践环节等可以有效提高课程教学效果。我们在课程教学中引入wireshark网络分析软件,精心设计教学内容,教师由单纯的知识传授者向教学的设计者转化,实现对协议结构的可视化分析。同时将部分教学内容直接搬进实验室讲授,实现“做中学”,从而提高了学生的学习兴趣,有效提升了学生的实践能力。

二、基于wireshark网络协议可视化分析

wireshark是一款支持windows、Linux的免费开源网络协议分析软件,软件可以实时捕捉网络中的各种数据包,进行协议分析,软件操作界面友好,通过图表显示功能直观反映协议数据结构和工作机理[4]。常规计算机网络课程中,尽管引入了多媒体教学,但图片加文字的形式,不能动态、实时地表现网络实体间协议交互的状态,理论知识难以有效展现,教学手段不够丰富。即使制作动画演示,但是互动性不足,不能随着参数和场景的变化而调整结果,虽然逼真但并不真实。使用wireshark软件工具捕捉并分析各种数据包结构,学生能够直观地看到maC帧、ip数据报、tCp报文段等各种协议数据单元的结构和内容。可视化的图形本身就是降低理论抽象程度的最直接方法,通过观察网络协议实体间交换的报文顺序,可以大大提高学生对协议的理解,提高其网络分析设计能力。通过分析具体报文和相应字段,学生可以发现网络中的故障所在,可培养其解决问题的能力和创新能力。

(一)教学设计

在课程教学中,引入wireshark工具分析各层网络协议的数据单元结构和内容,教学内容设计如表1(见下页)所示。

(二)ethernet帧格式和aRp协议分析

分析相应层的协议内容时,预先充分地设计教学过程是关键。以数据链路层的内容为例,通过教学案例说明基于wireshark协议分析教学方法。

经过网络体系结构中第二层“数据链路层”的学习,学生具备的知识基础包括:(1)以太网的maC帧结构格式;(2)以太网的maC层硬件地址的概念;(3)地址解析协议apR的作用。另外,要求学生自己查阅并熟练学习使用aRp命令。

教学过程设计:通过“arp-d”命令清空aRp表的内容;启动wireshark捕捉数据;向其他主机(如:河南工业大学的万维网服务器“”)发送ping数据包;分析aRp协议执行的全过程。

为了便于将注意力锁定在ethernet和aRp协议上,将ip层及更高层协议屏蔽后,捕捉的结果如图1所示。

课堂上,通过工具捕捉,设定若干问题,引导学生了解和熟悉可视化界面中记录的数据帧内容,并通过回答这些基本问题来深化对协议和原理的认识。例如对捕捉的aRprequest报文,问题设计如下。

1.包含aRp请求报文的以太帧中,源端maC地址的16进制表示是什么?

2.目的端的maC地址是什么?是所在主机的maC地址吗?(提示学生:不是)这个目的地址对应某一具体设备吗?为什么?

3.ethernet帧结构中,帧首部的类型字段内容对应的十六进制数值是什么?

通过这些简单问题的引导,学生直观地看到了以太网中帧结构的形式,同时他们也总结说:发现帧结构没有想象中那么复杂,字段精简且作用明确;看到捕捉的aRp数据包中目的地址“Broadcast”的表示,及其对应的maC地址数据为“ff:ff:ff:ff:ff:ff”,对理解aRp协议的工作原理有种豁然开朗的感觉。

通过上述基本问题的回答,学生理解了网络协议aRp的格式构成以及网络命令“apr”的使用。然后,把问题进一步深入,邀请学生思考并分析:问题1:如果允许手动添加一条aRp缓存的项目,如何解决ip地址和maC地址的对应。假设,手动添加的条目中ip地址是正确的,而maC地址的信息是错误的,会有什么样的结果?问题2:如果一个局域网观察到一台主机提示“ip地址,如192.168.17.201冲突”,如何解决?针对问题,学生一方面分组热烈讨论,一方面动手验证自己的结论,在实践中训练和培养分析问题、解决问题的能力。教学环节结束后,教师要求学生课余下载、阅读aRp的请求评论(RFC826)。另外,有同学提出疑问:“所学的aRp协议与听到的名词“aRp欺骗”有什么关系?并自行查阅资料研究。学生展开的这些课外学习环节,进一步促进其自主学习能力的培养。

三、小结

本文是2010年度河南省高等学校精品课程“计算机网络技术”建设中的一项教改成果。借助wireshark实现对各层协议透视和工作机理研究,学生通过这种“可见的网络”、“可视的协议”,直观地观察到协议实体间信息交换的序列和协议工作细节,深化了对基本概念和基本原理的认识和理解。我校2008级学生受益本课程改革与建设,3名同学共同设计的“物联网无线结点网络通信协议软件”在参加河南省青年创新软件设计大赛中获奖。

经过两年的教学实践,遵循以上教学思路,笔者进行了课程教学手段及方法的改革尝试。实践证明,可视化分析在计算机网络课程的教学中发挥了重要作用,分解了教学难度,提高了教学效果,实现了课程建设的目标,为今后的教学改进提供了参考。

参考文献:

[1]JamesF.Kurose,Keithw.Ross.计算机网络:自顶向下方法[m].陈鸣,译.北京:机械工业出版社,2009.

[2]谢希仁.计算机网络[m].北京:电子工业出版社,2008.

[3]程立,张浩军,王珂.nS2在计算机网络课程实验教学中的应用研究[J].网络与信息,2009,(10):22-23.

[4]wiresharkUser'sGuideforwireshark1.9[eB/oL].

http:///docs/wsug_html_chunked/.2011.

通信工程用工协议篇7

关键词:五控五管一协调方法重点

中图分类号:S763文献标识码:a文章编号:1672-3791(2015)06(b)-0133-02

在信息系统工程建设中,理解并把握好监理工作方法至关重要。

1监理工作范围及内容

监理范围涵盖招投标阶段、实施阶段、初验、试运行、终验和系统移交阶段的质量、进度、投资、变更控制,合同、信息和安全管理以及组织协调。

监理工作核心内容是“五控五管一协调”。所谓“五控”即质量控制、进度控制、风险控制、投资控制、变更控制;“五管”即资产管理、合同管理、信息管理、安全管理、知识产权管理;“一协调”即对各参建单位组织协调。保障在计划时间内实现项目建设目标。

信息系统监理由于起步较晚,一开始是沿用的传统建筑工程监理的“三控三管一协调”,后来发展成“四控三管一协调”,最后在工作过程中,逐渐完善成为了“五控五管一协调”,主要增加了风险控制、资产管理、知识产权管理。增加的部分充分体现了信息系统的特点,注重资产风险,注重知识产权,这也是信息系统工程项目区别于传统建设工程的地方。项目内容看不见、摸不着,过程相对难把控,因此项目风险也在无形中增大。知识产权的管理保护更加是现今信息社会的主题之一。

监理工作主要分为工程前、中、后三个阶段,每个阶段都有不同的侧重点,掌握好这些不同,是做好监理工作的前提。

工程前:协助建设方对项目的建设目标、投资、工期和技术难题进行分析,协助建设方组织有关领域的专家对项目总体规划、本期建设项目技术方案和设备选型进行论证和优化;协助建设方编制招标文件和组织招标投标活动;协助建设方审核施工合同。

在实践中,信息系统监理参与工程前工作相对较少,往往是确定施工单位后才招监理标。因此,大家一旦有机会参与工程前工作,就应充分体现监理的作用,以帮助业主规避在工程中可能遇到的风险。

例子:

在某项目中,该监理方帮助建设方审核承建方的合同,该方主要提出了以下几处修改:①明确项目监理制度,要求承建单位服从监理的督促管理;②建议调整项目款支付步骤,改为项目设备到货后支付30%,项目初验后支付至60%,项目终验后支付至90%,维保期结束支付10%,修改后,由于项目款支付和项目里程碑严密对应,一方面有动力(资金压力)督促承建方尽快完成项目里程碑,另一方面可以有利于建设方和监理更好的把控项目进度;③建议合同中改为3年免费维护期,以防对合同内容解读的二义性。最后建设方在该监理方建议下,对施工合同进行了修改,并且在之后的合同履行过程中很好的得到了执行。

这个事例是典型的通过监理的努力,在工程前便介入,而使得项目能够更好的实施。

工程中:负责对工程建设过程进行质量控制;审查承建方的开工报告;审查批准承建方提交的施工进度计划;监督承建方按相关的标准和规范施工,督促承建方采取措施实现合同目标和要求;核实质量文件,对施工质量进行监督、评价,必要时通知承建方返工或停工;主持协商工程设计变更,调解合同双方争议,必要时处理索赔事项。

如果说工程前的监理工作是事前控制,做好了之后可以事半功倍,使得建设任务能够更加顺利开展,那工程中的监理工作就是事中控制,是监理工作能够直接影响建设任务的最有效的途径。

例子1:

在某项目中,承建方提出某品牌服务器的变更,变更为其他品牌,理由是该品牌型号停产。该监理方接到变更申请后,进行了核查,通过与厂商电话联系和网上查询,证实该品牌型号确实停产了,但此厂商推出的新的替代型号。根据以上的信息,我监理方将情况通报给了承建方,并向建设方进行了汇报,最终修改了变更单,变更为同品牌的升级型号,并附上厂商的停产证明。

这个例子是人们在工作过程中经常遇到的问题,往往承建方出于利益的考虑,希望借由停产更换品牌。在项目中,一般品牌不能随意变更,即使是停产且没有替代型号的情况下,也应在招标确定的若干品牌(一般是3个)中选择,而不是随意更换品牌。当由于建设方需求变化的情况下,建设方确需变更某品牌,也应由建设方发指令单,承建方根据指令单进行变更。如此才能确保建设方的利益不受损害。

例子2:

在某项目中,承建方在没有通过建设方和监理同意的情况下,擅自安装了某品牌的监控,和清单不符。我监理方一方面向建设方汇报,另一方面发书面通知单,要求其立即停工。之后直到承建方按照要求完成变更手续后,才同意其复工。

此例意义在于不能让承建单位将不符合要求的产品擅自安装而变为既成事实,这样在之后的事情处理中,监理和建设方就会处于被动的地位。发现问题,应主动采取对策并及时汇报,防患于未然。

工程后:协助组织工程竣工验收,审核工程过程文档是否齐全并满足相关标准及规范的要求,检查技术培训是否达到合同要求;协助编制竣工验收报告;协助对保修期内工程质量的检查、鉴定以及督促责任单位修理;督促整理承建方应交付的技术档案资料,协助建设方制定系统运行维护管理制度等。

工程后的监理工作主要是对已完成内容的整理总结,这个期间承建方和建设方都需要整理文档组织验收并正式进入维保期,在这期间监理工作的主要内容就是协助承建方和建设方完成这些内容。

例子:

在某项目中,承建方由于经验问题,资料归档有困难,我监理方主动提供了竣工文档目录与范例供其参考,并帮助建设方安排验收会议议程,推荐验收专家人选,最终确保了验收会议的顺利进行。而同期建设方的另一个项目由于没有监理方,验收会议上出现了种种问题,因此验收就没有通过。

在项目实施过程中,监理方应充分发挥工程项目经验比较多的特点,在过程中就应让承建方无论是施工还是文档规范有序,指导文档书写和归档。上例中两个类似项目的不同结果,充分体现了监理方的作用。

2监理工作方法重点

2.1质量控制的监理方法重点

建设过程质量控制重点在目标控制和技术控制两个方面:

目标控制,即承建方的建设结果是否满足建设方的质量要求和业务需求;

技术控制,即承建方在实施过程中是否符合国家、行业的技术规范,并满足建设方的技术需求。

在质量监理过程中,应灵活运用以下方法:

(1)积极协助项目设计方、相关承建方和建设方共同审核、确认承建方的施工组织设计方案,确保系统实施方案符合工程总体设计的要求;

(2)以信息系统工程建设验收规范、工程质量验收标准等为依据,督促承建方全面实现承建合同约定的质量目标;

(3)对承建方的人员、设备、方法、环境等因素进行全面的监察,督促承建方的质量保证体系落实到位;

(4)以质量预控为重点,做好施工组织设计方案、工程图纸、验收测试方案、培训计划等审核把关;

(5)确定质量控制的关键节点,重点控制,必要时组织专家进行集体论证;

(6)对工程的管线等隐蔽工程、关键工序和重要实施过程进行跟踪,发现质量问题及时纠正,消除质量隐患;

(7)在重点建设工程的电气、通信、安全设备安装过程中,监理方应严格执行现场旁站监理;

(8)有效地组织系统的联调测试和验收工作;

(9)对工程项目中承建方的技术培训工作过程和效果进行监督和评估。

2.2进度控制的监理方法重点

监理方协助建设方确定合理的工期目标,并将工期要求写入承建合同;在项目实施过程中运用各种合情合理合法的手段保证工程项目总工期的实现。

在进度监理过程中,应灵活运用以下方法:

(1)审核承建方的进度分解计划,确认分解计划可以保证总体计划目标;

(2)对项目实施进度进行实时跟踪,根据项目里程碑监督实施进展;

(3)当工期目标发生偏离时,应及时指出,并提出对策建议,同时督促承建方尽快采取措施;

(4)与建设方和承建方研究确定工程里程碑,并依据进度计划按时进行里程碑的阶段性验收;

(5)工程施工全过程采用动态管理和主动预控的方法进行控制;

(6)建立项目工作报告制度,采取工作日志、周报、月报汇报方式实时跟进工程实施状态,项目监理方应及时、定期向建设方通报工作进展情况、可能发生的问题等;

(7)例会制度,通过定期召开例会方式协商解决施工过程中存在的问题;

(8)规范沟通方式,面对面讨论方式为主,电话方式为辅,配合召开各种形式的协调会,编写《会议纪要》。

2.3投资控制的监理方法重点

投资控制工作任务主要是协助建设方合理安排资金投入。在计划拟订阶段协助建设方编制成本控制性目标及合同成本实施计划;在工程施工过程中审查承建方提交的资金流向;在系统验收阶段核实承建方的计量及单项成本,处理合同变更。

(1)严格执行施工合同中所确定的合同价款以及支付步骤;

(2)坚持未经审核通过的项目,监理方不予计量;

(3)当由于变更或其他原因产生争议时,监理方将坚持合理、公正的原则,协调各方进行协商;

(4)严格执行合同工期内支付工程款。

2.4安全管理的监理方法重点

信息系统工程安全监理工作包含信息安全、施工安全和知识产权保护三个方面。

在项目实施过程中,监理方协助建设方和各承建方树立安全保密意识,根据工程要求建立严格的适合自身状况的安全保密制度。同时,注意人员施工安全,确保工程建设过程无事故。

(1)项目实施过程中,应注意登高作业、用火用电等的安全,督促承建方对施工人员进行安全教育,注意检查施工人员安全教育台账。

(2)对于保密要求较高的项目,建议建设方与各方签订保密协议,确保项目信息不随意外泄。

(4)建立定期进行信息系统的安全教育与培训的制度,以多种方式,针对特定系统进行安全教育与培训。

(5)检查承建方是否严格按国家安全生产法规和标准的要求,在施工中建立健全安全生产责任制,落实安全生产管理制度,加强施工现场的安全和文明施工管理;抽查施工现场的安全管理状况,督促整改安全隐患,避免发生安全事故;督促各承建方严格按照文明施工管理的有关要求,落实文明施工的各项管理措施。

(6)遵守知识产权保护的相关法律法规,确保在工程实施采取正版软件。

(7)检查非自主产权软件的使用权合法文件和证明。

(8)对于项目建设过程中待开发的软件,应在承建合同中明确规定知识产权归属,避免产生不必要的知识产权纠纷。

2.5合同管理的监理方法重点

合同管理的原则为:事前预控、实时纠偏、充分协商、公正处理。合同管理内容包括:工程变更管理、工程暂停及复工管理、工程延期管理、处理索赔、调解合同争议、违约管理。

(1)应建立完备的合同及信息管理制度,各方对项目的所有指令、批复、报告均以书面形式进行,并全部归档。任何形式对项目质量、数量、内容的变动,均须总监理工程师审核同意,并报建设方批准后,项目变更通知书方能生效。

(2)建设方支付承建方工程款须按规范程序进行。承建方应向监理方提交工程款支付申请,经监理方审查通过后,由总监理工程师签署证明文件,建设方收到证明文件后,安排支付承建方工程款。

2.6信息管理的监理方法重点

做好信息管理的具体工作,主要体现在做好如下文档:

(1)监理日志:监理工程师应逐日将所从事的监理工作写入监理日志,特别是涉及设计、施工和需要返工、改正的事项,应详细作出记录。

(2)会议纪要:监理方为确保工程监理规范、有序、有效,按工程的进展召开的会议,分总体协调会议,技术研讨会议、现场协调会和监理组监理工作例会等都应做好会议纪要。

(3)监理报告:监理方将定期或不定期地向建设方提供监理周报、月报等有关工程监理及项目管理等方面的信息。

2.7组织协调的监理方法重点

组织协调遵循公平、公正、独立的原则,守法原则,诚信原则,科学原则。

为了开展好工程监理工作,要求项目监理方内部所有监理人员都能主动地在自己负责的范围内采用科学有效的方法进行协调工作。

(1)组织与项目有关的协调会议,形成会议记录,做好会议管理。

(2)组织好工程例会,确保会议组织效果,在会前、会中、会后或主持会议中采取多种措施以确保会议有效。

(3)工程通知与回复,以通知与回复的形式让信息在在各单位内部人员之间流动,协调大家的意见与行动,以保障项目的总目标得以实现。

参考文献

[1]王陵,甘兴勋.信息工程项目监理相关问题探析[J].中国水运(学术版),2006(8):56-57

通信工程用工协议篇8

引言

嵌入式系统指被嵌入到各种产品或工程应用中的,以微处理器或微控制器为核心的软硬件系统。嵌入式系统与internet技术相结合,形成的嵌入式internet技术是近几年随着计算机网络技术的普及而发展起来的一项新兴技术。它通过现有嵌入式系统,增加因特网接入能力来扩展其功能,创造性地提出以低价位单片机作为微处理器,使嵌入式设备而非pC系统直接接入internet。在本文中,采用Ubicom公司的SX52单片机外接以太网控制芯片RtL8019aS实现嵌入式web服务器硬件结构和软件功能。传统的基于DCS结构工控系统向嵌入式web结构转移,可有效降低成本,这是因为没有必要开发专有的GUi,还可以方便最终用户,并改善故障检测和设备维护的远程访问能力。

图1

1嵌入式web服务器硬件设计与实现

通常嵌入式系统硬件包括微控制器、存储器外设器件和i/o端口等,其核心是嵌入式微控制器。为适应上网需求,嵌入式微控制器不仅要能执行传统的控制功能,还要能执行与连接因特网相关的功能,而Ubicom公司的SX52芯片能比较容易地实现tCp/ip协议,所以我们选择它作为微控制器。

实现嵌入式设备接入internet,从原则上来讲最关键的就是要实现tCp/ip协议,还有一人关键的问题就是传输信息媒质的选择。我们采用最常用的连接模式,即通过以太网连接internet,利用网络接口控制器来实现数据链路层协议。嵌入式系统应用最广泛的网络驱动芯片就是ne2000兼容系列网络芯片,它具有接口方便、驱动简单、占用资源少等优点,特别适合嵌入式系统。我们选用其中性能较了,供货比较稳定的RtL8019aS芯片。嵌入式web服务器硬件结构框图如图1所示。

嵌入式web服务器用SX52微控制器作为处理器,以太网驱动芯片RtL8019aS经耦合隔离滤波器HR61101G和RJ45接口接入以太网,配有RS232和Can总线两个扩展接口,可以将具有RS232接口的设备或采用Can总线协议通信的设备连到以太网上。RS232接口采用maX232Cpe芯片,Can总线控制器采用philips公司的SJa1000芯片,Can收发器则采用了philips公司的pCa82C250。

数据的流向为:请求和控制信息从局域网中来,通过RJ45送到RtL8019aS,RtL8019aS负责将以太网帧的首部和尾部信息剥离,将处理后的数据包送入SX52的tCp/ip协议栈,由协议栈对数据报进行解析,得到原始的请求和控制信息。请求和控制信息再经过SJa1000进行Can协议格式的数据封装,再和现场的Can总线设备进行通信。请求和控制的回复领先局域网的过程与上面正好相反。图2为web服务器主要芯片连接电路简图。

SX52有5个i/o口,共40个引脚。在设计中,利用SX52的C口的RC0~RC7连接RtL8019aS的数据口SD0~SD7;SX52的B口兼顾选址和读写控制功能,在开发中用它与RtL8019aS的地址及读写控制引脚连接。在确保通信功能顺利实现的同时,充分利用了SX52芯片i/o口灵活配置的特点,最大程序地节约了微控制器SX52的硬件资源。

图2

RtL8019aS基地址选择引脚ioS0~ioS3接地,此时i/o基地址为300H,即001100000000,所以地址线Sa9、Sa8接+5V。因为寄存器地址偏移量为00H~1FH共32个,对应地址从300H到31FH,所以只需将地址线Sa0~Sa4接SX52的RB0~RB4,其余地址线接地即可。芯片ioRB、iowB引脚为读写信号线,接SX52的RB6、RB5读写控制引脚。

RtL8019aS可以兼容8位和16位操作。图2中ioCS16是16位i/o的选择脚。当RtL8019aS上电复位的时候,如果这个脚为低电平,RtL8019aS将选择8位模式;如果这个脚为高电平,RtL8019aS将选择16位的模式。由于SX52是8位的数据总线,因此要用8位总线模式(每次读入或写入1个字节,只需8根数据线SD0~SD7),所以将这个脚接地。

RtL8019aS有3种工作方式:第一种为跳线方式,芯片的i/o和中断由跳线决定;第二种即插即用方式,由软件进行自动配置;第三种为免跳线方式,芯片的i/o和中断由外接的93C46里的内容决定。常用网卡上的RtL8019aS一般只支持第二种和第三种方式。在嵌入式应用的场合,为降低成本,同时又减少连线,不使用93C46。本设计中使用第一种方式,此时Jp引脚接高电平。

aUi引脚决定使用aUi还是BnC接口。高电平时使用aUi接口,低电平时使用BnC接口,支持8线双绞线或同轴电缆。本设计中采用双绞线为通信介质,将该引脚接地。

RtL8019aS使用引脚tpin+、tpin-、tpoUt+和tpoUt-连接耦合隔离滤波器HR61101G,利用RJ45插头实现与以太网的连接。

SJa1000是独立的Can通信控制器,支持Can2.0B协议,其工作频率为6~24mHz。它的aD0~aD7为地址数据复用线,与SX52的D口RD0~RD7相连。当远端用户通过web服务器查询现场的Can总线数据时,SJa1000负责将现场控制单元的Can总线数据解析,发送到SX52,再传到网上。

pCa82C250是Can协议控制和物理总线的接口,它对总线提供发送能力,并对Can控制器提供接收能力,它支持1mbps速度。为保证SX52与SJa1000协同工作,在硬件设计中们将两个芯片共同一个硬件复位线,确保SX52与SJa1000硬件同步复位。

at24C256是i2C总线的eepRom,通常可以用来存储用户的一些设置,比如ip地址、网关等。在本设计用它存储静态网页。SCL接SX52的Ra4脚,SDa接SX52的Ra5脚。

maX232Cpe完成232电平与ttL电平转换,提供一个本地接口,为调试和维护提供方便。tXD接SX52的Ra5脚。

maX232Cpe完成232电平与ttL电平转换,提供一个本地接口,为调试和维护提供方便。tXD接SX52的Ra2脚,RXD接SX52的Ra3脚,RS-RXD和RS-tXD是RS232电平,为标准串口电平。数据可以从串口输入到单片机SX52,SX52再把数据送到RtL8019aS传出去。

2嵌入式web服务器软件设计与实现

2.1以太网接口驱动程序的实现

要将嵌入式web服务器接入以太网,就要对RtL8019aS进行编程,完成以太网帧的数据收发,相当于实现pC机中网卡的驱动程序功能。以太网控制器驱动程序用于设置RtL8019aS的工作状态和工作方式,分配收发数据的缓冲区,通过对地址及数据口的读写来完成以太网帧的接收与发送。首先要对RtL8019aS进行复位,并将其设置为跳线模式;然后对RtL8019aS的工作参数进行设置,以使其开始工作;接下来就读写RtL8019aS的Ram以完成数据包的接收和发送。程序流程如图3所示。

2.2嵌入式web服务器tCp/ip协议栈的实现

tCp/ip协议栈是SX虚拟外设的一个重要实现,是基于SX处理器的应用系统与internet实现互联的基础。通过这些协议栈,可以更加方便地开发基于internet的嵌入式应用系统。

以太网数据的传输是采用maC地址来识别的,而aRp协议提供ip地址和数据链路层使用maC地址之间的转换功能。为了保证系统在太网的通信,首先要实现aRp协议。由于嵌入式web服务器要能在internet上通信,在网络层一定要实现ip协议,还要实现能报告数据传送差错等情况的iCmp协议。在应用层,主要实现远端主机通过浏览器的访问控制方式,所以要实现Http协议;而Http协议是基于tCp协议实现传输的,加上tCp协议是面向可靠的数据流的传输,基于应用的需要对可靠性的要求,在传输层采用tCp协议,并对tCp协议进行了简化处理,主要针对Http协议开发tCp协议。

图4为tCp/ip协议栈主流程图。系统初始化后,进入主程序循环部分。主程序循环包括两大部分:对接收到的以太网数据帧进行解包和对欲发送的数据进行封装并发送。对接收到的以太网数据帧进行解包,供应用程序使用;对欲发送的数据进行打包,将数据以以太网数据帧的格式发送出去,使采用tCp/ip协议的以太网内所有计算机能收到此数据帧。

图4

2.3嵌入式web服务器应用程序的实现

工业现场数据经嵌入式web服务器上传到以太网才能被用户利用,因此网络用户和web服务器之间通信程序的开发也是本课题中很重要的一部分。课题中嵌入式web服务器实现的功能主要是现场实时数据功能。实时数据包括温度、设备运行状态信息、通信状态信息、时钟信息等。嵌入式web服务器将实时数据以网页形式到internet上,远方客户通过接入internet浏览该服务器的工业现场实时信息。本设计采用Brower/Server(简称B/S)开发模式。用这种方式开发嵌入式web服务器应用程序具有很多优点。比如降低客户端的要求,方便客户端的分布使用,客户端的开发和维护费用降低等。但是因为SX单片机的资源有限,在用单片机搭建的服务器上编程实现实时动态数据的浏览任务较重。在服务器端运行程序,速度也受到限制,加上网页界面或程序结构的单方面调整都将导致整个系统全盘修改,系统的灵活性与可扩展性差。在设计中,如果仅仅采用B/S访问方式,其功能是难以完全完成的。针对应用传统B/S模式开发web服务器应用软件的弊端,提出了改进方案。

为克服传B/S访问模式的弊端,做了以下两点改进。

①采用套接字编程,实现部分服务器程序在客户端运行,在客户端浏览器实现动态网页显示实时数据。在改进方案中,实现动态数据的实时浏览采用了Javaapplet技术。

②不再将HtmL语言写入汇编程序,在浏览器端解板成网页,而是利用嵌入式web服务器扩展的eepRom24C256与SX52相连,用来存储要浏览的web文件。当浏览器与web服务器交互时,利用Http协议通过统一资源定位器URL来确定web服务器应该为浏览器提供哪些资源。

这种改进方案在访问模式上还是通过浏览器访问嵌入式web服务器,在通信模式上却利用了C/S(Client/Server)模式,其于套接字来编程,即所谓的B/S和C/S相结合模式。图5为B/S和C/S结合模式的原理。

通过B/S方式访问web服务器上的静态网页,在个网页中嵌有Javaapplet文件。客户端的ie浏览器浏览这个网页时,会把网页中标识的Javaapplet源程序下载到客户端执行。在Javaapplet源程序中,创建了一个套接字来完成与服务器的通信(前提是在web服务器上同时运行一个相应的服务器监听程序),主要是获取实时数据,用于在浏览器中显示。事实上,Javaapplet中的Socket通信是一个典型的C/S访问方式。

通过这种B/S和C/S相结合的访问方式,能够很好的实现实时数据的动态浏览。特别是这种实现方式秉承了B/S和C/S两者的优点,具有很大的灵活性。

以下是服务器与客户端applet通信具体实现过程。

①创建Socket。用tcbLocalportmSB和tcbLocalportLSB设置服务器监听端口号,具体设为8080;用myip3~0设置服务器ip址,具体设为192.168.1.111。

②将服务器设为Listen监听状态,等待接收客户端连接。用tCpapi函数建立被动连接代码如下:

tCpappinit

BanktCB_BanK

movtcbLocalportLSB,#appLet_poRt_LSB;设置tCp服务端口

movtcbLocalportmSB,#appLet_poRt_mSB

Jmp@tCpapppassiveopen;跳转到tCp被动连接程序,进行端口侦听

_tCpapppassiveopen

_banktCp_BanK

movtcpState,#tCp_St_LiSten

clrtcpUnackmSB

clrtcpUnackLSB

retp

③当tCp的状态为established时,双方连接建立,可以开始传输数据。此时产生新的套接字,用来管理远端客户机服务,原来的端口继续用来监听。

④数据传输包括数据接收和数据发送的两问好。接收数据时,用tCpappRxBytes()函数获得接收到的数据字节数,根据得到的字节数多次调用tCpappRxData()函数接收数据,在全部数据接收完毕后可以在tCpappRxDone()函数中做相应的处理。发送数据时,首先调用函数tCpapptxBHytes()设置要发送数据的字节数,根据此字节数调用tCpapptxData()函数发送数据,全部数据发送完毕后调用tCpapptxDone()函数确认。其中采集的动态数据保存在变量globtemp3中。

⑤当tCp状态为closed时,服务器关闭连接,不再发送和接收数据。程序具体实现时,设定客户端和服务器端连接建立后,服务器端即向客户端发送数据。

3结论

通信工程用工协议篇9

关键词:现场总线;modbus协议;profibus-Dp协议;协议转换;电气隔离

中图分类号:tp393

文献标识码:a文章编号:1672-7800(2015)005-0148-04

作者简介:惠明坤(1989-),男,江苏徐州人,江苏大学计算机科学与通信工程学院硕士研究生,研究方向为嵌入式系统应用。

0引言

随着计算机、通信、自动化等技术的不断发展,现场总线控制系统(FCS)正逐渐成为新型工业控制系统的发展方向。相对于集散控制系统(DCS)[1],现场总线控制系统由于标准开放、可靠性高、实时性好等优点,迅速成为各大厂商和组织的研究热点,如今已成为推动工业控制系统朝着智能化、数字化、信息化方向发展的重要力量[2]。

现场总线控制系统在迅速发展的同时,也随之产生了一些问题。由于现场总线种类众多,至今仍未形成统一的标准,使得用户很难使用不同厂商、不同品牌的设备进行系统集成,这给现场总线技术的推广应用带来了很大困难[3]。因此,对不同总线集成化技术进行研究极具现实意义。

作为我国第一个现场总线技术国家标准,加上西门子等公司的大力支持,profibus总线已成为当今使用最广泛的总线技术之一。modbus总线由于其简单可靠、实时性强等优点,得到了众多厂商和用户的青睐,但其网络规模有限,网络处理能力较差。本文设计并实现了两种协议的转换模块,使得modbus设备可以无缝接入profibus-Dp总线系统。模块具有较强的实时性和可靠性,有很好的推广使用价值。

1总体设计

1.1modbus协议

modbus协议是全球第一个用于工业现场的总线协议。modbus串行链路协议采用主从通讯方式,并且提供功能码规定的服务[4]。modbus是一种应用层报文传输协议,其传输模式分为RtU和aSCii两种。在相同的波特率下,RtU模式比aSCii模式具有更高的数据吞吐量。在RtU模式下,一个完整的报文帧最大不超过256个字节。两帧报文之间至少要有3.5个字符的时间间隔,同一报文两个字符之间的时间间隔应不大于1.5个字符时间[5],否则将认为报文帧出错。

1.2profibus-Dp协议

profibus是一种用于工厂自动化车间级监控和现场设备层数据通信与控制的现场总线技术,它是我国第一个总线技术国家标准,包括profibus-Dp、profibus-pa、profibus-FmS3个子集[6]。profibus-Dp传输速率为9.6Kbps~12mbps,每个Dp系统包含3类站点:一类主站(m1)、二类主站(m2)和从站。其中,多主站系统中,主站之间采用令牌帧传递信息,得到令牌的站点可在一个事先规定的时间内拥有总线控制权,同时规定好令牌在各主站中循环一周的最长时间;主站和从站之间采用主从方式的分时轮询传输。理论上,每一段中最多可挂接126个站点。

1.3系统总体结构

目前,对不同现场总线的集成化研究主要有以下几种方案:①采用opC技术[7]和以太网技术集成多种总线,这种方法主要应用于过程控制级的现场总线协议转换;②采用从节点模块化实现多种总线集成,该方法主要是将多种总站的从站功能集中在一个模块上;③采用转换模块实现多种总线集成,这种方法主要是对不同总线协议转换问题的研究,适用于现场设备级的现场总线协议转换。本文采用第3种方法来实现profibus-Dp/modbus协议转换。

设计完成的系统结构如图1所示,通过设计的协议转换模块,可以将modbus设备无缝接入到profibus-Dp系统中,实现了协议之间的相互转换,大大降低了系统升级费用。

2硬件实现方案

由于profibus-Dp是主站式总线控制机制,因而profibus-Dp与modbus之间的转换是单向的,即为Dp主站对modbus从站的单向访问,或者是modbus对Dp从站的单向访问。对于前者,网关既是Dp从站,同时也是modbus主站;对于后者,网关既是modbus从站,同时也是Dp主站,本文设计的转换模块属于前者。转换模块的硬件原理如图2所示。

微处理器是整个模块的核心部分。本设计选择三星公司开发的微控制器S3C2440a,它采用了aRm920t架构核心,具备高性能、低功耗等优点,而且价格便宜,适用于嵌入式设备开发。

profibus-Dp从站的核心功能选择基于aSiC芯片的设计方案,不仅能减轻mCU的工作压力,同时也节省了系统开发时间,保证了模块运行时的稳定性和可靠性。本设计选用VpC3+C芯片,它集成了完整的Dp协议。S3C2440a通过Gpio与VpC3+C芯片连接,同时,不采用数据/地址线复用的方式,以此来提高模块运行效率。S3C2440通过GpJ0-GpJ10与VpC3+C的11根地址线aB(0..10)连接,通过GpB0-GpB7与VpC3+C对应的数据线DB(0..7)连接,同时将VpC3+C的XwR、XRD、XCS、X/int及XReaDY引脚分别与mCU的GpF0-GpF4相连接。VpC3+C引脚连接如图3所示。

为了提高模块的抗干扰性,系统选择了带磁耦隔离的RS485收发芯片aDm2486,其速率高达20mb/S,完全满足profibus-Dp的通信要求。与传统的光耦隔离相比,其简化了模块电路设计,同时大大降低了模块功耗。amD2486的引脚txD、RxD及RtS分别与VpC3+C的txD、RxD及RtS引脚相连接。

3软件实现方案

转换模块的作用是将profibus-Dp协议数据转换成modbus协议数据,实现使用不同协议的设备之间的通信,完成生产控制要求。在实际工作时,当转换模块初始化完成后,即进入数据转换状态。每次通信都由profibus-Dp主站发起,然后发送到转换模块中的VpC3+C芯片上,由于VpC3+C集成了完整的profibus-Dp协议,因此对Dp数据的处理并不需要mCU的参与[8]。VpC3+C处理完数据后,通知mCU取走数据。mCU收到主站数据后,将其转换成modbus协议格式,然后发送给从站并等待从站响应。

从整个控制系统来看,主要包含3种通信过程:profibus-Dp主站与模块从站侧的通信、模块内部的数据转换,以及模块modbus主站侧与现场从设备的通信。在主程序设计中,主要是对3种通信过程进行合理控制,以保证系统的可靠性和实时性。mCU及VpC3+C的初始化工作应当在数据交换之前完成。对VpC3+C的操作主要包括:允许中断、写入从站地址、设置模式寄存器、诊断缓冲区、参数缓冲区、配置缓冲区、地址缓冲区以及缓冲区的长度,最后设置输入输出缓冲区并取得其指针。主程序流程如图4所示。

由该流程图可以看出,mCU采用轮询方式读取VpC3+C中的数据。相对于中断的方式,轮询方式可以减少对modbus侧通信的影响,有助于提高模块的转换效率。

由硬件设计部分可知,VpC3+C协议芯片通过X/int引脚与S3C2440a芯片的GpC3引脚相连。在遇到异常情况时,VpC3+C将通过此引脚通知mCU。mCU通过读取中断寄存器的内容确定中断源的类型,然后调用相应的处理程序进行处理。VpC3+C的中断服务流程如图5所示。

转换模块中,modbus和profibus-Dp之间的协议数据转换通过映射关系建立。转换模块中,设置了两块数据缓冲区,一块是profibus-Dp数据输入缓冲区,另一块是profibus-Dp输出缓冲区。modbus主站侧将读取的数据写入到网络输入缓冲区,供profibus-Dp网络读取;modbus写命令从网络输出缓冲区取出数据并发送到相应的modbus从设备。在从缓冲区取用数据时,为了保证所使用的数据是最新的,采用单个缓冲的设计方式,以此来保证数据转换的实时性。同时,modbus从设备取得数据后直接填充到协议芯片的输入缓冲区,转换模块读取profibus协议数据后直接转换成modbus协议数据进行输出,通过这种方式,数据转换效率有所提升。

在转换模块中,modbus协议通过软件方式实现[9-10]。modbus主站侧一方面将Dp主站发送的数据通过modbus协议格式发送给从站;另一方面将modbus现场从设备的响应信息报告给Dp主站。对于从站的响应信息,采取中断设计方式。由于工业现场对可靠性和实时性要求较高,而且数据量很大,采取中断的方式可以大大减轻mCU的负担[11]。数据输入中断服务流程如图6所示。

4实验验证

本文采用西门子公司的S7300pLC作为profibus-Dp主站[12],利用pC端的Commix串口调试工具模拟modbus从站设备进行实验。通过验证,转换模块能够有效地完成数据转换功能,达到了设计要求。

(1)在pLC创建数据区DB1、DB2。其中DB1为数据发送区,DB2为数据接收区。

(2)数据的发送和接收分别通过SFC15“DpwR_Dat”和SFC14“DpRD_Dat”完成。

将DB1数据打包发送:

CaLL"DpRD_Dat"//调用SFC14

LaDDR:=w#16#0//接收输入起始地址

Ret_VaL:=mw2//错误代码

ReCoRD:=p#DB2.DBX0.0woRD8

将收数据存放到DB2:

CaLL"DpwR_Dat"//调用SFC15

LaDDR:=w#16#0//发送输出起始地址

ReCoRD:=p#DB1.DBX0.0woRD8Ret_VaL:=mw4//错误代码

(3)调用SFC21将DB1和DB2中的数据初始化。

(4)保存组态信息后进行测试。

(5)通过转换模块发送数据010300000008440C,串口可以收到周期性发来的信息,如图7所示。

(6)在发送区输入响应数据帧,如图8所示。

(7)DB2数据块可以正确接收串口发送的信息,如图9所示。

5结语

随着现代工业的不断发展,对生产控制的要求越来越高,现场总线因其标准开放、可靠性高、实时性强等优点,已成为自动控制发展的新方向。而总线标准不统一给用户系统集成带来了很大困难,因此对不同总线设备的集成化研究尤为重要。本文设计的modbus/profibus-Dp转换模块所需要的硬件简单、稳定、可靠,且成本相对较低,同时在软件方面对协议数据转换的可靠性和实时性进行了优化,从而在硬件和软件两方面保证了通信的实时性和可靠性,具有一定的实用价值。

参考文献:

[1]侯维岩,费敏锐.profibus协议分析和系统应用[m].北京:清华大学出版社,2006.

[2]章民融,秦艳华,徐亚锋.基于SpC3的profibus-Dp的研究与开发[J].计算机应用与软件,2008,2(8):184-186.

[3]张大海.profibus-Dp与Can协议转换研究及其网关开发[D].武汉:武汉大学,2005.

[4]华F.从modbus到透明就绪:施耐德电气工业网络的协议、设计、安装和应用[m].北京:机械工业出版社,2009.

[5]潘志刚,胡景泰,李强.基于modbus的串口通信实现[J].工业控制计算机,2012,25(7):79-80.

[6]王建国,孙丰祥,李红梅,等.基于软件协议的profibus-Dp从站实现[J].化工自动化及仪表,2010,37(1):66-69.

[7]赵玮,金亚萍,张胜.基于opC技术的应用程序实现[J].机电产品开发与创新,2009(3):100-101.

[8]夏琳琳,邱超,富兆龙,等.基于VpC3协议芯片的profibus-Dp接口适配卡的设计研究[J].化工自动化及仪表,2012(1):1323-1327.

[9]许波.modbus通信协议的研究与实现[D].合肥:安徽大学,2010.

[10]翁建年,张浩,彭道刚,等.基于嵌入式aRm的moBUS/tCp协议的研究与实现[J].计算机应用与软件,2009,26(10):36-39.

通信工程用工协议篇10

在风险投资过程中有一种常见的关键协议,即与公司创始人和关键员工的雇用协议。投资者通常会要求公司与公司的创始人和高层管理人员签订令投资者满意的雇用协议,作为其参与投资的前提条件。随着《中华人民共和国劳动合同法》于2008年1月1日实施,所有中国境内的企业都必须与其员工签订劳动合同,而不论该员工的职位高低。但是,即便没有这项法律义务,雇用协议在确保投资者利益与公司创始人及核心员工利益的一致性方面起着至关重要的作用。

在风险投资领域,公司员工通常可以被分为三类。第一类是公司的首席执行官,往往也是公司的创始人。他是公司生命的源泉。实践中,他的技术水平或管理能力将成为投资者参与投资的推动力量。通常情况下,创始人或首席执行官会在公司成立之初拥有最大份额的股权,即便在几轮融资之后,他们所占的股权比例也是相当可观的。因此,与其将他们视为传统意义上的员工,不如将其视为投资者的合伙人更为恰当。通常,公司创始人或首席执行官会同时就其雇用协议和股东协议与投资者进行磋商,从而构成双方合作的基础。这两份协议的重要作用在于重新分配公司权力,界定创始人或首席执行官的职责,以及列明双方的经济利益。尤其在中国,对于投资者而言,确保创始人或首席执行官对公司持续的忠诚度是十分重要的。因此,雇用协议和股东协议起到了控制投资风险的作用。通常,创始人购买公司股份的价格是大大低于投资者的购买价的,这种价格差的存在依据在于创始人投入公司的“干股”。换言之,创始人或首席执行官长期服务于公司是其以低价购买公司股份的基础。

从企业创始人的角度而言,雇用协议也是同样重要的,它确保创始人能够不断参与公司的经济和管理工作。尤其是在几轮融资之后,创始人不再拥有公司大多数的股份或控制权力,雇用协议便更显重要。

第二类是公司的核心员工,他们掌握了尖端的科学知识和技术,对公司的成功至关重要。通常,他们在相关领域内积累了丰富的经验,能够和创始人一起组成公司的管理团队。核心员工也可以包括公司的高级销售人员,他们的作用在于拓展公司的产品和服务销售领域。不论是公司还是投资者,都希望能与管理团队的员工达成长久的雇用协议,以保证他们长期地、忠诚地服务于公司。为了加强核心员工的忠诚度,公司会通过股权激励计划为其提供参股的机会。比如,他们可以拥有股票期权或其他权利,从而购买公司股份。这类权利往往存在一个“确权期限”(Vestingperiod),与员工为公司的服务期限直接挂钩。一种典型的情况是,员工在工作一年后能够得到25%的期权,之后每个月增加2%左右(75%的1/36)。这样一来,便形成了一种激励机制,促使员工愿意为公司服务至少四年以上。其本质在于鼓励员工不断为公司的发展贡献自己的力量。

第三类是最普通的公司员工,比如行政助理或者秘书等。通常,除了签订劳动合同以满足《劳动合同法》的要求之外,公司无需与他们签订特别协商制定的雇用协议。

下面简单介绍一下与公司创始人和核心员工的雇用协议中经常使用的条款。

第一,职责范围。雇用协议中的职责范围可以是针对个别员工详细列举的,也可以是针对某一职位统一要求的。通常情况下,雇用协议应当对公司创始人和核心员工的职责进行明确的界定。它犹如一把“双刃剑”。一方面,它详细列明了公司创始人的责任义务,并将以此对创始人的表现进行考核评价。另一方面,它将限制董事会权力的行使。这是因为,一旦在雇用协议中列明了创始人的职责范围,那么企业就创始人职位或职责方面所做的任何实质性变更或减少都将被视为违反雇用协议,并将承担相应的法律责任。对于核心员工而言,其雇用协议除应列明该员工的职位、职责外,还应写明该核心员工同时受控于董事会和经董事会任命的高层管理人员。全职核心员工应同意全身心地投入公司事务。虽然有时参加一些非营利活动(比如研讨会、大学兼职教授等)对员工和公司都是有利的,但过多参加此类活动可能会为全职员工的正常工作带来负面影响,因此,雇用协议应禁止员工在自己的专业领域内随意参与此类活动(不论是否以获利为目的)。但可以适当列举出例外情况。

第二,薪水津贴。雇用协议中必须明确员工的薪水和其他劳务补助问题。津贴的发放方式可以是多种多样的。由于公司在新设立的前几年通常是不盈利的,因此,常会用参股的方式代替传统的津贴发放。并且,股权认购、期权等参股计划通常会有一个明确的时间表,以确保员工持续任职于该公司。至于具体要求,可作为雇用协议下的某一条款,但更普遍的是,以单独的股权认购计划与协议的形式列出。

第二,机密信息。机密信息有时也称专有信息,包括但不限于商业秘密、技术资料、产品计划、客户名单、财务营销等各方面的商业信息。员工不但须严守公司的机密信息,还应对前雇主信息和第三方信息承担保密义务。在中国,根据《反不正当竞争法》的相关规定,“商业秘密”指不为公众所知悉、能为权利人带来经济利益、具有实用性并经权利人采取保密措施的技术信息和经营信息。这一概念与“机密信息”通常是可以互换的。

第四,发明。“发明”条款主要规定了发明的保留和许可、发明的转让和转让的例外。发明对高科技企业尤其重要。“发明的保留和许可”要求员工对其受雇前的发明进行披露。如果员工在受雇于公司期间将其先前发明应用到了公司的产品或程序中,那么该员工将授予公司制作、修改、使用和出售作为公司产品或程序的一部分的先前发明的非独占许可,且该许可将是永久的、不可撤销的、可转让的许可。“发明转让”主要是规定“职务作品”的权利归属和使用问题。员工须向公司披露并转让其享有的发明所有权和相关利益。在中国,虽然《专利法》和《著作法》对职务作品的概念均有规定,但《合同法》允许当事方协议确定各自对职务作品所享有的权利,唯一的例外是规定雇主须将一定比例的职务作品收益分与发明人作为报酬或奖励。

第五,协议终止。雇用协议应当写明在何种情况下,一方有权终止协议。当然,该条件须符合中国《劳动法》与《劳动合同法》的要求。

第六,雇用冲突。这就是通常所说的“竞业禁止”条款,即员工在受雇于公司期间,不得从事任何与公司利益相冲突的活动,例如与公司目前开展或将要开展的业务直接相关的活动。典型的“竞业禁止”条款包括四部分内容:承认员工的工作对公司有独特的价值,明确竞业禁止在雇用关系终止后的有效期限(中国新《劳动合同法》规定最长为两年),明确竞业禁止的地域范围,明确禁止行为的范围。