Pages: [1]   Go Down
Author Topic: Termometro RGB, Kelvin to RGB?  (Read 786 times)
0 Members and 1 Guest are viewing this topic.
Montalbano Jonico
Offline Offline
Sr. Member
****
Karma: 1
Posts: 287
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti, poco fa mi sono imbattuto in un'immagine simile a questa:

http://img.diytrade.com/cdimg/1113020/12701342/0/1273025995/Temperature_Sensitive_LED_RGB_Color_changing_Shower_head_CHT-1103.jpg

Bene smiley , lasciando perdere la doccia, si tratta quindi di led rgb che cambiano colore in base alla temperatura, es:
<= 32° ---> luce verde.

Facendo un po di ricerche ho trovato che effettivamente esiste una tabella di conversione tra gradi Kelvin e colori RGB.
Ora se non sbaglio 0 gradi celsius (c°) valgono 272 gradi Kelvin giusto?
Le tabelle di conversione che ho trovato però, partono tutti da 1000 gradi Kelvin, e danno i valori dei rispettivi R G B.

Volendo quindi rappresentare con un sensore di temperatura, un rispettivo colore con un led RGB come dovrei procedere se vorrei rappresentare ad esempio temperature nel range -20 c° a 50 c°.

Qualcuno di voi ha avuto già a che fare con conversioni tipo c° --> RGB ?

Grazie a tutti

Nicola
« Last Edit: June 27, 2012, 12:45:52 pm by Nik_90 » Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 423
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusa l'ignoranza ma sei tu che hai deciso di fare al conversione ? perchè altrimenti potresti mettere un controllo sulla temperatura con un range e poi dargli il colore, per esempio
if (temperatura >0 && temperatura<50)
{
colore= blu;
}
è un semplice esempio .
Se ho detto cazzate scusa smiley-lol
Logged

Montalbano Jonico
Offline Offline
Sr. Member
****
Karma: 1
Posts: 287
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

http://nwfsimages.s3.amazonaws.com/school/course/102/352.jpg

Come puoi vedere la scala parte da 1000 K e arriva a 8000 K, e va da un rosso accesso ad un blu. Questa è una delle tabelle, ma altre magari ti danno il valore preciso R G B del blu.

Il mínimo valore nella tabella è 1000 (kelvin)

1000 kelvin = 726,85 Celsius

Quindi potrei rappresentare tramite quella scala minimo 726 gradi  smiley-eek-blue che mi sembra decisamente troppo!

Volevo quindi sapere se esiste appunto una tabella di conversione tra gradi celsius a colori rgb

Grazie
Logged

Offline Offline
Sr. Member
****
Karma: 2
Posts: 328
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

se non sbaglio quella scala è il calore del colore delle lampadine...quindi non penso che faccia al caso tuo.... smiley
decidi un colore per grado e sei a posto...
tipo 10 gradi blu scuro
20 verde
30 rosso

e poi magari i gradi intermedi schiarisci...
Logged

Torino
Offline Offline
God Member
*****
Karma: 3
Posts: 766
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Se devi ottenere solo i tre colori potresti usare un sensore di temperatura e lo leggi da un pin analogico, crei una mappa con la funzione map di tre
Code:
  int val = analogRead (0);
  mappa = map (val, 0, 1023, 0, 2);
e usi uno switch case con lo stesso nome della mappa di modo da sfruttare il risultato della mappa e in ogni case gli scrivi il valore in pwm
Code:
switch (mappa) {
    case 1:
      analogWrite(led_rosso,255)
      break;
    case 2:
      analogWrite(led_verde,255)
      break;
  ecc.
  }
Ovviamente è un'idea.....poi mettici del tuo smiley
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 263
Posts: 21610
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

http://nwfsimages.s3.amazonaws.com/school/course/102/352.jpg
Come puoi vedere la scala parte da 1000 K e arriva a 8000 K, e va da un rosso accesso ad un blu. Questa è una delle tabelle, ma altre magari ti danno il valore preciso R G B del blu.

se non sbaglio quella scala è il calore del colore delle lampadine...quindi non penso che faccia al caso tuo.... smiley
La temperatura di colore é definita come un corpo nero portato a tale temperatura emana una luce di un certo spettro di luce che corrisponde a un colore. Corrisponde quasi alla temperatura del filamento di una lampada a incandescenza o alogena anche se quelle arrivano a 3400 K e non piú alto perché sopra si fonde il filo. Si usa nella tecnica e nella fotografia per definire lo spettro della luce e per definire cosa é bianco.
http://it.wikipedia.org/wiki/Temperatura_di_colore
http://en.wikipedia.org/wiki/Color_temperature
esempio di foto a dierse temperature di colore: http://de.wikipedia.org/w/index.php?title=Datei:Whitebalance4.jpg&filetimestamp=20050813111122


Quello che Tu vuoi fare é semplicemente abinare un colore alla temperatura dell'acqua. Comunque sceglierei blu per temperature basse, verde per temperature acettabili e rosso per temperature troppo alte.

Ciao Uwe
« Last Edit: June 27, 2012, 02:53:31 pm by uwefed » Logged

Pages: [1]   Go Up
Jump to: