Sterowanie robotem z klawiatury

Programowanie sterowania pojazdem przy pomocy klawiatury

Czas na realizację zajęć: 45 minut (1 godzina lekcyjna)

Wprowadzenie (krótki opis zajęć):

Ułożenie w LOFI Blocks instrukcji sterujących zbudowanym robotem-pojazdem przy pomocy strzałek klawiatury. Wyjaśnienie działania bloków “kapeluszowych” – na przykładzie bloku wykrywającego naciśnięcie klawisza. Na koniec zajęć, jeśli wystarczy czasu, atrakcyjne zadanie – wyścigi robotów, rozegranie meczu w piłkę lub przejechanie toru przeszkód.

Cele zajęć

Uczeń powinien:

  • Rozumieć pojęcia: funkcja, parametr, zmienna, sterowanie, programowanie,
  • Podłączyć / sparować sterownik LOFI Brain 2.0 z komputerem za pomocą BLUETOOTH,
  • Uruchamiać LOFI Blocks on-line,
  • Tworzyć skrypty umożliwiające sterowanie pojazdem-robotem przy pomocy klawiatury,
  • Sterować robotem przy pomocy klawiatury, dzięki skryptom w LOFI Blocks.

Pojęcia kluczowe:

  • LOFI Blocks,
  • Sterowanie,
  • Programowanie,
  • Pojazd zdalnie sterowany,

Metody pracy:

  • Wykład problemowy,
  • Pokaz,
  • Ćwiczenia przedmiotowe,
  • Projekt.

Materiały pomocnicze:

  • Laptop/komputer nauczycielski z zainstalowaną przeglądarką
    internetową Chrome i wtyczką LOFI Robot Extension oraz z zainstalowanym
    programem Arduino IDE,. Projektor i ekran projekcyjny,
  • Komputery uczniowskie z zainstalowanymi przeglądarkami
    internetowymi Chrome i wtyczką LOFI Robot Extension oraz z zainstalowanym
    programem Arduino IDE,
  • Dostęp do internetu na wszystkich komputerach,
  • Zestaw CODEBOX edycja #Superkoderzy – pojazd zmontowany w czasie lekcji 5 i 6 z modułem BLUETOOTH.

Treści programowe (związek z podstawą programową)

Podstawa programowa kształcenia ogólnego dla szkół podstawowych – II
etap edukacyjny – klasy IV-VI. Zajęcia komputerowe. Treści szczegółowe:

1. Bezpieczne posługiwanie się komputerem i jego oprogramowaniem.
Uczeń:

1.5. posługuje się podstawowym słownictwem informatycznym;

5. Rozwiązywanie problemów i podejmowanie decyzji z wykorzystaniem
komputera.Uczeń:

5.1. za pomocą ciągu poleceń tworzy proste motywy lub steruje
obiektem na ekranie;

5.2. uczestniczy w pracy zespołowej, porozumiewa się z innymi
osobami podczas realizacji wspólnego projektu, podejmuje decyzje
w zakresie swoich zadań i uprawnień.

    Przebieg zajęć:

1. Wprowadzenie w tematykę i integracja grupy

Czas na realizację tej części: ok 5 minut

Podczas dzisiejszej lekcji zaprogramujemy w LOFI Blocks nasze roboty-pojazdy w taki sposób, aby można było nimi sterować przy pomocy strzałek klawiatury. Będziemy programować, czyli łączyć gotowe bloki w grupy tak, aby powstały gotowe instrukcje sterujące.

Prosimy, aby uczniowie podzielili się na wcześniej wyznaczone grupy, rozdajemy zestawy robotów. Prosimy o włączenie komputerów, włączenie robotów. Następnie uruchomienie aplikacji Lofi Robot Extension, połączenie robotów z aplikacją i włączenie LOFI Blocks (najszybciej zrobić to można klikając na link w Aplikacji – OPEN LOFI BLOCKS).

Uwaga: Po uruchomieniu się przeglądarki, przypomnijmy uczniom aby upewnili się czy LOFI Blocks otworzyło się w przeglądarce Chrome? Jeśli nie, trzeba zrobić to osobiście i przekopiować adres z poprzedniej przeglądarki do Chrome.

2. Część zasadnicza

Czas na realizację tej części: ok 35 minut.

Uwaga: Przed programowaniem robota należy umieścić na jakiejś podstawce (wykorzystać można do tego pudełeczko na śrubki), aby podczas testów koła mogły kręcić się swobodnie nie dotykając ławki, ale robot nie mógł jeździć i aby nie spadł z ławki!

Rozpoczynamy wykład połączony z pokazem, n.t. działania bloków “kapeluszowych” – na przykładzie bloku wykrywającego naciśnięcie klawisza:

SK_strzalka_gora_i

Chcąc wykryć naciśnięcie klawisza, używamy bloku „Kiedy naciśnięto …” z kategorii ZMIENNE. Następnie przypinamy do niego dwa egzemplarze bloku “Obracaj silnik …” uruchamiające odpowiednie silniki/koła podpięte do gniazda M1 i M2.

Ponieważ blok „Kiedy naciśnięto …” wykrywa tylko moment naciśnięcia klawisza, kiedy go puścimy – silniki nie przestają się kręcić!

Chcąc je zatrzymać, musimy dodać kolejną akcję. Tworzymy podobny układ bloków jak powyżej, ale tym razem wykrywając naciśnięcie klawisza SPACJA, które powoduje ustawienie mocy silników na 0, czyli ich zatrzymanie:

