O autorovi 11 O knize 11 Co v knize najdete? 12 Typografické konvence 13 Doplňující informace 14

Podobné dokumenty
Obsah. O autorovi 11 Předmluva 13 Zpětná vazba od čtenářů 14 Errata 14

ČÁST 1. Základy 32bitového programování ve Windows

Arduino. Vyšlo také v tištěné verzi. Objednat můžete na

Témata profilové maturitní zkoušky

Mikrokontroléry. Doplňující text pro POS K. D. 2001

Profilová část maturitní zkoušky 2017/2018

Real Time programování v LabView. Ing. Martin Bušek, Ph.D.

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ

Profilová část maturitní zkoušky 2013/2014

Arduino Martin Friedl

Obsah. Kapitola 1. Předmluva 11 O této knize 13 Konvence...13

Úvod do mobilní robotiky AIL028

Cílem dnešní lekce je obohatit náš dosavadní systém a připravit se na připojení do cloudu

Témata profilové maturitní zkoušky

Maturitní témata - PRT 4M

Vestavné systémy BI-VES Přednáška 10

Integrovaná střední škola, Sokolnice 496

Obsah ZÁKLADNÍ DESKA. O autorech 11 Úvod 13

Softwarové komponenty a Internet

Obsah. Předmluva 13 Zpětná vazba od čtenářů 14 Zdrojové kódy ke knize 15 Errata 15

Informační technologie. Název oboru: Školní rok: jarní i podzimní zkušební období 2017/2018

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Inteligentní řízení strojů s portfoliem u-mation Řešení pro automatizaci a digitalizaci Let s connect. Automatizace a digitalizace

Soft-PLC systémy ICP DAS se softwarem ISaGRAF

VISUAL BASIC. Přehled témat

Návod na stavbu. K3NG open source Arduino CW keyer s podporou WinKey. edice v. 1.0 říjen 2012 od OK1HRA dostupné na

Internet věcí do škol!

Vývojové kity Mega48,

C2115 Praktický úvod do superpočítání

Nástroje na vývoj aplikací pro ios Trocha motivace na úvod Co budete potřebovat Co když nemáte k dispozici počítač s macos? Vývojové prostředí Xcode

Crouzet Micro-PLC Millenium 3 Smart

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320 M A T U R I T N Í T É M A T A P Ř E D M Ě T U

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Témata profilové maturitní zkoušky

Programovatelné automaty SIMATIC S7 a S5

Vzdělávací obsah předmětu

Vestavné počítače PAC

provést diagnostiku PLC Klíčová slova: SoMachine, PLC, diagnostika, automatická

TECHNICKÁ DOKUMENTACE TOUCHBOX

Vstupní požadavky, doporučení a metodické pokyny

Profilová část maturitní zkoušky 2015/2016

POČÍTAČOVÉ ŘÍZENÍ TECHNOLOGICKÝCH PROCESŮ

MPASM a IDE pro vývoj aplikací MCU (Microchip)

MSA PLUS Elektrosvařovací jednotky

Profilová část maturitní zkoušky 2014/2015

FILIP SCHWANK. Katedra měření, listopad 2017

Aplikace Embedded systémů v Mechatronice. Michal Bastl A2/713a

POČÍTAČOVÉ ŘÍZENÍ TECHNOLOGICKÝCH PROCESŮ

Konfigurace zařízení - Střední průmyslová škola Edvarda Beneše a Obchodní akademie Břeclav

Crouzet em4. Products Elektrické stroje Automatizační moduly

Java/QE Akademie - Osnova

IPZ laboratoře. Analýza komunikace na sběrnici USB L305. Cvičící: Straka Martin, Šimek Václav, Kaštil Jan. Cvičení 2

Revize FW jednotek RTU7

Převodník Ethernet ARINC 429

Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13

OVLÁDACÍ A MONITOROVACÍ SYSTÉM ID 6.2 typ

