INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf ·...

55
INTERAZIONE ELETTRONICA Andrea Rocchini [email protected] Marco Morani [email protected] 08 Febbraio 2018

Transcript of INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf ·...

Page 1: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICA

Andrea Rocchini

[email protected]

Marco Morani

[email protected]

08 Febbraio 2018

Page 2: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAIntroduzione

Obiettivi:

● Utilizzare il microcontroller Arduino interfacciato al computer

● Applicare Arduino alla prototipazione rapida per creare oggetti e

progetti interattivi originali completi di circuiti elettronici

Page 3: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAIntroduzione

Lezione 1:

● Introduzione al concetto di embedded e di meccatronica● L'hardware di Arduino UNO ● Introduzione, Versioni, Shields, Tipi di ingreso e uscite, Alimentazione,

Cosa NON fare

● Attuatori analogici e digitali : motori a corrente continua e passo-passo● I sensori

Page 4: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAPunto d'incontro tra mondo professionale e makers

“fai da te” ma soprattutto “facciamo insieme”.

Page 5: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi General porpuse e sistemi embedded

● Computer di uso comune come pc desktop o notebook

● Sistemi custom, progettati appositamente per essere inseriti all'interno di un oggetto per controllo o comunicazione.

Page 6: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded

Diffusione capillare: ● Aziende manifatturiere (impianti produttivi, robot..)

● Beni nell'elettronica di consumo.(elettrodomestici, sistemi d'allarme, domotica, IoT..)

● Veicoli (auto, aerei, treni..)

● Telecomunicazioni (centrali telefoniche ed apparecchi..)

● Sitemi per la protezione del territorio

● Strumenti biomedicali

Page 7: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded

Caratteristiche: ● Reattivi (non elaborativi)

● Limitato accesso all'utente

● Capacità di reagire rapidamente (real time)

● Sicurezza (esegue le azioni richieste)

● Affidabilità (robustezza del sistema ai guasti)

Page 8: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Livelli di astrazione

LIVELLO FUNZIONALE:

Il sistema è descritto da un insieme di elementi primitivi definiti da caratteristiche di comportamento o funzionali (processori, memorie, ...).

LIVELLO REGISTRO:

Il sistema è descritto da un insieme di elementi logici di alto livello (elementi di memoria o registri, unità funzionali, ...).

LIVELLO FISICO-TECNOLOGICO:

Progetto esecutivo che consente la realizzazione tecnologica

LIVELLO ELETTRONICO:

Gli elementi primitivi sono i componenti elettronici

LIVELLO PORTA o LOGICO:

Il sistema è descritto da un insieme di elementi primitivi definiti dal loro comportamento in logica booleana

Page 9: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Schema tipico a livello funzionale

Page 10: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded - Microprocessore

Generalmente monolitico, racchiude in piccole dimensioni una GPU e una CPU con uno o più Cores.

GPU CPU

Page 11: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded - Microcontrollore o MCU (MicroController Unit)

Progettato per interagire direttamente con il mondo

esterno, particolarmente idoneo nei sistemi embedded

Moduli standard

Unità di elaborazione: CPU

Memoria di programma: ROM, EPROM, FLASH

Memoria dati: RAM e EEPROM

Oscillatore interno o esterno

Porte di I/O e/o GPIO configurabili

Gestione Interrupt

Moduli aggiuntivi

Contatori e timer

Moduli di comunicazione: USART, I2C, SPI, USB, Ethernet, IrDA, CAN, Bluetooth, Wi-Fi, Zigbee

Interfacce analogiche o a tecnologia mista: ADC, DAC, PWM, Comparatori analogici

Interfacce di visualizzazione e controllo: (LCD, Touch sensor)

Page 12: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Microprocessore Vs Microcontrollore

Caratteristica Microcontrollore Microprocessore

Velocità massima di clock 200 MHz 4 GHz

Capacità elaborativa massima in MegaFLOPS 200 5000

Potenza minima dissipata in watt (in stato di elaborazione)

0,001 50

Prezzo minimo per singola unità in USD 0,5 50

