Nombre: Emilia Aroca Salazar.
Curso: 10mo A Georgia Tech.
Fecha: 20/10/17
Servomotor + Teclado
Materiales:
· Servomotor.
· Teclado
· Arduino
· Resistencia
· Potenciómetro
· Cable
macho-macho
· Cables
macho-hembra
· LCD
Proceso:
Parte uno: CONECCIÓN:
1. Empezamos conectando
cables macho-macho en los puertos del 5-13 en el Arduino, su otro extremo los
colocamos en los puertos del teclado en su respectivo orden.
2. Luego
cogemos cables macho-hembra, un extremo del primer cable en el puerto del
teclado llamado D7 y su otro extremo va en puerto 4 del Arduino. El segundo
cable tiene un extremo en el puerto D6 en el teclado y en el Arduino se conecta
al puerto 3. Por último conectamos un cable macho-hembra a la conexión D5 al
puerto 2 en el Arduino.
3. Hacemos
lo mismo del punto anterior pero con los pares del teclado y el Arduino, (D3;
A2) (E; A1) (RS; A0).
4. Colocamos
nuestro potenciómetro en el lugar de nuestra preferencia.
5. Conectamos
un cable el cual va a tener un extremo en un punto negativo.
6. Con
un cable macho-macho conectamos el puerto del LCD llamado VDD a un puerto
positivo de nuestro protoboard, también hacemos la conexión entre el alambre
del LCD llamado VSS a un puerto positivo, este puerto positivo debe estar
debajo del punto en el cual conectamos el cable negativo de la primera pata de
nuestro potenciómetro. El puerto con nombre RW del teclado va estar conectado a
un punto negativo en el protoboard.
7. Por
ultimo conectamos el puerto VO con el punto debajo de la segunda pata, de
izquierda a derecha, de nuestro potenciómetro.
8. Conectamos el cable de color cafe de nuetro servomotor a un puerto negativo en el protoboard, el cable rojo de nuestro servomotor, va encambio, a un puerto positivo del protoboard. Finalmente conectanos el cable anaranjado del servomotor al puerto llamado "A3" en el arduino.
9. Paa finalizar esta etapa conectamos el extremo de un cable macho-macho en un punto positivo del protoboard y su otro extremo ira en el puerto con el nombre de "5V" en el arduino.
Parte dos: PROGRAMACIÓN:
Para programar
el LCD+TECLADO+SERVOMOTOR hay que unir los comandos de cada uno de ello, pero
no es unir por unir, debemos colocar cada comando de forma ordenada para que
nuestra conexión funcione correctamente.
/*
------------------------------ ------------------------------ ----
Prog_19_1
Leyendo un keypad de 4x4
------------------------------ ------------------------------ --------
*/
#include
<Keypad.h>
#include
<LiquidCrystal.h>
LiquidCrystal lcd(14, 15, 16, 2, 3, 4); // (
RS, EN, d4, d5, d6, d7)
#include <Servo.h>
const byte Filas = 4; //Cuatro filas
const byte Cols = 4; //Cuatro columnas
byte Pins_Filas[] = {12, 11, 10, 9}; //Pines Arduino
a los que contamos las filas.
byte Pins_Cols[] = { 8, 7, 6, 5}; // Pines Arduino a
los que contamos las columnas.
char Teclas [ Filas ][ Cols ] =
{
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
Keypad Teclado1 =
Keypad(makeKeymap(Teclas), Pins_Filas, Pins_Cols, Filas, Cols);
Servo myservo; //
create servo object to control a servo
// twelve servo objects
can be created on most boards
int pos = 0;
// variable to store the servo position
void setup()
{
lcd.begin(16, 2); // Fijar el numero de
caracteres y de filas
lcd.print("Jhohnlock"); // Enviar el
mensaje
myservo.attach(17);
}
void loop()
{ char pulsacion
= Teclado1.getKey() ;
if (pulsacion != 0) // Si el valor es 0 es que no se ha
pulsado ninguna tecla
{
lcd.setCursor(0, 1); // set the cursor to column 0, line 1
lcd.print(pulsacion); // print the number of seconds since reset:
if(pulsacion="A")
(pos=90;)
if(pulsacion=="B")
(pos=180;)
myservo.write(pos); //
tell servo to go to position in variable 'pos'
delay(2000);
// waits 2s for the servo to reach the position
pos=0;
}
}
No hay comentarios:
Publicar un comentario