poniedziałek, 27 marca 2017

Od chaosu do...

Dziś na zajęciach chłopcy próbowali zaprogramować pewien algorytm. Prosty, wydawałoby się że bez większego sensu. Algorytm wygląda następująco:

Mamy trzy wierzchołki trójkąta {W1, W2, W2} i punkt (nazwijmy go skoczkiem). Nasz skoczek, an początku ulokowany wewnątrz trójkąta, w nieskończoność (bądź do przerwania programu przez użytkownika) wykonuje następujące kroki:
  1. Wybiera losowo jeden z wierzchołków.
  2. Skacze do połowy odległości pomiędzy nim a wybranym wierzchołkiem (oczywiście po linii prostej przechodzącej przez skoczka i wierzchołek)
  3. Rysuje punkt w miejscu, do którego skoczył

W graficzny sposób, uwzględniając to że będziemy programować w Scratchu, algorytm można przedstawić graficznie:

A program może wyglądać tak:

Co robi? Cóż, zobaczcie sami, a jeśli nie chce Wam się "pisać" programu samodzielnie, możecie pobrać go i uruchomić w Scratchu.
A na koniec, co jeszcze można zrobić?

  • dodać możliwość ustawiania wielkości punktu
  • dodać kolory (np. każdy wylosowany wierzchołek ma przypisany inny kolor)
  • zrobić kwadrat, zamiast trójkąta (tutaj uwaga: wtedy musimy mieć 8 punktów, nie 4)

sobota, 18 marca 2017

Klubik w marcu - Nawigacja (cz. 1)

Tym razem tematem przewodnim była nawigacja. Ze względów czasowych skupiliśmy się na użyciu kompasu z mapą, a że niestety aura nie dopisała, część terenowa też została ograniczona do minimum. Ale po kolei...

Budowa kompasu

Nim sięgniemy po kompas, warto zapoznać się z jego budową.



Niewątpliwie najważniejszym elementem, jest coś co wskazuje nam północ (południe), czyli igła magnetyczna (1). Jest to kawałek namagnesowanego metalu, osadzony w taki sposób, że może się swobodnie obrać w komorze, która często jest wypełniona płynem. W komorze powinniśmy również mieć strzałkę orientacyjną (2) i linie pomocnicze (3) do poprawnego pozycjonowania kompasu na mapie. W nieco lepszych kompasach znajdziemy również podziałkę deklinacji magnetycznej (4).
Na obracającej się komorze znajdziemy podziałkę w stopniach (5), z której możemy odczytać wartość azymutu. Strzałka kierunkowa (6) określa kierunek, a za pomocą podziałki (7) (która może być w skali) odczytamy odległości na mapie. Przy drobnych detalach pomocna może okazać się lupa (8).

Co wskazuje kompas?

Różne mogą być odpowiedzi, ale generalnie można je sprowadzić do tego, że kompas pokazuje "północ". No dobrze, ale czy na pewno i jaką północ? Na poniższej mapie Europy zielona linia wyznacza miejsca, gdzie igła kompasu pokazuje geograficzny biegun północny. W pozostałych miejscach wskazania kompasu są w mniejszym lub większym stopniu przekłamane.


Dzieje się tak dlatego, że rzeczywisty biegun północny nie pokrywa się z biegunem magnetycznym, którego obecna pozycja to w przybliżeniu 86.5°N 172.6°W, co pokazuje mapa poniżej.


Jak widać, dla Polski południk magnetyczny i geograficzny nie pokrywają się. Kąt pomiędzy nimi nazywamy deklinacją magnetyczną, a jej wartość dla Wrocławia obecnie to 4° 34' E. (wartość ta zmienia się od 4°E  na zachodzie kraju do 6° 37'E na wschodzie). O taki kąt nasza trasa będzie odbiegać na wschód od zamierzonej, jeśli będziemy podążać zgodnie ze wskazaniami kompasu.  
Idąc na północ, na odcinku 1 km zboczymy o prawie 80 m, przy 10 km ten błąd to już 800 m.
Jeśli chcemy być dokładni w naszych pomiarach, to albo musimy zaopatrzyć się w kompas z kompensacją błędu deklinacji, albo pamiętać, by od obranego azymutu odjąć wartość deklinacji (zakładając, że mówimy o Polsce).


Jaki kompas?

Odpowiedź: taki, jaki jest nam potrzebny :)
Poniżej możemy zobaczyć przykładowe kompasy, przy czym należy pamiętać, że jest to podział arbitralny, wielu kompasów tu nie ma i należy go potraktować z lekkim przymrużeniem oka (poza końcowym wnioskiem).

