Вопрос

Одинаково ли напряжение в модуле управления и в аккумуляторе?

Одинаковы ли напряжение модуля управления (из режима OBD 01 PID 42) и напряжение аккумулятора? Если нет, то какова связь между ними?
Почему максимальное значение напряжения модуля управления (из режима OBD 01 PID 42) составляет 65,535 В, в то время как максимальное напряжение аккумулятора в автомобиле может быть 14 В?



Перевод вопроса с Mechanics Stack Exchange
Лицензия: CC BY-SA (2.5–4.0)
Оригинальный вопрос: https://mechanics.stackexchange.com/questions/24175/is-control-module-voltage-and-battery-voltage-the-same

12 Комментариев

  1. Напряжение модуля управления — это напряжение аккумулятора за вычетом падения напряжения в проводке между аккумулятором и ЭБУ. 65 535 — это полный 16-битный регистр. ЭБУ, скорее всего, будет работать с целыми числами (вычисления выполняются быстрее), но преобразует конечный результат вычислений для OBD в формат с «плавающей запятой» или «реальный» формат (числа, в которых может использоваться десятичная точка).



    Причина, по которой максимальное значение не равно 65535, 6553,5 или 655,35, заключается в том, что при размещении десятичной точки на два разряда левее достигается наибольшая точность на этапе целочисленных вычислений, при этом слева от десятичной точки остаётся достаточно разрядов для отображения всех возможных значений. По сути, это позволяет ЭБУ работать с точностью до трёх знаков после запятой в целых числах. Возможно, это не так важно для напряжения аккумулятора, но я предполагаю, что принцип тот же.



    Возможно, не было возможности искусственно установить максимальное значение меньше 65 535, но даже если бы такая возможность была, я не вижу в этом смысла.


  1. Похоже, проблема во входящем сигнале.



    Если только ваш автомобиль не оснащён флюидным конденсатором, 65 В на аккумуляторе — это слишком много. Насколько мне известно, даже в тяжёлых грузовиках такое напряжение не используется.



    65535 — это максимальное 16-битное целое число без знака.



    Судя по странице OBD-II в Википедии, формула, используемая PID-регулятором OBD-II в соответствии со стандартом SAE J1979, выглядит следующим образом:



    ( A * 256 + B ) / 1000


    Где A — первые два байта, B — следующие два байта. Если A и B равны 255 (то есть 11111111 в двоичном формате), вы получите максимально возможное напряжение — 65,535 В






    Если этот результат получен с помощью симулятора, я бы возложил вину на него. Если это сигнал, поступающий от реального автомобиля, я бы проверил, нет ли короткого замыкания в ЭБУ (хотя я не уверен). Убедитесь, что вы запрашиваете данные по правильному адресу, чтобы исключить эту возможность как причину необычного напряжения.



    Напряжение модуля управления — это напряжение, подаваемое на ЭБУ. Это не напряжение аккумулятора, но обычно оно достаточно близко к нему, когда автомобиль работает.


  1. Я думаю, что то, что вы видите, — это просто особенность работы компьютеров. Число, которое вы указали, — это просто 65535 с десятичной точкой. Это особое число для компьютеров — это наибольшее значение, которое может храниться в 16-битном (2 байта) целом числе. Проще говоря, это наибольшее значение, которое может быть возвращено для этого конкретного измерения, из-за компьютерной переменной, которую они решили использовать. Это результат программирования — они не ожидают, что напряжение когда-либо достигнет 65 вольт. Если бы это значение могло быть положительным или отрицательным, максимальное значение могло бы составлять 32 767.



    Ещё одно число, которое вы часто будете встречать, — 255. Это максимальное значение 8-битного (одного байта) числа без знака. Если значение может быть положительным или отрицательным, максимальное значение равно 127.


  1. Не то чтобы автомобильное программное обеспечение было таким уж хорошим. Кстати, это отличный ответ. :)
  1. @immibis, ты меня раскусил — я уже «подписался» и думал о -128. Спасибо.
  1. Обычно 127 будет максимальным значением 8-битного целого числа со знаком.
  1. Посмотрите мой ответ. Кажется, я кое-что понял...
  1. @Paulster2 Я обновил свой ответ, чтобы ответить на ваши вопросы.
  1. Когда двигатель работает, напряжение должно соответствовать выходному напряжению генератора/регулятора напряжения (которое также является напряжением для зарядки аккумулятора). Когда двигатель не работает, напряжение соответствует напряжению аккумулятора.



    Я могу только предполагать, почему диапазон напряжения такой широкий. Нестабилизированное выходное напряжение генератора может превышать 48 В, так что это может быть полезным диагностическим параметром. Или же это может быть просто артефакт цифрового кодирования, когда диапазон значений превышает необходимый.


  1. Если напряжение на выходе генератора достигает 65+ В постоянного тока, как он отслеживает напряжение генератора? Это может мгновенно вывести аккумулятор из строя. Максимальное напряжение на выходе генератора в работающем автомобиле должно составлять ~14 В постоянного тока. Если оно будет выше, аккумулятор выйдет из строя.
  1. Если бы максимальное значение составляло 99,999, то логика была бы довольно очевидной (5 цифр, запятая после второй цифры). 65535 в двоичной системе — это то же самое, что 99999 в десятичной.
  1. Для ясности: вы действительно получаете 65,535 В в качестве показаний или просто интересуетесь, почему максимально возможное показание равно именно этому числу?
Вы уже ответили на этот вопрос