IL BLOG DI Luca Panebianco

UDOO: come unire Rasperry PI e Arduino DUE in un unica scheda

By Luca Panebianco | maggio 9th, 2013 | LEAVE A COMMENT

 

logo_UDOO

Cos’è UDOO?

UDOO è una scheda di prototipizazione economica che integra l’ambiente Linux/Android con il mondo Arduino, unendo sulla stessa scheda una CPU ARM Cortex-A9 Freescale i.MX 6  Dual o Quad core da 1GHz e un microcontrollore ARM  Cortex-M3 Atmel SAM3X8E, lo stesso dell’Arduino DUE, consentendo quindi di tenere ancora a più stretto contatto queste realtà.

Ad esempio da una parte si può utilizzare l’A9 per gestire un web server, tutte le acquisizioni e la connettività con altri apparecchi(ZigBee ad esempio) possono essere fatti attraverso l’M3, programmabile direttamente dall’Arduino IDE anche dal sistema operativo installato sulla UDOO(essa è compatibile con la versione di Ubuntu e Android distribuita da Linaro).
(altro…)

In arrivo il nuovo Lego Mindstorm EV3:più potenza e compatibilità con IOS/Android

By Luca Panebianco | gennaio 8th, 2013 | SHOW COMMENT(1)

ev3Al Ces 2013 tenutosi a Las Vegas la LEGO ha presentato il nuovo Lego Mindstorm EV3, evoluzione di un prodotto oramai messo in commercio(parliamo della prima versione) nel 1998 e che ha ricevuto consensi sopratutto negli ultimi anni(nel 2011 l’NXT2 ha venduto più che nel suo anno di uscita nel 2006).

Il nuovo sistema è mosso da un “Mattoncino intelligente”,che si chiama NXT, con un processore ARM9 con 16Mb di flash, 64 di RAM, USB2.0, alloggiamento per una scheda SD esterna, WiFI, Bluetooth e le consuete porte per collegare sensori, attuatori e fino ad altre quattro di queste unità. Da non sottovalutare inoltre la compatibilità con Android e IOS che consentirà di poter comandare o pilotare il robot con il cellulare.

Nel kit,che verrà lanciato sul mercato nella seconda metà del 2013, saranno compresi 3 servomotori, 2 touch sensors, una coppia trasmettitore/ricevitore infrarosso (che ci permette di controllare il robot da distante o individuare la fonte di trasmissione del segnale) e un sensore capace di rilevare sei differenti colori(oltre al bianco e al nero) , l’intensità di luce in una stanza e delle superfici colorate, oltre che funzionare da piccola torcia multicolore. Inoltre è garantita la retrocompatibilità con i componenti delle vecchie serie. Il costo del kit sarà sui 350$.

Il kit avrà inoltre componenti e istruzioni per costruire fino a 17 robot differenti, uno dei quali chiamato spik3r, uno “scorpione” capace di individuare un beacon che trasmette un segnale infrarosso, orientarcisi e sparargli qualche colpo prima di caricarlo fisicamente.

spik3r, il robo-scorpione

spik3r, il robo-scorpione

Il tutto è immerso in un’ambiente di sviluppo semplice e funzionale ma, ricordiamo, l’NXT si può programmare anche con altri software come ad esempio LabVIEW.

Insomma, alla faccia di chi dice che i Lego sono per bambini! 😀

Pilotare lo schermo di un Nokia 5110 con Arduino

By Luca Panebianco | novembre 23rd, 2012 | LEAVE A COMMENT

 

Per aggiungere un po’ di interattività ed autonomia ad un progetto è necessario spesso avere un’interfaccia grafica, che sia un semplice menù, una GUI un po’ più complessa o delle schermate che ci mostrano dei grafici. Per raggiungere questi scopi possiamo utilizzare alcuni schermi di vecchi modelli di cellulari, che hanno un driver per pilotarli all’interno semplice da accedere e utilizzare con i microcontrollori.

Lo schermo di cui parliamo in questo articolo e in altri a seguire è lo schermo del Nokia 5110 delle dimensioni di 84×48 pixel, pilotati dal driver Philips PCD8544. Questo schermo, oltre ad essere economico(si può trovare per un paio di euro lo schermo già sul circuito da EBay, come quello in cima a quest’articolo) è molto semplice da gestire, soprattutto grazie alla libreria che verrà introdotta in questo articolo.

In questa prima parte parleremo di:

  • Hardware: driver e schermo
  • Come utilizzare lo schermo senza libreria
  • La libreria LCD5110: come funziona e che funzioni ci mette a disposizione

(altro…)

Utilizzare l’HC05: modulo Bluetooth Low Cost compatibile con Arduino

By Luca Panebianco | novembre 9th, 2012 | SHOW COMMENTS (11)

Introduzione

L’HC05 è un modulo di ricezione/trasmissione Bluetooth a basso costo acquistabile ad esempio attraverso EBay ad un costo che parte dai 5 dollari. Poichè però i contatti non solo alla distanza canonica di una breadboard(2,54mm) ma a 1.9mm e non con i fori usuali è consigliabile comprare separatamente l’adattatore(ad un costo di circa 4 euro).

Molti venditori, però, propongono una soluzione che consiglierei a tutti che comprende la scheda già saldata sull’adattatore ad un costo intorno ai 8-9 euro.

