Inhaltsverzeichnis:
Video: Glühwürmchen synchronisieren - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
Haben Sie sich schon einmal gefragt, wie sich Hunderte und Tausende von Glühwürmchen synchronisieren können? Wie funktioniert es, dass sie alle zusammen blinzeln können, ohne eine Art Boss-Glühwürmchen zu haben? Diese Anleitung gibt eine Lösung und zeigt, wie diese Synchronisation erreicht werden kann. Ich war schon immer von der Selbstorganisation von Insekten fasziniert. Vor ein paar Jahren habe ich ein Java-Applet geschrieben, das ein Quadrat von Tausenden von Glühwürmchen simuliert. Es hat gut funktioniert und es hat Spaß gemacht zuzusehen. Dieses Mal habe ich es in Hardware getan. Credits für Inspirationen gehen an Keso und sein Glas Glühwürmchen https://www.instructables.com/id/E7U5HYMSVIEWP86SAL/. Jede Kommentare oder Korrekturen sind willkommen. Update 2008-09-12: There ist eine neue Version der Glühwürmchen online unter Synchronizing Firefly Howto. Es hat eine benutzerdefinierte Platine für jedes Glühwürmchen. Und Sie können ein Kit im Tinker Store kaufen. Hier ist das Video:
Schritt 1: Wie es funktioniert
Der AlgorithmusWas zu beobachten ist, ist, dass die Glühwürmchen mit zufälligem Blinken beginnen. Aber mit der Zeit können sie sich langsam mit ihren nächsten Nachbarn synchronisieren. Und diese Nachbarn synchronisieren sich mit ihren Nachbarn und so weiter. Bis der ganze Baum oder das ganze Tal im gleichen Takt blinkt. Und wozu ist es gut? Es wird verwendet, um andere Exemplare anzulocken. Mit all dem synchronen Blinken ist es viel einfacher, einen Partner zu finden. Einer der einfachsten Algorithmen, um dieses Verhalten zu erklären, geht so: Sie haben einen Wert, der die Macht zum Blinken besitzt. Mit der Zeit wird diese Kraft leicht ansteigen. Wenn die Leistung einen bestimmten Wert erreicht, blinkt das Glühwürmchen und die Leistung wird verbraucht. Die Geschwindigkeit, mit der die Leistung ansteigt, ist bei allen Glühwürmchen fast gleich. Sie haben also die gleiche Frequenz, aber nicht den gleichen Zeitpunkt zum Blinken. Während das Glühwürmchen langsam mit Strom aufgeladen wird, kann es einen Blitz eines anderen Glühwürmchens in der Nähe erkennen. Es addiert dann einen höheren Wert zu seinem Leistungswert. Eine Art Power-Boost, wenn Sie es wünschen. Das bedeutet, dass der nächste Blitz früher auftritt als der vorherige. Und der nächste noch früher, bis diese beiden exakt zum gleichen Zeitpunkt und mit der gleichen Geschwindigkeit blinken. Mehr zu diesem Algorithmus finden Sie z. B. hier: Firefly-Synchronisation Ad-hoc-NetzwerkeDie Hardware Ich entschied mich, meine vorherige instructable (programmierbare LED) als Ausgangspunkt zu verwenden. Es besteht aus einem Mikrocontroller, einer LED und einem lichtabhängigen Widerstand (LDR). Das sollte ausreichen, um ein einfaches Glühwürmchen zu simulieren. Es ist in der Lage zu blinken, zu sehen und zu zählen. Ich musste nur das Programm und die Ausrichtung der LED und des LDR ändern. LED und LDR müssen so platziert werden, dass ein Glühwürmchen-Schaltkreis einen anderen stören kann. Ein LDR muss also die LED eines anderen Glühwürmchens "sehen" können. Und es sollte nicht nur ein Nachbar, sondern mehrere sehen. Lassen Sie dazu die LED und den LDR vom Boden nach oben zeigen und verwenden Sie weißes Papier, um die Blitze zu reflektieren.
Schritt 2: Materialien und Werkzeuge
Für ein Raster von 5 x 5 Glühwürmchen benötigen Sie:
- 25 x 1K Ohm Widerstand
- 25 x 100 Ohm Widerstand
- 25 x LDR (Lichtabhängiger Widerstand), z. B. M9960
- 25 x LED, 1,7V, 20mA (reg, grün, blau, was immer Sie wollen)
- 25 x ATtiny13, 1 KB Flash-RAM, 64 Byte RAM, 64 Byte EEPROM
- 25 x Steckdosen
- Prototyping-Board
- Kabel
Die Kosten für ein Glühwürmchen sollten ca. 1,50 Euro betragen, wenn Sie bei größeren Stückzahlen einen Rabatt bekommen. Die Sockel sind nur notwendig, wenn Ihre Programme fehlerhaft sind. Wenn Sie sich mit Ihren Entwicklungsfähigkeiten sicher fühlen, können Sie sie entbehren.;-) Sie können den ATtiny-Chip sicherlich durch jeden anderen Mikrocontroller wie PIC, PICAXE oder BasicStamp ersetzen, um nur einige zu nennen. Nehmen Sie einfach das kleinste und billigste, das Sie bekommen können. Ich gehe mit Atmel, da ich den Programmierer bereits hatte und mein erstes Projekt mit einem ATtiny13 hat gut funktioniert. Tools
- Lötkolben
- Lötdraht
- Steckbrett
- AVR-Programmierer
- 5V Netzteil oder
- 4 AA-Akkus
Software