From our last year's experience, the noise is the strong light reflection of the ground as it is broadcasted by TV. The sensor is unable to detect white line and green ground in some places. Also, the ground is not clean enough. Some black noise(foot print) may lead to unfavorate behavor of the robots. So the utmost important work for me is to shift the stability of our robot.
Have you ever take a picture of the floor? You can use a the role of film to take the picture of the floor. You know, it's the negative film. And if the light of boardcasting is go through your cloths and come to the sensors. You cover the sensor by the film taken from the floor. The light out side is white light, it reflex on the green floor, so the film will intercept the green light (because the film is negative.).
Try it.
Besides, you should make pulse to your tranceiver, it's bout 40KHz, and it can intercept the noise. Because the light of boardcasting is about 50Hz or continuous.
The third way you can use is that,
You put a sample of the floor and the line into your robot. You cover it up. Use the same sensors with your sensors, the receivers will get a voltage as it receive reflextion from the sample, it's reference voltages. And you use the reference voltages to detect the sensors which is used to detect the line and the floor.
--|\
| >----
--|/
this is an opamp
you can compare if the reference voltage as detecting on green sample is equal, little smaller, or higher than the voltage you receive from the sensors or it's large difference from it. Then you can recognize if it's green or white.
Another problem for me is that due to mechanic design and the sensor we choose( Banner D11 photoelectroic sensor) , it is hard for me to put the sensor in the front and back of the robots. I can only put the sensor in the sides of the robot.
No, the stable control for line tracker is that the sensors have to put in front the robot. This was proved. You can do some changes, but it'll make your robot better.
(1), to count whitelines corrected. Currently I use two sensors as one, that is when the two sensor both detect a white, I think it is a white . both detect black I think it is a black. Else(one black one white) then it is determined by previous condition. However it detects wrong number of lines from time to time. As for my adjust algrothim, it is very important to detect the right number of whitelines.
The floor is green and white (lines). Therefore, as you get good detection, you will know where you are. Note that the start area of robocon have a different colors from the green floor. You have to take care of as the robot start, it cannot know the floor is green or white if you only use 2 status of the floor. Give your robot 4 status to detect the floor. RED, GREEN, BLUE and WHITE. The start area is usually RED and BLUE.
In this case, if you use 2 sensors, you will see that, if there is something wrong, your 2 sensors will go wrong in the same way, and it's no effect, because your 2 sensors will be so close.
(2) How can I find my position if in case the robot lost because of a bang of some other accedents. How can I re-position myself?
Close your eyes and move around, then do you know where you are?
If you got better sensors, and algorithms, you may know where you are all the time. But with IR sensor like this only, it seems cannot.
But if you lost your position for a short distance, and you wanna to find it again. You may use the sensors arranged as I told you. At the conner, as you lost your position, the conner is still inside the ring of sensors. Therefore, you can re-find it.
3)To use a compass. As in this year's competition, there is no lines in a part of the ground. We have tried several methods to position in this area. We have try some expensive gyros, however it doesnot work good enough after one or two minutes. As for compass, we are afraid that it may be affected by the cameras and other electrical equippments in the TV station where we will compete. Have you got any good idea about this?
well, if the gyro does not work good, it's from your program or your circuit. The gyro is much better than the compass. However, both of them have an limited accuracy. You should take it in account.
You don't have to worry about it. You only need the compass for large inaccuracy. For example, you turn 90 deg, but the compass show that you turn only 80 deg. It's oki... Use the encoder on your motor to compute it. And use the white line on the floor to fix the noises.
I'm in Vietnam. And in the last contest, my team lost from the national contests. My page is at
www.99a1.net/vp99/doanhiep/falleaf.htm
But it's in vietnamese.