1. Tamiya kit de caterpillar
2. caja de engranajes de doble Tamiya
3. Arduino Diecimila
4. puente de la H L293e
5. 8 diodos
6. tablero de pan
7. 2 resistencia foto
lote 8 de cables
el código fuente:
int pinMotorL1 = 2;
int pinMotorL2 = 3;
int pinMotorR1 = 8;
int pinMotorR2 = 9;
int pinEnableL = 4;
int pinEnableR = 5;
int valPWM = 175;
void setup()
{
comenzar la comunicación serial
Serial.Begin(9600);
pinMode (pinMotorL1, salida);
pinMode (pinMotorL2, salida);
pinMode (pinMotorR1, salida);
pinMode (pinMotorR2, salida);
pinMode (pinEnableL, salida);
pinMode (pinEnableR, salida);
}
void ForwardR() {}
digitalWrite(pinEnableR,valPWM);
digitalWrite(pinMotorR1,HIGH);
digitalWrite(pinMotorR2,LOW);
}
void ForwardL() {}
digitalWrite(pinEnableL,valPWM);
digitalWrite(pinMotorL1,HIGH);
digitalWrite(pinMotorL2,LOW);
}
void BackwardR() {}
digitalWrite(pinEnableR,valPWM);
digitalWrite(pinMotorR1,LOW);
digitalWrite(pinMotorR2,HIGH);
}
void BackwardL() {}
digitalWrite(pinEnableL,valPWM);
digitalWrite(pinMotorL1,LOW);
digitalWrite(pinMotorL2,HIGH);
}
void StopR() {}
digitalWrite(pinEnableR,valPWM);
digitalWrite(pinMotorR1,HIGH);
digitalWrite(pinMotorR2,HIGH);
}
void StopL() {}
digitalWrite(pinEnableL,valPWM);
digitalWrite(pinMotorL1,HIGH);
digitalWrite(pinMotorL2,HIGH);
}
void StopAll() {}
StopR();
StopL();
}
void goForward() {}
ForwardR();
ForwardL();
}
void goBackward() {}
BackwardR();
BackwardL();
}
void TurnR() {}
ForwardL();
BackwardR();
}
void TurnL() {}
ForwardR();
BackwardL();
}
void move(byte val) {}
{if(Val==0)}
Serial.println ("Caso 0-Adelante");
goForward();
Delay(1000);
StopAll();
} else
{if(Val==1)}
Serial.println ("Caso 1-Atras");
goBackward();
Delay(1000);
StopAll();
} else
{if(Val==2)}
Serial.println ("Caso 2-Derecha");
TurnR();
Delay(1000);
StopAll();
} else
{if(Val==3)}
Serial.println ("Caso 3-Izquierda");
TurnL();
Delay(1000);
StopAll();
}
Else {}
Serial.println ("no hay ninguno valido");
goForward();
Delay(1000);
StopAll();
}
}
void loop()
{
flotador ojoDerecho = analogRead(1);
flotador ojoIzquierdo = analogRead(0);
adelante
Move(0);
Derecha
if(ojoDerecho > ojoIzquierdo) {}
Move(2);
}
Izquierda
otra cosa if(ojoIzquierdo > ojoDerecho) {}
Move(3);
}
}