- Componentes Requeridos
- Estrutura de criação para o classificador de moedas Arduino
- Diagrama de circuito
- Programando o Arduino
- Operação do contador de moedas Arduino
Anteriormente, construímos uma máquina de contagem de papel-moeda baseada em Arduino usando um sensor de cores. Agora, neste projeto, estamos construindo uma máquina de contagem Arduino usando sensores IR. Esta máquina conta e classifica as moedas em diferentes seções com a ajuda de um sensor infravermelho. Aqui, um arranjo é feito onde os sensores IR são colocados para detectar moedas diferentes, e o Arduino UNO é usado para processar os dados e mostrar o valor de contagem total no LCD 16x2.
Componentes Requeridos
- Arduino UNO
- Sensor infravermelho
- Tábua de pão
- 16 * 2 LCD alfanumérico
- Módulo I2C para LCD alfanumérico 16x2 (1602)
- Fios de conexão
Estrutura de criação para o classificador de moedas Arduino
Passo 1: Pegue uma folha de papelão e marque os diferentes tamanhos de moeda conforme mostrado na figura abaixo. Em seguida, corte cuidadosamente as partes marcadas. O corte dessas porções deve ser feito com precisão; caso contrário, o projeto pode não funcionar perfeitamente.
Etapa 2: coloque o arranjo acima em uma estrutura inclinada conforme a imagem mostrada abaixo. Depois de fazer o arranjo, verifique inserindo moedas diferentes no declive para garantir que o arranjo está funcionando perfeitamente. Se a moeda não estiver sendo inserida corretamente, aumente ligeiramente o tamanho do orifício de acordo com a moeda e verifique novamente até a operação bem-sucedida.
Etapa 3: coloque os sensores infravermelhos próximos ao caminho de saída de moedas individuais. É muito importante colocar corretamente os sensores e calibrá-los com o seu potenciômetro. Em seguida, insira novamente as moedas para verificar a operação do sensor. Saiba mais sobre o circuito do sensor IR aqui.
Diagrama de circuito
Abaixo está o diagrama de circuito para máquina de contagem Arduino:
Aqui, os sensores IR são colocados em diferentes caminhos de saída da máquina de classificação de moedas para detectar as moedas. Quando uma moeda é inserida neste contador de moedas do Arduino, ela entra no caminho dedicado de acordo com o design mecânico e o respectivo sensor IR detecta a moeda e fornece um valor de saída ALTO para o Arduino que pode ser lido pelos pinos analógicos do Arduino. O sensor IR que está dando um valor ALTO, decide o valor da moeda como Rúpias 2/5/10.
Aqui, um LCD alfanumérico 16x2 faz a interface com o Arduino usando um módulo I2C, para exibir o número de moedas inseridas na caixa. Este LCD também pode ser conectado ao Arduino diretamente sem usar o módulo I2C, mas isso requer mais número de conexões. Então, para simplificar, um módulo I2C é usado junto com o LCD, que usa apenas 2 pinos, ou seja, SCL, SDA para conectar o LCD com o Arduino. Para alimentar o Arduino, um adaptador 12VDC, 1 AMP AC-DC é usado, que pode ser conectado diretamente ao conector de alimentação do Arduino.
Depois de um pequeno retoque, a configuração completa do Arduino Based Coin Sorter ficará assim:
Programando o Arduino
Após conexões de hardware bem-sucedidas, agora é hora de programar o Arduino. O código completo do Arduino é fornecido na parte inferior deste tutorial. A explicação passo a passo do código é fornecida abaixo:
A primeira coisa a fazer no programa é incluir todas as bibliotecas necessárias. Aqui, no meu caso, incluí a biblioteca “LiquidCrystal_I2C.h” para usar a interface I2C de um LCD e “ Wire.h ” para usar a funcionalidade I2C no Arduino.
#incluir
Dentro de setup (), os comandos do LCD são escritos para exibir uma mensagem de boas-vindas no LCD.
lcd.init (); lcd.backlight (); lcd.setCursor (0,0); lcd.print ("BASEADO EM ARDUINO"); lcd.setCursor (0,1); lcd.print ("CLASSIFICAÇÃO DE MOEDAS"); atraso (2000); lcd.clear ();
Dentro de loop (), a função analogRead é usada para ler os valores do sensor infravermelho, de diferentes canais analógicos do Arduino e armazená-los em diferentes variáveis.
int s1 = analogRead (A0); int s2 = leitura analógica (A1); int s3 = leitura analógica (A2);
Então, o código abaixo é escrito para detectar as moedas e incrementar os valores do contador de moedas. Aqui, um valor de bandeira f1 é usado para evitar múltiplas contagens de moedas.
if (s1> = 200 && f1 == 0) {f1 = 1; } else if (s1 <200 && f1 == 1) {f1 = 0; c1 ++; }
Finalmente, os valores da contagem são exibidos no LCD, usando os comandos abaixo.
lcd.setCursor (0,0); lcd.print ("RS10 RS2 RS5"); lcd.setCursor (1,1); lcd.print (c1); lcd.setCursor (7,1); lcd.print (c2); lcd.setCursor (14,1); lcd.print (c3);
Operação do contador de moedas Arduino
Após a configuração completa e upload do código, ligue a fonte de alimentação de 12 Vcc. Primeiramente, uma mensagem de boas-vindas será exibida no LCD e após alguns segundos, uma tela com o número de todas as moedas disponíveis será exibida no LCD. No início, mostrará zero porque ainda não inserimos nenhuma moeda.
Em seguida, insira qualquer moeda (Rs. 2/5/10) no topo da máquina onde “ Inserir Moeda ” está escrito. Agora você verá que o valor da contagem de moedas deve ser atualizado no LCD. Em seguida, insira várias moedas de valores diferentes e verifique a contagem das respectivas moedas no LCD.
O código completo junto com um vídeo é fornecido abaixo.