Erbitte Hilfe bei Arduino-Programmierung
Geizhals » Forum » Programmierung » Erbitte Hilfe bei Arduino-Programmierung (48 Beiträge, 678 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
Erbitte Hilfe bei Arduino-Programmierung
04.12.2017, 12:04:03
Hallo Zusammen
Ich bin absoluter Neuling in der Programmierung und dachte mir ich probiere das mal mit nem Arduino aus.
Also hab ich mir so ein Einsteiger-Car-Set besorgt (mit IR, Bluetooth,Ultraschall bzw. Linienverfolgung) und zusammengebastelt.
Auch die Beispiele die dabei waren sind mir klar und funktionieren.

Jetzt wollte ich die Bluetoothsteuerung soweit adaptieren, dass parallel dazu auch via Ultraschall der Abstand nach vorne gemessen wird und nur wenn mehr als 80cm Platz ist, dass Teil nach vorne fährt.

Tja fast geschafft, denn bis lang habe ich es nur geschafft, dass das Car generell vor, zurück, links, oder rechts fährt, wenn mehr als 80cm PLatz sind.

Hier einmal die Schleife die das bewerkstelligt:

void loop() {
  
    digitalWrite(Trig, LOW);
    delay(5);
    digitalWrite(Trig, HIGH);
    delay(10);
    digitalWrite(Trig, LOW);
    dauer = pulseIn(Echo, HIGH);
    entfernung = (dauer/2) * 0.03432;
    if (entfernung >= 1000 || entfernung <= 0)
      {
      Serial.println("Kein Messwert");
      }
      else
      {
      Serial.print(entfernung);
      Serial.println(" cm");
      }  
           if (entfernung >= 80){
           getstr = Serial.read();
           switch(getstr){
                  case 'a': stateChange(); break;
                  case 'f': forward(); break;
                  case 'b': back(); break;
                  case 'l': left(); break;
                  case 'r': right(); break;
                  case 's': stop(); break;
                  default:  break;
              }
           }
          else {
                stop();
              }
{              delay(1000);
              }
}


Jetzt habe ich schon probiert die Steuerbefehle für zurück, links  rechts zusätzlich in eine
else if -Bedingung zu geben wenn die Distanz kleiner 80cm ist => bringt nichts bzw. bewirkt, dass die Ultraschallmessung überhaupt niccht mehr greift.


Kann mir jemand in simpler Sprache sagen, was ich falsch mache? (oder wie der Code aussehen muss, damit das klappt?)
Bittte DAU-gerecht, da wiegesagt das Ganze für mich absolutes Neuland ist.

Vielen Dank schon jetzt vorab.

lg bono_d70
_______________________________________________________________________________ Rechtschreibfehler dürfen vom Finder, ohne Angabe von Gründen, behalten werden!

Bekennender Agnostiker!

Von Innen sieht ein Hamsterrad aus wie die Karriereleiter ;-)

Denken ist wie googeln, nur krasser!
Antworten PM Übersicht Chronologisch
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung