У меня есть микроконтроллер, взаимодействующий с нормально разомкнутым автомобильным реле на стороне высокого напряжения через P-MOSFET. Когда микроконтроллер закрывает исток и сток P-MOSFET (путем отправки НИЗКОГО сигнала на затвор, в результате чего Vgs <0), автоматическое реле получает питание и замыкает отдельную цепь высокого усилителя (не имеет отношения к этому вопросу).
Автомобильное реле не имеет обратноходового диода, а это означает, что мне приходится иметь дело с всплеском обратного напряжения между реле и P-MOSFET.
Следуя этому руководству , я получил эту рабочую схему:
Примечания
Что было бы лучшим способом предотвратить всплеск на выводе D MOSFET при размыкании реле?
PS: я очень новичок в такого рода проектах, поэтому, если вы обнаружите что-то, что явно не работает с приведенной выше настройкой, пожалуйста, сообщите! Для первого прототипа у меня было реле вместо MOSFET, и это работало нормально, но я хочу а) уменьшить размер схемы, используя транзисторы, и б) узнать больше об электронике, опробовав различные компоненты.
Примечание. Хотя первоначальный вопрос был о том, как справиться с обратным током, выходящим из реле JD1912, в итоге я построил совершенно другую схему (см. Принятый ответ).
В примечаниях по применению, на которые вы ссылались, я обнаружил, что единственное, что может касаться защиты стока, — это фиксирующие диоды между затвором и стоком. Однако на самом деле они предназначены для смягчения больших скачков напряжения, которые в противном случае могут привести к нарушению изоляции затвора. На самом деле, я бы предположил, что эти зажимы даже подвергают все, что управляет затвором, воздействию экстремальных напряжений стока, генерируемых катушкой реле. В вашем случае это хилый, хрупкий микроконтроллер. Я не считаю эти устройства хорошим выбором для вашего приложения.
Вам все еще нужно как-то погасить эти скачки напряжения на катушке.
Ваш модуль явно имеет доступ к аккумулятору +12В, заземлению (шасси, аккумулятор 0В) и верхнему концу катушки реле. Я не понимаю, почему вы не можете установить диод (внутри вашего собственного модуля) между землей и соединением катушки реле. Он по-прежнему будет эффективно находиться на катушке реле, даже если физически он может быть расположен далеко от фактического реле. Может быть даже аргумент в пользу установки диода рядом с вещами, которые он пытается защитить:
Каким бы ни было это «3Vout» на микроконтроллере, вы уверены, что хотите, чтобы он был подключен к +12V? Кажется глупым подключать что-либо в микроконтроллере к чему-то большему, чем его собственное питание, хотя я могу что-то упустить.
Наконец, выход микроконтроллера должен быть с открытым стоком или с высоким импедансом, чтобы позволить подтягивающему резистору 10 кОм поднять напряжение затвора полевого транзистора до 12 В. В противном случае вы не сможете выключить полевой транзистор (и реле). Это проклятие транзисторного переключателя верхнего плеча.
В свете ваших комментариев и ссылки на видео, которую вы добавили к вопросу, вот дополнение:
Упомянутое вами видео косвенно ссылается на необходимость 12 В для отключения полевого транзистора - он говорит, что для управления этим переключателем MOSFET с P-каналом высокого уровня с помощью Arduino требуется изолированный источник питания, и что вы должны подключить источник питания + 5 В Arduino. и питание двигателя +12 В вместе, чтобы «поднять» логические выходы Arduino до уровней, требуемых затвором MOSFET.
Однако модуль преобразователя «Риоранд», как и большинство, использующих LM2596, вероятно, имеет клеммы -Vi и -Vo, соединенные вместе, что означает, что он не изолирован .
Таким образом, в вашей схеме вы неявно подключаете землю 0 В Arduino к земле автомобиля через понижающий преобразователь, что, на мой взгляд, правильно. Однако это означает, что цифровые выходы Arduino не могут достичь уровня +12 В, необходимого для выключения полевого транзистора, и вы должны каким-то образом преобразовать выходной сигнал от 0 до 5 В от Arduino в сигнал от 0 до 12 В для затвора MOSFET.
И вы должны отказаться от этой чепухи «3Vout to +12V».
Это несложно сделать с другим транзистором, как продемонстрировал Спехро Пефхани в своем ответе, хотя я думаю, что его значение для R5 (и, вероятно, R6) излишне низкое в этом приложении. Для полноты я включаю сюда адаптацию использования BJT Спехро Пефхани для выполнения перевода этого уровня:
Чтобы понять, зачем все это необходимо, сначала поймите, что затвор MOSFET Q1 должен быть около +12 В, чтобы его отключить. Это означает, что любой источник напряжения, управляющий затвором, должен выдавать +12 В.
Если, как показано в видео, положительный источник питания Arduino подключен к положительному выводу батареи, +12 В, и вам каким-то образом удается подать на заземляющий контакт Arduino напряжение на 5 В ниже этого (т.е. +7 В), то его цифровые выходные уровни равны фактически +12 В и +7 В, которые отлично подходят для MOSFET.
Однако вы не можете получить +7 В от LM2596 (по крайней мере, не так, как вы можете использовать здесь). Он не может обеспечить 5 В ниже +12 В, он может дать вам только 5 В выше 0 В. Это то, что подразумевается под «не изолированностью». Таким образом, вы вынуждены иметь общую землю между транспортным средством (шасси, отрицательный аккумулятор) и Arduino, чьи выходы, следовательно, будут 0 В или + 5 В, а не + 7 В или + 12 В.
Вам нужен сигнал 12 В, чтобы выключить MOSFET, поэтому функция Q2 заключается в преобразовании (и инвертировании) выходных уровней Arduino 0 В и + 5 В в + 12 В и 0 В соответственно.
12В подключается к выходу регулятора 3В. Это мгновенно уничтожит MCU.
Вы не можете переключать p-канальный МОП-транзистор 12 В с выходом 3 В. Он будет оставаться включенным все время (поскольку Vgs = -9 В и должно быть намного ближе к нулю). Итак, вам понадобится драйвер верхнего плеча, по крайней мере, дополнительный транзистор (NPN или N-канальный МОП-транзистор) для управления p-каналом. Или один с открытым стоком, способный безопасно >> 12 В, но вы его не найдете.
Вот, с форума Arduino , стандартный вид high-side драйвера, подходящий (только) для приложений с медленным переключением и имеющий обратноходовой диод на нагрузке.
Там, где они показали подключенную шину 3,3 В, вы подключаете выход MCU. Дополнительные детали также снижают вероятность того, что ваш микроконтроллер выйдет из строя из-за контакта с 12 В из-за отказа полевого МОП-транзистора и т. д.
Энди ака
Только я
предвзятый бит
Только я
предвзятый бит
Только я
предвзятый бит
Только я
предвзятый бит
Винни