@wtFAQ
◀ 4. Proširenje micro:bitaRadionica 4.2. - Uvod u radio valove ▶

Radionica 4.1. - Semafori

Križanja i semafori – učimo kroz igru

Križanja su mjesta gdje se ceste sastaju. Na križanjima auta mogu skrenuti lijevo, desno ili nastaviti ravno, a pješaci prelaze cestu. Zbog toga je važno da svi znaju pravila – tada smo sigurni u prometu.

Križanja mogu imati semafore, koji pokazuju kad smijemo ići, a kad moramo stati. Na križanju sa semaforom svi znamo svoj red: zeleno svjetlo znači “idemo!”, crveno znači “stani!”, a žuto nas upozorava da budemo spremni. Semafori čuvaju nas – pješake i vozače – i smanjuju mogućnost nesreća. Ako nema semafora, moramo više paziti na prometna pravila i znakove, ali uvijek prvo promatramo i procijenimo je li sigurno prijeći cestu.

prijelaz prijelaz prijelaz

Što je to semafor?

Semafor je elektronički uređaj koji upravlja prometom tako što izmjenično pali svjetla različitih boja – crveno, žuto i zeleno – dajući pritom jasno vidljive upute vozačima i pješacima.

Semafor za pješake

Semafor za pješake je prometni uređaj koji pješacima jasno pokazuje kada mogu sigurno prijeći cestu, a kada moraju pričekati. Sastoji se od svjetlosnih signala – u pravilu su to dvije boje: crvena i zelena. Crveno svjetlo znači da pješak ne smije prelaziti cestu, dok zeleno svjetlo označava da je prelazak dopušten i siguran.

​Semafori za pješake koriste se na prometnim križanjima, posebno na mjestima s velikim brojem pješaka poput škola, vrtića, bolnica i prometnih gradskih ulica. Njihov osnovni cilj je povećati sigurnost prilikom prelaska ceste te smanjiti broj prometnih nesreća u kojima su ugroženi pješaci.

Glavna razlika između semafora za pješake i onih za vozila je u trajanju i ritmu signala te prikazu simbola – često su na semaforu za pješake jasno prikazane figure pješaka u crvenoj i zelenoj boji. Također, semafori za pješake često su opremljeni zvučnim ili taktilnim signalima kako bi ih lakše uočile osobe s oštećenjima vida.

prijelaz prijelaz prijelaz

Zadatak:
• Programiraj semafor za pješake.
• Umjesto crvenog i zelenog svjetla, prikaži slike pješaka koji stoji i pješaka koji hoda.

Dodatna pitanja i zadaci (1):

  • Osim klasičnih, danas se razvijaju i napredni, tzv. pametni semafori za pješake koji uz standardno osvjetljenje očitavaju i ponašanje pješaka (primjerice gledaju li u mobitel), te dodatno upozoravaju projiciranjem svjetla na pločnik ispred prijelaza. Na taj način pomažu u prevenciji nezgoda modernim tehnologijama i još više podižu sigurnost. Razmisli kako bi to napravio.

​Redoslijed paljenja i gašenja svjetala

Redoslijed rada semafora odgovara pravilima cestovnog prometa i zasniva se na programiranom slijedu uključivanja svjetala u točno određenim vremenskim intervalima.

  1. Crveno svjetlo – “Stani!” – vozila moraju zaustaviti prolazak.
  2. Crveno i žuto svjetlo zajedno – “Priprema za polazak”.
  3. Zeleno svjetlo – “Slobodan prolazak”.
  4. Žuto svjetlo – “Priprema za zaustavljanje”.

Nakon toga ciklus se ponovno ponavlja.

Taj redoslijed određujemo u programu koji upravlja mikrokontrolerom (npr. micro:bitom), koristeći niz naredbi koje uključuju i isključuju diode nakon točno definiranog trajanja. Time se postiže stvarni učinak rada semafora, gdje svako svjetlo traje nekoliko sekundi prije nego što se promijeni.

  • Koliko traje pojedino svjetlo?
  • Zašto toliko traje?
stanja semafora

Na slikama je primjer u kojemu se vidi da crveno i zeleno svjetlo traju po 5 sekundi, dok žuto svjetlo traje 1.5 sekundu.

Zadatak:
• Napravi maketu križanja od kartona i kolaž papira sa svojim kolegama.

U našem slučaju, semafor ćemo napraviti pomoću LED‑dioda koje će predstavljati ta svjetla.

