FSoE çerçeve yapısı örneklerle açıklanıyor

Bir bayt safety verisi: En basit safety PDU’su

Bu, yalnızca bir bayttan oluşan tek bir safety veri örneği içerir

OffsetBoyutAdAçıklama
01 baytCommandKomut
11 baytSafeData[0]safety verisi, oktet 0
22 baytCRC_016-bit CRC
42 baytConn_Idbenzersiz bağlantı kimliği

Tüm çok baytlı alanlar little endian olarak saklanır.

FSoEShortestSafetyPDU.h
struct __attribute__((packed)) FSoEShortestSafetyPDU {
    uint8_t Command;
    uint8_t SafeData_0;
    uint16_t CRC_0;
    uint16_t Conn_Id;
};

İki bayt safety verisi

OffsetBoyutAdAçıklama
01 baytCommandKomut
11 baytSafeData[0]safety verisi, oktet 0
21 baytSafeData[1]safety verisi, oktet 1
32 baytCRC_016-bit CRC
52 baytConn_Idbenzersiz bağlantı kimliği

Tüm çok baytlı alanlar little endian olarak saklanır.

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;
};

Dört bayt safety verisi

OffsetBoyutAdAçıklama
01 baytCommandKomut
11 baytSafeData[0]safety verisi, oktet 0
21 baytSafeData[1]safety verisi, oktet 1
32 baytCRC_016-bit CRC 0
51 baytSafeData[2]safety verisi, oktet 2
61 baytSafeData[3]safety verisi, oktet 3
72 baytCRC_116-bit CRC 1
92 baytConn_Idbenzersiz bağlantı kimliği

Tüm çok baytlı alanlar little endian olarak saklanır.

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;
};

Kaynak: ETG.5100 S (D) V1.2.0, Table 4: Shortest safety PDU ve Table 3: General Safety PDU, EtherCAT Technology Group (ETG)’ten talep üzerine temin edilebilir


Check out similar posts by category: FSoE EtherCAT Safety