Numero di pezzi venduti annualmente (in milioni) 11000 1000

● Il microcontrollore è progettato per ottenere la massima autosufficienza funzionale ed ottimizzare il rapporto prezzo-prestazioni in uno specifico campo di applicazioni.

● Punti di forza: basso costo, ampia scelta, facilità di programmazione, molte librerie disponibili, riprogrammabilità, flessibilità applicativa.

Page 13: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Produttori Microprocessori

● mercato molto frammentato, con più di 40 produttori e più di 50 architetture, nessuna delle quali detiene più del 5% del mercato.

Page 14: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – SoC (System on a Chip)

Moduli standard

Uno o più core di microcontrollori, microprocessori o DSP (Digital Signal Processor)

Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, EEPROM o Memoria flash.

Un generatore di clock e un PLL (Phase-locked loop)

Periferiche come contatori, orologi e altro

Connettori per interfacce standard come USB, FireWire, Ethernet, USART, SPI

Convertitori digitali-analogici e convertitori analogici-digitali

Regolatori di tensione e circuiti di gestione dell'alimentazione.

● Non hanno bisogno di un segnale di clock esterno

Page 15: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Moduli del sistema embedded

Page 16: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Schema tipico di progettazione

Modello di tipo gerarchico

1) Cattura delle specifiche: si scompongono le funzionalità per creare uno o più modelli concettuali. Verifica compatibilità tra gli elementi, assenza di deadlock e starvation. Simulazione, risposta del sistema ad un determinato ingresso.

2) Esplorazione: si esplorano le varie alternative di progetto per trovare la soluzione ottima. (vincoli fisici, prestazioni, costo, affidabilità...) determinandone gli elementi costitutivi.

3) Raffinamento delle specifiche: si affinano le specifiche in base all'architettura scelta, e se ne arricchiscono i dettagli implementativi (dimensionamento dei bus, scelta protocollo, scelta memorie e processori e loro interfacciamento) cosimulazione.

4) Progetto Hardware e Software: per ogni componente si crea la propria implementazione (processori → codice C , dispositivi ASIC → CAD alto livello, logica di controllo → diagramma di stato con macchina a stati finiti FSM )

5) Progetto Fisico: dati di produzione per ogni elemento

Page 17: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Schema tipico di progettazione

● L'eterogeneità dei componenti e la suddivisione tra hardware e software rende la progettazione e lo sviluppo dei sistemi embedded un'attività multidisciplinare, nella quale spesso compaiono più figure professionali.

● Con il modello gerarchico otteniamo:

● Descrizione a livello di sistema: che consente la verifica delle prestazioni di sistema e dei protocolli di comunicazione.

● Specifica funzionale: consente la verifica di completezza e correttezza delle funzioni di sistema.

Prototipazione con Arduino:

● L'utilizzo di una piattaforma di prototipazione aiuta nella prima fase della progettazione, dove si analizzano le specifiche e se ne cura la completezza e correttezza.

● Offre al committente un primo veloce risultato tangibile del lavoro richiesto.

● Permette di rivalutare prontamente eventuali migliorie nelle specifiche.

Page 18: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Arduino UNO R3

Release Date:

SoC /

CPU 8-bit AVR

Frq (MHz) 16MHz

GPU /

Onboard storage: 32KB flash memory (with 0.5KB used for the bootloader), EEPROM 1KB

Onboard network: Serial communication over USB, I²C (TWI) andSPI communication

USB PORT 1 whit ICSP(In-Circuit Serial Programming)

Memory (SDRAM): 2KB

Video outputs: /

Size: 68mm x 53mm

Power

Low-level peripherals:

14 digital pins IO, 6 analog inputs (10 bits of resolution)

Price €22

Page 19: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – BeagleBone Black

Release Date: April 23, 2013

SoC AM3358/9

CPU

Frq (MHz) 1000

GPU PowerVR SGX530 (200  MHz)

Onboard storage: 8-bit eMMC (Rev B: 2 GB Ångström pre-installed, ReV C: 4 GB Debian pre-installed ), microSD card 3.3 V

