Ik dit project samen te stellen als een eenvoudige Python codering oefening op een Raspberry Pi voor 12-15 jaar oud studenten maar het kan een goede eerste Raspberry Pi project voor iedereen die wil leren over GPIOs.
Aanvankelijk werd gebouwd op een solderless breadboard maar later bouwde ik het model voor een open avond en voor studenten komt later. Ik alleen overzicht instructies geven voor het bouwen van het model, hoe je het zal afhangen van de materialen, instrumenten en vaardigheden waarover u beschikt.
Wanneer voltooid, detecteert de ultrasone Bereikindicatie module een "voetganger" naderen van de overschrijding. Als ze binnen bereik gedurende 3 seconden blijven het volgt de volgorde van een standaard Britse Pelican kruising: het verkeer signaal gaat van groen naar oranje en rood, en vervolgens het voetgangers signaal verandert van wachten om over te steken en een sounder begint te pieptoon. Zo blijft het voor lang genoeg voor de voetgangersbrug aan de weg oversteekt, vervolgens de beeper stopt, en voor een paar seconden de amber en kruis signalen flitser samen. De voetgangers signaal retourneert vervolgens aan wachten en het verkeer signaal op groen.
Ik wil de studenten voorzien met een skelet Python programma dat invoer van de nodige bibliotheken, definieert een functie voor het meten van de afstand met de ultrasone module, vooruitgangsbalk de GPIO pinnen en test de LEDs en de semafoon. Ik ook voorzien hen van een stroomschema die zij vervolgens moeten uitvoeren als Python code.
Ik stel voor dat de oefening wordt gedaan in twee delen sinds het piepen en knipperen fase een beetje ingewikkelder is. In feite, zoals ik laten zien, kan het worden uitgevoerd als een zeer Eenvoudige statusmachine met slechts één status variabelen. (Het idee van een statusmachine is een uiterst krachtige programmering concept en een goeie studenten aan te brengen.)