Fuses Arduino & Dado electrónico

Construcción de un dado electrónico con Arduino, modificando la configuración (fuses) para que funcione con su oscilador interno de 8 MHz. El dado electrónico se controla con un ATmega8A, alimentado con una batería de 3,7V y gobernado con el pulsador táctil capacitivo TTP223.

Cargador USB con sensor táctil

Programar con ARDUINO

Arduino es una plataforma de desarrollo con código abierto, y dispone de librerías para controlar infinidad de sensores y dispositivos sin apenas tener que escribir código. Esto facilita a cualquier aficionado a la electrónica, para que pueda realizar diseños a medida sin apenas tener conocimientos de programación.  Como consecuencia, Arduino ha tomado una gran popularidad, y actualmente se puede encontrar código abierto para realizar cualquier proyecto que se nos ocurra. A pesar de esto, Arduino es mucho más potente y versátil del uso que normalmente se le está dando, porque la potencia y versatilidad de los procesadores ATmega es muy superior al uso que normalmente se le está dando.

Esquema: Arduino UNO (v3)
Esquema: Arduino UNO (v3)

El IDE de Arduino facilita mucho la programación de un microprocesador ATmega, porque sólo es necesario seleccionar la placa de desarrollo con la que se está trabajando (UNO, Mega, Leonardo) y el IDE se encarga de grabar todos los parámetros de configuración y adaptar el código escrito cuando se realiza la compilación y se programa. En la mayoría de los casos esto es suficiente, pero es posible avanzar un poco más y sacar más provecho en los montajes, reduciendo el tamaño y costo de los componentes. El primer paso sería montar el micro controlador, una vez programado, en un PCB aparte y montar únicamente los periféricos que fueran necesarios. Pero si queremos realizar un proyecto de tipo profesional y venderlo, tendremos que modificar los parámetros de configuración para evitar que alguien pueda leer el código y realizar copias. La manera más fácil de cambiar la configuración de un ATmega, es utilizar AVRDUDE y ejecutar las órdenes a través de la ventana de comandos del PC.

https://j-rpm.com/2018/05/%E2%9C%85-arduino-a-fondo-no-te-lo-pierdas/

Dado electrónico con sensor táctil

Como la mejor forma de aprender algo es hacerlo, he contruido un dado electrónico con un ATmega8A, funcionando con su oscilador interno de 8MHz.

Dado con sensor táctil

Para programar el ATmega8A he utilizado una placa de desarrollo Arduino UNO, haciéndola funcionar como programador ISP. Como el código del programa está escrito en el IDE de Arduino, la compilación la hará para funcionar con un oscilador a cristal de 16 MHz. Lo primero que hay que tener en cuenta para que todo funcione correctamente, es reducir los retardos que hayamos definido en el programa a la mitad, porque cuando cambiemos la configuración del microprocesador para que funcione a 8 MHz, los valores de retardo que hayamos escrito durarán el doble.

Programando FUSES de ATmega8A

Una vez programado el microprocesador, sin desmontarlo del zócalo de programación, abriremos la ventana de comandos de Windows en el PC, y modificaremos la configuración (fuses) del ATmega8A / ATmega328P ejecutando AVRDUDE. Los argumentos que tenemos que añadir al ejecutar AVRDUDE, dependerán del tipo de microprocesador ATmega que estemos programando, y el puerto COM con el que se haya conectado el PC con Arduino.

Ejemplo: ATmega8A en COM3

avrdude -c arduino -p m8 -P COM3 -b 19200 -U lfuse:w:0xe4:m -U hfuse:w:0xd9:m

Ejemplo: ATmega328P en COM3

avrdude -c arduino -p m328p -P COM3 -b 19200 -U lfuse:w:0xe2:m -U hfuse:w:0xd9:m

Firmware

El código de programación de este dado electrónico,  se puede descargar desde el siguiente enlace: Dado electrónico con sensor táctil

 

Interruptor táctil con fuente capacitiva

Diseño de una fuente de alimentación capacitiva, para alimentar un interruptor táctil (electrónico) y sustituirlo por los interruptores mecánicos de una casa. Como el tamaño de este circuito es reducido, es posible ocultarlo dentro de las cajas empotradas que se instalan en las viviendas, para alojar los interruptores de tipo mecánico.

El diseño y funcionamiento del sensor táctil, se detalla en la entrada anterior:

