Parses local weather data and drives RGB LED strips to the color of the temperature outside
To make the experience fit your profile, pick a username and tell us what interests you.
We found and based on your interests.
TBGE_IOT_TEST_GUI_191113.mlpzGraphical User Interfacemlpz - 22.58 kB - 11/21/2019 at 03:35 |
|
|
TBGE_IOT_GENERIC_191114.inoSoftwareino - 23.57 kB - 11/21/2019 at 03:35 |
|
|
TGBE_IOT_LED_STRIP_PROTO_2_180724.zipLED Strip PCB Gerbersx-zip-compressed - 57.11 kB - 11/21/2019 at 03:07 |
|
|
TBGE_IOT_LED_STRIP_PROTO_2_180724.pdfLED Strip SchematicAdobe Portable Document Format - 51.74 kB - 11/21/2019 at 03:07 |
|
|
TBGE_IOT_MODULE_PROTO_5_181123.zipModule PCB Gerbersx-zip-compressed - 86.88 kB - 11/21/2019 at 03:07 |
|
Winter is in full effect, but we are having some interesting temperature fluctuations this week. This morning it was quite cold at 23F (-5C) outside. Below is the color of the temperature outside:
Later that night the temperature rose to a warmer 47F (8.3C). This is the color of the temperature outside:
This is a great example of how the Weather Color Strip can show you visually the temperature outside without having to look up the weather online. You can simply look at the color that is always there to gauge the temperature outside.
Hope you found this interesting.
The RGB LED's are a major piece to Weather Color Strip, and mixing of the RGB elements is also important in order to accurately show the color of the temperature outside. The colors are mixed by calculating duty cycles for Red, Green and Blue LED's based on the temperature information parsed from a weather API. The duty cycles are determined using this graphic I have made:
The problem I have noticed is the color spectrum can be green heavy, red heavy or blue heavy depending on the color balancing of the RGB elements. Ideally I would like to see an even spread of blue/green at lower temperature and red/green at higher temperatures. Currently I have tried four different strategies and would like to document the results:
The LED's I used are Cree SLV6A-FKB-CK1P1G1BB7R3R3. Digikey page is below:
You will notice that the LED voltage drops in each formula are changing slightly. This is change is due to changes in LED current. This voltage drop is very important when calculating ideal LED resistor values. Relationship between LED current and voltage drop can be found in the following graphs:
Another important section of the datasheet are the Relative Luminous Intensity curves. These curves show the relationship between current and luminous intensity. These are important when trying to calculation the ideal LED currents:
For this strategy I simply used a common resistor values for Red, Green and Blue LED's. I chose a simple 1k resistor.
Actual resistances, currents and intensities are summarized below:
RED | GREEN | BLUE | |
RESISTOR VALUE (OHM) | 1000 | 1000 | 1000 |
LED CURRENT (mA) | 10.16 | 9.000 | 9.050 |
INTENSITY (mcd) | 355.6 | 960.000 | 181.000 |
For this strategy I tried to make the LED current for Red, Green and Blue to be 10mA. Below is some math on how I calculated the LED resistor values:
RED | GREEN | BLUE | |
RESISTOR VALUE (OHM) | 1000 | 887 | 887 |
LED CURRENT (mA) | 10.16 | 10.124 | 10.169 |
INTENSITY (mcd) | 355.6 | 1079.895 | 203.382 |
For this strategy I tried to scale each LED current in order to have the same intensity for each LED (Red, Green and Blue). I was trying to achieve a target intensity of 400mcd. Using the Relative Luminous Intensity curves, I figured out how much current each LED would need in order to achieve 400mcd. Below is some tables/math on how I calculated the LED resistors values:
RED | GREEN | BLUE | |
20mA INTENSITY (mcd) | 700 | 1600 | 400 |
RELATIVE INTENSITY (@ 400mcd) | 0.571 | 0.250 | 1.000 |
REQUIRED LED CURRENT (mA) | 11.429 | 5 | 20 |
I have calculated the necessary current values to achieve 400mcd of intensity. Now I can perform similar calculations completed in the equal current strategy to calculate resistor values:
Actual resistances, currents and intensities are summarized below:
RED | GREEN | BLUE | |
RESISTOR VALUE (OHM) | 887 | 2430 | 442 |
LED CURRENT (mA) | 11.342 | 3.745 | 19.910 |
INTENSITY (mcd) | 396.956 | 399.451 | 398.190 |
This strategy involves having specific intensity ratios for red,...
Read more »Uploaded Weather Color Strip LED Strip Proto 2 files and updated all relevant material to reflect this latest revision.
Uploaded Weather Color Strip Module PROTO_5 files and updated all relevant material to reflect this latest revision.
Create an account to leave a comment. Already have an account? Log In.
That is a good idea Dan,
Maybe I can use RGBW and use the white LED to indicate weather states as you are suggesting. Let me think about this and I will probably add updates in my project log if I decide to implement a feature like this.
Become a member to follow this project and never miss any updates
I'd say this is cool, but sometimes it's hot too...
Did you consider modulating the color a bit to add another channel of weather data? Say, flashing for precip, with the frequency increasing as the intensity increases?