Powrót do scenariuszy
Szkoła podstawowa
Klasa: 7-8
Szkoła ponadpodstawowa
Klasa: 1-4
test
Autor:

Mateusz Chmielewski

Programowanie Photona w Pythonie #7 Pojazdy autonomiczne cz.1

informatyka • programowanie • technika
Czas:
45 min.
Roboty:
x1
Akcesoria:
Accessory
Interfejsy:
Python (Photon Magic Bridge)
alt
Powrót do scenariuszy
Scenario Image

Odniesienie do podstawy programowej

Szkoła ponadpodstawowa, Informatyka II./2., I./2.
Szkoła podstawowa, Informatyka II./1, 2.

Cele zajęć

Uczeń/uczennica:
  • zna problematykę rozwoju pojazdów autonomicznych
  • samodzielnie testuje metody i funkcje Photona
  • wykorzystuje znajomość Pythona, by rozwiązywać złożone problemy

Metody pracy

  • metoda poszukująca
  • karta pracy
  • dyskusja
  • ćwiczenie

Formy pracy

  • praca grupowa

Materiały

  • czarna taśma izolacyjna na grupę
  • komputer na grupę

Załączniki

#5 punkty.py
Pobierz
#7 trasa.py
Pobierz
#7 Karta pracy.pdf
Pobierz
#7 karta pracy.docx
Pobierz

Przebieg zajęć

Warsztaty #7 i #8 stanowią cykl, podczas którego uczniowie zajmują się jednym tematem. Można zrealizować je łącznie podczas 90 minutowych zajęć.

W pierwszej części warsztatów poświęconych tematyce pojazdów autonomicznych uczniowie zapoznają się z tematem, dowiadują się, jakie trudności stoją na drodze do upowszechnienia technologii pojazdów autonomicznych. Później w grupach badają temat, by przy pomocy robotów Photon przygotować uproszczony model prezentujący ruch pojazdów autonomicznych.

1. Pojazdy autonomiczne - wprowadzenie

Każda grupa otrzymuje do przeczytania jeden z artykułów prasowych poświęconych pojazdom autonomicznym:


Po paru minutach na przeczytanie w grupach, każda z nich dzieli się swoimi wrażeniami. Próbujemy odpowiedzieć wspólnie na pytania:

  • Co jako ludzie możemy zyskać na wprowadzeniu pojazdów autonomicznych?
  • Jakie zagrożenia są związane z tym rozwiązaniem?
  • Jakie są największe trudności, przed którymi stoimy, aby pojazdy autonomiczne mogły funkcjonować powszechnie?

2. Photony autonomiczne - pierwsze próby

Każda grupa otrzymuje taśmę izolacyjną i kartę pracy z zadaniami do wykonania. Karta przeprowadzi uczniów przez kilka prostych ćwiczeń obrazujących trudności, z którymi mierzą się konstruktorzy pojazdów autonomicznych. Podsumowujemy wykonanie kart pracy. Zwracamy uwagę na to, że faktycznie moglibyśmy próbować wykorzystać czujnik śledzenia linii, ale już samo skręcanie w prawo na skrzyżowaniach często skutkuje gubieniem trasy, a przecież prawdziwy samochód musi móc przejechać po drogach o różnej nawierzchni, przy różnym oświetleniu i raczej nie ma możliwości, aby dostosować wszystkie drogi do możliwości korzystania z podobnego systemu. Wspólnie zastanawiamy się, jaki kształt może mieć nasz projekt i na jakie kwestie będziemy musieli zwrócić uwagę. 

3. Zadanie główne cz.1

Każda z grup będzie musiała przygotować uniwersalny program, który przez wprowadzenie do niego odpowiednich parametrów przeprowadzi robota z punktu A do punktu B, w taki sposób, że będzie jechał ulicami przygotowanego wspólnie przez klasę "miasteczka", unikając kolizji z innymi robotami. Punktem wyjścia może być program z zajęć #5.

  • W scenariuszu #5 dokładnie wyjaśnione zostały listy parametrów, które będą stanowiły podstawę do programowania trasy.
  • Chcemy, aby robot Photon puszczony na drogę wykonał w pętli następujące działania:
    • Ruszył prosto i przejechał odległość równą pierwszemu parametrowi
    • Na skrzyżowaniu skręcił w lewo, prawo, albo pojechał dalej prosto
  • Definiujemy 2 listy parametrów kierunek i odleglosc. Pierwszą wyrażą skróty 'P' jak Prawo, 'L' jak Lewo i 'N' jak Naprzód, a drugą jako liczby wyrażone w centymetrach. Listy kat nie tworzymy, bo dla uproszczenia możemy przyjąć, że drogi w naszym miasteczku będą się krzyżować zawsze pod kątem prostym.
  • W tym programie skorzystamy z nowego rodzaju pętli warunkowej.
    • w pętli if warunek: coś działo się po spełnieniu danego warunku.
    • w pętli if warunek: co ma się stać else: co ma się stać wprowadzaliśmy warunek i instrukcję dla sytuacji, kiedy warunek nie jest spełniony.
    • Tym razem do if dodamy elif czyli 'else if'. Ta metoda wprowadza nam kilka równorzędnych warunków.
      np. Jeżeli kierunek to P skręć w prawo,
      a jeżeli kierunek to L skręć w lewo,
      a jeżeli kierunek to N to kontynuuj
    • i to numer powtórzenia programu działającego w pętli, oznaczenie pochodzi od słowa iteracja. W połączeniu z nazwą listy i [] np. kierunek[i] oznacza, przy pierwszej iteracji pierwszą pozycję na liście kierunek, przy drugiej iteracji drugą pozycję na liście kierunek itd.
    • Używamy metody continue, aby wskazać, że w przypadku tego warunku wychodzimy z pętli bez dodatkowego działania.

Przykład powstałego programu.

4. Jeśli w trakcie spotkania realizujemy tylko I część scenariusza, testujemy dotychczas przygotowany program i zapisujemy go. Będziemy kontynuować na kolejnych zajęciach. Podsumowujemy to, co udało nam się dzisiaj zrobić.

 

Współautorem scenariusza jest Michał Nowak.

Dyskusja (brak komentarzy)

Zaloguj się, aby rozpocząć dyskusję