. Tytuł oryginału: Arduino™ + Android™ for the Evil Genius™: Control Arduino with Your Smartphone or Tablet Tłumaczenie: Andrzej Watrak Projekt okładki: Studio Gravite/Olsztyn Obarek, Pokoński, Pazdrijowski, Zaprucki ISBN: 978-83-246-8740-4 Original edition copyright © 2012 by The McGraw-Hill Companies. All rights reserved. Polish edition copyright © 2014 by HELION SA. All rights reserved. All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from the Publisher. Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną, fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje naruszenie praw autorskich niniejszej publikacji. Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli. Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne i rzetelne. Nie bierze jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich. Wydawnictwo HELION nie ponosi również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce. Materiały graficzne na okładce zostały wykorzystane za zgodą Shutterstock Images LLC. Wydawnictwo HELION ul. Kościuszki 1c, 44-100 GLIWICE tel. 32 231 22 19, 32 230 98 63 e-mail: [email protected] WWW: http://helion.pl (księgarnia internetowa, katalog książek) Pliki z przykładami omawianymi w książce można znaleźć pod adresem: ftp://ftp.helion.pl/przyklady/nparan.zip Drogi Czytelniku! Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres http://helion.pl/user/opinie/nparan_ebook Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję. Poleć książkę na Facebook.com Księgarnia internetowa Kup w wersji papierowej Lubię to! » Nasza społeczność Oceń książkę . Lindzie, miłości mojego życia . . Spis treści O autorze .......................................................................................................................................................... 7 Podziękowania ................................................................................................................................................ 7 Wprowadzenie ................................................................................................................................................ 9 CZĘŚĆ I URZĄDZENIA PERYFERYJNE ANDROID 1. Robot sterowany sygnałem Bluetooth ......................................................................................15 Budowa ........................................................................................................................................................... 15 Teoria .............................................................................................................................................................. 24 Podsumowanie .............................................................................................................................................. 26 2. Licznik Geigera ............................................................................................................................27 Otwarte akcesorium Google ........................................................................................................................ 27 Budowa ........................................................................................................................................................... 28 Teoria .............................................................................................................................................................. 38 Podsumowanie .............................................................................................................................................. 44 3. Świetlny pokaz ..............................................................................................................................45 Budowa: bazowe akcesorium Droid ........................................................................................................... 45 Wykorzystanie projektu ............................................................................................................................... 55 Teoria .............................................................................................................................................................. 56 Podsumowanie .............................................................................................................................................. 60 4. Pilot telewizyjny ...........................................................................................................................61 Budowa ........................................................................................................................................................... 61 Wykorzystanie projektu ............................................................................................................................... 65 Teoria .............................................................................................................................................................. 65 Podsumowanie .............................................................................................................................................. 66 5. Rejestrator temperatury ..............................................................................................................67 Budowa ........................................................................................................................................................... 67 Wykorzystanie projektu ............................................................................................................................... 71 Teoria .............................................................................................................................................................. 71 Podsumowanie .............................................................................................................................................. 73 6. Dalmierz ultradźwiękowy ...........................................................................................................75 Budowa ........................................................................................................................................................... 76 Wykorzystanie projektu ............................................................................................................................... 79 Teoria .............................................................................................................................................................. 80 Podsumowanie .............................................................................................................................................. 81 CZĘŚĆ II AUTOMATYKA DOMOWA 7. Sterownik automatyki domowej ................................................................................................85 Moduł interfejsu dźwiękowego ................................................................................................................... 87 Oprogramowanie Android .......................................................................................................................... 97 Dostęp przez internet .................................................................................................................................101 Teoria ............................................................................................................................................................104 Podsumowanie ............................................................................................................................................110 . 6 Arduino i Android. Niesamowite projekty. Szalony Geniusz 8. Sterowanie zasilaniem ...............................................................................................................111 Układ sterowania zasilaniem ....................................................................................................................111 Budowa modułu sterowania zasilaniem ...................................................................................................112 Dołączanie modułu do sterownika automatyki domowej .....................................................................119 Skonfiguruj swój dom ................................................................................................................................121 Teoria ............................................................................................................................................................122 Podsumowanie ............................................................................................................................................127 9. Inteligentny termostat ...............................................................................................................129 Budowa .........................................................................................................................................................129 Korzystanie z systemu ................................................................................................................................140 Teoria ............................................................................................................................................................140 Podsumowanie ............................................................................................................................................144 10. Zamek otwierany identyfikatorem RFID ...............................................................................145 Budowa .........................................................................................................................................................145 Użytkowanie systemu .................................................................................................................................155 Teoria ............................................................................................................................................................155 Podsumowanie ............................................................................................................................................161 11. Flagi sygnalizacyjne ...................................................................................................................163 Budowa .........................................................................................................................................................163 Teoria ............................................................................................................................................................168 Podsumowanie ............................................................................................................................................169 12. Wyłącznik czasowy ....................................................................................................................171 Budowa .........................................................................................................................................................171 Teoria ............................................................................................................................................................177 Podsumowanie ............................................................................................................................................181 A Podręcznik Open Accessory .....................................................................................................183 Nauka programowania w systemie Android ...........................................................................................183 Programowanie Arduino ...........................................................................................................................183 Przykład ........................................................................................................................................................183 O płycie Arduino ........................................................................................................................................184 Android ........................................................................................................................................................186 Wnioski ........................................................................................................................................................192 Skorowidz ...................................................................................................................................193 . O autorze Simon Monk posiada tytuł inżyniera cybernetyki i informatyki oraz doktora inżynierii oprogra- mowania. Od szkolnych lat jest zapalonym hobbystą elektronikiem; publikuje artykuły w czaso- pismach poświęconych amatorskiej elektronice. Jest autorem książek Raspberry Pi. Przewodnik dla programistów Pythona oraz 15 niezwykłych konstrukcji od mechaniki do elektroniki. Szalony Geniusz. Podziękowania Pragnę podziękować Lindzie za poświęcony czas i wsparcie okazane podczas pisania tej książki, a także za cierpliwość, z jaką znosiła bałagan wprowadzany w domu przez moje projekty. Chcę również podziękować moim synom, Stephenowi i Matthew Monkom, za ich zaintere- sowanie tym, co robi ich ojciec, i pomoc w pracy nad projektami. I wreszcie podziękowania dla Rogera Stewarta, Patricii Wallenburg, Mike’a McGee i wszystkich pracowników wydawnictwa McGraw-Hill, którzy znów wykonali dobrą robotę. Praca w tak wspa- niałym zespole jest przyjemnością. . 8 Arduino i Android. Niesamowite projekty. Szalony Geniusz . Wprowadzenie Ta książka zawiera opisy projektów łączących w sobie proste w użyciu płyty mikrokontrolerów (Arduino) ze światem telefonów komórkowych i tabletów Android. Książka zawiera szczegółowe instrukcje, jak wykonać projekty wykorzystujące Arduino i urzą- dzenia Android. Niektóre z nich, na przykład licznik Geigera lub dalmierz ultradźwiękowy, są w istocie elektronicznymi akcesoriami do telefonu Android. Inne projekty dotyczą systemu automatyki domowej, w tym elektrycznego zamka do drzwi i zdal- nego sterowania centralnym ogrzewaniem, dostępnego przez internet i urządzenie Android. Arduino Arduino (patrz rysunek W.1) jest małą płytą mikrokontrolera, wyposażoną w złącze USB do połą- czenia z komputerem i kilka gniazd do podłączenia zewnętrznych elementów elektronicznych, takich jak silniki, przekaźniki, czujniki oświetlenia, diody laserowe, głośniki, mikrofony itp. Układy te mogą być zasilane przez łącze USB z komputera, baterię lub zasilacz. Mogą być sterowane z kom- putera, jak również pracować niezależnie po zaprogramowaniu i odłączeniu od komputera. Projekt płyty jest otwarty. Ozna- cza to, że każdy może tworzyć płyty kompatybilne z Arduino. Dzięki konkurencji ceny płyt są niskie. Podstawowa płyta Arduino może być uzupełniona o dołączane do niej nakładki. W tej książce zostały użyte trzy nakładki: USB, umożliwiająca podłączenie do urządzenia Android, nakładka silnikowa do napędzania kół małego robota i nakładka Ether- net, zamieniająca Arduino w malutki serwer WWW. Środowisko do programowania Arduino jest proste w użyciu i do- stępne bezpłatnie dla systemów Win- dows, Mac i Linux. RYSUNEK W.1. Płyta Arduino Uno Android Android to system operacyjny dla telefonów komórkowych i tabletów stworzony przez Google. Rozwijanie oprogramowania dla systemu Android jest bezpłatne. Narzędzia do tworzenia opro- gramowania są również za darmo, a za rozpowszechnianie aplikacji nie są pobierane żadne opłaty. Aplikacje można instalować bezpośrednio na urządzeniu, bez pośrednictwa sklepu Google Play. Kod źródłowy wszystkich aplikacji Android opisanych w tej książce, na przykład pokazanej na rysunku W.2, można pobrać ze strony internetowej książki, pod adresem www.helion.pl/ksiazki/ nparan.htm. . 10 Arduino i Android. Niesamowite projekty. Szalony Geniusz Arduino i Android Arduino to przede wszystkim układ elektroniczny do łączenia ze sobą różnych urządzeń. Brakuje mu jednak interfejsu użytkownika i łącza radiowego. Android, z drugiej strony, to urządzenie z doskonałym interfejsem użytkownika, ale bez możliwości bezpośredniego łączenia z układami elektronicz- nymi. Dzięki tym dwóm urządzeniom połączonym ze sobą Szalony Geniusz może tworzyć wielkie dzieła! ANDROID OPEN ACCESSORY Standard Open Accessory został zaprezentowany na konfe- rencji programistów Google (Google IO 2011). Określa on zasady budowania akcesoriów dla urządzeń Android dołą- czanych poprzez port USB. Standard jest dostępny dla telefo- nów komórkowych i tabletów wyposażonych w system opera- cyjny Android 2.3.4 lub nowszy. Jedną z naprawdę ciekawych cech tego standardu jest możliwość współpracy z technologią Arduino. Jest to bardzo dobra wiadomość dla entuzjastów tego układu, a pięć projek- tów opisanych w tej książce (licznik Geigera, świetlny pokaz, pilot telewizyjny, rejestrator temperatury i dalmierz ultradźwię- kowy) wykorzystuje biblioteki Open Accessory. Książka wprowadza pojęcie Droid Duino Base (baza Droid Duino), oznaczające nakładkę hosta USB, na której płycie RYSUNEK W.2. Aplikacja licznika Geigera prototypowej jest umieszczony w gnieździe mikrokontroler wyjęty z Arduino. Dzięki temu płyta Arduino nie jest konieczna w każdym projekcie, sam układ jest mniejszy, a jego koszt jest niższy, rzędu kilkudziesięciu złotych. Płyta jest podstawą czte- rech projektów opisanych w tej książce i stanowi praktyczny moduł, który może być zastoso- wany w innych projektach wykorzystujących standard Open Accessory. AMARINO W niektórych sytuacjach połączenia przewodowe nie są pożądane. Na przykład w pierwszym projekcie (robot sterowany sygnałem Bluetooth) przewody mogłyby naprawdę utrudniać działa- nie robota. Można jednak wykorzystać pewną ciekawą technologię, zwaną Amarino, umożliwia- jącą zdalne sterowanie małym robotem za pomocą aplikacji uruchomionej na telefonie Android. INTERFEJS DŹWIĘKOWY Druga część książki jest poświęcona systemowi automatyki domowej, w którym w roli sterowni- ka został użyty niedrogi tablet Android komunikujący się z Arduino poprzez interfejs elektro- niczny. Tablety tego rodzaju rzadko są wyposażone w łącze Bluetooth lub funkcjonalności Open Accessory, więc interfejs przewodowy pomiędzy tabletem i Arduino wykorzystuje wyjście audio. W interfejsie została zastosowana taka sama zasada jak w komputerach z lat 80., zapisujących programy na kasetach magnetofonowych. .
Description: