Índice:
Vídeo: Travamento do servo do teclado: 5 etapas
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Olá a todos, espero que tenham tido um bom dia. Se não, você pode simplesmente voltar com a mente aberta para este tutorial e alguma música terapêutica. A programação pode ser um incômodo. Felizmente, este tutorial não é um incômodo, então você talvez consiga realizar uma coisa popular chamada (com voz poderosa): THE ULTIMATE SERVO KEYPAD LOCK !!! Essa é realmente apenas a minha introdução, espero que tenham gostado. De qualquer forma, vamos aquecer nossos dedos para digitar. (Uma música legal: can-can song (música clássica)).
Suprimentos:
-Seus dedos
-Suas mãos também, isso é importante
- Cabo USB para Arduino
-Qualquer tipo de arduino disponível (eu tenho o Arduino Mega)
- Teclado Matrix (teclado - ebay, teclado - amazon)
-Micro ou servo padrão (estou usando um micro servo)
- * Opcional * Placa de ensaio - qualquer tipo
- * Opcional * Fonte de alimentação (5V)
Etapa 1: Tempo esquemático
Então, o que fazer primeiro? Conecte o Arduino ao computador. Em seguida, conecte o teclado. * Nota - você precisa conectar os pinos do último pino no teclado como o primeiro pino digital no arduino. E vá da direita para a esquerda depois disso *. O teclado tem os pinos 2 a 9 no arduino. O servo possui o pino 10 como sinais digitais. Amarre os fundamentos do arduino, teclado e servo e o 5V também. * Observe também - que o servo é melhor usado com uma fonte de alimentação externa ou um adaptador com 5V (plug-in de parede), mas ainda é opcional. * Você não tem que amarrar os 5V fisicamente, o que quero dizer é apenas para conectar um fio do Arduino ao servo. Este esquema não ajuda os iniciantes, então deixe-me explicar em pequenos detalhes. Basicamente, o último pino é 2 e o primeiro é 9, dois é 8, três é 7 e assim por diante. Vá da esquerda para a direita 2 2.
Etapa 2: Tempo de codificação
Ok, agora estamos na parte de codificação! É aqui que a verdadeira magia acontece! Portanto, existe um programa de teste para primeiro testar o teclado e o servo. Aqui:
//www.elegoo.com//2016.12.9
/ * @file CustomKeypad.pde
|| @ versão 1.0 || @author Alexander Brevig || @contact [email protected] || || @description || | Demonstra a alteração do tamanho do teclado e dos valores-chave. || # */ #incluir
const byte ROWS = 4; // quatro linhas
const byte COLS = 4; // quatro colunas // definem os símbolos nos botões dos teclados char hexaKeys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5 ',' 6 ',' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}}; byte rowPins [ROWS] = {9, 8, 7, 6}; // conectar à pinagem de linha do byte do teclado colPins [COLS] = {5, 4, 3, 2}; // conectar à pinagem da coluna do teclado
// inicializa uma instância da classe NewKeypad
Teclado customKeypad = Teclado (makeKeymap (hexaKeys), rowPins, colPins, ROWS, COLS);
void setup () {
Serial.begin (9600); } void loop () {char customKey = customKeypad.getKey (); if (customKey) {Serial.println (customKey); }}
//www.elegoo.com//2016.12.08 #include
Servo myservo; // cria um objeto servo para controlar um servo
// doze objetos servo podem ser criados na maioria das placas
int pos = 0; // variável para armazenar a posição do servo
void setup () {
myservo.attach (9); // anexa o servo no pino 9 ao objeto servo}
void loop () {
for (pos = 0; pos = 0; pos - = 1) {// vai de 180 graus para 0 graus myservo.write (pos); // diz ao servo para ir para a posição na variável 'pos' delay (15); // espera 15ms para que o servo alcance a posição}}
Aqui está o código do projeto (vou ser honesto com você, não fiz muito, apenas adicionei a parte servo, agradeço às pessoas que fizeram todo o código!):
#include Password.h
#include teclado
/*
|| Entrada simples de senha usando teclado de matriz || 4/5/2012 Atualizações Nathan Sobieck: [email protected] || *
/ * é para validar a senha
// # é para redefinir a tentativa de senha
/////////////////////////////////////////////////////////////////
#incluir
//https://www.arduino.cc/playground/uploads/Code/Password.zip #include //https://www.arduino.cc/playground/uploads/Code/Keypad.zip
Senha senha = Senha ("1234");
Servo myservo; // cria um objeto servo para controlar um servo
# define servoPin 10
const byte ROWS = 4; // Quatro linhas
const byte COLS = 4; // colunas // Definir as chaves de caracteres do mapa de teclado [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}};
byte rowPins [ROWS] = {9, 8, 7, 6}; // Conecte o teclado ROW0, ROW1, ROW2 e ROW3 a esses pinos do Arduino.
byte colPins [COLS] = {5, 4, 3, 2,}; // Conecte o teclado COL0, COL1 e COL2 a esses pinos do Arduino.
// Crie o teclado
Teclado teclado = Teclado (makeKeymap (teclas), rowPins, colPins, ROWS, COLS);
void setup () {
myservo.attach (servoPin); // anexa o servo no pino 9 ao objeto servo
Serial.begin (9600);
keypad.addEventListener (keypadEvent); // adiciona um ouvinte de evento para este teclado
myservo.write (0);
}
void loop () {
keypad.getKey ();
}
// cuidar de alguns eventos especiais
void keypadEvent (KeypadEvent eKey) {switch (keypad.getState ()) {case PRESSED: switch (eKey) {case '*': checkPassword (); pausa; padrão: password.append (eKey); }}}
void checkPassword () {
if (password.evaluate () == true) {Serial.println ("Sucesso"); // Adicione o código a ser executado se funcionar
myservo.write (180);
atraso (3000);
myservo.write (0);
Redefinição de senha();
} else if (password.evaluate () == false) {
Serial.println ("Errado");
myservo.write (0);
// adicione o código a ser executado se não funcionar
}
}
Etapa 3: O que tudo isso significa?
O código acima (o primeiro) dará um sinal para o Servo "varrer" ou apenas ir de 0 a 180 graus. Ou apenas completando meio círculo de rotação da esquerda para a direita ou da direita para a esquerda. Se você quiser mais detalhes sobre o código, posso te dizer. Apenas pergunte. Nenhum dano causado, apenas uma pequena pergunta simples. Vamos lá você consegue! De qualquer forma, o código do meio testa todos os botões do teclado. E o último do código apenas "desbloqueia" com o servo quando você digita a senha "1234", você adivinhou, o teclado.
Etapa 4: solução de problemas
P: Meu teclado não está funcionando.
R: Lembre-se de que o primeiro pino é 9, então desça a partir daí. Certifique-se também de conectar o arduino à porta USB do computador e programar o Arduino.
Q: Servo não está funcionando.
R: Lembre-se de que o pino do servo é o pino 10 e que você precisa de um aterramento comum, se estiver conectando direto do Arduino, lembre-se de que o pino laranja (no micro servo) é o pino 10, o pino vermelho é 5V e o pino marrom é o pino GND.
P: O Arduino não está funcionando:
R: Você ao menos conectou? Isso soa como um problema pessoal
Etapa 5: Se você tiver alguma dúvida, sinta-se à vontade para perguntar na seção de comentários e lembre-se de se inscrever
Tchau, obrigado por ver meu tutorial. Tem sido divertido.