In this lab we created a solar seeker, namely a simple device that tracks a light source. Such a device can be used in satellites to keep the solar panels aligned with the sun, or in search and rescue robots that try to guide trapped people towards light. In order to implement the solar seeker we used two Cadmium Sulfide (CdS) photocells and a servo motor that rotated the photocells.
Click here to see the lab procedure. (80 kb word document)
Figure 1 shows our initial design. As we did our lab, we noticed some of the weaknesses of the design, which we will mention in detail, and tried to improve our device.
Figure 1. Initial design for the solar seeker.
Our initial design was quite simple, we had 5V on one end of the photocell group and ground on the other end. If the same amount of light fell on both photocells the middle voltage would be 2.5V. In the second stage, we had a comparator that compared the photocell group middle voltage to 2.5V. If the photocell voltage was higher than 2.5V, meaning more light falls on the left photocell, the comparator would output 1 and then in the following step the H-bridge would force the servo to turn to the photocell group to the left, aiming to equalize the amount of incident light falling on both photocells.
Essentially, we were on the right track but we had some technical problems in our design
1- As it is, the servo motors would always turn full force! this meant that even if the photocells received slightly different amounts of light, the comparator would output a 1 or 0 and turn the motor as fast as it can. The situation is analogous to a soccer player trying to dribble the ball in a straight line but who is only allowed to kick the ball with full force.
2- The comparator typically outputs about 3.5V, but we would like to be able to have higher voltages around 12.
In order to solve problem 1, we used pulse width modulation, and for the second problem we used two buffers.
PULSE WIDTH MODULATION So how does the pulse width modulator help us? In the previous setup, we used 2.5V only, now if we compare to a high frequency triangle wave, the output of the motor will be high for some fraction of time and low rest of the time. Effectively, this allows us to drive the motor with low voltages as well as high voltages.
Figure 2. Pulse width modulation.
As seen in Figure 2, the triangle wave results in the output voltage being high for some portion of the period and low for the rest. Analog input A causes the output to be low most of the time, this approximately corresponds to a voltage output of around 1V. Analog input B results in a 50% duty cycle that corresponds to a mean voltage output of 2.5V.
Now our analogous soccer player is able to have little touches on the ball to keep it in line.
We would ideally like to have a voltage output of 12 Volts for the H-bridge, however the TTL logic high output is about 3.5V. In order to achieve 12V we used buffers.
Figure 3 shows our final design. the open-collector invertor is the 7406 and the buffer is the 7407.
Figure 3. Modified design for the solar seeker.
The success for the device would be if it accurately kept track of a light source. We used a flashlight and took a video of our working solar seeker.