Cargador USB con sensor táctil

Fuente de alimentación capacitiva

Las fuentes capacitivas aprovechan la resistencia reactiva que ofrece un condensador al paso de la corriente alterna (Xc = 1/2πfC), para reducir el valor de la tensión a su salida sin producir un consumo excesivo. La reducción de tensión en una fuente capacitiva se realiza con un divisor resistivo, al cuál se le añade un condensador en serie con las resistencias. Como cabe suponer, este circuito es válido para posteriormente rectificar la tensión y obtener una tensión continua, normalmente con un puente de diodos y un condensador a su salida como filtro. En este circuito, el valor capacitivo del condensador limita la corriente máxima que podemos obtener a la salida, a más capacidad más corriente. Es importante ajustar este valor al mínimo posible, con el fin de obtener un máximo rendimiento (menor consumo y disipación de potencia).

Interruptor táctil

Como se puede observar en el esquema del circuito, los valores del condensador del divisor y la resistencia de carga, son los que determinan el valor de corriente máxima de la fuente de alimentación. La resistencia de carga se debería poner de una potencia superior a la calculada, con el fin de proteger el circuito. Lo más delicado de este circuito es que se abra la carga, porque la tensión a la salida subiría mucho, provocando la avería del equipo que estuviera alimentando… además de la posible explosión del condensador de filtro, al superar su tensión máxima de funcionamiento.  Otro inconveniente que tienen este tipo de fuentes de alimentación, es que no existe un aislamiento galvánico entre su entrada y salida. Podría existir riesgo de electrocución si se manipula el circuito cuando está conectado a la red eléctrica.

Fuente capacitiva

Consumos en reposo

Este circuito tiene un consumo en reposo, el cuál varía en función de la corriente máxima que hayamos fijado en el circuito. A continuación se muestran las medidas y cálculos realizados en función de la corriente ajustada.

Consumo para 10mA

Consumo para 20mAEn el video siguiente se puede ver con más detalle el funcionamiento y las medidas realizadas con este circuito.

Cargador USB con sensor táctil

Adaptación de un cargador USB, incorporando un interruptor para su desconexión, y un sensor táctil para el encendido/apagado de la lámpara en una mesita de noche. Todo el conjunto se monta en una pequeña caja de metacrilato, hecha a medida con la ayuda de la CNC. Con este conjunto se evita el tener que conectar y desconectar cada noche el cargador del teléfono móvil, y se aprovecha la alimentación de 5V para convertir el interruptor mecánico de la lámpara de noche en táctil… facilitando así su localización cuando no hay luz.

Control táctil TTP223

El control táctil se realiza con el módulo TTP223, el cuál entrega un nivel lógico 1/0 a su salida. El sensor de este módulo es capacitivo, sensible a la proximidad del cuerpo humano y su sensibilidad es ajustable. El esquema por bloques y los detalles técnicos del módulo TTP223 se muestran en la imagen siguiente.

TTP223: Esquema bloques

Detalles del montaje

El conjunto de este montaje lo podemos dividir en dos partes:

  1. Circuito de carga USB, compuesto por un cargador de 5V, reciclado de una PDA antigua (PALM), intercalando un interruptor en serie con su entrada de alimentación.
  2. Interruptor táctil, compuesto por el módulo TTP223 (sensor táctil), un foto triac MOC3020 y un triac BT137. Todo este conjunto funciona cuando el cargador está conectado, permitiendo controlar el encendido de una lámpara de mesa, conectada a la tensión de red (230 VAC en este caso) al tocar con la mano en las proximidades del sensor táctil. La sensibilidad del sensor táctil aumenta con su tamaño, pudiendo reajustar su umbral de disparo mediante la colocación en paralelo de un condensador de baja capacidad (entre 0 y 50pF).Cargador con sensor táctil

En el montaje que he realizado, el sensor consiste en un pequeño espiral de hilo, pegado por dentro en la tapa superior de la caja, y el valor óptimo del condensador es de 12pF (ver en el esquema). También es conveniente conectar un condensador de desacoplo en la entrada de alimentación del módulo TTP223. En este montaje he utilizado un condensador de 100uF.

Interior del cargador con sensor táctil

Todos los detalles de montaje, fabricación de la caja, serigrafía y pruebas de funcionamiento se muestran en el video siguiente: