6.1 CANopen PDO protocol

Last modified by Admin on 2024/12/13 12:40

Communication protocols

CANopen PDO protocol

General information

The BMS Main 3X device supports CiA 301 CANopen protocol for configuring and monitoring the battery system.

The communication parameters of the device are:

  • CAN speed – 125, 250 (by default), 500 or 1000 kbps.
  • COBID of the device by default – 64 (0x40).

The BMS Main 3X supports the following features:

  • SDO protocol (for configuring the system).
  • PDO protocol (for interacting with external devices).
  • Sync.
  • Heartbeat producer.
  • Heartbeat consumer.

The BMS Main 3X transmits TPDO packets on every Sync message (CANID = 0x80, data length is 0). The device can send Sync messages itself.

There is the description of the parameters in the TPDO packets below. Column "Parameter type" contains an integer type of the parameter:

  • U8 – unsigned 8–bit integer;
  • U16 – unsigned 16–bit integer;
  • S16 – signed 16–bit integer;
  • U32 – unsigned 32–bit integer.

The bytes order of the word is little endian.

TPDO packets

CANID = 0x180+COBID (0x1C0 by default)

Packet length – 8 bytes.

Packet content:

Byte numberParameter nameParameter typeConverting
0

Discrete input signals 1 (bitfield):

bit 0 – signal “Battery cover”;

bit 1 – signal “Charge request”;

bit 2 – signal “Precharge request”;

bit 3 – signal “Discharge request”;

bit 4 – signal “CH contactor feedback”;

bit 5 – signal “DCH contactor feedback”;

bit 6 – signal “CH/DCH contactor feedback”;

bit 7 – signal “Insulation status”.

U8 
1–2Battery currentS160.1A/bit
3Minimum cell temperatureS81ºC/bit
4Maximum cell temperatureS81ºC/bit
5State of charge (SOC)U81%/bit
6–7Battery voltageU160.1V/bit

CANID = 0x280+COBID (0x2A0 by default)

Packet length – 8 bytes.

Packet content:

Byte numberParameter nameParameter typeConverting
0–3

Internal signals (bitfield):

bit 0 – signal “Init” (current sensor calibration or battery modules scanning is performed);

bit 1 – signal “Charging” (0 – open, 1 – closed);

bit 2 – signal “Discharging” (0 – open, 1 – closed);

bit 3 – signal “Charging current present”;

bit 4 – signal “Discharging current present”;

bit 5 – signal “Charging/Discharging” (0 – open, 1 – closed);

bit 6 – signal “Precharging” (0 – open, 1 – closed);

bit 7 – signal “Interlock”;

bit 8 – signal “Fuse 1”;

bit 9 – signal “Fuse 2”;

bit 10 – signal “Fuse 3”;

bit 11 – signal “Heater” (0 – off, 1 – on);

bit 12 – signal “Cooler” (0 – off, 1 – on);

bit 13 – signal “Main contactor” (0 – open, 1 – closed);

bit 14 – signal “Service reset”;

bit 15 – signal “Coolant pump”;

bits 16-31 – not used.

U32 
4–7

Errors 1 (bitfield):

bit 0 – error “Battery cover”;

bit 1 – error “Modules offline”;

bit 2 – “Critical error”;

bit 3 – error “Voltage unbalance (CH)”;

bit 4 – error “Voltage unbalance (DCH)”;

bit 5 – error “Current unbalance (CH)”;

bit 6 – error “Current unbalance (DCH)”;

bit 7 – error “Charging current unbalance”;

bit 8 – error “Discharging current unbalance”;

bit 9 – reserved (set to 0);

bit 10 – “CH contactor feedback error”;

bit 11 – “DCH contactor feedback error”;

bit 12 – “CH/DCH contactor feedback error”;

bit 13 – “Insulation fault”;

bit 14 – error “WDT reset”;

bit 15 – error “Overcurrent”;

bit 16 – error “Power switch error”;

bit 17 – error “High humidity”;

bit 18 – error “Water”;

bit 19 – error “Short circuit”;

bit 20 – error “Contactor high temperature”;

bit 21 – error “Stuck contactor”;

bit 22 – “HVIL error”;

bit 23 – “ADC error”;

bit 24 – “Current sensor error”;

bit 25 – “Mount error”;

bit 26 – “FS error”;

bit 27 – “High voltage fault”;

bit 28 – “PCH contactor feedback error”;

bit 29 – “Main contactor feedback error”;

bit 30 – “Precharge error”;

bit 31 – “Current limit error”.

U32 

CANID = 0x380+COBID (0x3A0 by default)

Packet length – 8 bytes.

Packet content:

Byte numberParameter nameParameter typeConverting
0–3

Errors 2 (bitfield):

bit 0 – “Power fault”;

bits 1-31 – not used.

U32 
4-5

Discrete input signals 2 (bitfield):

bit 0 – signal “Join to charge”;

bit 1 – signal “Join to discharge;

bit 2 – signal “PCH contactor feedback”;

bit 3 – signal “Main contactor feedback”;

bit 4 – signal “Interlock”;

bit 5 – signal “Power down request”;

bits 6-15 – not used.

U16 
6-7ReservedU16