Sportiduino Das System der elektronischen Marke zum Orientierungslauf. Teil 2

    Teil 1

    5 Monate sind seit dem letzten Artikel vergangen, die Firmware wurde seitdem modifiziert, und jetzt arbeiten die Stationen noch zuverlässiger, und billige Chips enthalten 92 Markierungen, was fast allen Vorstellungen von Regisseuren genügt. Erfolgreich getestetes System bei Wettbewerben.

    Als ich beim letzten Mal schrieb, wurden nur 15 Stationen gesammelt, das System wurde nur im kleinen Sportlabyrinth getestet und die nächste Testaufgabe sollte bei massiveren und autonomen Wettbewerben durchgeführt werden, zu denen auch das 2nd Moscow Light gehörte . Dies ist ein zweitägiger Wettbewerb in touristischer Ausrichtung mit obligatorischer Übernachtung und voller Autonomie der Teilnehmer. Insgesamt 41 Kontrollpunkte, eine Vielzahl von Bewegungsmöglichkeiten, die Gesamtstrecke betrug 55 Kilometer. Es nahmen ungefähr 150 Teilnehmer teil. All dies stellte eine ernste Herausforderung für das Markierungssystem dar.

    Zunächst mussten weitere 25 Stationen gelötet werden. Da Beute und Photoresist nicht mehr in einem solchen Umfang gebastelt werden sollten, wurde die Fertigung nebenbei in China bestellt. Es erwies sich als recht preiswert und sehr bequem. Mit vorgefertigten Brettern zum Löten wurde es viel angenehmer, und die Ehe, weniger auszugehen, wurde grün und eher ordentlich. Natürlich musste ich noch ein paar Tage frei basteln. Jetzt denke ich an mehr Automatisierung, indem ich Schablonen und Lotpaste verwende.



    Die nachfolgenden Montageschritte änderten sich nicht, alles brach auch die Platinen durch die LED an das Gehäuse und überflutete es mit einem Compound. Bei den Wettbewerben war es trocken, so dass die Überlebensfähigkeit der Station bei Regen nicht getestet werden konnte. Die Vorprüfung mehrerer Stationen in der Natur unter verschiedenen Wetterbedingungen hat jedoch noch keine Wasserunstabilität gezeigt. Auf das Gehäuse klebe ich zusätzlich Reflexstreifen und befestige sie mit Stahlseil mit Clips.



    Die Firmware hat mehrere Änderungen erfahren. Die Fähigkeit für Stationen wurde implementiert, die Anzahl der markierten Chips aufgrund des internen EEPROM des Mikrocontrollerspeichers aufzuzeichnen. Wenn Sie jedem Bit eine Adresse zuweisen, reicht das für 6000 Chips. Dies ist bei der Beilegung von höherer Gewalt, beispielsweise bei der Suche nach einem verlorenen Teilnehmer, sowie bei der Beilegung von Streitfällen erforderlich. Bisher ist nur genügend Speicher vorhanden, um die Tatsache der Marke aufzuzeichnen, der Zeitpunkt der Marke wird nicht aufgezeichnet. Ich denke, mit der Entwicklung des Systems denke ich, in Zukunft einen separaten EEPROM-Speicherchip für diesen Zweck hinzuzufügen.

    Da das System offen ist und alle Spezifikationen für alle verfügbar sind, kann jeder mit einem NFC-Gerät einen beliebigen Master-Chip schreiben. Es besteht die Möglichkeit von Vandalismus - Umprogrammierung installierter Stationen. Und im Gegensatz zu der Tatsache, dass, wenn die Station einfach kaputt gegangen wäre, ein Fehler in das Ergebnis eingefügt werden kann, der schwer zu bemerken ist. Zum Schutz vor diesem Phänomen wurde ein Passwortsystem eingeführt. Außerdem wurde die Möglichkeit der Konfiguration der Station sowie die Verwendung von Start- und Zielstationen hinzugefügt. In diesem Modus empfängt die Startstation nur gesäuberte Chips, andere Stationen reagieren nur mit einer Markierung an der Startstation auf den Chip und nach Beendigung werden die Chips an anderen Stationen nicht mehr geprüft, bis sie gelöscht werden. Dadurch werden lästige Fehler und Unfälle vermieden.

    Die Wettbewerbe selbst nutzten die alte, bewährte Version der Firmware mit der Fähigkeit, bis zu 46 Mark auf die Chips zu schreiben, was die Konkurrenz vollkommen zufriedenstellte. Seitdem wurde jedoch bereits die Möglichkeit getestet, die Aufzeichnungsdichte zu erhöhen. Das Hauptproblem war die Notwendigkeit, Daten von der vorherigen Marke zu überschreiben, wenn gerade Marken geschrieben werden, da das Schreiben in Blöcke von 16 Bytes erfolgt. Aber Tests haben gezeigt, wie zuverlässig die Aufnahme ist. Ich habe es nie geschafft, den Fehler aufzufangen, jedoch krumm legte ich den Chip. Zusätzlich werden die aufgezeichneten Daten mit einem Hamming-Code in zwei Blöcken zu je 4 Byte verschlüsselt , was die Zuverlässigkeit des Systems erhöht.



    Die Gateway-Station hat sich seitdem erheblich verändert. Es wurde beschlossen, in Richtung Vereinfachung zu gehen, jetzt besteht die Station aus Arduino Nano, RFID-Modul, LED, Hochtöner und einem Widerstandspaar. Er bestellte auch ein Taschentuch aus China, rechnete jedoch nicht ein bisschen mit der Größe, daher kam es mit Schwierigkeiten in den Fall.



    Die Option erwies sich als sehr praktisch. Die Station ist über USB mit dem Computer verbunden. Die Datenübertragung erfolgt über den COM-Port. Zur Verwendung müssen Sie den Chip in die Station einsetzen und je nach Verwendungszweck einen Befehl senden - den Chip lesen, den Chip reinigen, die Uhrzeit an der Station aktualisieren usw.

    Um die Arbeit mit dem System zu automatisieren, wurde in der Programmierumgebung Processing ein Programm geschrieben. Es war so, dass die Umgebung nach dem Arduino sehr leicht zu erlernen und zu verwenden war, offenbar wegen ihrer Affinität. Das Programm war zwar sehr unordentlich geschrieben, überall Krücken und Code so schief, dass ich selbst jetzt kaum noch verstehe, was passiert. Aber es funktioniert, die Schnittstelle ist recht einfach:



    Mit dem Programm können Sie die Station anpassen, aufnehmen, die Ergebnisse lesen und die Verarbeitung für verschiedene Wettkampfarten getrennt nach Gruppen und Entfernungen durchführen. Setup, Protokolleingabe, Entfernungen werden manuell in separaten CSV-Dateien vorgenommen. Die berechneten Ergebnisse werden auch als CSV-Tabelle exportiert. Ja, in dieser Hinsicht ist alles noch primitiv, aber das Programm bewältigt die Hauptaufgabe. Bei früheren Wettbewerben erlaubte das Programm in Echtzeit, die Ergebnisse, die wir auf einem externen Monitor übertragen, für die Teilnehmer bequem zu berechnen.



    Das Testen des Systems sowie der Wettbewerbe selbst war erfolgreich. Alle 40 Stationen arbeiteten zwei Tage fehlerfrei, die Ergebnisse wurden bei Ankunft der Teilnehmer ermittelt. Wahrscheinlich ist die Software derzeit das engste System. Jetzt bin ich mit einem anderen Projekt beschäftigt, aber ich denke, nach dem neuen Jahr werde ich mich mit diesem Problem beschäftigen. Ich möchte Qt als erste Annäherung beherrschen und ein bequemeres Programm daraus machen. Wenn jedoch jemand daran interessiert ist, Software zu erstellen oder Sportiduino in einer vorhandenen Software zu unterstützen, würde ich gerne mitarbeiten.

    Es gibt auch eine alternative Möglichkeit, mit dem System über das Telefon unter Android zu arbeiten und mit NFC zu arbeiten. Sie können Chips und Programmstationen lesen und schreiben, ohne einen Computer zu verwenden. Dies kann besonders bei Feldbedingungen nützlich sein.

    Das Projekt basiert auf den Prinzipien von Open Sourse. Alle Firmware-Schemas sind auf Github verfügbar . Das Wiki enthält auch detaillierte Anweisungen zum Zusammenbauen und die Prinzipien des Systementwurfs. Es gibt einen allgemeinen Leitfaden im PDF-Format im Stammverzeichnis des Repositorys. Interessenten können eine eigene Kopie des Systems erstellen sowie Änderungen an Design und Software vornehmen. Ich würde mich über Feedback freuen.

    Ich werde das Projekt in diese Richtung weiterentwickeln. Zunächst müssen Sie normale Software erstellen. Auch für die Schaltung gibt es Pläne für die Entwicklung. Ich möchte ein kompakteres Gerät herstellen, die gesamte Schaltung auf einer einzigen Platine löten, zusätzlichen Speicher hinzufügen und alles vom CR123 mit Strom versorgen.

    Ich danke Sergey Titov, Ilya Arkhipovsky und Dmitry Fedotov für eine Reihe wertvoller Ideen und Kommentare. Auch danke an die Community und alle interessierten Geektimes. Ihre Kommentare, Ideen und Ihre Unterstützung haben viel zur Entwicklung des Projekts beigetragen.

    Jetzt auch beliebt: