Children like to play and usually don’t like to study. But, it is very easy to teach them by some interesting stuffs. ‘Learning by playing’ is the best way to teach them. From the thinking I made a LED writing board for the kids. LEDs are arranged in matrix form and anything can be written or drawn by dragging the finger above the board. Every LED of the board can be lit by finger. Just put or drag your finger into the LED, it will light up instantly.
I made the board using 64 LEDs as a demo. It can be made by using more LEDs for professional use.
Step 1: Required Components
1. LED (64 pcs) (any color can be used, I used red)
3. Resistor (15k) (64 pcs)
4. Resistor (220 ohm) (16 + 64 pcs)
5. Resistor (4.7k) (16 pcs)
6. ATmega8a (4 pcs)
7. NPN Transistor (2N2222 or equivalent) (16 pcs)
8. PCB board (15 X 15 cm) (3 pcs)
The LTH-209-01/LTH-1550-01/LTH-1650-01 reflective object sensors consist of an IR diode, and phototransistor mounted on an optical axis in black plastic.
When IR led inside the reflective sensor is forward biased, sensor transmits IR rays. These rays get reflected back when it hits on an obstacle. Photo transistor is aligned in such a way that it collects the reflected ray. When light falls on phototransistor, transistor starts to conduct. Hence the collector current increases and collector voltage decrease.
- Reverse Voltage: 5 VSensing Distance: 3.81 mm
- Maximum collector-emitter voltage: 30V
- Operating Temperature: -25 ° C to +85 ° C
- Maximum forward current: 1A
- Dimensions: 8.7mm (L) x 4.5mm (W) x 5.6mm (H)
- Maximum emitter-collector voltage: 5V
- Maximum power dissipation for input diode: 90mW
- Maximum collector current: 20mA
- Maximum power dissipation for output phototransistor: 100mW
Datasheet of LTH-1550-01 is attached below.
ATmega8 microcontroller has 23 programmable input/output (I/O) pins which can be used for interfacing with external world. It is possible to configure them as input or output by setting a particular register value through programming. This IC comes in 3 different packages, but we are using the popular 28-Pin PDIP package (Atmega8-16PU). Note that Atmega8 is available in 2 versions; ATmega8 and Atmega8L. Atmega8L is a low frequency version which works up to 8MHz frequency.
ATmega8 has similar features and pinout like ATmega328 with reduced memory and reduced cost. It's 8Kb memory is enough for my project.
Step 2: All About Circuit
As you notice the circuit diagram, you will see leds and sensors are connected to the microcontroller in matrix format. I used ATmega8 for my project because it is low cost microcontroller and pin configuration is same as Arduino uno. It has only 20 usable gpio pins. As we need to control lots of leds and sensors direct connection is not economical. Directly you can connect maximum 10 leds and 10 sensors. In matrix arrangement it is possible to connect 50 leds and sensors but I connect 34 leds and sensors for my project. For controlling 64 leds and 64 sensors I required 4 microcontroller. The schematic shown above is a unit of 16 leds and 16 sensors. For 64 leds and sensors you need 4 units. If you like to make more bigger board more units will be required and is multiple of 16.
The obstacle sensor has two components, one IR led and one phototransistor. I controlled 4 IR leds by one microcontroller pin and for that I used a transistor because arduino pin are not capable to drive 4 leds directly. Diode is used because the input from the sensor is taken by keypad scanning method. If we directly connect without diode then microcontroller detects false reading. Because one row pin is high when other three row pins is low and the sensors connected to the low pin will get zero reading which is not expected.
Step 3: Arduino Code
Step 4: Soldering the LEDs
Take a 15X15 cm PCB board and put 16 LEDs into the PCB board as 4X4 matrix form as shown in the images. Keep minimum required place between every LED to place the photointerrupter. Carefully solder all the LEDs to the board.
Step 5: Making Row & Column
As you know in a matrix leds are arranged as row and column. Connect the anode pins of four leds in every column together. Then solder cathode pins of four leds in every row together. You need not to take any extra wire. Just bend the lag and solder it to the same lag of adjacent led. You may follow the pictures. Cut the extra part of the pins after soldering.
Step 6: Add More LEDs
In the previous step we connected 16 leds in a 4X4 matrix. For 8X8 matrix we need to build three more 4X4 matrix (or more if you want to make it bigger). So, add more leds as you like in matrix form. Don't connect one matrix to enother. We will control each matrix individually.
Step 7: Connecting Resistor
It is the time to connect resistor (the life saver of led) to each column. Connect a 220 ohm resistor to each column (anode) of the matrix. For the sake of alignment I used extra jumper wire to connect resistors to the matrix.
Step 8: Connecting Extra Wires
After connecting resistor with all the columns connect 6-7 cm long extra wires to another leads of the resistors. Do the same for all the rows. Just connect 6-7 cm long extra wires to every row directly without using any resistor.
Step 9: Adding the Sensors
Now, we will add the magic part of the circuit, the sensors. But we have no place in the pcb to solder the sensors. For that we will use another pcb board and use it as multi-layer style. Just put another identical pcb on the bottom side of the previous pcb. Make sure that, you place it parfectly aligning with the previous. Otherwise it will be hard to place the sensor from the top board to the bottom board.
Now, place the sensors one by one in between two rows and carefully solder with the second pcb. Place same number of sensors.
Step 10: Connecting the Transistors
Now, connect the BJT to the second pcb according to the schematic. Don't forget to add a 4.7k resistor to the base of the transistor.