Rainbow LED Ring V3 Arduino

In questi giorni ho trovato sul sito dfrobot un interessante prodotto: Rainbow LED Ring V3 Arduino

Rainbow LED Ring V3 Arduino

In Italia il prodotto è acquistabile dal sito robot-domestici da cui ne ho subito ordinato uno in arrivo nei prossimi giorni, spero che con le festività della prossima settimana il corriere non decida di consegnarmelo per l’epifania 🙂 sarebbe comunque una bella sorpresa da parte della befana.

In attesa che il nuovo gioco arrivi ho iniziato a leggere la wiki che la dfrobot ha realizzato per il prodotto, trovo l’iniziativa della wiki un progetto davvero interessante e utile, per molti dei prodotti disponibili a catalogo hanno realizzato una wiki dedicata in cui trovi molte dlle info che normalmente ti aiutano non solo in fase di utilizzo del prodotto ma sopratutto in fase di scelta, quando ancora stai valutando se il prodotto è adatto alle tue esigenze.

Caratteristiche del Rainbow LED Ring V3 Arduino

il Rainbow LED Ring V3 Arduino è dotato di 12 led RGB di tipo smd controllabili senza la necessità di un microcontrollore come Arduino, questo è possibile grazie all’Atmega168P simile a quello di cui sono equipaggiate le shede Lilypad.

Nel wiki trovi le seguenti caratteristiche tecniche:

  • CPU: Atmega 168P (Lilypad Board in Arduino IDE)
  • Bootloader: Optiboot diecimila
  • Supply voltage:5V
  • Output voltage:5V
  • Interface: Serial/I2C/Digital pins
  • Push button x2
  • 12 SMD RGB LED
  • Firmware upgradable
  • Stand-alone operation: No microcontroller needed for light script playback
  • Diameter:61mm

In pratica la board è realizzata su di un PCB di 6,1cm di diametro su cui sono alloggiati i 12 led rgb smd e 2 bottoni.

Il Rainbow LED Ring V3 Arduino è programmabile come fosse una Lilypad con l’IDE Arduino, questo la rende indipendente da un arduino esterno in fase di funzionamento.

La programmazione del Rainbow LED Ring V3 Arduino

per programmare il Rainbow LED Ring V3 Arduino puoi utilizzare sia un’interfaccia FTDI sia una Arduino Uno, in quest’ultimo caso utilizzi la I2C di cui sia Arduino Uno sia la Rainbow LED Ring V3 Arduino sono dotate.

Prima di procedere alla programmazione devi collegare il Rainbow LED Ring V3 Arduino al computer usando ad esempio un interfaccia FTDI esegui i collegamenti secondo lo schema:

Rainbow Ring V3 FTDI

se vuoi utilizzare Arduino uno come interfaccia I2C per programmare la Rainbow LED Ring V3 Arduino puoi seguire lo schema seguente:

Rainbow LED Ring V3 Arduino Diagram

Scrivere lo sketch e l’invio all’Atmega168P presente sul Rainbow LED Ring V3 Arduino puoi utilizzare l’IDE di Arduino.

Sketch di esempio per Rainbow LED Ring V3 Arduino

sul wiki della dfrobot è presente la libreria e tutti i file di esempio del progetto. Scaricali da questo link

Seguendo le istruzioni pubblicate nella wiki scarica il software dal link riportato alla riga superiore, decomprimi il file e trovi:

Directory Rainbow LED Ring V3 Arduino

individua la tua installazione di Arduino e copia all’interno della directory Libraries la cartella RGB_Ring_V3;

spostati nella dir \arduino-0022\hardware\arduino del tuo IDE Arduino;

nel file .rar scaricato e decompresso trovi una dir RGB_Ring_V3\boards and programmers-arduino\ che contiene il file boards.txt contenente le informazioni da aggiungere all’omonimo file presente nel path \arduino-0022\hardware\arduino 

Conclusa la procedura di copia dei file se hai l’IDE aperto chiudilo e riaprilo, troverai tra le board la nuova: “[Optiboot] Arduino Diecimila, Duemilanove, Nano, NG w/ ATmega168” nelle opziono Tools>Boards del menu dell’IDE.

