Inhoudsopgave:
Video: Fireflies synchroniseren: 7 stappen (met afbeeldingen)
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:19
Heb je jezelf ooit afgevraagd hoe honderden en duizenden vuurvliegjes zichzelf kunnen synchroniseren? Hoe werkt het, dat ze allemaal tegelijk kunnen knipperen zonder een soort baas-vuurvliegje te hebben? Dit instructable geeft een oplossing en laat zien hoe deze synchronisatie kan worden bereikt. Ik ben altijd gefascineerd geweest door zelforganisatie van insecten. Een paar jaar geleden schreef ik een Java-Applet die een vierkant van duizenden vuurvliegjes simuleert. Het werkte goed en was leuk om te zien. Deze keer heb ik het in hardware gedaan. Krediet voor inspiratie gaat naar Keso en zijn pot met vuurvliegjes https://www.instructables.com/id/E7U5HYMSVIEWP86SAL/. Alle opmerkingen of correcties zijn welkom. Update 2008-09-12: Daar is een nieuwe versie van de vuurvliegjes online op Synchronizing Firefly Howto. Het heeft een aangepaste PCB voor elke vuurvlieg. En je kunt een kit kopen in de Tinker Store. Hier is de video:
Stap 1: Hoe het werkt
Het algoritme Wat kan worden waargenomen is dat de vuurvliegjes beginnen met willekeurig knipperen. Maar naarmate de tijd verstrijkt, kunnen ze langzaam synchroniseren met hun naaste buren. En deze buren synchroniseren zichzelf met hun buren enzovoort enzovoort. Totdat de hele boom of het hele dal in dezelfde cyclus knippert. En waar is het goed voor? Het wordt gebruikt om andere exemplaren aan te trekken. Met al het knipperende synchroon is het veel gemakkelijker om een partner te vinden. Een van de gemakkelijkste algoritmen om dit gedrag uit te leggen gaat als volgt: je hebt een waarde die de kracht bevat om te flitsen. Naarmate de tijd verstrijkt, zal deze kracht iets toenemen. Als het vermogen een bepaald niveau bereikt, knippert de vuurvlieg en wordt het vermogen verbruikt. De snelheid waarmee de kracht toeneemt is bijna hetzelfde voor alle vuurvliegjes. Ze hebben dus dezelfde frequentie, maar niet hetzelfde tijdstip om te flitsen. Tijdens het langzaam opladen met stroom kan de vuurvlieg een flits van een andere vuurvlieg in de buurt detecteren. Het voegt dan een hogere waarde toe aan zijn vermogenswaarde. Een soort powerboost, als je wilt. Dat betekent dat de volgende flits eerder zal plaatsvinden dan de vorige. En de volgende nog eerder, totdat deze twee precies op hetzelfde tijdstip en met dezelfde snelheid knipperen. U kunt meer over dit algoritme vinden, b.v. hier: Firefly-synchronisatie Ad-hocnetwerken De hardware Ik besloot om mijn vorige instructable (programmeerbare LED) als uitgangspunt te gebruiken. Het bestaat uit een microcontroller, een LED en een Light Dependent Resistor (LDR). Dat zou genoeg moeten zijn om een eenvoudige vuurvlieg te simuleren. Het kan knipperen, zien en tellen. Ik moest alleen het programma en de oriëntatie van de LED en de LDR aanpassen. LED en LDR moeten zo worden geplaatst dat het ene vuurvliegcircuit het andere kan verstoren. Dus de ene LDR moet de LED van een andere vuurvlieg kunnen "zien". En het zou niet alleen één buurman moeten zien, maar meer. Dat kan door de LED en de LDR vanaf de grond omhoog te laten wijzen en wat wit papier te gebruiken om de flitsen te reflecteren.
Stap 2: Materialen en gereedschappen
Voor een raster van 5 bij 5 vuurvliegjes heb je nodig:
- 25 x 1K Ohm weerstand
- 25 x 100 Ohm weerstand
- 25 x LDR (Light Dependent Resistor), b.v. M9960
- 25 x LED, 1.7V, 20mA (reg, groen, blauw, wat je maar wilt)
- 25 x ATtiny13, 1KB flash-RAM, 64 bytes RAM, 64 bytes EEPROM
- 25 x stopcontacten
- prototype bord
- draad
De kosten voor één vuurvliegje zouden ongeveer 1,50 Euro moeten zijn als je wat rabate krijgt als je in grotere aantallen bestelt. De sockets zijn alleen nodig als je programma's bugs bevatten. Als u zeker bent van uw ontwikkelingsvaardigheden, kunt u ze sparen.;-)Je kunt de ATtiny-chip zeker vervangen door een andere microcontroller zoals PIC, PICAXE of BasicStamp om er maar een paar te noemen. Neem gewoon de kleinste en goedkoopste die je kunt krijgen. Ik ga met Atmel omdat ik de programmeur al had en mijn eerste project met een ATtiny13 werkte prima. Tools
- Soldeerbout
- Soldeerdraad
- Breadboard
- AVR-programmeur
- 5V voeding of
- 4 AA-oplaadbare batterijen
Software
Aanbevolen:
Mappen synchroniseren met Python: 5 stappen
Mappen synchroniseren met Python: deze instructable laat je zien hoe je twee mappen (en alle mappen daarin) synchroon kunt houden, zodat de ene een directe kopie van de andere is. Ideaal voor het back-uppen van werk zowel lokaal, naar een cloud/netwerkserver of een USB-stick. Geen ervaring met programmeren is n
Arduino Fireflies: 11 stappen (met afbeeldingen)
Arduino Fireflies: Een van de dingen waar ik naar uitkijk met zomers in Pennsylvania zijn vuurvliegjes in mijn achtertuin. Ik heb mezelf onlangs Adruino-programmering geleerd om dit eenvoudige project te maken. Het is een geweldig programma om mee te beginnen en het is gemakkelijk genoeg voor een
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Een computer demonteren met eenvoudige stappen en afbeeldingen: 13 stappen (met afbeeldingen) Antwoorden op al uw "Hoe?"
Een computer demonteren met eenvoudige stappen en afbeeldingen: dit is een instructie over het demonteren van een pc. De meeste basiscomponenten zijn modulair en gemakkelijk te verwijderen. Wel is het belangrijk dat je er goed over georganiseerd bent. Dit zal helpen voorkomen dat u onderdelen kwijtraakt, en ook bij het maken van de hermontage e
PCB-ontwerp met eenvoudige en gemakkelijke stappen: 30 stappen (met afbeeldingen)
PCB-ontwerp met eenvoudige en gemakkelijke stappen: HELLO VRIENDEN Het is een zeer nuttige en gemakkelijke tutorial voor diegenen die PCB-ontwerp willen leren, laten we beginnen