[Tutorial] Medidor de vida de pilas AA y AAA con arduino (software, parte #1)

in #utopian-io6 years ago (edited)

What Will I Learn? / ¿Qué aprenderé?

Arduino is an open-source commonly used for building electronics projects. You have a physical circuit board and IDE where you can make your own codes like one that check the battery voltage.

La primera lección de arduino será la construcción de un medidor de vida de pilas, muy útil para saber cuánto tiempo aproximado más de uso les pueden dar dentro de cualquier dispositivo.

Esta lección además, contará con una serie de explicaciones que permitirán hacer un programa funcional y de uso práctico y familiarizarse, en primera instancia con IDE de arduino. Como se sabe es software libre que puede ser descargado gratuitamente.

Requirements/Requerimientos

Para la realización del proyecto se necesitan los siguientes materiales:

  • Placa de Arduino
  • Protoboard
  • Cables para las conexiones
  • 3 resistencias de 220 Ω
  • 1 resistencia de 10 kΩ
  • 1 LED rojo de 5 mm
  • 1 LED amarillo de 5 mm
  • 1 LED verde de 5 mm
  • Instalar el IDE de arduino

Sin embargo, la siguiente lección se basara únicamente en el desarrollo del código (software)

Difficulty / Dificultad

  • Básica

Tutorial Contents/ Contenido

A continuación se explicara la realización del programa paso a paso:

  • Paso 1:

Se definen las variables a usar y los pines que se desean emplear con int y float, mientras que para los pines se les asigna el valor correspondiente al pin que se desea usar a una variable creada con el comando #define

ejemplo:
#define LEDAMARILLO 2

De esta manera, cada vez que se hace un llamado a LEDAMARILLO se esta trabajando con el pin numero 2 del micro

image.png

  • Paso 2:

Dentro de la estructura void setup() {} se inicializan ciertos parámetros y pines. Para esto, primero colocamos el monitor en serie y declaramos los pines en los cuales se conectaran los 4 LEDS en modo salida, ya que serán encendidos como resultado para indicar el nivel de vida de la pila

Para declarar los pines como salida, se utiliza el comando pinMode(LEDAMARILLO, OUTPUT), donde el primer argumento dentro del paréntesis representa el elemento o pin al que vamos a configurar y el segundo argumento dentro del paréntesis representa el modo en el que se desea configurar

image.png

  • Paso 3:

Dentro del void loop {}, creamos el desarrollo del programa como tal. Para esto iniciamos leyendo el valor de la entrada analógico, que es la entrada donde se conectará la pila

image.png

Como podemos ver en la imagen adjuntada, el valor obtenido en la entrada analógica se multiplica por 0.0048, ya que 5 V corresponde al valor 1024, entonces haciendo regla de tres, se divide 5/ 1024= 0.0048 y esto lo multiplicamos por el valor analógico adquirido y así podemos conocer el equivalente en voltaje del valor obtenido.

  • Paso 4:

Se implementan los condicionales necesarios para determinar si se está en un caso o en otro y saber qué nivel de voltaje le queda a la pila, es decir, en este paso dependiendo de si el voltaje medido de la pila es máximo, mínimo o esta en un valor intermedio, se encenderá el correspondiente led que lo indique

image.png

Se coloca un pequeño delay para asegurar que así se desconecte la pila muy rápido se pueda observar por fracciones de segundos, el voltaje detectado.

En caso de que no haya pila conectada se enciende el led naranja, si esta poco cargada el rojo, si está más o menos cargada el amarillo y si está completamente cargada el verde

  • Paso 5:

Por último, apagamos todos los LEDs para comenzar la siguiente iteración con el estado inicial todos apagados. Esto ocurre en muy poco tiempo muy poco tiempo, microsegundos, por lo tanto no afectará al funcionamiento y no será visible en el LED que se encuentre encendido el inicio de una nueva iteración.

image.png



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

Your contribution cannot be approved because it does not follow the Utopian Rules.

Hi, these are the reasons your contribution was rejected

  • If you create a GitHub repository with additional material (like code samples), make sure to choose the repository of the project your tutorial is about and not your own repository.
  • Contents of the contributions (post content) must be in plain English and fully understandable.

I recommend you read the rules before contributing again in the future.

You can contact us on Discord.
[utopian-moderator]

Hola @antonieta-rodri, upv0t3
Este es un servicio gratuito para nuevos usuarios de steemit, para apoyarlos y motivarlos a seguir generando contenido de valor para la comunidad.
<3 Este es un corazón, o un helado, tu eliges .

: )


N0. R4ND0M:
4635 6685 2160 4041
4734 3216 5518 7046
7899 7014 7341 5340
7569 1579 2947 4243

Coin Marketplace

STEEM 0.30
TRX 0.12
JST 0.033
BTC 62914.22
ETH 3108.89
USDT 1.00
SBD 3.88