Tabla de contenido:

Botón codificador giratorio: 6 pasos
Botón codificador giratorio: 6 pasos

Video: Botón codificador giratorio: 6 pasos

Video: Botón codificador giratorio: 6 pasos
Video: ✅ Encoder de Rotación la mejor opción para Maquinas 2024, Noviembre
Anonim
Botón codificador giratorio
Botón codificador giratorio

Este es un control remoto giratorio basado en un codificador giratorio. Tiene las siguientes características.

  • Funciona con pilas con muy bajo consumo de corriente cuando se activa
  • Activación automática cuando se gira el control
  • Sueño automático después de un período de inactividad.
  • Acciones configurables cuando se cambia el control

    • Acceso web simple con posición informada
    • Informes MQTT
    • Control del atenuador de lámpara Lighwaverf
  • Tamaño muy pequeño
  • Bajo costo
  • Actualización de software a través de wifi
  • Gestión de acceso a red wifi

Paso 1: Componentes y herramientas necesarios

Componentes y herramientas necesarios
Componentes y herramientas necesarios
Componentes y herramientas necesarios
Componentes y herramientas necesarios
Componentes y herramientas necesarios
Componentes y herramientas necesarios

Se necesitan los siguientes componentes

Carcasa: carcasa impresa en 3D disponible en

www.thingiverse.com/thing:3173779

  • Módulo ESP-12F ESP8266
  • Control de codificador rotatorio (EC11) + Perilla
  • Interruptor deslizante de encendido / apagado
  • Enchufe de 3 pines
  • Batería LIPO 400mAh 802030
  • Refulador de voltaje de 3.3V (xc6203)
  • Condensador 220uF
  • Resistencias 1M, 4K7 (2)
  • Diodo Schottky 1N5819 (2)
  • MOSFET de canal P (AO3401)
  • Alambre de esmalte (soldable)
  • Conectar cable

Se necesitan las siguientes herramientas

Soldador de punta fina

Paso 2: Electrónica

Electrónica
Electrónica

La electrónica se basa en un módulo ESP-12F. Se utiliza una pequeña cantidad de componentes electrónicos de soporte para regular la batería y proporcionar encendido y apagado automático.

El control de potencia se realiza a través de la señal EN en el ESP-12F, que debe ser alta para que el módulo se encienda. Esto se mantiene bajo por la resistencia de 1M, pero el transistor MOSFET puede elevarlo. El condensador 4u7 proporciona un mínimo de varios segundos de activación incluso después de que el MOSFET se apaga.

El transistor MOSFET se enciende inicialmente cuando uno de los interruptores de codificación giratoria se conecta a tierra mientras gira. Luego, puede mantenerse encendido mediante una señal GPIO cuando se inicia el código ESP8266.

El MOSFET se apaga cuando se libera la señal GPIO después de que se detecta inactividad durante un período de tiempo de espera.

Paso 3: Montaje

Montaje
Montaje
Montaje
Montaje

Hice los siguientes pasos de montaje.

  • Imprimir carcasa 3d
  • Coloque el interruptor de encendido / apagado y el punto de carga de 3 clavijas. Use resina para fijar en su lugar y sujete las etiquetas internas a la longitud mínima
  • Sujete las patas en el control giratorio para que queden al ras con la base para minimizar la altura
  • Conecte 4 cables para controlar. Un lado del interruptor de botón está conectado al conector central de los interruptores de codificación.
  • Coloque el codificador en la caja y asegúrelo con su tuerca de montaje. Agregar perilla
  • Monte el regulador en el condensador y conecte los cables a los pines de alimentación del módulo ESP-12F
  • Suelde otros componentes electrónicos en la parte posterior del módulo ESP-12F. Usé alambre de cobre esmaltado para conectarlos. Se usó un trozo corto de cable en el pin EN ya que tiene varios componentes conectados.
  • Suelde el cable de conexión al interruptor de encendido / apagado
  • Suelde los cables de la batería al punto de carga y alimente desde el interruptor de encendido / apagado
  • Suelde el cable desde el interruptor de encendido / apagado a la entrada del regulador.
  • Conecte los 4 cables del codificador a la placa.

