Innholdsfortegnelse:

Hvordan kontrollere en MOSFET med Arduino PWM: 3 trinn
Hvordan kontrollere en MOSFET med Arduino PWM: 3 trinn

Video: Hvordan kontrollere en MOSFET med Arduino PWM: 3 trinn

Video: Hvordan kontrollere en MOSFET med Arduino PWM: 3 trinn
Video: как сделать контроллер бесколлекторного двигателя, mosfet, IRFz 44n 2024, November
Anonim
Image
Image
Kretsdiagram
Kretsdiagram

I denne instruksen ser vi på hvordan du kan kontrollere strømmen gjennom en MOSFET ved hjelp av et Arduino PWM (Pulse Width Modulation) utgangssignal.

I dette tilfellet manipulerer vi arduino -koden for å gi oss et variabelt PWM -signal på digital pin 9 på arduinoen, og vi filtrerer deretter dette signalet for å gi oss et justerbart DC -nivå som kan brukes på porten til MOSFET.

Dette vil tillate oss å kontrollere transistoren fra en av -tilstand uten strøm som strømmer til en tilstand der bare noen få milliampere strøm flyter eller til en tilstand der vi har flere ampere strøm som strømmer gjennom transistoren.

Her skal jeg sette opp PWM slik at vi har 8192 trinn med pulsbreddevariasjon som gir oss veldig fin kontroll over MOSFET.

Trinn 1: Kretsdiagram

Kretsen er veldig grei. PWM -signalet fra pin D9 på arduinoen er integrert eller filtrert av kombinasjonen R1 og C1. Verdiene som vises fungerer godt med en driftsfrekvens på 1,95KHz eller 13 -bits drift med 8192 trinn (2 til effekten 13 = 8192).

Hvis du bestemmer deg for å bruke et annet antall trinn, må du kanskje endre R1- og C1 -verdiene. For eksempel hvis du bruker 256 trinn (8 -bits drift) vil PWM -frekvensen være 62,45 KHz, må du bruke en annen C1 -verdi. Jeg fant 1000uF fungerte bra for denne frekvensen.

Fra det praktiske synspunktet betyr en PWM -innstilling på 0 at DC -nivået på MOSFET -porten vil være 0V og MOSFET vil være helt slått av. En PWM -innstilling på 8191 vil bety at DC -nivået på MOSFET -porten vil være 5V og MOSFET vil være vesentlig hvis den ikke er helt slått på.

Motstanden R2 er på plass bare for å sikre at MOSFET slås av når signalet på porten fjernes ved å trekke porten til bakken.

Forutsatt at strømkilden er i stand til å levere strømmen diktert av PWM -signalet på MOSFET -porten, kan du koble den direkte til MOSFET uten seriemotstand for å begrense strømmen. Strømmen vil bare være begrenset av MOSFET, og den vil spre all overflødig effekt som varme. Sørg for at du gir en tilstrekkelig kjøleribbe hvis du bruker denne for høyere strøm.

Trinn 2: Arduino -kode

Arduino -koden
Arduino -koden

Arduino -koden er vedlagt. Koden er godt kommentert og ganske enkel. Kodeblokken på linje 11 til 15 setter opp arduinoen for rask PWM -drift med utgang på pinne D9. For å endre PWM -nivået endrer du verdien av sammenligningsregisteret OCR1A. For å endre antall PWM -trinn, endrer du verdien til ICR1. f.eks. 255 for 8 bit, 1023 for 10 bit, 8191 for 13 bit drift. Vær oppmerksom på at når du endrer ICR1, endres operasjonsfrekvensen.

Sløyfen leser bare tilstanden til to trykknappbrytere og øker OCR1A -verdien opp eller ned. Jeg har forhåndsinnstilt denne verdien i oppsettet () til 3240 som er like under verdien der MOSFET begynner å slå seg på. Hvis du bruker en annen transistor eller C1 & R1 filterkrets, vil denne verdien være litt annerledes for deg. Best å starte med den forhåndsinnstilte verdien på null første gang du prøver dette for sikkerhets skyld!

Trinn 3: Testresultater

Testresultater
Testresultater
Testresultater
Testresultater

Med ICR1 satt til 8191 er dette resultatene jeg fikk ved å variere strømmen mellom 0 og 2 AMPS:

OCR1A (PWM SettingCurrent (ma) Gate Spenning (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

Anbefalt: