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.
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
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
In questo workshop esploriamo le potenzialità musicali della scheda Arduino e di alcuni suoi shield, come il Wave Shield ed il Music Shield. Potete trovare il video qui: http://youtu.be/p1weY_R2r64
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.
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
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
In questo workshop esploriamo le potenzialità musicali della scheda Arduino e di alcuni suoi shield, come il Wave Shield ed il Music Shield. Potete trovare il video qui: http://youtu.be/p1weY_R2r64
Located in the heart of the Emilia Romagna region, and just a stone's throw from Parma in the renowned Food Valley, LAUMAS Elettronica has for 30 years been Italy's leader in the weighing and batching industry.
The company facility consists of 3000 square metres, integrating "green" technologies for eco-compatibility with the surrounding environment.
LAUMAS' cutting-edge equipment tests various electronic and mechanical components in order to guarantee the products' quality.
The Company has made consistent investments towards the realisation of an EMC testing laboratory.
Today, using these resources, Laumas Research & Development is able to perform every type of product control and testing required by current standards relating to electromagnetic compatibility, electrical safety and legal metrology.
• Extremely specialized personnel with a high level of know-how.
• Research and development area dedicated to designing high-tech products.
• Attention to continuous innovation in products and productive processes.
• Pre-sales support and assistance, analysis of necessities, and choice of the most appropriate products for the customer's needs.
• Goods ready for delivery, guaranteeing that your order will be dealt with quickly.
• Fast and effective post-sales technical assistance.
• Company training aimed at gaining in-depth technical knowledge of products and potential fields of application.
LAUMAS ELETTRONICA can offer an all-round weighing service that is comprised of an enormous range of weighing and batching components, and tailor-made solutions. All the products blend with each other modularly ; while their functions are quite varied, they are simple and intuitive to use, and come with complete, easily consulted manuals.
• weight transmitters ........
• weight indicators with multi-function software .......
• load cells with mounting accessories for all applications ........
• single and multi-product batching systems with formula management......
• PC supervisory software to manage and control the weighing and batching systems.
LAUMAS' products can be linked to all types of peripherals, such as printers, data recorders, data storage on pen drive usb, large digit-display , PC or PLC....... using the field devices most widely employed on the market.
There is also an enormous range of scale products marketed under our IDEA SCALES brand:
• scales,
• crane scales,
• weighing platforms
• weighing modules.
LAUMAS Elettronica is associated with numerous organizations of manufacturing recognized in Europe and around the world.
Over the years, the company has earned a large number of certifications, for both its corporate system and its products. This guarantees high-quality products, and strict control over the production process that generated them.
With its well-established experience in industrial weighing and batching, LAUMAS ELETTRONICA offers its customer a degree of security.
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.
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.
Analisi dei limiti della scheda Arduino con soluzioni tecniche per una corretta progettazione elettronica. Ruolo di Arduino nella società ed utilizzo come demoboard.
Una presentazione orientata a quanti hanno bisogno di avere una panoramica iniziale della piattaforma arduino con un approccio alla "prima faccio, poi torno su quello che ho fatto e capisco meglio" ;)
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
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
All'interno dei "LinoLab", laboratori digitali organizzati dal Centro Culturale "A. Zanussi" di Pordenone, le slide del laboratorio su Arduino. Livello principianti.
maggio 2016
Gli encoder incrementali programmabili di Lika Electronic sono sviluppati per offrire configurabilità estesa e completa customizzazione. Scoprite di più.
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
Linux Board. Corso di prototipazione rapidaMultiverso
Il corso si svolgerà Domenica 11 Maggio presso Multiverso a Firenze Via Campo D'Arrigo 42/r. Si propone, hardware alla mano, di dare dei concetti di base sulla programmazione GNU/Linux embedded volti alla prototipazione rapida.
Per info e iscrizioni: http://bit.ly/1tYABWp
Located in the heart of the Emilia Romagna region, and just a stone's throw from Parma in the renowned Food Valley, LAUMAS Elettronica has for 30 years been Italy's leader in the weighing and batching industry.
The company facility consists of 3000 square metres, integrating "green" technologies for eco-compatibility with the surrounding environment.
LAUMAS' cutting-edge equipment tests various electronic and mechanical components in order to guarantee the products' quality.
The Company has made consistent investments towards the realisation of an EMC testing laboratory.
Today, using these resources, Laumas Research & Development is able to perform every type of product control and testing required by current standards relating to electromagnetic compatibility, electrical safety and legal metrology.
• Extremely specialized personnel with a high level of know-how.
• Research and development area dedicated to designing high-tech products.
• Attention to continuous innovation in products and productive processes.
• Pre-sales support and assistance, analysis of necessities, and choice of the most appropriate products for the customer's needs.
• Goods ready for delivery, guaranteeing that your order will be dealt with quickly.
• Fast and effective post-sales technical assistance.
• Company training aimed at gaining in-depth technical knowledge of products and potential fields of application.
LAUMAS ELETTRONICA can offer an all-round weighing service that is comprised of an enormous range of weighing and batching components, and tailor-made solutions. All the products blend with each other modularly ; while their functions are quite varied, they are simple and intuitive to use, and come with complete, easily consulted manuals.
• weight transmitters ........
• weight indicators with multi-function software .......
• load cells with mounting accessories for all applications ........
• single and multi-product batching systems with formula management......
• PC supervisory software to manage and control the weighing and batching systems.
LAUMAS' products can be linked to all types of peripherals, such as printers, data recorders, data storage on pen drive usb, large digit-display , PC or PLC....... using the field devices most widely employed on the market.
There is also an enormous range of scale products marketed under our IDEA SCALES brand:
• scales,
• crane scales,
• weighing platforms
• weighing modules.
LAUMAS Elettronica is associated with numerous organizations of manufacturing recognized in Europe and around the world.
Over the years, the company has earned a large number of certifications, for both its corporate system and its products. This guarantees high-quality products, and strict control over the production process that generated them.
With its well-established experience in industrial weighing and batching, LAUMAS ELETTRONICA offers its customer a degree of security.
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.
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.
Analisi dei limiti della scheda Arduino con soluzioni tecniche per una corretta progettazione elettronica. Ruolo di Arduino nella società ed utilizzo come demoboard.
Una presentazione orientata a quanti hanno bisogno di avere una panoramica iniziale della piattaforma arduino con un approccio alla "prima faccio, poi torno su quello che ho fatto e capisco meglio" ;)
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
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
All'interno dei "LinoLab", laboratori digitali organizzati dal Centro Culturale "A. Zanussi" di Pordenone, le slide del laboratorio su Arduino. Livello principianti.
maggio 2016
Gli encoder incrementali programmabili di Lika Electronic sono sviluppati per offrire configurabilità estesa e completa customizzazione. Scoprite di più.
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
Linux Board. Corso di prototipazione rapidaMultiverso
Il corso si svolgerà Domenica 11 Maggio presso Multiverso a Firenze Via Campo D'Arrigo 42/r. Si propone, hardware alla mano, di dare dei concetti di base sulla programmazione GNU/Linux embedded volti alla prototipazione rapida.
Per info e iscrizioni: http://bit.ly/1tYABWp
Certificazione formale delle competenze computational thinking e problem solving, che AICA sta valutando con il Politecnico di Torino e la commissione ministeriale del progetto PP&S.
All'interno delle slide vedremo alcune informazioni circa il programma MSP (Microsoft Student Partners), Microsoft Azure, Microsoft Imagine (ex DreamSpark), Interent of Things (IoT) e Arduino. Utilizzeremo questi strumenti per realizzare un grafico della temperatura rilevata da Arduino per inviare i dati in cloud (SQL Database di Azure) e li elaboreremo per realizzare un grafico circa l'andamento della temperatura.
Esperienze di robotica creativa - RospinoPaolo Tosato
Presentazione corsi animatori digitali veneto 2016
Presentano: Paolo Tosato e Monica Banzato
Gruppo di Lavoro TIRE: P. Tosato, M. Banzato, F. Coin e G. Riello
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioniSalvatore Lentini
In questo talk viene analizzata una semplice backdoor realizzata in Python. Il talk procede con l'explotation di una macchina Windows 7 tramite un attacco di Pishing e subito dopo con l'installazione di una backdoor persistence facendo vedere alcune delle funzionalità offerte. Il talk si conclude invitando l'utente a nascondere la propria webcam sensibilizzandolo sull'argomento. Il motivo per cui ho scelto di parlare di questo argomento, ha a che fare con le differenze che sorgono tra software open e software close, dato che nel primo è possibile tramite la lettura e comprensione del codice capire se il sistema ha routine di codice che si comportano come backdoor mentre nel secondo non sappiamo se ne esistono (data l'impossibilità di leggere il codice sorgente) e quindi dal momento che la sicurezza non si è mai basata sulla fiducia del produttore, è importante prevenire (mettendo delle etichette di plastica sulle nostre webcam).
Lie to me - Riconoscimento delle espressioni by G. MannoGabriele Manno
Presentazione del lavoro di tesi, che ha come obiettivo il riconoscimento delle espressioni tramite software.
Partendo dagli studi antropomorfi di Charles Darwin fino a Paul Ekman, questo elaborato schematizza i concetti cardine utilizzati nell'individuazione delle espressioni in real-time tramite software, determinandone la veridicità o la mistificazione.
Consigli su come sviluppare e rilasciare App di Qualità:
1 portare utenti finali nel progetto di sviluppo, 2 elementi da considerare in fase di testing, 3 progettare un'interaction design di successo, 4 dall'idea all'app di successo, 5 azzerare il tasso di abbandono.
Introduzione all’Iot e alle schede elettronicheEnrico La Sala
Una breve introduzione all'IOT e delle risorse che possono essere utili a cominciare con i primi progetti con schede elettroniche come Arduino, Raspberry, ecc.
La programmazione e' il linguaggio delle cose.
Queste slide introducono i concetti che stanno alla base della programmazione e spiegano l'importanza del pensiero computazionale.
Sono state create contestualmente alle prime iniziative di alfabetizzazione lanciate nel 2013 in America e in Europa da Code.org e dalla Commissione Europea, in occasione della creazione della comunità di apprendimento denominata "Code's cool" (http://codescool.net/).
Possono essere usate come breve introduzione motivazionale a corsi e seminari di avvicinamento alla programmazione. Sono adatte a qualsiasi pubblico dalle elementari in su.
E' possibile ascoltare i miei commenti su YouTube a questo indirizzo: http://youtu.be/AEXF33EgH0w
Lezione sul "Pensiero Computazionale" con Scratch, presentata il 14 febbraio 2015 al corso per insegnanti di scuola primaria e secondaria organizzato nell'ambito del progetto "CoderDojo Palermo".
Catalogo Ricambi per materiale Elettrico della ditta Tamarri SpA, leader nel settore Ricambi per Carrelli Elevatori.
Nel catalogo troverete:
- Elettrovalvole
- Elettro Freni
- Connettori Batteria
- Teleruttori
- Potenziometri Tyristor
e molti altri accessori utili per la tua Officina di Riparazione Meccanica.
Teleoperating a robotic arm through a gyroscopic helmetFrancesco Corucci
I worked on this project for a Real Time Systems class. It is basically a pointing device, based on a gyroscopic helmet controlling a little robotic arm. The hardware consists of Evidence FLEX boards running a Real-Time OS called Erika Enterprise (Open Source RTOS for single- and multi-core applications)
Tesi di Laurea Danilo Lo Presti: CONTROLLO REMOTO DI APPARATI DELL'ESPERIMENT...Cristian Randieri PhD
Nel corso degli anni compresi tra il 1970 e il 1995 sono stati realizzati fasci di fotoni di energia sino a 1.5 GeV, etichettati e polarizzati, prodotti dalla deflessione a 180° della luce di un laser da parte degli elettroni di alta energia, sino a 6 GeV, di un anello di accumulazione.
Il primo di tali fasci è stato il Ladon [1], dal nome del fiume nella mitologia greca, realizzato sull’anello di accumulazione ADONE (grande Anello Di Accumulazione), a Frascati; l’esperimento ha subito un successivo perfezionamento con la realizzazione sullo stesso anello del fascio TALADON [2] (TAgged LADON). Il secondo è stato il fascio Light Electron Gamma Source [3] , sull’anello NSLS (National Synchrotron Light Source), a Brookhaven (USA). Infine il terzo è il fascio GRAAL (GRenoble Anneau Accelerateur Laser), sull’anello ESRF (European Synchrotron Radiation Facility), a Grenoble. Occorre ancora ricordare, per completezza di trattazione che sono stati realizzati a Novosibirsk anche altri fasci polarizzati: ROKK-2 avente un’energia massima di 149 MeV e ROKK-4 con un’energia massima di 900 MeV.
Come verrà esposto in modo più dettagliato nel primo capitolo, il procedimento consiste nel far incidere a 180° la luce polarizzata di un raggio laser (avente energia di pochi elettronVolt) sugli elettroni ultrarelativistici di un anello di accumulazione: in tal modo i fotoni, diffusi all’indietro per effetto Compton, acquistano un’energia che può andare da decine di MeV a qualche GeV, in funzione dell’energia degli elettroni urtati, dell’angolo di diffusione e della lunghezza d’onda del laser adoperato. I fotoni diffusi sono distribuiti,pertanto, secondo un certo spettro di energia e hanno energia massima quando sono emessi ad un angolo di 0° rispetto alla direzione degli elettroni incidenti.
All’interno dell’anello ADONE, per esempio, sono accumulati elettroni di 1.5 Gev e i γ diffusi dall’urto possono avere un’energia massima di 80 MeV. Gli elettroni di NSLS hanno energia di 2.5 Gev e il fascio LEGS prodotto può giungere fino a 320 MeV. Infine l’anello ESRF di Grenoble, avente elettroni circolanti da 6 Gev, permette la produzione di γ aventi energia massima Emax=1500 MeV.Nel capitolo 2 saranno descritte le caratteristiche e le utilità del fascio GRAAL partendo dalle nozioni di diffusione Compton inversa per arrivare al suo programma di fisica. Nei capitoli successivi si valorizzeranno gli aspetti riguardanti essenzialmente le applicazioni ed i vantaggi delle tecniche di telecontrollo remoto, con applicazione alle attrezzature usate per la produzione del fascio GRAAL.
Nel capitolo 3 analizzeremo alcune di queste tecnologie che possono avere come componenti i PLC e i sistemi embedded. Soffermandoci su questi ultimi accenneremo all’ utilizzo delle reti Ethernet basate sull’IP e al più diffuso dei suoi protocolli di trasporto: il TCP, alla base di tutti i sistemi di controllo remoto che saranno analizzati...
CONTROLLO REMOTO DI APPARATI DELL'ESPERIMENTO GRAAL - Tesi di Laurea Danilo L...Cristian Randieri PhD
Nel corso degli anni compresi tra il 1970 e il 1995 sono stati realizzati fasci di fotoni di
energia sino a 1.5 GeV, etichettati e polarizzati, prodotti dalla deflessione a 180° della luce
di un laser da parte degli elettroni di alta energia, sino a 6 GeV, di un anello di
accumulazione.
Il primo di tali fasci è stato il Ladon [1], dal nome del fiume nella mitologia greca,
realizzato sull’anello di accumulazione ADONE (grande Anello Di Accumulazione), a
Frascati....
Il successo quasi senza confini di questa scheda ha coinvolto tutti. Ogni genere di smanettone, studioso, appassionato, dall'ingegnere fino al meccanico. Tutti si sono più o meno cimentati in progetti di difficoltà molto diverse tra loro per utilizzare al meglio questa scheda. Purtroppo, però, per farne uno strumento professionale, industrialmente affidabile, la strada è ancora davvero lunga. Oggi vediamo quali sono le carenze di questa scheda e come si possono risolvere alcuni dei suoi problemi con qualche piccolo stratagemma o accorgimento pensato su misura. Analizzeremo nello specifico (e risolveremo) vari problemi legati all'alimentazione, alla protezione degli I/O ed alla precisione dei segnali quando gestiti dalle periferiche. Non solo per makers
http://bit.ly/arduinopro
4. 1. Un po’ di
ripasso...................................................................
........
Arduino è una piattaforma di prototipazione elettronica
open-source che si basa su hardware e software flessibili e facile da
usare.
E’ stata creata per artisti, designer, makers e chiunque sia interessato a
creare oggetti o ambienti interattivi
5. 1. Un po’ di
ripasso...................................................................
........
Perché usare Arduino?
. Economico
. Cross-Platform
. Ambiente di sviluppo semplice e chiaro
. Software open-source ed estendibile
. Hardware open-source ed estendibile
6. 1. Un po’ di
ripasso...................................................................
........
Come alimentare Arduino?
. Porta USB
. Alimentatore esterno
. Batteria
N.B. La piattaforma può operare con una tensione esterna tra 6-20Vcc.
E’ consigliabile usare un’alimentazione compresa tra i 7 e 12Vcc.
7. 1. Un po’ di
ripasso...................................................................
........
POWER PIN
. Vin = pin per alimentare Arduino con batteria esterna
. 5V = pin che fornisce in uscita una tensione di 5V stabilizzata
. 3V3 = pin che fornisce in uscita una tensione di 3.3V (Imax=50mA)
. GND = Ground pin
. IOREF = pin che fornisce in uscita la tensione di lavoro di Arduino
. RESET = fornendo in ingresso il valore LOW resetta il microcontrollore
(quella con la quale stiamo alimentando).
Uno Shield correttamente progettato è in grado di leggere il riferimento IOREF e
scegliere la tensione di lavoro (5V o 3.3V)
8. 1. Un po’ di
ripasso...................................................................
........
INPUT OUTPUT DIGITAL PIN
. Ognuno dei 14 PIN Digitali può essere utilizzato sia come input
. Essi operano a 5V ed ogni pin fornisce in uscita una corrente
Inoltre alcuni pin hanno delle funzioni speciali:
. SERIAL: (0)RX (1)TX utilizzati per la comunicazione TTL Serial
. EXTERNAL INTERRUPTS: 2 e 3 possono essere configurati per
. PWM: 3, 5, 6, 9, 10, 11 forniscono un’uscita PWM a 8-bit
. SPI: 10, 11, 12, 13, che permettono la comunicazione SPI
. LED: 13, c’è un led sulla piattaforma collegato al pin 13 che si
che output.
massima di 40mA.
ricevere un interrupt dall’esterno.
accende ogni qualvolta l’uscita 13 è alta (5V).
9. 1. Un po’ di
ripasso...................................................................
........
HOW TO SET DIGITAL PIN
La modalità di uscita o di ingresso dei pin digitali (da 0 a 13) viene stabilita dalle
seguenti istruzioni, dove alla variabile X va sostituito il numero che
contraddistingue il pin sulla scheda:
pinMode (X,OUTPUT) ; es. pinMode(3,OUTPUT) pin3 settato come uscita
pinMode (X,INPUT); es. pinMode(8,INPUT) pin8 settato come ingresso
Se il pin X è impostato come uscita, per settarlo a ‘1’ o a ‘0’ si utilizzano le
seguenti istruzioni:
digitalWrite(x,HIGH);
digitalWrite(x,LOW);
Per leggere il livello di un ingresso, si utilizza la seguente istruzione che
trasferisce alla variabile ‘val’ i valori HIGH o LOW:
Val=digitalRead(x);
10. 1. Un po’ di
ripasso...................................................................
........
DIGITAL PIN: PWM
Pulse Width Modulation è una tecnica utilizzata per la generazione di un
segnale analogico utilizzando un uscita digitale.
Variando la lunghezza dell’impulso si possono generare dei valori analogici da 0
a Vcc (5V per Arduino).
Il duty-cycle è il rapporto tra il periodo dell’impulso al valore logico alto sul
periodo in percentuale.
La frequenza di lavoro del PWM di Arduino è circa 470Hz.
Pilotando un led con questa tecnica si possono far assumere diverse gradazioni
di luminosità, l’occhio non percepisce il continuo on/off ma un livello differente
di luminosità.
11. 1. Un po’ di
ripasso...................................................................
........
HOW TO SET PWM OUTPUT
I pin 3,5,6,9,10,11, sono in grado di fornire uscite PWM, ossia onde quadre con
duty cicle regolabile, tramite l’istruzione:
analogWrite( X,valore) ;
Dove valore è un numero compreso tra 0 e 255 cui corrisponde un duty cicle da
0 al 100%
analogWrite( 3,127) ; genera sul pin 3 un’onda quadra con D.C. del 50%
analogWrite( 5,63); genera sul pin 5 un’onda quadra con D.C. del 25%
analogWrite( 3,191); genera sul pin 3 un’onda quadra con D.C. del 75%
12. 1. Un po’ di
ripasso...................................................................
........
ANALOG INPUT PIN
Arduino ha inoltre 6 ingressi analogici (A0…A5) ognuno dei quali ha una
risoluzione a 10bit (cioè riconosce 2^10 = 1024 intervalli di tensione differenti).
Il convertittore analogico-digitale (ADC) interno di Aduino è settato di default
per acquisire valori tra 0 e 5V.
Questo vuol dire che l’intervallo di 5V sarà diviso in 1024 intervalli.
E se volessimo acquisire un segnale tra 0 e 3,3V?
Parte dei livelli di quantizzazione sarebbero inutili.
Per tale motivo è presente il pin 21 detto AREF, col quale per mezzo di una
apposita funzione che non approfondiremo, si può
fissare il valore di riferimento (il valore massimo) per l’ADC.
13. 1. Un po’ di
ripasso...................................................................
........
ANALOG INPUT PIN
L’istruzione che compie la lettura di un ingresso analogico (tra 0 e 5V) e di
convertirlo in un numero compreso tra 0 e 1023 assegnadolo ad una variabile
val, è la seguente:
Val=analogRead(x); con x compreso tra 0 e 5
Per cui se Vin=5V sarà val=1023
se Vin=2,5V sarà val=511
se Vin=1V sarà val=205
Un altro pin molto utile è il RESET.
Questo pin, se posto a 0, permette di resettare lo stato dell’arduino.
14. 1. Un po’ di
ripasso...................................................................
........
RIASSUMENDO….
• Digital
Due livelli 0-1(basso e alto)
• Analog
Misura la tensione (0-1023)
• Digital PWM
Simula l’analogica (0-254)
15. ........................................................................... AVVERTENZE
10 METODI CERTI PER DISTRUGGERE ARDUINO
1. Cortocircuitare pin I/O a terra.
2. Connettere pin I/O tra loro.
3. Applicare tensioni troppo alte sugli I/O.
4. Applicate tensione su Vin, ma a polarità inversa.
5. Applicare più di 5V sul pin 5V.
6. Applicare più di 3.3V sul pin 3.3V.
7. Cortocircuitare Vin a GND.
8. Applicare > 13V sul pin di reset.
9. Applicare tensione a 5V e caricare da Vin.
10. Eccedere la corrente totale del microcontrollore (200mA).
18. 2. Sensori e
componenti.........................................................
.................. I DIODI LED
Sfruttano la proprietà di alcuni semiconduttori di emettere fotoni
(solitamente giunzioni p/n) grazie all’effetto noto come emissione
spontanea.
I più comuni hanno due terminali: anodo e catodo.
Solitamente l’anodo è più lungo del catodo oppure il catodo
presenta una piegatura.
Per il collegamento:
• Anodo al polo positivo
• Catodo al polo negativo
• Resistenza in serie all’alimentazione(limita la corrente in ingresso al led)
Vled è la caduta di tensione nel led stesso che è proporzionale alla frequenza emessa.
Calcolo della resistenza: R = (V-Vled)/I
19. 2. Sensori e
componenti.........................................................
.................. I DIODI LED
Valori nominali
• LED rosso = 1,6V
• LED giallo = 2,2V
• LED verde = 2,4V
• LED bianco = 3,0V (warm or sunny)
• LED bianco(cold) o blu = 3,5V
Valori standard
I valori di corrente sono intorno ai 10/15mA
Esempio (LED rosso)
R = (V--‐Vled)/I = (5--‐1,6)/0,016 = 218.77 Ohm
= 220 Ohm (standard)
20. 2. Sensori e
componenti.........................................................
.................. PULSANTI
I pulsanti permettono il passaggio o l’interruzione della corrente.
Questo dispositivo, dopo il rilascio, ritorna nella posizione iniziale che aveva
prima della sua pressione.
Esistono due differenti tipi:
Normalmente aperto
Normalmente chiuso
I pulsanti si definiscono chiusi (resistenza tra i suoi due terminali < 1 ohm =
cortocircuito) quando consentono il passaggio di corrente.
Invece se il passaggio è interdetto si definiscono aperti
( resistenza > 10 Mohm).
22. 2. Sensori e
componenti.........................................................
.................. PULSANTI – EFFETTO BOUNCING/DEBOUNCING
Come si può risolvere questo problema?
Via software (bloccante): quando rileviamo lo stato che vogliamo, inseriamo
un delay successivo per evitare i contatti dopo (5ms dovrebbero bastare).
Via software (non bloccante): ad ogni giro del loop, se il bottone è nello
stato “attivo” incrementiamo un contatore, se è nello stato “a riposo” lo
mettiamo a zero. Impostiamo una soglia a quel contatore oltre cui il bottone
è considerato premuto.
Via hardware: con un filtro passa basso (con R=100k e C = 47nF,
= R×C = 4.7ms)
23. 2. Sensori e
componenti.........................................................
..................
POTENZIOMETRI
Il potenziometro è un dispositivo con un contatto strisciante sulla reistenza
interna.
Permette la variazione della tensione letta in uscita (attuato manualmente).
Applicazioni:
Joystick, robot, interruttori etc..
E’ caratterizzato da tre terminali ed una manopola, i terminali più esterni
vanno connessi all’alimentazione (+ e - intercambili) mentre da quello
centrale è possibile leggere la tensione che varia ruotando la manopola.
24. 2. Sensori e
componenti.........................................................
..................
RESISTENZE
La resistenza ( o resistore che dir si voglia) è un componente fondamentale
per qualsiasi circuito elettrico ;
limita il passaggio della corrente opponendo una certa resistenza il cui
valore viene espresso in ohm.
Per calcolare la resistenza da applicare al nostro circuito bisogna utilizzare la
prima legge di ohm :
I=V/R
in cui I è l’ intensità di corrente in ohm, V è la differenza di potenziale in Volt
e R è la resistenza espressa in ohm.
Quindi per trovare la resistenza basta invertire la formula ottenendo :
R= V/I
25. 2. Sensori e
componenti.........................................................
..................
RESISTENZE: COME LEGGERLE?
Normalmente le resistenze sono caratterizzate da 4 strisce colorate:
per conoscere l’ordinamento delle strisce si guarda dove si trova quella che
dista di più dalle altre (che nell’ordinamento sarà l’ultima)
Significato dato dall’ordine:
• 1a e 2a: valore numerico
• 3a: moltiplicatore (normalmente in ohm)
• 4a: tolleranza (percentuale)
NOTA: Esistono anche resistenze a 6 strisce dette di precisione il loro
significato è lo stesso di quelle presentate solo che anche la 3° è un valore
numerico, la 4° il moltiplicatore ,la 5° la tolleranza e la 6° la variazione di
tolleranza a seconda della temperatura.
27. 2. Sensori e
componenti.........................................................
..................
ALTRI SENSORI
I sensori possono essere classificati in base al loro principio di
funzionamento oppure al tipo di segnale in uscita, ma più comunemente
vengono classificati in base al tipo di grandezza fisica che misurano,
esempio:
sensori di luce: fotocellule, fotodiodi, fototransistor
sensori di suono: microfoni, idrofoni, altoparlanti
sensori di accelerazione: accelerometri, sensori sismici
sensori di temperatura: termometri, termocoppie
sensori di calore: bolometri, calorimetri
sensori di corrente: galvanometri, amperometri
sensori di tensione: elettroscopio, voltmetri
sensori di potenza: wattmetri
sensori di pressione: barometri, pressostati, altimetri
sensori di gas e flusso di liquidi: flussimetri, pluviometri
sensori di movimento: radar, tachimetri, sensori PIR
sensori di forza: celle di carico, estensimetri
28. STRUTTURA DEL PROGRAMMA
La struttura base del linguaggio di programmazione di Arduino si sviluppa
sulla definizione di due funzioni:
void setup() e void loop().
Queste due funzioni racchiuderanno le necessarie impostazioni per il
funzionamento dei dispositivi collegati con Arduino e i blocchi di istruzioni
per svolgere quanto richiesto.
3. Funzioni, Strutture di controllo, variabili e
costanti...........................................................................
29. FUNZIONI
Una funzione è un blocco di codice che viene eseguito nel momento in cui
essa viene chiamata.
void setup( )
La funzione setup( ) è la prima ad essere chiamata quando parte uno sketch
o dopo ogni accensione o reset di Arduino.
Viene utilizzata per inizializzare variabili, per impostare lo stato dei pin, per
far partire le librerie da usare, per l'impostazione delle comunicazioni seriali.
Questa funzione viene eseguita una sola volta.
void loop( )
La funzione loop() fa proprio quanto suggerisce il proprio nome eseguendo
ciclicamente il programma definito al suo interno.
Permette l'esecuzione del programma, interagisce con la scheda Arduino.
3. Funzioni, Strutture di controllo, variabili e
costanti...........................................................................
30. 3. Funzioni, Strutture di controllo, variabili e
costanti...........................................................................STRUTTURE DI CONTROLLO
Le strutture di controllo sono una serie di istruzioni utili a controllare i valori
impostati ed ad agire in base ad essi.
Possono essere:
If…else
Permette di prendere delle decisioni all’interno del programma, ma deve
essere seguito da una domanda sotto forma di espressione tra parentesi.
Se la domanda è vera tutto ciò che segue verrà eseguito. Se falso verrà
eseguito tutto il codice che segue else. If è possibile usarlo senza usare
necessariamente else.
31. 3. Funzioni, Strutture di controllo, variabili e
costanti...........................................................................STRUTTURE DI CONTROLLO
For
Ripete il codice per un numero predefinito di volte.
Switch
E’ come un interruttore nel corso del programma.
Fa prendere al programma diverse direzioni in base al valore della variabile
(il suo nome deve essere messo tra parentesi dopo switch).
E’ utile perché può sostituire lunghe serie di if.
Ci sono poi altre strutture che qui, per il momento,
non tratteremo…
32. VARIABILI
Le variabili permettono di assegnare un nome e memorizzare un valore
numerico da utilizzare per scopi successivi nel corso del programma.
Le variabili sono numeri che possono cambiare a differenza delle costanti
che invece non possono mai cambiare.
Tutte le variabili devono essere dichiarate prima del loro utilizzo.
Dichiarare una variabile significa definire il tipo di valore, come ad es. int,
float, long, assegnarle un nome e assegnarle opzionalmente un valore
iniziale.
Il valore della variabile può essere cambiato in ogni momento si necessita
mediante operazioni aritmetiche o altri diversi tipi di assegnamenti.
3. Funzioni, Strutture di controllo, variabili e
costanti...........................................................................
33. VARIABILI
Le variabili possono essere di vari tipi:
Variabili globali
Sono variabili che possono essere viste e usate da ogni istruzione e funzione del
programma; nell'ambiente di sviluppo di Arduino, ogni variabile dichiarata al di fuori
di una funzione (come ad es. setup(),loop(),..) è una variabile globale.
Variabili locali
Esse sono visibili solo dalle funzioni entro cui sono dichiarate o all'interno di funzioni o
cicli dove vengono definite.
È possibile avere due o più variabili locali che hanno lo stesso nome ma in differenti
parti del programma, che contengono valori differenti. Bisogna essere sicuri che solo
una funzione abbia accesso alla variabile in modo da ridurre la probabilità di errore
della scrittura del codice.
3. Funzioni, Strutture di controllo, variabili e
costanti...........................................................................
34. VARIABILI
Le variabili possono essere di vari tipi:
Variabili Statiche
La parola chiave Static viene utilizzata per creare una variabile che è visibile solo da
una funzione.
Diversamente dalla variabile locale, che viene creata e distrutta ogni volta che una
funzione la chiama, la variabile Static persiste all'interno della funzione che la chiama,
mantenendo il proprio dato all'interno della funzione chiamante.
Le variabili dichiarate come statiche saranno definite ed inizializzate solo la prima
volta che una funzione è chiamata.
3. Funzioni, Strutture di controllo, variabili e
costanti...........................................................................
35. COSTANTI
Le costanti sono variabili predefinite nel linguaggio per Arduino e vengono
utilizzate per rendere il programma più semplice da leggere.
Le costanti sono classificate in diversi gruppi:
Costanti booleane ( true, false)
Costanti INPUT, OUTPUT
Costanti HIGH, LOW
3. Funzioni, Strutture di controllo, variabili e
costanti...........................................................................
36. 4. Comandi
seriali.....................................................................
......
COMUNICAZIONE SERIALE
Tutte le schede Arduino hanno almeno una porta seriale (conosciuta come
UART o USART) e gestite tramite Serial.
Essa comunica con i pin digitali 0 (RX) e 1(TX) alla stessa maniera con cui
comunica con il computer via USB (e infatti la porta Usb è collegata a questi
pin).
Se si stanno utilizzando le funzioni legate a Serial, non si possono usare i pin
0 e 1 per gli I/O digitali.
Si può utilizzare il “monitor seriale” dell’IDE di Arduino per comunicare con
la scheda, selezionando la stessa velocità in baud (bit al secondo) utilizzato
nella chiamata di begin().
Non connettere questi pin direttamente con la porta seriale RS232 del
computer; quest’ultima opera a +/- 12V contro i 0/5 V sui pin 0 e 1 e può
danneggiare la scheda Arduino.
37. 4. Comandi
seriali.....................................................................
......
COMUNICAZIONE SERIALE – SERIAL MONITOR
E’ uno strumento che permette di visualizzare i dati provenienti dalla board
Arduino e i dati che verranno comunicati per via seriale alla board.
In particolare per comunicare con la nostra board attraverso la porta seriale
si può scrivere del testo (che si può visualizzare sul Serial Monitor ) e poi
premere invio.
Per utilizzare Il Serial monitor è necessario inizializzarlo nel void setup ( ) con
la funzione Serial.begin(baud rate), indicando il baud rate con il quale
comunicare con il nostro Arduino.
38. 4. Comandi
seriali.....................................................................
......
COMUNICAZIONE SERIALE
Queste sono le funzione seriali cioè quelle funzioni che Arduino usa per
comunicare tramite la porta Usb del nostro Pc.
Si utilizza la libreria ‘Serial’ che è già presente all’interno di Arduino.
Serial.begin(speed) - Prepara Arduino a mandare e a ricevere dati tramite porta seriale.
Possiamo usare generalmente 9600 bits per secondo con la porta seriale dell’Arduino, ma sono
disponibili anche altre velocità, di solito non si supera i 115.200 bps.
Serial.begin(9600);
Serial.print(data) - Invia valori alla porta seriale.
Serial.print(‘’data’’) - Invia il testo ‘’data’’ alla porta seriale.
Serial.println(data) - Invia il valore alla porta seriale e va a capo.
42. 4. Comandi
seriali.....................................................................
......
COMUNICAZIONE SERIALE
Serial.write(valore) ;
Serial.write(stringa) ;
Serial.write(buf,len) ;
Scrive i dati binari sulla porta seriale.
Questi dati sono inviati come byte o serie di byte; per inviare i
caratteri rappresentati le cifre di un numero usare invece la
funzione print().
Il parametro ‘valore’ è il valore da trasmettere come singolo byte;
il parametro ‘stringa’ è una stringa da spedire come serie di byte;
il parametro ‘buf’ è un array da spedire come serie di byte;
il parametro ‘len’ rappresenta la lunghezza dell’Array, ossia il N° di byte che lo compongono.
47. 5. Librerie: cosa
servono?...............................................................
............
LIBRERIE PERSONALI
Le librerie personali sono sostanzialmente composte da due file:
. File header (con estensione .h): contiene le definizioni della libreria.
. File sorgente (con estensione .cpp): contiene il codice sorgente dei
metodi della libreria.
Se si vuole che l’IDE identifichi le ‘definizioni’ dobbiamo creare anche il file
keyworks.txt.
Fare riferimento alla guida ufficiale per capire come costruire le librerie.
http://arduino.cc/en/Hacking/LibraryTutorial
48. 6. Display
LCD.........................................................................
..
DISPLAY LCD ( Hitachi HD44780)
I display LCD sono dei dispositivi in grado di visualizzare caratteri (LCD
alfanumerici) o ‘’disegni’’ (LCD grafici).
Come funzionano
Di LCD ce ne sono vari tipi, prenderemo in esempio LCD da 16x2
(16 caratteri per 2 file), con 16 pin di collegamento.
I dispaly di questo tipo possono essere pilotati con 4 o 8 bit, solitamente
essi sono pilotati con 4 bit risparmiando pin di Arduino da destinare ad altri
scopi.
La differenza tra una modalità e l’altra è la velocità di trasferimento
dell’informazione al display.
50. 6. Display
LCD.........................................................................
..
DISPLAY LCD ( Hitachi HD44780)DISPLAY LCD ( Hitachi HD44780)
Pin 1: Vss – collegato al GND
Pin 2: VDD – collegato a +5V
Pin 3: V0 – controllo del contrasto dei caratteri. In genere viene
collegato ad un potenziometro o trimmer in modo che
si possa applicare sul Pin 3 una tensione che varia da
0 a +5V e al variare della tensione varia il contrasto.
Pin 4: RS segnale di selezione registro – per selezionare il
registro nel quale registrare ciò che appare sul display
oppure selezionare il registro di funzionamento in cui
viene memorizzata di volta in volta l’istruzione da
eseguire per il funzionamento dell’LCD
51. 6. Display
LCD.........................................................................
..
DISPLAY LCD ( Hitachi HD44780)DISPLAY LCD ( Hitachi HD44780)
Pin 5: segnale Read/Write – per selezionare la modalità di
funzionamento: lettura/scrittura – collegato a GND
Pin 6: segnale Enable (E) – per abilitare la scrittura nei registri
Pin 7 al Pin 14: linee dati che si inviano o si ricevono dai registri
del display.
Pin 15: A (Anodo) – piedino a cui collegare una tensione positiva
(nel caso del display descritto +4,2V) che
serve per la retroilluminazione del display.
Pin 16: K (Catodo) – piedino da collegare a GND per consentire
la retroilluminazione.
52. 6. Display
LCD.........................................................................
..
DISPLAY LCD ( Hitachi HD44780)
Per utilizzare il dispositivo con arduino bisogna utilizzare la libreria
LiquidCrystal.h.
I comandi principali sono:
LiquidCrystal (d4, d5, d6, d7)
Con questa istruzione definiamo i pin connessi ad Arduino.
ES: LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
begin(#Colonne, #righe);
Definiamo il n° di righe e di colonne del nostro display.
ES: lcd.begin(16,2);
clear();
Questa istruzione pulisce il display dai caratteri scritti prima
ES: lcd.clear();
53. 6. Display
LCD.........................................................................
..
DISPLAY LCD ( Hitachi HD44780)
setCursor(#colonne,#righe);
Setta il cursore nella posizione che vogliamo, quindi dopo questa istruzione
inizieremo a scrivere in un dato punto del display.
Es:lcd.setcursor(0,0); Equivalente di home.
print(data);
Si usa per scrivere sul display, può essere usata anche con la sintassi
print(data,base); in cui se data è esadecimale, base sarà 16, binario base 2
ecc ecc. Data può essere un int, byte, long int, char oppure string.
ES: lcd.print("hello world");
54. 7. Motori
SERVO....................................................................
.......
SERVO COMANDI
I Servo comandi( più comunemente motori servo) sono degli attuatori con
controllo di posizione integrato.
Da cosa sono composti
• Motore DC
• Potenziometro
• Riduttore di giri
• Elettronica di controllo
Come funzionano
Comandati in tensione (ingresso segnale analogico o PWM) a seconda del
valore in ingresso si posizionano ad un angolo preciso. L’elettronica interna è
necessaria per fermare il motore quando ha raggiunto l’angolo (controllo
lineare).
E’ presente una “mappatura” tra valori di tensione ed angoli che dipende
dalle specifiche del servocomando.
56. 7. Motori
SERVO....................................................................
.......
SERVO COMANDI
Questa classe ti mette a disposizione alcuni metodi che semplificano di
molto l’obiettivo:
attach(): permette di specificare su quale pin è connesso il nostro servo e
legarlo all’oggetto Servo.
attached(): controlla che un oggetto di tipo Servo sia collegata ad un pin;
detach(): rimuove il collegamento tra l’oggetto Servo e il pin a cui era legata.
57. 7. Motori
SERVO....................................................................
.......
SERVO COMANDI
read(): legge la posizione angolare del nostro servo, restituisce l’ultimo
valore passato con write().
write(): impartisce al servo l’angolo a cui posizionarsi, su servo a rotazione
continua imposta la velocità di rotazione 0=velocità massima in un senso,
90=fermo, 180=velocià massima nella direzione inversa.
writeMicroseconds(): imposta la velocità di rotazione del servo, in un servo
standard il valore va da 1000 a 2000, in un servo a rotazione continua si
comporta allo stesso modo della write().
63. 9. E’ ora di far
pratica...................................................................
........
DISPLAY LCD – Esercizio 1
64. 9. E’ ora di far
pratica...................................................................
........
DISPLAY LCD – Esercizio 1
Il primo esercizio consiste nel far apparire una scritta sul display. Nel nostro
caso:
Make FabLab!
65. 9. E’ ora di far
pratica...................................................................
........
DISPLAY LCD – Esercizio 2
Il secondo esercizio consiste nel far apparire una scritta sul display facendola
scorrere verso sinistra. Nel nostro caso:
Benvenuti al FabLab!
NB. Il circuito è sempre lo stesso.
66. 9. E’ ora di far
pratica...................................................................
........
DISPLAY LCD – Esercizio 3
Il secondo esercizio consiste nel far apparire una scritta sul display facendola
scorrere verso sinistra e poi verso destra . Nel nostro caso:
Super FabLab!
NB. Il circuito è sempre lo stesso.
67. 9. E’ ora di far
pratica...................................................................
........
SERVO – Esercizio 1
68. 9. E’ ora di far
pratica...................................................................
........
SERVO – Esercizio 1
In questo esempio vedremo il servomotore compiere
una rotazione da 0 a 180°e viceversa.
Con l’istruzione Servo myservo;
dichiariamo un oggetto di tipo Servo, e lo chiamiamo
myservo.
Invece per indicare a quale pin è collegato l’oggetto
myservo usiamo la funzione attach(),
di cui possiamo vedere la sintassi all’interno del void
setup().
Per pilotare il servo usiamo la funzione
myservo.write(pos) dove con pos si indica la
posizione in gradi.
69. 9. E’ ora di far
pratica...................................................................
........
SERVO – Esercizio 2
70. 9. E’ ora di far
pratica...................................................................
........
SERVO – Esercizio 2
Nel secondo esempio comanderemo la rotazione di
un servomotore con un potenziometro o trimmer.
71. 9. E’ ora di far
pratica...................................................................
........
IR – Esercizio 1
In questo esercizio eseguiamo una decodifica del
codice di un telecomando.
Fare riferimento all’esercizio presente sulla usb
Decodifica_Codice.ino
72. 9. E’ ora di far
pratica...................................................................
........
IR – Esercizio 2
Nell’esercizio 2 utiliziamo il codice del telecomando
per comandare dei dispositivi.
Come base di partenza far riferimento allo sketch:
IR_Remote.ino
74. 11.
CONTATTI.............................................................
.............. Per qualsiasi dubbio o richiesta non esitate a contattarci!
info@fablabalessandria.it
www.fablabalessandria.it
http://www.facebook.com/search/top/?q=fablab%20alessandria
Oppure contattatemi personalmente su facebook:
Flaviano Fior
Trovate le slide e altro sul mio profilo slide share:
http://www.slideshare.net/FlavianoFior