Table des matières:

Servo-verrouillage du clavier : 5 étapes
Servo-verrouillage du clavier : 5 étapes

Vidéo: Servo-verrouillage du clavier : 5 étapes

Vidéo: Servo-verrouillage du clavier : 5 étapes
Vidéo: SERRURE CODEE ARDUINO-- KEYPAD SERVOMOTEUR 2024, Juillet
Anonim
Servo-verrouillage du clavier
Servo-verrouillage du clavier
Servo-verrouillage du clavier
Servo-verrouillage du clavier
Servo-verrouillage du clavier
Servo-verrouillage du clavier

Bonjour à tous, j'espère que vous avez passé une bonne journée. Sinon, j'espère que vous pouvez simplement revenir en arrière avec un peu d'ouverture d'esprit sur ce didacticiel et de la musique thérapeutique. La programmation peut être un problème. Heureusement, ce didacticiel n'est pas un problème, vous pourrez donc peut-être accomplir une chose populaire appelée (d'une voix puissante): LE VERROUILLAGE DU CLAVIER SERVO ULTIME !!! C'est vraiment juste mon introduction, j'espère que cela vous a plu. Quoi qu'il en soit, réchauffons nos doigts pour taper. (Une chanson sympa: can-can song (musique classique)).

Fournitures:

-Vos doigts

-Tes mains aussi, c'est important

-Câble USB pour Arduino

-Tout type d'arduino disponible (j'ai l'Arduino Mega)

-Clavier matriciel (clavier - ebay, clavier - amazon)

