FSoE: estrutura de quadro explicada por exemplos
Um byte de dados de segurança: a PDU de segurança mais simples
Isto contém apenas uma instância de dados de segurança, consistindo de um único byte
| Offset | Tamanho | Nome | Descrição |
|---|---|---|---|
| 0 | 1 byte | Command | Comando |
| 1 | 1 byte | SafeData[0] | dados de segurança, octeto 0 |
| 2 | 2 byte | CRC_0 | CRC de 16 bits |
| 4 | 2 byte | Conn_Id | ID de conexão único |
Todos os campos multi-byte são armazenados em little endian.
FSoEShortestSafetyPDU.h
struct __attribute__((packed)) FSoEShortestSafetyPDU {
uint8_t Command;
uint8_t SafeData_0;
uint16_t CRC_0;
uint16_t Conn_Id;
};Dois bytes de dados de segurança
| Offset | Tamanho | Nome | Descrição |
|---|---|---|---|
| 0 | 1 byte | Command | Comando |
| 1 | 1 byte | SafeData[0] | dados de segurança, octeto 0 |
| 2 | 1 byte | SafeData[1] | dados de segurança, octeto 1 |
| 3 | 2 byte | CRC_0 | CRC de 16 bits |
| 5 | 2 byte | Conn_Id | ID de conexão único |
Todos os campos multi-byte são armazenados em little endian.
FSoETwoByteSafeDataPDU.h
struct __attribute__((packed)) FSoETwoByteSafeDataPDU {
uint8_t Command;
uint8_t SafeData_0;
uint8_t SafeData_1;
uint16_t CRC_0;
uint16_t Conn_Id;
};Quatro bytes de dados de segurança
| Offset | Tamanho | Nome | Descrição |
|---|---|---|---|
| 0 | 1 byte | Command | Comando |
| 1 | 1 byte | SafeData[0] | dados de segurança, octeto 0 |
| 2 | 1 byte | SafeData[1] | dados de segurança, octeto 1 |
| 3 | 2 byte | CRC_0 | CRC 0 de 16 bits |
| 5 | 1 byte | SafeData[2] | dados de segurança, octeto 2 |
| 6 | 1 byte | SafeData[3] | dados de segurança, octeto 3 |
| 7 | 2 byte | CRC_1 | CRC 1 de 16 bits |
| 9 | 2 byte | Conn_Id | ID de conexão único |
Todos os campos multi-byte são armazenados em little endian.
FSoEFourByteSafeDataPDU.h
struct __attribute__((packed)) FSoEFourByteSafeDataPDU {
uint8_t Command;
uint8_t SafeData_0;
uint8_t SafeData_1;
uint16_t CRC_0;
uint8_t SafeData_2;
uint8_t SafeData_3;
uint16_t CRC_1;
uint16_t Conn_Id;
};Fonte: ETG.5100 S (D) V1.2.0, Table 4: Shortest safety PDU e Table 3: General Safety PDU, disponível mediante solicitação ao EtherCAT Technology Group (ETG)
Artigos relacionados
Visão geral e noções básicas
- O que a abreviação FSoE realmente significa? — o que significa o acrônimo FSoE
- FSoE: tabela de comandos da Safety PDU — a lista completa de comandos FSoE
CRC
- FSoE CRC: qual polinômio ele usa? — o polinômio de 17 bits do CRC do FSoE
- FSoE: Como as tabelas CRC são construídas? — como as tabelas de lookup CRC são geradas
- FSoE: Como funciona a herança de CRC? — como a cadeia CRC liga PDUs consecutivas
Códigos de erro e formato de dados
- FSoE: lista de todos os códigos de erro de comunicação — todos os códigos de erro de comunicação FSoE
- FSoE: os dados são transmitidos em little-endian ou big-endian? — ordem de bytes dos campos multibyte
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow