Sensore colore TCS3200 e modulo audio JQ6500

 

Testiamo il sensore TCS3200 in un circuito con l’utilizzo di un modulo audio JQ6500: il colore riconosciuto dal sensore sarà poi pronunciato tramite un modulo audio e mostrato tramite l’accessione di un led RGB.

TCS3200 sensore colore jq6500

Altri sensori di luce possono essere trovati in questo articolo Panoramica dei moduli sensori di luce

TCS3200 Sensore di colore – Descrizione

Il sensore di colore TCS3200 è un convertitore colore luce-frequenza, è composto da 16 fotodiodi con filtri blu, 16 con filtri verdi, 16 con filtri rossi e 16 non filtrati. Tutti i fotodiodi dello stesso colore sono collegati in parallelo. Quando un oggetto è posto frontalmente al modulo, ad una distanza non superiore a 10 mm, questo viene illuminato dai 4 LED bianchi e la luce riflessa andrà a colpire i 64 fotodiodi, ottenendo in uscita un’onda quadra (Duty cycle 50%) con una frequenza direttamente proporzionale all’intensità della luce riflessa.

TCS3200 sensore colore jq6500

La frequenza a fondo scala in uscita può essere regolata su uno dei tre valori preimpostati disponibili tramite due piedini dell’ingresso di controllo.
Gli ingressi digitali e l’uscita digitale permettono di interfacciarlo direttamente ad Arduino o ad altri circuiti logici. I piedini S2 e S3 sono usati per selezionare quale gruppo di fotodiodi (rosso, verde, blu, chiaro) sono attivi.

TCS3200 sensore colore jq6500

Specifiche tecniche

  • Chip: TCS3200
  • Alimentazione: da 3 Vdc a 5 Vdc
  • Uscita a livello TTL: 0 – 5 V
  • Distanza di rilevamento: 10 mm
  • Dimensioni (mm): 28x24x18

Dove trovare il sensore

Il sensore utilizzato nell’articolo è prodotto dalla SUNFOUNDER, ma come riportato nel paragrafo precedente, il sensore di colore TCS3200 è stato implementato in moduli prodotti da altre aziende.
Uno di questi è il modulo codice HMTTCS3200 che può essere acquistato presso il sito Homotix,  il suo costo al momento della pubblicazione di questo articolo è di circa 12€.
Se al momento dell’ordine inserirete il codice sconto dedicato agli utenti del sito adrirobot avrete diritto ad uno sconto.

Descrizione del progetto

In questo progetto utilizzeremo una scheda Arduino UNO R3 (originale o clone), a cui collegheremo il sensore di colore TCS3200, un modulo JQ6500 e un modulo KY-009 RGB full color LED SMD, alcune resistenze limitatrici, questi ultimi componenti saranno montati su una piccola breadboard.
Per i collegamenti si useranno dei cavetti colorati di tipo maschi/maschio e maschio/femmina a seconda dei pin a cui sono da collegare.

Scheda Arduino UNO

La scheda Arduino Uno è una scheda microcontrollore basato sul processore Atmega328. Dispone di 14 ingressi/uscita digitali (di cui 6 possono essere utilizzate come uscite PWM), 6 ingressi analogici, come oscillatore è utilizzato un risuonatore da 16 MHz.
Sono disponibili: un collegamento USB, un jack di alimentazione, un header ICSP, e un pulsante di reset.
Esso contiene tutto il necessario per utilizzare il microcontrollore, è sufficiente collegarsi a un computer con un cavo USB (l’alimentazione può essere derivata alla presa USB) oppure alimentare con un adattatore AC-DC oppure tramite batteria per iniziare.

Modulo JQ6500

Per dare voce ad Arduino viene utilizzato un modulo JQ6500 in grado di riprodurre file wav mono o stereo standard,

TCS3200 sensore colore jq6500

