Zmiany

Segregacja odpadów

Dodane 12 179 bajtów, 11:10, 7 lis 2014
[[Category:Scenariusze Scratch]] [[Category:Mistrzowie Kodowania]]
 '''Materiały stworzone przez Fundację Coder Dojo Polska w ramach Programu „Mistrzowie Kodowania” finansowanego przez Samsung Electronics Polska, objęte licencją CC BY 3.0 PL "Creative Commons Uznanie Autorstwa 3.0 Polska".''' Adres do projektu: [[http://scratch.mit.edu/projects/2536904226093943/]] == Jak działa? Cel ==Naszym zadaniem # Remiks projektu bazowego ''Eko śmieci'' i dostosowanie go do zasad segregacji adekwatnych dla danego regionu. (wersja łatwiejsza)# Stworzenie projektu o segregacji odpadów w grze jest segregowanie środowisku Scratch (wersja zaawansowana) === Zgodność z Podstawą Programową === '''Edukacja polonistyczna''' # w zakresie umiejętności społecznych warunkujących porozumiewanie się i kulturę języka: #* obdarza uwagą dzieci i dorosłych, słucha ich wypowiedzi i chce zrozumieć, co przekazują;# w zakresie umiejętności czytania i pisania: #* rozumie sens kodowania oraz dekodowania informacji; odczytuje uproszczone rysunki, piktogramy, znaki informacyjne i napisy,  '''Edukacja przyrodnicza''' # w zakresie rozumienia i poszanowania świata roślin i zwierząt: #* zna zagrożenia dla środowiska przyrodniczego ze strony człowieka: np. wyrzucanie odpadów i spalanie śmieci itp.#* wie, że należy segregować śmieci; rozumie sens stosowania opakowań ekologicznych;  '''Zajęcia komputerowe'''# posługuje się komputerem w podstawowym zakresie: uruchamia program, korzystając z myszy i klawiatury; # stosuje się do odpowiednich koloru kontenerówograniczeń dotyczących korzystania z komputera== Wprowadzenie ==<small>Czas na realizację tej części: ok 15 min</small> Na samym początku stworzymy duszka którego zadaniem będzie ustalanie koloru śmietnikapoczątek proponujemy przeprowadzenie krótkiej dyskusji z uczniami na temat potrzeby i sposobu segregowania śmieci. Stwarzamy uczniom okazję do wypowiedzi na temat segregowania odpadów w ich najbliższym otoczeniu. Pytamy o potrzebę takiej segregacji. Prosimy uczniów o podanie kolorów i rodzajów śmietników do segregacji śmieci, które widują w swojej okolicy.Na początku zajmiemy == Jak modyfikować===== omówienie projektu bazowego i możliwych sposobów jego modyfikacji ===<small>Czas na realizację tej części: ok 15 min</small> Po dyskusji na temat segregacji śmieci, proponujemy uczniom zastosowanie wiadomości w praktyce. Prezentujemy i omawiamy z uczniami uniwersalną postać projektu '''ekośmiecie''': http://scratch.mit.edu/projects/26093943/. Scrach-owy projekt polega na łapaniu spadających śmieci (odpadów) do koszy w odpowiednim kolorze. Odpady pojawiają się stworzeniem kostiumówna ekranie dzięki funkcji klonowania.Ja stworzyłem 3 śmietnikKlawisz „spacja” odpowiada za zmianę koloru kosza. Za każdy dobrze sklasyfikowany odpad gracz otrzymuje punkt np. gdy szkło wpadnie do odpadów szklanych. W celu prezentacji zasady działania gry, możemy poprosić chętnego ucznia o zagranie. Prosimy uczniów, aby w trakcie gry spróbowali rozszyfrować, jakie śmieci powinny wpadać do poszczególnych śmietników (niebieski - papier, brązowy- biodegradowalne, zielony i niebieski- szkło). Można dodać ich więcej oczywiście tylko trzeba pamiętać Pracę z projektem rozpoczynamy od zmodyfikowania gry bazowej. Ustalamy z uczniami na czym będzie polegała modyfikacja. Wspólnie wybieramy kolory koszy, w oparciu o kolejnościzasady segregacji obowiązujące w naszej okolicy.W trakcie rozmowy powinny pojawić się jeszcze inne propozycje:Nazwy # w duszku '''kosz''': #* trzeba dostosować kolory koszy do tych obowiązujących w danym regionie Polski,#* możemy zmienić nazwy kostiumów polecam nazwać pierwszy człon to duszka '''kosz''', na takie, które mówią jaki rodzaj kontenera śmieci te kosze zbierają np. plastik, szkło, drugi człon : niebieski możemy nazwać '''papier''')#* możemy dodać jeszcze inne rodzaje koszy;# w duszku '''śmieci''':#* możemy dostosować kolejność kostiumów śmieci do kolejności kostiumów koszy (np.: jeśli pierwszy kostium '''kosza''' to będzie indywidualny numer najlepiej po kolej 1papier,to w duszku '''śmieci''' pierwsze 2kostiumy będą z kategorii papier) #* możemy dodać dodatkowe kostiumy do poszczególnych rodzajów śmieci,przy czym należy trzymać się zasady, że w każdym rodzaju śmieci musi być taka sama ilość postaci tych śmieci np.: trzy rodzaje śmieci papierowych, trzy rodzaje śmieci biodegradowalnych oraz trzy rodzaje śmieci ze szkła=== pobranie projektu bazowego ===<small>Czas na realizację tej części: ok 10 min</small> Pracę zaczynamy od pobrania wersji bazowej projektu ''Eko śmiecie''. Projekt możemy pobrać bezpośrednio ze strony scratch-a, korzystając z adresu projektu: http://scratch.mit.edu/projects/25796357/. Powyższy adres można wcześniej zamieścić na szkolnym blogu/ stronie albo dodać projekt do studia Scratch. Gdy już znajdziemy projekt, klikamy w ikonę [[Plik:1Ikona4.png|wyświetla wnętrze projektu]]Nasz kolory zmieniają się od lewej i przechodzimy do prawej.Nasz kod wygląda bardzo prostowersji roboczej projektu. Jeśli uczniowie pracują on-line wystarczy ustawić by po przyciśnięciu np, że klikną w REMIKS i zostanie on przypisany do ich konta. spacji zmienia nam się kostium Jeśli uczniowie pracują off-line, należy wejść w polecenie ''plik'' i wybrać opcję ''pobierz na następnyswój komputer''. [[Plik:2Okno1.png|800px|adaptacja gry bazy do konta lub na komputer]]Nasz wybór koloru śmietnika ustawimy sobie === dodawanie i edycja śmieci: ===<small>Czas na realizację tej części: ok 45 min</small> Jedną z modyfikacji projektu jest edycja duszka '''śmieci''' i zmiana jego wyglądu. Zadanie to rozpoczynamy od wejścia w zakładkę '''kostiumy'''. Możemy tam modyfikować istniejące lub tworzyć nowe kostiumy duszka '''śmieci'''. Polecamy tworzyć grafikę '''śmieci''' w trybie pracy wektorowym, gdyż tak utworzona grafika jest lepszej jakości, nawet podczas przybliżania i oddalania. Zmianę trybu pracy edytora graficznego dokonujemy w prawym dolnym roguokna programu.Teraz zajmiemy się stworzeniem pojazdu który będzie wywoził nasze odpady[[Plik:m1.png|400px|]]Zaczniemy równie od narysowania naszego W modyfikowanym projekcie bardzo ważne jest, jakie nazwy nadamy poszczególnym duszkom i ich kostiumom. Aby program potrafił prawidłowo odróżnić rodzaj danego śmiecia i połączył go z odpowiednim koszem, w nazwach kostiumów obu duszków musi pojawić się pewna część wspólna. Kolejne kostiumy duszka'''śmieci''' muszą zawierać w swojej nazwie, nazwę kosza do którego są przypisane.Pozostała część nazwy kostiumu duszka '''śmieci''' jest kolejnym numerem porządkowym np. kostiumy duszka '''śmieci''', które powinny wpadać do kosza o nazwie '''bio''' będą miały nazwy: '''bio1, bio2, bio3...'''. Kostiumy duszka '''śmieci''', które powinny wpadać do kosza o nazwie papier, będą miały nazwy: '''papier1, papier2, papier3...'''. Żeby gra działała prawidłowo musimy przestrzegać zasady, aby w każdym rodzaju duszka '''śmieci''' była taka sama ilość kostiumów np. trzy kostiumy śmieci papierowych, trzy kostiumy śmieci z rodzaju szkło itd.Ma to generalne znaczenie w przedstawionym poniżej fragmencie skryptu: [[Plik:3Ok3c.png|kojarzy rodzaj kosza z odpowiednim wyglądem śmiecia]]Pomarańczowa ramka wskazuje Im więcej kolorów (rodzajów) śmietników wprowadzimy do gry, tym większy zakres liczb do losowania musimy wpisać (na przycisk dzięki któremu może zmieniać tryb obrazu rysunku powyżej, w czerwonej pętli "losuj od 1 do 3"). W grze bazowej mamy 3 kolory (rodzaje) śmietników, dlatego losujemy liczby od 1 do 3. Analogicznie dzieje się z bitmapy wyglądami (kostiumami) duszka '''śmieci'''. Im więcej wyglądów danego rodzaju śmieci stworzymy, tym większy zakres liczb do losowania musimy wprowadzić (na wektoryrysunku: niebieska pętla). W grze bazowej każdy rodzaj śmieci ma po 2 wyglądy (kostiumy).Teraz zajmiemy się jazdą naszej śmieciary'''Wskazówka:''' Klocek [[Plik:Klocek11. Kod png|komputer losuje kostiumy z wskazanego przedziału]] zaznaczony czerwoną pętlą w powyższym skrypcie, program scratch odczytuje jako: "wylosuj jeden z 3 różnych kolorów koszy". . Natomiast to, co jest bardzo prostyw pętli niebieskiej, dzięki klockowi ''losuj. Zawsze kiedy będzie wciśnięta strzałka ..'' oznacza, że program wybiera spośród dwóch dostępnych kostiumów '''śmieci''' z konkretnej ich kategorii. === nowe kosze na śmieci: ===<small>Czas na realizację tej części: ok 20 min</small> Dodawanie nowych rodzajów koszy polega na dodawaniu kolejnych kostiumów dla duszka '''kosz'''. Możemy skopiować wcześniejszy kostium, następnie zmienić jego kolor i nazwę.[[Plik:Ok4.png|dodawanie kolejnego rodzaju kosza]] '''Wskazówka:''' Musimy pamiętać o odpowiednim nazewnictwie kostiumu '''kosza''' i kostiumów '''śmieci''' pasujących do nowego rodzaju '''kosza'''. Jeśli nowy kostium '''kosza''' nazwiemy np.: ''plastik'', to nowe kostiumy ''śmieci'' będą miały nazwy: ''plastik1''. ''plastik2'',... '''Uwaga!''' W grze została wykorzystana lista '''rodzaje''' - zawierająca rodzaje śmietników. Jest to nowy rodzaj bloku z kategorii '''dane'''. Chcąc dodać do gry bazowej kolejny rodzaj śmietnika musimy pamiętać o dopisaniu go do utworzonej listy '''rodzaje'''.  [[Plik:Ok3d.png|dodanie nowego rodzaju śmietnika do listy]] Nowe kostiumy - rodzaje koszy, trzeba również uwzględnić w prawo lub zakresie liczb do losowania dla rodzajów śmieci w lewo nasz pojazd przesunie się duszku '''śmieci'''. [[Plik:Ok4a1.png|losowanie z ilości możliwych rodzai koszy]] == Jak to działa ==<small>Czas na realizację tej części: 90 min</small> === wprowadzenie ===<small>Czas na realizację tej części: ok 15 min</small> Po wstępnej rozmowie z uczniami na temat segregacji (patrz dział wprowadzenie na samej górze) przejdźmy do omówienia ostatecznego efektu, jaki chcemy otrzymać w odpowiedni kierunekgrze. Dodatkowo dodamy skrypt który sprawiZadaniem uczniów jest stworzyć grę, że nasz kontener nie wjedzie nam w ścianęktórej gracz będzie musiał prawidłowo dopasować kolor kosza do spadających śmieci. Zawsze kiedy dotnie krawędzi zostanie przesunięty Za prawidłowe posegregowanie odpadów gracz będzie otrzymywał punkty. Musimy zatem stworzyć:# duszka '''kosz''', który będzie zmieniał kolor (rodzaj) przy użyciu wybranego klawisza na klawiaturze (np. spacja),# duszka '''śmieci''', który będzie produkował śmieci (z użyciem klocka ''sklonuj siebie''),# skrypty pozwalające śmieciom ciągle się produkować oraz sprawdzające prawidłowość posegregowania ich przez gracza - wprowadzenie nowego bloku: '''lista''' z kategorii bloków '''dane''' ;# licznik naliczający punkty za prawidłową segregację. === tworzenie różnego rodzaju koszy do segregacji śmieci ===<small>Czas na realizację tej części: ok 20 min</small> Postępujemy tak samo, jak w prawo zakładce '''''dodawanie nowych koszy''''' w dziale '''modyfikacja'''.W wersji podstawowej proponujemy uczniom stworzenie 3 rodzajów (kostiumów) '''koszy''' np: brązowy o 10 krateknazwie '''bio''', natomiast kiedy dotnie naszego zielony o nazwie '''szkło''' i niebieski o nazwie '''papier'''. Chętni uczniowie mogą stworzyć więcej koszy. Ważne, żeby uwzględnić stworzoną ilość koszy w odpowiednich fragmentach skryptów.==== Instrukcje dla duszka odpowiedzialnego za wybór '''kosz''' ====Po utworzeniu kostiumów dla duszka '''kosz''' musimy go zaprogramować tak, aby gracz miał możliwość szybkiej zmiany jego koloru zostanie odepchnięty w lewo(rodzaju).Uczniowie mogą zaproponować dowolne klawisze. Na tym etapie warto zasugerować użycie klawisza spacja. Poprośmy uczniów o zbudowanie skryptu, który pozwoliłby na szybką zmianę kostiumu (koloru kosza) na następny za pomocą klawisza spacja. Poszczególne kolory, to kostiumy duszka '''kosz''': [[Plik:4Ok5.png|po naciśnięciu spacji zmienia się kostium duszka (rodzaj kosza)]] === tworzenie duszka odpowiedzialnego za produkcję ŚMIECI ===<small>Czas na realizację tej części: ok 20 min</small> Teraz zajmiemy się najtrudniejszym duszkiem , który będzie tworzył nam spadające śmiecie.Zaczniemy Zacznijmy jak zawsze , od stworzenia duszków, bardzo duszka i nadaniu mu nazwy '''śmieci'''. Następnie przejdźmy do zakładki jego kostiumów. W tym miejscu pod postaciami kolejnych kostiumów będziemy tworzyli różne rodzaje śmieci. Bardzo ważne jest tu nazewnictwo, zwróćmy uczniom na to szczególną uwagę. Pierwszy numer Pierwsza część nazwy kostiumu '''śmieci''' jest to numer odpowiadając nazwa odpowiadająca rodzajowi śmietnika, jeśli . Jeśli w duszku odpowiadającym za wybieranie koloru śmietnika nazwa '''kosz''' jakiś kostium nazywa się np. plastik1 : '''bio''' to wszystkie śmieci plastikowe biodegradowalne muszą zaczynać się na 1od '''bio'''. Dalsza część nazwy kostiumu (cyferka) jest no to numer indywidualny wyglądu odpadu , (najlepiej od 1 w górę). Przykład: kosz nazywa się '''bio''', i wszystkie tworzymy do niego dwa śmiecie o nazwach: '''bio1''' oraz '''bio2''': [[Plik:ok4b1.png|850px|]] '''Uwaga!''' Wszystkie rodzaje śmieci powinny mieć po tyle samo wyglądów.[[Plik  Gdy mamy już stworzone wszystkie kostiumy musimy naszego duszka:5'''śmieci''' zakodować.png]]Teraz wszystko zakodujemy. ==== instrukcje dla duszka śmieci ====<small>Czas na realizację tej części: ok 35 min</small> Na początku stworzymy zegar , który będzie co 2 sec tworzył wytwarzał nam klona. 
[[Plik:6a.png]]
Teraz zajmiemy Następnie musimy stworzyć skrypt dla klona który się naszym kolonemprodukuje masowo. Stworzymy dwie pomocnicze zmienne Musi on wiedzieć, jak rozróżniać do którego rodzaju kosza wpada, czy gracz wybrał prawidłowy rodzaj i punktykosza oraz, jak naliczać punkt za poprawną segregację. W tym celu potrzebujemy wprowadzenia dwóch zmiennych: '''''Rodzaj '''''- będzie przechowywał typ naszego śmiecia, jako id, natomiast punkty taki identyfikatora oraz '''''Punkty'''''- będą naliczane podczas zabrania zebrania przez '''kosz''' odpowiedniego odpadu. 
[[Plik:6b.png]]
Kod poniżej jest całą zawartością duszka odpowiadającego za śmieci. Kiedy nasz klon zostanie powołany do życia, pojawia się i od razu jest losowany jego rodzaj z podanego przedziału. Następnie zmieniamy jego kostium łącząc ze sobą rodzai i numer wyglądu. Kiedy już mamy nasz wygląd umieszczamy go na losowej pozycji z przedziału x od -200 do 30. Teraz jest bardzo ważny moment w którym sprawdzamy czy nasz duszek wpada do kontenera. Zawsze jeśli dotknie on kosza i posiada odpowiedni rodzaj czyli butelka szklana wpada do zielonego śmietnika naliczane są punkty. Natomiast jeśli źle go przyporządkujemy zostanie on po porostu skasowany, można to przerobić by odejmowało nam punkty przy pomyłce. Do puki nasz odpad nie dotyka kosza będzie on spadał aż dotknie krawędź lub wspomniany kosz.
[[Plik:6.png]]
Aby wprowadzić te zmienne wchodzimy w kategorię klocków: '''dane''' i wybieramy polecenie ''stwórz zmienną''. W oknie nazwy wpisujemy ''rodzaj'' lub ''punkty'' (każdą zmienną tworzymy oddzielnie). Zaznaczamy opcję: ''tylko dla tego duszka'' i klikamy OK. Stworzona przez nas zmienna pojawi się automatycznie w kategorii '''dane'''. Jeśli chcemy aby nie była widoczna na scenie, musimy anulować odhaczenie (ptaszka) po lewej stronie przy jej nazwie. Przy przedstawionych poniżej ustawieniach: zmienna '''''Punkty''''' - widoczna na scenie, zmienna '''''Rodzaj''''' - niewidoczna na scenie [[Plik:Okno2.png|nowe zmienne]] '''Uwaga!''' Każdą zmienną wprowadzamy oddzielnie.  ===== tworzenie ''listy'' z rodzajami śmietników === Jak modyfikować? ==Jeśli znamy już mechanikę działania naszej gry edycja będzie bardzo prosta i nie powinna sprawić nam problemówProgram musi zapamiętać stworzone przez nasz rodzaje śmietników, aby skojarzyć je ze śmieciami do nich wpadającymi. W tym celu wprowadzimy nowy blok z kategorii '''dane'''. Będzie nim ''nowa lista'', którą nazwiemy '''rodzaje'''.Wystarczy zmieniać duszki odpowiedzialne za wybieranie koloru [[Plik:Ok4d1.png|tworzenie nowej listy]] Żeby lista '''rodzaje''' spełniła prawidłowo swoją funkcję, musimy na nią wprowadzić nazwy koszy, jakich używamy w naszej grze. Wykorzystamy do tego klocek [[Plik:Ok4e.png|wprowadzanie elementów na listę]]. Każdy rodzaj śmietnika i duszka odpowiedzialnego za odpadydopisujemy do naszej listy '''rodzaje'''.Bloki (każy rodzaj śmietnika w nowym bloku) podpinamy pod blok z zieloną flagą: [[Plik:Ok4f1.png|wprowadzanie 3 elementów na listę rodzaje]] === Dodawanie i edycja == moment losowania śmieci: =====Podstawowa edycja Gdy nasz klon zostanie powołany do życia, pojawia się i od razu powinien być losowany jego rodzaj (z rodzajów śmietników) oraz jego wygląd z możliwych w danym rodzaju śmieci . Posłuży nam do zmiana wyglądutego klocek: [[Plik:Ok8. Którą możemy dokonać po wejściu w zakładkę kostiumypng|losowanie rodzaju śmieci]]. Możemy tam tworzyć nasze Będzie losował jednej z 3 kategorii śmieci(zaznaczon na czerwono) oraz jeden z 2 wyglądów śmiecia z konkretnej kategorii (zaznaczono na niebiesko). Skrypt klona pozwalający wykonać mu powyższe czynności powinien wyglądać: [[Plik:Ok3.png|losowanie wyglądu śmiecia z określonej kategorii]]  Musimy również określić powstałemu klonowi obszar jego poruszania się, ja polecam tworzyć je przy pomocy wektorówco umożliwi klocek: [[Plik:Ok3a.png|określamy współrzędne docelowe dla duszka]]. Współrzędna x, są one potem określająca duszkowi '''śmieć''' możliwość wyboru miejsca pojawienia się w lepszej jakości nawet podczas przybliżania i oddalaniaszerokości sceny oraz współrzędna y narzucająca miejsce u góry sceny. Można to zmienić  ===== sprawdzanie zgodności ŚMIECIA z KOSZEM =====Następnie kodujemy moment , w prawym dolnym roguktórym sprawdzamy, czy nasz duszek wpada do '''kosza'''.Uczniowie intuicyjnie zaproponują użycie klocka warunkowego. Nakierujmy ich na klocek [[Plik:m1Ok9.png]], ponieważ pojawi się kilka możliwych zakończeń gry.Bardzo ważne jest tu nazewnictwo naszych duszkówPrzeanalizujmy możliwe sytuacje, pierwsza liczna oznacza które mogą się pojawić:* jeśli duszek dotknie '''kosza''' i posiada on odpowiedni rodzaj odpadu , czyli np. plastik, :szklana butelka (szkło1) wpada do zielonego śmietnika (szkło, papier, ten numer ustalamy w duszku odpowiadającemu za wybór koloru kontenera) naliczane są punkty:  [[Plik:Ok9a. Reszta nazwy jest indywidualnym numerem wyglądupng|część skryptu z odpowiadająca za prawidłowe dopasowanie śmiecia do kosza]], muszą być one jeśli źle go przyporządkujemy zostanie on po koli, najlepiej od jedne w góręporostu skasowany.Bardzo ważna jest zmiana kodu w kodzie podajemy jaki mamy przedział rodzai śmieci * dopóki nasz odpad nie dotknie '''kosza''' będzie spadał, aż dotknie krawędzi sceny i ile mamy wyglądów danego typu.zniknie:Na czerwono jest zaznaczony przedział ilości śmietników[[Plik:Ok9b.png|część skryptu odpowiadająca za dotknięcie krawędzi sceny]]. Dodatkowe wykorzystanie klocka Natomiast na żółto ile mamy kostiumów danego rodzaju np[[Plik:Ok5b. plastikówpng|pozwala kontrolować prędkość opadania]] w odpowiednim miejscu skryptu, pozwoli kontrolować prędkością spadania odpaduAby gra się zapętlała wykorzystamy klocek kontroli [[Plik:m2Ok9c.png|umożliwi ciągłe powtarzanie gry]]=== Nowe kosze na Skrypt przedstawiony poniżej jest całą zawartością duszka odpowiadającego za śmieci: ===Dodawanie koszy jest banalne, trzeba tylko pamiętać o odpowiednim nazewnictwie.Wystarczy dodać odpowiednią liczbę duszków i pamiętać by numery się nie powtarzały[[Plik:6.png]] [[Plik:m3Ok5d.png|right|przykładowy wygląd okna programu]] == Co dalej? == Podstawową grę można zmodyfikować poprzez:* wprowadzenie skryptu odejmującego punkty za złe dopasowanie śmieci do kosza;* wprowadzenie efektów dźwiękowych informujących o poprawnym wyborze kosza,* wprowadzenie warunków określających zakończenie gry.