Objective
<
IMG2 Add picture of your breadboarded photoresistors
Comments on output?
What range of values did your potentiometer output?
Did Turning your potentiometer clockwise increase or decrease the value?
The values range from 0 to 100. Turning the potentiometer clockwise increases the value.
What range of values did your photo resistors output for a white surface and for a black surface?
The values of photo resistors range from 350 to 610 for a white surface and 691 to 860 for a black surface.
IMG2 Add picture of your soldered motor shield connected to an Arduino mega
What is the purpose of the motor driver/shield?
The motor shield let us use the Arduino to control the direction of the motor and its speed.
Challenge #2: Explain why you need to calibrate your photoresistor values.
What problem does this help solve and what problems do you still see coming from your photoresistors?
We need to calibrate the photoresistor value to make sure that it's working properly with the current light condition and track. It helps solve the possibility of the photoresistor not reading the right value and thus, the robot not following the line correctly. The possible problem could be the distance of the photoresistor from the ground.
What was the best PID values that you used? How well did this track? Any limitations?
The best PID values was
P = 12.00, I = 0.05, and D = 0.52. This values worked well for the drag race track. However, this values didn't work well with sharp turns like the frequency sweep.
What does PID stand for? What is the purpose of the P, the I, and the D?
What steps did you take to choose the best values for your robot?
Explain this like you would for someone taking this course next year.
P stands for Proportional control, I for Integral control, and D for Derivative control. The purpose of P is to transform the robot's error to the desired turn rate. It makes the robot oscillate and look for the black line, while D is used to smoothen the oscillation to turn smoothly. And I is to add all the past errors and adjust the turn rate accordingly. To choose the best values for the robot, we started with I and D at 0 and some values for P and speed. Depending on the response, we increased P and D by intervals, adjusted speed, and kept I in a minimum. The modifications were tested in different tracks, and we marked the values that worked on each one.
IMG2 Add picture of your 3D printed chasis
Explain what you have created, what functional modifications (need at least 2)
you made to the design and add a picture of your 3D printed chassis.
The first design is our light shield, which holds the LED circuit on top and the photoresistor circuit in front. The second design is the modified chassis where we included a space to attach the light shield in front. We also added some holes in the middle to easily attached the batteries and boards using zip ties.
Our robot has four circuitry, potentiometers, LED for calibration, photoresistors, and LED for easier reading inside the light shield. The potentiometers are used to adjust the speed and PID values. Photoresistors are used to read values for black and white surface. These circuits are all connected to the Arduino board and the Adafruit Motor Shield for the robot to work. The components are labeled in the picture above.
Cali: The Cat and the Hat in action!