lezione 01: Incominciamo con Arduino

Ho deciso di realizzare una serie di dispense per i miei allievi affinché possano operare in maniera semplice con Arduino, un sistema Hardware Open Source di basso costo e grande versatilità programmabile su tutti i sistemi operativi (Mac, Linux e Windows), in grado di controllare luci, motori ed attuatori di ogni genere e realizzare in maniera agevole sperimentazioni in campo robotico.

Queste dispense sono dedicate a tutti i miei allievi.

La realizzazione di questa lezione è basata sul materiale disponibile sul sito di riferimento Arduino.cc

Prerequisiti per seguire il corso:

  • conoscenza del principio di funzionamento di base di un microcontrollore;
  • conoscenza dei costrutti fondamentali della programmazione.

In questa prima lezione vedremo quali sono le parti principali della scheda e come installare l’ambiente di sviluppo.

Poiché sono utente Apple le immagini allegate fanno riferimento a Mac OS X, ma la programmazione non differisce dal sistema operativo utilizzato.

In questa prima parte si assume che voi abbiate a disposizione Arduino Duemilanove, se dovete acquistare la scheda, consultate la sezione “Buy” del sito Arduino.cc

Ho suddiviso l’ingrandimento della scheda in due parti per meglio comprendere i vari elementi presenti sulla scheda:

Per prima cosa, per poter programmare Arduino è indispensabile effettuare il download dell’ultima versione dell’ambiente di sviluppo.

Quando il download è finito effettuate  l’installazione dei driver FTDI.

Se avete un Mac PowerPC  dovete utilizzare i driver PPC: FTDIUSBSerialDriver_v2_1_9.dmg. Se avete un Mac con processore Intel dovete installare FTDIUSBSerialDriver_v2_2_9_Intel.dmg.

Doppio click per montare l’immagine disco ed effettuate l’installazione FTDIUSBSerialDriver.pkg al termine dell’installazione vi verrà richiesto di effettuare il restart del computer:

L’ultima versione dei driver FTDI potete prelevarli sul sito: ftdichip

Connessione della scheda.

Per Arduino Duemilanove la sorgente di alimentazione viene selezionata automaticamente e può avvenire tramite connettore USB o Jack di alimentazione. Appena alimentate la scheda si accenderà il led verde (PWR).

Avvio dell’ambiente di sviluppo.

Mac OSX
Copiate l’applicazione Arduino nella cartella Applicazioni o dove preferite e fate doppio click per avviare.

Windows
Aprite la cartella Arduino e fate doppio click sull’applicazione Arduino.

Questo è ciò che si presenta nella versione Mac:

Eseguire l’upload di un programma

Aprite l’esempio “Blink” che si trova in: File  > Examples > Digital > Blink

si aprirà una nuova finestra con il codice “Blink”:

Selezionate la porta seriale da utilizzare per la comunicazione tra computer ed Arduino:
Tools > Serial Port menu.
Su Mac selezionate /dev/tty.usbserial-A9005fPz.

Selezionate la scheda che possedete nel mio caso Arduino Duemilanove con microcontrollore ATmega168

dal menù Tool > Board >Arduino Diecimila, Duemilanove, or Nano w/ATmega168

Ora fate l’upload del file “Blink” su Arduino facendo click sul pulsante “Upload”

ci vorrà qualche secondo, durante questa operazione vedrete che i led RX e TX (ricezione e trasmissione) lampeggiano, se tutto andrà a buon fine vi verrà restituito il messaggio “Done uploading.” nella staus bar.


Appena terminato l’upload su Arduino il pin 13 (L) corrispondente al led arancione, incomincia a lampeggiare.

Ottimo, avete terminato con successo la prima lezione su Arduino.


Vai alle altre lezioni:

Lezione01: Incominciamo con Arduino Arduino – lezione 02: facciamo lampeggiare un led Arduino – lezione 03: controlliamo un led con un pulsante
Lezione Arduino Lezione Arduino Lezione Arduino
Arduino – lezione 04: realizzare un programma che identifica le variazioni di stato Arduino – lezione 05: controllo presenza  
Lezione Arduino Lezione Arduino  
{lang: 'it'}

This entry was posted in arduino, elettronica and tagged , . Bookmark the permalink.

36 Responses to lezione 01: Incominciamo con Arduino

  1. Pingback: Arduino 2009 - Vocescuola

  2. Francesco Rondinelli says:

    Ciao, la tua prima lezione sull’ uso dell’Arduino mi è stata molto utile…è difficile trovare tutorial in italiano su questo argomento (sembra strano visto che chi li ha creati è italiano!!).
    Spero che questo tuo progetto vada avanti, magari dedicando qualche lezione anche sul linguaggio di programmazione.
    Ti ringrazio, buon lavoro!

  3. Giuseppe Rotolo says:

    Complimenti una lezione magistrale.
    in attesa delle prossime

    • admin says:

      Grazie Giuseppe.
      Cercherò di mettere al più presto on-line le lezioni realizzate per i miei studenti in questi ultimi mesi.

      Un caro saluto.

  4. marco says:

    salve..sono marco e ho da poco comperato arduino.
    ho seguito il tuo tutorial alla lettera ma quando vado a fare l’upload del codice,ottengo il seguente errore:

    avrdude: stk500_recv(): programmer is not responding

    sapresti aiutarmi?
    grazie.
    marco

    • admin says:

      Ciao Marco.

      I motivi per cui si presenta l’errore: “avrdude: stk500_recv(): programmer is not responding”
      potrebbero essere diversi, ma il problema più comune è dovuto ad una non esatta selezione della Board all’interno dell’IDE di programmazione.

      Se usi Arduino Duemilanove come nel mio tutorial, devi selezionare dal menù Tools > Board > Arduino Diecimila, Duemilanove, or Nano W/ ATmega168
      che nell’ultima versione 0021 la trovi come terza voce di menù e non seconda come nel mia spiegazione in quanto il tutorial si riferisce ad una versione precedente alla 0021.

      Fammi sapere se hai risolto.

      Saluti.

      • Max says:

        Ciao Michele,
        sono alle prime armi con Arduino e ho trovato il tuo sito proprio cercando la soluzione al problema
        “avrdude: stk500_recv(): programmer is not responding”.
        Nessuna delle soluzioni trovate in rete sembrano fare al caso mio, posso chiederti se ne capisci qualcosa?
        Ho Arduino Uno su un Macbook Pro 5,1 con OSX 10.5.8. Ad ogni tentativo di caricare uno sketch (di solito uso il “blink” test) la risposta è sempre
        “avrdude: stk500_recv(): programmer is not responding”.
        Il problema dev’essere software perché lo stesso Arduino Uno che sto usando funziona sia su altri computer che sul mio stesso Mac su Windows in bootcamp!
        Ho provato diversi tempi di upload-reset e ad alimentare l’Uno esternamente ma niente da fare. Saranno 2 settimane che ci sbatto la testa senza uscirne! Ti ringrazio intanto per l’attenzione e complimenti per il tuo impegno!
        Max

        Di seguito ti riporto il verbose output in upload:

        avrdude: Version 5.11, compiled on Sep 2 2011 at 18:52:52
        Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
        Copyright (c) 2007-2009 Joerg Wunsch

        System wide configuration file is “/Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/etc/avrdude.conf”
        User configuration file is “/Users/erarosso/.avrduderc”
        User configuration file does not exist or is not a regular file, skipping

        Using Port : /dev/tty.usbmodem621
        Using Programmer : arduino
        Overriding Baud Rate : 115200
        avrdude: Send: 0 [30] [20]
        avrdude: Send: 0 [30] [20]
        avrdude: Send: 0 [30] [20]
        avrdude: ser_recv(): programmer is not responding
        avrdude: stk500_recv(): programmer is not responding

        • admin says:

          Ciao Max.

          Grazie per avermi contattato, scusami se non ti ho risposto subito ieri.
          Sto cercando adesso di studiare la tua problematica.

          Ti chiedo di chiarirmi solo alcune cose:

          1. mi confermi che la scheda Arduino funziona ovunque ma non sul tuo Mac?
          2. Quale versione dell’IDE stai usando? (UNO, 0023, altro…)

          In ogni caso prova ad agire in questo modo:

          1. Collega direttamente via USB la tua scheda al Mac, non passare per un hub.

          2. Verifica che sia selezionata la porta seriale corretta:
          Tools -> Serial Port -> /dev/cu.usbmodem411

          3. Sul tuo portatile usi una chiavetta 3G per collegarti ad internet? Se si disinstalla il driver della chiavetta e prova.

          4. Dai uno sguardo al tutorial: Oggi sperimentazione interessante in classe: Arduino bloccato vedi se ti può aiutare.

          Fammi sapere se risolvi, nel mentre studio nel dettaglio il problema.

          Saluti.

          • Max says:

            Fantastico. Funziona.
            Dopo aver letto alcuni post avevo già provato le soluzioni da te suggerite, inclusa la rimozione dei driver internet key, ma senza successo. Proprio questa si è rivelata però la mossa vincente! Dopo il tuo suggerimento di rimuovere i driver della chiavetta mi sono accorto che (vuoi per pigrizia o altro) avevo solo rimosso i file dell’applicazione principale della chiavetta di Internet mentre ora, dopo averci ri-sbattuto la testa, ho scaricato l’uninstaller dal sito che, ovviamente, ha pulito tutto per bene. Morale: nel mio caso il problema era dovuto ai driver della chiavetta internet e per risolverlo mi è bastato rimuoverli scaricando l’apposita applicazione dal sito del produttore. Spero che sia d’aiuto se a qualcuno dovesse capitare lo stesso problema ;) Michele ti ringrazio di cuore per la tua disponibilità e scrupolo e ti auguro mille altre soddisfazioni con le tue attività!
            Ciao!
            Max

          • admin says:

            Grazie a te Max :-)

            Un caro saluto.

  5. marco says:

    risolto : l’ide non salvava l’impostazioni della scheda selezionata e quindi anche se mettevo arduino 2009 ecc ecc restava sempre selezionata la prima voce.ho reinstallato l’ide e sembra non avere problemi ;)

  6. admin says:

    Bene!
    Sono contento che hai risolto.
    Se sviluppi qualcosa di interessante fammi sapere che condividiamo problemi e soluzioni.

    Saluti.

  7. luigi says:

    congratulazioni. Molto chiaro!

  8. giuseppe says:

    dove posso trovare altre lezioni?
    grazie

    • admin says:

      Salve.

      Nella colonna destra del sito trovi un’immagine-pulsante che ti porta nella sezione Arduino, in questa sezione trovi le altre 2 lezioni che ho realizzato più una serie di risorse che possono esserti di aiuto.
      Prossimamente metterò on-line la quarta lezione.
      Credo comunque di realizzare altre lezioni in quanto sto implementando unità didattiche per i miei studenti che vorrei rendere pubbliche.

      Saluti.

  9. daniele says:

    Ottima lezione….. mi stai facendo venir voglia di comprarne uno….

  10. admin says:

    Ciao Daniele.
    Bene! :-) vedrai che non te ne pentirai.

    Io ho appena acquistato: Arduino XBee 802.15.4, modulo Bluetooth e lo shield Ethernet con cui sto facendo parecchia esperienza e devo dirti che ho in mente tantissime applicazioni in campo robotico e domotico che spero di riuscire a spiegare ai miei allievi a scuola.

    Un caro saluto.

  11. Rocco says:

    attendiamo altre lezioni :P

  12. Ciao,
    il tuo tutorial è veramente chiaro, con immagini e spiegazioni dettagliate!
    Per un novizio come me, è stato veramente utile.

  13. Michele says:

    Che bellissime lezioni spero ne metterai ancora in rete, sei davvero bravo…. io da perfetto inesperto ancora devo comprare ARDUINO però dalla spiegazione che dai sembra molto facile iniziare . Puoi dirmi gentilmente quale ARDUINO prendere UNO o DUEMILA…. visto che vorrei prenderlo da amazon. Se vuoi possiamo sentirci per skype

  14. admin says:

    Ciao Michele.
    Grazie per i complimenti.

    Si metterò altre lezioni on-line, troverai sempre tutte le risorse ad Arduino facendo click sull’icona Arduino con titolo: “Arduino che passione” nella colonna destra.
    Ho aggiunto da poco al fondo di ogni lezione link a tutte le lezioni realizzate.
    Tieni in conto che nel prossimo futuro oltre alle lezioni aggiungerò esercitazioni e documentazione, se vuoi ti consiglio di iscriverti al mio feed rss per restare aggiornato.

    Per quanto riguarda cosa comprare Arduino 2009 o Arduino UNO ti rispondo che vi sono alcune differenze, elettroniche, che nel caso di chi incomincia ad imparare sono ininfluenti, in breve posso dirti che le due schede differiscono nell’interfaccia seriale-USB e nel Bootloader ed in alcune scelte tecnologiche che ne diminuiscono i costi di produzione (ma non all’utente finale), in alcuni particolari casi Arduino UNO ha prestazioni inferiori (ma si parla di particolarissimi campi di utilizzo), ma ti assicuro che si programma allo stesso modo e i programmi (sketch) sono interscabiabili sia su 2009 che su UNO e l’IDE (ambiente di sviluppo) è il medesimo. Io posseggo entrambe le schede e non ho alcun tipo di problema.
    On-line troverai tantissima documentazione su Arduino 2009 solo perché è il più vecchio ed il più utilizzato, ma certamente in un futuro ancora lontano Arduino UNO sostituirà Arduino 2009.
    Se la cosa può servire, ho ordinato da poco per la scuola presso cui insegno, 25 schede Arduino UNO per predisporre un nuovo corso da impartire ad una 4′ elettronici.

    Saluti.

  15. Michele says:

    Perfetto pensi sia possibile avere un scheda di arduino UNO con uno starter kit? ti ho aggiunto su facebook. Ottima delucidazione, ma i corsi che farai saranno anche online?

  16. Michele says:

    quale suggeriresti?

  17. admin says:

    Ciao Michele.

    Si è possibile, anche se credo che possa essere sufficiente comprare Arduino UNO e poi di volta in volta gli shield che necessitano in funzione delle esigenze. La componentistica la trovi in qualsiasi negozio di elettronica.
    Se però hai proprio necessità di un kit che comprenda i principali sensori con qualche attuatore, dai uno sguardo su cooking hacks trovi il prodotto: ELECTRONIC BRICK – STARTER KIT, attualmente non è disponibile, ma prova a scrivergli sono gentili, magari ti danno ulteriori informazioni.
    Su cooking hacks nella sezione Arduino saving paks trovi una serie di offerte interessanti in funzione dei tuoi interessi.
    Se non riesci prova a vedere su seeedstudio hanno anche loro ELECTRONIC BRICK – STARTER KIT però senza la scheda Arduino UNO che devi comprare a parte.
    Un altro prodotto, un po’ più semplice lo trovi su sparkfun e il kit: SparkFun Inventor’s Kit for Arduino with Retail Case.
    Prova a guardare sempre su SparkFun: Starter Kit for Arduino – Flex.
    Se trovo altro ti faccio sapere.

    Per quanto riguarda i corsi di cui mi chiedi saranno in presenza, a scuola e probabilmente distribuirò liberamente slide ed esercizi on-line, quindi quando saranno disponibili, se serve usali pure senza nessun problema.

    Saluti.

  18. admin says:

    Ciao Michele.

    Mi chiedi quale suggerirei tra Arduino 2009 o Arduino UNO,
    vai tranquillamente su Arduino UNO.

    Saluti.

  19. Ciao. Ho scoperto arduino da meno di 24 ore e ho appena ordinato la scheda da robot italy, il quale pero’ non ha saputo consigliarmi nulla sul genere di applicazioni da me richieste.Io sono un documentarista è costruisco quasi sempre da me l’attrezzatura necessaria al tipo di lavor che devo fare.Da qualche anno ho costruito una testa motorizzata per riprese.Il pregetto si è arresto qualche mese fa per mancanza di infomazioni, riguardo al progetto di muvere la testa con un giroscopio e un accellerometro. Cosa che a farla breve ho trovato su yuoutube con la scheda arduino.
    Mi mancano un pio di elementi.Il primo, i driver per mac il secondo uno schema per collegare un joystik wee (credo si scriva così) per realizzare il progetto in questione. Partedo dal presupposto che sia un ignorante di proporzioni apocallittiche( almeno in elettronica) potresti darmi una mano come un adulto potrebbe fare con un bambino? :) Umilmente grazie Tony

  20. Alberto says:

    Complimenti, davvero fatta bene, molto utile

  21. Giuseppe says:

    Buonasera professore, volevo chiederle dell’esistenza di simulatori di queste schede, tutto su pc. Volevo provare prima di acquistare una scheda Arduino a scrivere qualcosa e vedere se funziona. Sapete se esiste qualcosa di simile?

  22. Mauro_66 says:

    Salve Prof,

    rapida presentazione: CPU del 1966, diplomato T.I.E.E. ma dipendente di pubblica amm.ne. La passione per l’elettronica mi accompagna da bambino, soprattutto quella applicata alle ricatrasmissioni radio (sono radioamatore). Purtroppo la mia esperienza con la programmazione si ferma al basic con il C64 !!!

    A 45 anni ho deciso di passare l’inverno cercando di capirci qualcosa nel linguaggio di programmazione, stavo appunto iniziando qualcosa con i PIC quando ho scoperto Arduino. Due sole domande:

    1) sarà ostico per chi non conosce linguaggi di programmazione affrontare l’avventura Arduino ?!

    2) ho notato che non è stato pubblicato uno schema base del microcontrollore, ma tutti gli esperimenti vengono effettuati con una scheda microcontrollore e una basetta millefori. Capico che il motivo sia legato all’interfaccia di programmazione e alla possibilità di interagiere con un eventuale software compilato, ma se il microcontrollore deve lavorare senza una interfaccia grafica, ha un suo circuito base
    (vedi quelli dei PIC) ove poter applicare il microcontrollore una volta programmato ?

    Mi scuso per le domande che possono apparire banali.

    Grazie

    • admin says:

      Ciao Mauro.

      Risposta 1
      Se non hai mai utilizzato un linguaggio di programmazione all’inizio del percorso potrebbe risultare un po’ più difficile, ma ti assicuro che è possibile, prova a seguire le lezioni che ho realizzato on-line, ho usato un approccio graduale alla programmazione, dove fin dall’inizio si sperimenta, quindi la voglia di imparare dovrebbe in teoria avvenire in automatico :-) .
      Dalla prossima settimana, visto che incomincerò nuovamente i miei corsi su Arduino a scuola, amplierò le lezioni e i consigli on-line e magari, visto che la tua richiesta sull’apprendimento del linguaggio di programmazione non è l’unica che mi è giunta, magari dedicherò alcune lezioni più sul linguaggio.

      Risposta 2
      Puoi agire in due modi, compri una scheda Arduino UNO o simili, la programmi e la inserisci nel tuo sistema, oppure compri il solo microcontrollore e qualche componente accessorio, realizzi un circuito che ha funzionalità simili ad Arduino UNO, lo programmi con l’IDE Arduino e lo inserisci poi nel tuo sistema, il tutto ad un prezzo che è circa 1/3 del valore della scheda acquistata. Agendo in questo modo avrai delle limitazioni rispetto alla versione acquistata, che meglio si presta alla sperimentazione in laboratorio, ma una volta che hai prototipato il tuo sistema potresti passare ad una versione custom con i soli componenti essenziali. La seconda parte sarà motivo di lezione (anche on-line).

      Saluti.

  23. Salvatore says:

    Ottimo forum…come entrare a far parte della vostra community?

    • admin says:

      Ciao Salvatore, ci sei già :-)
      nessun forum, per ora solo commenti liberi ai post, se riesco con i tempi rispondo io alle domande o se altri utenti lo desiderano possono rispondere liberamente. Tutto abbastanza libero, blocco solo qualche flame.
      Poiché le richieste di aiuto sono moltissime io non riesco a rispondere a tutte le domande, però l’idea tua di aprire un forum potrebbe essere la soluzione, vedrò se riesco a realizzarla, il problema è sempre il tempo da dedicare alla moderazione.
      Grazie per essere giunto su questo sito, spero possa servirti.

      Saluti.

      Saluti.

  24. admin says:

    Ciao Daniele.

    Ho appena pubblicato la 4′ lezione su Arduino, trovi l’indice seguendo il link.

Lascia un Commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

*

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Articoli simili: