X-Git-Url: http://git.piffa.net/web?a=blobdiff_plain;f=corsi%2Farduino_avanzato.rst;fp=corsi%2Farduino_avanzato.rst;h=b9ff2d6c180de630f357b634aa19e7cbc67b2577;hb=d6b7050e93febe593ddec1cd159158b1c38aad5c;hp=94da8db45dad3206d9a5e43fbbdfd385543ab088;hpb=638c428eff4a9856620ad744ffe5c0438c7aca42;p=arduino diff --git a/corsi/arduino_avanzato.rst b/corsi/arduino_avanzato.rst index 94da8db..b9ff2d6 100644 --- a/corsi/arduino_avanzato.rst +++ b/corsi/arduino_avanzato.rst @@ -5,11 +5,13 @@ Arduino Avanzato :Author: Andrea Manni :Copyright: GFDL - :Version: 0.1 + :Version: 1 -Arduino avanzato si spinge ai limiti dell'ecosistema Arduino portando le conoscenze acquisite a scalare sia su schede Arduino diverse che su hardware compatibile: dai piccoli AVR Attiny di pochi millimetri ai potenti ARM a 32bit e MIPS ottimizzati per le connessioni a internet. Gli studenti potranno utilizzare le risorse software e librerie Arduino, le piu' vaste e facili da utilizzare, su soluzioni micro dal costo inferiore a un euro fino a schede ad alte prestazioni dal costo inferiore ai 5 euro. +Arduino avanzato si spinge ai limiti dell'ecosistema Arduino portando le conoscenze acquisite a scalare sia sul schede Arduino diverse che su hardware compatibile: dai piccoli AVR ATtiny di pochi millimetri ai potenti ARM a 32bit e MIPS ottimizzati per le connessioni a internet. -Durata 21 ore in lezioni da 3 ore, 80 euro per 12 partecipanti (o 60 per 16). +Gli studenti potranno utilizzare le risorse software e librerie Arduino, le piu' vaste e facili da utilizzare, su soluzioni micro dal costo inferiore a un euro fino a schede ad alte prestazioni dal costo inferiore ai 5 euro. + +Durata 20 ore in lezioni da 2 ore, 80 euro per 12 partecipanti. .. contents:: Indice degli argomenti @@ -19,44 +21,46 @@ Durata 21 ore in lezioni da 3 ore, 80 euro per 12 partecipanti (o 60 per 16). Argomenti ========== +L'ordine degli elementi puo' variare in base alle esigenze emerse nei corsi precedenti. Informatica: --------------- - -Creare librerie ad oggetti, operazioni bitwise, pointers. Connessioni seriali sincrone, I2C. Strumenti di condivisione codice Git e della documentazione. - - +* Creare librerie ad oggetti, intestazioni e percorsi di include. +* Operazioni bitwise, pointers. +* Git avanzato: brancing e condivisione. +* Editors Avanzati: compilazione manuale ed uso di altri editor testuali. +* Software per gestire la documentazione. * Processing: scambiare ed elaborare i dati tra Arduino e PC. -* Http e webframework, introduzione TCP/IP +* HTTP e WebFramework, introduzione TCP/IP +* Server su Arduino e scambio di dati con device remoti. Elettronica -------------- -Connessioni I2c, wifi. -Transistor, componenti avanzati: +L'ordine di presentazione e il tipo di sensori potra' variare in base a quanto fatto nei corsi precedenti. - -* Arduino su STM32: MapleMini e generiche -* ESP8266: port di Aduino -* Schede NodeMCU e ESP8266 ridotte * Power Saving: gestione del risparmio energetico -* Utilizzare StepDown per controllo della corrente -* Git avanzato: brancing e condivisione. -* Software per gestire la documentazione. -* Editors Avanzati: Compilazione manuali ed uso di editor testuali. -* Connessioni Wifi: sensori e attuatori in rete. -* Server su Arduino e scambio di dati con device remoti. +* Lavorare con tensioni diverse da 5v. +* Mosfet / transistor : ULN2803A Darlington transistor array +* Connessioni WiFi: sensori e attuatori in rete. * Usare interrupts: timer e input -* creare una libreria ad oggetti * Display LCD a 8 pin (normale e I2C) * Giroscopio a 6 assi * Sensore di pressione / altimetro -* Altri eventuali sensori ed attuatori +* Altri eventuali sensori ed attuatori secondo esigenze e disponibilita' del laboratorio * RFID +* Utilizzare un prot shield per i circuiti (eventuale prefboard con saldature) Arduino -------------- - -Arduino Core e Processing su architettura MIPS con ESP8266 e ARM con STM32. Ambienti di sviluppo avanzati: Sublime Text, Eclipse, Vim, compilazione anuale con Makefiles. +* Arduino su STM32: MapleMini e generiche +* ESP8266: port di Arduino +* Eventuale: AVR standalone su breadboard programmato tramite ISP: Atmega328p / ATTINY2313A +* AVR: gestione fuse e oscillatori interni / esterni +* Schede NodeMCU e ESP8266 ridotte +* Connessioni seriali sincrone, I2C (SPI). +* Arduino Core e Processing su architettura diverse da Armel +* Ambienti di sviluppo avanzati: Sublime Text, Eclipse, Vim +* Compilazione manuale con Makefiles. Creazione di una libreria a oggetti, deployment con GIT. @@ -69,16 +73,14 @@ Upgrade Hardware * 6 assi I2C * Arduino Core su STM32: MapleMini e BluePill generica * Arduino core su ESP8266 -* Logic Level Converter, step down switching, linear regulator 7805 5v e LM1117T 3.3v +* Logic Level Converter, alimentatori switching, linear regulator 7805 5v e LM1117T 3.3v * Pilotare i PIN tramite transistor. - -Materiali +Materiali ======================= -Tutti i materiali necessari al corso saranno disponibili nel laboratorio durante - le lezioni. +Tutti i materiali necessari al corso saranno disponibili nel laboratorio durante le lezioni. Per gli studenti che vogliono esercitarsi a casa sono state predisposte le liste dei componenti e materiali utili ai corsi `Kit base da 5euro `_ e un `Kit da 40euro `_ . Questi kit vanno prenotati con un mese di anticipo come **acquisto di gruppo**. -Per quanto riguarda il software e' stato preparato un sistema operativo Gnu/Linux in versione Live / installabile sul proprio coputer: http://zap.piffa.net/store/ con tutti i software e gli esercizi preconfigurati +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 varie librerie Arduino preconfigurate, l'ambiente di sviluppo Eclipse e Sublime Text ottimizzati per Arduino. Sul Wiki sono state preparate le istruzioni di massima per gestire varie schede e componenti