Indholdsfortegnelse:

Sådan styres en MOSFET med Arduino PWM: 3 trin
Sådan styres en MOSFET med Arduino PWM: 3 trin

Video: Sådan styres en MOSFET med Arduino PWM: 3 trin

Video: Sådan styres en MOSFET med Arduino PWM: 3 trin
Video: Как сделать драйвер бесщеточного двигателя / без ECS с драйвером Mosfet 2024, Juli
Anonim
Image
Image
Kredsløbsdiagram
Kredsløbsdiagram

I denne instruktive vil vi se på, hvordan man styrer strømmen gennem en MOSFET ved hjælp af et Arduino PWM (Pulse Width Modulation) udgangssignal.

I dette tilfælde manipulerer vi arduino -koden for at give os et variabelt PWM -signal på digital pin 9 i arduinoen, og vi filtrerer derefter dette signal for at give os et justerbart DC -niveau, som kan anvendes på porten til MOSFET.

Dette vil give os mulighed for at styre transistoren fra en slukket tilstand uden strøm, der strømmer til en tilstand, hvor kun et par milliampere strøm strømmer eller til en tilstand, hvor vi har flere ampere strøm, der strømmer gennem transistoren.

Her vil jeg konfigurere PWM, så vi har 8192 trin med pulsbreddevariation, som giver os meget fin kontrol over MOSFET.

Trin 1: Kredsløbsdiagram

Kredsløbet er meget ligetil. PWM -signalet fra pin D9 på arduinoen er integreret eller filtreret ved kombinationen af R1 og C1. De viste værdier fungerer godt med en driftsfrekvens på 1,95KHz eller 13 bit drift med 8192 trin (2 til effekten 13 = 8192).

Hvis du beslutter dig for at bruge et andet antal trin, skal du muligvis ændre R1- og C1 -værdierne. Hvis du f.eks. Bruger 256 trin (8 bit drift), vil PWM -frekvensen være 62,45 KHz, skal du bruge en anden C1 -værdi. Jeg fandt 1000uF fungeret godt til denne frekvens.

Fra det praktiske synspunkt betyder en PWM -indstilling på 0, at DC -niveauet på MOSFET -porten vil være 0V, og MOSFET'en vil være helt slukket. En PWM -indstilling på 8191 vil betyde, at DC -niveauet på MOSFET -porten er 5V, og MOSFET'en vil være væsentligt, hvis den ikke er fuldstændig tændt.

Modstanden R2 er på plads bare for at sikre, at MOSFET slukker, når signalet på porten fjernes ved at trække porten til jorden.

Forudsat at strømkilden er i stand til at levere den strøm, der er dikteret af PWM -signalet på MOSFET -porten, kan du tilslutte den direkte til MOSFET uden seriemodstand for at begrænse strømmen. Strømmen vil kun blive begrænset af MOSFET, og den vil aflede enhver overskydende effekt som varme. Sørg for at give en tilstrækkelig køleribbe, hvis du bruger dette til højere strømme.

Trin 2: Arduino -kode

Arduino kode
Arduino kode

Arduino -koden er vedhæftet. Koden er godt kommenteret og ret enkel. Kodeblokken på linje 11 til 15 opsætter arduinoen til hurtig PWM -drift med output på pin D9. For at ændre PWM -niveau ændrer du værdien af sammenligningsregisteret OCR1A. For at ændre antallet af PWM -trin ændrer du værdien af ICR1. f.eks. 255 for 8 bit, 1023 for 10 bit, 8191 for 13 bit drift. Vær opmærksom på, at når du ændrer ICR1, ændres driftsfrekvensen.

Sløjfen læser bare tilstanden af to trykknapkontakter og øger OCR1A -værdien op eller ned. Jeg har forudindstillet denne værdi i opsætningen () til 3240, som er lige under den værdi, hvor MOSFET begynder at tænde. Hvis du bruger en anden transistor eller C1 & R1 filterkredsløb, vil denne værdi være lidt anderledes for dig. Bedst at starte med den forudindstillede værdi på nul første gang du prøver dette for sikkerheds skyld!

Trin 3: Testresultater

Test resultater
Test resultater
Test resultater
Test resultater

Med ICR1 indstillet til 8191 er dette de resultater, jeg opnåede ved at variere strømmen mellem 0 og 2 AMPS:

OCR1A (PWM SettingCurrent (ma) Gate Voltage (Vdc) 3240 0 ma 0v3458 10ma 1.949v4059 100ma 2.274v4532 200ma 2.552v4950 500ma 2.786v5514 1000ma 3.101v6177 1500ma 3.472v6927 2000ma 3.895v

Anbefalede: