Como Usar um YYNMOS-4 de 4 Canais MOSFET para Controlar Motores DC de 5A a 20A ou Fitas de LED
Neste tutorial, exploraremos como controlar várias cargas de CC, como motores e tiras de LED, usando o módulo MOSFET de 4 canais YYNMOS-4. Este módulo permite que você gerencie a intensidade das luzes ou a velocidade dos motores de forma eficaz. Com sua capacidade de suportar cargas entre 5A e 20A, pode ser um componente essencial em seus projetos eletrônicos.

Vamos conectar o módulo MOSFET a um Arduino, permitindo-nos controlar as cargas através de PWM (Modulação por Largura de Pulso). Essa abordagem possibilita um controle suave sobre a operação de motores e luzes. Para um guia visual, recomendo assistir ao vídeo associado (no vídeo em :00).
Hardware Explicado
O módulo YYNMOS-4 inclui quatro MOSFETs que podem lidar com correntes significativas, tornando-o ideal para acionar várias cargas. Cada MOSFET opera com baixa resistência (10 a 16 mili-ohms quando ligado), permitindo uma entrega eficiente de energia. Você pode conectar até quatro dispositivos com uma corrente máxima de 5A cada, e com um bom dissipador de calor, isso pode ser aumentado para 20A.
Além dos MOSFETs, o módulo possui terminais de entrada para sinais de controle e terminais de saída para conectar suas cargas. A entrada pode aceitar sinais de 3V a 20V, tornando-o compatível com a maioria dos microcontroladores, incluindo Arduino. O módulo também inclui LEDs para indicar o status de cada saída, fornecendo feedback visual durante a operação.
Detalhes da Ficha Técnica
| Fabricante | YYNMOS |
|---|---|
| Número da peça | YYNMOS-4 |
| Tensão lógica/IO | 3-20 V |
| Tensão de alimentação | 5-36 V |
| Corrente de saída (por canal) | 5 A |
| Corrente de pico (por canal) | 20 A |
| Orientação sobre a frequência PWM | ~1 kHz |
| Limites de lógica de entrada | Alto: > 3 V, Baixo: < 1 V |
| Queda de tensão / RDS(on)saturação | 10-16 mΩ |
| Limites térmicos | Até 85°C |
| Pacote | Módulo de PCB padrão |
| Notas / variantes | Compatível com PLCs |
- Assegure a dissipação de calor adequada para correntes acima de 5A.
- Verifique as classificações de voltagem antes de conectar cargas.
- Use sinais PWM para controle de velocidade ou intensidade.
- Esteja ciente dos limites térmicos para evitar o superaquecimento.
- Verifique a fiação para evitar curtos-circuitos.
Instruções de Fiação


