Create a Line Tracing Robot using DE0. This board is programmed with VHDL via Altera Quartus.
Eight IR sensors are used.
Since the hardware does not have capacitor connected to IR Recieving Sensor, it is very vulnerable to noise. To be specific, when the robot approaches a horizontal line, the sensor value stutters causing the program to incorrectly count the amount of times where robot passed a horizontal line.
To avoid this, a rejection code was added.
In addition, to reduce noise that can cause robot to decide wrong rotation control, the robot decides IR Detection with the following instruction;
By Calculating the amount of sensors detected for each group(shown with the boxes) and applying a threshold, the machine can decide where the line is located more safely. This calculation is done in parallel.