Zadatak:
• Spoji maketu semafora na micro:bit i provjeri kako radi.
Prisjeti se:
​LED‑dioda (Light Emitting Diode) je mala poluvodička komponenta koja svijetli kada kroz nju teče električna struja. Svaka dioda ima dvije nožice – anodu (duža, pozitivna) i katodu (kraća, negativna). Kada je spojimo na izvor napajanja preko otpornika, ona se uključuje ili isključuje prema programu koji upravlja semaforom.

Dodatna pitanja i zadaci (2):

  • Napravi da se zeleno svjetlo pali i gasi tri puta, prije nego se ugasi.
  • Neka vrijeme treptanja bude 400 ms za upaljeno svjetlo i 400 ms za ugašeno.
Objašnjenje:
Blok repeat N times na micro:bitu ponavlja iste naredbe točno onoliko puta koliko mu kažemo. On radi isto kao kad nešto ponoviš nekoliko puta – npr. ako napišeš broj 3, micro:bit će zadatak napraviti tri puta zaredom, a onda će se zaustaviti.

Dodatna pitanja i zadaci (3):

  • Pronađi dijelove programa koji se često ponavljaju! Možemo li ih nekako uljepšati i skratiti, tako da program bude razumljiviji?

Umjesto da za svako paljenje svjetla na semaforu stalno pišemo iste blokove naredbi, možemo napraviti funkciju pod imenom Svjetla koja će to obaviti svaki put kad je pozovemo.
Vrijednost 1 će na zadanom pinu micro:bita postaviti 3.3 V i upaliti LED, a vrijednost 0 će postaviti 0 V i tako ugasiti LED.

Objašnjenje:
Funkcija je dio programa koji sadrži nekoliko naredbi okupljenih pod jednim imenom. Umjesto da iste naredbe pišemo više puta, mi ih stavimo u funkciju i kasnije samo pozovemo to ime kad želimo da se te naredbe ponove. Tako naš kod postaje kraći, uredniji i lakši za razumijevanje.
Parametri funkcije su posebne vrijednosti koje funkciji šaljemo kao objašnjenje što da napravi. To su kao male poruke ili upute koje funkcija primi kad je pozovemo.
Na primjer, funkcija Svjetla(crveno, žuto, zeleno, pauza) može imati parametar crveno = 1, žuto = 0, zeleno = 0, pa će upaliti ona svjetla koja na sebi imaju vrijednost 1.

Dodatna pitanja i zadaci (4):

  • Dodaj zvučni signal za semafor. Neka bude 1 cijela nota za crveno, 1 osminka za zeleno svjetlo i bez zvuka za trepćeće zeleno i žuto svjetlo.

Zamisli da micro:bit može raditi dvije stvari odjednom, kao kad ti istovremeno hodaš i pjevaš.
U našem semaforu, jedan forever blok stalno mijenja svjetla (crveno, žuto, zeleno), a drugi forever blok u isto vrijeme pušta zvučni signal koji pomaže pješacima sa slabim vidom.

To zovemo paralelno izvršenje – micro:bit istovremeno izvodi više dijelova programa, pa svjetla i zvuk rade zajedno, svaki u svom ritmu, kako smo mi to odredili.

Dodatna pitanja i zadaci (5):

  • Što treba napraviti da bi se čuo zvuk iz Micro:bita u prethodnom zadatku?
  • Kako bi mogli dalje razvijati naš semafor?
  • Što nam još treba kako bi ovakav semafor mogao regulirati promet na maketi nekog križanja?

ligtbulb Što smo naučili?

  • Naučili smo da program mora imati jasan slijed događaja, kao što se i svjetla semafora pale točno određenim redom i trajanjem. Kako bi to kvalitetno napravili, naučili smo praviti plan redoslijeda izvršenja.
  • Koristili smo repeat blok kako bismo ponovili iste naredbe više puta bez ponavljanja koda, što olakšava rad i čini program kraćim.
  • Naučili smo da funkcije okupljaju više često izvršavanih naredbi pod jednim imenom, pa program postaje uredniji i lakši za razumijevanje i promjene.
  • Upoznali smo se s tim da micro:bit može istovremeno raditi više stvari (paralelno izvršenje), pa svjetla na semaforu i zvučni signal mogu raditi zajedno u različitim forever blokovima.
◀ 4. Proširenje micro:bitaRadionica 4.2. - Uvod u radio valove ▶