Znajomy niedawno był w Krakowie na Nocy Naukowców 2014. Z ciekawostek najbardziej spodobał mu się program Scratch. Służy on do nauki programowania, przez układanie programów z klocków. Mówiąc językiem współczesnych robi się w nim crafting programów.
Ponieważ wiele osób chciałoby wykorzystać swoje kontrolery w prosty sposób, postanowiłem się przyjrzeć jego wersji dla Arduino o nazwie S4A.
Najpierw ściągnąłem program ze strony twórców:
Program jest w wersjach na Windows, Mac, Linux i Raspberry PI.
Następnie trzeba wgrać przez Arduino IDE do Arduino szkic komunikujący się z S4A.
Niestety szkic wykorzystuje sprzętowe sztuczki kontrolerów ATmega168/328 i działa tylko na Arduino UNO lub Duemilanove.
Po podłączeniu Arduino do komputera i uruchomieniu S4A widzisz to:
Po prawej znajduje się narysowana płytka Arduino, a obok niej podgląd działania pinów analogowych 0..5 i cyfrowych 2, 3. To chyba ułatwia zrozumienie niektórych rzeczy.
Po lewej stronie jest tabelka zawierająca wszystkie klocki z których możesz craftować program. Klocki pookładane są w kategorie, żeby łatwiej było szukać.
Na środku jest pole do którego zrzucasz klocki i układasz program.
Zacznę od typowego przykładu mrugania wbudowaną w Arduino pomarańczową lampką LED. Ma ona oznaczenie na płytce L lub L13 i jest podłączona do pinu cyfrowego 13.
Program wygląda tak:
Ułożyłem go w ten sposób:
- W polu kontrola wybrałem klocek “Kiedy kliknięto [zielona flaga]”.
Ten klocek oznacza uruchomienie programu. Uruchamia się on jak naciśniesz zieloną flagę w prawym górnym rogu okna. Czerwone kółko zatrzymuje program. - Potem podłączyłem do tego klocka – klocek o nazwie “Zawsze”.
Wszystko co będzie w środku tego klocka będzie się wykonywało bez końca w kółko. - Potem w kategorii “Ruch” wybrałem klocek “digital 10 on” i włożyłem do środka klocka “Zawsze”. Potem przestawiłem mu numer pinu na 13.
Klocek ten odpowiada za włączenie pinu – będzie z niego wychodziło 5 V i zasilało lampkę L. - Następnie w kategorii wybrałem klocek “czekaj 1 s”. Klocek ten blokuje działanie programu na jakiś czas.
- Za nim dołączyłem klocek “digital 13 off” z kategorii “Ruch”.
Wyłącza on napięcie na pinie 13 i tym samym lampkę L. - Dalej dodałem znowu klocek “czekaj 1 s”.
W te sposób napisałem program, który ciągle zapala i gasi lampkę L co sekunda.
Teraz czas na trudniejszy program. Chciałbym, podłączyć do Arduino przekaźnik sterujący światłem. Po pierwszym wciśnięciu na klawiaturze spacji przekaźnik się włączy a po drugim wciśnięciu spacji się wyłączy.
Do pinu cyfrowego 10 podłączyłem przekaźnik Nettigo.
Program wyszedł mi taki:
W programie potrzebna jest zmienna, która będzie pamiętała czy wciśniecie ostatnio spacji włączało, czy wyłączało przekaźnik.
Zmienną utworzyłem w sekcji “Zmienne” i nazwałem “czy było włączone”. Jeżeli ma ona wartość 0 to znaczy, że przekaźnik trzeba włączyć i ustawić zmienną na 1. Jeśli ma wartość 1 to przekaźnik trzeba wyłączyć i ustawić zmienną na 0.
Pierwszy klocek w programie to “kiedy klawisz spacja to” z sekcji “Kontrola”. Można w nim ustawić reakcję na różne klawisze.
W klocku “jeżeli” jest zielony klocek “=” z sekcji “Wyrażenia”. Porównuje on wartość zmiennej z liczbą 0.
Nauka takiego programowania jest bardzo prosta. Teraz możesz łatwo stworzyć własne sterowane programem urządzenia oraz łatwo i przyjemnie nauczyć się programować.
Arduino UNO kupisz w sklepie Nettigo.
sprae