Light Meter

A simple light meter. It's not calibrated to any meaningful scale, but the digital readout shows a higher number the brighter is the light falling on the photoresistor.

COMPONENTS AND SUPPLIES

InventrKits HERO

The HERO is a derivative of “Arduino UNO R3 Reference design” we just changed up a few things to make it our own. If you’re curious about what goes into our HERO board we published the open-source hardware files on our GitHub.

1

4 Digit Display Module

1

Photoresistor

1

220 Ohm Resistor

1

Male To Male Wire

8

NECESSARY TOOLS AND MACHINES

fingers, computer

APPS AND ONLINE SERVICES

Windows 10, Arduino 1.8.15

ABOUT THIS PROJECT

In our spaceship trapped under an ocean, I’m trying desperately to recharge my batteries, while still running enough systems to stay sane.  Life support, lighting, and the guitar amplifier all use up precious electricity, so sometimes the life support has to be shut off.  Problem is, the various ways I had tried of telling just how much light was falling on my solar cells were frustratingly inaccurate and full of guesswork.  How fast did the light have to be flashing in order for the batteries to be charging with systems running.  If only I had a numeric display that would show just how close to the break-even threshold I was!

Fortunately, while looking for the other half of my Reuben sandwich, I found a 4 digit, 7 segment digital display at the bottom of a broken filing cabinet that was being used to prop up the holding tank pumps.  Now I can tell just how much light is charging my batteries at any given moment, and adjust my systems appropriately to never be draining the batteries.

On a scrap of paper at the bottom of the drawer (where I actually did find my sandwich, so WIN!), there was also some bits of code that I could tweak to make the display show what I wanted.

Now I can confidently strum my guitar to relieve the stress of being buried, alive, at sea, even if I do occasionally have to turn off the oxygen pumps to do so…

CODE

				
					
				
			

SCHEMATICS

Breadboard Diagram

COMMENTS

Leave a Reply

Your email address will not be published. Required fields are marked *

#include int sensorPin = A0; // input pin for photoresistor int sensorValue = 0; // variable to store value from sensor // Display pins const byte CLK = 3; // define CLK pin (any digital pin) const byte DIO = 2; // define DIO pin (any digital pin) GyverTM1637 disp(CLK, DIO); void setup() { Serial.begin(9600); disp.clear(); disp.brightness(7); disp.display(“0000”); delay(1000); } void loop() { sensorValue = 0; sensorValue = analogRead(sensorPin);// read value from sensor disp.displayInt(sensorValue); delay(100); }
PROJECT AUTHOR
Leave a comment
TEAM MEMBERS
Mouse

Mouse thought up the idea, found the appropriate parts in the box, and found and modified existing libraries and code to make it work. I'd also like to thank the Academy...

ADDITIONAL CONTRIBUTORS
Alexander Eschenauer

The bits of code that make the photoresistor work, and turn it's reading into usable numbers.

Alex Gyver

Writing the GyverTM1637 library, which was the source for all of the code that made the display show the readings from the photoresistor.

TABLE OF CONTENTS
Leave a comment
Share on whatsapp
Share on facebook
Share on twitter
Share on linkedin
Share on reddit
Share on pinterest
Share on email

SIMILAR PROJECTS YOU MIGHT LIKE

I cascaded four SN74HC595 shift registers to control 32 LEDs on 4 registers using 3 wires. I am adding a I2C 20×4 LCD screen to display the register and led values. I might add a standard 16×2 LCD screen to show up it is done.
I got the Inventr Mega kit and started work on a lock for a door by using a 4×4 keypad, Uno, 20×4 LCD, and some resistors.