Режим OBD-II и PIDs, специально разработанные для электромобилей?
Я работаю над разработкой протокола связи CAN для электромобиля. Мне интересно, знает ли кто-нибудь, существует ли стандартный режим MODE и PID для сообщений OBD-II, передаваемых по шине CAN в электромобилях (PEV)? Как указано в стандартах SAE J1979, ISO-15031-5 и ISO-15765-4 для гибридных автомобилей и автомобилей с двигателем внутреннего сгорания?
Все ресурсы, которые я нашёл в интернете, утверждают, что обычно информация о транспортном средстве для межмодульной связи не передаётся в формате OBD-II (ISO-15765-4) по шине CAN, за исключением случаев, когда это требуется для обслуживания/диагностики. Как правило, электронные блоки управления в автомобиле не поддерживают сообщения OBD-II CAN, за исключением случаев, когда им необходимо предоставить информацию диагностическому регистратору/устройству. Сообщения OBD-II в автомобилях (легких и тяжелых) обычно передаются по автомобильной шине CAN (в моем случае CAN2.0b/ISO-11898-2) в специальных форматах сообщений CAN (ISO-15765). Моя единственная проблема заключается в том, что мне нужно использовать эти сообщения OBD-II через CAN (ISO-15765-4) для моей приборной панели, работающей на Android. В Android нет встроенной поддержки CAN, и я пытаюсь использовать библиотеку C/C++ с открытым исходным кодом от OpenXC для чтения сообщений CAN в стиле OBD-II и преобразования их в формат JSON, удобный для Android (насколько я понимаю).
Мы будем признательны за любые советы, ресурсы и информацию о том, как использовать CAN-сообщения в стиле OBD-II для электромобилей.
Перевод вопроса с Mechanics Stack Exchange
Лицензия: CC BY-SA (2.5–4.0)
Оригинальный вопрос: https://mechanics.stackexchange.com/questions/43464/obd-ii-mode-and-pids-specifically-used-for-electric-vehicles
Похоже, что все (многие участники этого форума) путают, что такое OBD и что такое CAN.
OBDII — это стандарт, принятый в США в 1996 году. Этот стандарт обязателен для исполнения и включает в себя три пункта. Во-первых, автомобиль должен предоставлять стандартный список данных (PIDs). Во-вторых, автомобиль должен уметь обнаруживать и предоставлять стандартный список кодов неисправностей (DTC). В-третьих, разъём под приборной панелью, к которому подключается устройство, должен быть стандартным для всех автомобилей. OBDII включает в себя пять протоколов связи.
CAN — это протокол связи, и этим всё сказано. CAN — один из пяти протоколов, встроенных в OBDII. CAN стал обязательным протоколом связи в 2008 году. Любое транспортное средство, выпущенное после 2008 года, должно быть способно передавать обязательные данные и обязательные коды неисправностей по протоколу CAN. Кроме того, CAN должен быть подключен к стандартному разъёму в специально отведённом для этого месте.
С электромобилями всё сложнее. Для соответствия стандарту OBDII 90 % данных и кодов неисправностей неприменимы. Скорость автомобиля и положение дроссельной заслонки — единственные первичные идентификаторы, которые приходят мне на ум. То же самое с кодами неисправностей: вам нужно определить неисправность для скорости автомобиля и положения дроссельной заслонки.