Onboard network: Fast Ethernet

USB PORT 1 x Standard A host port (direct).1x mini B device port (direct)

Memory (SDRAM): 512 MiB DDR3

Video outputs: Micro-HDMI,

Size: 86.40  mm ×  53.3  mm

Power 210–460 mA @5 V

Low-level peripherals:

4xUART, 8x PWM, LCD, GPMC, MMC1, 2x SPI, 2x I²C, A/D Converter, 2x CAN bus, 4 Timers

Price € 53,74 *

Page 20: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Raspberry Pi Model gen.2 B

Release Date: February 2015

SoC Broadcom BCM2836 ARM (Cortex A7)

CPU BMC2836 ARM (Cortex A7)

Frq (MHz) 900 MHz

GPU Broadcom VideoCore IV 1080p30 H.264

Onboard storage: 1 Gigabyte + sd slot (SO all ARM GNU/Linux distributions, Snappy Ubuntu Core, Windows 10

Onboard network: Ethernet 10/100 (RJ-45)

USB PORT 4

Memory (SDRAM): 1 Gigabyte

Video outputs: Full HDMI port, Combined 3.5mm audio jack and composite video

Size: 85 mm × 56 mm

Power 600 mA (3,0 W)

Low-level peripherals:

40XGPIO, Camera interface (CSI), Display interface (DSI)

Price €35

Page 21: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Intel Edison Esp. Arduino

Release Date: Q3'14

SoC Intel Atom "Tangier" (Z34XX), 1 GB RAM

CPU Atom 2-Core (Silvermont)

Frq (MHz) 500Mhz

GPU /

Onboard storage: 4GB EMMC flash , Yocto Linux

Onboard network: Wi-Fi, Bluetooth 4 and USB controllers

USB PORT 3

Memory (SDRAM): /

Video outputs: /

Size: 35.5 x 25 x 3.9 mm

Power 200 mA 7-15V

Low-level peripherals:

70-pin dense connector, USB, SD, UARTs, GPIOs

Price €130

Page 22: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Sharebot Arduino Materia 101

Page 23: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Genuino UNO – Cosa Può fare!

uArm Arduino powered 4-axis robot arm

http://www.instructables.com/id/An-Arduino-powered-4-axis-parallel-mechanism-robot/

Page 24: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Edison su bikeebike

Page 25: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICASistemi embedded – Tu come utilizzeresti Arduino?

Descrivi una situazione o un'idea in cui Arduino ti sarebbe utile:

http://rocchini.it/wpmu/ifts/2018/02/06/progetti/

Page 26: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAIntroduzione Arduino – Cos'è Arduino?

“Arduino is an open-source prototyping platform based on easy-to-use hardware and software. Arduino boards are able to read inputs - light on a sensor, a finger

on a button, or a Twitter message - and turn it into an output - activating a motor, turning on an LED, publishing something online. “

● Ideato ad Ivrea (TO) scuola post-laurea Interaction Design Institute Ivrea

● Permette di creare in modo semplice dei prototipi elettronici di input-output

● Open source hardware - Creative Commons Attribution Share-Alike license

● Open source programming framework (Wiring) GPL

● Libertà di utilizzare, clonare e modificare gratuitamente il progetto iniziale.

● Il team di Arduino è composto da Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino, e David Mellis.

Page 27: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAIntroduzione Arduino – Open hardware

Arduino

Page 28: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAIntroduzione Arduino – Prodotto commerciale con Arduino?

Si può fare!Alle seguenti condizioni:

● Integrare fisicamente un'intera scheda Arduino in un prodotto commerciale non richiede di pubblicare il codice o informazioni sulla progettazione.

● Evolvere un progetto sulla base della struttura hardware di Arduino, rende necessaria la pubblicazione delle modifiche apportate sotto la stessa licenza Creative Commons Attribution Share-Alike license.

● Se si modifica il codice sorgente di Arduino, coperto da licenza GPL, si devono pubblicare le modifiche apportate sotto la medesima licenza.

● Utilizzare le librerie Arduino per costruire il firmware di un prodotto commerciale non richiede che questo sia rilasciato come open source, però qualora le librerie fossero soggette ad un upgrade, il venditore è tenuto a fornire un firmware aggiornato

Page 29: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAIntroduzione Arduino – Esempi di open hardware

ReprapÈ una stampante 3D di

dimensioni contenute, in grado di produrre le parti per costruire

un nuovo RepRap

BeagleBoardÈ una scheda a basso costo,

senza ventola con performance e espandibilità tipiche del laptop

OpenmokoÈ stato il primo progetto

open source e open hardware di cellulare

Arduino!

● (link)

Page 30: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAIntroduzione Arduino – il sito: www.arduino.cc

www.arduino.cc

Page 31: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware

Genuino UNO

Microcontroller ATmega328P

Operating Voltage 5V

Input Voltage (recommended) 7-12V

Input Voltage (limit) 6-20V

Digital I/O Pins 14 (of which 6 provide PWM output)

PWM Digital I/O Pins 6

Analog Input Pins 6

DC Current per I/O Pin 20 mA

DC Current for 3.3V Pin 50 mA

Flash Memory 32 KB (Atmega328P) of which 0.5 KB used by bootloader

SRAM 2 KB (ATmega328P)

EEPROM 1 KB (ATmega328P)

Clock Speed 16 MHz

La piattaforma piu indicata per iniziare, in quanto è la più robusta

ed è quella che ha la più vasta documentazione.

Page 32: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware

INDUSTRUINO PROTO

Microcontroller ATSAMD21G18

Operating Voltage 3.3V / 5V tolerant

Input Voltage (recommended) 7-28V

Input Voltage (limit) 6-20V

Digital I/O Pins 17

PWM Digital I/O Pins 12

Analog Input Pins 12

DC Current per I/O Pin 7 mA

Flash Memory 256KB

SRAM 32KB

EEPROM 1 KB

Clock Speed 48DIN-rail mountable MHz

● DIN-rail mountable ● LCD with backlight ● TFTP ethernet bootloader

(remote sketch upload)● Real-time clock (RTC)● Fully compatible with the

Arduino IDE

Page 33: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware - versioni

Confronto tra modelli

Racchiude in se la facilità d'uso e le ultime tecnologie:

CPU basso consumo,The Real-Time Operating Systems (RTOS) e

framework sviluppati da Intel, accelerometro a 6 assi,

giroscopio e bluetooth LE

Genuino 101

Microcontroller Intel Curie (low-power consumption )

Operating Voltage 3.3V (5V tolerant I/O)

Input Voltage (recommended) 7-12V

Input Voltage (limit) 7-20V

Digital I/O Pins 14 (of which 4 provide PWM output)

PWM Digital I/O Pins 4

Analog Input Pins 6

DC Current per I/O Pin 20 mA

Flash Memory 196 kB

SRAM 24 kB

Clock Speed 32MHz

Features Bluetooth LE, 6-axis accelerometer/gyro

Page 34: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware - versioni

La più piccola delle schede Genuino,

Del tutto simile alla UNO e alla versione dismessa Leonardo misura

una lunghezza di 48mm e una larghezza di 18mm

Genuino MICRO

Microcontroller Atmega32U4

Clock Speed 16 MHz

Operating Voltage 5V

Input Voltage (recommended) 7-12V

Input Voltage (limit) 6-20V

Digital I/O Pins 20

PWM Channels 7

Analog Input Channels 12

DC Current per I/O Pin 20 mA

DC Current for 3.3V Pin 50 mA

Flash Memory 32KB (ATmega32U4)

of which 4 KB used by bootloader

SRAM 2.5 KB (ATmega32U4)

EEPROM 1 KB (ATmega32U4)

Page 35: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware - versioni

La scheda studiata per i progetti più complessi, con 54pin digitali di

I/O e 16 analogici, si rende particolarmente idonea come

controller di stampanti 3d e di robot.

Compatibile con la maggior parte degli shild

Genuino MEGA 2560Microcontroller Atmega2560

Clock Speed 16 MHz

Operating Voltage 5V

Input Voltage (recommended) 7-12V

Input Voltage (limit) 6-20V

Digital I/O Pins 54 (of which 15 provide PWM output)

Analog Input Pins 16

DC Current per I/O Pin 20 mA

DC Current for 3.3V Pin 50 mA

Flash Memory 256 KB of which 8 KB used by bootloader

Feature 4 UARTs (hardware serial ports)

SRAM 8 KB

EEPROM 4 KB

Page 36: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware - versioni

Incrementa le prestazioni di Arduino UNO utilizzando una CPU a 32bit, particolarmente utile nei progetti

IoT, nelle tecnologie werable, automazione.. ecc

3,3V massimo voltaggio che i pin sopportano

Genuino ZERO

Microcontroller ATSAMD21G18, 32-Bit ARM Cortex M0+Clock Speed 48 MHzOperating Voltage 3.3V (Attenzione!)Digital I/O Pins 20PWM Pins All but pins 2 and 7UART 2 (Native and Programming)Analog Input Pins 6, 12-bit ADC channelsAnalog Output Pins 1, 10-bit DACExternal Interrupts All pins except pin 4DC Current per I/O Pin 7 mAFlash Memory 256 KBSRAM 32 KBEEPROM NoneFlash Memory 256 KBSRAM 32 KBEEPROM None

Page 37: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware - versioni

● Arduino DUE ● Arduino YÚN

Microcontrollore 32-bit ARM con 54pin digitali di I/O e 16 analogici

Unisce la semplicità di Arduino e la potenza di Linux OpenWrt-Yun

Supporto Ethernet e WiFi, porta USB, micro-SD slot, 20 pin digitali I/O (7

per PWM e 12 come inputs analogici )

Page 38: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware - versioni

● LilyPad Arduino ● Arduino Pro

Versione a basso consumo per progetti werable

8 Mhz, 14 pin digitali I/O (6 per PWM)e 6come inputs analogici

In due versioni 3.3V / 8 MHz and 5V / 16 MHz, 14 pin digitali I/O (6 per PWM)e 6come inputs analogici

Creata per essere inserita in un progetto

Page 39: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – versioni “AtHeart”

● Blend Micro ● EarthMake - ArLCD

Piattaforma di di RedBearLab, integra Arduino e Bluetooth 4.0

ArLCD è un 3.5″ TouchScreen LCD a colori unito ad Arduino UNO.

Vengono fornite le librerie per utilizzare lo schermo in modo

semplice.

Page 40: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – microcontrollore

● Attiny85

Program Memory 8 KbyteEEPROM 512 ByteSRAM 512 ByteADC 4 CanaliProtocollo Seriale SPI

Pro● minore consumo elettrico (quindi adatto per progetti a batteria)● minore dimensione (l’Atmega328 ha 28 piedini)● minor costoContro● meno piedini abbiamo un numero limitato di I/O● meno funzioni● meno memoria

Page 41: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware - versioni

Confronto tra modelli:

https://www.arduino.cc/en/Products/Compare

Name ProcessorOperatig/InputVoltage

CPU Speed

Analog In/Out

Digital IO/PWM

EEPROM [kB]

SRAM [kB]

Flash [kB] USB UART

UNO ATmega328P

5 V 7-12 V

16 MHz

6/0 14/6 1 2 32 Regular 1

Micro ATmega32U4

5 V 7-12 V

16 MHz

12/0 20/7 1 2,5 32 micro 1

101Intel® Curie

3.3 V7-12V

32MHz 6/0 14/4 - 24 196 Regular -

Mega2560

ATmega2560

5 V 7-12 V

16 MHz

16/0 54/6 4 8 256 Regular 4

ZeroATSAMD21G18

3,3 V 7-12 V

48 MHz

6/1 14/10 / 32 256 2 micro 2

Page 42: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Shields

Gli shields per arduino sono delle piattaforme hardware che si inseriscono nei piedini di I/O di Arduino per estenderne le capacità.

Essendo Arduino una piattaforma harware open source chiunque può produrli e c'è ne sono moltissimi in commercio.

La lista che propone il sito arduino.cc

http://playground.arduino.cc/Main/SimilarBoards#goShie

● L293D Arduino Official Motor Shield

● Arduino Proto Shield Rev3

● Wireless SD Shield + modulo ZigBee

● Arduino UNO

Page 43: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Shields esempi

● GPS ● GSM/GPRS ● Ethernet

…..

● 1.8" Color TFT microSD Joystick

● Touch TFT 2.8" ● WiFi

Page 44: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO

1 - Connettore USB2 - Connettore alimentazione 2,1mm (7 a 12V)3 - Microcontrollore ATmega328P 4 - Chip per la comunicazione seriale/USB5 - Clock/cristallo a 16 mhz6 - Bottone di reset7- Led di accensione (On)8 - Led di ricezione (RX) e trasmissione (TX) in corso9 - Led (può essere programmato dal vostro programma)10 - Pin di alimentazione (uscita corrente a 5V, 3.3V, Massa (GND) e Vin (da 7 a 12V)12 - TX and RX pins13 - Input/Output digitali .14 - Pin per la terra e AREF (regola il voltaggio di massima risoluzione degli input analogici).15 - ICSP for Atmega328 (per programmare il micro)16 - ICSP for USB interface

Page 45: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO - 14 pin Digitali di I/O

13 - Input/Output digitali:

Generici

Ognuno dei 14 pin Digital I/O dell’Arduino (programmandolo) può essere utilizzato sia come input che come output.

I pin Digital I/O operano ad una tensione di 5V e possono fornire fino a 20mA di corrente.

Funzioni specifiche

Serial:

pin 0 (RX) e pin 1 (TX). Sono rispettivamente il pin di trasmissione e ricezione per la comunicazione seriale. Lavorano a 5V e son o connessi con l’USB. Possono essere utilizzati per connettere un modulo bluetooth.

External Interrupts:

pin 2 e 3. Questi pin possono essere configurati per la generazione di interrupt. Possono cioè essere configurati in modo che se il valore del pin cambia, l’esecuzione del codice viene interrotta momentaneamente per eseguire un’altra operazione, associata al cambiamento del pin.

Page 46: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO - 14 pin Digitali di I/O

SPI (Serial Peripheral Interface ):

10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Questi pin possono essere utilizzati per la comunicazione SPI con alcuni dispositivi (SDCARD, Ethernet shield, GSM...).

SCK: Serial Clock (emesso dal master)

MISO: Master Input Slave Output

MOSI: Master Output Slave Input

SS: Slave Select

I2C (Inter Integrated Circuit ):

4 (SDA) e 5 (SCL). Configurabile come I2C (TWI)

SDA (Serial DAta) per i dati

SCL (Serial CLock) per il clock (bus sincrono)

Page 47: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO – 6 PWM

PWM: 3, 5, 6, 9, 10, e 11.

Possono essere utilizzati come uscite PWM ossia come onde quadre con duty cicle regolabile.

La tilde "~" davanti al numero indica un output PWM (Pulse Width Modulation è una tecnica utilizzata per la generazione di un segnale analogico utilizzando un uscita digitale).

Variando la lunghezza dell’impulso posso 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.

Utile ad esempio per la gestione dei motori DC e le luci per effetto fading.

Page 48: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO – 6 Analog Input Pins

Convertitore Analogico-Digitale (ADC)

11 - Input analogici: Possono percepire molto precisamente una tensione DC tra 0 e 5V, restistuendo un valore da 0 a 1023 (risoluzione a 10bit, riconosce 2^10 = 1024 intervalli di tensione differenti)

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 si può fissare il valore di riferimento (il valore massimo) per l’ADC

Page 49: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO – Pin RESET e IOREF

RESETQuesto pin, se posto a 0, permette di resettare lo stato dell’arduino.È possible resettare Arduino sia per mezzo del pulsante presente sulla board, sia attraverso questo pin.Durante la programmazione questo pin è posto basso per resettare Arduino e permetterne la programmazione.

IOREFQuesto pin fa da riferimento a quello che è il valore logico alto di un segnale d'ingresso, può essere 3,3V oppure 5V

Page 50: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO – POWER e Vcc

ALIMENTAZIONE

Si può applicare l'alimentazione da 7 a 12 V ai piedini Vin e GND indicati con POWER. A fianco dei piedini di alimentazione c'è anche la possibilità di prelevare 5V e 3,3 V dagli appositi piedini.

Page 51: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO – Alimentazione (da 7 a 12V)

Cavo USBLa porta USB fornisce 5V e in genere 500mA

Connettore di AlimentazioneJack 2,1mm x 5,5mm

Usb del PC è protetta da un fusibile autoripristinante messo su Arduino che limita a 500mA la corrente che può assorbire. Arduino sceglie in automatico dove acquisire l'alimentazione.Se oltre al cavo usb alimentiamo Arduino anche tramite un connettore o dal pin Vin, verrà scollegata l'alimentazione da usb e verrà utilizzata quella esterna.Il regolatore di tensione presente sulla scheda ha una corrente massima in uscita di 800mA, e deve alimentare arduino e dispositivi del pin 5V.

Collegamento al pin Vin

Page 52: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO – Dimensionamento batteria

Le principali caratteristicheTensione (V), Capacità (Ah), Energia specifica (Wh/m3), Caratteristiche di ricaricabilità, Durata, Impatto ambientale, Costo, Sicurezza di impiego

4 AA (Stilo in serie)Gli accumulatori stilo ricaricabili hanno una tensione nominale di 1.2V, le pile non ricaricabili sono da 1.5V.

Se per esempio abbiamo un circuito che necessità 3,3V, consuma 150mA e vogliamo che la batteria duri almeno 8 ore, dovremo scegliere un batteria con tensione maggiore di 3,3V (il circuito avrà un regolatore, come Arduino) e una ‘capacità’ di almeno

150mA*8*1,2 = 1440mAh1,2 è un fattore di correzione per assicurarsi la durata voluta

Page 53: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICAHardware – Arduino UNO – Cosa NON fare!

Attenzione!

n° 1: fare un corto fra i pin di I/O impostato come output hight e massa, si crea un corto da 200mA e il pin ne regge max 40mAn° 2: mettere in corto i pin fra di loro, (impostati uno su Hight e uno su LOW)n° 3: applicare una sovratensione maggiore di 5,5V ai pin di I/On° 4: applicare un’alimentazione invertita sul pin Vin, al contrario del jack 2,1mm non c'è il diodo per proteggere dalle tensioni inversen° 5: applicare più di 5V al pin 5Vn° 6: applicare più di 3,3 V sul pin 3V3n° 7: fare un corto fra Vin e massan° 8: applicare l’alimentazione al pin 5V con un carico su Vin porta una corrente inversa al regolatore e lo distruggen° 9: applicare più di 13 V al pin di resetn° 10: superare la corrente totale ammessa dal microcontrollore di 200mA impostando 10 pin di I/O come output con segnale high

Page 54: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

1) UNO R3 Controller Board

2) IC 74HC595 Multiplexer

3) Small Servo Motor

4) 5V Relay

5) 5V DC Motor

6) 2N3904 Transistors

7) 1N4148 Diodes

8) TMP36 Temp Sensor

9) Active Buzzer

10) LED

11) RGB LED

12) 12mm Buttons

13) Photoresistor

14) Precision Potentiometer

15) 9V Battery adapter

16) USB Cable

17) 65*Jumper Wire

18) Resistors

19) 400 tie-points Breadboard

INTERAZIONE ELETTRONICAHardware – Arduino UNO – Cosa avremo subito a disposizione

Page 55: INTERAZIONE ELETTRONICA - Rocchinirocchini.it/.../9/2018/02/Interazione-Elettronica-1.pdf · 2018-02-08 · Un modulo di memoria contenente uno o più blocchi di tipo ROM, RAM, ...

INTERAZIONE ELETTRONICARiferimenti

● www.arduino.cc

● http://www.danielealberti.it/

● Massimo Banzi – Getting starter with Arduino

● https://it.wikipedia.org