POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...

Pagina creata da Marta Grosso
 
CONTINUA A LEGGERE
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
POTENZIALITÀ AGRO-METEO
   DELLA PIATTAFORMA
        ARDUINO
 Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1

 Fondazione Edmund Mach, via E.Mach 1, 38010, San
             Michele all’Adige (Trento)
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
http//arduino.cc
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
Attività svolta nell’ambito del
      Progetto Cent€uro
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
Una piattaforma informatica è una base
    software e/o hardware su cui sono eseguite
            e/o sviluppate applicazioni

Si può intendere come:

• Una piattaforma software, che indica il software di base sul quale
  sono eseguiti o sviluppati i software applicativi (ad es. Piattaforma
  Java).
• Una piattaforma hardware, cioè l'hardware sul quale vengono fatti
  eseguire un certo sistema operativo e un certo insieme di
  programmi applicativi;
• Una piattaforma operativa, tipo di piattaforma software che include il
  sistema operativo il quale è costruito a partire dalle istruzioni
  elementari del processore (instruction set).
• Un ambiente di esecuzione che comprende hardware e sistema
  operativo ed eventualmente elementi middleware specifici,
  application server ed altri strumenti di supporto all'esecuzione di
  programmi.
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
Open hardware e open source
• Gli schemi hardware di Arduino sono distribuiti in
  modo da poter essere utilizzati nei termini legali
  di una licenza Creative Commons Attribution
  Share-Alike 2.5, e sono disponibili sul sito
  ufficiale Arduino.
• Per alcune versioni della scheda sono disponibili
  anche il layout e i file di produzione.
• Il codice sorgente per l'Ambiente di sviluppo
  integrato e la libreria residente sono disponibili,
  e concessi in uso, secondo i termini legali
  contenuti nella licenza GPLv2.
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
Creative Commons (CC)
• Creative Commons (CC) è un'organizzazione
  non profit con sede a San Francisco dedicata
  all'espansione della portata delle opere di
  creatività offerte alla condivisione e all'utilizzo
  pubblici.
• Essa intende altresì rendere possibile, com'è
  sempre avvenuto prima di un sostanziale abuso
  della legge sul copyright, il ricorso creativo a
  opere di ingegno altrui nel pieno rispetto delle
  leggi esistenti.
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
GNU General Public License
• La GNU General Public License è una licenza
  per software libero. È comunemente indicata
  con l'acronimo GNU GPL o semplicemente GPL.
• Contrapponendosi alle licenze per
  software proprietario, la GNU GPL assicura
  all'utente libertà di utilizzo, copia, modifica e
  distribuzione.
• La GPL ha incontrato un gran successo fra gli
  autori di software sin dalla sua creazione, ed è
  oggi la più diffusa licenza per il software libero.
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
Gli sviluppatori di Arduino
Interaction Design Institute, Ivrea.

  Perché Arduino si chiama Arduino?
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
Il nome viene da

 ?      Arduino Marchese d’Ivrea
          955 - Fruttuaria, 1015   ?
• Arduino d'Ivrea (955 – 1015) fu un protagonista
  delle acerrime lotte per il potere che coinvolsero
  l'intera struttura feudale ai tempi dell’Impero
  Romano-Germanico degli Ottoni.
• Nel 1002, approfittando della morte di Ottone III,
  un nutrito gruppo di vassalli ostili al potere.
  imperiale lo elesse re d'Italia.
• Per dieci anni, tra il 1004 ed il 1014, Arduino
  cercò di mantenere la corona d'Italia, ma la forte
  opposizione dei vescovi e di alcuni conti e
  marchesi fedeli all'imperatore non gli permise di
  portare a termine i propri piani.
POTENZIALITÀ AGRO-METEO DELLA PIATTAFORMA ARDUINO - Giambattista Toller1*, Aldo Biasi1, Stefano Corradini1 Fondazione Edmund Mach, via E.Mach 1 ...
Oppure da:
Bar di Re Arduino
Piazza Vincenzo Gioberti,
     13, Ivrea, (TO)

          ?
Arduino mega €61
Arduino nano €48
Arduino 2009 €29
Shield, chi era costui?
• Si tratta di piccole schede collegabili ad
  Arduino.
