2 应用层通用化设计
2.1 统一应用层架构的设计
在数控总线结构模型的基础上设计了一个统一的应用层架构,如图3所示。
(1)应用接口子层:为数控系统应用程序提供统一的服务,包括传输服务、设备服务、总线管理服务等。传输服务包括连接服务、同步传输服务、异步传输服务和传输管理服务。传输管理服务对应用层的传输状态进行管理,包括初始化、同步异步转换、状态查询及安全等服务。根据设备装置的不同,设备服务包括伺服驱动服务、主轴服务、I/O服务、传感器服务等。总线管理服务包括总线配置服务、总线查询服务等。这些服务通过服务解释器及服务映射管理机制映射到具体总线的应用层服务。该层还为各总线提供了统一的单位系、统一的应用层协议数据格式、统一的总线配置结构、统一的状态机、统一的基本数据类型及对象字典。
基本数据类型包括位元型、字符型、整型、浮点型、串型、布尔型、枚举型、结构体等。其中整型分为有符号整型和无符号整型,都可以使用8位、16位、32位、64位等多种方式进行存储,如INT8(8位整数)、UINT8(8位无符号整数)、INTl6(16位整数)、UINTl6(16位无符号整数)、INT32(32位整数)、UINT32(32位无符号整数)、INT64(64位整数)、UINT64(64位无符号整数)等。
对象字典包括服务对象字典和协议对象字典。对象字典为应用接口子层服务及协议数据提供对应的具体总线应用层服务及协议数据结构的解释和定义。
(2)协议接口子层:通过服务映射管理机制将应用接口子层提供的服务映射到具体总线的应用层服务,如M3应用层服务、EtherCAT应用层服务、NCSF应用层服务等。并将统一的应用层协议数据映射成具体总线的应用层协议数据。然后根据总线类型选择相应的数据链路,实现用户程序与数据链路层之问的数据交互。此外,还要维护站点地址的管理,逻辑地址和物理地址的映射等。
服务解释器、服务映射管理及协议映射管理通过站点的逻辑地址判断总线类型,查询对象字典,完成应用接口子层的服务协议到具体总线应用层的服务协议之间的解释和映射。
2.2 应用层通信模型
应用接口子层主要包括应用接口子层服务、协议数据及对象字典;协议接口子层主要包括服务映射管理、地址管理及协议映射管理,用以实现统一应用协议数据到具体总线应用层协议数据的转换。具体总线应用层调用对应的数据链路层提供的服务,完成数据通信。应用层的通信模型如图4所示。
2.3 应用层状态机
应用层在不同时刻可处于不同的运行状态,应用层的操作可触发状态间的转换,在不同的状态下可提供不同的服务及操作。状态机包括初始状态、就绪状态、异步连接状态、同步连接状态、连接释放状态、错误状态和结束状态。状态问的转换如图5所示。
状态说明:S0:初始状态,设备装置上电后站点的应用层初始状态;S1:就绪状态,站点初始化成功后等待建立连接的状态;S2:异步连接状态,在该状态下可以提供异步传输服务;s3:同步连接状态,在该状态下既可以提供同步传输服务也可以提供异步传输服务;S4:连接释放状态,数据传输结束后连接断开所进入的状态;S5:错误状态,运行过程中出现错误的状态,在该状态下不能提供传输服务;S6:结束状态,服务关闭等待设备装置下电的状态。
操作说明:11D:执行初始化服务(无异常);T1:执行初始化服务(异常);他:执行异步连接服务(无异常);T3:执行同步连接服务(无异常);T4:执行连接服务(异常);T5:执行同步/异步转换服务(无异常);T6:执行释放连接服务(无异常);”:发生异步传输错误;T8:发生同步错误;四:执行释放连接服务(异常);T10:执行结束处理;T11:执行恢复操作;T12:执行错误处理。