Подайте питание на VIN+ / VIN−, нагрузку подключите к OUT+ / OUT−. Соедините GND модуля с GND Arduino. Подключите TRIG/PWM к PWM-пину (D9). Управляйте через analogWrite(9, 0-255). Важно: для двигателей обязательно добавьте защитный диод!
Как правильно подключить MOSFET модуль?
Модуль работает как "нижний ключ" (low-side switch) — коммутирует минусовой провод нагрузки. GND микроконтроллера и источника питания должны быть общими.
flowchart LR
subgraph POWER["⚡ Источник 5-36V"]
PSU_P["+"]
PSU_N["−"]
end
subgraph MODULE["🔌 MOSFET Модуль"]
VIN_P["VIN+"]
VIN_N["VIN-"]
OUT_P["OUT+"]
OUT_N["OUT-"]
TRIG["TRIG/PWM"]
GND["GND"]
end
subgraph LOAD["💡 Нагрузка"]
L_P["+"]
L_N["−"]
end
subgraph MCU["🎛️ Arduino"]
PWM["D9 (PWM)"]
MCU_GND["GND"]
end
PSU_P --> VIN_P
PSU_N --> VIN_N
VIN_P -.->|"внутренне"| OUT_P
OUT_P --> L_P
L_N --> OUT_N
PWM --> TRIG
MCU_GND --> GND
PSU_N -.->|"общая земля"| MCU_GND
Распиновка модуля
- VIN+
- Плюс вход питания (5–36V DC)
- VIN−
- Минус вход питания (GND источника)
- OUT+
- Плюс выход на нагрузку (соединён с VIN+ внутри)
- OUT−
- Минус выход от нагрузки (коммутируется MOSFET)
- TRIG/PWM
- Вход управления (логика 3.3V или 5V), поддерживает PWM
- GND
- Земля управления (соединить с GND микроконтроллера)
-
Подключите питание "+" источника →
VIN+, "−" источника →VIN-. Используйте провода достаточного сечения под ожидаемый ток. -
Подключите нагрузку "+" нагрузки →
OUT+, "−" нагрузки →OUT-. Для двигателей добавьте защитный диод (см. ниже). -
Соедините земли
GNDмодуля → GND Arduino. Критично: земля источника питания и Arduino должны быть общими! -
Подключите управление
TRIG/PWM→ PWM-пин Arduino (D3, D5, D6, D9, D10, D11). Для простого ON/OFF подойдёт любой цифровой. -
Проверьте индикатор При подаче HIGH на TRIG — LED на модуле загорится. Это означает, что MOSFET открыт, нагрузка работает.
Общая земля обязательна! Если Arduino питается от USB, а нагрузка — от отдельного БП, соедините их GND. Иначе модуль работать не будет.
Как защитить модуль при работе с двигателями?
Двигатели, соленоиды, реле — это индуктивные нагрузки. При отключении они генерируют обратный выброс напряжения (back-EMF), который может повредить MOSFET. Защитный диод (flyback diode) поглощает этот выброс.
flowchart LR
subgraph MODULE["MOSFET Модуль"]
OUT_P["OUT+"]
OUT_N["OUT-"]
end
subgraph MOTOR["⚙️ DC Двигатель"]
M_P["+ (красный)"]
M_N["− (чёрный)"]
end
subgraph DIODE["🔒 Защитный диод"]
D["1N5408 / FR207
Шоттки SS54"]
end
OUT_P -->|"+"| M_P
M_N -->|"−"| OUT_N
D -->|"катод ▶|"| M_P
D -->|"анод"| M_N
Какой диод выбрать?
| Ток двигателя | Диод | Примечание |
|---|---|---|
| до 1A | 1N4007 |
Самый распространённый, дешёвый |
| 1–3A | 1N5408 |
3A, 1000V — универсальный выбор |
| 3–5A | FR207 |
Fast recovery, быстрее чем 1N540x |
| 5–10A | SS54 / SS56 |
Шоттки, минимальное падение напряжения |
| >10A | MBR1045 |
10A Шоттки, для мощных двигателей |
Без диода = риск! Выброс напряжения от двигателя может достигать сотен вольт и пробить MOSFET за одну миллисекунду. Диод стоит копейки, замена модуля — нет.
Как рассчитать тепловыделение модуля?
MOSFET в открытом состоянии имеет сопротивление Rds(on). На нём выделяется тепло пропорционально квадрату тока. Это определяет, нужен ли радиатор.
P = I² × Rds(on)
| Ток | Мощность | Охлаждение |
|---|---|---|
| 5A | 0.16 Вт | ✅ Не требуется |
| 10A | 0.65 Вт | ✅ Не требуется |
| 15A | 1.46 Вт | ⚠️ Желателен радиатор |
| 20A | 2.6 Вт | ⚠️ Радиатор обязателен |
| 25A | 4.1 Вт | 🔴 Радиатор + обдув |
Правило: до 15A — модуль работает без радиатора. Выше 15A — добавьте алюминиевый радиатор на корпус MOSFET с термопастой.
Как настроить частоту PWM для разных нагрузок?
Стандартная частота PWM на Arduino — 490 Гц (пины D3, D9, D10, D11) или 980 Гц (D5, D6). Для разных нагрузок оптимальная частота отличается.
| Нагрузка | Частота | Причина |
|---|---|---|
| DC двигатели | 1–20 кГц | Выше 15 кГц — бесшумная работа |
| LED ленты | >1 кГц | Без мерцания на камере |
| Нагреватели | 1–100 Гц | Инерционные, не требуют высокой частоты |
| Вентиляторы | 25 кГц | Стандарт для PC-вентиляторов |
Повышение частоты PWM: используйте библиотеку TimerOne или настраивайте регистры таймеров напрямую. Стандартных 490 Гц часто недостаточно для бесшумной работы двигателей.
Устранение проблем
Модуль не включает нагрузку
Проверьте: 1) Соединены ли GND модуля и Arduino. 2) Подаётся ли сигнал на TRIG (LED должен светиться). 3) Полярность подключения питания. 4) Работает ли нагрузка при прямом подключении к источнику.
LED светится, но нагрузка не работает
Причины: 1) Плохой контакт в винтовых клеммах — подтяните. 2) Нагрузка подключена к VIN вместо OUT. 3) Обрыв провода. 4) Неисправна нагрузка. Проверьте мультиметром наличие напряжения на OUT+ относительно OUT- при включенном модуле.
Модуль сильно греется
Нормально при >15A. Решение: 1) Добавьте радиатор на MOSFET (термопаста + алюминиевый радиатор). 2) Обеспечьте вентиляцию. 3) Проверьте, что ток не превышает 25A. 4) При PWM — повысьте частоту: низкая частота увеличивает потери на переключениях.
Двигатель "свистит" при PWM управлении
Это звук частоты PWM. Стандартные 490 Гц Arduino — в слышимом диапазоне. Решение: повысьте частоту до 15–25 кГц с помощью библиотеки TimerOne или настройки регистров таймера. Частота >15 кГц — вне слышимости человека.
Модуль сгорел после подключения двигателя
Вероятно, back-EMF. Индуктивные нагрузки (двигатели, соленоиды) генерируют выбросы напряжения при отключении. Обязательно ставьте защитный диод параллельно нагрузке (катод к "+").
Можно ли управлять модулем от ESP8266/ESP32 (3.3V)?
Да. Модуль совместим с логикой 3.3V. Подключайте TRIG к GPIO ESP, GND к GND ESP. PWM будет работать через analogWrite() или LEDC на ESP32.
Когда выбрать MOSFET вместо реле?
| Параметр | MOSFET | Реле |
|---|---|---|
| Скорость | ✅ Микросекунды | ❌ Миллисекунды |
| PWM управление | ✅ Да, до 100+ кГц | ❌ Нет |
| Шум | ✅ Бесшумный | ❌ Щелчки |
| Ресурс | ✅ Неограниченный | ⚠️ 100k–1M циклов |
| AC нагрузка | ❌ Только DC | ✅ AC и DC |
| Гальваническая развязка | ❌ Нет | ✅ Есть |
Вывод: MOSFET — для PWM, частого переключения, бесшумной работы с DC. Реле — для AC нагрузок или когда нужна гальваническая развязка.