SK_strzalka_spacja

Prosimy uczniów, aby przetestowali powyższe ćwiczenie na swoich komputerach. Następnie polecamy uczniom tak zaprogramować pojazdy, aby można było nimi sterować za pomocą strzałek na klawiaturze.

Mówimy uczniom, że chcąc dodać ustawianie pozostałych kierunków ruchu (LEWO, PRAWO, TYŁ), po prostu powielamy tę samą kombinację bloków, zmieniając wykrywanie klawisza na STRZAŁKA W LEWO, STRZAŁKA W PRAWO i STRZAŁKA W DÓŁ oraz odpowiednio ustawiając kierunki obrotów silników. Zalecamy pracę samodzielną uczniów w grupach i testowanie. Pomyłki są dopuszczalne, a nawet mile widziane (uczenie się na własnych błędach).

Gdy większość grup osiągnie cel, nauczyciel może na swoim komputerze wykonać i pokazać wszystkim propozycję prawidłowego rozwiązania tego zadania:

SK_lewo_prawo_dol_ii

W zależności od pomysłów uczniów / problemów jakie zauważą, można rozbudować powyższe funkcje, dodając do każdej z nich polecenie „CZEKAJ 0.5” sekund, a po nim dodać dwa bloki (dla każdego silnika) „Obracaj silnik …” z mocą „0”. Takie rozbudowanie funkcji, spowoduje, że naciśnięcie którejkolwiek ze strzałek uruchomi pojazdu w określonym kierunku na pół sekundy, po czym pojazd zatrzyma się. Chcąc aby jechał dalej trzeba ponownie naciskać strzałki. Jest to rozwiązanie bezpieczniejsze (robot sam nie odjedzie, nie spadnie z ławki, nie uderzy w ścianę itp.)

Uczniowie mogą też zauważyć że przy takich funkcjach programu roboty są zbyt zrywne lub skręcają zbyt ostro, co utrudnia precyzyjne nimi sterowanie.
Zachęć uczniów aby poeksperymentowali z mocą obracanych silników. Np: Po naciśnięciu strzałki w lewo na klawiaturze robot obraca silnik M1 w przód z mocą „100”, a silnik M2 w tył z mocą „100”. Wystarczy że zmienimy moc silnika M2 na „0”, zauważymy efekt w postaci bardziej płynnego ruchu skrętu w lewo.

Zabawy z jeżdżącymi robotami

W zależności od czasu, jaki pozostanie do końca lekcji, zalecamy zrealizowanie jednej lub kilku z podanych poniżej propozycji gier:

  • Wyścigi robotów – wewnątrz klasy wyznaczana jest trasa (np. dookoła ławek), którą muszą przejechać wszystkie roboty. Jeśłi warunki na to pozwalają, to wszystkie roboty mogą startować równocześnie. Jeśli klasa jest mała, roboty pokonują trasę po kolei i mierzony jest czas, w którym każdy z nich dojechał do mety,
  • Mecz w piłkę nożną – z przodu robota montujemy jakąś formę spychacza, który pozwoli mu zagarnąć i toczyć przed sobą małą piłeczkę (ping-pongową lub kulkę z papieru sklejoną taśmą). Ustalamy zakres boiska i dwie bramki. Mecz ma formułę “każdy na każdego”, czyli każdy zawodnik działa samodzielnie i ma za zadanie wprowadzić piłkę do którejkolwiek z bramek. Wygrywa zawodnik, który zdobędzie najwięcej goli,
  • Walki robotów (SUMO) – ustalamy kwadratowy lub okrągły ring o boku/średnicy ok 1m. Zawodnicy walczą parami. Wygrywa ten, który wypchnie przeciwnika z ringu.
  • Tor przeszkód – określamy trasę, którą ma pokonać każdy robot (np. slalom między pudełkami od zestawów). Roboty startują pojedyńczo. Wygrywa ten, którego czas przejazdu będzie najkrótszy.

Dziękujemy uczniom za zabawę. Prosimy o posprzątanie torów przeszkód, boisk itp. wyłączenie i zabranie robotów, wyłączenie komputerów. Pamiętajmy też podładować powerbanki przed kolejnymi zajęciami.

3. Podsumowanie i ewaluacja

Czas na realizację tej części: ok 5 minut

Zadajemy uczniom pytania:

  • Co najbardziej podobało się Wam podczas dzisiejszej lekcji?
  • Z czym mieliście największe problemy?
  • Co można byłby zrobić inaczej?
  • Do czego można wykorzystać umiejętności zdobyte na tej lekcji?

Uwagi/alternatywy:

W scenariuszach lekcji w ramach ścieżki Majsterkowicze 2.0 w programie #Superkoderzy wykorzystujemy zestaw CODEBOX edycja Superkoderzy firmy LOFI Robot. Szkoły, które nie posiadają zestawu tej firmy scenariusze lekcji mogą zrealizować pracując na Arduino i zakupionych indywidualnie podzespołach elektronicznych (czujnikach, silnikach, diodach, płytkach prototypowych) lub innych zestawach robotów edukacyjnych.

Zabawy z robotami są bardzo wdzięcznym momentem do zebrania atrakcyjnej dokumentacji projektu. Pamiętaj o zrobieniu kilku zdjęć, filmiku itp. A może uda Ci się zaangażować do tego uczniów?