• Possono fare molte cose:
• Collegamenti radio, zigbee, telefonici.
• Controllo motori, connessione ethernet,
• Controllo schede memoria, etc.
MEGA 1280                       DUEMILANOVE 328                   NANO 168 NANO 328
Microcontroller                     ATmega1280                              ATmega 328        ATmega 168; ATmega 328
                         54 (of which 14 provide           14 (di cui 6 utilizzati come
Digital I/O Pins                    PWM output)                             uscite PWM)
                                                                                    14 (of which 6 provide PWM output)
                                                              6 a 10 bit di risoluzione
                                                                   (ovvero 1024 valori
Analog Input Pins                                   16                  differenti; 0-5V)       8 at 10 bits of resolution
DC Current per
I/O Pin                                        40 mA                              40 mA                          40 mA
                                                                                         16 KB (ATmega168) or 32 KB
                     128 KB of which 4 KB used            16 KB (di cui 2 KB utilizzati   (ATmega328) of which 2 KB
Flash Memory                       by bootloader                        dal bootloader)             used by bootloader
SRAM                                        8 KB                             1 KB (ATmega168)
                                                                                    1 KB        or 2 KB (ATmega328)
                                                                                           512 bytes (ATmega168) or 1
EEPROM                                           4 KB                         512 bytes                KB (ATmega328)
Clock Speed                                   16 MHz                             16 MHz                         16 MHz
                         Serial 0: (RX) and 1 (TX);
Serial port used          Serial 1: 19 (RX) and 18
to receive (RX)        (TX); Serial 2: 17 (RX) and
and transmit (TX)        16 (TX); Serial 3: 15 (RX)
TTL serial data                          and 14 (TX).           Serial: 0 (RX) e 1 (TX).          Serial: 0 (RX) e 1 (TX).
                             External Interrupts: 2
                     (interrupt 0 ), 3 ( interrupt 1 ),
                                18 ( interrupt 5 ), 19
External               (interrupt 4 ), 20 ( interrupt
Interrupts                3), and 21 ( interrupt 2 ).          Interrupt esterni: 2 e 3.    External Interrupts: 2 and 3.
Pulse Width
Modulation                           PWM: 0 to 13.             PWM: 3, 5, 6, 9, 10, e 11.     PWM: 3, 5, 6, 9, 10, and 11.
                    SPI: 50 (MISO), 51 (MOSI), 52           SPI: 10 (SS), 11 (MOSI), 12       SPI: 10 (SS), 11 (MOSI), 12
BUS SPI                            (SCK), 53 (SS).                    (MISO), 13 (SCK).                 (MISO), 13 (SCK).
LED                                       LED: 13.                               LED: 13.                          LED: 13.
                      2                                                                         2
BUS I2C              I C: 20 (SDA) and 21 (SCL)              I2C: 4 (SDA) and 5 (SCL).         I C: 4 (SDA) and 5 (SCL).
Analog                                                              AREF. Voltaggio di
Reference           AREF. Reference voltage for           riferimento per gli ingressi      AREF. Reference voltage for
Voltage                       the analog inputs.                               analogici.             the analog inputs.
Reset                                      Reset.                                  Reset.                          Reset.
Arduino Mega
• Microcontrollore: ATmega2560 (noi ATmega1280)
• Tensione di alimentazione 6-20V; (raccomandata 7-
  12V)
• Ingressi/uscite Digitali: 54 (di cui 14 possono essere
  utilizzate come uscite PWM)
• Ingressi analogici: 16
• Corrente Dc per pin I/O: 40 mA
• Memoria Flash: 256 kB (di cui 8 kB utilizzati dal
  bootloader)
• SRAM: 8 kB
• EEPROM: 4 kB
• Clock: 16 MHz
Come si programma
• Arduino programming
  language (derivato da c+
  +)
• Ambiente di sviluppo
  molto facile
• i programmi si chiamano
  sketch
• Comunque programmare
  non è mai una banalità
Semplice programma per l'accensione ripetuta
di un LED nell'ambiente di sviluppo di Arduino

#define LED_PIN 13

void setup () {
pinMode (LED_PIN, OUTPUT); // abilita il pin 13 per
  l'output digitale }

void loop () {
digitalWrite (LED_PIN, HIGH); // accende il LED
delay (1000); // aspetta 1 secondo (1000
  millisecondi)
digitalWrite (LED_PIN, LOW); // spegne il LED
delay (1000); // aspetta un secondo
}
Le nostre prove
1. Modem GPRS GSM862GPRS           (QUAD) di
   Telit (105 €)