L’unica accortezza è quella di selezionare la versione che funziona con la UART(e quindi collegabile direttamente all’Arduino o con un adattatore USB-TTL al PC) invece che quella che comunica in RS-232 (la semplice seriale con i segnali a +/-12 volt, non utilizzabile con l’Arduino)

HC05 con segnati alcuni suoi pin

Caratteristiche e utilizzo

Queste sono alcune delle sue caratteristiche

– Baudrate supportati 2400 – 1382400.

– Basato sul CSR Bluetooth chip BC417143

– Bluetooth specification v2.0 + EDR

– Alimentazione: +3.3VDC 50mA

– Frequenza di funzionamento:  2.4GHz ISM band

– Modulazione:  GFSK(Gaussian Frequency Shift Keying)

– Emission power:  ≤4dBm, Class 2

– Sensitivity:  ≤-84dBm at 0.1% BER

– Velocità: Asincrona:  2.1Mbps(Max) / 160 kbps, Sincrona: 1Mbps/1Mbps

– Sicurezza:  Autenticazione e criptazione

– Misura: 26.9mm x 13mm x 2.2 mm.

– Temperatura di funzionamento: -20°C ~ +75 °C

La caratteristica che differenzia questo modulo da altri della stessa famiglia è che questo modulino è configurabile attraverso degli AT Command.

Alcuni venditori, però, dicono specificatamente che i moduli potrebbero essere configurati all’acquisto come master o slave e con una comunicazione seriale diversa da quella canonica dell’Arduino 9600 8N1, occorre quindi configurarlo correttamente.

Questa modalità di configurazione si attiva in due modi:

Nella prima bisogna :

– collegare il pin 34 alla massa

– alimentare il modulo(pin 12 e 13)

– collegare il pin 34 all’alimentazione (o comunque bisogna riuscire a dare un livello logico alto)

In questo modo il modulino entrerà in modalità AT con la configurazione che salvata al suo interno( di solito 9600 8N1, ma come abbiamo detto potrebbe anche essere diversa).

Altrimenti si può:

-collegare il pin 34 all’alimentazione 

-alimentare il modulo(pin 12 e 13)

In questo modo il modulo entrerà in modalità AT sempre con una configurazione con baudrate 38400 8N1.

Alcuni comandi

Questi sono alcuni dei comandi che possiamo utilizzare, ricordandosi che occorre aggiungere i caratteri \r\n alla fine di essi:

  • AT\r\n  -> Se tutto è andato a buon fine il modulo dovrebbe risponderci OK\r\n
  • AT+ROLE=1\r\n  -> Imposta il modulo come Master
  • AT+ROLE=0\r\n  -> Imposta il modulo come Slave
  • AT+UART=115200,0,0\r\n  -> Imposta la comunicazione a 115200 8N1

Una lista più completa dei comandi si può trovare in un documento .pdf preso da insctructable scaricabile da qui

Arduino DUE: anche Arduino apre le porte ad ARM e ai 32 bit

By Luca Panebianco | ottobre 22nd, 2012 | LEAVE A COMMENT

Annunciato già da un po’ di tempo l’Arduino DUE è dal 22 Ottobre disponibile sul sito e all’acquisto.

Questa versione fa un vero e proprio salto generazionale: dal microcontrollore ATMega328p dell’Arduino UNO ad 8 bit funzionante a 16 Mhz si passa al SAN3X8E, microcontrollore sempre della Atmel basato su tecnologia ARM Cortex-M3 funzionante a 84 Mhz a 32 bit.

Anche i quantitativi di memoria disponibili sono aumentati, soprattutto per quello che riguarda la SRAM: dagli 8 kb della Mega/ADK ai 50Kb della DUE e 256kb per il nostro programma e sarà presente un connettore USB aggiuntivo che funziona come USB Host, quindi può tranquillamente rimpiazzare l’ADK( che costa molto di più).

Quello che non cambia in questa nuova versione è l’IDE che, a detta degli sviluppatori, rimarrà ugualmente fruibile da tutti, e ci sarà la possibilità di utilizzare i vecchi programmi per l’Arduino UNO che verranno adattati durante la compilazione alla nuova piattaforma. Inoltre le shield delle precedenti versione dell’Arduino dovrebbero rimanere ugualmente compatibili.

Questa è la lista di tutte le caratteristiche:

Microcontrollore AT91SAM3X8E a 32 bit
Tensione di funzionamento 3.3v
Tensione di alimentazione (raccomandata) 7-12v
Tensione di alimentazione (limiti) 6-20v
Pin I/O Digitali 54( di cui 16 utilizzabili come PWM)
Pin di ingresso analogico 12
Pin di uscita analogici(DAC) 2
Memoria Flash 512kb
SRAM 96 KB (64 + 32 KB)
Frequenza di funzionamento 84 Mhz
USB Host Si
Debug JTAG/SWD
Corrente totale in uscita su tutti pin I/0 130mA
Corrente DC per il pin a 5V raccomandato 800mA
Corrente DC per il pin a 3.3V 800mA

Il prezzo sarà all’incirca 46-47 euro, forse un po’ troppo rispetto ad altre soluzioni ARM più potenti dell’Arduino DUE, che però ha il vantaggio di avere un IDE accessibile per tutti, librerie sviluppate da terzi che coprono qualunque ambito e una community numerosa e sempre disponibile ad aiutare.

La pagina ufficiale sull’Arduino DUE è disponibile qui.