Codigo Arduino
Codigo Arduino
#include <LEANTEC_ControlMotor.h>
ControlMotor control(2,3,7,4,5,6); //
MotorDer1,MotorDer2,MotorIzq1,MotorIzq2,PWM_Derecho,PWM_Izquierdo
#define PIN_LDR1 2
#define PIN_LDR2 3
#define PIN_FL1 0
#define PIN_FL2 1
#define P_MUERTO 10
#define GIRO_LINEA 50
int OFFSET_LDR1 = 0;
int OFFSET_LDR2 = 0;
int OFFSET_FL1 = 0;
int OFFSET_FL2 = 0;
///
int sensores[4];
int valor_neutro=0;
int velocidad=255;
int direccion_anterior=0;
#define LDR1 0
#define LDR2 1
#define FL1 2
#define FL2 3
////
void leer_sensores();
int calcula_diferencia();
void mostrar_valores();
///
void setup(void){
Serial.begin(9600);
///
leer_sensores();
OFFSET_FL1 = 0;
OFFSET_FL2 = sensores[FL1]-sensores[FL2];
else{
OFFSET_FL1 = sensores[FL2]-sensores[FL1];
///
valor_neutro= sensores[FL1];
///
void loop(void)
leer_sensores();
//mostrar_valores();
control.Motor(velocidad,calcula_diferencia());
}
void mostrar_valores(){
///
Serial.print(OFFSET_FL1);
Serial.print(OFFSET_FL2);
Serial.print(sensores[FL1]);
Serial.print(sensores[FL2]);
Serial.println(calcula_diferencia());
///
void leer_sensores(){
sensores[LDR1]=analogRead(PIN_LDR1)+OFFSET_LDR1
if(sensores[LDR1]<0){sensores[LDR1] = 0;}
sensores[LDR2]=analogRead(PIN_LDR2)+OFFSET_LDR2;
if(sensores[LDR2]<0){sensores[LDR2] = 0;}
sensores[FL1]=analogRead(PIN_FL1)+OFFSET_FL1;
if(sensores[FL1]<0){sensores[FL1] = 0;}
sensores[FL2]=analogRead(PIN_FL2)+OFFSET_FL2;
if(sensores[FL2]<0){sensores[FL2] = 0;}
///
int calcula_diferencia(){
int valor;
if(direccion_anterior==0){valor=100;}
else{valor=-100;}
velocidad = VELOCIDAD_BAJA_GIRO;
else{
valor = sensores[FL2]-sensores[FL1];
velocidad = VELOCIDAD_BAJA;
else {
valor = 0;
velocidad = VELOCIDAD_NORMAL;