Jump to content

TUTORIAL Arduino WiFi Startampel [WIP]


Recommended Posts

In Arbeit. Dateien, Anweisungen und andere Dinge können sich ändern!

Hier möchte ich euch die Möglichkeit vorstellen, mit einem WiFi fähigen Arduino eine synchrone Startampel zu realisieren.

 

WARNUNG: Ich habe mir meine Programmier- und Elektrokenntnisse selbst angeeignet und gebe keine Garantie für die Richtigkeit der Angaben. Jeder handelt auf sein eigenes Risiko, ich übernehme keine Haftung für etwaige Schäden.

 

 

Anleitung für eigene Kreationen:

Hier eine kurze Zusammenfassung der nötigsten Schritte für die Leute, welche sich ihre eigene Ampel mit eigener Programmierung zusammen bauen wollen.

Das Prinzip der Synchronisierung besteht im Wesentlichen darin, dass die Ampel die gemeinsame Startzeit vom Race Server abfragt. Die Möglichkeit zur Einstellung dieser Zeit muss der verwendete Server mitbringen. 

Dazu sendet die Ampel ein Ping Request mit der Game ID an den Server, welcher mit der entsprechenden Antwort unter anderem die Startzeit (start _time) und die Startverzögerung (start_delay) zurück sendet. Die Server URL und die Game ID übermittle ich mit Hilfe eines Webinterface, welches auf dem Arduino läuft.

Diese Startzeit lasse ich in das UnixZeit Format umwandeln und vergleichen sie mit der aktuellen UnixZeit. Möglicherweise braucht es hier noch einen kleinen Offset, bei mir 1 Sekunde.

Wenn beide Werte gleich sind, werden die Ampel sowie der Motor in der Dr!ft App und die Arduino Ampel gestartet. Dieser Vorgang dauert ohne Startverzögerung bis Grün 5 Sekunden.

Um die Startverzögerung mit einzubinden, muss für die Ampel noch der Wert (start_delay) aus der Server-Antwort eingebaut werden, dieser gibt die Verzögerung zwischen Gelb und Grün der Dr!ft App an.

Anleitung zum Nachbauen meiner Ampel [In Arbeit]

Eine kommerzielle Nutzung der Daten ist nicht gestattet!

Hier ein Video mit dem kompletten Ablauf und der Bedienung über das Webinterface:

 

Elektronikteileliste:

  • 1x Arduino MKR WiFi 1010
  • 1x DfPlayer
  • 1x TF Speicherkarte FAT32 Max.: 32GB
  • 1x Lautsprecher < 3 Watt
  • 1x 0,91 Zoll OLED Display I2C SSD1306 Chip 128 x 32 Pixel
  • 2x MAX7219 8x32 4 in 1 Dot Matrix LED Display
  • 1x WS2812B LED Streifen 60 LEDs/Meter
  • 1x USB A auf Micro USB Kabel
  • möglichst verschieden farbige Kupferlitzen (Kabel)
  • mehrere 2,54mm Dupont Stecker Männlich Weiblich + passende Crimpzange
  • 10-12 Pin Header (Stiftleiste) 2,54mm
  • 3x Widerstand 1K Ohm (neu einer mehr)
  • 1x Lochrasterplatine
  • 1x Lötkolben
  • 1x Lötzinn
  • 1x NPN N2222 Transistor (neu)
  • 1x-3x Modellbau Rundumleuchte 5V /ich habe eine drei adrige, +5, gnd und Signal , letzterer wird nicht unbedingt benötigt.(neu)

NEUE Verkabelung mit Rundumleuchte: https://imgur.com/a/EytaDvp

Edit: Anschluss der Rundumleuchte von Pin 1 auf Pin 2 verschoben, für kommende Updates ab Version 19_4

3D Druck Liste: Startampel (5mm LEDs)Zusatzteile(Links führen zu Thingiverse)

 

  • 1x arm_Ampel_Oben (Startampel (5mm LEDs))
  • 1x WS2812_LEDs_arm_Ampel_Unten (Zusatzteile WiFi Ampel)
  • 2x LEDMatrixRahmen (Startampel (5mm LEDs))
  • 2x Bein_Oben (Startampel (5mm LEDs))
  • 2x Bein_V2 und 2x gespiegelt (Startampel (5mm LEDs))
  • 2x Sockel nach Wahl (Startampel (5mm LEDs))
  • 2x arm_Platinenhalter (Startampel (5mm LEDs))
  • 6x arm (Startampel (5mm LEDs))
  • 2x ArmVerninderVersion3_End (Startampel (5mm LEDs))
  • 4x ArmVerninderVersion3_1 (Startampel (5mm LEDs))
  • 4x ArmVerninderVersion3_2 (Startampel (5mm LEDs))
  • 1x OLED_Abdeckung (Zusatzteile WiFi Ampel)
  • 2x Ampel_WS2812_LEDs_front (Zusatzteile WiFi Ampel)
  • 2x Ampel_WS2812_LEDs_back (Zusatzteile WiFi Ampel)
  • 1x DFPlayerPlusLautsprecherhalter (Zusatzteile WiFi Ampel)
  • 1x PlatinenhalterKombi (Zusatzteile WiFi Ampel)

