Especialmente si su propio circuito tiene una pantalla para mostrar valores, el siguiente paso suele ser conectar una opción operativa.
Puede conectar botones o interruptores. Una forma relativamente genial de equipar su propio circuito con una opción de entrada, por otro lado, es el codificador rotatorio.
A primera vista, un codificador rotatorio parece un potenciómetro. A diferencia del potenciómetro, el codificador rotatorio se puede girar infinitamente en ambas direcciones. Además, muchos modelos están equipados con un botón. Conectado a un microcontrolador, este puede reconocer en última instancia cuánto en qué dirección se giró e incluso si se presionó el botón.
Gracias al complemento adecuado, los codificadores rotatorios se pueden leer muy fácilmente con la ayuda de ESPEasy y las entradas se pueden reaccionar.
El siguiente artículo describe cómo conectar uno (o dos) codificadores rotatorios a un Wemos D1 Mini o ESP8266 y configurar correctamente ESPEasy.
Instrucciones de seguridad
Sé que las siguientes notas siempre son un poco molestas y parecen innecesarias. Desafortunadamente, muchas personas que sabían "mejor" han perdido ojos, dedos u otras cosas debido a un descuido o se lesionaron. La pérdida de datos es casi insignificante en comparación, pero incluso estos pueden ser realmente molestos. Por lo tanto, tómese cinco minutos para leer las instrucciones de seguridad. Porque incluso el proyecto más genial no vale la pena lesionarse u otros problemas.
https://www.nerdiy.de/sicherheitshinweise/
Enlaces afiliados / enlaces publicitarios
Los enlaces a las tiendas en línea enumerados aquí son los llamados enlaces de afiliados. Si hace clic en dicho enlace de afiliado y realiza una compra a través de este enlace, Nerdiy.de recibirá una comisión de la tienda en línea o el proveedor correspondiente. El precio no cambia para usted. Si realiza sus compras a través de estos enlaces, ayuda a Nerdiy.de a poder ofrecer otros proyectos útiles en el futuro. 🙂
Requisitos
Artículos útiles:
Puede encontrar consejos adicionales sobre ESPEasy en los siguientes artículos.
- ESPEasy: ejecuta comandos y acciones a través de HTTP, MQTT, UDP y directamente
- ESPEasy: compila y actualiza el firmware y configura los datos de acceso WiFi
- ESPEasy / Wemos D1 Mini: ajuste el ADC a un voltaje máximo diferente
Herramienta requerida:
Material requerido:
Conectar codificador rotatorio
A continuación, puede ver dos diagramas de circuito sobre cómo conectar un codificador rotatorio al Wemos D1 Mini.


Configuración del codificador rotatorio en ESPEasy

Primero abra la vista de configuración web de su instalación de ESPeasy.
La información sobre cómo abrir esta vista también se puede encontrar en el artículo Mostrar/averiguar la dirección IP de los dispositivos en la red

En la pestaña "Dispositivos" ahora debe hacer clic en el botón "Agregar" en una de las líneas vacías.

...y ahora puede seleccionar qué dispositivo desea crear.
Dado que desea crear un codificador rotatorio, seleccione la entrada "Cambiar entrada - Codificador rotatorio".

Esto le llevará de vuelta a una página de resumen. Aquí puede realizar todos los ajustes relacionados con el codificador rotatorio.
Aquí es importante que asigne un nombre, marque "Habilitado" y configure los GPIO como se muestra.
Los ajustes "GPIO <- A" y "GPIO <- B" corresponden a las conexiones del codificador rotatorio que están representadas por las líneas verde y azul en el diagrama de circuito anterior.
Para la mayoría de los codificadores rotatorios, puede establecer la configuración de "Modo" como se muestra.
Al girar el codificador rotatorio, se contará un contador hacia adelante o hacia atrás más adelante. Puede configurar su límite inferior y superior con los ajustes en "Límite mínimo" y "Límite máximo".
Tan pronto como haya configurado todo correctamente, puede guardar la configuración haciendo clic en "Enviar".

Para evaluar ahora también la pulsación de tecla en el botón del codificador rotatorio, debe crear un dispositivo separado.
Para hacer esto, haga clic nuevamente en el siguiente botón "gratis" "Agregar" en la vista general de Dispositivos.

También es importante que el GPIO se configure en el pin "D5". Este es el pin de conexión a través del cual se lee el botón del codificador rotatorio.
Codificador rotatorio de prueba
Después de haber conectado y configurado el codificador rotatorio, puede probar la función usando el registro ESPEasy. Allí también se muestran eventos que tienen que ver con los sensores y actuadores que se han disparado.

A continuación, se mostrará la salida del registro de ESPEasy.
Si ahora gira el codificador rotatorio, debería verse una salida con "QEI...". El número detrás muestra el valor del contador que cuenta hacia arriba o hacia abajo al girar el codificador rotatorio.
Tan pronto como presione el botón del codificador rotatorio, debería mostrarse una entrada que comience con "SW:...".
A continuación, puede procesar las pulsaciones de botón o las operaciones del codificador rotatorio con la ayuda de las reglas y, por lo tanto, también desencadenar acciones.
Alternativamente, también puede reenviarlos a su sistema SmartHome a través de MQTT y así encender o apagar una luz, por ejemplo.
Más sensores para conectar al ESP8266 / ESP32
Puede encontrar una descripción general de otros elementos para conectar sensores y actuadores a ESPEasy en la siguiente categoría.
Diviértete con el proyecto.
Espero que todo te haya funcionado como se describe. Si no es así, o si tiene alguna pregunta o sugerencia, hágamelo saber en los comentarios. Si es necesario, lo añadiré al artículo.
Las ideas para nuevos proyectos siempre son bienvenidas. 🙂
PS Muchos de estos proyectos, especialmente los proyectos de hardware, cuestan mucho tiempo y dinero. Por supuesto que hago esto porque lo disfruto, pero si crees que es genial que comparta la información contigo, me encantaría hacer una pequeña donación al fondo del café. 🙂
hola fabián
..Digo GRACIAS - que hay alguien como tú - de quien un "manitas" como yo puede aprender algo!!
..Aprendí muchas cosas interesantes aquí y las construí: PWM con codificador rotatorio..
Yo uso por ej. Actualmente un ESP8266 como termostato con 2 botones (1 GPIO cada uno) y ESPEASY con regla (copiada). Si es necesario, también enviaré las/mis Reglas
..Me gustaría convertir esto al codificador rotatorio en lugar del botón + y -.
..si es posible paso codificador
Desafortunadamente, no encajo en las Reglas y no puedo hacerlo.
..probablemente sabes un ejemplo/enlace – ¿Reglas para ESPEASY?
Saludos desde Viena – fossi1
Hola fosi1,
Gracias por sus amables palabras. Me alegro de que mis consejos sean útiles. 🙂
Escríbeme tus reglas actuales. Luego echaré un vistazo y veré si puedes reconstruirlos/expandirlos para que puedas controlarlos con un codificador rotatorio. 🙂
Atentamente
Fabian
hola fabián
Gracias por su respuesta - les deseo FELIZ AÑO NUEVO!!
Para su información general:
..Tengo algunos especialmente para varias aplicaciones que pueden ser hardware, en software soy (desafortunadamente todavía) el "copiador", así que verifique mis reglas.
..uno de mis proyectos - Quiero/construiré un "control de fumadores" para mi amigo.
Medida de temperatura con sensores 4 K, D1mini con EspEasy, OLED + LCD, relé para control de ventiladores y 4x MAX31850 (los sensores K se leen en 1Wire y en EspEasy bajo D18B20)
..la medición de temperatura del sensor K a través de MAX31850 funciona
..la visualización "aproximada" de la temperatura del sensor X (solo entonces se determina cuál) se muestra con Oled azul, verde, rojo para demasiado frío OK, demasiado caliente - p. Actualmente para probar el DS18B20
..la pantalla de temperatura real es a través de OLED y LCD
..la configuración de la temperatura (para el funcionamiento del ventilador) actualmente a través de los botones +/-
..dado que la velocidad del ventilador debe controlarse a través de un sensor K en el rango de temperatura de 100-200 grados, usar botones es muy "difícil": su codificador rotatorio sería la solución más conveniente.
.. mi esp por lo tanto tiene 3 reglas para la visualización de neopíxeles, consulta clave, visualización
..aquí las reglas 2 :
—————————————————————————–
/consulta clave - cambiado 06.02.22Fo
//esp8266
//GPIO 0 = temperatura del botón +
//GPIO 2 = botón de temperatura –
//GPIO 4 = SDA para Oled
//GPIO 5 = SCL para Oled
//GPIO 12 = entrada de DATOS de DS18B20
//GPIO 14 = salida S para relé
//GPIO 15 = salida para Neopixel
en System#Boot hacer
TaskValueSet 6,1,25.0 //SetTemp = TARGET Temp
TaskValueSet 6,2,24.5 //TempLow = temperatura más baja
TaskValueSet 6,3,25.5 //TempHigh = temperatura más alta
gpio,14,1
finalizará el
// Consulta clave para la configuración temporal
//ARRIBA = Tarea7 en D3(GPIO-0) y ABAJO = Tarea7 en D4(GPOI-2)
en Up#State hacer
si [Up#State]=1
si [Local#SetTemp]5 //Temp. Limitación de ajuste desde 5°
TaskValueSet 6,1, [Local#SetTemp]-1.0
TaskValueSet 6.2, [Local#SetTemp]-1.0
TaskValueSet 6.3,[Local#SetTemp]
final
final
finalizará el
//Definir el estado de conmutación
en T5#temperatura hacer
si [T5#temperatura]+1[Local#TempLow]
evento, apagar
final
finalizará el
———————————————————
..desafortunadamente no tengo una dirección de correo electrónico tuya, de lo contrario puedo enviar el archivo txt
..si necesitas más información, escríbeme evento. por correo
Saludos desde Viena – fossi1
Hola fosi1,
Lo siento, solo me estoy poniendo en contacto ahora. Recibí tu mensaje a través del formulario de contacto. Pero todavía estaba en las secuelas de mi mudanza y luego intervinieron las vacaciones. :/
Pero intentaré solucionarlo lo antes posible. escribió para mí 🙂
Atentamente
Fabian
One of the best articles I’ve read on this topic.