5.1 Протокол CANopen PDO
Протоколы связи
Протокол CANopen PDO
Общая информация
Плата BMS Main 2.x реализует протокол 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 packets
CANID = 0x180+COBID (по умолчанию 0x1A0)
Длина пакета – 8 байт.
Содержимое пакета:
| Байт | Имя параметра | Тип параметра | Кодирование |
| 0 | Дискретные входы 1 (битовое поле): бит 0 – сигнал «Открыта АКБ»; бит 1 – сигнал «Подключено ЗУ»; бит 2 – сигнал «Запрос на отключение питания»; бит 3 – сигнал «Запрет заряда»; бит 4 – сигнал «Запрет разряда»; бит 5 – сигнал «Обратная связь контактора заряда»; бит 6 – сигнал «Обратная связь контактора разряда»; бит 7 – сигнал «Статус контроля изоляции». | U8 | |
| 1-2 | Ток через АКБ | S16 | 0,1А/бит |
| 3 | Минимальная температура ячейки | S8 | 1ºC/бит |
| 4 | Максимальная температура ячейки | S8 | 1ºC/бит |
| 5 | Степень заряда АКБ (SOC) | U8 | 1%/бит |
| 6-7 | Напряжение АКБ | U16 | 0,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-31 – не используются. | U32 | |
| 4-7 | Регистр ошибок 1 (битовое поле): бит 0 – ошибка “Overcurrent”; бит 1 – ошибка “Undervoltage”; бит 2 – ошибка “Overvoltage”; бит 3 – ошибка “Low DCH temperature”; бит 4 – ошибка “High DCH temperature”; бит 5 – ошибка “Battery cover”; бит 6 – ошибка “High humidity”; бит 7 – ошибка “Water”; бит 8 – ошибка “High logic temperature”; бит 9 – ошибка “Logic offline”; бит 10 – критическая ошибка; бит 11 – ошибка “Crown error”; бит 12 – ошибка “Cell count error”; бит 13 – ошибка “HYG offline”; бит 14 – флаг о необходимости квитировать записи в журнале ошибок; бит 15 – ошибка “Combilift offline”; бит 16 – ошибка “Short circuit”; бит 17 – ошибка “High contactor temperature”; бит 18 – ошибка “Logic count error”; бит 19 – ошибка “ADC error”; бит 20 – ошибка “Current sensor error” (обрыв или короткое замыкание); бит 21 – ошибка “CH contactor cycles error”; бит 22 – ошибка “DCH contactor cycles error”; бит 23 – ошибка “Shunt offline”; бит 24 – ошибка “Shunt error”; бит 25 – ошибка контрольной суммы настроек платы; бит 26 – флаг перезапуска платы по требованию WDT; бит 27 – ошибка “No temperature sensors”; бит 28 – ошибка “Temperature sensor is shorted”; бит 29 – ошибка “Spirit offline”; биты 30-31 – не используются. | U32 |
CANID = 0x380+COBID (по умолчанию 0x3A0)
Длина пакета – 8 байт.
Содержимое пакета:
| Байт | Имя параметра | Тип параметра | Кодирование |
| 0-3 | Регистр ошибок 2 (битовое поле): бит 0 – “Low CH temperature”, temperature is too low for charging; бит 1 – “High CH temperature”, temperature is too high for charging; бит 2 – “SD mount error”; бит 3 – “SD read/write error”; бит 4 – “Unallowable charging”, charging the battery through the discharging contactor; бит 5 – “Stuck contactor”; бит 6 – “CH contactor feedback error”; бит 7 – “DCH contactor feedback error”; бит 8 – “Insulation fault”; бит 9 – “PCH contactor feedback error”; бит 10 – “CH/DCH contactor feedback error”; бит 11 – “Main contactor feedback error”; бит 12 – не используется; бит 13 – “General error”; биты 14-16 – не используются; бит 17 – "Precharge error"; биты 18-31 – не используются. | U32 | |
| 4-5 | Дискретные входы 2 (битовое поле): бит 0 – сигнал “Charge request”; бит 1 – сигнал “Precharge request”; бит 2 – сигнал “Discharge request”; бит 3 – сигнал “PCH contactor feedback”; бит 4 – сигнал “CH/DCH contactor feedback”; бит 5 – сигнал “Main contactor feedback”; бит 6 – сигнал “Interlock”; бит 7 – сигнал “Fuse 1”; бит 8 – сигнал “Fuse 2”; бит 9 – сигнал “Fuse 3”; бит 10 – сигнал “Circuit breaker status”; бит 11 – сигнал “Balancing request”; бит 12 – сигнал “Close Main contactor”; бит 13 – сигнал “Close External 1”; биты 14-15 – не используются. | U16 | |
| 6-7 | Не используются | U16 |