Arduino

Argomenti relativi alla programmazione con Arduino

I componeti di un quadricottero

Costruire un quadricottero, i componenti principali

Nel precedente articolo abbiamo appreso le nozioni base che riguardano il volo di un quadricottero. In questo andiamo a vedere nel dettaglio quali sono i componenti principali che costituiscono il nostro aeromodello.
Partiamo subito da un elenco delle parti per poi analizzare in dettaglio gli elementi

  • 2 Eliche CW (senso di rotazione Orario)
  • 2 Eliche CCW (senso di rotazione Antiorario)
  • 4 motori Brushless
  • 4 ESC (Electronic Spedd Controller)
  • 1 FC (Flight Controller)
  • 1 Frame (Telaio)
  • 1 Batteria LiPo (Polimeri di Litio)
  • 1 radiocomando con ricevitore 4 o più canali
Premessa

La descrizione e la scelta degli elementi viene affrontata in modo pratico, basato sulla mia piccola esperienza, non vengono analizzati tutti gli aspetti tecnici legati alle leggi fisiche e ai calcoli matematici che portano la scelta e l’abbinamento delle varie parti. Come anticipato nello scorso articolo questa è solo una guida molto basilare, con lo scopo di introdurre semplici nozioni che dovranno necessariamente essere approfondite per avere nozioni complete sulla costruzione e sul volo dei quadricotteri.

Continua a leggere

Come costruire un quadricottero con Arduino

Tutorial per realizzare un quadricottero

introduzione

Il mondo dei quadricotteri si sta diffondendo in modo esponenziale negli ultimi tempi, troviamo modelli di ogni tipo con funzioni diversificate, dai modelli ultra sofisticati per rilievi e riprese video fino a modelli giocatolo da poche decine di euro, passando per quelli destinati al trasporto di piccoli oggetti o a modelli impiegati nel soccorso e nel controllo. Costruire e capirne il funzionamento è un’esperienza molto soddisfacente anche se i costi, purtroppo,  per realizzare un semplice modello non sono molto contenuti, probabilmente si arriverà ad una spesa tra i 200 e i 350€.

Ho passato diverso tempo nel cercare informazioni tecniche e nella realizzazione di un modello, superando diverse difficoltà, a volte banali, che vorrei condividere con voi scrivendo alcuni tutorial. Non mi reputo un esperto in materia quindi potrei fare alcuni errori nell’affrontare certi concetti, ma in vari siti, anche esteri, non ho trovato tutti i passaggi dettagliati che portano alla costruzione di un quadricottero in maniera semplice, ma se in alcuni la parte software è spiegata egregiamente non lo è la parte hardware o viceversa.
Quindi quello che cercherò di fare è di scrivere una guida passo passo sulle procedure che portano a far volare un piccolo quadricottero.

Continua a leggere

Arduino leggere tag rfid con ID-12

Come acquisire un tag rfid tramite lettore ID12

In un vecchio articolo avevamo visto come  utilizzare il lettore ID-12 impiegando la scheda Netduino, per acquisire il codice di un tag 125KHz. Ho ricevuto diverse richieste per creare un piccolo tutorial che prevedesse l’uso di una scheda Arduino.
La parte teorica, relativa alla tecnologia rfid e alle caratteristiche del lettore ID-12, rimane pressoché invariata. Anche lo schema elettrico è identico dato che il Netduino possiede la stessa disposizione dei pin come una Arduino UNO. Per chiarezza riporto comunque  i collegamenti tra la UNO ed il lettore di tag.

Arduino ID-12LA

Continua a leggere

Gestire una tastiera 4×3 con Arduino

Come utilizzare un keypad a 12 tasti (tastiera 4×3) con Arduino UNO

Gestire una tastiera 4×3 o comunemente tastierino numerico, permette di sviluppare applicazioni nelle quali l’utente ha la possibilità di interagire con Arduino UNO immettendo codici numerici, come ad esempio password per accedere ad aree riservate o impostare parametri per far funzionare in modo corretto un apparecchio.
La lettura dello stato dei pulsanti del tastierino avviene eseguendo un continuo scansionamento (pooling) degli stessi.