Tenga en cuenta que utilicé componentes smd en todas partes para mantener el tamaño lo más pequeño posible. Si usa componentes más grandes, probablemente necesitará aumentar la altura del gabinete 3D. Del mismo modo, si usa una batería de diferente tamaño. Las dimensiones se pueden ajustar fácilmente en el archivo SCAD.

Paso 4: software

El software para este proyecto está disponible en

Es un proyecto basado en Arduino, así que configure un entorno de desarrollo de Arduino esp8266. Es posible que desee configurar las contraseñas para WifiManager y la actualización de software en el archivo ino en algo más sensato.

Debe compilarse en Arduino ESP8266 IDE y cargarse en serie en el módulo.

El primer uso iniciará un punto de acceso al que debe conectarse en un teléfono o tableta. Consulte el código para la contraseña. El navegador del teléfono o tableta debe usarse para acceder a 192.168.4.1, lo que permitirá la selección del ssid y la contraseña de wifi local. Esto solo debe hacerse una vez o si cambia la red wifi. A partir de ese momento, el módulo se conectará a la red wifi local si es necesario.

También deben cargarse algunos archivos de soporte. Estos se encuentran en la carpeta de datos del git. Se pueden cargar accediendo a ip / upload. Una vez que se hayan cargado, entonces se puede usar ip / edit para realizar más cargas de una manera más fácil.

Paso 5: configuración

La configuración está contenida en el archivo rotaryEncoderConfig.txt

Tiene dos parámetros básicos (nombre de host y tiempo de espera de inactividad en milisegundos, además de configurar hasta 3 codificadores giratorios).

Aunque esta compilación solo usa 1 codificador, la biblioteca utilizada permite hasta 3.

Cada codificador tiene una línea en el archivo de configuración con varios parámetros.

  • pin1, pin2, pines GPIO de botón
  • valor mínimo del codificador
  • valor máximo del codificador
  • valor de la posición inicial (el último valor también se recuerda cuando se activa.
  • tipo de acción a realizar 0 = Ninguna, 1 = Web GET, 2 = UDP / Lightwave, 3 = MQTT
  • el intervalo es la duración mínima en ms entre acciones
  • La plantilla de acción es una plantilla básica para la acción.
  • par1, par2, par3, par4, par5 son parámetros adicionales

La plantilla de acción tiene variables que se sustituyen antes de su uso.

  • $ p Posición giratoria
  • $ d Dirección giratoria
  • $ e número de codificador (0 es el primero)
  • $ l hace una función de onda de luz
  • $ x, $ y, $ z, $ u, $ v substiute par1 - par5
  • $ t contador de cambio sustituto
  • $ c coma sustituta

Paso 6: Operación

Una vez configurado el wifi, el control se activa haciendo clic en un paso de cualquier manera. Esto no cambia la posición ni desencadena una acción.

A partir de ese momento, cualquier rotación activará la acción configurada. El intervalo mínimo de acción limitará potencialmente las acciones realizadas a medida que se gira el control. Por ejemplo, si el intervalo mínimo es 2000 mS, una rotación rápida puede enviar solo el primer y el último cambio. La última posición siempre activará una acción, por lo que si se está controlando un atenuador, su valor reflejará la posición final incluso si se omiten algunos pasos intermedios.

Operación LightwaveRF

Se muestra un ejemplo en el archivo de configuración suministrado. La acción básica es UDP al enlace Lightwaverf. La IP del host y el número de puerto se colocan en par1 y par2. La cadena Habitación / Dispositivo se pone en par3.

El enlace primero debe estar emparejado con el enlace para permitirle aceptar comandos desde la dirección mac del esp8266. Para hacer esto, coloque un archivo llamado initLink, txt en el sistema de archivo y luego envíe un comando girando el control un paso (después de activarlo). Esto enviará un comando de emparejamiento al enlace que debe confirmarse presionando un botón en el enlace. El archivo initLink se elimina automáticamente.

Mantenimiento

El dispositivo se puede poner en un modo de mantenimiento en el que no se apagará automáticamente, encendiéndolo con el control giratorio presionado. Para salir de este modo, simplemente apáguelo y vuelva a encenderlo.

Recomendado: