微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 全数字式数控总线应用层通用化设计

全数字式数控总线应用层通用化设计

时间:12-20 来源:互联网 点击:

线类型选择相应的数据链路,实现用户程序与数据链路层之问的数据交互。此外,还要维护站点地址的管理,逻辑地址和物理地址的映射等。

  服务解释器、服务映射管理及协议映射管理通过站点的逻辑地址判断总线类型,查询对象字典,完成应用接口子层的服务协议到具体总线应用层的服务协议之间的解释和映射。

  2.2 应用层通信模型

  应用接口子层主要包括应用接口子层服务、协议数据及对象字典;协议接口子层主要包括服务映射管理、地址管理及协议映射管理,用以实现统一应用协议数据到具体总线应用层协议数据的转换。具体总线应用层调用对应的数据链路层提供的服务,完成数据通信。应用层的通信模型如图4所示。


图4应用层通信模型

  2.3 应用层状态机

  应用层在不同时刻可处于不同的运行状态,应用层的操作可触发状态间的转换,在不同的状态下可提供不同的服务及操作。状态机包括初始状态、就绪状态、异步连接状态、同步连接状态、连接释放状态、错误状态和结束状态。状态问的转换如图5所示。

  状态说明:S0:初始状态,设备装置上电后站点的应用层初始状态;S1:就绪状态,站点初始化成功后等待建立连接的状态;S2:异步连接状态,在该状态下可以提供异步传输服务;s3:同步连接状态,在该状态下既可以提供同步传输服务也可以提供异步传输服务;S4:连接释放状态,数据传输结束后连接断开所进入的状态;S5:错误状态,运行过程中出现错误的状态,在该状态下不能提供传输服务;S6:结束状态,服务关闭等待设备装置下电的状态。

  操作说明:11D:执行初始化服务(无异常);T1:执行初始化服务(异常);他:执行异步连接服务(无异常);T3:执行同步连接服务(无异常);T4:执行连接服务(异常);T5:执行同步/异步转换服务(无异常);T6:执行释放连接服务(无异常);”:发生异步传输错误;T8:发生同步错误;四:执行释放连接服务(异常);T10:执行结束处理;T11:执行恢复操作;T12:执行错误处理。

3 关键性技术及其解决方案

  协议接口子层及应用接口子层的实现是设计的关键,需要解决以下几个主要问题:总线站点地址的一致性;应用层协议数据格式的一致性;参数单位的一致性;总线配置结构的一致性和服务接口的一致性。下面对这几个问题进行分析,并给出详细的解决方案。

  3.1 统一的站点地址设计

  各个总线的站点地址不同,如M3站点的物理地址为16位,EtherCAT站点的物理地址为48位。为使各总线有统一的站点地址,系统对站点设备采用统一编址。所有现场网络中的站点都有统一的逻辑地址。每个总线上的站点都可以使用统一的逻辑地址进行通信。统一的站点逻辑地址格式如图6所示。


图6统一的站点逻辑地址

  逻辑地址为32位,其首8位用来标识总线类型。如M3、NCSF、EtherCAT总线等;次8位用来标识设备类型,如标准伺服、高分辨率伺服、多轴伺服、主轴、I/O设备、传感器、变频器等;后16位用来标识站点。其中OxOOXXXXXX用来表示主站的逻辑地址。

  为了兼顾各总线的物理地址的不同。物理地址设为48位,用来存放各总线站点的物理地址。当数据链路层用到物理地址时.对其进行截取变换成相应总线站点的物理地址。系统维护站点逻辑地址和物理地址的一一对应关系。

  3.2 统一的应用层协议数据格式

  不同总线的应用层协议数据格式差别较大,在此,定义一种统一的应用层协议数据报文格式。当向底层传输数据发生协议映射时。只需将其映射为具体总线的应用层协议数据格式。当底层有数据上传时,只需将具体总线的应用层协议数据报文封装成统一的应用层协议数据报文。如图7所示。目的标识代表了接收站点的逻辑地址,源标识代表了发送站点的逻辑地址。长度代表了有效数据的长度,单位为字节。A/S用于标识同步(A/S=1)或异步(A/S=0)。C/R用于标识命令(C/R=1)或应答(C/R=0)。


图7统一的应用层协议数据报文

  统一的应用层协议数据报文结构定义如下:

  3.3 统一的单位系

  由于不同总线所使用的参数单位不同,且差别很大,为使参数有统一的单位标准。系统设计了统一的单位系。如表1所示。

其中指令单位是指移动负载的位置数据的最小单位。指令单位应在考虑机械规格、定位精度等因素之后再行决定。例如可为mill、inch、度(o)等。每种参数都提供了多种单位供用户选择。并提供了基本单位供用户设置。例如位置参数单位选择mm。其基本单位设置为10一mm=0.001mm;速度参数单位选择mm/s,其基本单位设置为10-3mm/s=0.001mm/s等。用户可以根据具体的应用情况。选择不同的参数单位及基本单位进行设置。使得在模块之间传递的数据值含义

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top