Un tipico tastierino 4×3 è composto da una matrice di pulsanti disposti in 4 righe e 3 colonne. Quando premiamo un pulsante della tastiera viene collegata elettricamente una riga con una colonna.

Tastiera Continua a leggere

Motor Shield utilizzarlo con Arduino UNO

Come pilotare motori dc utilizzando il motor shield

I motorini dc sono molto comuni nei vecchi giocatoli, possiamo recuperarli per costruire nuovi giochi, dei robot o dei rover utilizzando una scheda Arduino o Netduino. Queste schede, come è noto, non permettono di pilotare direttamente un motore dc perché la corrente in uscita dai pin è insufficiente ed il rischio di danneggiare irreparabilmente la scheda è inevitabile.
Esistono in commercio numerosi shield che dispongono di driver capaci di alimentare questi motorini dc, genericamente chiamati motor shield.

Motor Shield

Quello che ho utilizzato per questo tutorial è il motor shield ufficiale versione R3. Lo shield si basa sul driver L298P prodotto da ST microelectronics, configurabile anche per pilotare motori passo passo come visto in questo precedente tutorial.

Continua a leggere

Tutorial come costruire un cubo led 3x3x3

Costruire un cubo led 3x3x3 con Arduino Micro

Arduino come sappiamo è una piattaforma molto versatile che permette di realizzare diverse tipologie di progetti. La parte che preferisco maggiormente riguarda la realizzazione di progetti che in qualche modo risolvano o migliorino una attività pratica.
Nonostante ciò molti esperimenti vengono realizzati ai soli fini didattici o ludici. Il cubo led 3x3x3 è sicuramente uno di quei progetti che vengono realizzati per stupire gli amici!

Di tutorial per realizzare cubi led 3x3x3 ne esistono centinaia, ma nonostante ciò ho voluto realizzare anche io l’ennesimo cercando di spiegare la sua realizzazione in modo molto semplice, questo perché molti utenti,  che sono alle prime esperienze, hanno bisogno di spiegazioni passo passo molto elementari.

Cubo led 3x3x3

Continua a leggere

Webduino scheda relè evitare blocco Arduino UNO

Come aggiungere relè al progetto senza bloccare la scheda

Molti utenti che hanno realizzato il tutorial Scheda relè remota con Arduino e Webduino, dopo aver constatato il funzionamento del codice hanno poi implementato il codice per la gestione di ulteriori relè. A questo punto si sono accorti che il codice smette di funzionare e Arduino UNO sembra bloccata.
Tutto ciò avviene perché aggiungendo istruzioni contenenti stringhe ad un certo punto si arriva a saturare la memoria SRAM, questo è il motivo per cui la scheda va in blocco. La mancanza di memoria SRAM di fatto non permette di eseguire le istruzioni del nostro sketch.

Come è possibile risolvere il problema senza aumentare la memoria SRAM?

Sapiamo che la scheda possiede anche una memoria EEPROM da 1KB, e che tramite la funzione PROGMEM possiamo memorizzarci delle stringhe.

Anche la libreria Webduino permette di salvare e richiamare le stringhe dalla memoria EEPROM, quindi possiamo usare questa funzionalità per liberare SRAM e permettere la normale esecuzione del codice.

Vediamo come modificare una porzione del codice del precedente articolo:

if(Rele1 == true)
  server.print("<tr><td style=\"color: red;\">RELE 1 ON</td><td>");
else
  server.print("<tr><td style=\"color: black;\">RELE 1 OFF</td><td>");

utilizzando le funzioni della libreria Webduino, per memorizzare le stringhe nella EEPROM

//memorizza le stringhe sulla EEPROM
P(str_rele1ON) = "<tr><td style=\"color: red;\">RELE 1 ON</td><td>";
P(str_rele1OFF) = "<tr><td style=\"color: black;\">RELE 1 OFF</td><td>";

