Tabla de contenido:

Bloqueo del servo del teclado: 5 pasos
Bloqueo del servo del teclado: 5 pasos

Video: Bloqueo del servo del teclado: 5 pasos

Video: Bloqueo del servo del teclado: 5 pasos
Video: controlar un servo con un teclado matricial 2024, Mes de julio
Anonim
Bloqueo del servo del teclado
Bloqueo del servo del teclado
Bloqueo del servo del teclado
Bloqueo del servo del teclado
Bloqueo del servo del teclado
Bloqueo del servo del teclado

Hola a todos, espero que hayan tenido un buen día. Si no es así, con suerte, puede rebobinar con una mentalidad abierta a este tutorial y algo de música terapéutica. La programación puede ser complicada. Afortunadamente, este tutorial no es una molestia, por lo que tal vez puedas lograr algo popular llamado (con una voz poderosa): ¡¡¡EL ÚLTIMO BLOQUEO DE TECLADO SERVO !!! Esa es realmente solo mi introducción, espero que les haya gustado. De todos modos, vamos a calentarnos los dedos para escribir. (Una canción genial: can-can song (música clásica)).

Suministros:

-Tus dedos

-Tus manos también, eso es importante

-Cable USB para Arduino

-Cualquier tipo de arduino disponible (tengo el Arduino Mega)

-Teclado Matriz (teclado - ebay, teclado - amazon)

-Micro o servo estándar (estoy usando un micro servo)

- * Opcional * Placa de pruebas - cualquier tipo

- * Opcional * Fuente de alimentación (5V)

Paso 1: ¡Tiempo esquemático

¡Tiempo esquemático!
¡Tiempo esquemático!
¡Tiempo esquemático!
¡Tiempo esquemático!

Entonces, ¿qué hago primero? Conecta el Arduino a la computadora. A continuación, conecte el teclado. * Nota: debe conectar los pines del último pin en el teclado como el primer pin digital en el arduino. Y vaya de derecha a izquierda después de eso *. El teclado tiene pines 2-9 en el arduino. El servo tiene el pin 10 como señales digitales. Ate las conexiones a tierra del arduino, el teclado y el servo y también el 5V. * También tenga en cuenta que el servo se usa mejor con una fuente de alimentación externa o un adaptador con 5V (enchufe de pared), pero sigue siendo opcional. * No tiene que atar la conexión a tierra y 5V físicamente, lo que quiero decir es solo para conectar un cable del Arduino al servo. Este esquema no ayuda a los principiantes, así que permíteme explicarte en detalle. Básicamente, el último pin es 2 y el primero es 9, dos es 8, tres es 7, y así sucesivamente. Ir de izquierda a derecha 2 2.

Paso 2: ¡Tiempo de codificación

¡Tiempo de codificación!
¡Tiempo de codificación!
¡Tiempo de codificación!
¡Tiempo de codificación!

¡Bien, ahora estamos en la parte de codificación! ¡Aquí es donde ocurre la verdadera magia! Entonces, hay un programa de prueba para probar primero el teclado y el servo. Aquí:

//www.elegoo.com//2016.12.9

/ * @file CustomKeypad.pde

|| @version 1.0 || @autor Alexander Brevig || @contacto [email protected] || || @description || | Demuestra cómo cambiar el tamaño del teclado y los valores de las teclas. || # * / #incluir

const byte FILAS = 4; // cuatro filas

const byte COLS = 4; // cuatro columnas // definir los símbolos en los botones de los teclados char hexaKeys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5 ',' 6 ',' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}}; byte rowPins [FILAS] = {9, 8, 7, 6}; // conectarse a los pines de fila del byte del teclado colPins [COLS] = {5, 4, 3, 2}; // conectarse a los pines de columna del teclado

// inicializar una instancia de la clase NewKeypad

Teclado customKeypad = Teclado (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);

configuración vacía () {

Serial.begin (9600); } bucle vacío () {char customKey = customKeypad.getKey (); if (customKey) {Serial.println (customKey); }}

//www.elegoo.com//2016.12.08 #include

Servo myservo; // crea un objeto servo para controlar un servo

// Se pueden crear doce objetos servo en la mayoría de las placas

int pos = 0; // variable para almacenar la posición del servo

