Перейти к содержанию
    

Согласование микроконтроллера с автомобильными датчиками

Приветствую!

 

Есть желание с одного автомобиля поснимать характеристики (напряжение аккумулятора, уровень топлива, уровень омывайки в бачке, температура охлаждающей жидкости и т.д.). Автомобиль достаточно не новый (Audi 80 B3). Поэтому никаких CAN-шин там нет. А вопрос, собственно вот в чем.

Какие основные типы сигналов с датчиков применяются в автомобилях? Судя по схемам в Интернете:

1. Аналоговые. В ЭБУ или приборную панель просто заходят аналоговые сигналы с датчиков (например, датчик лямбда, датчик уровня топлива).

2. Цифровые, типа "да/нет". Либо есть 12В (в общем случае x вольт), либо их нет.

3. Цифровые импульсные. Например, выход с датчика скорости.

 

Ног микроконтроллера довольно много, поэтому хотелось бы на плате заложить некий "стратегический запас", который можно задействовать при желании. То есть, если мне захочется измерять уровень топлива, я настраиваю одну из входных линий АЦП и завожу туда сигнал. Если нужно оцифровать скорость - мне нужен вход, подключенный к таймеру МК. Или, например, если нужен датчик тока через лампочку - задействую обычный вход GPIO МК.

 

Дискретные "медленные" входы я протащу через обычные оптроны, чтобы не пожечь лапки МК всплесками по длинным проводам от бортсети.

Дискретные "быстрые" входы (импульсные) я протащу через быстродействующие оптроны, чтобы не вносились существенные задержки в исследуемый цифровой сигнал.

А вот как быть с аналоговыми входами? В частности, напряжение с аккумулятора измерить. Ведь при повороте ключа зажигания по сети иголки (предполагаю) порядка сотен вольт проскакивают. Резисторный делитель + TVS-сборка с ограничителем?

Решение нужно максимально надежное, максимально дешевое:to_take_umbrage:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все входы одинаковые — ограничитель, порядка 100 В, и с него резистор на вход МК.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

35 минут назад, Plain сказал:

Все входы одинаковые — ограничитель, порядка 100 В, и с него резистор на вход МК.

Я так понимаю, что вначале еще резисторы нужны (R1:R2) для согласования напряжений.

image.gif

 

Только не совсем понятно, почему R3 после ограничителя, и каков его номинал (приблизительно - омы - сотни килоом, мегаомы)? И почему на такое достаточно высокое напряжение ограничитель?

Ну вот допустим. Есть у нас датчик с 12В выходом. Резисторами R1:R2 напряжение с его выхода делится, чтобы получить напряжение в 3.3В, допустимое для МК. Вход МК имеет большое входное сопротивление, поэтому (как я полагаю), чтобы на R3 мало упало, нужно сделать его сопротивление на порядок меньше входного сопротивления лапки МК.

Теперь щелкнуло что-то на проводе, пришла помеха амплитудой в 400В (утрированно, но вдруг?). Значит на ограничителе будет 110В. Он откроется, через него потечет ток в землю. Вот тут мне не совсем ясно, почему тогда R3 нужно ставить после ограничителя, а не до него (чтобы ограничить ток через него). И опять же, почему ограничитель на 100В, а не на 20, например.

Полагаю, для входов АЦП такая же схема?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Почитайте любую вменяемую официальную бумагу на любую цифровую ИС, там указан предельный ток входов — именно заведомо меньший этого тока ток и задаёт резистор, типично 10 мА, т.е. 15 кОм для SMAJ90A, а БП МК, соответственно, должен уметь поглотить всю лишнюю энергию, поступившую в линию питания с цепей защиты всех входов в худшем случае, т.е. при обрыве аккумулятора. Для аналоговых входов соответственно добавить второй резистор на общий провод, например, 12 кОм / 3 кОм.

 

Такие простые входы разумеется будут всегда потреблять ток от отличных от диапазона МК сигналов. Избавиться от этого недостатка можно посредством диодных развязок, для них требуется отрицательное питание и на порядок больше деталей.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 hours ago, Arlleex said:

Есть желание с одного автомобиля поснимать характеристики (напряжение аккумулятора, уровень топлива, уровень омывайки в бачке, температура охлаждающей жидкости и т.д.). Автомобиль достаточно не новый (Audi 80 B3).

 

Audi 80 изнутри ни разу не видел, но из общих соображений:

- аккумулятор - аналоговый сигнал 10..14 вольт

- уровень топлива - аналоговый сигнал 0..14 вольт

- уровень омывайки - дискретный сигнал 0..12 вольт

- датчик тепературы - что-то вроде переменного резистора. Запитывают его от генератора тока, или просто делают делитель - никогда не интересовался.

- датчик оборотов - либо датчик холла с 5 (12) вольтовыми импульсами (десятки импульсов на оборот), либо индуктивный датчик (см. в гугле "ДПКВ осциллограмма")

- лямбда зонд - синусоида с частотой единицы герц и амплитудой в несколько сотен милливольт

- сигнал оборотов с катушки зажигания или форсунки. Пакостный сигнал с ярко выраженными "индуктивными" выбросами. Подробности на картинках "катушка зажигания осциллограмма".

 

Опторазвязок никогда нигде не видел. Делитель, защита, может ещё небольшой RC-фильтр.

 

12 hours ago, Arlleex said:

Поэтому никаких CAN-шин там нет

Если есть хоть какой-то мозг, скорее всего, есть и диагностика, и, скорее всего, это однопроводной 12-вольтовый уарт. Какой стандарт был в те лохматые годы, не интересовался...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для аналоговой развязки HCPL7800 усилитель. 

Аналоговую развязку можно реализовать на двойном оптроне и по одному ОУ с каждой стороны.

Оптрон двойной для компенсации нелинейности передачи сигнала его самого.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Изоляция нужна в случае разности потенциалов, в автомобиле такого нет, только помехи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 minutes ago, Plain said:

Изоляция нужна в случае разности потенциалов, в автомобиле такого нет, только помехи.

? тогда на каждый вход контроллера двойной диодный ограничитель BAV99  (1us 4.5 A) или подобный ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

11 часов назад, Plain сказал:

Почитайте любую вменяемую официальную бумагу на любую цифровую ИС, там указан предельный ток входов

Беру даташит на STM32F429.

На странице 135 есть характеристики IO-портов.

Есть такой параметр как входной ток утечки. Полагаю, это ток, который при приложенном рабочем напряжении будет втекать/вытекать по входу. По 3.3V входам этот параметр равен ±1мкА.

Получается, входное сопротивление 3.3В/1мкА = 3.3МОм.

А вот еще табличка чуть выше в документации:

image.png.8c673d86f0d74178e0cbf7a762e59cac.png

 

Ну вот, собственно, какой из этих входных токов я не должен превысить и должен ограничить резистором?:unknw:

 

А можно по теории ликбез небольшой?:blush:

В общем, есть, допустим, схема (надеюсь, я правильно нарисовал то, что предлагает уважаемый Plain):

asdf.gif

 

Ради примера, Uвх. ожидается от 0 до 3.3В, но линия длинная, с возможными помехами от всяких щеток, генераторов и т.д.

Допустим, ограничитель у нас на 100В, резистор на 20кОм, конденсатор 1мкФ.

Для примера, пусть мы словили импульс в 400В амплитудой и длительностью в пол миллисекунды. Значит, ограничитель отрежет уровень входного напряжения на 100В, а ток, созданный остальными 300В, превратится в тепло на ограничителе. Значит у нас есть напряжение в 100В на левом плече резистора. Пренебрегая сопротивлением утечки в пару микроампер на входе микросхемы, в цепи резистор-верхний диод VD2-линия питания +3.3В потечет ток заряда суммарной емкости C по этой шине питания. Но, поскольку импульс в пол миллисекунды, нужно подобрать значение сопротивления резистора и емкость конденсатора так, чтобы за это время он не успел существенно зарядиться и повысить напряжение на линии +3.3В. Все верно?

Тогда задача сводится к выбору ограничителя и расчету резистора R при известной (приблизительно) суммарной емкости полигона питания +3.3В.

Но ведь получается, что для простых медленных входов этот конденсатор можно поставить и после резистора, перед входом в микросхему, на землю. Или нет?

А для понижения 12В в 3.3В делать делитель после ограничителя, ровно как и для АЦП-входов.

Вроде начинаю соображать тогда, поправьте, если все-таки не прав:smile:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

36 минут назад, esaulenka сказал:

Audi 80 изнутри ни разу не видел, но из общих соображений:

Спасибо, уже что-то! Некоторые моменты буду выпытывать уже на самой машине:smile:

 

2 минуты назад, Plain сказал:

Изоляция нужна в случае разности потенциалов, в автомобиле такого нет, только помехи.

