15A 400W MOSFET AOD4184A per controllare un motore o un carico
Questo progetto dimostra come utilizzare un modulo MOSFET da 15A e 400W (basato sul MOSFET AOD4184A) per controllare vari carichi, come motori e luci. Questa è un'abilità preziosa per numerose applicazioni, che consente un controllo preciso sulla distribuzione dell'energia. L'elevata capacità di corrente del MOSFET lo rende adatto a una vasta gamma di progetti.
Applicazioni pratiche:
- Controllare la velocità dei motori DC in progetti di robotica o automazione.
- Creazione di circuiti di attenuazione per l'illuminazione a LED.
- Costruire un circuito di commutazione ad alta potenza per apparecchi.
- Progettare un controllore di motore per un piccolo veicolo.
Hardware/Componenti
Il componente principale è un modulo MOSFET da 15A e 400W che presenta due MOSFET AOD4184A in parallelo (nel video a 00:05). Avrai anche bisogno di una scheda Arduino, di un'alimentazione, di fili di collegamento e del carico che desideri controllare (motore, luci, ecc.). Un dissipatore è altamente raccomandato per applicazioni ad alta corrente (nel video a 03:40).


Guida al cablaggio
Il modulo ha terminali chiaramente contrassegnati: ingresso (Vin), uscita e terra (nel video al 01:42). Collega il lato positivo della tua alimentazione al Vin, e il negativo a terra. Il tuo carico si collega ai terminali di uscita. L'Arduino controlla il gate del modulo MOSFET utilizzando un pin digitale (nel video alle 08:26).


Spiegazione del codice
Il codice Arduino utilizza la modulazione di larghezza di impulso (PWM) per controllare il MOSFET. I parametri configurabili sono:
motorPin: Specifica il pin Arduino collegato al gate del modulo MOSFET (predefinito: pin 9). (nel video al 05:47)mSpeedUna variabile intera che controlla la velocità del motore (0-255). (nel video al 05:47)mStepDetermina il passo di incremento/decremento permSpeed(default: 15). Regola questo per ottimizzare il controllo della velocità (nel video alle 05:54).
int motorPin =9; // pin to connect to motor module
int mSpeed = 0; // variable to hold speed value
int mStep = 15; // increment/decrement step for PWM motor speed
Il codice include logica per preveniremSpeedda superare l'intervallo 0-255 (nel video alle 07:26). Per testare correnti più elevate (5A, 10A, 15A, 20A), una versione semplificata del codice mantiene il pin di uscita ALTO per mantenere uno stato acceso costante (nel video alle 13:43).
void loop() {
digitalWrite(loadPin, HIGH);
while(1); // wait forever
}
Progetto dal vivo/Demostrazione
Il video dimostra il controllo di una lampadina da 51W (nel video a 10:40) e di un motore DC (nel video a 11:18) utilizzando PWM. Il progetto include anche test con un carico elettronico a 5A, 10A, 15A e 20A (nel video a 13:10), mostrando le elevate capacità di gestione della corrente del modulo. Vengono anche mostrati i risultati della caduta di tensione attraverso il MOSFET a varie correnti (nel video a 16:06), convalidando il basso on-resistenza dell'AOD4184A.
Capitoli
- [00:00] Introduzione e Panoramica del Progetto
- [01:40] Panoramica dell'hardware e dettagli del modulo
- [05:01] Spiegazione della scheda tecnica del MOSFET
- [05:47] Spiegazione del codice
- [08:26] Spiegazione del cablaggio
- [10:40] Dimostrazione con luce da 51W
- [11:18] Dimostrazione con Motore a Corrente Continua
- [12:58] Test ad alta corrente (5A, 10A, 15A, 20A)
- Misura della Caduta di Tensione
/*
* This is an Arduino sketch for a tutorial video
* explaining why a resistor is needed when using a push button
* with an Arduino to connect the pin to Ground (GND)
*
* Written by Ahmad Shamshiri on July 18, 2018 at 17:36 in Ajax, Ontario, Canada
* For Robojax.com
* Watch the instructional video for this code: https://youtu.be/tCJ2Q-CT6Q8
* This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.
*/
int motorPin =9;// pin to connect to motor module
int mSpeed = 0;// variable to hold speed value
int mStep = 15;// increment/decrement step for PWM motor speed
void setup() {
// Robojax.com demo
pinMode(motorPin,OUTPUT);// set mtorPin as output
Serial.begin(9600);// initialize serial motor
Serial.println("Robojax Demo");
}
void loop() {
// Robojax.com tutorial
analogWrite(motorPin, mSpeed);// send mSpeed value to motor
Serial.print("Speed: ");
Serial.println(mSpeed);// print mSpeed value on Serial monitor (click on Tools->Serial Monitor)
mSpeed = mSpeed + mStep;
// See the video for details.
if (mSpeed <= 0 || mSpeed >= 255) {
mStep = -mStep;
}
delay(200);
}
/*
* This is an Arduino Sketch for a tutorial video
* explaining the 15A MOSFET AOD4184A used as a switch
* This sketch is used to test the MOSFET with a load at 5A, 10A, 15A, 25A
*
* Written by Ahmad Shamshiri on July 21, 2018 in Ajax, Ontario, Canada
* For Robojax.com
* Watch the instruction video for this code: https://youtu.be/tCJ2Q-CT6Q8
* This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.
*/
int loadPin =9;// load pin
void setup() {
// Robojax.com demo
pinMode(loadPin,OUTPUT);
Serial.begin(9600);
Serial.println("Robojax Demo");
}
void loop() {
// Robojax.com tutorial
digitalWrite(loadPin, HIGH);
while(1);// wait forever
}
Cose di cui potresti avere bisogno
-
eBay
-
AliExpressAcquista il modulo Mosfet 15A 400W da AliExpresss.click.aliexpress.com
Risorse e riferimenti
Nessuna risorsa ancora.
File📁
File Fritzing
-
xy-mos-d4184 AOD4184A MOSFET
xy-mos-d4184.fzpz0.01 MB
Altri file
-
alpha-and-Omega-AOD4184A_datasheet
alpha-and-Omega-AOD4184A_datasheet.pdf0.43 MB