Mosfet или МОП-транзистор это такая штука для управления нагрузкой. Типа как реле, но лучше
Бывают N и P типов. Картинка поможет:
Картинку надо запомнить чтобы потом не путаться в документации. Да, и N-канальные круче как правило
NPN mosfet подключение к arduino
Тут все без гемора. Вот пара вариантов подключения:
Если надо еще и плавно включать/выключать лампочку, либо не на всю мощность, а только на половину например, можно из ардуино пищать шимом, а между затвором и истоком включить еще конденсатор микрофарад на 300. Это нужно чтобы открыть мосфет на половину.. Однако это подойдет только для маломощной лампочки, потому как полуоткрытый мосфет имеет некислое внутреннее сопротивление и греется как утюг.
В эту схему подойдет к примеру мосфет h6n03l. Но тут есть нюанс в выборе резюков. Тот, который между ардуино и gate – чем больше сопротивление, тем меньше ток на ноге ардуино и меньше вероятность что она задымится. И чем больше сопротивление тем медленнее открывается мосфет. Кароч 150 ом норм для ардуино (по закону ома I = E / R, I = 5 / 150 = 0.033 А — это 33 миллиампера, норм). Зачем он вообще нужен? Дело в том, что затвор (gate) у полевика имеет определенную емкость и является в какой-то мере конденсатором. Так что в момент переключения через затвор проходят большие токи, которые может не выдержать ардуина. Для этого и нужен резистор между gate и пином.
А второй 10 кОм типа подтягивающий резистор – нужен чтобы держать мосфет закрытым и нагрузку выключенной пока порт ардуины в неопределенном состоянии например при загрузке (так называемое Z-состояние).
Но у этой схемы есть косяк – она медленновата. На переключение уйдет 600ns что подходит не для всех задач. Вот фронт и спад.
Желтая – выход с мосфета, зелено-бирюзово-светло-голубая – выход с ШИМ ардуино. Желтая не успевает. Для решения этой проблемы надо поставить парочку транзисторов как тут предлагают http://joost.damad.be/2012/09/dimming-12v-led-strip-with-mosfet-and.html
Но это нужно далеко не всегда и как правило достаточно первой схемы. И кстати есть вариант получше — про него в конце статьи.
PNP mosfet arduino
Тут чутка сложнее
Если нам надо на нагрузку подать 5 вольт:
- R1 ограничивает ток на затворе чтобы ардуинка не сломалась
- R2 подтягивает порт на землю чтобы не было ложных срабатываний
- D1 диод шотки чтобы не спалить все – он нужен только если нагрузка имеет большую индуктивность – например реле или мотор или еще что-то, где есть много намотанной проволоки. Кстати для NPN мосфета он тоже нужен. А на переменном токе не нужен, а то задымится)
Если на мотор или лампочку надо 12 вольт то все немного сложнее. Чтобы открыть мосфет нам надо подать 12 вольт на gate, а при таком варианте наш ардуино задымится. Надо еще один транзистор так:
Тут Q1 – биполярный транзистор – он то и включает 12 вольт на gate Q2, а R1 нужен чтобы ограничить ток чтобы ардуино опять таки не задымилась. Работает все так:
- подаем с ардуино high – q1 начинает проводить ток с коллектора на эмиттер и 12 вольт утекает не в gate q2, а на землю. q2 включает мотор
- подаем с ардуино low – q1 закрыт и не пропускает ток, 12 вольт через резистор подаются на gate q2, моторчик не крутится. все просто. резистор r2 нужен чтобы ограничить ток q1 и q2 чтобы он не задымились
Управлять больше чем 12 вольт можно, например 24 вольтами, если q1 выдержит. Чтобы наверняка можно добавить диод D2:
Рулим 220 вольтами с помощью мосфета
Мосфетом не совсем удобно рулить 220 вольтами. Ну всяким извращенцам это нравится Вот пример схемы:
Эта схема диммера для лампочек, с помощью ШИМ можно менять яркость. Подробнее тут http://www.learningelectronics.net/circuits/dimmer-with-mosfet.html
А для нормального управления нагрузкой в 220 вольт вместо мосфетов можно использовать:
- симисторы типа bt131. Если нужна плавная регулировка света, то нужно делать что-то вроде этого:
Вкратце из за того, что напряжение переменное, надо будет с помощью прерывания отлавливать момент когда лучше всего открыть симистор, и сделать из обычной фазы что-то вроде этого:
Подробнее тут http://www.cyber-place.ru/showthread.php?t=525 - транзисторы дарлингтона
- КР1182ПМ1 (не особо надежно, по отзывам дохнут они)
Подключение Mosfet к Ардуино по-хорошему
Для таких вещей люди специально придумали специальные драйверы типа этих http://voltmaster-samara.ru/catalog/drajvery-mop-i-igbt-tranzistorov
Тут уж народ издевается над МОП транзисторами как хочет
Суть в том, что драйвер нужен как раз для согласования пяти вольт с выводов ардуино (а также других микроконтроллеров) с уровнями, необходимыми для управления затворами мосфетов.
На картинке первые две схемы а) и б) не очень, так как из-за кривых рук разработчика все может задымится. Зато вторые норм.
И кстати если надо использовать ШИМ — то лучше выбрать высокоскоростной драйвер типа TC4420.
Подбор MOSFET для подключения к ардуино
Качаем даташит, например для FQP30N06. Первое на что надо обратить внимание это ток и вольты:
Второе — определить по такой вот диаграмме падение напряжения. Например если мы рулим лампочкой с потреблением 2А, а для управления используем 5 вольт на gate:
Падение напряжения будет где-то 5,4 вольта и нам лучше найти что нибудь менее нагревательное
Третье — надо если используется ШИМ — время открытия и закрытия:
Если прокосячить с частотой, дать большую чем он может вытянуть, то транзюк перегреется.
Конь_в_пальто
Отличная статья! Но почему ничего не сказано про подключение мосфетов напрямую к ногам МК без резисторов? Ведь есть транзисторы с очень маленьким зарядом затвора. Какой максимальный заряд затвора выдержит вывод ардуино??
noname
http://easyelectronics.ru/img/starters/MOSFET/irl630-oc.g
чертим линию 2А, пересекаем график и вниз.
Igor
Вы хоть проверяли схему с P-channel транзюком при питании 24V? Она ж заведомо не рабочая и спалит все что может!
alex
Отличная статья! Как раз то что надо новичку.
А еще надо помнить про Gate Threshold Voltage. Если выход у ардуино 5V то подойдет вариант
Gate Threshold Voltage MIN=2V MAX=4V.
И далее от этого зависит максимальный ток.
Например IRF3205 при 5В на затворе может пропустить ток не выше 10А.
Shundrov
А разве бывают MOSFET PNP или NPN? Вроде всегда было p-channel или n-channel
noname
Ошибка в ссылке, надо так
http://easyelectronics.ru/img/starters/MOSFET/irl630-oc.gif
TerminX
Почитал. Поржал. К примеру в конце а» и б» не очень из-за… Ну так кто разработчик то? Тот кто драйвер придумал? Или тот кто его юзает? Первые две подходят к IR2210. Но это драйвер полумоста или ВЕРХНЕГО и нижнего ключа. Там необходимо повышенное напряжение для верхнего ключа, с так называемым бустрепом(по мне так просто конденсаторный удвоитель) Беда в том что логический уровень ir зависит от ЕЁ питания! И запитав от 12 В мы получим пшик. А 4420 автора имеет один вход, но может дёргать только нижний ключ 🙁 и соответствует схеме В и Г…
Щас хочу преобразователь(повышатель) от АКБ с ардуинкой дружить. А качать мощные ключи чем-до сих пор загадка. Проще повторитель на транзисторах а потом IRку поставить. Её хоть не раз разбирали…