- Componentes requeridos
- Fabricación de estructura para clasificador de monedas Arduino
- Diagrama de circuito
- Programando el Arduino
- Operación del contador de monedas Arduino
Anteriormente construimos una máquina contadora de papel moneda basada en Arduino utilizando un sensor de color. Ahora, en este proyecto, estamos construyendo una máquina de conteo Arduino usando sensores IR. Esta máquina cuenta y clasifica las monedas en diferentes secciones con la ayuda de un sensor de infrarrojos. Aquí, se realiza una disposición en la que se colocan sensores IR para detectar diferentes monedas, y se usa Arduino UNO para procesar los datos y mostrar el valor de recuento total en una pantalla LCD de 16x2.
Componentes requeridos
- Arduino UNO
- Sensor de infrarrojos
- Tablero de circuitos
- LCD alfanumérico de 16 * 2
- Módulo I2C para LCD alfanumérico de 16x2 (1602)
- Conexión de cables
Fabricación de estructura para clasificador de monedas Arduino
Paso 1: tome una hoja de cartón y marque los diferentes tamaños de moneda como se muestra en la siguiente figura. Luego corte con cuidado las porciones marcadas. El corte de estas porciones debe realizarse con precisión; de lo contrario, es posible que el proyecto no funcione perfectamente.
Paso 2: Coloque la disposición anterior en una estructura en pendiente como se muestra en la imagen que se muestra a continuación. Después de hacer el arreglo, compruébelo insertando diferentes monedas en la pendiente para asegurarse de que el arreglo funciona perfectamente. Si la moneda no se inserta correctamente, aumente ligeramente el tamaño del orificio de acuerdo con la moneda y vuelva a verificar hasta que funcione correctamente.
Paso 3: coloque los sensores de infrarrojos cerca de la ruta de salida de monedas individuales. Es muy importante colocar correctamente los sensores y calibrarlos usando su potenciómetro. Luego inserte nuevamente las monedas para verificar el funcionamiento del sensor. Obtenga más información sobre el circuito del sensor de infrarrojos aquí.
Diagrama de circuito
A continuación se muestra el diagrama de circuito para la máquina de conteo Arduino:
Aquí, los sensores de infrarrojos se colocan en diferentes rutas de salida de la máquina clasificadora de monedas para detectar las monedas. Cuando se inserta una moneda en este contador de monedas Arduino, ingresa a la ruta dedicada según el diseño mecánico y el sensor IR respectivo detecta la moneda y le da un valor de salida ALTO al Arduino que puede ser leído por los pines analógicos de Arduino. El sensor de infrarrojos que está dando un valor ALTO, decide el valor de la moneda como rupias 2/5/10.
Aquí, una pantalla LCD alfanumérica de 16x2 se interconecta con Arduino utilizando un módulo I2C, para mostrar el número de monedas insertadas en la caja. Esta pantalla LCD también se puede conectar a Arduino directamente sin usar el módulo I2C, pero esto requiere más conexiones. Entonces, para hacerlo más simple, se usa un módulo I2C junto con LCD, que solo usa 2 pines, es decir, SCL, SDA para conectar LCD con Arduino. Para alimentar el Arduino, se utiliza un adaptador AC-DC de 12VDC, 1 AMP, que se puede conectar directamente al conector de alimentación de Arduino.
Después de un pequeño retoque, la configuración completa del clasificador de monedas basado en Arduino se verá a continuación:
Programando el Arduino
Después de conexiones de hardware exitosas, ahora es el momento de programar el Arduino. El código completo para Arduino se encuentra en la parte inferior de este tutorial. La explicación paso a paso del código se da a continuación:
Lo primero que debe hacer en el programa es incluir todas las bibliotecas necesarias. Aquí, en mi caso, he incluido la biblioteca “ LiquidCrystal_I2C.h” para usar la interfaz I2C de una pantalla LCD y “ Wire.h ” para usar la funcionalidad I2C en Arduino.
#incluir
Dentro de setup (), los comandos de la pantalla LCD están escritos para mostrar un mensaje de bienvenida en la pantalla LCD.
lcd.init (); LCD luz de fondo(); lcd.setCursor (0,0); lcd.print ("BASADO EN ARDUINO"); lcd.setCursor (0,1); lcd.print ("CLASIFICACIÓN DE MONEDAS"); retraso (2000); lcd.clear ();
Dentro de loop (), la función analogRead se utiliza para leer los valores del sensor de infrarrojos, de diferentes canales analógicos de Arduino y almacenarlos en diferentes variables.
int s1 = analogRead (A0); int s2 = analogRead (A1); int s3 = analogRead (A2);
Luego, el siguiente código se escribe para detectar las monedas e incrementar los valores del contador de monedas. Aquí se usa un valor de bandera f1 para evitar múltiples recuentos de monedas.
si (s1> = 200 && f1 == 0) {f1 = 1; } más si (s1 <200 && f1 == 1) {f1 = 0; c1 ++; }
Por último, los valores de recuento se muestran en la pantalla LCD, utilizando los siguientes comandos.
lcd.setCursor (0,0); lcd.print ("RS10 RS2 RS5"); lcd.setCursor (1,1); impresión lcd (c1); lcd.setCursor (7,1); lcd.print (c2); lcd.setCursor (14,1); lcd.print (c3);
Operación del contador de monedas Arduino
Después de completar la configuración y cargar el código, encienda la fuente de alimentación de 12 V CC. Primero, se mostrará un mensaje de bienvenida en la pantalla LCD y después de unos segundos, se mostrará una pantalla con el número de todas las monedas disponibles en la pantalla LCD. Al principio, mostrará cero ya que aún no hemos insertado ninguna moneda.
A continuación, inserte cualquier moneda (Rs. 2/5/10) en la parte superior de la máquina donde está escrito " Insertar moneda ". Ahora verá que el valor del recuento de monedas debe actualizarse en la pantalla LCD. Luego inserte varias monedas de diferentes valores y verifique el recuento de las monedas respectivas en la pantalla LCD.
A continuación se proporciona el código completo junto con un video.