configuración vacía () {

myservo.attach (9); // conecta el servo en el pin 9 al objeto servo}

bucle vacío () {

for (pos = 0; pos = 0; pos - = 1) {// va de 180 grados a 0 grados myservo.write (pos); // le dice al servo que vaya a la posición en la variable 'pos' delay (15); // espera 15ms a que el servo alcance la posición}}

Aquí está el código del proyecto (voy a ser honesto contigo, no hice mucho, solo agregué la parte del servo, ¡agradezco a las personas que hicieron todo el código!):

#include Password.h

#include Teclado

/*

|| Entrada de contraseña simple usando el teclado de matriz || 5/4/2012 Actualizaciones Nathan Sobieck: [email protected] || *

/ * es para validar la contraseña

// # es para restablecer el intento de contraseña

/////////////////////////////////////////////////////////////////

#incluir

//https://www.arduino.cc/playground/uploads/Code/Password.zip #include //https://www.arduino.cc/playground/uploads/Code/Keypad.zip

Contraseña contraseña = Contraseña ("1234");

Servo myservo; // crea un objeto servo para controlar un servo

#define servoPin 10

const byte FILAS = 4; // Cuatro filas

const byte COLS = 4; // columnas // Definir las claves de caracteres del mapa de teclas [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}};

byte rowPins [FILAS] = {9, 8, 7, 6}; // Conecte el teclado ROW0, ROW1, ROW2 y ROW3 a estos pines Arduino.

byte colPins [COLS] = {5, 4, 3, 2,}; // Conecte el teclado COL0, COL1 y COL2 a estos pines Arduino.

// Crea el teclado

Teclado teclado = Teclado (makeKeymap (teclas), rowPins, colPins, ROWS, COLS);

configuración vacía () {

myservo.attach (servoPin); // conecta el servo en el pin 9 al objeto servo

Serial.begin (9600);

keypad.addEventListener (keypadEvent); // agrega un detector de eventos para este teclado

myservo.write (0);

}

bucle vacío () {

keypad.getKey ();

}

// ocúpate de algunos eventos especiales

void keypadEvent (KeypadEvent eKey) {switch (keypad.getState ()) {case PRESSED: switch (eKey) {case '*': checkPassword (); rotura; predeterminado: contraseña.append (eKey); }}}

void checkPassword () {

if (password.evaluate () == true) {Serial.println ("Correcto"); // Agregar código para ejecutar si funciona

myservo.write (180);

retraso (3000);

myservo.write (0);

restablecimiento de contraseña();

} más si (contraseña.evaluar () == falso) {

Serial.println ("Incorrecto");

myservo.write (0);

// agrega código para ejecutar si no funcionó

}

}

Paso 3: ¿Qué significa todo esto?

¿Qué significa todo esto?
¿Qué significa todo esto?

El código de arriba (el primero) le dará una señal al Servo para "barrer" o simplemente pasar de 0 a 180 grados. O simplemente completando medio círculo de rotación de izquierda a derecha o de derecha a izquierda. Si quieres más detalles sobre el código te lo puedo contar. Solo pregunte. No ha hecho ningún daño, solo una pequeña pregunta simple. ¡Vamos, puedes hacerlo! De todos modos, el código en el medio prueba cada botón del teclado. Y lo último del código simplemente se "desbloquea" con el servo cuando ingresa la clave de acceso "1234" en, lo adivinó, el teclado.

Paso 4: solución de problemas

Solución de problemas
Solución de problemas

P: Mi teclado no funciona.

R: Recuerde que el primer pin es el 9, así que baje desde allí. También asegúrese de conectar el arduino al puerto USB de la computadora y programar el Arduino.

P: El servo no funciona.

R: Recuerde que el pin del servo es el pin 10 y que necesita una conexión a tierra común, si se conecta directamente desde el Arduino, recuerde que el pin naranja (en el micro servo) es el pin 10, el pin rojo es 5V y el El pin marrón es el pin GND.

P: Arduino no funciona:

A: ¿Lo conectaste siquiera? Eso suena como un problema personal

Paso 5: Si tiene alguna pregunta, no dude en preguntar en la sección de comentarios y recuerde suscribirse

Adiós, gracias por ver mi tutorial. Ha sido divertido.

Recomendado: