IotSicurezza Informatica

Arduino : Per fortuna esiste anche l’hardware libero !

Arduino

Esiste anche l’hardware libero !

Arduino_Uno_-_R3
Arduino_Uno_-_R3

Arduino è la soluzione open source sviluppata nel 2005 da Massimo Banzi, David Cuartielles, Tom Ingoe, Gianluca Martino e David Mellis a Ivrea, presso l’Interaction Design Institute fondato da Olivetti e Telecom Italia. Con Arduino si possono realizzare in maniera relativamente rapida e semplice piccoli dispositivi come controllori di luci, di velocità per motori, sensori di luce, temperatura e umidità e molti altri progetti che utilizzano sensori, attuatori e comunicazione con altri dispositivi. È fornito di un semplice ambiente di sviluppo integrato per la programmazione. Tutto il software a corredo è libero, e gli schemi circuitali sono distribuiti come hardware libero.L’hardware originale Arduino è interamente realizzato in Italia dalla Smart Projects, mentre i cloni della scheda possono essere realizzati da chiunque in qualsiasi parte del mondo.

Si ma tutto cio’ e’ bello .. ma come posso programmarlo ?? cosa puo’ fare ??

Partiamo da cosa NON FARE !!!

Guida per i nuovi arrivati

Ciao a tutti, visto che ultimamente ci sono molte persone nuove che partono da zero, ecco qualche breve passo per non perdersi:

Cose da NON fare

(elenco in continuo aggiornamento)

  • utilizzare arduino a contatto di una superficie elettricamente conduttiva (ferro, acqua, ambienti umidi, etc..)
  • utilizzare arduino oltre i 5V, si può fare ma richiede qualche nozione aggiuntiva per evitare di friggere la scheda, se stessi, e la vecchietta del terzo piano
  • Iniziare a gridare “non funziona!”, ci sono molte FAQ, tra cui i più comuni problemi di installazione e errori di upload del codice (il 99% dei problemi)
  • Iniziare da 0 con progetti epici. Almeno prima chiedete
  • Con arduino NON si può fare lavori con le immagini. Non ha sufficiente potenza. A meno che per scattare una foto non vi basti risoluzione da 100x100pixel scattata in qualche decina di secondi
  • Cercate nel forum. Ormai mille e più progetti sono stati fatti, nulla vi vieta di prendere spunto un po’ di qua e un po’ di la
  • Se siete insicuri su collegamenti, tensioni e metodi vari chiedete. Anche se la domanda non riguarda arduino in particolare, molti saranno disposti ad aiutarvi
  • leggetevi il punto Chiedere AIUTO!!

Necessario, ovvero lista della spesa

  1. avere “arduino”(la scheda). Per ora non esiste un valido simulatore su cui effettuare prove, quindi quasi tutto va testato sulla board
  2. installare “arduino IDE” (il programma per programmare arduino) da http://arduino.cc/en/Main/Software
  3. installate i driver per arduino da: http://arduino.cc/en/Guide/HomePage

Nozioni di programmazione

A questo punto siete pronti per programmare il vostro arduino. Già ma come si programma arduino? Arduino usa il linguaggio C e C++, in versioni “alleggerite”. Agli inizi si consiglia spesso l’uso del C, perché è alla base di molti linguaggi di programmazione e per certi versi più intuitivo. Una buona guida (in italiano) la trovate qui: http://programmazione.html.it/guide/leggi/32/guida-c/ Particolarmente consigliata la lettura dei capitoli:

  • Elementi fondamentali del C
  • Controlli
  • Strutture avanzate
  • Pre-processore e Definizioni
  • Progetti di grandi dimensioni: 45. Errori comuni e regole di stile in C

evitiamo per ora puntatori, gestione dinamica della memoria e liste; vi ritorneranno utili quando avrete preso la mano. Il resto della guida potete saltarla a piè pari, che tanto con arduino valgono altre regole


L’importanza del reference

A questo punto diamo un’occhiata più approfondita a cosa ci offre arduino in più e in meno rispetto al C classico; l’elenco di strutture, variabili e funzioni messo a disposizione dall’arduino IDE lo trovate qui: http://arduino.cc/en/Reference/HomePage come potete notare, il reference è una manna dal cielo che anche i programmatori più esperti ripassano spesso: nel 99% dei casi molti dubbi vengono fugati in questo modo. Poco sotto la banda arancione, troverete anche altri link:

Language | Libraries | Comparison | Changes

Quelli interessanti ai nostri fini sono Language, la pagina che avete di fronte ora, e Libraries, che sono una serie di librerie aggiuntive per semplificarvi la vita 🙂


Sfrugulare da soli

Ora che avete un’infarinatura generale, potete iniziare a scrivere il vostro codice. Già ma da cosa iniziare? beh se avete giocherellato con arduino IDE, vi sarete accorti che sono già presenti dei codici già fatti. Delle spiegazioni approfondita dei codici, con tanto di immagini dei collegamenti elettrici da effettuare, le trovate qui: http://arduino.cc/en/Tutorial/HomePage


Chiedere AIUTO!!

Se non trovate nulla sul forum, o quello che trovate vi pare inadeguato, inadatto o confuso, non fatevi problemi e chiedete sul forum!

Ricordatevi di specificare:

  • modello della scheda arduino
  • versione dell’IDE arduino
  • eventuali librerie esterne usate
  • cosa volete fare
  • cosa non funziona e errori riscontrati
  • siate gentili con chi cerca di aiutarvi
  • se riuscite a risolvere il problema da soli, scrivete il procedimento adottato, molti vi saranno riconoscenti

 

http://playground.arduino.cc/Italiano/Newbie

Editorial contents of the arduino.cc website, such as texts and photos, are released as Creative Commons Attribution ShareAlike 3.0.