De MOSFET driver module is ideaal om apparaten aan te sturen die een hogere spanning en stroom nodig hebben dan wat de Raspberry Pi kan leveren. Kenmerk van de MOSFET is dat deze vaak in combinatie met microcomputers/-controllers gebruikt wordt. Denk hierbij aan de interne aansturing (boordcomputers) van auto's, vrachtwagens en straatverlichting, maar ook bij de aansturing grote pompen bij waterzuiveringssystemen.
Volgens de datasheet kan de MOSFET, type IRF520 als component maximaal 100V bij zo’n 9A, mits gekoeld verwerken. De IRF520 module die we in dit project gebruiken is prima geschikt voor het veilig aansturen van apparaten tot 24V bij maximaal 5A. Dan moet je denken aan het aansturen van bijvoorbeeld een 12V ventilator of een 24V motor, lamp of led strip. In alle gevallen wordt gebruik gemaakt van een aparte voeding.
Wat is een MOSFET (in het kort)
De term “MOSFET” is eigenlijk een acroniem dat “Metal Oxide Semiconductor Field Effect Transistor” betekent. De MOSFET is een transistor die wordt bestuurd door spanning, terwijl de bipolaire een transistor is die wordt bestuurd door stroom. De FET wordt dus energieloos gestuurd, wat ten goede komt aan het energieverbruik van de Raspberry Pi.
Een MOSFET controleert de stroom die tussen de source en de drain loopt, door het voltage op de gate gecontroleerd aan te passen.
Meer informatie over de IRF520 kun je vinden in de datasheet van de leveranciers.
Schema module
Je sluit de voedingsbron van het apparaat dat je wilt bedienen aan op de pinnen Vin en GND. Het apparaat dat je wilt besturen sluit je aan op de V+ en V- klemmen van de module. Wanneer het GPIO stuurSIGnaal HOOG is, licht een mini LED op en wordt de GND ‘verbonden’ met de V-. De V+ en V- uitgangen zijn dan met het verbruiksapparaat verbonden. Wanneer het signaal LAAG is, gaat de LED uit en wordt de GND ‘losgekoppeld’ van de V-.
De Vcc wordt alleen aangesloten indien de Raspberry Pi het apparaat voedt. Indien het apparaat 5V en een kleine stroom (~<250mA) nodig heeft, kun je de voeding van de Raspberry Pi gebruiken. De VCC-aansluiting van de module wordt dan verbonden met de 5V verbinding van je Raspberry Pi en GND-aansluiting met de GND-pin van je Raspberry Pi.
Toepassingen: LED-verlichting, DC-motoren zoals kleine pompen en ventilatoren.
IRF520 – Technische details
– Input logische voltage (SIG): 3.3V – 5V
– Output load voltage (Vin): 0 – 24V / max. 5A (koelen bij 1A en hoger!)
Python
Het script (mosfet.py) werkt zoals een LED aangestuurd wordt. Je kunt het script hieronder gebruiken om de module en daarmee het apparaat in/uit te schakelen.
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(18,GPIO.OUT)
print "LED on"
GPIO.output(18,GPIO.HIGH)
time.sleep(5)
print "LED off"
GPIO.output(18,GPIO.LOW)
Aansturen met Puls Wave Modulatie (PWM)
Met het script hierboven wordt de ventilator 5 seconden ingeschakeld. Met PWM kun je motoren, zoals een ventilator met verschillende snelheden laten draaien. Het enige dat je hoeft te doen is de duty-cycle in te stellen.
Matt Hawkins heeft een tijd geleden een script geschreven. Ik heb voor praktisch gebruik hier en daar wat aanpassingen gemaakt. Klik hieronder om de scripts te downloaden.
Dimmen met Tkinter
In de video wordt de ventilator d.m.v. PWM gedimd. Wil je de ventilator d.m.v. een percentageschuif in Tkinter besturen? Klik dan op de afbeelding hieronder om te zien hoe je dit kunt doen.
Veel succes!
Have A Nice Day!
Hallo, in het het schema sluit je de GPIO(SIG) aan GND(massa) van de IRF520 en GND(Ground) van de RPi aan SIG(Signal) van de module. Moet dat niet andersom zijn. GPIO aan SIG een GND aan GND
gr. Guido
Hallo Guido,
Het schema klopt. De G van de MOSFET staat voor Gate, de S staat voor Source en de D staat voor Drain. Ik zal een beknopte uitleg van de MOSFET bij het artikel plaatsen zodat de pinnen van de MOSFET duidelijk zijn. Dank voor de tip!