
Programmera ett övergångsställe
Lektionen handlar om att styra trafikljus i en korsning.
Diskutera hur ett övergångsställe fungerar som tekniskt system
Titta på filmen för att få en överblick av uppgiften
Ett övergångsställe med trafikljus för bilar och fotgängare är en del av ett tekniskt system för att reglera flöden av bilar, cyklar och människor samt att minska antalet skador.
Läs och diskutera.
- Vad ingår i det tekniska systemet för övergångsstället, utöver lamporna?
- Vad ska systemet styra, kontrollera?
- Vilka andra tekniska system måste övergångsstället kopplas ihop med för att det ska fungera?
Programmera en algoritm som styr övergångsstället i Scratch
I övningsprojektet "Programmera ett övergångsställe" på Scratch kommer fotgängare gående mot ett övergångsställe som visar rött. Bilar kör förbi, för de har grönt ljus. Du ska programmera algoritmen som växlar trafikljusen så att flödet mellan fotgängare och bilister blir optimalt.
När antalet väntande fotgängare blir för stort får du ett varningsljud. Samma sak händer om det blir för många bilar i kö. Målet är att automatisera trafikljusen så att de växlar vid vissa intervaller, eller när antalet väntande bilar och fotgängare håller på att bli för högt.
I Scratch-projektet "Programmera ett övergångsställe" finns två variabler som automatiskt styr om trafikljusen. Genom att ändra innehållet i dessa variabler kan du styra ljusen, och därmed stoppa bilar eller fotgängare.
Du kommer att behöva använda följande block:


Arbetsgång
- Börja med att testa projektet "Programmera ett övergångsställe" , vad händer? Hur kan du styra trafikljusen?
- I Scratchprojektet finns ganska mycket kod. Gå igenom den och förklara vad varje del gör.
- Försök förklara varför fotgängarna blir påkörda.
- Titta i koden och sök reda på var algoritmen som styr trafikljusen ligger.
- Berätta för en kompis vad som händer i koden.
- Testa att ändra några av värdena för att ändra funktionen.
- Testa! Utvärdera. Förändra koden. Testa igen!
* Pseudokod är ett sätt att börja tänka i programmering utan att behöva skriva riktig kod. Pseudokoden kan vara uttryckt på vanlig svenska. Ett exempel för denna övning skulle kunna börja så här:
- Om antalet fotgängare är högre än 10 så
- växla till grön gubbe
- växla till rödljus för bilarna
Avslutande reflektion
Presentera er lösning inför klassen och berätta hur ni tänkt när ni löst uppgiften. Jämför er lösning med andras.
- Finns det en "rätt" lösning?
- Finns det en "effektiv" lösning?
- Finns det en oetisk lösning?
- Reflektera över att det går att lösa samma uppgift på många olika sätt med algoritmer och programmering.
- Hur kan olika programmerare och deras värderingar påverka vårt samhälle?
Extrauppgift: Programmera ett trafikljus med Javascript
Scratch är en utmärkt miljö för att lära sig programmeringslogik. För en mer avancerad nivå kan den här övningen vara ett bra alternativ.
Javascript-övningen trafikljus går att köra i en dator med webbläsare. Övningen är framtagen av Mikael Tylmad, författare av läromedel i Javascript.