Erbitte Hilfe bei Arduino-Programmierung
Geizhals » Forum » Programmierung » Erbitte Hilfe bei Arduino-Programmierung (48 Beiträge, 458 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login | Registrierung ]
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 Alle Chronologisch
 
Melden nicht möglich
... Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (zeddicus am 04.12.2017 13:59:29)
..... Vom Autor zurückgezogen oder Autor hat seine Registrierung nicht bestätigt  (zeddicus am 04.12.2017 14:47:26)
 

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.
Auf ABGB §1330 Abs. 2 wird ausdrücklich hingewiesen.

Copyright © 1997-2017 Preisvergleich Internet Services AG