Sunteți pe pagina 1din 4

Montaje y programacin de un robot simple con Arduino

Por David Arregui y Marco A. Rodrguez

Material

Arduino Nano
Cable microUSB
BreadBoard
Cables de conexin
Sensor Ultra sonidos
Chasis de robot
2x motor DC
L293NE
Regleta de conexiones

Montaje
En primer lugar montamos los motores [5] en el chasis y pasamos los cables de conexin hacia la parte de
arriba.

En la parte superior pegaremos las dos breadboard o placas de prototipage y la regleta de conexiones [2].
En la placa pequea conectaremos el sensor de Ultra Sonidos[1] y en el placa grande pinchamos el arduino
Nano[4] y el driver de motores L293NE [3].

Ahora realizaremos el conexionado, en la regleta de conexiones conectamos los cables que suben de los
motores a unos cables de conexin con jumpers [2]. En primer lugar conectamos a 5V [cable rojo] Tanto
la pata de Vin del sensor como las 4 patas de las esquinas del L293NE (las patas de ms a la izquierda
servirn para activar dar alimentacin al Chip, y las de la derecha para activar el ENABLE). De la misma
manera conectamos a GND tanto la pata de GND del sensor como las 4 patas internas del Chip. En
el caso de querer conectar los motores a una alimentacin externa cambiaremos las conexiones a 5v
(cables rojos) y los conectaremos a la fuente externa, y la conexin de tierra (GND) de la alimentacin la
conectaremos tamben donde esta la conexin de GND anterior. [Podemos conectar entradas de GND
tanto de alimentacin externa com la que viene de arduino; pero las conexiones de Vin del L293NE seran
unicamente las de la alimentacin externa]

En las patas 4 y 5 conectaremos el primer motor, y en las 9 y 10 el otro motor. El pin digital 7 lo usaremos
para conectar el sensor de Ultrasonidos.

Programacin
// Cdigo Para el control de motores ======================================
// El programa puede variar su funcionamiento segn como se hayan conectado los cables de
// motores -- quizs hace falta cambiar el cdigo para el correcto funcionamiento.
void setup(){
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
}
void loop() {
}
void atras(){
digitalWrite(10, HIGH);
digitalWrite(9, LOW);
digitalWrite(5, HIGH);
digitalWrite(4, LOW);
}
void adelante(){
digitalWrite(10,LOW);
digitalWrite(9,HIGH);

digitalWrite(5,LOW);
digitalWrite(4, HIGH);
}
void izquierda(){
digitalWrite(10,LOW);
digitalWrite(9, HIGH);
digitalWrite(5, HIGH);
digitalWrite(4,LOW);
}
void derecha(){
digitalWrite(10, HIGH);
digitalWrite(9, LOW);
digitalWrite(5, LOW);
digitalWrite(4, HIGH);
}

// Cdigo Para la lectura del sensor de UltraSonidos ===============================


void setup() {
Serial.begin(9600);
}
void loop()
{
long duration, cm;
pinMode(7, OUTPUT);
digitalWrite(7, LOW);
delayMicroseconds(2);
digitalWrite(7, HIGH);
delayMicroseconds(5);
digitalWrite(7, LOW);
pinMode(7, INPUT);
duration = pulseIn(7, HIGH);
cm = duration/29/2;
Serial.print(cm);
Serial.print("cm");
Serial.println();
delay(100);
}

Powered by:

http://marf.es

S-ar putea să vă placă și