- Nødvendige komponenter
- At lave struktur til Arduino møntsorterer
- Kredsløbsdiagram
- Programmering af Arduino
- Betjening af Arduino-mønttæller
Vi har tidligere bygget en Arduino-baseret papirvalutatællemaskine ved hjælp af en farvesensor. Nu i dette projekt bygger vi en Arduino-tællemaskine ved hjælp af IR-sensorer. Denne maskine tæller og sorterer mønterne i forskellige sektioner ved hjælp af en infrarød sensor. Her er der lavet et arrangement, hvor IR-sensorer placeres for at registrere forskellige mønter, og Arduino UNO bruges til at behandle dataene og vise den samlede tællingsværdi på 16x2 LCD.
Nødvendige komponenter
- Arduino UNO
- IR-sensor
- Brødbræt
- 16 * 2 Alfanumerisk LCD
- I2C-modul til 16x2 (1602) alfanumerisk LCD
- Tilslutning af ledninger
At lave struktur til Arduino møntsorterer
Trin 1: Tag et papark og marker for forskellige møntstørrelser som vist i nedenstående figur. Skær derefter de markerede portioner forsigtigt. Skæring af disse dele skal udføres nøjagtigt; Ellers fungerer projektet muligvis ikke perfekt.
Trin 2: Placer ovenstående arrangement i en hældningsstruktur i henhold til billedet vist nedenfor. Når du har lavet arrangementet, skal du kontrollere det ved at indsætte forskellige mønter i skråningen for at sikre, at arrangementet fungerer perfekt. Hvis mønten ikke indsættes ordentligt, skal du øge hullets størrelse i henhold til mønten og kontrollere den igen, indtil den fungerer korrekt.
Trin 3: Placer IR-sensorer nær outputstien for de enkelte mønter. Det er meget vigtigt at placere sensorerne korrekt og kalibrere dem ved hjælp af deres potentiometer. Indsæt derefter mønterne igen for at kontrollere sensorens funktion. Lær mere om IR-sensorkredsløbet her.
Kredsløbsdiagram
Nedenfor er kredsløbsdiagrammet til Arduino-tællemaskine:
Her er IR-sensorer placeret ved forskellige outputstier på møntsorteringsmaskinen for at fornemme mønterne. Når en mønt indsættes i denne Arduino-mønttæller, går den ind i den dedikerede sti i henhold til det mekaniske design, og den respektive IR-sensor registrerer mønten og giver HØJ outputværdi til Arduinoen, som kan læses af de analoge ben fra Arduino. IR-sensoren, der giver HIGH-værdi, bestemmer møntværdien som Rupees 2/5/10.
Her er en 16x2 alfanumerisk LCD grænseflade med Arduino ved hjælp af et I2C-modul for at vise antallet af mønter indsat i kassen. Denne LCD kan også tilsluttes Arduino direkte uden brug af I2C-modulet, men dette kræver mere antal forbindelser. Så for at gøre det enklere bruges et I2C-modul sammen med LCD, som kun bruger 2 ben, dvs. SCL, SDA til at forbinde LCD med Arduino. Til strømforsyning til Arduino bruges en 12VDC, 1 AMP AC-DC-adapter, som kan tilsluttes direkte til Arduinos strømstik.
Efter en lille touch-up vil den komplette opsætning til Arduino Based Coin Sorter se ud som nedenfor:
Programmering af Arduino
Efter vellykkede hardwareforbindelser er det nu tid til at programmere Arduino. Den komplette kode til Arduino er angivet i den nederste del af denne vejledning. Den trinvise forklaring af koden gives nedenfor:
Den første ting at gøre i programmet er at inkludere alle de nødvendige biblioteker. Her i mit tilfælde har jeg inkluderet " LiquidCrystal_I2C.h" -biblioteket til brug af I2C-interface på en LCD og " Wire.h " til brug af I2C-funktionalitet på Arduino.
#omfatte
Inde i opsætning () skrives LCD-kommandoer til visning af en velkomstbesked på LCD.
lcd.init (); lcd.backlight (); lcd.setCursor (0,0); lcd.print ("ARDUINO BASERET"); lcd.setCursor (0,1); lcd.print ("MØNTSORTERING"); forsinkelse (2000); lcd.clear ();
Inside loop () bruges analogRead- funktion til at læse de infrarøde sensorværdier fra forskellige analoge kanaler i Arduino og gemme dem i forskellige variabler.
int s1 = analogRead (A0); int s2 = analogRead (A1); int s3 = analogRead (A2);
Derefter er koden nedenfor skrevet for at registrere mønterne og øge mønttællerens værdier. Her bruges en flagværdi f1 til at undgå flere optællinger af mønterne.
hvis (s1> = 200 && f1 == 0) {f1 = 1; } ellers hvis (s1 <200 && f1 == 1) {f1 = 0; c1 ++; }
Endelig vises tællingsværdierne på LCD ved hjælp af nedenstående kommandoer.
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);
Betjening af Arduino-mønttæller
Efter den komplette opsætning og upload af koden skal du tænde for 12V DC strømforsyningen. Først vises en velkomstmeddelelse på LCD'et, og efter et par sekunder vises en skærm med antallet af alle tilgængelige mønter på LCD'et. I begyndelsen viser det nul, da vi endnu ikke har indsat nogen mønter.
Indsæt derefter en hvilken som helst mønt (Rs. 2/5/10) øverst på maskinen, hvor " Insert Coin " er skrevet. Nu vil du se, at værdien af mønttællingen skal opdateres på LCD. Indsæt derefter flere mønter med forskellige værdier, og kontroller antallet af de respektive mønter på LCD-skærmen.
Komplet kode sammen med en video er angivet nedenfor.