Para conectar o módulo YYNMOS-4, comece conectando a fonte de alimentação. Conecte o terminal positivo da sua fonte de energia aoDC+terminal no módulo e o terminal negativo para oDC-terminal. Cada carga que você deseja controlar será conectada a um dos pares de saída. Por exemplo, conecte o positivo da sua carga ao terminal de saída correspondente e o negativo ao aterramento.
Para os sinais de controle, conecte os pinos com PWM do seu Arduino aos pinos de entrada correspondentes no módulo YYNMOS-4. Por exemplo, se você estiver usando os pinos 3, 5, 6 e 9 no Arduino, conecte-os às entradas PWM no módulo. Certifique-se de que o terra do Arduino também esteja conectado ao terra do módulo YYNMOS-4 para manter um ponto de referência comum.
Exemplos de Código e Tutorial
O seguinte trecho de código demonstra como definir os pinos necessários e controlar os motores ou LEDs usando sinais PWM. A variávelmotoré um array que contém os números dos pinos para fácil referência.
int pin1 = 3; // PWM pin for motor 1
int pin2 = 5; // PWM pin for motor 2
int pin3 = 6; // PWM pin for motor 3
int pin4 = 9; // PWM pin for motor 4
int motor[]={NULL,pin1, pin2, pin3, pin4};
Neste trecho, definimos quatro pinos PWM para controlar cada motor ou LED. O arraymotorpermite-nos referenciar facilmente esses pinos mais tarde no código.
Oloop()a função mostra como ativar os motores em diferentes velocidades:
void loop() {
motorON(1, 75); // Run motor 1 at 75% speed
delay(4000); // Wait for 4 seconds
stop(1); // Stop motor 1
delay(3000); // Wait for 3 seconds
}
Esse segmento do código ativa o motor 1 a 75% de velocidade por 4 segundos, depois o para por 3 segundos. Ajustar a velocidade e o tempo permite um controle flexível das cargas.
Para o código completo, consulte o programa completo carregado abaixo do artigo.
Demonstração / O que Esperar
Após completar a fiação e carregar o código no seu Arduino, você deve observar os motores ou LEDs respondendo aos sinais PWM. Os motores começarão nas velocidades definidas e podem ser parados ou ajustados dinamicamente. Se você notar algum problema, verifique se há polaridade invertida ou fiação incorreta, pois esses são erros comuns (no vídeo às 12:30).
Carimbos de vídeo
- 00:00 Iniciar
- 00:58 Hardware Explicado
- 07:53 Explicação da Fiação
- 10:13 Código Arduino para YYNMOS-4 Explicado
- 14:51 Demonstração sem Arduino
- 16:32 Demonstração com Arduino
++
/*
* This is Arduino code to control 4 DC motors' speed or 4 LED light strips or other DC loads
* by utilizing a YYNMOS-4 4-channel MOSFET module.
We can control 4 DC motors with voltage from 5V to 35V and 5A each.
Get the code and wiring from https://robojax.com/RJT338
* Written by Ahmad Shamshiri on July 13, 2020
* in Ajax, Ontario, Canada. www.robojax.com
*
*
* Watch video instructions for this code: https://youtu.be/G9uHVcITHf8
*
If you found this tutorial helpful, please support me so I can continue creating
content like this.
or make a donation using PayPal http://robojax.com/L/?id=64
* This code has been downloaded from Robojax.com
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
int pin1 = 3;//pwm
int pin2 = 5;//pwm
int pin3 = 6;//pwm
int pin4 = 9;//pwm
int ON = HIGH;
int OFF = LOW;
int motor[]={NULL,pin1, pin2, pin3, pin4};
void setup() {
Serial.begin(9600);
Serial.println("Robojax.com 4 DC Motor or LED");
pinMode(motor[1], OUTPUT);
pinMode(motor[2], OUTPUT);
pinMode(motor[3], OUTPUT);
pinMode(motor[4], OUTPUT);
}
void loop() {
motorON(1, 75);//run motor 1 at 75% speed
delay(4000);//for 4 seconds
motorON(4, 100);//run motor 4 at 100% speed (or 100% light intensity)
delay(4000); //for 4 seconds
stop(1);//stop motor 1
delay(3000);//keep it stopped for 3 seconds
stop(4);//stop motor 4
delay(3000); //keep it stopped for 3 seconds
for(int i=0; i<=100; i++)
{
motorON(1,i); //change speed of motor 1
delay(100);
}
delay(3000);//keep running for 3 seconds
stop(1);//stop motor 1
delay(3000);//keep it stopped for 3 seconds
for(int i=100; i>=0; i--)
{
motorON(1,i); //change speed of motor 1
delay(100);
}
delay(3000); //keep it running for 3 seconds
for(int i=0; i<=100; i++)
{
motorON(4,i);
delay(100);
}
delay(3000);//keep it at for 3 seconds
for(int i=100; i>=0; i--)
{
motorON(4,i);
delay(100);
}
}// loop
/*
motorON(int n, int sp)
* @brief Runs the specific motor n with speed sp
* @param n, is an integer from 1 to 4
* @param sp, is speed in % from 0 to 100
* @return does not return anything
* Written by Ahmad Shamshiri
* www.Robojax.com code July 13, 2020 in Ajax, Ontario, Canada
*/
void motorON(int n, int sp)
{
if(n >=1 && n <=4)
{
int speed=map(sp, 0, 100, 0, 255);
analogWrite(motor[n],speed);
Serial.print("Load ");
Serial.print(n);
Serial.print(" @");
Serial.print(sp);
Serial.println("%");
}else{
Serial.println("Motor/load number should be between 1 and 4");
while(1);// stop forever
}
}//motorON(int n)
/*
stop(int n)
* @brief Stops the specific motor
* @param n, is an integer from 1 to 4
* @return does not return anything
* Written by Ahmad Shamshiri
* www.Robojax.com code July 13, 2020 in Ajax, Ontario, Canada
*/
void stop(int n)
{
if(n >=1 && n <=4)
{
digitalWrite(motor[n], LOW);
Serial.print("Load ");
Serial.print(n);
Serial.println(" Stopped");
}else{
Serial.println("Motor/load number should be between 1 and 4");
while(1);// stop forever
}
}//stop(int n)
Coisas que você pode precisar
-
Amazonas
-
eBay
-
AliExpressCompre YYNMOS-4 4 Canal MOSFET na AliExpresss.click.aliexpress.com
-
AliExpressCompre YYNMOS-4 4 Canal MOSFET no AliExpresss.click.aliexpress.com
-
AliExpressCompre YYNMOS-4 4 Canal MOSFET no AliExpress.s.click.aliexpress.com
Recursos e referências
-
Externo1N4148 (T4) diodo SMD de comutação rápida folheto técnico (PDF)pdf.datasheetcatalog.com
-
Externo60N03 MOSFET, 12mΩ, 30V, 45A ficha técnica (PDF)cdn.datasheetspdf.com
-
Externo
Arquivos📁
Nenhum arquivo disponível.