Arduino – die neusten Beiträge

Transistor mit Arduino verwenden, 12v schalten?

Hallo allerseits,

ich bin grade dabei für meine Rift s eine Kühllösung zu bauen, da mir relativ warm wird wenn ich spiele ich habe vor 2 Lüfter zu nutzen die auf 12v laufen, jedoch kann der Arduino natürlich nur 5v ausgeben deshalb stehe ich vor der Qual der Wahl welchen Transistor oder Mosfet ich nutzen sollte jetzt hab ich hier mal paar Daten:

Für die Lüfter:

Nennspannung: DC 12V

Nennstrom: 0,08A

Leistungsaufnahme: 1W

Wie gesagt von den Lüftern würden zwei parallel geschaltet werden..

Also müsste der Transistor mit 0,16A und 2W bei 12v Klarkommen können und mit 5v geschaltet werden können ohne dabei zu große Hitze(wird verlötet und kommt mit PLA(kunstoff) in Kontakt) zu entwickeln, bestenfalls ohne Kühlkörper. Der arduino nano kann bis zu 20mA schalten welche Wiederstände ich dann bräuchte könntet ihr auch gerne mit antworten.

Der Transistor würde dann als schalter verwendet werden und mithilfe von PWM die Lüftergeschwindigkeit Regulieren dabei müsste der Transistor bis zu 980Hz abkönnen..

Falls ich nötige Informationen vergessen habe sind hier die links zu den Dokumentationen (Mit den drei Transistoren die evt in frage kämen):

Arduino nano: https://store.arduino.cc/arduino-nano-every-with-headers

Lüfter: https://www.amazon.de/Brushless-L%C3%A4rmarmer-K%C3%BChlk%C3%BChler-Ventilator-Extruder/dp/B07JQ89YC7/ref=sr_1_5?__mk_de_DE=%C3%85M%C3%85%C5%BD%C3%95%C3%91&dchild=1

PN2907A: https://cdn-shop.adafruit.com/product-files/3598/PN2907A-D.PDF

IRLB8721PbF: https://cdn-shop.adafruit.com/datasheets/irlb8721pbf.pdf

TIP120: https://cdn-shop.adafruit.com/datasheets/TIP120.pdf

Danke für die Antworten im voraus!

Ich werde fragen in den Kommentaren versuchen so früh wie möglich beantworten.

Technik, Elektronik, Arduino

Wie schaffe ich es, dass ich eine LED durch Knopfdruck blinken lassen kann und durch den Knopf die LED dann wieder ausschalten kann?

Hi, ich will mit einer LED ein Auge nachstellen. Um genauer zu werden, man soll per Knopfdruck die LED anschalten, diese soll dann 5 Sekunden an sein, dann für 1 Sekunde aus und dann wieder für 5 Sekunden an, und so weiter... Wenn man dann aber den Taster wieder betätigt, soll die LED ausgehen und die LED soll dann einfach aus bleiben.

Ich habe bereits ein Sketch geschrieben, in dem die LED blinkt und wenn man den Knopf drückt, die LED wieder ausgeht. Soweit so gut, aber ich hab leider keine Ahnung, wie ich es hinbekomme, dass die LED nicht einfach nur blinkt, sondern halt für 5s blinkt, dann für 1s und so weiter, und nicht einfach nur in einem Intervall von 1 Sekunde... Habt ihr eine Idee, was ich im Sketch falsch gemacht habe, oder eine IDee wie man das Problem lösen kann?

Sketch:

int ledState = LOW; 

uint8_t TasterValue = 0;

uint8_t BlinkValue = 0;

uint8_t status = 0;

unsigned long previousMillis = 0;     

const byte TasterPin = 12; 

const long interval = 1000;        // Blinkintervall in Millisekunden

void setup() {

 pinMode(13, OUTPUT); 

 pinMode (TasterPin, INPUT_PULLUP); 

}

void loop() {

 unsigned long currentMillis = millis();

 if (BlinkValue == HIGH) {          

  if (currentMillis - previousMillis >= interval) {

   previousMillis = currentMillis;

   if (ledState == LOW)

    ledState = HIGH;

   else

    ledState = LOW;

   digitalWrite(13, ledState);

  }

 }

 else

  digitalWrite(13, LOW);       

 

 TasterValue = digitalRead (TasterPin); 

 if (status != TasterValue) {   

  if (TasterValue) {            

   BlinkValue = !BlinkValue;    

  }

  status = TasterValue;     

  delay (200);

 }

}

Ich hoffe das dies einigermaßen übersichtlich ist und nur nochmal zum Verständnis. Mit diesem Sketch kann ich per Knopfdruck die LED aktivieren und diese blinkt dann im Intervall von 1s. Ich will aber das Gleiche, nur dass die LED nicht einfach nur im Intervall von 1s blinkt sondern dass die LED 5s an ist, dann 1s aus und dann wieder 5s an..., aber man soll das ganze per Knopfdruck komplett wieder ausschalten können.

~ArduinoGeek

Computer, Technik, Elektronik, programmieren, Arduino, LED, Sketch, Technologie, Arduino Uno, Arduino IDE

Feuchtigkeitssensor wie sinnvoller anwenden in automatischer Gießanlage (Arduino)?

Hi,

Ich habe mir vor einem Jahr eine automatische Gießanlage mit einem Arduino gebaut. Die macht ihre Arbeit hervorragend. Gießt ein bis zwei Mal am Tag die Blumenkästen. Wassertank reicht etwa 14 Tage, ist der leer schaltet sich die Pumpe nicht an. Alles prima.

Jedoch war die eigentliche Absicht, erst die Feuchtigkeit zu messen und danach zu entscheiden ob gegossen werden muss oder nicht. Platine ist schon ne Weile angepasst und der Sketch geschrieben.

Mein Problem ist aber, dass ich mir den Messvorgang selber, einfacher vorgestellt hätte. Ich habe innerhalb nur eines Blumenkastens extreme Unterschiede in der Feuchtigkeit. Der Sensor ist so programmiert das der Wert einen Bereich von 0 bis 100 hat. Nun ist der Wert selber so unterschiedlich innerhalb weniger Zentimeter das zwischen etwa 40 und 80 alles möglich ist.

Ich hab kein Plan wie ich ansatzweise einen Mittelwert erreiche oder ob ich es ganz anders angehen muss. Ich habe eigentlich auch keinen Bock in jedem Kasten 2 Sensoren einzustellen und dann den Mittelwert zu errechnen.

Erst mal wäre das ein enormer Kabelsalat und dann wäre das immer noch ungenau weil der Wert innerhalb keiner Bereiche stark von einander abweicht.

Ich überlege schon seit Wochen wie es doch möglich wäre, eine sinnvolle Messung vorzunehmen.

Bild zum Beitrag
Erde, Giessen, Arduino, Blumenkasten, Feuchtigkeit, messen, Sensor

Wie behebe ich dieses Upload-Problem (Arduino)?

Ich brauche Hilfe... Ich möchte ein Projekt bauen, das auf einem LCD ein VU-Meter, sowie eine digitale Uhr anzeigt. Den Code habe ich von einem Youtuber kopiert (Cine-Lights), und alle Libraries habe ich auch. Jdeoch steht beim Upload: Bla Bla Bla, Zugriff verweigert... Der Fehlercode ist hier:

Arduino: 1.8.9 (Windows 8.1), Board: "Arduino/Genuino Uno"

C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\arduino-builder -dump-prefs -logger=machine -hardware C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware -tools C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino--prefs=runtime.tools.avrdude-6.3.0-arduino14.path=C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware\tools\avr -prefs=runtime.tools.avr-gcc-5.4.0-atmel3.6.1-arduino2.path=C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware\tools\avr -verbose C:\Users\Marvin\Downloads\vumeterclock\vumeterclock\lcdvumeter\lcdvumeter.ino

C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\arduino-builder -compile -logger=machine -hardware C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware -tools C:\Users\Marvin\Documents\Arduino\libraries -fqbn=arduino:avr:uno -vid-pid=0X2341_0X0043 -ide-version=10809 -build-path C:\Users\Marvin\AppData\Local\Temp\arduino_build_61715 -warnings=none -build-cache C:\Users\Marvin\AppData\Local\Temp\arduino_cache_745094 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.arduinoOTA.path=C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware\tools\avr -prefs=runtime.tools.arduinoOTA-1.2.1.path=C:\Users\Marvin\Downloads-prefs=runtime.tools.avr-gcc.path=C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware\tools\avr -prefs=runtime.tools.avr-gcc-5.4.0-atmel3.6.1-arduino2.path=C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware\tools\avr -verbose C:\Users\Marvin\Downloads\vumeterclock\vumeterclock\lcdvumeter\lcdvumeter.ino

Using board 'uno' from platform in folder: C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware\arduino\avr

Using core 'arduino' from platform in folder: C:\Users\Marvin\Downloads\Programme\arduino-1.8.9-windows\arduino-1.8.9\hardware\arduino\avr

open C:\Users\Marvin\AppData\Local\Temp\arduino_build_61715\sketch\lcdvumeter.ino.cpp: Zugriff verweigert

Error compiling for board Arduino/Genuino Uno.

Bitte helft mir

Computer, Technik, programmieren, Arduino, LCD

Arduino upload geht nicht?

hey, ich fange gerade mit arduino zeug an und wenn ihc versuche einen einfachen code upzuloaden kommt in der ide folgende fehlermeldung:

////////////////

Arduino: 1.8.9 (Windows 10), Board: "Arduino Nano, ATmega328P"

Sketch uses 942 bytes (3%) of program storage space. Maximum is 30720 bytes.

Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.

D:\Programme\arduino ide\Arduino\hardware\tools\avr/bin/avrdude -CD:\Programme\arduino ide\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -carduino -PCOM9 -b115200 -D -Uflash:w:C:\Users\Andreas\AppData\Local\Temp\arduino_build_797620/redgreensig.ino.hex:i

avrdude: Version 6.3-20171130

        Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/

        Copyright (c) 2007-2014 Joerg Wunsch

        System wide configuration file is "D:\Programme\arduino ide\Arduino\hardware\tools\avr/etc/avrdude.conf"

        Using Port                   : COM9

        Using Programmer             : arduino

        Overriding Baud Rate         : 115200

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x6a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x6a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x6a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x6a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x6a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x6a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x6a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x6a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x6a

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x6a

avrdude done. Thank you.

Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.

This report would have more information with

"Show verbose output during compilation"

option enabled in File -> Preferences.

///////////////

Das ist der Code falls es relevant sein sollte...int led = 5; // the pin the LED is connected to

void setup()
{
pinMode(led, OUTPUT); // Declare the LED as an output
}

void loop()
{
digitalWrite(led, HIGH);
delay(1000);
digitalWrite(led, LOW);
delay(1000);
}

ps. port und board sind richtig ausgewählt

lg

Computer, Technik, programmieren, Arduino, Technologie

Meistgelesene Beiträge zum Thema Arduino