Czas trwania: (2x45min)
- dwie jednostki lekcyjne najlepiej w jednym bloku
- pierwsza godzina – omówienie zasad gry i zaprogramowanie płytki Micro:Bit
- druga godzina – testowanie gry, zawody, usprawnienia i modyfikacje
Zasady gry
Gracz ma za zadanie w określonym czasie (np. 20 sekund) pokonać ustawiony w klasie lub (lepiej) na korytarzu skokowy tor, wykonując jak największą liczbę skoków – tor jest zapętlony – im więcej razy uda się go pokonać tym lepiej.
Ponownie wykorzystujemy czujnik ruchu – czyli czujnik przyspieszenia (ziemskiego) czyli AKCELEROMETR do wykrywania skoków. Jednocześnie wbudowany w płytkę zegar mierzy czas jaki mamy na pokonanie skokowego toru przeszkód.
W tej grze płytka Micro:Bit pełni funkcję prostego akcesorium – miernika skoków i czasu. Jakość zabawy w największym stopniu zależy od ustalenia ciekawego toru skoków do pokonania.
Co potrzebujesz:
Narzędzia:
- Zestaw Micro:Bit dla pary uczniów
– płytka BBC Micro:Bit
– kabel micro USB – najlepiej z magnetyczną odczepianą końcówką
– zasilanie płytki – sugerowane dwie baterie AAA (małe paluszki) + koszyk na baterie - Komputery dla uczniów (1 dla pary), rzutnik lub tablica interaktywna dla nauczyciela
Przeglądarka internetowa Chrome
Co uczniowie powinni umieć przed przystąpieniem do lekcji:
- znajomość liczb ujemnych i wartości bezwzględnej
- rozumienie konceptu zmiennych logicznych – PRAWDA / FAŁSZ
- rozumienie konceptu instrukcji warunkowych – JEŻELI, JEŻELI / W PRZECIWNYM RAZIE
- podstawowa umiejętność obsługi płytki MB – wgrywanie programów
Przebieg lekcji
1. Wprowadzenie
Tłumaczymy uczniom zasady gry, którą będziemy tworzyć, aby lepiej zademonstrować na czym będzie polegała zabawa możemy przeprowadzić pokaz dając jednemu z uczniów zaprogramowaną płytkę MB z wgranym programem gry w żabę. Uczeń ma za zadanie “przeskakać” z uruchomionym programem zadaną trasę. Sprawdzamy działanie gotowego “skokomierza” z kilkoma chętnymi uczniami.
2. Przygotowanie do pracy
Gdy mamy pewność, że wszyscy uczniowie rozumieją zasady gry nad którą będziemy pracować przystępujemy do programowania.
Przygotowanie do pracy
Uruchamiamy aplikację MakeCode i podłączamy płytkę Micro:Bit do komputera
Jeśli trzeba parujemy płytkę z komputerem (procedura parowania opisana jest w lekcji nr 3)
Aby upewnić się, że jesteśmy gotowi do pracy wgrywamy jakikolwiek podstawowy program na płytkę np. wyświetlenie serduszka na matrycy LED
3. Programowanie
W grze w żabę wykorzystujemy dwie funkcji płytki Micro:Bit
- Wykrywanie i liczenie ilości skoków
- Mierzenie upływającego czasu
Liczenie ilości skoków
Zacznijmy od mierzenia ilości skoków – zaprogramujmy Micro:Bit jako skokomierz.
Skoki wykrywać będziemy przy pomocy bloczka NA [POTRZĄŚNIJ] z kategorii WEJŚCIE.
Aby przechować ich ilość w pamięci stwórzmy zmienną o nazwie SKOKI, ilość skoków pokazujemy na wyświetlaczu LED.
Z wykrycie każdego kolejnego potrząśnięcia (skoku) zwiększamy wartość zmiennej SKOKI i 1.
Odmierzanie czasu
Upływający czas odliczamy przy pomocy bloczka CZAS PRACY (ms) (kategoria WEJŚCIE, zakładka WIĘCEJ) – płytka MB nie ma wbudowanego zegara czasu rzeczywistego (nie poda nam aktualnej godziny) może jedynie mierzyć czas jaki upłynął od jej uruchomienia, wartość ta podawana jest w milisekundach – czyli tysięcznych sekundy – 1 sekunda = 1000 milisekund.
Wyświetlmy upływający czas przy pomocy bloczka PLOT BAR GRAPH – jako zakres grafu na początek podajmy wartość 10 000 czyli 10 sekund.
W ten prosty sposób zaprogramowaliśmy dwie podstawowe funkcje naszej gry – odliczanie skoków i odmierzanie czasu. Musimy je jeszcze połączyć ze sobą poprzez określenie logicznych reguł gry. Reguła jest tym razem tylko jedna – do momenty aż upłynie wyznaczony czas odliczaj wykonane skoki, po upływie czasu przestań liczyć skoki i pokaż ich liczbę na wyświetlaczu.
Stwórzmy kolejną zmienną, która będzie określać czy gra jeszcze trwa (gra trwa dopóki nie skończy się zadany czas) – nazwijmy ją GRA, będzie ona miała wartość logiczną PRAWDA lub FAŁSZ.
1. Po uruchomieniu płytki gra rozpoczyna się – GRA = PRAWDA
Wyświetlmy też jakiś obrazek na wyświetlaczu, żeby był widoczny sygnał, że gra się rozpoczęła.
2. Kiedy gra trwa (GRA = PRAWDA) odliczaj skoki (zwiększaj zmienną SKOKI o 1)
3. Kiedy gra trwa (GRA = PRAWDA) odliczaj czas i pokazuj jego upływ na wyświetlaczu. Kiedy czas przekroczy określoną przez nas wartość zakończ grę (ustaw GRA na FAŁSZ) i pokaż liczbę skoków.
Nasza gra jest już prawie w całości zaprogramowana. Ostatnia funkcja, która nam się przyda to jakiś prosty sposób na restartowanie gry – np. poprzez naciśnięcie przycisku. Najłatwiejszym sposobem na rozpoczęcie gry od początku będzie zresetowanie całej płytki – do tego celu wykorzystamy bloczek ZRESETUJ z zakładki ZAAWANSOWANE – STEROWANIE