if(Rele1 == true)
  //richiama la stringa dalla eeprom
  server.printP(str_rele1ON);
else
  //richiama la stringa dalla eeprom
  server.printP(str_rele1OFF);

il codice precedente fa uso dell’istruzione P() e del metodo printP().

P() ha il compito di memorizzare la stringa nella EEPROM proprio come accade con l’istruzione PROGMEM. per richiamare la stringa è sufficiente richiamarla utilizzando il metodo printP() dell’oggetto server.

In definitiva se volete aggiungere più relè è sufficiente modificare il codice del tutorial come nell’esempio precedente.

PCF8574AP come espandere porte IO

Utilizzare un PCF8574ap per espandere le porte IO di Arduino

Capita di trovarci a realizzare applicazioni in cui il numero dei pin digitali richiesti, supera quelli disponibili sulla scheda Arduino UNO. In questi casi potremmo utilizzare una scheda con un numero maggiore di pin IO (ad esempio la Arduino MEGA, la Arduino DUE …) o scegliere dei circuiti esterni che danno la possibilità di espandere le porte IO utilizzando una comunicazione seriale I2C o SPI.

L’integrato PCF8574AP permette di risolvere questo problema fornendo 8 porte IO che possono essere gestite utilizzando il collegamento seriale I2C. Lo schema elettrico seguente mostra come collegare il pcf8574ap alla scheda Arduino Leonardo. L’unica osservazione riguarda le uscite del PCF8574, infatti come potete osservare i led non sono collegati direttamente alle porte dell’integrato ma bensì sono collegati tramite una resistenza alla linea dei 5Vdc. Questo perché l’integrato non è in grado di fornire la corrente sufficiente per alimentare il led; è quindi necessaria una resistenza di pull-up.

Continua a leggere

Microsoft Embedded Conference 2014

Partecipa alla seconda edizione della Microsoft Embedded Conference

Microsoft Embedded Conference

L’associazione culturale DotNetCampania, costituita da un team di persone del territorio campano ed appassionate delle tecnologie Microsoft, ha organizzato a Napoli per il giorno 15 Febbraio 2014 la seconda edizione della Microsoft Embedded Conference, una giornata completamente gratuita dedicata alle tecnologie embedded del mondo Microsoft. Quest’anno, il cuore dell’evento sarà caratterizzato dall’Internet Of Things e dalla M2M Communication, considerando che il 2014 sarà l’anno della consacrazione dell’interconnessione di tutte le tipologie di device e dispositivi embedded alla grande rete. Vedremo in che modo la Microsoft permetta la realizzazione di soluzioni di questo tipo, dando vita ai cosiddetti “Intelligent Systems”, ossia di sistemi fortemente interconnessi a partire da sensori ed attuatori posti ai “bordi” della rete che permettono in primo luogo di alimentare i centri di calcolo con una enorme mole di dati in tempo reale ed in secondo luogo di attuare delle azioni in seguito alle decisioni prese a valle dell’elaborazione dei dati stessi.

Continua a leggere su http://mec2014.dotnetcampania.org/

24LC256 utilizzare una memoria seriale su bus I2C

Come usare una memoria 24LC256 su bus I2C

Il limite di memoria di una scheda Arduino può essere superato utilizzando delle memorie esterne che permettono di aggiungere capacità di memorizzazione per tutte quelle applicazioni che richiedono la registrazione di dati. Possiamo scegliere tantissimi tipi di memorie a seconda del tipo di interfaccia (I2C, SPI, parallela…) e dalla loro capacità.

Per questo tutorial ho scelto una comunissima EEPROM Seriale prodotta da Microchip, la 24LC256. Questa memoria può essere collegata alle schede Arduino tramite bus I2C e offre 256 Kbits di memoria (32KB). La pin function della memoria è rappresentata in figura:

24LC256

Continua a leggere

Sondaggi

Quali sistemi usi maggiormente per i tuoi esperimenti?

View Results

Loading ... Loading ...
Seguimi su Twitter