Table des matières:
- Étape 1: Composants et outils nécessaires
- Étape 2: Électronique
- Étape 3: Assemblage
- Étape 4: Logiciel
- Étape 5: Configuration
- Étape 6: Opération
Vidéo: Bouton de l'encodeur rotatif : 6 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:05
Il s'agit d'une télécommande rotative basée sur un encodeur rotatif. Il a les caractéristiques suivantes.
- Fonctionne sur batterie avec une très faible consommation de courant lorsqu'il est activé
- Activation automatique lorsque la commande est tournée
- Sommeil automatique après une période d'inactivité
-
Actions configurables lorsque le contrôle est modifié
- Accès Web simple avec position signalée
- Rapports MQTT
- Contrôle du variateur de lampe Lighwaverf
- Très petite taille
- À bas prix
- Mise à jour du logiciel via wifi
- Gestion des accès au réseau wifi
Étape 1: Composants et outils nécessaires
Les composants suivants sont nécessaires
Boîtier - Boîtier imprimé en 3D disponible sur
www.thingverse.com/thing:3173779
- Module ESP-12F ESP8266
- Commande encodeur rotatif (EC11) + Bouton
- Interrupteur à glissière marche/arrêt
- prise 3 broches
- Batterie LIPO 400mAh 802030
- Réfrigérateur de tension 3,3 V (xc6203)
- Condensateur 220uF
- Résistances 1M, 4K7 (2)
- Diode Schottky 1N5819 (2)
- MOSFET canal P (AO3401)
- Fil émaillé (soudable)
- Brancher le fil
Les outils suivants sont nécessaires
Fer à souder à pointe fine
Étape 2: Électronique
L'électronique est basée sur un module ESP-12F. Une petite quantité d'électronique de support est utilisée pour réguler la batterie et permettre l'allumage et l'extinction automatiques.
Le contrôle de l'alimentation se fait via le signal EN sur l'ESP-12F qui doit être élevé pour que le module s'allume. Ceci est maintenu bas par la résistance 1M mais peut être tiré vers le haut par le transistor MOSFET. Le condensateur 4u7 donne un minimum de plusieurs secondes d'activation même après la désactivation du MOSFET.
Le transistor MOSFET est initialement activé par l'un des commutateurs de codage rotatifs mis à la terre lorsqu'il tourne. Il peut ensuite être maintenu par un signal GPIO au démarrage du code ESP8266.
Le MOSFET s'éteint lorsque le signal GPIO est libéré après la détection d'une inactivité pendant une période de temporisation.
Étape 3: Assemblage
J'ai effectué les étapes de montage suivantes.
- Imprimer boîtier 3d
- Mettre en place un interrupteur marche/arrêt et un point de chargeur à 3 broches. Utilisez de la résine pour fixer en place et clipsez les étiquettes internes à la longueur minimale
- Abaissez les pieds de la commande rotative afin qu'ils affleurent la base pour minimiser la hauteur
- Attachez 4 fils au contrôle. Un côté de l'interrupteur à bouton-poussoir est connecté au connecteur central des interrupteurs d'encodage.
- Fixez l'encodeur dans le boîtier et fixez-le avec son écrou de montage. Ajouter un bouton
- Montez le régulateur sur le condensateur et attachez les fils de celui-ci aux broches d'alimentation du module ESP-12F
- Soudez les autres composants électroniques à l'arrière du module ESP-12F. J'ai utilisé du fil de cuivre émaillé pour les raccorder. Un petit bout de fil a été utilisé sur la broche EN car plusieurs composants y sont attachés.
- Souder sur le fil de raccordement à l'interrupteur marche / arrêt
- La soudure sur la batterie mène au point de chargeur et à l'alimentation de l'interrupteur marche / arrêt
- Souder sur le fil de l'interrupteur marche/arrêt à l'entrée du régulateur.
- Attachez les 4 fils de l'encodeur à la carte.
Remarque J'ai utilisé des composants smd partout pour garder la taille aussi petite que possible. Si vous utilisez des composants plus gros, vous devrez probablement augmenter la hauteur du boîtier 3D. De même si vous utilisez une batterie de taille différente. Les dimensions sont facilement ajustables dans le fichier SCAD.
Étape 4: Logiciel
Le logiciel de ce projet est disponible sur
Il s'agit d'un projet basé sur Arduino, configurez donc un environnement de développement Arduino esp8266. Vous voudrez peut-être définir les mots de passe pour WifiManager et la mise à jour du logiciel dans le fichier ino sur quelque chose de plus sensé.
Il doit être compilé dans l'IDE Arduino ESP8266 et téléchargé en série sur le module.
La première utilisation démarrera un point d'accès qui doit être connecté sur un téléphone ou une tablette. Voir le code pour le mot de passe. Le navigateur du téléphone ou de la tablette doit ensuite être utilisé pour accéder à 192.168.4.1, ce qui permettra de sélectionner le ssid et le mot de passe du wifi local. Cela ne doit être fait qu'une seule fois ou si le réseau wifi change. À partir de là, le module se connectera au réseau wifi local si nécessaire.
Certains fichiers de support doivent également être téléchargés. Ceux-ci se trouvent dans le dossier de données du fichier git. Ils peuvent être téléchargés en accédant à ip/upload. Une fois que ceux-ci ont été téléchargés, ip/edit peut être utilisé pour effectuer d'autres téléchargements plus facilement.
Étape 5: Configuration
La configuration est contenue dans le fichier RotaryEncoderConfig.txt
Cela a deux paramètres de base (nom d'hôte et délai d'inactivité en millisecondes plus la configuration de jusqu'à 3 encodeurs rotatifs.
Bien que cette version n'utilise qu'un seul encodeur, la bibliothèque utilisée en permet jusqu'à 3.
Chaque encodeur a une ligne dans le fichier de configuration avec un certain nombre de paramètres.
- broche 1, broche 2, bouton broches GPIO
- valeur min de l'encodeur
- valeur max de l'encodeur
- valeur de la position de départ (la dernière valeur est également mémorisée lorsqu'elle est activée.
- type d'action à effectuer 0=Aucun, 1=web GET, 2=UDP / Lightwave, 3=MQTT
- l'intervalle est la durée minimale en ms entre les actions
- le modèle d'action est un modèle de base pour l'action
- par1, par2, par3, par4, par5 sont des paramètres supplémentaires
Le modèle d'action a des variables qui sont remplacées avant utilisation
- $p Position rotative
- $d Sens de rotation
- $e numéro d'encodeur (0 est le premier)
- $l fait une fonction d'onde lumineuse
- $x, $y, $z, $u, $v remplacent par1 - par5
- $t compteur de monnaie de remplacement
- $c remplacer la virgule
Étape 6: Opération
Une fois le wifi configuré, le contrôle est activé en cliquant dessus une étape dans les deux sens. Cela ne change pas la position et ne déclenche pas d'action.
Dès lors, toute rotation déclenchera l'action configurée. L'intervalle d'action minimum limitera potentiellement les actions effectuées lors de la rotation du contrôle. Par exemple, si l'intervalle minimum est de 2000 ms, une rotation rapide peut n'envoyer que le premier et le dernier changement. La dernière position déclenchera toujours une action, donc si un gradateur est contrôlé, sa valeur reflétera la position de fin même si certaines étapes intermédiaires sont manquées.
Fonctionnement LightwaveRF
Un exemple est montré dans le fichier de configuration fourni. L'action de base est UDP vers le lien Lightwaverf. L'adresse IP et le numéro de port de l'hôte sont placés dans par1 et par2. La chaîne Room/Device est mise au par3.
Le lien doit d'abord être couplé au lien pour lui permettre d'accepter les commandes de l'adresse mac de l'esp8266. Pour ce faire, placez un fichier appelé initLink, txt dans le système de fichiers, puis envoyez une commande en tournant le contrôle d'un cran (après l'activation). Cela enverra une commande d'appairage au lien qui doit être acquittée en appuyant sur un bouton sur le lien. Le fichier initLink est automatiquement supprimé.
Maintenance
L'appareil peut être mis en mode maintenance où il ne s'éteindra pas automatiquement, en s'allumant avec la commande rotative enfoncée. Pour le sortir de ce mode, il suffit de l'éteindre puis de le rallumer.
Conseillé:
Minuterie avec Arduino et encodeur rotatif : 5 étapes
Minuterie avec Arduino et encodeur rotatif : La minuterie est un outil souvent utilisé aussi bien dans les activités industrielles que domestiques. Cet ensemble est bon marché et facile à réaliser. Il est également très polyvalent, pouvant charger un programme choisi en fonction des besoins. Il y a plusieurs programmes écrits par moi, pour Ardui
Bras robotique contrôlé par encodeur rotatif : 6 étapes
Bras de robot contrôlé par encodeur rotatif : j'ai visité howtomechatronics.com et j'y ai vu le bras de robot contrôlé par bluetooth. bras utiliser un encodeur rotatif et l'enregistrer
Remplacement de l'encodeur rotatif ISDT Q6 : 4 étapes
Remplacement de l'encodeur rotatif ISDT Q6 : ce tutoriel est destiné à aider les personnes dont les encodeurs Q6 sont devenus inutilisables au fil du temps. Le mien a commencé à défiler dans des directions aléatoires et erratiques, et même après avoir refondu les joints de soudure et nettoyé l'encodeur avec de l'alcool, c'était toujours dysfun
Bouton de volume USB à l'aide de DigiSpark et d'un encodeur rotatif : 3 étapes
Bouton de volume USB utilisant DigiSpark et encodeur rotatif : il s'agit d'un bouton de contrôle de volume USB très bon marché. Parfois, les boutons traditionnels sont plus pratiques pour contrôler les choses plutôt que de cliquer partout avec la souris. Ce projet utilise DigiSpark, un encodeur rotatif et la bibliothèque USB Adafruit Trinket (https://github.c
Comment utiliser le moteur pas à pas comme encodeur rotatif et écran OLED pour les étapes : 6 étapes
Comment utiliser le moteur pas à pas comme encodeur rotatif et écran OLED pour les étapes : Dans ce didacticiel, nous allons apprendre à suivre les pas du moteur pas à pas sur l'écran OLED. Regardez une vidéo de démonstration. Le crédit pour le didacticiel original va à l'utilisateur youtube "sky4fly"