Předmětem nabídky musí být nová a nepoužitá technika. Celková cena musí být včetně ceny za dopravu do místa plnění zakázky.

Projekt BROB. Základy robotiky. Téma: Digitální časomíra. Vedoucí projektu: Tomáš Jílek

MSA PLUS Elektrosvařovací jednotky

Opakování programování

Osobní počítač. Zpracoval: ict Aktualizace:

SIMATIC S IT. Micro Automation. Promoters Meeting October Představení CP IT SPIDER CONTROL TELESERVIS. TESTOVACÍ server.

New Automation Technology. Beckhoff I/O. Průmyslová PC. Beckhoff Image 1

ŠVP Gymnázium Ostrava-Zábřeh Úvod do programování

Časový harmonogram MZ 2016/2017 pro SPŠEI

Matematika v programovacích

Vzdělávací oblast: Informatika a informační a komunikační technologie Vzdělávací obor: Programování. Předmět: Programování

TGZ. 2-osé digitální servozesilovače

Opakování k maturitní zkoušce z informatických předmětů

VYUŽITÍ PYTHONU PRO REALTIMOVÉ ŘÍZENÍ PERIFERIÍ

TGZ. 2-osé digitální servozesilovače

DSE6120 MKII OVLÁDACÍ PANELY PRO AUTOMATICKÝ START

TECHNICKÁ UNIVERZITA V LIBERCI Studentská 1402/ Liberec 1

Řídící systémy hydraulických procesů. Cíl: seznámení s možnostmi řízení, regulace a vizualizace procesu.

Maturitní otázky z předmětu technické vybavení

Obsah. Úvod 11 Zpětná vazba od čtenářů 13 Errata 14 Poznámka ke kódům 14

Controlweb. Úvod. Specifikace systému

Institut teoretické informatiky (ITI) na FI MU

Elektronická stavebnice: Deska s jednočipovým počítačem

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

Obsah. O autorech 9 Earle Castledine 9 Myles Eftos 9 Max Wheeler 9 Odborný korektor 10. Předmluva 11 Komu je kniha určena 12 Co se v knize dočtete 12

PŘEHLED SENZORIKA AUTOMATIZACE

Raspberry PI: Obr. 1 Raspberry PI

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 TECHNICKÉ VYBAVENÍ POČÍTAČŮ

Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.

POČÍTAČOVÉ ŘÍZENÍ TECHNOLOGICKÝCH PROCESŮ

Střední průmyslová škola elektrotechnická Praha 10, V Úžlabině 320

Vzdělávací oblast: Informatika a informační a komunikační technologie Vzdělávací obor: Programování Předmět: Programování

Semestrální práce z předmětu Speciální číslicové systémy X31SCS

Využití systému Dynamips a jeho nástaveb pro experimenty se síťovými technologiemi Petr Grygárek

Rozhraní mikrořadiče, SPI, IIC bus,..

TEMPO průmyslový panelový počítač

Úvod do mobilní robotiky NAIL028

Vývojový kit osazený procesorem ARM - Cookie

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY

Témata profilové maturitní zkoušky

) informace o stavu řízené veličiny (předávaná řídícímu systému) - nahrazování člověka při řízení Příklad řízení CNC obráběcího stroje

Hotelová škola, Obchodní akademie a Střední průmyslová škola Teplice, Benešovo náměstí 1, p.o. III/2 - Inovace a zkvalitnění výuky prostřednictvím ICT

Transkript:

O autorovi 11 O knize 11 Co v knize najdete? 12 Typografické konvence 13 Doplňující informace 14 KAPITOLA 1 Seznamte se, Arduino 15 Motivace 15 Arduino 15 Historie Arduina Licenční podmínky Arduina 18 Iniciativa Open-source 18 Arduino - ano nebo ne? 19 Proč ano... 19 Proč ne... 20 21 Produktová řada 21 Alternativní řešení 23 Emulátor Arduina 23 CodeBlocks Arduino IDE 23 Simuino 24 Autodesk 123D circuits 24 VBB4Arduino 25 26 Datasheety 26 Komunity a tutoriály 27 Účast v komunitách 30 Komunikace 31 Hacker 32 Základní předpoklady 32 Potřebné znalosti 34 35 Hardware hacking a reverzní inženýrství 35 Sběr informací 36 Fyzická inspekce 36 Od krytová ní zařízení 36 Ovládací mechanizmus 37 Identifikace součástek 38 Výměna komponent 38 Debuggování 38 VO 00 3

