Чтение VIN-номера через OBD-II (от Citroen, Peugeot, Fiat)
Я создал простое приложение для Android, которое считывает основные параметры автомобиля через OBD-II, такие как номер VIN и напряжение аккумулятора. Это работает хорошо, но у меня проблемы с получением номера VIN из не немецких / неамериканских автомобилей. Так, например, в случае с Citroen или Fiat нельзя получить номер VIN, а возвращаемое значение равно NULL или UNKNOWN.
Есть идеи как это решить? Я использую команду 09 02 (elm327).
Спасибо за помощь, Мат.
1 ответ
Не все автомобили поддерживают команду 0902 (режим 9 PID 2) для получения VIN. Опционально поддерживается. Если вы сначала отправите 0900, это обеспечит "битовую карту" поддерживаемых идентификаторов PID для режима 9 на этом ECU.
0902 для J1979. Это типично в США для получения VIN, поскольку это требуется по закону. Таким образом, европейские производители не всегда предоставляют "стандартные" услуги OBD.
ISO27145 (WWHOBD) предназначен для стандартизации OBD во всем мире и использует подмножество службы 22 для получения информации OBD. Вместо службы 01 и 09 - 22F4 и 22F8.
ISO14229 также имеет ссылку на VIN, 22F190, которая отличается от двух упомянутых выше. Я смог вытащить VIN для Fiat, используя этот стандарт.