AMiW Arduino narzędzia

Slides:



Advertisements
Podobne prezentacje
20041 Projektowanie dynamicznych witryn internetowych Paweł Górczyński ASP 3.0.
Advertisements

Co to jest BIOS ? Piotr Pierzchalski kl. III B.
Role w zespole projektowym
Tematyka kursu z informatyki dzień 3
Sieci komputerowe.
1 Linux jako system wielozadaniowy i wielodostępny.
Projektowanie Aplikacji Komputerowych
Politechnika Gdańska WYDZIAŁ ELEKTRONIKI TELEKOMUNIKACJI I INFORMATYKI
Platforma .Net i Vs.Net.
Wykład nr 1: Wprowadzenie. Pojęcia podstawowe
Systemy operacyjne Bibliografia:
Koordynatorzy: Krzysztof BIKONIS Marek MOSZYŃSKI
Artur Szmigiel Paweł Zarębski Kl. III i
Budowa Komputera.
Działalność Biblioteki Szkolnej przy Publicznej Szkole Podstawowej
Interaktywny serwer WWW zrealizowany na platformie mikrokontrolera
SZPIF – Harmonogram, Opis narzędzi, Schemat bazy danych
Program Skype  Aleksandra Sikora, kl.III gim..
C# Windows Forms Zastosowania Informatyki Wykład 2
Podstawy programowania II Wykład 2: Biblioteka stdio.h Zachodniopomorska Szkoła Biznesu.
Rozwój aplikacji przy wykorzystaniu ASP.NET
Rozwój aplikacji. To zestaw narzędzi do budowania i optymalizacji złożonych aplikacji opartych na przeglądarce. To zestaw narzędzi do budowania i optymalizacji.
Instytut Tele- i Radiotechniczny WARSZAWA
Architektura Systemu Źródło:
Telefon przyjazny programistom JAVA – szybkie wprowadzenie
Interfejsy urządzeń peryferyjnych
Wykonał Piotr Jakubowski 1ET
Opracował : Przemysław Drzymała
Budowa systemu komputerowego
Prezentacja Adrian Pyza 4i.
Urządzenia wewnętrzne komputera
Autor: Justyna Radomska
System operacyjny i jego usługi
Sieciowe Systemy Operacyjne
Programowanie obiektowe – zastosowanie języka Java SE
Maszyna wirtualna ang. virtual machine, VM.
Tytuł:Poradnik do programu PowerPoint?
Sieci komputerowe.
SPECJALNOŚĆ: Oprogramowanie Systemowe
Michał Gmerek, Krzysztof Słodowicz
Urządzenia 1 mld smartfonów do 2016 r., 350 mln z nich jest używanych w pracy Ludzie 82 % populacji online korzysta z sieci społecznościowych Chmura.
Podstawy programowania
Seminarium Dyplomowe Jacek Fohs.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Temat 2: Instalacja Apache, PHP i bazy danych MySQL.
Temat 1: Ogólne cechy języka PHP
System operacyjny Windows
Beata Sanakiewicz. Spis treści  Łączenie dokumentów Łączenie dokumentów  Mechanizm OLE Mechanizm OLE  Obiekt osadzony Obiekt osadzony  Obiekt połączony.
Podstawy języka skryptów
Dokumentacja obsługi programów Kamil Smużyński Piotr Kościński.
Programowanie w językach skryptowych
Sposoby zdalnego sterowania pulpitem
Platforma .Net.
Programy pocztowe _________________________________________________________________________________________________________________ [ Przedmiot: Projektowanie.
Struktura systemu operacyjnego
Temat 1 Pojęcie systemu operacyjnego Opracował: mgr Marek Kwiatkowski.
System Operacyjny Windows Przedstawia Mateusz Bałdyga kl. 1 „D”
Temat: Porównanie technologii php,c# oraz javascript na przykładzie webaplikacji typu społecznościowy agregator treści Autor: Wojciech Ślawski.
T ESTY JEDNOSTKOWE W C# Alicja Majka, A GENDA Wprowadzenie do środowiska Czym są testy jednostkowe i po co je stosować? XUnit, NUnit Pokrycie.
Testy jednostkowe. „Test jednostkowy (unit test) to fragment kodu, który sprawdza inny fragment kodu”
InMoST Wielkopolska sieć współpracy w zakresie innowacyjnych metod wytwarzania oprogramowania Termin realizacji: – Innowacyjne metody.
Wyższa Szkoła Informatyki i Zarządzania
Systemy operacyjne W projekcie brali udział Rabiniak Mateusz, Marek Mycek Damian Kostecki, Piotr Dojlido.
SunFollower Projekt zespołowy Prowadzący: Dr inż. Marek Woda Wykonał: Bartosz Przybyłek Data prezentacji:
Kompilator eBook w technologii Java Dyplomant: Maciej Bagrowski Promotor: dr inż. Walery Susłow Politechnika Koszalińska Wydział Elektroniki i Informatyki.
System lokalizacji GPS
Protokoły używane w sieciach LAN Funkcje sieciowego systemu komputerowego Wykład 5.
Zapis prezentacji:

AMiW Arduino narzędzia Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Arduino - narzędzia Dokumentowanie projektu Freemind http://freemind.sourceforge.net Ułatwia dokumentowanie pomysłów, analizowanie zależności między nimi, pozwala na ich ocenę i selekcję Fritzing http://fritzing.org/ Pozwala dokumentować prototypy, dzielić się nimi, tworzyć schematy poglądowe, schematy ideowe i płytki drukowane projektowanych aplikacji – zawiera wsparcie dla Arduino Inkscape http://inkscape.org Prosty w użyciu program do tworzenia grafiki wektorowej. Mimo że oprogramowanie Inkscape skierowany jest głównie do grafików, dzięki precyzyjnym narzędziom doskonale nadaje się do szkicowania pomysłów związanych z projektami 01-2014 Zygmunt Kubiak

Arduino - narzędzia Fritzing http://fritzing.org/download/ 01-2014 Zygmunt Kubiak

Arduino - narzędzia Fritzing http://fritzing.org/download/ 01-2014 Zygmunt Kubiak

Arduino - narzędzia Fritzing http://fritzing.org/download/ 01-2014 Zygmunt Kubiak

Arduino - narzędzia Fritzing http://fritzing.org/download/ 01-2014 Zygmunt Kubiak

Arduino - narzędzia Fritzing http://fritzing.org/download/ 01-2014 Zygmunt Kubiak

Arduino - narzędzia Firmata Uniwersalny protokół komunikacyjny, umożliwiający sterowanie mikrokontrolerami z poziomu komputera – może sterować pracą Arduino Może sterować takimi urządzeniami jak silniki, serwomechanizmy czy wyświetlacze http://firmata.org/wiki/ 01-2014 Zygmunt Kubiak

Arduino - narzędzia Firmata Program – Firmata_test http://firmata.org/wiki/ http://www.pjrc.com/teensy/firmata_test/firmata_test/firmata_test.exe http://firmata.org/wiki/Examples https://github.com/firmata/arduino 01-2014 Zygmunt Kubiak

Arduino - narzędzia Firmata Najważniejsze funkcje biblioteki Firmata http://firmata.org/wiki/ 01-2014 Zygmunt Kubiak

Arduino - narzędzia Firmata Firmata to projekt zainicjowany przez Hansa Christopha Steinera Jest prostym systemem operacyjnym dla Arduino, kontrolowanym za pośrednictwem transmisji szeregowej Firmata jest ładowany do Arduino, a następnie z pomocą innego języka można kontrolować stan modułu Arduino i połączonych z nim układów, bez aktualizacji kodu Oprogramowanie Firmata jest wykorzystywane w środowiskach Processing, openFrameworks, Cinder, Python, Ruby, Pd i innych platformach programistycznych http://firmata.org/wiki/ 01-2014 Zygmunt Kubiak

Arduino - narzędzia Processing Processing - multimedialne środowisko programowania, oparte na języku Java, stworzone dla projektantów, artystów i innych osób, które bez zagłębiania się w szczegóły dotyczące programowania chcą tworzyć grafikę, animacje i interakcje. Można używać klas i metod z Javy. Działa w systemach Windows, Linux i Mac OS X Niewielka ilość Processing umożliwia realizację złożonych zadań, jak połączenie z zewnętrznym urządzeniem przez port szeregowy lub sterowanie kamerą Istnieje również Processing dla urządzeń z Androidem i Processing dla języka JavaScript www.processing.org 01-2014 Zygmunt Kubiak

Arduino - narzędzia Processing www.processing.org 01-2014 Zygmunt Kubiak

Arduino - narzędzia Techniki testowania kodu Metodyka wytwarzania sterowanego testowami (ang. Test-Driven Development) Artykuł : Ian Dees, Testing Arduino Code, PragPub, 2011 (https://pragprog.com/magazines/2011- 04/testing-arduino-code) Ben Rady i Rod Coffin, Continuous Testing: with Ruby, Rails, and JavaScript, The Pragmatic Bookshelf, Raleigh i Dallas, 2011 Np. podczas pisania skryptów języka Python warto przygotować testy jednostkowe (np. przy użyciu narzędzia py.test) Dla Ruby i Rails warto rozważyć użycie Rspec (David Chelimsky, Dave Astels, Zach Dennis, Aslak Hellesøy, Bryan Helmkamp i Dan North, The RSpec Book,The Pragmatic Bookshelf, Raleigh i Dallas, 2009 01-2014 Zygmunt Kubiak

Arduino - narzędzia Techniki testowania kodu Dla Arduino: https://pragprog.com/magazines/2011-04/testing-arduino- code https://code.google.com/p/arduinounit/ https://github.com/mmurdoch/arduinounit https://code.google.com/p/arduino/wiki/ArduinoTestSuite http://puredata.wikispaces.com/ Brak oficjalnego emulatora dla Arduino, m.in. dla tego, że sprzętowa platforma Arduino jest tania W systemie Windows są dostępne emulatory: Virtual Breadboard (http://www.virtualbreadboard.net), Emulare (http://emulare.sourceforge.net/) 01-2014 Zygmunt Kubiak

Arduino - narzędzia Biblioteka ArduinoTestSuite Projektowanie sterowane testami (ang. Test-Driven Development, TDD) W metodzie TDD projekt programistyczny dzielony jest na niewielkie fragmenty, dla których przygotowywane są testy sprawdzające działanie każdej funkcji. Programowanie rozpoczyna się dopiero po przygotowaniu testów. Biblioteka ArduinoTestSuite stała się kluczowym narzędziem projektowania dla Arduino. ArduinoTestSuite udostępnia standardowe metody i funkcje, które można wykorzystać do przetestowania szkicu przed załadowaniem go do Arduino – co pozwala uniknąć ewentualnych uszkodzeń zewnętrznych urzadzeń. Biblioteka jest ciągle rozwijana 01-2014 Zygmunt Kubiak

Arduino - narzędzia Biblioteka ArduinoTestSuite Aktualnie dostępne testy ATS_begin Inicjuje proces testowania ATS_end Kończy proces testowania ATS_PrintTestStatus Wydruk statusu testu ATS_Test_DigitalPin Testuje dany port wyjściowy ATS_Test_PWM Testuje wyjście z generatora PWM ATS_Test_AnalogInput Testuje wejście analogowe ATS_Test_EEPROM Testuje obsługę pamięci EEPROM ATS_Test_Serial_LoopBack Testuje ruch wchodzący i wychodzący na portach szeregowych ATS_GetFreeMemory Zwraca ilość wolnej pamięci dostępnej dla Arduino 01-2014 Zygmunt Kubiak

Arduino - narzędzia Platformy W przypadku realizacji rozwiązań typu Internet przedmiotów (ang. Internet of Things) pojawia się problem komunikacji z tymi urządzeniami – operatorzy Internetu czasem blokują porty wychodzące aby uniemożliwić instalowanie serwerów dedykowanych na popularnych portach, jak FTP, HTTP (i HTTPS) czy SMTP Warto zwrócic uwagę na platformy dostępne za pośrednictwem prostych interfejsów API usług sieciowych np.: Pachube http://www.pachube.com, Exosite http://www.exosite.com, Yaler http://www.yaler.org. A także Xively, 01-2014 Zygmunt Kubiak

Arduino - narzędzia Yaler 01-2014 Zygmunt Kubiak

Arduino - narzędzia Android Ważny system m.in. dla systemów wbudowanych Pakiet Android Open Accessory Kit – ADK (2011 r.), umożliwia obsługę takich funkcji jak aparat, GPS, Bluetooth, WiFi (http://developer.android.com/guide/topics/usb/adk.html) Wielu producentów elektroniki wprowadza na rynek urządzenia zgodne z ADK Projekt Google: Android@Home – propagowanie Android jako bazowej technologii dla inteligentnych domów Android SDK – zestaw narzędzi (SDK, ang. Software Development Kit) dla programistów przeznaczony do tworzenia aplikacji na platformę Android (http://developer.android.com/sdk) 01-2014 Zygmunt Kubiak

Arduino - narzędzia Android Narzędzia ADK składają się z dwóch części: protokołu oraz sprzętu dla wybranego urządzenia – pojawiły się płyty Arduino (zgodne z ADK) wykorzystujące układ ATMega 2560 Istotą oprogramowania ADK jest możliwość zaprogramowania urządzenia z interfejsem USB w taki sposób, że samo nawiązuje połączenie z chwilą podłączenia do komputera. W płycie Arduino Mega efekt ten osiąga się dzięki zastosowaniu procesora USB z interfejsem SPI. Dostępne są nakładki umożliwiające dodawanie nowych funkcjonalności ADK do innych płyt Arduino, np. UNO Urządzenie, które ma współpracować z ADK (np.tablet) musi być wyposażone w wersję 2.3.4 systemu Android lub nowszą, lecz nie stanowi to jeszcze gwarancji powodzenia. Aby ostatecznie potwierdzić zgodność, należy wyszukać na stronie Google Play ADK demo kit. 01-2014 Zygmunt Kubiak

Arduino - narzędzia Android Brak wyników wyszukiwania oznacza, że urządzenie nie ma zainstalowanych niezbędnych bibliotek. Przed rozpoczęciem programowania należy skonfigurować środowiska Android i Arduino. W środowisku Arduino potrzebna jest jeszcze biblioteka obsługująca protokół ADK. Jest ona dostępna na stronie Arduino labs (plik http://labs.arduino.cc/uploads/ADK/GettingStarted/Ard uinoADK-beta-001.zip). 01-2014 Zygmunt Kubiak

Arduino - narzędzia Android W spakowanym pliku ZIP znajdują się pliki aplikacji Processing i biblioteki Arduino. Aplikacje dla systemu Android można tworzyć w środowiskach Processing (http://processing.org) lub Eclipse (http://eclipse.org). Programowanie w środowisku Processing jest podobne do Arduino. Środowisko Eclipse oferuje więcej funkcjonalności. Podczas tworzenia kodu dla systemu Android w środowisku Eclipse musisz pamiętać o dwóch różnych stylach programowania: Java i XML. Java jest głównym językiem programowania i podstawą każdej aplikacji Android. Natomiast kod XML służy do określenia wyglądu aplikacji, wyświetlanych obiektów i tekstu. 01-2014 Zygmunt Kubiak

Arduino - narzędzia Android Korzystanie z ADK Arduino jest podobne do użycia bibliotek do transmisji szeregowej. Biblioteka dodana do środowiska Arduino IDE jest oparta na bibliotekach Circuit@Home i w odróżnieniu od innych dostępnych bibliotek oferuje łatwy sposób deklarowania i inicjowania połączenia z urządzeniem. 01-2014 Zygmunt Kubiak

Arduino - narzędzia openFrameworks Oprogramowanie openFrameworks jest zbiorem bibliotek języka C++, przeznaczonych do prostej obsługi audio, wideo i grafiki Biblioteki zawierają mechanizmy do łatwego łączenia komputera z zewnętrznymi urządzeniami i modułami Arduino Biblioteki umożliwiają rozwijanie pomysłu bez konieczności programowania na najniższym poziomie . Dostępny jest kod źródłowy, który może być używany jako wzorzec do dalszej rozbudowy. Zastosowanie bibliotek openFrameworks i Arduino pomaga w budowaniu środowiska testowego dla sprzętu i oprogramowania Wada – należy zdawać sobie sprawę, że tworzone w ten sposób rozwiązania nie oferują produkcyjnej jakości i nie są na tyle niezawodne i zoptymalizowane, aby mogły być używane masowo. www.openframeworks.cc 01-2014 Zygmunt Kubiak

Inne narzędzia Uber Home Automation w/Arduino & Pi http://www.instructables.com/id/Uber-Home-Automation/ 01-2014 Zygmunt Kubiak

Inne narzędzia openHAB Otwarte oprogramowanie dla automatyzacji domu Pracuje w Windows, MacOS Xlub Linux z Java 1.7 lub nowsze Współpracuje z platformami wbudowanymi:  Raspberry Pi, BeagleBone Black, UDOO, Cubietruck 01-2014 Zygmunt Kubiak

Inne narzędzia openHAB Otwarte oprogramowanie dla automatyzacji domu Pracuje w Windows, MacOS Xlub Linux z Java 1.7 lub nowsze Współpracuje z platformami wbudowanymi:  Raspberry Pi, BeagleBone Black, UDOO, Cubietruck 01-2014 Zygmunt Kubiak

Inne narzędzia openHAB Komunikacja w openHAB 01-2014 Zygmunt Kubiak

Inne narzędzia SmartHome Otwarte oprogramowanie dla automatyzacji domu http://www.eclipse.org/smarthome/ 01-2014 Zygmunt Kubiak

Arduino - narzędzia Literatura Riley M.: Inteligentny dom. Automatyzacja mieszkania za pomocą platformy Arduino, systemu Android i zwykłego komputera, Helion, 2013. Igoe T.: Spraw, by rzeczy przemówiły. Programowanie urządzeń elektronicznych z wykorzystaniem Arduino, Helion, 2013. Anderson R., Cervo D.: Arduino dla zaawansowanych, Helion, 2014. Evans M., Noble J., Hochenbaum J.: Arduino w akcji, Helion, 2014. 01-2014 Zygmunt Kubiak

Arduino - narzędzia Książki dotyczące Arduino aktualnie (10.2014) dostępne w j.polskim Riley M.: Inteligentny dom. Automatyzacja mieszkania za pomocą platformy Arduino, systemu Android i zwykłego komputera, Helion, 2013. Igoe T.: Spraw, by rzeczy przemówiły. Programowanie urządzeń elektronicznych z wykorzystaniem Arduino, Helion, 2013. Anderson R., Cervo D.: Arduino dla zaawansowanych, Helion, 2014. Evans M., Noble J., Hochenbaum J.: Arduino w akcji, Helion, 2014. Boxall J.: Arduino. 65 praktycznych projektów, Helion, 2013. Banzi M.: Wprowadzenie do Arduino, Helion, 2014. 01-2014 Zygmunt Kubiak

Arduino - narzędzia Książki dotyczące Arduino aktualnie (10.2014) dostępne w j.polskim, cd. Gertz E., Di Justo P.: Monitorowanie otoczenia z Arduino, Helion, 2014. Monk S.: Arduino dla początkujących. Podstawy i szkice, 2014. Monk S.: Arduino i Android. Niesamowite projekty. Szalony geniusz, Helion, 2014. Jon L.: Arduino i projekty LEGO. Zadziwiające projekty LEGO sterowane przez Arduino, Helion, 2013. Westerfield M.: Projekty elektroniczne na iPhone i iPad. Niekonwencjonalne gadżety z technologią Arduino i techBASIC, Helion, 2014. Monk S.: Zabawy z elektroniką. Ilustrowany przewodnik dla wynalazców i pasjonatów, Helion, 2014 01-2014 Zygmunt Kubiak

Dziękuję Zygmunt Kubiak 09-2006