In this example we will explain how to make your own IR system for remote control and you will see how that system can be applied for directing mobile robot (or similar processes).
System consists of transmitter and receiver. IR LEDs emit light on frequency that is detectable with commercial IR receiver. How system works? On picture you can see how is NE555 times used to modulate IR light at 36 kHz.
On other side IR receiver with embedded band pass filter will lower output when light is detected. Problem with this system is that another source at same frequency can lower output. Some appliances require recognition of differences between multiple sources, just like TV remote control that have different buttons. So, we must embed a certain degree of coding.
In our example we use LD271 IR LEDs and SFH5110-36 IR receiver. The coding is implemented using MC145026 encoder chip and MC145028 decoder chip.
The MC145026 encodes nine lines of information and serially sends this information upon receipt of a transmit enable (TE) signal. The nine lines may be encoded with trinary data (low, high, or open) or binary data (low or high). The words are transmitted twice per encoding sequence to increase security.
The MC145028 decoder treats all nine trinary digits as an address which allows 19,683 codes. If binary data is encoded, 512 codes are possible. The VT output goes high on the MC145028 when two addresses are consecutively received (in one encoding sequence) which both match the local address. On next picture you can see internal blocks of these chips.
In our application we wanted to know in which direction our movable robot is directed. On every corner of rectangular place when robot can move, there is a transmitter that emits IR light with different code in compare to others. On the robot there are receivers for every code. When robot is directed to one of transmitter, the output of corresponding receiver is active and that information is processed inside main microcontroller. Reasonable question here is “Is it possible to have just one receiver for more transmitters?” The answer is YES. You just have to use microcontroller that can change receiving code. In our application we used in the beginning just one transmitter and one receiver, and in hardware implementation we use jumpers for code selection. Later, it was easier to make more receivers that making new design with uC. You can see on next pictures schematics of transmitter and receiver.
As you can see, the jumpers were used for code selection, and come addresses are even tide to fixed logic level (A8 and A9 to ground). How we generate 36 kHz frequency? We were use oscillator at 9,216 MHz and CD4541 frequency divider chip set to divide with 256. Transistor Q1 turn on LEDs. Transistor must be carefully selected to withstand current demands. Also, the number of LEDs can be variable, but keep in mind that more LEDs will drain the battery faster. In our application it was very important to cover large place so 9 LEDs were used.
Receiver has SFH5110-36 IR receiver with embedded filter and output is tied to CD4069 CMOS inverter for logic level adaptation. Also, one of inverter is used for indication purposes, so when the coded light is detected LED will turn on.
This system can be applied for remote control processes, for laser guns, and many more application. Note that if you need more transmitters (as it was in our case), you have to use tubes for directing of light in receiver. If receiver detects IR light for two or more different sources the output will be inactive to avoid undesirable behavior.