Arduino für Hau den Lukas

OP #7579207

Hallo Zusammen

wir bauen gerade einen "Hau den Lukas". Ein Schlitten fährt nach dem Schlag in die Höhe. In der Schiene sind 5 Sensoren (TCRT5000) verbaut. Bei dem Sensor ist ein Relais dahinter, der dann geschalten werden soll wenn der Sensor auslöst.

Wie können wir es machen dass der Arduino beim ersten Sensor "startet" und dann schaut noch noch weitere Sensoren erreicht werden und dann dementsprechend die Relais schaltet?

wir stehen gerade ein bisschen auf der Leitung :) haben keine Richtigen Ansatz wie das gehen könnte, könnte uns jemand weiterhelfen?

Gruß Thomas

(Firma: Gast)

Thomas G. schrieb:

Wie können wir es machen dass der Arduino beim ersten Sensor "startet" und dann schaut noch noch weitere Sensoren erreicht werden und dann dementsprechend die Relais schaltet?

Endliche Automaten bauen!

Übrigens 2 Sensoren, in geringem Abstand reichen um die Geschwindigkeit des Schlittens zu messen. Mit der Geschwindigkeit kann man die Höhe ermitteln, denn die Gravitation ist recht genau/stabil.

Sind die Sensoren voneinander unabhängig? Jeder Sensor schaltet sein Relais?

Und wann sollen die Relais wieder ausgeschaltet werden? Nach einer Sekunde? Wenn der Schlitten wieder unten ist? Wenn jemand den Start-Knopf drückt?

Am einfachsten, ihr teilt das Problem in drei Schritte auf.

Zuerst den Sensor an den Arduino anschließen und mit Serial.print() testen, ob es funktioniert.

Dann ein Relais anschließen und schauen, ob ein Sensor ein Relais schaltet.

Erst danach einen Endlichen Automaten für den ganzen Ablauf schreiben.

Moderator (Firma: Titel) Persönliche Seite

Thomas G. schrieb:

In der Schiene sind 5 Sensoren (TCRT5000) verbaut.

Dir ist schon klar, dass diese Billigdinger je nach Sonneneinstrahlung mal funktionieren werden und mal nicht. Falls nein: einfach mal merken, falls da Probleme aufkommen und der Lukas mal geht und mal nicht.

Arduino F. schrieb:

Mit der Geschwindigkeit kann man die Höhe ermitteln

Auf jeden Fall genauer als mit 5 diskreten Lichtschranken. Man muss nur die Zeit zwischen den beiden Punkten zuverlässig und hinreichend genau erfassen.

Thomas G. schrieb:

Wie können wir es machen dass der Arduino beim ersten Sensor "startet"

Wie meinst du das mit "starten"? Dass er vorher stromlos ist? Oder dass er schon vorher läuft und drauf wartet, dass es losgeht?

Thomas G. schrieb:

Bei dem Sensor ist ein Relais dahinter, der dann geschalten werden soll wenn der Sensor auslöst.

Und wann soll das Relais wieder ausgeschaltet (*nicht en) werden?

*siehe dazu

Moderator (Firma: Titel) Persönliche Seite

Xanthippos schrieb:

Am einfachsten, ihr teilt das Problem in drei Schritte auf.

Das ist die richtige Vorgehensweise: Teile und herrsche.

Und das können ruhig noch mehr als 3 Schritte sein. Denn zuallererst muss ja jede Lichtschrenke

  1. bei jeder Umgebungshelligkeit sicher funktionieren, und dann
  2. vom Arduino sicher erkannt werden

Den Punkt 1. würde ich allem voran mit einem Oszilloskop prüfen. Dort kann man dann auch die Impulsform und Impulsdauer leicht erkennen und abschätzen, wie schnell man das auswerten muss.

Und bei 2. geht es sicher um wenige ms, da darf man nicht unnötig Rechenzeit im Programm verplempern.

Dort rechnet einer eine vo von mindestens 8,86m/s und somit 8,86mm pro ms aus:

Diese Sensoren werden das größte Problem werden. Ich würde da Hallsensoren oder Reedkontakte nehmen und einen kleinen Neodym-Magnet auf den Schlitten kleben.

Edit: besser Hallsensoren, ist ja son Apparat wo kräftig mit nem Hammer draufgekloppt wird...

Du willst nur das 1-5 Lampen an gehen und an bleiben wenn das Gewicht daran vorbeirauscht? Keine Geschwindigkeitsberechnung oder ähnliche Spielerein? Muss es denn ein Arduino sein?

Sonst nimm 5 der TCRT5000, schalte an jeden Ausgang ein RS Flipflop (der Ausgang der Lichtschranke kommt an den S Eingang), dessen Ausgang dann einen MOSFET schaltet. Sobald das Gewicht vorbei marschiert schaltet das FlipFlop und aktiviert die Lampe. Alle Lampen löschen kannst du dann mit einem Taster, der am R Eingang aller FlipFlops hängt. Einmal drücken, alles wieder aus. Eventuell musst du das Signal aus den TCRT5000 noch mal invertieren, keine Ahnung was die im ausgelösten Zustand für Pegel haben.

Angehängte Dateien:

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 2 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.