...
Create a program such that the motor rotates clockwise at the maximum speed when rotation speed and direction of a motor is dependent on the distance from an obstacle is less than 30cm, and rotates anticlockwise at half the maximum speed when the distance from the obstacle is greater than or equal to 30cmas follows.
Distance from Obstacle | Motor Rotation |
---|---|
Distance > 50 cm | Clockwise, full-speed |
25 < Distance <= 50 cm | Clockwise, quarter-speed |
20 < Distance <= 25 cm | No rotation |
Distance <= 20 cm | Anticlockwise, quarter-speed |
Hints
- Combine the codes and circuits in slides 3 and 10 Ultrasonic Distance Sensor and DC Motors, and use an if conditionmultiple if conditions. You will need ifs to be nested, i.e., ifs within ifs.
- analogWrite() with values 255,0 (dir1speed,dir2speed) and 64,0 ,128 respectively can be used for clockwise and full-speed and quarter-speed clockwise rotation. 0,64 can be used for quarter speed anticlockwise rotation. The speed is not perfectly linearly related to the value (duty cycle), and that is ok for this exercise.
Solution
...
- .