2. Memoria flash ARDUINOSDLETT (13.0 €)
3. Orologio in tempo reale PCF8583
   (3.58€)
4. Multiplexer analogico ADG406BNZ
   (10.25 €) + PCF8574P (2.48 €)
5. Display a cristalli liquidi PC1602AR-H
   16x2 (10.27 €)
Prova 1: Modem GPRS   GSM862GPRS
           (QUAD)
                        Permette la
                        connessione di
                        Arduino
                        all’INTERNET
                        Con i protocolli
                        HTTP
                        FTP
Libelium Hilo-Sagem ~ 70€
     http://www.libelium.com
Prova 2: Secure Digital (SD)
            card
• utilizza una memoria flash contenuta al suo
  interno.
• consumo energetico ridotto (in sleep = 250 uA,
  Lettura / Scrittura = 80 mA).
• dimensioni molto contenute (32 × 24 mm per
  2,1 mm di spessore),
• capacità di memorizzazione elevate (64 GiB e più)
• velocità di trasferimento che raggiunge i 22,5 Mb/s
  nelle nuove 150x.
I prefissi per multipli binari sono una serie di prefissi istituiti dalla
Commissione Elettrotecnica Internazionale (IEC) nel dicembre 1998 per
evitare l'uso da parte degli informatici dei prefissi standard SI per
indicare non i multipli decimali (per cui sono stati pensati e
standardizzati) ma binari, sfruttando il fortuito caso che la decima
potenza del 2 (1024) è molto vicina alla terza potenza di 10 (1000).

Fattore   Simbolo IEC   Nome IEC   Nome esteso       Simbolo SI   Nome SI   Fattore SI Errore
2^10          Ki        kibi       kilobinary    ~       k        kilo            10^3    +2,4%
2^20          Mi        mebi       megabinary    ~       M        mega            10^6    +4,9%
2^30          Gi        gibi       gigabinary    ~       G        giga            10^9    +7,4%
2^40          Ti        tebi       terabinary    ~       T        tera           10^12 +10,0%
2^50          Pi        pebi       petabinary    ~       P        peta           10^15 +12,6%
2^60          Ei        exbi       exabinary     ~       E        exa            10^18 +15,3%
2^70          Zi        zibi       zettabinary   ~       Z        zetta          10^21 +18,0%
2^80          Yi        yobi       yottabinary   ~       Y        yotta          10^24 +20,8%

kibibyte      1024      byte,          indicato       con KiB               Da notare l'uso di
mebibyte      1024      kibibyte,      indicato       con MiB               una B maiuscola
gibibyte      1024      mebibyte,      indicato       con GiB               per differenziare
tebibyte      1024      gibibyte,      indicato       con TiB               Byte e bit.
metal–oxide–semiconductor field-effect transistor (MOSFET ) usati nelle
    memorie flash hanno funzionamento simile alle idrovalvole: una camera di
   dimensioni variabili, contenente acqua o cariche elettriche, modula il flusso

   idrovalvola
Effetto tunnel usato per
iniettare cariche nella camera
chiusa (floating gate) del
MOSFET
La meccanica quantistica prevede che una particella abbia una probabilità, piccola
ma finita, di attraversare spontaneamente una barriera arbitrariamente alta.
SEEEDUINO – ARDUINOSDLETT
 http://www.seeedstudio.com   http://www.futurashop.it 13.0 €

• Piccola scheda dotata di slot per SD max
  2GiB (limite max FAT16)
• Permette ai dispositivi come Arduino e
  Seeeduino di leggere e scrivere le SD
  card con apposite librerie disponibili
  gratuitamente.

Abbiamo regolarmente scritto e letto i dati da una
SD da 512 MiB.
Libreria ad oggetti C++:
•Class SD: definisce oggetti file-system FAT16
•Class File: definisce oggetti file
Adafruit Data logging shield for Arduino
                   $19.50
    80 Nassau Street, Unit 4C, New York, NY 10038
              http://www.adafruit.com

• L’interfaccia gestisce schede SD formattate per FAT16
  (DOS) o FAT32 (Windows 95) (FAT=File Allocation Table ).
• Real time clock (RTC) lavora anche quando Arduino è
  staccato. La batteria dura alcuni anni.
• Sono incluse librerie sia per SD che per RTC che facilitano
  molto la programmazione.
• C’e un’area di sperimentazione a connessioni forate per
  saldare connettori, circuiteria o sensori.
• Il regolatore a 3.3V serve come stabile tensione di
  riferimento ed alimenta in modo affidabile le schede SD,
  che richiedono molta potenza per funzionare.
• Preferibile usare questa scheda con un Arduino con il chip
  ‘328.
Seeeduino Stalker
                  Prezzo € 36,00
    http://www.seeedstudio.com http://www.futurashop.it

• microcontrollore ATmega168.
• Dispone di RTC (Real Time Clock),
• slot per micro SD card,
• 20 I/O,
• protocollo di comunicazione I2C e
  UART(universal asynchronous
  receiver/transmitter ),
• connettore per inserire moduli wireless come
  Xbee, Bluetooth e RF.
• Può essere impiegata come hub per la raccolta
  dati real time da sensori esterni, come data
  logger GPS, per il monitoraggio, ecc.
Prova 3: Orologio in tempo reale
                            PCF8583

•   Memoria RAM a basso voltaggio 240 x 8 bit
•   Corrente di esercizio (a fSCL = 0 Hz): max 50 μA
•   Funzione orologio con calendario quadriennale
•   Timer universale con allarme e indicatore di overflow
•   Base dei tempi a 32.768 kHz o 50 Hz
•   Bus serial di input - output (I2C-bus)
•   Funzioni programmabili di allarme, timer e interrupt

L’orologio in tempo reale è stato usato con successo nella
   sequenza:
• Arduino, via bus I2C imposta sull’orologio un’ora di risveglio e
   poi si “suicida” tramite un relè bistabile sull’alimentazione
• Quando “suona la sveglia”, l’RTC manda un impulso al relè,
   che cambia stato ri-accendendo Arduino
• Arduino prende da RTC il tempo e imposta il proprio orologio
Prova 4: Multiplexer
2 x ADG406BNZ 16/1 + 1 expander I2C – 8bit PCF8574P

• Multiplexer analogico 16 x 1
• resistenza on max: 125Ω
• Range temp.:-40°c to +85°c;

1. Usato per espandere il numero di ingressi
   oltre quello presente sulla scheda Arduino
   (2009=6, nano=8, mega=16).
2. Due ADG406BNZ sono pilotati in modo
   indipendente per mezzo di un PCF8574P.
3. La resistenza on del multiplexer è di circa
   100 ohm; vanno perciò usati circuiti ad alta
   impedenza o in corrente
3   2   1   0

Uso del multiplexer                              8
                                                 0
                                                     4
                                                     0
                                                         2
                                                         0
                                                             1
                                                             0 = 0
                                                 0   0   0   1 = 1
                                                 0   0   1   0 = 2
                                                 0   0   1   1 = 3
                                                 ….. … .. .. ..
                                                 1   1   1   0 =14
                                                 1   1   1   1 =15

                              ADG406BNZ multiplexer 16/1

 arduino

                 PCF8574P
                 Expander
           Bus   I2C – 8bit
           I2C
Shield Multiplexer 48 ingressi
   http://mayhewlabs.com           http://store.arduino.cc €25

Adds an additional 48 analog or digital inputs or
outputs to the Arduino and Arduino Mega
using three Texas Instruments CD74HC4067 Analog Multiplexers; HC = High
speed CMOS, 12 nS
Prova 5: Display a cristalli liquidi
                           PC1602AR-H 16x2 (10.27 €)

    Least
    Significant
    Nibble
0
1                 0 or 4
                  1 or 5
2                 2 or 6
3                 3 or 7

4
5
6
7
    Most
    Significant
    Nibble
Ecco tutto l’apparato sperimentale
Conclusioni
• Imparare l’uso di Arduino non è particolarmente
  gravoso (però almeno un po’ di elettronica…)
• I prezzi delle schede sono popolari
• Esistono shield pronti per molte applicazioni
• Esiste una vasta comunità di utenti
• Nel prossimo autunno ci piacerebbe tenere un
  piccolo corso di Arduin-agro-meteo ( posti
  limitati, prenotatevi fin da ora!! )
Si Può Fareeee
Puoi anche leggere