N° PinNome PinFunzioneNota
1K1Esecuzione primo filePortare a GND per mandare in esecuzione
2K2Esecuzione secondo filePortare a GND per mandare in esecuzione
3K3Esecuzione terzo filePortare a GND per mandare in esecuzione
4K4Esecuzione quarto filePortare a GND per mandare in esecuzione
5K5Esecuzione quinto filePortare a GND per mandare in esecuzione
6SGNDMassaTerminale di massa
7ADKEYPorta AD
8BUSYModulo in PlayLivello alto quando c'è l'uscita audio (led acceso)
Livello basso quando non c'è nessuna uscita audio
9RXRicezione dati seriale UART
10TXTrasmissione dati seriale UART
11GNDTerminale di massaMassa alimentazione
12DC-5Vingresso di alimentazione del moduloLa tensione non può superare 5.2V
13ADC_Rcanale destroUscita amplificatore cuffie
14ADC_Lcanale sinistro
15SPK-- altoparlante Amplificatore altoparlanti a trasmissione diretta < 1W / 8Ω
16SPK++ altoparlante
Ourpcb

Per controllare la riproduzione dei brani viene utilizzato un protocollo di comunicazione seriale.
Il modulo JQ6500-16P  dispone di una memoria flash da 16Mbit, per la programmazione è presente sul modulo una porta micro-USB, il programma di gestione è direttamente presente nella memoria del modulo.

Alcune caratteristiche

  1. Supporto frequenza di campionamento (KHz): 8 / 11,025 / 12/16 / 22.05 / 24/32 / 44,1 / 48
  2. Uscita DAC a 24 bit; dinamica 90dB ; SNR 85dB
  3. Supporto file system FAT16, FAT32
  4. Una varietà di modalità di controllo: modalità seriale, modalità di controllo tramite tasti
  5. Supporta l’annuncio inter-cut mettendo in pausa la musica di sottofondo in corso
  6. Classificazione dei dati audio in base alla cartella; supporta fino a 100 cartelle con ogni cartella assegnata a 1000 brani
  7.  Livello di volume regolabile con 30 valori, 10 tipi di equalizzazione.
  8.  Flash SPI esterno se collegato al computer, in grado di visualizzare flash drive SPI per aggiornare il contenuto
  9.  Riproduzione della musica attraverso il controllo tramite linea seriale con Micro controller
  10. Nella modalità di gestione a pulsanti, è possibile scegliere modalità di play.

KY-009 RGB full color LED Module

Il modulo KY-009 RGB full color LED , si presenta come una piccolo circuito che misura 18,5 millimetri x 15mm, su di esso è montato un LED RGB tipo 5050 SMD e un connettore a 4 pin.
Il LED può emette una ampia gamma di colori mescolando rosso, verde e blu. La quantità di ciascun colore primario può venire regolata tramite un pilotaggio di tipo PWM.

Mini breadboard

La Mini breadboard utilizzata misura 4.5 x 3.5 cm su cui sono presenti 170 punti di collegamento e una base autoadesiva che la rende ideale per applicazioni in spazi ristretti. La si può trovare in 5 diversi colori (verde, bianco, blu, nero, rosso).

Riassunto materiale necessario

Scheda Arduino UNO R3 TCS3200 sensore colore
Modulo JQ6500 Modulo KY-009 RGB full color LED
Cavi colorati M/M M/F Breadboard
Resistenze di vario valore Altoparlante 8 Ω 0,5 W

1 x 150Ω (marrone, verde, marrone)
2 x 100Ω (marrone , nero, marrone), 100Ω
1 x 1KΩ (marrone , nero, rosso)

Schema dei collegamenti

TCS3200 sensore colore jq6500

TCS3200 sensore colore jq6500

Listato del programma

Segue lo Sketch del programma, per la gestione del sensore di colore TCS3200 e del modulo audio  JQ6500.
Per il suo funzionamento occorre che sia stata caricata la libreria per la gestione del modulo JQ6500. Per le istruzioni riferirsi al relativo articolo.
All’interno del modulo si dovranno caricare i relativi file audio.
Una volta lanciato il programma, quando si mostrerà la superficie colorata al sensore, il modulo KY-009 RGB full color LED riprodurrà il colore riconosciuto mentre l’altoparlante comunicherà a voce il valore.
In questa demo il programma è impostato per tre colori primari: rosso, verde e blu.

Download Sketch

Scarica file audio

Scaricare schema

Filmato che mostra il funzionamento del programma

Versione con modulo audio DFPalyer Mini

E’ disponibile lo stesso progetto che utilizza però un diverso modulo audio, in questo caso il DFPlayer Mini.
Vedere articolo Riconoscimento colori con TCS3200 e DFPlayer mini