LCD Screen and Beginnings of a Luxmeter

A project log for Environment Monitor

Monitor temperature and light levels. More features to come!

peter-mowenPeter Mowen 03/16/2019 at 18:280 Comments

Finally added an LCD screen and a light-dependent resistor (LDR)!

I followed the schematic in the Crystal Ball project in the Arduino Projects Book to wire-up the LCD screen and the Light Theremin project to wire up the LDR. Instead of leaving a potentiometer in the design to control the contrast of the LCD display, I used the potentiometer to find the resistance that gave me an acceptable contrast (about 10k) and replaced it with a resistor near that value. The degree symbol and the omega were made using the createChar() method from the LiquidCrystal library.

As displayed in the picture above, the LCD display shows the temperature in degrees Celsius and the resistance of the LDR. The resistance of the LDR can be used a proxy for how much light there is: the lower the resistance, the more light there is. In order for it to measure lux, I will need to either devise a calibration experiment or find a luxmeter to use to relate lux to resistance. All About Circuits has a really good article about how to build a luxmeter that I referenced in this version's design.

To program this design, I gutted the Thermometer sketch I used in the previous design and re-wrote it as the Environment Monitor sketch. Both sketches can be found on my github:

The java program that I wrote to read data from the serial port can also be found on my github.

So now that I'm displaying more than one piece of data, the LCD screen makes more sense than a set of LEDs. There are fewer cables to manage and it's easier to read. However, in future designs, I might bring the LEDs back to display temperature because I think they're cool. I would have to consider setting it up in such a way that the LEDs do not interfere with the luxmeter, but that's a problem for future me.

Future Hardware Updates: