Van egy LED-sávom, amelyet egy ajtó megnyitásakor mágneses kapcsolóval próbálok bekapcsolni. Azt akarom, hogy a LED-ek elhalványuljanak, amikor kinyitom az ajtót, és elhalványulnak, amikor bezárom, és itt jön be az Arduino. A PWM-et használom a fakuláshoz. Minden alkatrészt külön működhetek. Az elhalványuló LED-ek kapcsoló nélkül működnek a MOSFET-mel. Kipróbáltam a soros kimenettel rendelkező kapcsolót az Arduino-n, és egyetlen LED-et halványítva működik a MOSFET nélkül.
A következőket használom:
- Arduino Uno R3
- mágneses kapcsoló
- N-csatornás MOSFET IRLB3034
- 5 méteres fehér LED-szalag
- 12 VDC 30 W-os tápegység
- 10 k Ohmos ellenállások
A beállításom így néz ki:
Séma:
Kód (ha segít):
const int buttonPin = 2; // the number of the switch pin const int ledPin = 9; // the number of the LED pin // variables will change: int buttonState = 0; // variable for reading the switch status int brightness = 0; int fadeAmount = 5; void setup() { // initialize the LED pin as an output: pinMode(ledPin, OUTPUT); // initialize the pushbutton pin as an input: pinMode(buttonPin, INPUT); } void loop(){ // read the state of the switch value: buttonState = digitalRead(buttonPin); // check if the switch is ON. // if it is, the buttonState is LOW: if (buttonState == LOW) { // fade LED on: analogWrite(ledPin, brightness); if (brightness < 255) { brightness = brightness + fadeAmount; } } else { // fade LED off: analogWrite(ledPin, brightness); if (brightness > 0) { brightness = brightness - fadeAmount; } } delay(30); }
Úgy érzem, hogy a probléma a MOSFET és a kapcsoló közös alapjaival van. Minden megoldást / javaslatot örömmel fogadunk.
Megjegyzések
- képes-e folyamatosan bekapcsolni a FET-et a D9-es csapon keresztül? PWM nélkül .. Ha magas a D9, meg tudja mérni a feszültséget az NMOSFET lefolyóján és forrásán keresztül? Ellenőrizze a feszültséget a D2-nél, amikor a kapcsoló zárva és nyitva van. Mérje meg a feszültséget a D9-nél, ha a D9 tű kimenete magas. megoszthatja az 5 méteres LED-szalag részleteit? Hogyan táplálja az Arduinót? Van egy olyan érzésem, hogy az 5 méteres LED szalaggal van a probléma …
- Arra számítanék, hogy R2, a MOSFET közelében, 100 ohmos nagyságrendben. Egyébként ' forrón fogja vezetni. Változtassa meg a minimum és a maximális tesztet is 255 ill. 0-tól 250-ig és 5-ig.
- Nem mondja meg, milyen problémája van. Mit csinal? | A LED-szalag 12 V közeli feszültségtartományban működik. azaz valószínűleg kb. 9 V-nál kikapcsolt állapotban és 12 V-nál bekapcsolt állapotban van. Tehát, ha a szalag feszültsége bármilyen szűrés miatt analóg, akkor a PWM tartomány felső részén fog bekapcsolni. Ha az IS áramkör az ábrán látható módon, a LED-szalagnak PWM frekvencián kell modulálódnia. Ennek KELL működnie. Az ábrán látható áramkör rendben van, és a kód rendben van, így lehet, hogy nem azt csinálod, amit gondolsz. Ellenőrizzen mindent. | És mit csinál ez valójában?
- @ Ahogy Jippie mondja – A MOSFET kapuellenállás kicsi lehet 100 Ohm, vagy akár 10 Ohm is. A bemutatott 10k valószínűleg nem okozza a problémákat, de túl nagy.
- AZ ' FELETT FET. Adatlap itt
Válasz
Szerintem tartsa meg az R2 ellenállást, de állítsa 1k-ba, és tegyen előtte egy 10k-os lehúzható ellenállást, hogy az NMOS Cgate kapacitásában tárolt töltések kisüljenek, valahányszor van magas Z a D9 kikötőben. Soha ne felejtsük el az ellenállást sem, amely korlátozza a dióda előremenő áramát, amely általában 20 mA, de ezt minden alkalommal ellenőrizni kell az adatlapon. A LED-szalagok esetében általában vannak belső ellenállások, de ha nagyobb feszültséget használ, akkor is korlátoznia kell az áramot. Tudna többet mondani arról, hogy miért nem a PWM-et használja, nem egy egyszerű kimeneti portot, például egy integrátorral, és mit figyel meg pontosan, és mit mér, amikor bekapcsolja a LED-et (fade-on-off)?
szimulálja ezt az áramkört – Séma létrehozva a CircuitLab
használatával
Hogyan lehet kissé kisebbet ábrázolni?
Megjegyzések
- Ő ' vezet 12 V-os névleges szalagot belső ellenállásokkal – nincs szükség külső LED-re. ' azért használja a PWM-et, mert digitális megoldást akar, nem pedig analóg megoldást.
- @lalamer Az ESE-n lévő diagramok méretezéséhez tágabbá kell tenni őket, Ezt úgy teszem, hogy egy pontot / szegmenst / szöveget helyezek balra és / vagy jobbra, így összezsugorodik és jól működik.
- @RussellMcMahon igen igazad van, ez egy led szalag és van egy belső ellenállás. Frissítettem a válaszomat. Köszönjük, hogy elkötelezte magát.
Válasz
Nincs szükség a 10KOhm-ra. A MOSFET feszültségvezérelt eszközök, ellentétben a tranzisztorokkal, amelyeknek vezérelt áramra van szükségük. Úgy gondolom, hogy problémája lehet a váltás visszavonása. Valószínűleg olyan hamis pozitív eredményeket kap, amelyek rosszul okozhatják a szoftverét. Azt javaslom, hogy legyen egy kis visszavágó rutin. Például – csak akkor, ha 3 egymást követő pozitívumot talál, a kapcsológépet valóban pozitívnak nevezik.
Megjegyzések
- Ha a kapcsolót aktívnak tekintik, akkor egy műveletet hajt végre, majd 30 mS-t késleltet, mielőtt újra tesztelné, így gyakorlatilag 30 mS-os visszavonással rendelkezik. / li>
- Jó gyakorlat, ha az ellenállás sorozatban van a kapuval, hogy korlátozzuk a bekapcsolási áramot. Ne feledje, hogy a MOSFET kapuja kondenzátorként működik, és fel kell tölteni / kisütni.
- Ennek eléréséhez u kell csatlakoztatnia a MOSFET kapuját a gnd-hez (NMOS esetén). Ez gyorsan lemeríti a MOSFET kapu kapacitását. Soha ne hagyja lebegve a kaput, mivel az érzékeny a zajra és bekapcsolhat, sok kárt okozva. Mindig húzza le az NMOS kaput.