#Skal trigge en strømkrevende magnetventil i fra min Arduino, men ønsker å unngå bruk av releer fordi jeg trenger noe som er veldig kjapt og presist.
Forsøkte å kople utgangen på Pin12 til Basis på en kraftig NPN transistor (MJE13005) via en 10K resistor, men den klarte ikke å åpne transistoren. Forsøkte også med en Basismotstand på 2,5K Ohm, men heller ikke det fungerte. Ubelastet så gikk spenningen opp til 1,5V, men balastet, så fikk jeg bare 0,5V inn på Basis.
Magnetventilen koplet jeg inn mellom Collektor +12V fra et bilbatteri. Koplet sammen Arduinoens GND mot 0V på batteriet. Brukte også en motkoplet diode over skolen.
Har det noe å si at min Arduino bare har power via USB-porten? Noen som har en standard løsning på en slik driverkrets?
Den mest anbefalede måde at gøre det på er med en MOSFET transistor, den bliver ikke så varm som en "almindelig" transistor.
Du skal bare være opmærksom på at det skal være en logic-level udgave, dvs. at den er fuldt ledende når den får de 5V på gaten som din Arduino leverer.
"Logic Level"? Det har jeg ikke satt inn, mulig det er feilen?
Ellers så ser jeg det finnes flere slike kretser hvor det er benyttet en Basis-motstand på bare 1K Ohm. Skal teste ut det også når jeg kommer hjem. Jeg fikk jo BE spenningen opp til 0,5V med dagens basismotstand på 2500 Ohm. I det andre eksemplet du linket til så er det benyttet en TIP102 darlington transister. Den krever en BE-spenning på 1,3V, men i følge Wikipedia så er den veldig treg. Wikipedia omtaler "Silicon diode opto-isolator" som den kjappeste løsningen". Har liggende noen 0,8A SRC Triac'er også. Mulig dem kan klare å gjøre jobben.
Dette er sketchet jeg brukte. Hjelp meg gjerne å sette inn det med "Logic Level" i scriptet.
/*
SLIPPE TO DRÅPER TETT ETTER HVERANDRE ?
Inngang 2 trekkes lava via en 10K resistor og trekkes til +5V ved hjelp av en momentan trykkbryter
*/
Det med logic-level er en egenskab for MOFET's, det har ikke noget med din sketch at gøre.
Det hjælper sikkert med en mindre basismodstand, bare basisstrømmen ikke bliver over de 20ma
Iøvrigt ville dt hjælpe på læsbarheden hvis du sætter code tags omkring koden, sådan her:
/*
SLIPPE TO DRÅPER TETT ETTER HVERANDRE ?
Inngang 2 trekkes lava via en 10K resistor og trekkes til +5V ved hjelp av en momentan trykkbryter
*/
const int buttonPin=2;
const int ledPin=12;
int buttonState=2;
void setup(){
pinMode(ledPin, OUTPUT);
pinMode(buttonPin, INPUT);}
void loop(){
buttonState=digitalRead(buttonPin);
if(buttonState == HIGH){
delay(1000);
digitalWrite(ledPin,HIGH);
delay(500);
digitalWrite(ledPin,LOW);
delay(200);
digitalWrite(ledPin,HIGH);
delay(500);
digitalWrite(ledPin,LOW);}
}