1 ===================================
3 ===================================
10 Per chi ha gia' dimestichezza con la programmazione e gli elementi base / passivi di elettronica, e' il passo successivo al corso base in un percorso che tramite l'approfondimento delle tecniche di programmazione e componenti sofisticati permettera' di affrontare progetti di robotica, domotica, IoT e tutto quanto del mondo fisico possa essere reso intelligente con un microcontroller.
12 Dopo aver utilizzato varie librerie dell'ecosistema Arduino per gestire sensori e attuatori ci si cimentera' nella programmazione ad oggetti e multitasking. Si comincera' ad utilizzare transistor e sensori / attuatori sofisticati con potenze superiori, utilizzando connessioni seriali cablate e radio.
15 Durata 20 ore in lezioni da 2 ore, 16 partecipanti.
18 .. contents:: Indice degli argomenti
25 L'ordine degli elementi puo' variare in base alle esigenze emerse nei corsi precedenti.
30 * Programmazione ad oggetti: Blink, PWM e Loop con Millis() . Refactoring
32 * Varaie modalita' di connessioni tra schede.
33 * Strumenti di condivisione codice Git
34 * Linguaggi di marcatura leggeri (RST - Markdown) e gestione della documentazione
35 * Editors Avanzati:usare editor esterni con la toolchain dell'Arduino IDE. Sublime Text, Eclipse
36 * Imparare a gestire i propri archivi con GIT.
37 * Condivisione: utilizzo di un Wiki e Forum di discussione
43 * Transistor: PNP e NPN
44 * Costruire Hbridge per pilotare motore, usare un integrato L293D
46 * Mosfet / transistor : pilotare LED strip a 12v / LED alta luminosita'
48 * Eventuale: decodifica input PWM RadioRX
49 * Interrupts: introduzione
50 * Comunicazione a infrarossi
51 * comunicazione radio seriale
52 * Sensori a ultrasuoni
54 * Sensore di temperatura e igrometro
55 * Altri eventuali sensori ed attuatori
56 * Display LCD a 8 pin (eventuale in I2C)
62 * Arduino Core e Wiring su microcontroller AVR ATtiny85
63 * Arduino Mini Pro e FTDI.
64 * Ambienti di sviluppo avanzati: Sublime Text, Eclipse, Vim
65 * compilazione manuale con Makefiles.
66 * Utilizzare Librerie preconfezionate, gestirle con GIT.
67 * Scratch for Arduino: didattica per i piu' piccoli.
71 =======================
72 Tutti i materiali necessari al corso saranno disponibili nel laboratorio durante le lezioni.
74 Per gli studenti che vogliono esercitarsi a casa sono state predisposte le liste dei componenti e materiali utili ai corsi `Kit base da 5euro <http://lab.piffa.net/kit5.html>`_ e un `Kit da 40euro <http://lab.piffa.net/kit_full.html>`_ . Questi kit vanno prenotati con un mese di anticipo come **acquisto di gruppo**.
76 Per quanto riguarda il software e' stato preparato un sistema operativo Gnu/Linux in versione Live / installabile sul proprio computer: http://www.piffa.net/live/ con tutti i software e gli esercizi preconfigurati.