м и н м м м п и м и м а и а н н п и м а н м тн а м а а в в в ю тш ^^^^^ш Tvorba softwaru Psaní poznámek Arduino a reverzní inženýrství Extrakce zdrojového kódu z Arduina Konverze souboru HEX do původního kódu Vývoj řešení - technický pohled 1. Sběr požadavků 2. Architektura systému 3. Blokový diagram 4. Realizace zapojení 5. Test-driven development 6. Testování a ladění Vývoj řešení - pohled byznysu KAPITOLA 2 Software Motivace Vývojové prostředí (IDE) Arduino Software IDE Visual Studio Community Atmel Studio Arduino plugin - Visual Micro CodeBender PlatformlO IDE Arduino IDE Instalace vývojového prostředí Prostředí Arduino IDE První spuštění Zpracování a běh kódu Soubory zdrojového kódu Kompilace kódu Nahrání kódu Běh kódu Konvence kódu Názvosloví Komentáře Formátování Programování Standardy programování Kategorie: Jazyk Kategorie: Předvídatelné spuštění Kategorie: Defenzivní programování Kategorie: Čistota kódu 39 39 39 40 40 41 41 42 43 43 45 45 47 47 49 49 50 50 51 51 52 53 54 54 55 55 61 67 69 69 70 72 74 74 74 75 76 77 78 78 78 79 79 80 81 82 4

Pseudokód 82 Jazyk pseudokódu 82 Rozdělení pseudokódu 83 Struktura pseudokódu 83 Klíčová slova 84 84 Programovací vzory 84 Imperativní programování 84 Objektově orientované programování 86 Funkcionální programování 89 Jiné typy programovacích vzorů 93 94 Program (skica, sketch) 94 Globální definice 94 První program 95 96 Verifikace a nahrání kódu 96 Datové typy 97 Konverze datového typu 100 101 Proměnné 101 Kvalifikace proměnné 102 Volatile 102 Const 103 Vstupy a výstupy 103 pinmodeo 103 digitalwriteq 105 digitaireado 106 analogreferenceq 106 analogreadq 106 analogwriteq 107 analogreadresolutionq, analogwriteresolutionq 108 tone() 108 notoneq 108 shiftout(),shiftln() 108 pulselnq 109 Serial.printlnQ 109 Funkce 110 Testy 111 Podmínka if 111 Podmínka if...else 112 Cykly 112 Cyklus for 113 Cyklus while 114 Cyklus do...while 115 116 Matematické operace 117 Ukazatel (Pointer) 120 122 5

Pole Paměť Regulární výrazy Řídicí příkazy Knihovny Vlastní knihovna Grafika OpenFrameworks Processing PureData Optimalizace kódu Datový typ Globální a lokální proměnné Spojení smyček Využití cyklů IF-ELSE vs. SWITCH-CASE Tipy a triky 1. Začít v malém a postupně rozšiřovat 2. Měnit jen jednu věc současně 3. Včasná příprava na ladění 4. Testování nového kódu 5. Rozumět upravovanému kódu 6. Experimentování 7. Zaseknutí v problému 8. Zmenšení programu 9. Zkrácený zápis funkcí Hardwarové tipy Diagnostika a ladění Legování Debuggování Testy embedded zařízení Arduino a unit testy Test přihlašování Test komunikace Arduino - PC KAPITOLA 3 Hardw are Motivace Sběrnice SPI Základní specifikace Programování SPI 122 124 126 127 129 129 130 131 134 134 135 135 139 140 141 141 142 142 143 143 147 149 149 150 152 153 154 155 157 157 157 157 159 160 6