Kompas guzikowy. Guzikowy, bo raz że mały, dwa - tak naprawdę guzik nam pokaże, poza tym gdzie jest północ.
Cena: ~7 zł
Kompas wkomponowany w breloczek. Ciut lepszy niż guzikowy, ale do poważniejszych zastosowań średnio przydatny.
Cena: ~10 zł
Kompas "kieszonkowy". Do powieszenia sobie na sznurku. Ładnie wygląda (na tym sznurku) i nawet działa, przynajmniej do czasu gdy w komorze pojawią się pęcherzyki powietrza.
Cena: ~20-30 zł
Kompas "soczewkowy" (lensatic compass) - wzorowany na kompasie wojsk amerykańskich.
Dobry do określenia pozycji, do pracy z mapą już mniej, ze względu na nieprzeźroczystą komorę.
Wygląda czadersko i... i tyle.
Cena: ~20+ zł
Kompas płytkowy/płaski. Dobry do pracy z mapą.
Dodatkowo posiada linijkę i/lub podziałki w różnych skalach.
Cena: ~15 - kilkaset zł
Kompas płytkowy/płaski z lusterkiem.
Dodatkowo posiada linijkę i/lub podziałki w różnych skalach
Cena: ~30 - kilkaset zł

Zatem, jaki kompas? Jeżeli myślimy o pracy z mapą i poważnym wykorzystaniem kompasu, to niestety nie tani. W niedrogich kompasach niestety łatwo może dojść do rozmagnesowania igły, rozhermetyzowania komory, no i potrafią dłuuugo się stabilizować, co przy np biegu na orientację jest irytujące. Mi osobiście najlepiej pracuje się z płytkowymi (zwłaszcza z lusterkiem), a to już wydatek rzędu kilkudziesięciu i więcej złotych.


Azymut

Azymut, najogólniej mówiąc, jest to kąt między kierunkiem północnym a kierunkiem marszu. Azymut, liczony jest zgodnie z ruchem wskazówek zegara, począwszy od kierunku północy, a wartość jego podajemy w stopniach. Przykłady:








poniedziałek, 13 marca 2017

Pierwsza gra

Gdyby ktoś mnie zapytał, czy wolę "Star Trek" czy "Star Wars" odpowiedziałbym, że to pierwsze.
I może to sprawiło, że nasza pierwsza gra będzie się odnosić do przygód załogi statku Enterprise.
"Naszą pierwszą misją jest przelecieć przez rój asteroid, a że nasze pole siłowe jeszcze nie działa, nie możemy się z nimi zderzyć. Fazery nie działają, więc zostają nam torpedy fotonowe, których mamy ograniczoną ilość. Scotty, nasz mechanik, poinformował nas, że chwilowo nie możemy ani przyspieszać, ani zwalniać - zostaje nam manewrowanie na boki. Na szczęście, tych asteroid nie ma za wiele..."

Podsumowując założenia i zadania:
  • gra rozpoczyna się np. po kliknięciu w flagę
  • statek może poruszać się tylko na prawo i lewo (wzdłuż osi X)
  • statek nie może wylecieć za ekran
  • statek ma tylko 10 torped
  • asteroidy w liczbie sztuk 10 lecą na nas w losowych odstepach czasu
  • asteroidy poruszają się z różną predkością
  • asteroida trafiona torpedą rozpada się hukiem i błyskiem (aczkolwiek pamiętamy - w próżni tak naprawdę nie słychać wybuchów!)
  • torpeda po uderzeniu w asteroidę naturalnie ulega dezintegracji, nie leci dalej
  • uderzenie asteroidy w statek kończy grę

W pliku game.sb2 znajdują się potrzebne grafiki, by zacząć naszą przygodę :)

Grafika statku pochodzi z serwisu clipartfest.com

poniedziałek, 6 marca 2017

Plany po feriach

Ferie minęły, czas z nowu do szkoły. Na kółku robotycznym czeka nas też trochę nowych rzeczy.

Scratch

Pierwsze parę spotkań poświęcimy językowi programowania Scratch (https://scratch.mit.edu/)
Zachęcam do próbowania w domu wraz z dziećmi, na sieci można znaleźć mnóstwo materiałów instrukażowych (np. https://scratch.mit.edu/studios/1817151/).
Nie będziemy pisać kolejnego tutoriala o Scratchu w ramach tego bloga, gdyż nie jest naszym celem dogłębne poznanie tego języka. Chłopcy powinni zrozumieć podstawowe pojęcia z programowania, tak byśmy mogli przejść do....


Arduino

Ten mały układ może nie stał się rewolucyjnym produktem, ale dokonał jednego - programowanie mikrokontrolerów dotarło pod strzechy, co więcej, przeciętny Malinowski może się tego nauczyć.
Tak wygląda nasz układ:



A co można zrobić z arduino? A choćby i to (choć do takiego projektu dalsza droga):

(układ mierzy odległość i podaje ją w centymetrach)