Sonstige Teile:

  • ca. 104x M3x10 DIN 912 (Schlüssel für Innensechskant 2,5mm)
  • ca. 8x M3x16 DIN 912
  • ca. 108 M3 Gewindeeinsätze (Einpressmutter für Kunststoffteile)
  • ca. 12x M3 Muttern DIN 934 (Gabelschlüssel 5,5mm)
  • 4x 1,6mm PT-Schraube wie in den Dr!ft Racern oder vergleichbar

Arduino MKR WiFi 1010 wird benötigt! Alle weiteren benötigten Sachen stehen in der Beschreibung der Zusatzteile.

Anleitung zur Installation der Arduino IDE und Upload des StartAmpel Sketches:

  • Folge der "Installation Arduino IDE und Upload des Sketches.pdf" im Anhang
  • Downloade und entpacke die StartAmpel.zip und mp3.zp im Anhang

Anleitung zur Bedienung der Ampel:

  • Folge der Anleitung "Bedienung der Ampel.pdf" im Anhang

 

Bei Problemen oder Verbesserungsvorschlägen, schreibt gerne eine Kommentar.

Neue mp3s ab Version 31 erforderlich!

 

 

Please log in to see the attachements

Please log in to see the attachements

 

Please log in to see the attachements

Please log in to see the attachements

Edited by Atomregen
Update StartAmpel31_5 und Anleitung zur Bedienung aktualisiert
  • Like 14
  • Thanks 4
Link to comment
Share on other sites

Bitte melde dich an um den Link zu sehen.

 Für die Verkabelung der Komponenten ist es erstmal geplant Bilder der Teile mit bunten Linien zu verbinden. Wie man die Stecker crimpen kann und zum Löten, gibt es im Internet schon genug Tutorials. Um das Programm dann auf den Arduino zu bekommen gibt es entweder Bilder oder ich versuche ein Video zu machen.

  • Like 2
Link to comment
Share on other sites

Bitte melde dich an um den Link zu sehen.

 vielen Dank für das veröffentlichen. Ich werde mir das auf jeden Fall Mal anschauen. 

Kann man auch 2 Displays an die Startampel anschließen? Ich Frage deshalb, weil bei meiner Strecke die Startampel mittig liegt und nicht alle Fahrer die Ampel so sehen können. 

Link to comment
Share on other sites

Neues Video im Startpost hinzugefügt.

Edit: Ein paar Rechtschreibfehler in der Weboberfläche und der Anleitung behoben. Aktuelle Version 17_2

Edit die zweite:

  • Auswahl für "Grünes Licht bei GO" eingefügt. Bei AN leuchtet die Ampel grün beim GO Signal, sonst geht sie aus, wie bei der Formel 1
  • Ansage beim automatischen Start geändert, "Start your Engine" zu "Engine Start"
  • kleine Bugfixes
Edited by Atomregen
  • Like 2
Link to comment
Share on other sites

  • 4 weeks later...
  • 2 weeks later...

Hallo Atomregen,

zuerst einmal vielen Dank für die Erweiterung der Startampel in die WiFi-Variante 👍. Ich hatte die alte Ampel mal angefangen nachzubauen, hatte das dann aber eingestellt, da ich mit meinem Kollegen auf die DR!FT Community Api bei unseren Rennen aufgesprungen bin und den Race-Start darüber synchronisiert hatte. Als ich jetzt die Erweiterung von Dir gesehen hatte habe ich die Ampel in den letzten Tagen nachgebaut und zur Funktion gebracht 😃, und kann nur sagen, echt klasse ! 👍

An einer Stelle hakt es allerdings bei mir und meinen Kenntnissen und ich komme nicht zum kompletten Abschluss: Die Synchro mit dem DR!FT-Server 🙄, manuell habe ich die Ampel am Laufen.

In der App gebe ich folgende Daten zum Starten der Synchro/CAPI mit dem Handy ein:

URL: http://192.XXX.XXX.X7:8001/game

Game-ID: Race1

Wenn ich es richtig verstehe müsste ich also bei der Ampel bei der LightControl angeben URL: http://192.XXX.XXX.X7   , Port: 8001    , GameID: Race 1  . Wenn ich dann den RaceServer starte kriege ich die Handy´s beim Start synchronisiert, aber leider nicht die Ampel mitgestartet.

Hast Du oder jemand anderes eine Idee, was ich falsch mache?

Vielen Dank für die Hilfe im Voraus.

Thomas

Edited by EMoschi
Link to comment
Share on other sites

Bitte melde dich an um den Link zu sehen.

 Hallo, danke für die Rückmeldung.

Tatsächlich hatte ich es noch nicht mit einem Lokalen Server probiert. Aber jetzt ist mir aufgefallen, das die Ampel nur mit https Seiten kommunizieren wollte. Das habe ich jetzt geändert und sollte auch mit http Adressen funktionieren.

Bei der Game ID musst du "game/Race1"  eingeben. Sprich alles was hinter dem Port kommt muss in die Game ID mit rein.

Bei http://192.x.x.21:8001/driftapi/game/Lobby1/1/Race1

sehe das so aus:

Please log in to see the images

PS. Neue Version im Startpost (StartAmpel17_5.zip)

Edited by Atomregen
  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

In order to optimize our website for you and to continuously improve it, we use cookies. By continuing to use the website, you consent to the use of cookies. Further information on cookies can be found in our Privacy Policy