А что подразумевается под разностью потенциалов? Если у меня два девайса, допустим, один выдает сигналы от 0 до 100В, а другой работает в логике 3.3В, это считается условием необходимости применения изоляции? Или это в системах, где выравнивать земли соединением куска провода запрещено по тем или иным соображениям?

 

P.S. Иногда ставят еще симметричные ограничители для цепей с двухполярным питанием. Причем интересные обозначения - они разные (то катодами соединены, то анодами):

image.png.419652b078f0f6090b5928ba7db8d388.png 

 

А в автомобиле не может быть помех отрицательной амплитуды?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ещё рекомендую Вам почитать соседнюю ветку, специально посвящённую этим проблемам. Там есть что почитать, ибо аналогичные вопросы задаются регулярно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, Arlleex said:

. . . А в автомобиле не может быть помех отрицательной амплитуды?

Там большая часть "потребителей" - индуктивные и мощные по току. Одна система зажигания чего стОи. Так что расчитывайте что "много и всего".

К томуже не напрямую, по проводам, а "наводкой".Если машина, мягко говоря, не новая - то многие стандарты по категории минимизации помех-излучений в ней "не воплощены".  К примеру, делать напрямую вход аппаратного прерывания от неразвязанного и нефильтрованного сенсора с длинной линией связи, IMHO, "контропродуктивно" :)

Дополнительно к встроенной в контроллер паре диодов, добавьте внешние BAV - тогда токи помехи-перегрузки будут протекать не через контроллер, в том или ином виде, а через внешний ограничитель. Если вход гарантированно-чистый по помехам - можно эту деталь не впаивать, но площадку под нее я бы поставил на все входы.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, Arlleex сказал:

Допустим,

Здесь нет причин гадать — берёте ГОСТ 28751 и читаете там про импульс №5, при котором обсуждаемый ограничитель естественно не должен работать, и который при резисторе 12 кОм в среднем даст втекающий во вход МК ток 2,5 мА в течение 400 мс, и если этому МК, и его обвязке на той же линии питания, на это время захочется побыть микропотребляющими, предположительный конденсатор 1 мкФ питания этого добра зарядится до амплитуды импульса №5 — ну т.е. он конечно не зарядится, а просто МК сдохнет при гораздо меньшем напряжении питания. Таким образом, шунтовый стабилизатор питания в такой схеме жизненно необходим.

 

1 час назад, Arlleex сказал:

что подразумевается под разностью потенциалов?

Постоянная, между общими проводами источника и приёмника сигнала. Переменная называется синфазной помехой. В автомобиле общий провод один.

 

1 час назад, Arlleex сказал:

Иногда ставят еще симметричные ограничители

Именно такие в автоэлектронику и ставят, потому что человечество до сих пор разрешает переполюсовывать автоаккумулятор. Если Вы решите к этой развлекухе присоединиться, то Вам такие тоже понадобятся, а не те однонаправленные, о которых до сих пор шла речь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 minutes ago, Plain said:

, и который при резисторе 12 кОм в среднем даст втекающий во вход МК ток 2,5 мА в течение 400 мс, и если этому МК, и его обвязке на той же линии питания, на это время захочется побыть микропотребляющими, предположительный конденсатор 1 мкФ питания этого добра зарядится до амплитуды импульса №5 — ну т.е. он конечно не зарядится, а просто МК сдохнет при гораздо меньшем напряжении питания. Таким образом, шунтовый стабилизатор питания в такой схеме жизненно необходим.

Ставишь резистор в делителе не 12 кОм, а 200кОм и ограничительный стабилитрон на питание МК если уж совсем хочется защититься

10 minutes ago, Plain said:

. Если Вы решите к этой развлекухе присоединиться, то Вам такие тоже понадобятся, а не те однонаправленные, о которых до сих пор шла речь.

Никаких проблем с однонаправленными - в другую сторону они ограничивают напряжение на уровне 0,7В что гораздо лучше чем -3...6В которые дают двунаправленные стабилитроны. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Только что, k155la3 сказал:

можно эту деталь не впаивать, но площадку под нее я бы поставил на все входы.

Разумеется, я обычно так и делаю:yes3:

 

Только что, Plain сказал:

Таким образом, шунтовый стабилизатор питания в такой схеме жизненно необходим.

Ну я как подумал - 12В бортсети я завожу на какой-нибудь широкодиапазонный LDO или DC/DC с выходным напряжением 3.3В. Или тут еще помимо этого добра надо ставить некий "шунтовый стабилизатор" (не гуглится, к сожалению, я так понял - это некий параллельный стабилизатор)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...