6.1 Протокол CANopen PDO

Редактировал(а) Admin 2025/02/28 09:49

Communication protocols

CANopen PDO protoco

CANopen_PDO_Main_Mini.dbc 

Общая информация

Устройство BMS Mini S / BMS Mini реализует протокол CiA 301 CANopen для настройки и чтения состояния АКБ и BMS.

Основные характеристики:

  • Поддерживаются стандартные 11-ти битные идентификаторы сообщений.
  • Скорость обмена – 125, 250 (по умолчанию), 500 или 1000 кбит/с.
  • Идентификатор COBID платы по умолчанию – 32 (0x20).

Поддерживаемые режимы передачи данных:

  • SDO (для настройки платы).
  • PDO (для обмена данными с другими элементами системы).
  • Sync (настраивается).
  • Heartbeat producer (настраивается).
  • Heartbeat consumer (используется для контроля активности других устройств на шине CAN).

Передача данных PDO выполняется по сигналу синхронизации (CANID = 0x80, длина данных 0). Плата может сама выступать источником сигнала синхронизации (режим Sync).

Ниже даётся описание параметров, передаваемых в режиме PDO. В колонке «Тип параметра»:

  • U8 – беззнаковое 8-разрядное число;
  • U16 – беззнаковое 16-разрядное число;
  • S16 – знаковое 16-разрядное число;
  • U32 – беззнаковое 32-разрядное число.

Порядок байт в словах – от младшего к старшему (little endian).

Пакеты TPDO

CANID = 0x180+COBID (по умолчанию 0x1A0 by default)

Длина пакета – 8 байт.

Содержимое пакета:

Byte numberParameter nameParameter typeConverting
0

Discrete input signals 1 (bitfield):

bit 0 – “Battery cover”;

bit 1 – “Charger connected”;

bit 2 – “Power up/down request”;

bit 3 – “Inhibit charging”;

bit 4 – “Inhibit discharging”;

bit 5 – reserved (set to 0);

bit 6 – reserved (set to 0);

bit 7 – “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)

Длина пакета – 8 байт.

Содержимое пакета:

Byte numberParameter nameParameter typeConverting
0–3

Internal signals (bitfield):

bit 0 – “Low SOC”;

bit 1 – “High charging current”;

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

bit 3 – “Allow charging” (0 – open, 1 – closed);

bit 4 – “Charging current present”;

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

bit 6 – “Discharging current present”;

bit 7 – “Voltage too high” (EV);

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

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

bit 10 – “HYG shutdown”, command from the HYG forklift to open the discharging contactor;

bit 11 – “Init”, initialization signal (during the initialization current sensor is calibrating and BMS Logic devices are scanning);

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

bit 13 – “Combilift shutdown”, command from the Combilift forklift to open the discharging contactor;

bit 14 – “Cell analysis”, signal of started analysis of the cells;

bit 15 – reserved (set to 0);

bit 16 – reserved (set to 0);

bit 17 – “Discharging (AUX)” (0 – open, 1 – closed);

bit 18 – “Acknowledgement of power down”;

bit 19 – “Crown EWS”;

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

bit 21 – “Service reset”;

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

bit 23 – “Ready to charge” (the voltage of the cells is less than the threshold value and there are no errors that prohibit charging);

bit 24 – “Ready to discharge” (the voltage of the cells is greater than the threshold value and there are no errors that prohibit discharging);

bit 25 – “Power up”;

bit 26 – “External 1”;

bits 27–31 – reserved.

U32 
4–7

Errors register 1 (bitfield):

bit 0 – “Overcurrent”;

bit 1 – “Undervoltage”;

bit 2 – “Overvoltage”;

bit 3 – “Low DCH temperature”, temperature is too low for discharging;

bit 4 – “High DCH temperature”, temperature is too high for discharging;

bit 5 – “Battery cover”;

bit 6 – reserved (set to 0);

bit 7 – reserved (set to 0);

bit 8 – reserved (set to 0);

bit 9 – “Cell monitor offline”, connection with the cell monitor is lost;

bit 10 – “Critical error”;

bit 11 – “Crown error”, connection with the Crown forklift is lost;

bit 12 – “Cell count error”, number of cells is incorrect;

bit 13 – “HYG offline”, connection with the HYG forklift is lost;

bit 14 – “Need acknowledgement”, errors were detected in the past and should be acknowledged;

bit 15 – “Combilift offline”, connection with the Combilift forklift is lost;

bit 16 – “Short circuit”;

bit 17 – “High contactor temperature”, the discharging contactor is overheated;

bit 18 – reserved (set to 0);

bit 19 – “ADC error”, battery current cannot be measured by the ADC;

bit 20 – “Current sensor error”, wires which connect the current sensor with the BMS are damaged;

bit 21 – “CH contactor cycles error”, the charging contactor switches very often;

bit 22 – “DCH contactor cycles error”, the discharging contactor switches very often;

bit 23 – “Shunt offline”, connection with the BMS Current sensor is lost;

bit 24 – “Shunt error”, internal error of the BMS Current sensor;

bit 25 – reserved (set to 0);

bit 26 – “WDT reset”, device is reset by the watchdog timer;

bit 27 – “No temperature sensors”;

bit 28 – “Temperature sensor is shorted”;

bit 29 – “Spirit offline”, connection with the Spirit truck is lost;

bits 30–31 – reserved.

U32 

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

Длина пакета – 8 байт.

Содержимое пакета:

Byte numberParameter nameParameter typeConverting
0–3

Errors register 2 (bitfield):

bit 0 – “Low CH temperature”, temperature is too low for charging;

bit 1 – “High CH temperature”, temperature is too high for charging;

bit 2 – “SD mount error”;

bit 3 – “SD read/write error”;

bit 4 – “Unallowable charging”, charging the battery through the discharging contactor;

bit 5 – “Stuck contactor”;

bit 6 – reserved (set to 0);

bit 7 – reserved (set to 0);

bit 8 – “Insulation fault”;

bit 9 – reserved (set to 0);

bit 10 – reserved (set to 0);

bit 11 – reserved (set to 0);

bit 12 – "Contactor feedback error";

bit 13 – “General error”;

bit 14 – reserved (set to 0);

bit 15 – reserved (set to 0);

bit 16 – reserved (set to 0);

bit 17 – "Precharge error";

bit 18 – reserved (set to 0);

bit 19 – "Current limit error";

bits 20-31 — reserved.

U32 
4-5

Discrete input signals 2 (bitfield):

bit 0 – “Charge request”;

bit 1 – “Precharge request”;

bit 2 – “Discharge request”;

bit 3 – reserved (set to 0);

bit 4 – reserved (set to 0);

bit 5 – reserved (set to 0);

bit 6 – “Interlock”;

bit 7 – “Fuse 1”;

bit 8 – “Fuse 2”;

bit 9 – “Fuse 3”;

bit 10 – “Circuit breaker status”;

bit 11 – "Balancing request";

bit 12 – "Close Main contactor";

bit 13 – "Close External 1";

bits 14-15 – reserved.

U16 
6-7ReservedU16