-Micro ou servo standard (j'utilise un micro servo)

-*En option* Planche à pain - tout type

-*En option* Alimentation (5V)

Étape 1: temps schématique

Temps schématique !
Temps schématique !
Temps schématique !
Temps schématique !

Alors, que faire en premier ? Connectez l'Arduino à l'ordinateur. Connectez ensuite le clavier. * Remarque - vous devez connecter les broches de la dernière broche du clavier en tant que première broche numérique sur l'arduino. Et allez de droite à gauche après ça*. Le clavier a des broches 2-9 sur l'arduino. Le servo a la broche 10 comme signaux numériques. Attachez les motifs de l'arduino, du clavier, du servo et du 5V également. * Notez également - que le servo est mieux utilisé avec une source d'alimentation externe ou un adaptateur avec 5 V (prise murale), mais c'est toujours facultatif. * Vous n'avez pas besoin de lier physiquement les terres et 5 V, ce que je veux dire juste pour attacher un fil de l'Arduino au servo. Ce schéma n'aide pas les débutants, alors permettez-moi de vous expliquer en détail. Fondamentalement, la dernière broche est 2 et la première est 9, deux est 8, trois est 7, et ainsi de suite. Aller de gauche à droite 2 2.

Étape 2: Temps de codage

Temps de codage !
Temps de codage !
Temps de codage !
Temps de codage !

Bon alors maintenant on passe à la partie codage ! C'est là que la vraie magie opère ! Il existe donc un programme de test pour tester d'abord le clavier et le servo. Ici:

//www.elegoo.com//2016.12.9

/* @file CustomKeypad.pde

|| @version 1.0 || @auteur Alexander Brevig || @contact [email protected] || || @description || | Montre comment changer la taille du clavier et les valeurs des touches. || # */ #comprendre

octet const ROWS = 4; //quatre lignes

octet const COLS = 4; //quatre colonnes //définissent les cymbales sur les boutons des claviers char hexaKeys[ROWS][COLS] = { {'1', '2', '3', 'A'}, {'4', '5 ', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'} }; octet rowPins[ROWS] = {9, 8, 7, 6}; // connexion aux broches de ligne de l'octet du clavier colPins[COLS] = {5, 4, 3, 2}; // se connecter aux brochages des colonnes du clavier

//initialise une instance de la classe NewKeypad

Clavier customKeypad = Keypad(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; // créer un objet servo pour contrôler un servo

// douze objets servo peuvent être créés sur la plupart des cartes

int pos = 0; // variable pour stocker la position du servo

void setup() {

monservo.attach(9); // attache le servo sur la broche 9 à l'objet servo }

boucle vide() {

for (pos = 0; pos = 0; pos -= 1) { // passe de 180 degrés à 0 degrés myservo.write(pos); // dit au servo de se positionner dans la variable 'pos' delay(15); // attend 15ms que le servo atteigne la position } }

Voici le code du projet (je vais être honnête avec vous, je n'ai pas fait grand chose, j'ai juste ajouté la partie servo, disons merci aux personnes qui ont fait tout le code !):

#include mot de passe.h

#include Clavier

/*

|| Saisie simple du mot de passe à l'aide du clavier matriciel || 4/5/2012 Mises à jour Nathan Sobieck: [email protected] || *

/* est de valider le mot de passe

//# est de réinitialiser la tentative de mot de passe

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

#comprendre

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

Mot de passe mot de passe = Mot de passe("1234");

Servo myservo; // créer un objet servo pour contrôler un servo

#define servoPin 10

octet const ROWS = 4; // Quatre lignes

octet const COLS = 4; // colonnes // Définit les clés de char Keymap[ROWS][COLS] = { {'1', '2', '3', 'A'}, {'4', '5', '6', ' B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'} };

octet rowPins[ROWS] = { 9, 8, 7, 6 }; // Connectez le clavier ROW0, ROW1, ROW2 et ROW3 à ces broches Arduino.

octet colPins[COLS] = { 5, 4, 3, 2, }; // Connectez le clavier COL0, COL1 et COL2 à ces broches Arduino.

// Création du clavier

Pavé numérique = Pavé numérique (makeKeymap (touches), rowPins, colPins, ROWS, COLS);

void setup() {

monservo.attach(servoPin); // attache le servo sur la broche 9 à l'objet servo

Serial.begin(9600);

keyboard.addEventListener(keypadEvent); //ajout d'un écouteur d'événement pour ce clavier

monservo.write(0);

}

boucle vide() {

clavier.getKey();

}

//prendre soin de certains événements spéciaux

void keyboardEvent(KeypadEvent eKey) { switch (keypad.getState()) { case PRESSED: switch (eKey) { case '*': checkPassword(); Pause; par défaut: mot de passe.append(eKey); } } }

void checkPassword() {

if (password.evaluate() == true) { Serial.println("Success"); //Ajouter du code à exécuter si cela fonctionne

monservo.write(180);

retard(3000);

monservo.write(0);

Réinitialisation du mot de passe();

} else if (mot de passe.evaluate() == false) {

Serial.println("Mauvais");

monservo.write(0);

//ajout du code à exécuter si cela ne fonctionnait pas

}

}

Étape 3: qu'est-ce que tout cela signifie ?

Qu'est-ce que tout cela signifie?
Qu'est-ce que tout cela signifie?

Le code ci-dessus (le premier) donnera un signal au servo pour "balayer" ou simplement passer de 0 à 180 degrés. Ou tout simplement en complétant un demi-cercle de rotation de gauche à droite ou de droite à gauche. Si vous voulez plus de détails sur le code, je peux vous le dire. Veuillez simplement demander. Pas de mal, juste une simple petite question. Allez, tu peux le faire! Quoi qu'il en soit, le code du milieu teste chaque bouton du clavier. Et le dernier code se "déverrouille" simplement avec le servo lorsque vous tapez le mot de passe "1234" dans, vous l'avez deviné, le clavier.

Étape 4: Dépannage

Dépannage
Dépannage

Q: Mon clavier ne fonctionne pas.

R: N'oubliez pas que la première broche est 9, alors descendez à partir de là. Assurez-vous également de connecter l'arduino au port USB de l'ordinateur et programmez l'arduino.

Q: Le servo ne fonctionne pas.

R: N'oubliez pas que la broche du servo est la broche 10 et que vous avez besoin d'une masse commune. la broche brune est la broche GND.

Q: Arduino ne fonctionne pas:

A: L'avez-vous même connecté ? Cela ressemble à un problème personnel

Étape 5: Si vous avez des questions, n'hésitez pas à les poser dans la section des commentaires et n'oubliez pas de vous abonner

Au revoir, merci d'avoir regardé mon tutoriel. C'était marrant.

Conseillé: