Tabla de contenido:

ServoTermómetro: 6 pasos
ServoTermómetro: 6 pasos

Video: ServoTermómetro: 6 pasos

Video: ServoTermómetro: 6 pasos
Video: Сервотермометр Arduino 2024, Noviembre
Anonim
ServoTermómetro
ServoTermómetro
ServoTermómetro
ServoTermómetro

Esta es una pantalla de temperatura analógica construida a partir de un sensor digital ds18b20, un mini servo y electrónica basada en un módulo esp-12f

Tiene las siguientes características.

  • Unidad autónoma con electrónica, servo y batería
  • Buena exactitud y precisión con el sensor digital ds18b20
  • LIPO recargable con cargador incorporado
  • Corriente de reposo muy baja (<20uA) para una larga duración de la batería
  • El servo solo se enciende por períodos cortos nuevamente, lo que brinda una buena duración de la batería.
  • Normalmente, el módulo duerme entre las actualizaciones de temperatura, pero se puede convertir en un modo que no es de suspensión para su verificación y configuración.
  • Carga de datos de configuración y prueba de servo desde la interfaz web
  • Temperaturas mínimas, máximas, Centígrados Fahrenheit e intervalo de actualización configurable
  • Monitoreo de batería
  • El software se puede actualizar a través de la interfaz web
  • Bajo costo

Paso 1: 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

  • Servomotor MIni (MG90S)
  • Sensor de temperatura ds18b20
  • ESP-12F (módulo esp8266)
  • Batería LIPO 18650
  • Soporte de batería LIPO
  • cargador micro USB LIPO
  • Regulador LDO de baja corriente de reposo 3.3V. Usé XC6203
  • Resistencias 4K7, 10K
  • Condensador de desacoplamiento 220uF 6V
  • Controlador de umbral bajo MOSFET de canal n. Usé AO3400
  • Controlador de umbral bajo MOSFET de canal p. Usé AO3401
  • Pequeño trozo de placa prototipo PCB
  • Deslice el interruptor de encendido
  • Botón pulsador pequeño (cuadrado de 6 mm)
  • Conectar cable
  • Cinta adhesiva de doble cara
  • Diseño de caja impreso en 3D disponible en
  • Puntero opcional. Usé una manecilla de reloj de repuesto; se puede utilizar una versión impresa.

Se necesitan las siguientes herramientas

  • Soldador de punta fina
  • Pistola de silicona
  • Perforadora

Paso 2: Electrónica

Electrónica
Electrónica

La mayor parte de la electrónica es una unidad de microcontrolador wifi ESP8266. Se necesita una pequeña cantidad de electrónica de soporte para habilitar el servomotor y regular la batería a 3.3V, soportar los sensores y un divisor de resistencia para monitorear el voltaje de la batería. El suministro del servomotor es impulsado por 2 transistores MOSFET. Se encienden un período corto antes de que se necesite una actualización del servo y se dejan encendidos durante un período corto para permitir que el servo complete su movimiento. La carga es tan ligera que el servo no se moverá cuando no esté alimentado.

Todos los componentes electrónicos de soporte, excepto el cargador LIPO, están montados en la placa prototipo de PCB. Utilizo componentes SMD para mantener esto lo más pequeño posible, pero podría hacerse con componentes de acceso directo ya que hay una cantidad razonable de espacio disponible. El cargador LIPO tiene un puerto micro USB que puede usarse para recargar la batería. Se puede usar un interruptor de encendido deslizante para encender y apagar la unidad. Los botones A permiten anular el modo de suspensión cuando se enciende, lo que permite el acceso web para la configuración y el control.

Paso 3: Montaje

Montaje
Montaje
Montaje
Montaje
Montaje
Montaje

Hice los siguientes pasos de montaje

  • Imprima el gabinete 3d
  • Suelde el cable en el interruptor, el botón y el conector de 3 clavijas
  • Coloque el interruptor, el botón y el conector en la caja con una pequeña cantidad de pegamento de resina para asegurar
  • Coloque el servo en su lugar. Hay suficiente espacio detrás para que pase el cableado. Luego se puede usar una cuña de cartón para asegurarlo.
  • Asegure el cargador LIPO en su lugar. Utilicé un cable a través de los cuatro orificios del cargador LIPO para ajustar la altura (2 mm) de la base y alinearla con el orificio del usb. Pegamento caliente en su lugar.
  • Conecte el soporte de la batería, el interruptor y el cargador dejando suficiente holgura en los cables de la batería para que pueda estar a un lado.
  • Cree la electrónica periférica en una pequeña pieza de placa de creación de prototipos.
  • Monte la placa de creación de prototipos en la parte superior del módulo esp-12.
  • Cableado de conexión completo
  • Imprima el dial seleccionado (y el puntero si es necesario) en papel brillante rígido y recórtelo.
  • Utilice un perforador para crear un agujero para el servo
  • Fije el dial a la caja con cinta adhesiva de doble cara
  • Adjuntar puntero al servo
  • Calibre la posición del puntero utilizando la función web para establecer un valor de temperatura.

Paso 4: software

El software para este proyecto está disponible en github

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. Es bueno conectar GPIO13 a GND en su entorno de desarrollo, ya que el software estará en modo continuo.

El uso por primera vez 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. El modo de sueño profundo normal no utiliza wifi. Se despierta en el intervalo de reposo, lee la temperatura, actualiza el servo y vuelve a dormir. Cada décima lectura toma una lectura de la batería y la registra. Esto se puede verificar encendiéndolo en modo wifi sin suspensión y verificando el archivo de registro.

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: Operación

Después de la configuración, la unidad funcionará después de encenderse.

Si se enciende con el botón presionado, se pueden usar varios comandos web.

  • http: / ipAddress / upload da acceso a una simple carga de archivos. Se usa para arrancar el sistema.
  • http: / ipAddress / edit da acceso al sistema de archivo (por ejemplo, para agregar una nueva configuración o acceder a cualquier archivo de registro)
  • http: / ipAddress da acceso a un formulario para establecer la visualización en un valor. Puede usarse para ajustar el puntero.
  • http: / ipAddress / firmware para cargar un nuevo binario de firmware

Paso 6: Marcación y configuración

El powerpoint contiene algunos diales de ejemplo para uso en grados centígrados o fahrenheit. Estos permiten 15 segmentos, pero el rango se puede ajustar fácilmente cambiando el intervalo de pasos. Si se desean más o menos segmentos, es necesario editar las propiedades del objeto donut. Asimismo, se pueden cambiar los fondos de color de los segmentos.

Los datos de configuración están contenidos en un archivo llamado servoTempConfig.txt Este se encuentra en el sistema de archivo del módulo. Para cambiar la configuración, edite el archivo y cárguelo a través de la interfaz web http: ipAddress / edit

Los datos de configuración son solo valores en las líneas de la siguiente manera

  • nombre de host
  • temperatura mínima mostrada (en las unidades elegidas)
  • temperatura máxima mostrada (en las unidades elegidas)
  • intervalo de sueño entre lecturas en segundos
  • modo de suspensión (0 = encendido continuamente con wifi, 1 = sueño profundo normal, 2 = encendido continuamente sin wifi
  • registro de actividad en servoTempLog.txt si registro = 1. Los voltajes de la batería siempre se registran.
  • unidades de temperatura 0 = Centígrados, 1 = Fahrenheit
  • Calibración ADC_CAL para lecturas de voltaje de la batería.

Asegúrese de que las temperaturas mínimas y máximas estén en las unidades C / F seleccionadas.

Recomendado: