Arduino Lauflicht Programmierung?

Hallo ich bin Neu hier und auch neu in der Materie Arduino. Ich hoffe hier kann mir einer helfen- Ich möchte ein Lauflicht (wie auf Video:https://www.instagram.com/p/CHOOV51Fj_T/?igshid=tudc3clo118m) in Kaltweiss für zwei Led Bänder programmieren die Parallel zueinander anlaufen sollen. Dazu habe ich eine gewisse Schaltung aufgebaut (siehe Bild) die via Pulldown-Widerstand angeschalten bzw. ausgeschalten werden sollen. Zum beigefügten Bild kurz eine Erklärung meiner Vorstellung:

Über den 230V Funkschalter wird ein Funkaktor angesteuert der wiederum die Primärseite des 5V Trafos an bzw. ausschalten kann. Über die Sekundärseite werden die Led-Strips bestromt sowie der Digitial Port 11 der wiederum einen "Pulldown-Widerstand" von 10kOhm vorgeschalten hat und als An bzw. Ausschalter dem Arduino einen Digitalenschalter aufzeigen soll, damit dieser weiss wann er die Led-Strips zu schalten hat. Die Led sollen dann lediglich in einem Kaltweiss Ton als Lauflicht (wie im Video) parallel zu einander loslaufen. Es sind zwei led streifen mit jeweils 165LED.

Der Arduino UNO selbst ist über ein seperates Netzteil dauerbestromt. Soweit in der Theorie...
Jetzt brauche ich allerdings eure Hilfe, denn den Skript dafür zu programmieren traue ich mir absolut nicht zu, da ich dazu leider absolut zu wenig Ahnung davon habe. Ich hoffe einer von Euch kann mir helfen und dazu einen passenden Skript schreiben und Ihn mir hier zur Verfügung stellen. Freue mich für jede Hilfreiche Antwort. Liebe Grüße

Bild zum Beitrag
Computer, Technik, programmieren, Arduino, LED, Technologie, Arduino Uno, Spiele und Gaming
Warum gibt mir DHT Sensor im seriellen Monitor immer 0°C und 0% Luftfeuchtigkeit an?

Die Verdrahtung stimmt ganz sicher aber ich habe schon mehrere Programme probiert und der Sensor wird zwar erkannt, gibt aber immer nur 0 aus.

// Example testing sketch for various DHT humidity/temperature sensors
// Written by ladyada, public domain


// REQUIRES the following Arduino libraries:
// - DHT Sensor Library: https://github.com/adafruit/DHT-sensor-library
// - Adafruit Unified Sensor Lib: https://github.com/adafruit/Adafruit_Sensor


#include "DHT.h"


#define DHTPIN 9    // Digital pin connected to the DHT sensor
// Feather HUZZAH ESP8266 note: use pins 3, 4, 5, 12, 13 or 14 --
// Pin 15 can work but DHT must be disconnected during program upload.


// Uncomment whatever type you're using!
//#define DHTTYPE DHT11   // DHT 11
#define DHTTYPE DHT11   // DHT 22  (AM2302), AM2321
//#define DHTTYPE DHT21   // DHT 21 (AM2301)


// Connect pin 1 (on the left) of the sensor to +5V
// NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor


// Initialize DHT sensor.
// Note that older versions of this library took an optional third parameter to
// tweak the timings for faster processors.  This parameter is no longer needed
// as the current DHT reading algorithm adjusts itself to work on faster procs.
DHT dht(DHTPIN, DHTTYPE);


void setup() {
  Serial.begin(9600);
  Serial.println(F("DHTxx test!"));


  dht.begin();
}


void loop() {
  // Wait a few seconds between measurements.
  delay(2000);


  // Reading temperature or humidity takes about 250 milliseconds!
  // Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor)
  float h = dht.readHumidity();
  // Read temperature as Celsius (the default)
  float t = dht.readTemperature();
  // Read temperature as Fahrenheit (isFahrenheit = true)
  float f = dht.readTemperature(true);


  // Check if any reads failed and exit early (to try again).
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println(F("Failed to read from DHT sensor!"));
    return;
  }


  // Compute heat index in Fahrenheit (the default)
  float hif = dht.computeHeatIndex(f, h);
  // Compute heat index in Celsius (isFahreheit = false)
  float hic = dht.computeHeatIndex(t, h, false);


  Serial.print(F("Humidity: "));
  Serial.print(h);
  Serial.print(F("%  Temperature: "));
  Serial.print(t);
  Serial.print(F("°C "));
  Serial.print(f);
  Serial.print(F("°F  Heat index: "));
  Serial.print(hic);
  Serial.print(F("°C "));
  Serial.print(hif);
  Serial.println(F("°F"));
}
programmieren, Arduino Uno, Arduino Nano
Arduino nano exit Status 1?

Guten nachmittag

Ich habe mir einen Arduino nano gekauft und wollte ihn ausprobieren, jedoch passiert immer wenn ich es hochladen will das:

Der Sketch verwendet 1506 Bytes (4%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.

Globale Variablen verwenden 196 Bytes (9%) des dynamischen Speichers, 1852 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.

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

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

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

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

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

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

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

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

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

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

Fehlgeschlagenes Hochladen: Hochladefehler: exit status 1

Weiter, wird mir auch nicht angezeigt bei welchem port er angeschlossen ist (ich musste also try and error versuchen)

Was ist das Problem und wie kann ich das am besten beheben?

Danke im vorraus für die Antworten!

Ps:

Das ist das Program:

void setup() {

 // put your setup code here, to run once:

}

void loop() {

 // put your main code here, to run repeatedly:

Serial.print("Hello World");

delay(100);

}

Also sehr einfach, einfach um ihn zu testen

Arduino, Programmiersprache, Arduino Uno, Arduino Nano, Arduino IDE
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
Arduino - Musik abspielen und gleichzeitig LEDs steuern?

In meinem Projekt möchte ich mit einem Elegoo Uno R3 einen mini DVPlayer von AZDelivery (MP3-Player auf kleiner Platine) bedienen und einen Song abspielen.

Gleichzeitig sollen zwei LEDs nach einem Muster blinken.

Ist soviel Multitasking mit irgendeinem Workaround möglich?

Hier der Code, wie müsste ich das mit den LEDs einpflegen?

/***************************************************


DFPlayer - A Mini MP3 Player For Arduino
 <https://www.dfrobot.com/product-1121.html>


#include "Arduino.h"
#include "SoftwareSerial.h"
#include "DFRobotDFPlayerMini.h"


SoftwareSerial mySoftwareSerial(10, 11); // RX, TX
DFRobotDFPlayerMini myDFPlayer;
void printDetail(uint8_t type, int value);


void setup()
{
  mySoftwareSerial.begin(9600);
  Serial.begin(115200);
  
  Serial.println();
  Serial.println(F("DFRobot DFPlayer Mini Demo"));
  Serial.println(F("Initializing DFPlayer ... (May take 3~5 seconds)"));
  
  if (!myDFPlayer.begin(mySoftwareSerial)) {  //Use softwareSerial to communicate with mp3.
    Serial.println(F("Unable to begin:"));

    while(true){
      delay(0); // Code to compatible with ESP8266 watch dog.
    }
  }
  Serial.println(F("DFPlayer Mini online."));
  
  myDFPlayer.volume(30); // Set volume 0-30
  myDFPlayer.play(1);  //Play first mp3
}


void loop()
{
  static unsigned long timer = millis();
  
  if (millis() - timer > 3000) {
    timer = millis();
 //   myDFPlayer.next();  //Play next mp3 eve 
  }
  
  if (myDFPlayer.available()) {
    printDetail(myDFPlayer.readType(), myDFPlayer.read()); 
  }
}


void printDetail(uint8_t type, int value){
  switch (type) {
    case TimeOut:
      Serial.println(F("Time Out!"));
      break;
    case WrongStack:
      Serial.println(F("Stack Wrong!"));
      break;
    case DFPlayerCardInserted:
      Serial.println(F("Card Inserted!"));
      break;
    case DFPlayerCardRemoved:
      Serial.println(F("Card Removed!"));
      break;
    case DFPlayerCardOnline:
      Serial.println(F("Card Online!"));
      break;
    case DFPlayerPlayFinished:
      Serial.print(F("Number:"));
      Serial.print(value);
      Serial.println(F(" Play Finished!"));
      break;
    case DFPlayerError:
      Serial.print(F("DFPlayerError:"));
      switch (value) {
        case Busy:
          Serial.println(F("Card not found"));
          break;
        case Sleeping:
          Serial.println(F("Sleeping"));
          break;
        case SerialWrongStack:
          Serial.println(F("Get Wrong Stack"));
          break;
        case CheckSumNotMatch:
          Serial.println(F("Check Sum Not Match"));
          break;
        case FileIndexOut:
          Serial.println(F("File Index Out of Bound"));
          break;
        case FileMismatch:
          Serial.println(F("Cannot Find File"));
          break;
        case Advertise:
          Serial.println(F("In Advertise"));
          break;
        default:
          break;
      }
      break;
    default:
      break;
  }
}


Arduino, Arduino Uno, Elegoo
Wie kann ich diese delays mit millis ersetzen?

Hallo, ich versuche mir gerade die millis Funktion beizubringen. Zurzeit verstehe ich wie man Blink without delay an der internen LED programmiert, aber ich blicke nicht ganz durch, wie ich mein ganzes Programm mit millis ersetze. Ich möchte nämlich, dass sich zwei Motoren abhängig von den Messwerten eines Ultraschallsensors drehen. Wenn die Distanz >=5 ist, sollen sie sich beide vorwärts drehen ansonsten für 3 Sekunden rückwärts (Im Code sieht es nur so komisch aus mit FORWARD und BACKWARD, weil ich die Anschlüsse bei einem Motor falsch angelötet habe). Ich würde mich sehr über eine Antwort freuen :)

#include <AFMotor.h>
#include <Servo.h>


//AF_DCMotor motor1(1);
//AF_DCMotor motor2(2);
AF_DCMotor motor3(3);
AF_DCMotor motor4(4);


int trigPin = 9;
int echoPin = 10;


unsigned long currentmillis;
unsigned long previousmillis;
const long interval_1 = 1000;
const long interval_2 = 10;


void setup() {
  Serial.begin(9600); 
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);


//  motor1.setSpeed(250);
//  motor1.run(RELEASE);
//  motor2.setSpeed(250);
//  motor2.run(RELEASE);
  motor3.setSpeed(250);
  motor3.run(RELEASE);
  motor4.setSpeed(250);
  motor4.run(RELEASE);


}


void loop() {
  //Ultraschallsensor
  currentmillis = millis();
  long duration, distance;


  if (currentmillis - previousmillis >= interval_1){
  digitalWrite(trigPin,HIGH);
  //delay(1000);
     previousmillis = currentmillis;
  }
  if (currentmillis - previousmillis >= interval_2){
  digitalWrite(trigPin, LOW);
  duration=pulseIn(echoPin, HIGH);
  distance =(duration/2)/29.1;
  Serial.print(distance);
  Serial.println("CM");
  //delay (10);
     previousmillis = currentmillis;
  }


//Motoren


//vorwärts
if (distance >=5){
  motor3.run(FORWARD);
  motor4.run(BACKWARD);
}
//rückwärts
if (currentmillis - previousmillis <= interval_1){
  if (distance <=5) {
  motor3.run(BACKWARD);
  motor4.run(FORWARD);
  //delay(3000);
    previousmillis = currentmillis;
  }
}
Arduino, Arduino Uno
Arduino Uno; programmer not responding - was tun?

Hallo erstmal..

Ich habe einen Arduino Uno, der eigentlich prima funktioniert hat. Seit kurzem - ich bin mir jedoch keines Fehlers bewusst, da ich alles wie sonst auch gemaht habe - bekomme ih immer folgende Fehlermeldung:

Beim Hochladen des Sketches ist ein Fehler aufgetreten avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xf9 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xf9 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xf9 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xf9 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xf9 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xf9 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xf9 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xf9 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xf9 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xf9 Problem beim Hochladen auf das Board. Hilfestellung dazu unter http://www.arduino.cc/en/Guide/Troubleshooting#upload.

Wenn ich auf "hochladen mit Programmer" drücke, kommt einfach nur "Beim Hochladen des Sketches ist ein Fehler aufgetreten"...das passiert Da ich mich mit Computern etc. leider garnicht auskenne und einfach nur ein bisschen programmieren kann, wärs echt hilfreich, wenn ich eine einfache/leicht verständliche Erklärung zur Lösung des Problems bekommen könnte... ;)

Danke schonmal =)

Fehlermeldung, programmer, Arduino Uno