roboforum.ru

Технический форум по робототехнике.

arduino - как правильно подключить мосфет и нагрузку

arduino - как правильно подключить мосфет и нагрузку

d00m » 24 апр 2017, 23:54

всем привет.
мне нужно чтобы по команде в коде для arduino подавалось питание на внешний девайс (лазерный дальномер).
для этого вроде нужно использовать мосфет.
купил такой вот - n-канальный IRLZ44N. он вроде "логический" - то есть его можно использовать с МК.
нагуглил вот такую схему подключения:
Изображение
подключаю по второму варианту - Активная нагрузка.

получается мой мосфет "разрывает" минус в цепи питания, а плюс остается все время подключен.
и так как на моем дальномере еще есть UART - то к МК подключены еще два контакта - RX и TX - то даже при отключеном мосфете (разорванном минусе) все равно дальномер продолжает потреблять какойто ток..
похоже мне нужно купить другой мосфет - p-канальный, который будет разрывать плюс в цепи питания.
это должно решить мою проблему - так ведь?
но вот какой лучше купить - я уже не соображу.
прошу подсказать, чтото из ассортимента chipdip.ru

вот нашел у себя такой еще мосфет - https://www.chipdip.ru/product/2sj306
он вроде p-канальный, но не уверен, что он заведется от "логического" напряжения с цифровой ноги МК (3.3v)

и самое главное - не могу найти схему по которой подключать p-канальный мосфет, тут тоже нужна подсказка.
спасибо.

Re: arduino - как правильно подключить мосфет и нагрузку

RootAdmin » 25 апр 2017, 00:09

В зависимости от питания дальномера. Если то же напряжение что и контроллер - то резистора достаточно. Если выше - то плюс еще биполярный транзистор инвертором.

Re: arduino - как правильно подключить мосфет и нагрузку

d00m » 25 апр 2017, 00:17

да, питание у него тоже 3 вольта.

только я вот что еще подумал - ведь при испольовании N-канального мосфета я делаю в коде
Код: Выделить всёРазвернуть
 digitalWrite(LASER_PWR, HIGH);

и мосфет "замыкает" GND цепь, так?
и чтобы выключить - делаю
Код: Выделить всёРазвернуть
 digitalWrite(LASER_PWR, LOW);


а вот при использовании P-канального мне прийдется для включения V+ цепи делать
Код: Выделить всёРазвернуть
 digitalWrite(LASER_PWR, LOW);
и HIGH - для выключения.
так?

и получается что в выключенном состоянии, одно будет HIGH - то есть будет потреблять сам мосфет.. хот немного, но он будет под напряжением.
и если в это время я отправлю МК в режим сна - он наверняка вернет на этот пин LOW и дальномер снова включится, что мне конечно не нужно..

выходит надо использовать N-канал все таки..
но как же быть с тем, что при разорванном GND (digitalWrite(LASER_PWR, LOW) сам дальномер чтото потребляет за счет RX-TX и VCC проводников..
то есть он сажает батарейку, чего не хотелось бы допускать.

Re: arduino - как правильно подключить мосфет и нагрузку

ALS » 25 апр 2017, 01:13

но как же быть с тем, что при разорванном GND (digitalWrite(LASER_PWR, LOW) сам дальномер чтото потребляет за счет RX-TX и VCC проводников.

Это почему же ?
Если вы "обрываете" дальномеру общий, пины RX/TX будут под высоким потенциалом, ведь току с них просто некуда будет стекать.

Re: arduino - как правильно подключить мосфет и нагрузку

Romikgy » 25 апр 2017, 10:15

d00m писал(а): то даже при отключеном мосфете (разорванном минусе) все равно дальномер продолжает потреблять какойто ток..

как это выяснилось ? и какое именно значение ?

Re: arduino - как правильно подключить мосфет и нагрузку

d00m » 25 апр 2017, 20:05

Изображение

вот у меня есть irfz44n, подключен как на схеме.
питаю все от LiPo 1S - через Vcc пин потому что регулятор с МК отпаял.

мосфет "управляется" с 8 digital pin arduino.
в коде вызывается
Код: Выделить всёРазвернуть
digitalWrite(LASER_PWR, HIGH);
для включения лазера.
после этого все работает - лазер измеряет и оправляет данные в код, который их обрабатывает и выводит в Serial.
если отключаю "управляющий" провод от 8 пина на МК - лазер перестает отзываться.

далее, когда в коде вызывается
Код: Выделить всёРазвернуть
digitalWrite(LASER_PWR, LOW);

напряжение на 8 пине уходит в 0 и мосфет "закрывается" - лазер отключается.

но если в это время (8 pin == LOW) измерить напряжение на выводах лазера (GND лазера и +) - то там оказывается около 20 mV

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

Re: arduino - как правильно подключить мосфет и нагрузку

lvovitch » 19 май 2017, 11:29

а не проще использовать готовый модуль? http://carduino.ru/product_info.php?products_id=2267

Re: arduino - как правильно подключить мосфет и нагрузку

d00m » 19 май 2017, 12:10

спасибо, но вы правда считаете, что этот мосфет-драйвер не будет потреблять во время сна МК?

моя нагрузка питается от 3 вольт, то есть от основного ИП - батареи LiPo, и ток потребляет не такой большой - в пике до 200mAh.
так что мне главное, чтобы во время сна мосфет не кушат от батареи ничего.
а у меня же есть какоето потребление - миливольты, но все таки чтото жрет..


Rambler\'s Top100 Mail.ru counter