Sběrnice I2C 160 Základní specifikace 160 Programování I2C 161 I2C a Arduino 161 I2C skener adres 162 163 Vstupy a výstupy 163 DDRx registr 164 PORTx registr 164 PINx registr 165 I/O piny a Arduino 165 166 Asynchronní I/O 166 Multitasking - RTOS 167 RTOS a Arduino 167 Semafory 168 Arduino a semafor 169 171 Časovače - miliso 171 DelayQ vs. MilisO 171 173 Přerušení 173 ISR rutina 174 Volání a maskování přerušení 176 Proměnné Volatile 177 178 Paměti mikrokontrolérů AVR 178 Progmem 179 F() makro 180 181 Watchdog 181 182 Doporučení pro návrh 182 Watchdog a Arduino 182 Softwa rový resta rt 184 184 Bootloader 184 Programátor 184 Manuální instalace bootloaderu 185 Paměťové registry 186 Šetření energie 188 Způsoby šetření energie 189 193 Napájení 193 Neregulovaný zdroj 193 Regulovaný zdroj 194 Baterie 194 7

KAPITOLA 4 Periferie Motivace Bezpečnost práce Základní zásady Elektrostatické výboje (ESD) Zobrazovací jednotky LCD displej OLED displej Numerická klávesnice Klávesnice a Arduino Snímače Rozdělení snímačů Arduino a snímače Pohony Regulace otáček H-můstek RFID RFID a Arduino GPS modul Formát dat GPS a Arduino Gyroskop a akcelerometr Arduino a gyroskop Ethernet Ethernet a Arduino Wi-Fi Wi-Fi a Arduino Bluetooth Bluetooth a Arduino GSM komunikace GSM a Arduino 197 197 198 198 200 201 201 202 205 206 207 207 208 209 209 209 210 211 211 212 214 215 216 216 217 218 218 218 221 223 223 223 225 225 225 228 228 228 229 231 231 231 232 234 234 234 236 8

238 Spínání síťového napětí 238 Technický popis 239 Síťové napětí a Arduino 239 242 Real-time clock (RTC) 242 RTC a Arduino 242 243 Arduino callback 243 243 Callback a Arduino 244 245 Záznam dat 245 SD karta a Arduino 245 Databáze a Arduino 247 248 Arduino Cluster 248 249 251 Arduino a Raspberry Pi 251 Arduino a server 254 Arduino a PowerShell 255 USB a Arduino 256 TCP a PowerShell 258 Notifikace v oznamovací oblasti 260 261 Arduino a Bash 261 TCP komunikace 261 262 Arduino a Python 263 265 Arduino a Android/Apple ios/windows Mobile 265 Android 265 Apple ios 267 Windows Mobile 268 269 Arduino a SSH 269 270 Vlastní moduly 271 Návrh a kreslení schémat 271 Realizace DPS 276 278 KAPITOLA 5 Internet of Things 279 Motivace 279 Internet of Things 279 Message Oriented Middleware (MOM) 281 9

Komunikační protokoly 283 STOMP 284 AMQP 284 MQTT 284 CoAP 286 ZeroMQ 287 REST 289 292 Broker server 292 Apollo 292 Rabbit MQ 295 Mosquitto 298 299 Přílohy 301 Otázky na pracovním pohovoru 301 Rezervovaná slova a znaky 303 Datové typy 305 Základní tabulka ASCII znaků 305 Řecká abeceda 306 Vzorce 307 Schematické značky 308 Zapojení trojúhelník-hvězda 308 Označení rezistorů 309 Síťové adaptéry 309 Volt-ampérové charakteristiky 310 Napěťové úrovně integrovaných obvodů 311 Veličiny a jednotky 312 Převod jednotek 312 Přepočet frekvence 312 Matematika 313 Slovník 319 Bibliografìe 326 Rejstřík 333 10