如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
长沙方锐机电设备有限公司ChangshaFangruiMechanical&ElectricalEquipmentCO.,LTD.Hart通信协议在ProfibusDPV1中的实现0Profibus和HART现场总线标准概述PROFIBUS标准是一种用于工厂自动化车间级监控和现场设备层数据通讯与控制的现场总线技术。可实现现场设备层到车间级监控的分散式数字控制和现场通信,从而为实现工厂综合自动化和现场设备智能化提供了可行的解决方案。PROFIBUS-DP作为PROFIBUS的规范子集,主要面向工厂现场层应用,可完成包括可编程控制器、自动控制设备、传感器、执行器间的快速可靠的循环通信任务。HART协议是由Rosemount公司开发的一个传输标准,是一种用于现场智能仪表和控制室设备之间的通信协议。其特点是在现有的模拟信号传输线上实现数字信号通信。它属于模拟系统向数字系统转变过程中的过渡性产品。通过与HART基金会的合作,Profibus用户组织专门定义了一个HART规范,以用于将HART集成人PROFIBUS系统中,也可为控制器通过PROFIBUS-DP总线控制现场HART设备提供依据。本文描述了以此规范为依据并通过DPVl实现控制器对现场HART设备进行控制的方法。1系统的设计和实现图1所示是本系统的总体实现方案。系统中的通信是由HART管理软件(HartClient)首先发起,并通过通信请求给DP主站(DPMaster),DP主站在收到此请求后,再将HartClient发送的请求数据转换为DPVl报文格式,并通过DP总线将报文发送到DP从站(DPSlave),在此,DP从站同时又充当Hart主站(HartMasterDeviceHMD),其主要功能就是将DPMaster发送的DP格式报文转换为Hart格式的报文并发送到Hart设备(HartDevice)。对于某些来自HartClient的请求,HMD则不需要将请求发送给Hart设备,而是直接回复,如读取HMD有关参数数据,该类请求的实现过程如图2所示。长沙方锐机电设备有限公司ChangshaFangruiMechanical&ElectricalEquipmentCO.,LTD.2DPVl实现DPVl在DPV0的基础上增加了新服务,对于1类主站,DPVl新增的服务主要有:◇非周期读服务:MSACl_Read;◇非周期写服务:MSACl_Write;◇非周期报警:MSACl_Alarm、MSACl_Alarm_Ack、MSACl_Status。而对于2类主站,其新增的服务主要有:◇非周期读服务:MSAC2_Read;◇非周期写服务:MSAC2_Write;◇与从站建立通讯服务:MSAC2_Initiate;长沙方锐机电设备有限公司ChangshaFangruiMechanical&ElectricalEquipmentCO.,LTD.◇中指与从站的通讯:MSAC2_Abort;◇数据传输:MSAC2_Data_Transport。根据规范,在为Hart提供通讯中只用到了非周期读写两个服务,和利时公司已用软件实现了各个版本的DP主站功能,本文主要介绍在DPV0版本的DP主站程序中添加非周期读写服务来实现部分DPVl功能。图3所示是非周期状态转换在主站状态转换图中所处的位置。2.1从站参数集的扩展根据DP协议,Sl_Flag被扩展后,便可提供更多的控制信息给DPVl主站。此字节与非周期读写有关的是第四位(DPVl_Supported)。如果此位设置为1,则从站支持DPVl功能,否则工作在DPV0功能下。其它位的详解请参考相关文献。在从站参数集中扩展的其它字节(如Max_Alarm_Len、Alarm_Mode等)都是与报警有关的,在此不予关注,可参考文献部分。2.2非周期读服务的实现DPVl设备是由槽和索引寻址的。所谓槽,不一定就是一个实际的物理对象,槽可以是物理的或逻辑的数据块。槽的内部通常由索引来寻址,索引可以标识变量或代表完备数据块。与DPV0的报文格式不同,非周期读使用的服务节点号为51,在数据域DU中,除了有交换的数据外,前四个字节分别定义了功能号(Function_Num)、槽号(Slot)、索引号(Index)和用户数据长度(Data_Length)。其报文格式如图4所示。长沙方锐机电设备有限公司ChangshaFangruiMechanical&ElectricalEquipmentCO.,LTD.非周期读服务的功能号通常为0x5E,当读取的数据正确返回时,Read.