Arduino - Clavier - Moteur Servo
Dans ce tutoriel, nous allons apprendre à utiliser ensemble un clavier, un moteur servo et un Arduino :
- Si un utilisateur entre un mot de passe autorisé sur le clavier, l'Arduino fait tourner le moteur servo à 90°.
- Après une période de temps, l'Arduino fait revenir le moteur servo à 0° sans utiliser la fonction delay().
- Le code Arduino prend également en charge plusieurs mots de passe.
Préparation du matériel
Or you can buy the following sensor kits:
1 | × | DIYables Sensor Kit (30 sensors/displays) | |
1 | × | DIYables Sensor Kit (18 sensors/displays) |
À propos du clavier et du servo-moteur
Si vous ne connaissez pas le clavier et le servo-moteur (brochage, fonctionnement, programmation...), renseignez-vous à leur sujet dans les tutoriels suivants :
- Arduino - Keypad tutorial
- Arduino - Servo Motor tutorial
Diagramme de câblage
This image is created using Fritzing. Click to enlarge image
Code Arduino - fait tourner le moteur Servo si le mot de passe est correct
Le code ci-dessous oriente le moteur servo à 90° pendant 5 secondes si le mot de passe est correct. Après 5 secondes, il ramène le moteur servo à 0°.
Étapes rapides
- Connectez Arduino au PC via un câble USB
- Ouvrez l'IDE Arduino, sélectionnez la bonne carte et le bon port
- Naviguez vers l'icône Libraries sur la barre gauche de l'IDE Arduino.
- Recherchez "keypad", puis trouvez la bibliothèque keypad de Mark Stanley, Alexander Brevig
- Cliquez sur le bouton Install pour installer la bibliothèque keypad.
- Copiez le code ci-dessus et ouvrez-le avec l'IDE Arduino
- Cliquez sur le bouton Upload de l'IDE Arduino pour téléverser le code vers Arduino
- Appuyez sur 12345#
- Appuyez sur 5642B#
- Consultez le résultat sur le moniteur série et l'état du moteur servo
Explication du code
Les mots de passe autorisés sont prédéfinis dans le code Arduino.
Une chaîne est utilisée pour stocker le mot de passe saisi par les utilisateurs, appelée input_password. Sur le clavier, deux touches (* et #) sont utilisées à des fins spéciales : effacer le mot de passe et terminer le mot de passe. Lorsqu'une touche du clavier est pressée :
- Si la touche pressée n'est pas l'une des deux touches spéciales, elle est ajoutée à input_password
- Si la touche pressée est *, input_password est effacé. Vous pouvez l'utiliser pour commencer ou recommencer à saisir le mot de passe
- Si la touche pressée est # :
- Le input_password est comparé aux mots de passe prédéfinis. S'il correspond à l'un des mots de passe prédéfinis, faites tourner le moteur servo à 90°.
- Que le mot de passe soit correct ou non, le input_password est effacé pour la prochaine saisie