Frage von ttgamer1, 35

Arduino servo in der bewegung anhalten?

ich möchte das der arduino in der bewegung 0°-180 und dann von 180°-0 durchläuft. Falls der ultraschall sensor <30 ausgibt soll er sofort anhalten. Falls es wieder >30 ist soll er weiterlaufen. Das auslesen des ultraschallsensor habe ich schon geschrieben und es funktioniert auch. So hoffe ich das jmd von euch mir hier weiterhelfen kann. Da meine idee leider nicht funktioniert hat.

Vielen Dank im voraus

Antwort
von HelftMir123, 35

ich vermute, du willst den Arduino etwas in einem bestimmten Winkel kippen bzw. hin und her bewegen und hast diese Bewegung bereits erfolgreich programmiert. Er soll anhalten, wenn sich etwas nähert und weiterlaufen, wenn nichts mehr im Weg ist, oder?

ein genaues Programm kann ich dir nicht anbieten (mein Kenntnisse sind etwas "eingerostet" weil dieses Thema das letzte Mal vor ca. 2 Jahren in der Schule behandelt wurde...^^) aber ich würde es so probieren:

  • das Bewegen lässt du ganz normal dauerhaft ablaufen, im selben Programmteil wird außerdem der Wert des Sensors ausgelesen und einer Variablen zugewiesen. Anschließend erfolg eine if - else-Abfrage. Wenn (if) der Wert unter 30 ist springt das Programm in einen anderen Teil / eine andere Schleife, an sonsten (else) wiederholt es die Bewegung(sschleife).
  • die andere Schleife lässt den Arduino stoppen und ließt anschließend wieder den Wert des Sensors aus. Wieder kommt eine if- else-Bedingung. Wenn der Wert wieder über 30 ist springt das Programm wieder in den ersten Teil, an sonsten wird die "Anhalteschleife" wiederholt. -> der Ardunio bleibt so lange stehen, bis der Wert wieder über 30 ist und er zurück in die Bewegungsschleife kommt

ich hoffe meine Idee ist nicht komplett falsch, es ist, wie gesagt schon etwas her seit ich mit dem Arduino gearbeitet habe ;)

Keine passende Antwort gefunden?

Fragen Sie die Community