Ho realizzato una piccola guida con scrren shot dell’operazione che devi eseguire per installare su mac OSX la board Rainbow LED Ring V3 Arduino come descritto sopra, trova la tua Applicazione: Arduino 1.0 o successivo

Rainbow LED Ring V3 Arduino

clicca con il tasto destro del mouse e seleziona “Mostra contenuto Pacchetto”:

Mostra contenuto pacchetto Rainbow LED Ring V3 Arduino

naviga fino al path \arduino-xxxx\hardware\arduino fino al file board.txt:

Rainbow LED Ring V3 Arduino

aprilo con TextEditor ed incolla in fondo le righe prelevate dal file board.txt fornito con il tar del Rainbow LED Ring V3 Arduino.

Apri l’IDE Arduino e nel menu Tools -> Board dovresti trovare le nuove schede:

Nuove opzioni nell'IDE Arduino

Nel file .rar che hai scaricato ci sono anche degli esempi di utilizzo della Rainbow LED Ring V3 Arduino, tuttavia se provi tali sketch e librerie scoprirai che essendo stati scritti con le direttive dell’IDE 0022 è necessario apportare delle modifiche sia alla libreria RGB_Ring_V3.h in quanto alla prima compilazione ricevereai errori simili ai seguenti:

In file included from RGB_Ring_V3.cpp:1:
RGB_Ring_V3.h:5:22: error: WProgram.h: No such file or directory
RGB_Ring_V3.h:6:24: error: WConstants.h: No such file or directory
In file included from RGB_Ring_V3.cpp:1:
RGB_Ring_V3.h: In function 'void random_leds()':
RGB_Ring_V3.h:293: error: 'random' was not declared in this scope
RGB_Ring_V3.h: In function 'void fader()':
RGB_Ring_V3.h:303: error: 'delay' was not declared in this scope
RGB_Ring_V3.h:307: error: 'delay' was not declared in this scope
RGB_Ring_V3.h: In function 'void fader_hue()':
RGB_Ring_V3.h:318: error: 'delay' was not declared in this scope
RGB_Ring_V3.h: In function 'void swaywobble(uint8_t, uint8_t)':
RGB_Ring_V3.h:379: error: 'delay' was not declared in this scope
RGB_Ring_V3.h:385: error: 'delay' was not declared in this scope
RGB_Ring_V3.h: In function 'void set_all_byte_hsv(uint8_t, uint16_t, uint8_t, uint8_t)':
RGB_Ring_V3.h:563: error: 'B00000001' was not declared in this scope
RGB_Ring_V3.cpp: In function 'void receiveEvent(int)':
RGB_Ring_V3.pde:-1: error: 'class TwoWire' has no member named 'receive'

As of Arduino 1.0, the Wire.receive() function was renamed to Wire.read() for consistency with other libraries.

RGB_Ring_V3.pde:-1: error: 'class TwoWire' has no member named 'receive'

Nel prossimo articolo ti spiegherò quali modifiche eseguire e a che scopo per provare il tuo sketch.

Buon divertimento !!!

  • Questo sito ed i suoi contenuti è fornito "così com'è" e Mauro Alfieri non rilascia alcuna dichiarazione o garanzia di alcun tipo, esplicita o implicita, riguardo alla completezza, accuratezza, affidabilità, idoneità o disponibilità del sito o delle informazioni, prodotti, servizi o grafiche correlate contenute sul sito per qualsiasi scopo.
  • Ti chiedo di leggere e rispettare il regolamento del sito prima di utilizzarlo
  • Ti chiedo di leggere i Termini e Condizioni d'uso del sito prima di utilizzarlo
  • In qualità di Affiliato Amazon io ricevo un guadagno dagli acquisti idonei qualora siano presenti link al suddetto sito.

Permalink link a questo articolo: https://www.mauroalfieri.it/elettronica/rainbow-led-ring-v3-arduino.html

2 ping

  1. […] « Rainbow LED Ring V3 Arduino […]

  2. […] un mese fa con l’avvicinarsi del Natale ti ho parlato di una scheda che mi ha molto colpito, la Rainbow Ring V3 e ne ho ordinata una da robot-domestici.it, insieme a […]

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.