6.1 Протокол CANopen PDO

Редактировал(а) Admin 2025/02/17 13:59

Communication protocols

CANopen PDO protocol

CANopen_PDO_Main_Mini.dbc 

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

Плата BMS Main 3 реализует протокол 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)

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

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

БайтИмя параметраТип параметраКодирование
0

Дискретные входы 1 (битовое поле):

бит 0 – сигнал «Открыта АКБ»;

бит 1 – сигнал «Подключено ЗУ»;

бит 2 – сигнал «Запрос на отключение питания»;

бит 3 – сигнал «Запрет заряда»;

бит 4 – сигнал «Запрет разряда»;

бит 5 – сигнал «Обратная связь контактора заряда»;

бит 6 – сигнал «Обратная связь контактора разряда»;

бит 7 – сигнал «Статус контроля изоляции».

U8 
1-2Ток через АКБS160,1А/бит
3Минимальная температура ячейкиS81ºC/бит
4Максимальная температура ячейкиS81ºC/бит
5Степень заряда АКБ (SOC)U81%/бит
6-7Напряжение АКБU160,1В/бит

CANID = 0x280+COBID (по умолчанию 0x2A0)

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

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

БайтИмя параметраТип параметраКодирование
0–3

Флаги состояния (битовое поле):

бит 0 – сигнал «SOC ниже заданного уровня»;

бит 1 – сигнал «Ток заряда выше заданного уровня»;

бит 2 – состояние контактора заряда (0 – разомкнуто, 1 – замкнуто);

бит 3 – сигнал «Разрешение ЗУ»;

бит 4 – сигнал «Заряд АКБ» (детектируется ток заряда);

бит 5 – состояние контактора разряда (0 – разомкнуто, 1 – замкнуто);

бит 6 – сигнал «Разряд АКБ» (детектируется ток разряда);

бит 7 – сигнал «Повышенное напряжение» (EV);

бит 8 – сигнал «Нагрев АКБ»;

бит 9 – сигнал «Охлаждение АКБ»;

бит 10 – сигнал на отключение контактора разряда от погрузчика HYG;

бит 11 – сигнал об инициализации платы (во время инициализации калибруется датчик тока и сканируются платы BMS Logic);

бит 12 – состояние контактора предзаряда;

бит 13 – сигнал на отключение контактора разряда от погрузчика Combilift;

бит 14 – сигнал о запущенном процессе анализа ячеек (Cell analysis);

бит 15 – сигнал на балансировку серии батареи №1;

бит 16 – сигнал на балансировку серии батареи №2;

бит 17 – состояние дополнительного (AUX) контактора разряда (0 – разомкнуто, 1 – замкнуто);

бит 18 – подтверждение отключения питания;

бит 19 – сигнал EWS от погрузчика Crown;

бит 20 – состояние главного контактора (0 – разомкнут, 1 - замкнут);

бит 21 – сигнал служебного сброса системы;

бит 22 – состояние комбинированного контактора заряда/разряда (0 – разомкнуто, 1 – замкнуто);

бит 23 – сигнал «Готовность заряжаться»;

бит 24 – сигнал «Готовность разряжаться»;

бит 25 — сигнал “Power up”;

биты  26-31 — не используется.

U32 
4–7

Регистр ошибок 1 (битовое поле):

бит 0 – ошибка «Превышение тока»;

бит 1 – ошибка «Низкое напряжение»;

бит 2 – ошибка «Высокое напряжение»;

бит 3 – ошибка «Низкая температура (разряд)»;

бит 4 – ошибка «Высокая температура (разряд)»;

бит 5 – ошибка «Открыта крышка АКБ»;

бит 6 – ошибка «Повышенная влажность»;

бит 7 – ошибка «Вода»;

бит 8 – ошибка «Перегрев Logic»;

бит 9 – ошибка «Потеря связи c Logic»;

бит 10 – критическая ошибка;

бит 11 – ошибка Crown;

бит 12 – ошибка «Несоответствие кол-ва ячеек»;

бит 13 – ошибка «Потеря связи с HYG»;

бит 14 – флаг о необходимости квитировать записи в журнале ошибок;

бит 15 – ошибка «Потеря связи с Combilift»;

бит 16 – ошибка «Короткое замыкание»;

бит 17 – ошибка «Перегрев контактора»;

бит 18 – ошибка «Несоответствие кол-ва Logic»;

бит 19 – ошибка АЦП;

бит 20 – ошибка в цепи подключения датчика тока (обрыв или короткое замыкание);

бит 21 – большая частота переключений контактора заряда;

бит 22 – большая частота переключений контактора разряда;

бит 23 – ошибка «Потеря связи с BMS Current Sensor»;

бит 24 – внутренняя ошибка BMS Current Sensor;

бит 25 – ошибка контрольной суммы настроек платы;

бит 26 – флаг перезапуска платы по требованию WDT;

бит 27 – ошибка «Нет датчиков температуры»;

бит 28 – ошибка «КЗ датчика температуры»;

бит 29 – ошибка «Потеря связи со Spirit»;

биты 30-31 – не используются.

U32 

CANID = 0x380+COBID (по умолчанию 0x3A0)

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

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

БайтИмя параметраТип параметраКодирование
0–3

Регистр ошибок 2 (битовое поле):

бит 0 – ошибка «Низкая температура (заряд)»;

бит 1 – ошибка «Высокая температура (заряд)»;

бит 2 – ошибка монтирования SD-карты;

бит 3 – ошибка записи/чтения SD-карты;

бит 4 – ошибка «Недопустимый заряд» (заряд батареи через контактор разряда);

бит 5 – ошибка «Залипание контактора»;

бит 6 – «Ошибка обр. связи контактора заряда»;

бит 7 – «Ошибка обр. связи контактора разряда»;

бит 8 – ошибка «Нарушение изоляции»;

бит 9 – «Ошибка обр. связи контактора предзаряда»;

бит 10 – «Ошибка обр. связи комбинированного контактора заряда/разряда»;

бит 11 – «Ошибка обр. связи главного контактора»;

бит 12 — зарезервировано (установлен в 0);

бит 13 — общая ошибка “General error”;

бит 14 — ошибка высокого напряжения;

бит 15 — ошибка “Power switch error”;

бит 16 — ошибка целостности высоковольтной цепи;

бит 17 — ошибка предзаряда;

бит 18 — ошибка силового ключа;

биты 19-31 — не используются.

U32 
4-5

Дискретные входы 2 (битовое поле):

бит 0 – сигнал «Запрос на заряд»;

бит 1 – сигнал «Запрос на предзаряд»;

бит 2 – сигнал «Запрос на разряд»;

бит 3 – сигнал «Обратная связь контактора предзаряда»;

бит 4 – сигнал «Обратная связь комбинированного контактора заряда/разряда»;

бит 5 – сигнал «Обратная связь главного контактора»;

бит 6 – сигнал “Interlock”;

бит 7 – сигнал “Fuse 1”;

бит 8 – сигнал “Fuse 2”;

бит 9 – сигнал “Fuse 3”;

бит 10 – сигнал “Circuit breaker status”;

бит 11 – сигнал “Balancing request”;

бит 12 – сигнал “Close Main contactor”;

биты 13-15 – не используются.

U16 
6-7ЗарезервированоU16