Corso di 20 ore sulla piattaforma Arduino. Corso tenuto nelle scuole superiori di San Secondo e Fornovo come corso di aggiornamento per il personale docente. Il corso si suddivide in 5 lezioni dove vengono spiegate più o meno tutte le funzionalità della piattaforma. I file li potete trovare al seguente indirizzo https://github.com/loweherz/ArduinoLessons
Corso di 20 ore sulla piattaforma Arduino. Corso tenuto nelle scuole superiori di San Secondo e Fornovo come corso di aggiornamento per il personale docente. Il corso si suddivide in 5 lezioni dove vengono spiegate più o meno tutte le funzionalità della piattaforma. I file li potete trovare al seguente indirizzo https://github.com/loweherz/ArduinoLessons
Arduino, workshop di due giorni: materiale didattico.
ARGOMENTI:
- basi della programmazione di Arduino
- fondamenti di elettronica
- interagire con sistemi di input
- interagire con sistemi di output
- comunicazione seriale con processing
** E' possibile scaricare tutto il codice degli esercizi: https://github.com/hold3n/Arduino-Basic-Workshop
CC 2014 Daniele Iori e Ivan De Cesaris per Officine Giardino. Quest'opera è distribuita con Licenza Creative Commons Attribuzione - Condividi allo stesso modo 4.0 Internazionale.
Slide del corso Arduino Base tenuto presso il Museo della Scienza e Tecnologia "Leonardo da Vinci" di Milano.
Argomenti trattati:
- I componenti elettronici di base
- Introduzione alla scheda Arduino
- Le basi della programmazione
- Le comunicazioni seriali
- Input digitali e analogici semplici
- Ricavare input dai sensori
- L’output visivo
- L’output fisico
Corso di 20 ore sulla piattaforma Arduino. Corso tenuto nelle scuole superiori di San Secondo e Fornovo come corso di aggiornamento per il personale docente. Il corso si suddivide in 5 lezioni dove vengono spiegate più o meno tutte le funzionalità della piattaforma. I file li potete trovare al seguente indirizzo https://github.com/loweherz/ArduinoLessons
- Introduzione
Cosa è arduino?
Cosa non è arduino?
Cosa si può fare?
- Descrizione di Arduino
Breve introduzione storica e curiosità
Hardware generico di Arduino
I vari modelli di Arduino
Hardware di Arduino UNO
Hardware di Arduino Micro
- Segnali
Segnali digitali
Segnali analogici
Sensori ed attuatori
- Software
Il linguaggio di programmazione
Breve descrizione e curiosità
Le funzioni setup() e loop()
L'IDE
Setup e funzioni principali
Codice di esempio incluso nell'IDE
- Hello world: blink sketch (Esempio di output digitale)
L'obiettivo
I LED
Richiami di elettronica
Legge di Ohm
Le resistenze
La breadboard
La basetta millefori
Coding step by step
Test
Modifica di parametri e i relativi effetti
- Button sketch (Esempio di input digitale)
L'obiettivo
Il pulsante
Resistenza di pull-up
Coding
Test
- Comunicazione seriale
- Twilight switch sketch (Esempio di input analogico)
L'obiettivo
La fotoresistenza
Coding
Test
- Variable light sketch (Esempio di output analogico)
L'obiettivo
PWM (Pulse width modulation)
Coding
Test
- Cos'altro posso fare?
Gli shield
Buzzer
LED Infrarossi
Orologio RTC
Display
Moduli a caratteri
Moduli grafici
Motori
Semplici
Passo passo
RFID
Sensori ambientali
Temperatura e umidità
Rilevatore di movimento
Sonar
Wifi
Internet of things
Relay elettromagnetici
- Esempi di progetti curiosi trovati su internet
- Siti di riferimento
Prima lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici.
Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit.
Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione.
Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Corso di 20 ore sulla piattaforma Arduino. Corso tenuto nelle scuole superiori di San Secondo e Fornovo come corso di aggiornamento per il personale docente. Il corso si suddivide in 5 lezioni dove vengono spiegate più o meno tutte le funzionalità della piattaforma. I file li potete trovare al seguente indirizzo https://github.com/loweherz/ArduinoLessons
Arduino, workshop di due giorni: materiale didattico.
ARGOMENTI:
- basi della programmazione di Arduino
- fondamenti di elettronica
- interagire con sistemi di input
- interagire con sistemi di output
- comunicazione seriale con processing
** E' possibile scaricare tutto il codice degli esercizi: https://github.com/hold3n/Arduino-Basic-Workshop
CC 2014 Daniele Iori e Ivan De Cesaris per Officine Giardino. Quest'opera è distribuita con Licenza Creative Commons Attribuzione - Condividi allo stesso modo 4.0 Internazionale.
Slide del corso Arduino Base tenuto presso il Museo della Scienza e Tecnologia "Leonardo da Vinci" di Milano.
Argomenti trattati:
- I componenti elettronici di base
- Introduzione alla scheda Arduino
- Le basi della programmazione
- Le comunicazioni seriali
- Input digitali e analogici semplici
- Ricavare input dai sensori
- L’output visivo
- L’output fisico
Corso di 20 ore sulla piattaforma Arduino. Corso tenuto nelle scuole superiori di San Secondo e Fornovo come corso di aggiornamento per il personale docente. Il corso si suddivide in 5 lezioni dove vengono spiegate più o meno tutte le funzionalità della piattaforma. I file li potete trovare al seguente indirizzo https://github.com/loweherz/ArduinoLessons
- Introduzione
Cosa è arduino?
Cosa non è arduino?
Cosa si può fare?
- Descrizione di Arduino
Breve introduzione storica e curiosità
Hardware generico di Arduino
I vari modelli di Arduino
Hardware di Arduino UNO
Hardware di Arduino Micro
- Segnali
Segnali digitali
Segnali analogici
Sensori ed attuatori
- Software
Il linguaggio di programmazione
Breve descrizione e curiosità
Le funzioni setup() e loop()
L'IDE
Setup e funzioni principali
Codice di esempio incluso nell'IDE
- Hello world: blink sketch (Esempio di output digitale)
L'obiettivo
I LED
Richiami di elettronica
Legge di Ohm
Le resistenze
La breadboard
La basetta millefori
Coding step by step
Test
Modifica di parametri e i relativi effetti
- Button sketch (Esempio di input digitale)
L'obiettivo
Il pulsante
Resistenza di pull-up
Coding
Test
- Comunicazione seriale
- Twilight switch sketch (Esempio di input analogico)
L'obiettivo
La fotoresistenza
Coding
Test
- Variable light sketch (Esempio di output analogico)
L'obiettivo
PWM (Pulse width modulation)
Coding
Test
- Cos'altro posso fare?
Gli shield
Buzzer
LED Infrarossi
Orologio RTC
Display
Moduli a caratteri
Moduli grafici
Motori
Semplici
Passo passo
RFID
Sensori ambientali
Temperatura e umidità
Rilevatore di movimento
Sonar
Wifi
Internet of things
Relay elettromagnetici
- Esempi di progetti curiosi trovati su internet
- Siti di riferimento
Prima lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici.
Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit.
Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione.
Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Introduzione ad arduino e raspberry. Lezione svolta presso l'Università degli studi di Parma durante il corso di sistemi di automazione. Con questa lezione si vogliono introdurre le due piattaforme e darne i contenuti essenziali per iniziarle ad usare. Inoltre vengono mostrati alcuni progetti da me svolti con questi due device.
Seconda lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici.
Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit.
Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione.
Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Corso di 20 ore sulla piattaforma Arduino. Corso tenuto nelle scuole superiori di San Secondo e Fornovo come corso di aggiornamento per il personale docente. Il corso si suddivide in 5 lezioni dove vengono spiegate più o meno tutte le funzionalità della piattaforma. I file li potete trovare al seguente indirizzo https://github.com/loweherz/ArduinoLessons
Quinta lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici. Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit. Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione. Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Alfabeto di arduino - lezione 4
Quarta lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici.
Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit.
Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione.
Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Corso di 20 ore sulla piattaforma Arduino. Corso tenuto nelle scuole superiori di San Secondo e Fornovo come corso di aggiornamento per il personale docente. Il corso si suddivide in 5 lezioni dove vengono spiegate più o meno tutte le funzionalità della piattaforma. I file li potete trovare al seguente indirizzo https://github.com/loweherz/ArduinoLessons
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici. Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit. Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione. Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Seminario tenutosi al Linux Day 2011 di Perugia.
E' un'introduzione iniziale al mondo della Physical Computing tramite Arduino. Il talk spiega i principi base di funzionamento del dispositivo ed è corredato da un prototipo finale per la domotica.
Sorgenti o spiegazioni migliori possono essere fatte su richiesta via e-mail.
Analizziamo Arduino ai raggi X sia lato hardware che software, studiamo i suoi limiti e vediamo le soluzioni possibili. Lavoriamo con Arduino in modo professionale! Queste le slide del talk tenuto in Roma il 22-09-2015
Terza lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici.
Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit.
Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione.
Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Il cuore di Arduino: Un sistema di sviluppo basato su microcontrollore Atmel ...Sardegna Ricerche
L'intervento di Paolo Paolucci durante l'Arduino Day, che si è tenuto il 29 marzo 2014 presso il FabLab Sardegna Ricerche, nella sede di Pula del Parco scientifico e tecnologico della Sardegna.
Rendo disponibile la presentazione del Workshop su Arduino svolto in occasione del ModelExpo 2015. Le slide sono da intendere come introduzione per quanti desiderano incominciare. Le slide contengono argomenti che ritroverete in altre mie presentazioni e contenuti del mio sito personale, ma anche nuovi suggerimenti. Come conseguenza delle sempre numerose domande che mi vengono poste riguardo al modo di imparare ad usare Arduino ho voluto inserire una bozza di linea guida metodologica per incominciare con Arduino. Il percorso si suddivide in due: per chi ha la necessità di comprendere e risolvere un problema tecnico, ad esempio: realizzare un modellino di automobile radiocomandata o un drone e chi invece desidera andare in profondità e sapere ad esempio: quali libri, quali siti, quali software bisognerebbe leggere ed usare, perché per esempio si intende sviluppare un progetto che porterà ad un oggetto da vendere.
Troverete nelle slide menzionati libri “complicati” da ingegnere, ma anche risorse “semplici” alla portata di chi non ha mai programmato o sperimentato con l’elettronica.
Non spaventatevi imparare l’uso di Arduino è semplice :-) ma gli utenti hanno necessità diverse e quindi ritengo importante soddisfare il maggior numero di persone.
Workshop de iniciação à Robótica com o Farrusco (robô desenvolvido pela Artica, baseado em Arduino)
Objectivos deste workshop, visando o desenvolvimento das seguintes capacidades:
Pensamento Algorítmico
Resolução de Problemas
Computação Física
Linguagens de Programação
Microcontroladores
Electrónica
Robótica
Interacção Homem-Máquina (HCI, HRI)
Introduzione ad arduino e raspberry. Lezione svolta presso l'Università degli studi di Parma durante il corso di sistemi di automazione. Con questa lezione si vogliono introdurre le due piattaforme e darne i contenuti essenziali per iniziarle ad usare. Inoltre vengono mostrati alcuni progetti da me svolti con questi due device.
Seconda lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici.
Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit.
Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione.
Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Corso di 20 ore sulla piattaforma Arduino. Corso tenuto nelle scuole superiori di San Secondo e Fornovo come corso di aggiornamento per il personale docente. Il corso si suddivide in 5 lezioni dove vengono spiegate più o meno tutte le funzionalità della piattaforma. I file li potete trovare al seguente indirizzo https://github.com/loweherz/ArduinoLessons
Quinta lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici. Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit. Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione. Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Alfabeto di arduino - lezione 4
Quarta lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici.
Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit.
Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione.
Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Corso di 20 ore sulla piattaforma Arduino. Corso tenuto nelle scuole superiori di San Secondo e Fornovo come corso di aggiornamento per il personale docente. Il corso si suddivide in 5 lezioni dove vengono spiegate più o meno tutte le funzionalità della piattaforma. I file li potete trovare al seguente indirizzo https://github.com/loweherz/ArduinoLessons
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici. Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit. Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione. Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Seminario tenutosi al Linux Day 2011 di Perugia.
E' un'introduzione iniziale al mondo della Physical Computing tramite Arduino. Il talk spiega i principi base di funzionamento del dispositivo ed è corredato da un prototipo finale per la domotica.
Sorgenti o spiegazioni migliori possono essere fatte su richiesta via e-mail.
Analizziamo Arduino ai raggi X sia lato hardware che software, studiamo i suoi limiti e vediamo le soluzioni possibili. Lavoriamo con Arduino in modo professionale! Queste le slide del talk tenuto in Roma il 22-09-2015
Terza lezione del corso: Alfabeto di Arduino.
Il seguente corso intende fornire le competenze di base per la realizzazione di lezioni di didattica delle robotica nella scuola secondaria di secondo grado.
Il corso ben si adatta a tutti i maker, studenti ed adulti, che per passione nell’elettronica necessitano di un’introduzione all’uso di Arduino.
Il docente che intendesse sviluppare un percorso didattico in cui si desidera realizzare dispositivi elettronici in grado di interfacciarsi col mondo fisico, potrà utilizzare queste lezioni come base per implementare moduli didattici aggiuntivi, pertanto questo corso è da intendersi come il mio personale tentativo di strutturare un percorso iniziale e modellabile a seconda del tipo di indirizzo della scuola. Chi vorrà potrà effettuare miglioramenti su quanto da me scritto.
Il percorso scelto è un estratto delle lezioni svolte durante i miei corsi di elettronica, sistemi ed impianti elettrici.
Nelle slide vi sono cenni teorici di elettrotecnica che non sostituiscono in alcun modo il libro di testo, ma vogliono essere un primo passo per condurre il lettore ad un approfondimento su testi specializzati.
Il corso è basato sulla piattaforma Open Source e Open Hardware Arduino e fa uso dell’Arduino starter kit.
Questa scelta non implica l’adozione di queste slide in corsi che non fanno uso di questo kit, ma è semplicemente una scelta organizzativa per lo svolgimento di questo corso di formazione.
Alle proposte incluse nel kit ho aggiunto ulteriori sperimentazioni. Tutti i componenti possono essere acquistati separatamente.
Ulteriori approfondimenti e risorse a questo corso possono essere trovate sul mio sito personale al seguente link:
http://www.maffucci.it/area-studenti/arduino/
Nella sezione dedicata ad Arduino, sul mio sito personale, oltre ad ulteriori lezioni, di cui queste slide ne sono una sintesi, è possibile consultare un manuale di programmazione, in cui vengono dettagliate le istruzioni. Per rendere pratico l’utilizzo del manuale ne è stata realizzata anche una versione portable per dispositivi mobili iOS e Android, maggiori informazioni possono essere trovate seguendo il link: http://wp.me/p4kwmk-23g
Il cuore di Arduino: Un sistema di sviluppo basato su microcontrollore Atmel ...Sardegna Ricerche
L'intervento di Paolo Paolucci durante l'Arduino Day, che si è tenuto il 29 marzo 2014 presso il FabLab Sardegna Ricerche, nella sede di Pula del Parco scientifico e tecnologico della Sardegna.
Rendo disponibile la presentazione del Workshop su Arduino svolto in occasione del ModelExpo 2015. Le slide sono da intendere come introduzione per quanti desiderano incominciare. Le slide contengono argomenti che ritroverete in altre mie presentazioni e contenuti del mio sito personale, ma anche nuovi suggerimenti. Come conseguenza delle sempre numerose domande che mi vengono poste riguardo al modo di imparare ad usare Arduino ho voluto inserire una bozza di linea guida metodologica per incominciare con Arduino. Il percorso si suddivide in due: per chi ha la necessità di comprendere e risolvere un problema tecnico, ad esempio: realizzare un modellino di automobile radiocomandata o un drone e chi invece desidera andare in profondità e sapere ad esempio: quali libri, quali siti, quali software bisognerebbe leggere ed usare, perché per esempio si intende sviluppare un progetto che porterà ad un oggetto da vendere.
Troverete nelle slide menzionati libri “complicati” da ingegnere, ma anche risorse “semplici” alla portata di chi non ha mai programmato o sperimentato con l’elettronica.
Non spaventatevi imparare l’uso di Arduino è semplice :-) ma gli utenti hanno necessità diverse e quindi ritengo importante soddisfare il maggior numero di persone.
Workshop de iniciação à Robótica com o Farrusco (robô desenvolvido pela Artica, baseado em Arduino)
Objectivos deste workshop, visando o desenvolvimento das seguintes capacidades:
Pensamento Algorítmico
Resolução de Problemas
Computação Física
Linguagens de Programação
Microcontroladores
Electrónica
Robótica
Interacção Homem-Máquina (HCI, HRI)
Programmazione degli ATTiny - Il computer nella scarpaPaolo Aliverti
Slide del workshop di programmazione del chip ATTiny come sostituto di arduino. Il chip ATTiny, di costo contenuto e di piccole dimensioni può stare in una scarpa (!) e può aiutarci nella realizzazione di progetti di Physical Computing
Intervento al Linux Day 2010@Pisa, organizzato da parte del GULP. L'intervento ha l'obiettivo di presentare il sistema Ubuntu mostrandone gli aspetti principali
Introduzione a ubuntu - Linux Day 2010Nicola Corti
Intervento al Linux Day 2010@Pisa, organizzato da parte del GULP. L'intervento presenta il sistema ubuntu in tutte le sue parti mostrandone pregi e difetti.
All'interno dei "LinoLab", laboratori digitali organizzati dal Centro Culturale "A. Zanussi" di Pordenone, le slide del laboratorio su Arduino. Livello principianti.
maggio 2016
Electronics LAB [with Arduino] @ FLUSSI Media Arts Festival 2013 (disPLAYcement) - Teatro Carlo Gesualdo, Avellino, Italy.
August 28 -> 31, 2013
Lecturers: Daniele Costarella and Salvatore Carotenuto
Primi passi Arduino.
Guida introduttiva al Mondo Arduino, con spiegazione Hardware e Software.
Come collegarsi, utilizzo del software (IDE), utilizzo delle istruzioni base.
Teaching within the course "The frontier of the Internet of Things", organized by "Ordine degli Ingegneri della Provincia di Salerno". Lecturing on the subject held "IoT and the Arduino platform" on October 29, 2016
Presentazione Introduttiva all'Arduino Day 2015 tenutosi in Ludoteca Archimedea: "Arduino Uno nessuno e Centomila" quale e' la vera personalita' di Arduino? Scopriamo solo una piccola parte dei diversi impieghi e ambiti di potenziale applicabilita' che ha la schedina elettronica in ambito prototipazione, educational e hobby.
Sono illustrati anche i progetti svolti in collaborazione con il Politecnico di Milano Dipartimento di Design del Prodotto in cui Arduino ha reso "smart", interattive, le idee dei designer.
CodingGym - Lezione 3 - Corso Linux, Android e Internet of ThingsMirko Mancin
Corso frontale di 20 ore indirizzato a docenti di scuole superiori nel settore ICT. Il corso vuole essere una palestra (per questo CodingGym) di rafforzamento delle basi già esistenti e di supporto per corsi futuri. Queste slide sono rilasciate con la licenza Creative Commons e quindi potete scaricarle ed utilizzarle a vostro piacere. Ricordate però di CITARMI! :D
CodingGym - Lezione 2 - Corso Linux, Android e Internet of ThingsMirko Mancin
Corso frontale di 20 ore indirizzato a docenti di scuole superiori nel settore ICT. Il corso vuole essere una palestra (per questo CodingGym) di rafforzamento delle basi già esistenti e di supporto per corsi futuri. Queste slide sono rilasciate con la licenza Creative Commons e quindi potete scaricarle ed utilizzarle a vostro piacere. Ricordate però di CITARMI! :D
CodingGym - Lezione 1 - Corso Linux, Android e Internet of ThingsMirko Mancin
Corso frontale di 20 ore indirizzato a docenti di scuole superiori nel settore ICT. Il corso vuole essere una palestra (per questo CodingGym) di rafforzamento delle basi già esistenti e di supporto per corsi futuri. Queste slide sono rilasciate con la licenza Creative Commons e quindi potete scaricarle ed utilizzarle a vostro piacere. Ricordate però di CITARMI! :D
Lo scopo di questa Tesi è mostrare come le piattaforme Arduino e Android possano essere utilizzate in un sistema di Ambient Intelligence per il monitoraggio dei sensori e l'interazione con gli attuatori.
La prima parte del lavoro è stata quella di progettare e sviluppare con l’hardware e il software fornito da Arduino le schede necessarie per il sistema:
• Una scheda per il monitoraggio ambientale, attraverso la lettura di quattro sensori (temperatura, umidità, luce, gas) (vedi figura a lato);
• Una scheda per la presenza all’interno della stanza attraverso un lettore di tag RFID e NFC, un sensore di movimento PIR e un sensore di suono ad alta sensibilità che comunicano i loro dati con un modulo ZigBee;
• Una scheda per la comunicazione ZigBee;
• Una scheda per gli attuatori e per il riconoscimento di dispositivi Android attraverso un USB Host.
Queste schede sono state installate in una Wireless Sensor Network (WSN) e comunicheranno con un server creato ad hoc attraverso tecnologie wireless e wired. Il server ha il compito di elaborare i dati grezzi che arrivano dalle schede, salvarli in un database, renderli disponibili a un client web che li possa visualizzare attraverso un’interfaccia (saranno rappresentati i dati letti delle ultime ore attraverso dei grafici) e di mettere a disposizione servizi utili per interrogazioni da parte di dispositivi Android.
Un altro servizio implementato è stato quello di un modulo software con il quale, attraverso una rete di Bayes per l’auto apprendimento appositamente creata per il progetto, è possibile prevedere lo stato della stanza in basa alla lettura dei sensori/dispositivi sopra elencati. Tale modulo è in grado di rilevare se c’è un incendio, se c’è un intrusione, ma anche se c’è attività lavorativa di una singola persona o se c’è una conferenza oppure se c’è una condizione anomala per cui bisogna azionare determinati attuatori. Attraverso la lettura di eventi di basso livello (sensori, tag di utenti entrati nel locale, ecc), il modulo riesce a prevedere con buona probabilità quale è lo stato della stanza in quel momento.
L’interfaccia utente del sistema è raggiungibile via Web attraverso una pagina presente sul server, oppure attraverso un’applicazione Android (vedi figura a lato) che permette di visualizzare i dati letti dai sensori, di ricevere notifiche push in caso di eventi di alto livello (rilevati dai moduli sopra descritti), attraverso il servizio Google Cloud Messaging, o azionare gli attuatori in remoto.
Tesi magistrale in ingegneria informatica
Progettazione e sviluppo di un gateway per la gestione efficiente a servizi e risorse per l'accesso locale e remoto in scenari di Internet of Things attraverso tecniche di Cloud Computing
Kangaroo system - send/receive program to/from CNC machineMirko Mancin
The system provides different nodes connected to the machines via serial cable (DB25). They receive programs from the machine and send them to a central node that will save the data. They also receive programs from the master to be able to then send to the machine.
The nodes are constituted byraspberryPI boards with the addition of an I/O expander.
While the master board is a quadcore ODROID U3
The aim of this project is to provide a device capable of collecting data from various sensors and send such data on the internet, so that you can view with different client.
The data collect is fundamental for research activity and for to have large amounts of data, so that immediately brings many benefits.
Through telecommunication technologies and devices can have a good battery outdoor, you can communicate different data remotely to as many clients.
1. SISTEMI EMBEDDED
Il caso Arduino
San Secondo Parmense – Mirko Mancin 2013
“se ascolto dimentico, se vedo ricordo, se faccio capisco”
2. San Secondo Parmense – Mirko Mancin 2013
• Installazione e specifiche dell’IDE
• Funzioni principali e le librerie
• Creare una libreria
• I/O digitale e analogico
• Basi di programmazione in Processing
INDICE
3. San Secondo Parmense – Mirko Mancin 2013
IDE ARDUINO
http://arduino.cc/en/Main/Software
4. San Secondo Parmense – Mirko Mancin 2013
EEPROM - lettura e scrittura su memoria “permanente”
Ethernet - per connettere Arduino su una rete attraverso l’apposita shield
Firmata - per comunicare con diverse applicazioni sul computer usando lo
standard seriale
LiquidCrystal - per controllare display LCD
SD - per leggere e scrivere su schede SD
Servo - per controllare servo motori
SPI - per comunicare con dispositivi che utilizzano un Bus Serial Peripheral
Interface
SoftwareSerial - per la comunicazione seriale
Stepper - per controllare motori stepper
WiFi - per collegare Arduino a internet usando la WiFi shield
Wire - Two Wire Interface (TWI/I2C) per mandare e ricevere dati su una rete di
sensori o dispositivi
LE LIBRERIE PRINCIPALI
From http://arduino.cc/en/Reference/Libraries
5. San Secondo Parmense – Mirko Mancin 2013
Communication (networking e protocolli):
Messenger - per l'elaborazione di messaggi basati su testo dal computer
OneWire - dispositivi di controllo (da Dallas Semiconductor) che utilizzano il
protocollo One Wire.
PS2Keyboard - Leggere caratteri da una tastiera PS2
Simple Message System - inviare messaggi tra Arduino e il computer
SSerial2Mobile - inviare messaggi di testo o e-mail utilizzando un telefono
cellulare (con comandi AT attraverso seriale)
Webduino - libreria per un web server
X10 - Invio di segnali X-10 sulla linea di alimentazione AC
XBee - per comunicare con XBees in modalità API
LE LIBRERIE PRINCIPALI
From http://arduino.cc/en/Reference/Libraries
6. San Secondo Parmense – Mirko Mancin 2013
Librerie USB(Leonardo, Micro, Due, and Esplora)
Keyboard - mandare caratteri ad un computer come se fosse una tastiera
Mouse - controllare il puntatore del mouse del computer a cui si è collegati
Librerie per Arduino Due
Audio - Play file audio da scheda SD
Scheduler - Gestire blocchi multipli di task
USBHost - Comunicare con perfieriche USB, come tastiera o mouse
Libreria per Arduino Esplora
Esplora - questa libreria consente di accedere facilmente a vari sensori e
attuatori montati sulla scheda ESPLORA
LE LIBRERIE PRINCIPALI
From http://arduino.cc/en/Reference/Libraries
7. San Secondo Parmense – Mirko Mancin 2013
CREARE UNA LIBRERIA
int pin = 13;
void setup()
{
pinMode(pin, OUTPUT);
}
void loop()
{
dot(); dot(); dot();
dash(); dash(); dash();
dot(); dot(); dot();
delay(3000);
}
Se si prova ad eseguire questo sketch,
si vedrà riprodurre il codice morse per
l’SOS sul led del pin 13.
Ma dot() e dash() come sono
implementate?
8. San Secondo Parmense – Mirko Mancin 2013
CREARE UNA LIBRERIA
Per creare una libreria sono necessari due file:
<nome_libreria>.h – il file header
<nome_libreria>.cpp – il file sorgente con l’implementazione del file header
class Morse
{
public:
Morse(int pin);
void dot();
void dash();
private:
int _pin;
};
Il cuore del codice HEADER
Morse::Morse(int pin)
{
pinMode(pin, OUTPUT);
_pin = pin;
}
void Morse::dot()
{
digitalWrite(_pin, HIGH);
delay(250);
digitalWrite(_pin, LOW);
delay(250);
}
void Morse::dash()
{
digitalWrite(_pin, HIGH);
delay(1000);
digitalWrite(_pin, LOW);
delay(250);
}
Il cuore del codice SORGENTE
9. San Secondo Parmense – Mirko Mancin 2013
CREARE UNA LIBRERIA
IL FILE HEADER
#ifndef Morse_h
#define Morse_h
#include ‘’Arduino.h’’
class Morse
{
public:
Morse(int pin);
void dot();
void dash();
private:
int _pin;
};
#endif
11. San Secondo Parmense – Mirko Mancin 2013
CREARE UNA LIBRERIA
Una volta creati i due file bisogna inserirli in una cartella CON LO STESSO NOME DELLA
LIBRERIA e andarla a copiare nella cartella libraries dove si trova l’IDE di Arduino.
È possibile creare un ulteriore file in cui andare ad inserire le parole chiavi del programma
(che poi saranno colorate in modo differente nell’IDE per migliorare la lettura del codice.
KEYWORD1 per una colorazione arancio, mentre KEYWORD2 per una colorazione blu)
keywords.txt va salvato nella stessa cartella
della libreria. Potrebbe essere scritto come
segue:
Morse KEYWORD1
dash KEYWORD2
dot KEYWORD2
12. San Secondo Parmense – Mirko Mancin 2013
I/O DIGITALE E ANALOGICO
Quasi tutte le schede Arduino hanno 14 pin
digitali: sono pin che puoi utilizzare sia in
modo INPUT (ingresso), per acquisire il valore
di un pulsante ad esempio o di un interruttore
a leva, sia in modo OUTPUT (uscita) per inviare
segnali logici ad una scheda aggiuntiva, ad un
led, ecc…
Siccome si tratta di impulsi di tipo digitale il
valore che puoi ricevere/inviare è il classico
0/1 o in linguaggio Arduino LOW/HIGH.
13. San Secondo Parmense – Mirko Mancin 2013
I/O DIGITALE
Per definire come utilizzeremo un dato pin si usa il seguente comando:
pinMode(pin, modalità):
pin = indica il pin che vogliamo settare con la modalità definita nel secondo parametro,
modalità = INPUT o OUTPUT.
Per inviare un segnale al pin si usa il comando:
digitalWrite(pin,level):
pin = indica il pin a cui vogliamo inviare il segnale definito nel secondo parametro,
level = LOW o HIGHT ( 0 o 1 ).
Per leggere un valore digitale, magari quello di un interruttore collegato a massa puoi si
utilizza il comando pinMode con modalità INPUT, ed il comando
digitalRead(pin):
pin = indica il numero del pin di cui vogliamo conoscere il valore.
14. San Secondo Parmense – Mirko Mancin 2013
I/O ANALOGICO
Bisogna ricordarsi sempre di settare la modalità del pin prima di eseguire l’invio dei
comandi, in questo esempio si utilizza il pin 11 scrivendo:
pinMode(11,OUTPUT) indico ad Arduino di utilizzarlo in modo OUTPUT.
Per esempio posso inviare il mio segnale con duty-cycle al 50%:
analogWrite(11,127).
Il valore 127 è esattamente a metà della mia scala ( 0 – 255 ) quindi il duty-cycle generato
sarà del 50%.
Per i pin analogici non è necessario settare la modalità con cui vengono usati perché sono
SOLAMENTE di INPUT.
Per leggere il valore presente sul pin 5, ad esempio, si utilizza il comando:
analogRead(5) il valore rilevato può variare da 0 a 1023, all’interno del range
indicato ogni variazione del segnale sarà indicata con una variazione di tale valore.
15. San Secondo Parmense – Mirko Mancin 2013
ALCUNI ESEMPI CON ARDUINO
Facciamo lampeggiare un led
-> Blink
16. San Secondo Parmense – Mirko Mancin 2013
ALCUNI ESEMPI CON ARDUINO
Controlliamo il Led con un bottone
-> Button_Led
Esempio 1: accensione led appena premuto il
pulsante
Esempio 2: accendo led quando premo
pulsante e spengo quando ripremo
Esempio 3: come il 2 ma con l’antirimbalzo
Esempio 4: led lampeggia se premo e se
ripremo si spegne
17. San Secondo Parmense – Mirko Mancin 2013
ALCUNI ESEMPI CON ARDUINO
ESERCIZIO
Simulazione comando delle lampade di una scala
Pulsante 2:
(discesa) start,
accensione del led 2,
dopo 2 secondi accensione led 1,
dopo 2 secondi spegnimento led 2,
dopo 2 secondi spegnimento led 1,
end.
Pulsante 1:
(salita) start,
accensione del led 1,
dopo 2 secondi accensione led 2,
dopo 2 secondi spegnimento led 1,
dopo 2 secondi spegnimento led 2,
end.
19. San Secondo Parmense – Mirko Mancin 2013
ALCUNI ESEMPI CON ARDUINO
Identifichiamo le variazioni di stato di un sensore analogico
-> AnalogPot -> Temperature
20. San Secondo Parmense – Mirko Mancin 2013
ALCUNI ESEMPI CON ARDUINO
Riutilizzare l’esempio del termometro ed aggiungere un potenziometro per impostare la
temperatura. Simulare con un led l’accensione/spegnimento del termostato e con un altro
led (utilizzando l’esempio Fade) mostrare con l’intensità luminosa, quanto vale il valore
del potenziometro.
Se il valore letto dal potenziometro è minore della temperatura della stanza accendere il
termostato, altrimenti lasciarlo spento
ESERCIZIO
Simulazione di un impianto di riscaldamento
21. San Secondo Parmense – Mirko Mancin 2013
Il linguaggio Processing è basato su Java. L’ambiente di sviluppo di Arduino è
scritto in Processing. Processing deve essere installato dopo averlo scaricato dal
sito di Processing. La programmazione è più semplice del linguaggio Java usuale.
E’ particolarmente adatto per programmi di grafica ed è stato usato anche in
ambiente artistico. Per familiarizzarsi conviene caricare un esempio già pronto.
Caricare dagli esempi
sezione Motion
Bounce.
Premere Run.
La finestra che compare è un’applet Java.
PROCESSING
22. San Secondo Parmense – Mirko Mancin 2013
Il bytecode prodotto da Processing è un programma di tipo speciale, detto
applet, che può essere inserito all'interno di una pagina web con un'apposito
marcatore <applet>.
In questo modo, il programma una volta compilato è inserito all'interno di una
pagina web e, al momento della visualizzazione della pagina, l'applet è eseguito.
L'unica cosa necessaria per la visualizzazione degli applet è che sul calcolatore
sia installato l'interprete Java, (JRE o JVM).
Attenzione, Processing crea l'applet solo se si esegue il comando "export".
In tal caso, esso genera il bytecode dell'applet ed una semplice pagina web di
nome index.html contenente un riferimento all'applet mediante il marcatore
omonimo.
Processing può anche creare un'applicazione se si esegue il comando "export
application". In tal caso, esso genera oltre al bytecode dell'applet un file
eseguibile che avvia a sua volta l'esecuzione dell'applet. L'applicazione può
essere generata per i sistemi Windows, Mac e Linux.
PROCESSING
23. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Le basi
Per disegnare qualche cosa dentro questa finestra è necessario prima di tutto
comprendere il concetto di coordinate. L’asse delle X scorre in orizzontale mentre l’asse
delle Y scorre in verticale.
L’angolo in alto a sinistra della nostra finestra ha le coordinate (0, 0). L’angolo in basso a
destra ha coordinate (X_Max, Y_Max). L’angolo in alto a destra ha coordinate (X_Max, 0)
mentre l’angolo in basso a sinistra ha coordinate (0, Y_Max).
//Imposto le dimensioni della
finestra di lavoro
size(320, 240);
//Imposto il colore dello sfondo
background(255);
24. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Iniziare a disegnare
Processing mette a disposizioni alcune funzioni per disegnare le figure fondamentali a
schermo.
//UN PUNTO
point(X, Y);
//UNA LINEA – coordinata d’inizio e di fine
line(X1, Y1, X2, Y2);
//UN TRIANGOLO – coordinate dei vertici
triangle(X1, Y1, X2, Y2, X3, Y3);
//UN QUADRATO – coordinate dei vertici
quad(X1, Y1, X2, Y2, X3, Y3, X4, Y4);
//UN RETTANGOLO – coordinate dei vertici e dimensioni
rect(X, Y, width, height);
//UN ELLISSE – coordinata del centro di simmetria e dimensioni degli assi
ellipse (X, Y, width, height);
25. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Iniziare a disegnare
Se voglio modificare il colore o la forma dei miei disegni utilizzo queste funzioni:
//questa istruzione deve precedere il comando per la generazione della
forma geometrica.
fill(int r, int g, int b, int alpha);
//ESEMPIO
size(320, 240);
//Creiamo un quadrilatero
fill(80,80,80);
quad(1, 1, 50, 10, 130, 100, 100, 100);
//mettiamo sopra al quadrilatero un cerchio
fill(250,250,250);
ellipse(20, 20, 50, 50);
26. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Iniziare a disegnare
Il cerchio che abbiamo creato nel precedente Sketch ha il bordo nero, questo colore è di
default e può essere cambiato mettendo, sempre prima dell’istruzione che genera la
forma geometrica , l’istruzione:
stroke(255,255,255);
noStroke(0);
noFill(0);
strokeWeight(4);
Un modo più corretto per fare scomparire il bordo da una forma geometrica è l’apposito
comando
così come possiamo fare scomparire il riempimento con
Inoltre possiamo anche decidere lo spessore del bordo delle forme geometriche (e delle
linee) attraverso la seguente istruzione dove il valore tra parentesi indica lo spessore del
bordo espresso in pixel.
27. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Le animazioni
Un’animazione è composta da fotogrammi (immagini fisse) successivi. L’esecuzione dei
fotogrammi ad una velocità sufficiente genera un effetto di animazione nel nostro
cervello. Processing è un software che ci permette di disegnare attraverso le istruzioni
grafiche e ci permette anche di disegnare in movimento. Riconfiguriamo ora gli Sketch
realizzati precedentemente dandoci un nuovo obiettivo. Produrre attraverso
un’animazione dei punti successivi che compaiono progressivamente. Per ottenere questo
nuovo effetto dobbiamo utilizzare le istruzioni che permettono di gestire le funzioni:
// configuro i parametri
// di esecuzione
void setup () {
size (320,240);
background (255);
}
int intervallo = 0;
// definisco la funzione
// dentro la funzione
// metto le istruzioni ricorsive
void draw (){
//Velocità dell'animazione,
1fps. Di default è 60
frameRate (1);
point(intervallo, 120);
intervallo = intervallo + 10;
}
28. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Il testo
Processing utilizza i font che sono stati precedentemente dichiarati. A differenza dei
normali programmi di scrittura, dove troviamo il menù a tendina con tutti i font
disponibili, Processing, essendo un ambiente di sviluppo permette di utilizzare qualunque
font che sia stato precedentemente impostato.
Infatti Processing utilizza solamente tipi di carattere in formato VLW. Quando all’interno di
uno Sketch sviluppato in Processing intendiamo utilizzare un font dobbiamo prima di tutto
importare il font stesso attraverso il “Menù Tool” comando “Create Font”.
Dando questo comando si apre una finestra nella quale compare la lista dei caratteri
installati nel proprio computer. Si seleziona il carattere e la relativa dimensione che si
vuole importare e cliccando su OK verrà automaticamente creato un file che poi potrà
essere richiamato all’interno dello Sketch. Se ad esempio vogliamo utilizzare il font
Courier nella dimensione 12 all’interno del nostro Sketch dopo avere generato il file
dovremo richiamare un file di questo nome: “CourierNewPSMT-20.vlw”.
29. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Il testo
size (320, 240);
background (255);
// Inizializzo la variabile
PFont carattere;
// Carico il font nello Sketch
carattere = loadFont("CourierNewPSMT-20.vlw");
// Stabilisco il font che sto per usare
textFont(carattere);
textSize(18);
fill(0);
// Scrivo il testo
text("Manuale di Processing", 30, 100);
30. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Traslazione
Attraverso l’istruzione translate() abbiamo la possibilità di traslare degli oggetti. Per esempio se
voglio creare due linee traslate di un certo valore posso fare così:
size(320, 240);
translate(100, 25); //Quello che disegno dopo sarà spostato
di 100px in basso e 25px a destra
line(10, 20, 100, 120);
translate(80, 15); //Quello che disegno dopo sarà spostato
di 80px in basso e 15px a destra
line(20, 40, 200, 100);
La prima line() potrebbe essere riformulata così:
line(10 + 100, 20 + 0, 100 + 100, 120 + 0);
31. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Rotazione
I principi della traslazione valgono anche nel caso della rotazione. L’istruzione da utilizzare è
rotate(). L’unità di misura della rotazione è il radiante. La corrispondenza tra i gradi e i radianti e
molto semplice:
- due radianti (2 * π) sono 360 gradi
- un radiante (π) e 180 gradi
- mezzo radiante (π/2) e 90 gradi
In processing π si scrive PI.
size (240, 240);
line(0, 0, 240, 0);
//Ruoto l’oggetto successivo
strokeWeight(4);
rotate(PI/4);
line(0, 0, 240, 0);
//Ruoto l’oggetto successivo
strokeWeight(7);
rotate(PI/8);
line(0, 0, 240, 0);
32. San Secondo Parmense – Mirko Mancin 2013
PROCESSING – Scalare
Per ingrandire o rimpiccolire un oggetto si utilizza l’istruzione scale().
size (240, 240);
fill (100,20);
// Ingrandisco del doppio l’oggetto successivo
scale (2);
ellipse (100, 100, 20, 20);
// Diminuisco della metà l’oggetto successivo
scale (0.5);
ellipse (100, 100, 20, 20);
33. San Secondo Parmense – Mirko Mancin 2013
PROCESSING E ARDUINO
void draw(){
// If data is available,
if (port.available() > 0) {
val = port.read();
// read it and store it in val
}
background(99);
// Draw the shape
fill(val,255,255); // we're in HSB mode,
so first value is color
ellipse(width/2, height/2, 250,250);
import processing.serial.*;
String portname = "COM8"
Serial port; // Create object from Serial class
int val=100; // Data received from
the serial port, with an initial value
void setup(){
size(400, 400);
colorMode(HSB, 255);
ellipseMode(CENTER); // draw from center out
noStroke();
frameRate(30);
smooth();
// Open the port the board is connected to
port = new Serial(this, portname, 19200);
}
/* Simple Read
Read data from the serial port and change the color of a rectangle when a switch connected
to a Wiring or Arduino board is pressed and released. This example works with the Wiring /
Arduino program that follows below. */
34. San Secondo Parmense – Mirko Mancin 2013
RIFERIMENTI
ARDUINO
• Tutorial di arduino (link)
• PWM Tutorial (link)
PROCESSING
• Guida in Italiano (pdf)
• Esercizi e guida di riferimento (esercizi, guida)
35. San Secondo Parmense – Mirko Mancin 2013
RIFERIMENTI
• M. Banzi, Getting started with Arduino, O’Reilly, Cabridge,Beijing, 2009
• Tod E. Kurt, Bionic Arduino, MachineProject, 2007
• S. Monk, 30 Arduino Projects, McGrawHill, New York,2010
• M. Schmidt, Arduino, A Quick-Start Giude, The Pragmatic Programmers, 2011
• C. Reas and Ben Fry, Getting Started with Processing, O’Reilly, 2010
• www.arduino.cc
• http://www.maffucci.it/
• www.shiffman.net/itp
36. San Secondo Parmense – Mirko Mancin 2013
www.mancio90.it
mirkomancin90@gmail.com
RIFERIMENTI