

Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Code of line tracing motor to help you build it
Typology: Cheat Sheet
1 / 2
This page cannot be seen from the preview
Don't miss anything!


#include <AFMotor.h> //defining pins and variables #define lefts A #define rights A //defining motors AF_DCMotor motor1( 1 , MOTOR12_1KHZ); AF_DCMotor motor2( 2 , MOTOR12_1KHZ); AF_DCMotor motor3( 3 , MOTOR34_1KHZ); AF_DCMotor motor4( 4 , MOTOR34_1KHZ); void setup() { //Setting the motor speed motor1.setSpeed( 180 ); motor2.setSpeed( 180 ); motor3.setSpeed( 180 ); motor4.setSpeed( 180 ); //Declaring PIN input types pinMode(lefts,INPUT); pinMode(rights,INPUT); //Begin serial communication Serial.begin( 9600 ); } void loop(){ //Printing values of the sensors to the serial monitor Serial.println(analogRead(lefts)); Serial.println(analogRead(rights)); //line detected by both if(analogRead(lefts)<= 350 && analogRead(rights)<= 350 ){ //Forward motor1.run(FORWARD); motor2.run(FORWARD); motor3.run(FORWARD); motor4.run(FORWARD); } //line detected by left sensor
else if(analogRead(lefts)<= 350 && !analogRead(rights)<= 350 ){ //turn left motor1.run(FORWARD); motor2.run(FORWARD); motor3.run(BACKWARD); motor4.run(BACKWARD); } //line detected by right sensor else if(!analogRead(lefts)<= 350 && analogRead(rights)<= 350 ){ //turn right motor1.run(BACKWARD); motor2.run(BACKWARD); motor3.run(FORWARD); motor4.run(FORWARD); } //line detected by none else if(!analogRead(lefts)<= 350 && !analogRead(rights)<= 350 ){ //stop motor1.run(RELEASE); motor2.run(RELEASE); motor3.run(RELEASE); motor4.run(RELEASE); } }