Research Article
JAUS to EtherCAT Bridge: Toward Real-Time and Deterministic Joint Architecture for Unmanned Systems
Algorithm 2
CoE frame structure (header file: ecat_packet.h).
struct CAN_Packet_Header | { | UINT32 ulDest; | UINT32 ulSrc; | UINT32 ulDestId; | UINT32 ulSrcId; | UINT32 ulLen; | UINT32 ulId; | UINT32 ulSta; | UINT32 ulCmd; | UINT32 ulExt; | UINT32 ulRout; | }; | struct CAN_Packet_Body | { | //MbxHeader | UINT16 Length | UINT16 Address; | UINT8 Channel_Prio; | UINT8 Type_Cntr; | //CoE_Cmd | UINT16 Num_Res_Type; | //CoE_Specific_Data | UINT8 ulNodeId; | UINT16 ulIndex; | UINT8 ulSubIndex; | UINT32 ulDataCnt; | }; | struct CAN_Packet_Data | { | UINT8 abSdoData100; | }; | struct CAN_Packet | { | CAN_Packet_Header can_pkt_header; | CAN_Packet_Body can_pkt_body; | CAN_Packet_Data can_pkt_data; | }; | struct SDO_Services_Packet | { | EthernetHeader ethernet_header; | EthercatFrameHeader ethercat_frame_header; | EthercatDatagramHeader | ethercat_datagram_header; | CAN_Packet can_pkt; | WorkingCounter wkc; | }; |
|