Temperaturens färger i Karesuando
-
- Inlägg: 3
- Blev medlem: 4 mars 2008, 09:09:25
- Ort: Trondheim
Temperaturens färger i Karesuando
jag ska köpa ett gäng led-lampor, RGB, som jag vill ska ändra färg efter utomhustemperaturen. jag föreställer mig att det är en enkel sak eftersom det redan finns elektroniska termostater, och led-lamporna är gjorda för att ändra färg efter ett program. Är det nån som har varit inne på det här spåret förut? och vet vem som säljer vad jag behöver? jag vill helst inte behöva sätta mig och löda ihop en burk själv, för jag är närmast analfabet på elektronik. så har du ett bra svar: förklara enkelt. det är bäst för alla inblandade. tack och hej
Hmmmm... menar du som t.ex. 20°C i skuggan = röd färg, -20°C = blå färg?
Eller något annat?
I enkelhet kan man göra så att man läser temperaturen med en lämplig sensor och slår upp i en tabell som kanske har ett värde för var 10 grad och sedan interpolerar man.
Jag har gjort något liknande (inte med LED) och gjort en "enkel" C-rutin som jag räknar om med:
Jag har sedan en tabell i minnet som jag letar upp lämpligt avsnitt på och interpolerar kurvan där och sedan kör det bra.
Eller något annat?
I enkelhet kan man göra så att man läser temperaturen med en lämplig sensor och slår upp i en tabell som kanske har ett värde för var 10 grad och sedan interpolerar man.
Jag har gjort något liknande (inte med LED) och gjort en "enkel" C-rutin som jag räknar om med:
Kod: Markera allt
int Scale_Value(int Power_Low, int Power_High, int Power_In, int Range_Low, int Range_High)
{ /* The scaling routine, scales output between Range_Low and Range_High depending upon 'Power_'-relations */
/* It has been nessecary to cast the incoming values directly due to a sign-issue, thus the casting to long */
long PowerScale, PowerOffset, RangeScale, Calc;
PowerScale = (long)Power_High - (long)Power_Low; /* The powerscale length */
PowerOffset = (long)Power_In - (long)Power_Low; /* The offset from scale start */
RangeScale = (long)Range_High - (long)Range_Low; /* The range to scale */
Calc = PowerOffset * RangeScale; /* First multiply */
Calc /= PowerScale; /* Then divide, gives best resolution */
Calc += Range_Low; /* Add base value to get correct output value */
return((int)Calc); /* Reply with the result */
}
-
- Inlägg: 3
- Blev medlem: 4 mars 2008, 09:09:25
- Ort: Trondheim
tackar vänligast för engegemang, ja precis, säg +10 =rött, och sen i så många färgvariationer som möjligt till blått vid -30. vi ska minnas att den tid på året det är varmare än +10 i karesuando är det också så ljust att lampors sken inte syns. jag ska begrunda detta första tips och hoppas på fler funderingar och reflektioner.
hej
hej