- Vaaditut komponentit
- Rakenteen tekeminen Arduino-kolikkolajittelijalle
- Piirikaavio
- Arduinon ohjelmointi
- Arduino-kolikkolaskurin toiminta
Olemme aiemmin rakentaneet Arduino-pohjaisen paperin valuutanlaskentakoneen värianturin avulla. Nyt tässä projektissa rakennamme Arduino-laskukonetta IR-antureilla. Tämä kone laskee ja lajittelee kolikot eri osiin infrapunasensorin avulla. Tässä tehdään järjestely, jossa infrapuna-anturit sijoitetaan erilaisten kolikoiden havaitsemiseksi, ja Arduino UNO: ta käytetään tietojen käsittelyyn ja kokonaislaskennan arvon näyttämiseen 16x2 LCD: ssä.
Vaaditut komponentit
- Arduino UNO
- IR-anturi
- Leipälauta
- 16 * 2 aakkosnumeerinen LCD-näyttö
- I2C-moduuli 16x2 (1602) aakkosnumeeriselle LCD-näytölle
- Johtojen liittäminen
Rakenteen tekeminen Arduino-kolikkolajittelijalle
Vaihe 1: Ota pahviarkki ja merkitse erikokoisille kolikoille alla olevan kuvan mukaisesti. Leikkaa sitten merkityt osat varovasti. Näiden osien leikkaaminen on tehtävä tarkasti; muuten projekti ei välttämättä toimi täydellisesti.
Vaihe 2: Aseta yllä oleva järjestely kaltevuusrakenteeseen alla olevan kuvan mukaisesti. Kun olet tehnyt järjestelyn, tarkista se asettamalla eri kolikot kaltevuuteen varmistaaksesi, että järjestely toimii täydellisesti. Jos kolikko ei työnnä oikein, lisää sitten reiän kokoa hieman kolikon mukaan ja tarkista, kunnes toiminta on onnistunut.
Vaihe 3: Aseta IR-anturit lähelle yksittäisten kolikoiden lähtöpolkua. On erittäin tärkeää sijoittaa anturit oikein ja kalibroida ne potentiometrillä. Aseta sitten kolikot takaisin paikalleen tarkistaaksesi anturin toiminnan. Lisätietoja IR-anturipiiristä on täällä.
Piirikaavio
Alla on Arduino-laskentakoneen piirikaavio:
Tässä infrapuna-anturit sijoitetaan kolikoiden lajittelukoneen eri ulostuloreitteille kolikoiden havaitsemiseksi. Kun kolikko työnnetään tähän Arduino-kolikkolaskuriin, se siirtyy omistetulle polulle mekaanisen rakenteen mukaisesti ja vastaava IR-anturi tunnistaa kolikon ja antaa Arduinolle KORKEA lähtöarvon, jonka Arduinon analogiset nastat voivat lukea. KORKEA-arvon antava IR-anturi päättää kolikon arvon kuten Rupia 2/5/10.
Tässä 16x2 aakkosnumeerinen LCD-näyttö on liitetty Arduinoon I2C-moduulin avulla, jotta ruutuun asetettujen kolikoiden määrä näytetään. Tämä LCD-näyttö voidaan liittää myös Arduinoon suoraan ilman I2C-moduulia, mutta tämä vaatii enemmän yhteyksiä. Joten yksinkertaisuuden vuoksi LCD-näytön kanssa käytetään I2C-moduulia, joka käyttää vain 2 nastaa, eli SCL, SDA LCD: n liittämiseen Arduinoon. Arduinon virtalähteeksi käytetään 12 VDC: n, 1 AMP: n AC-DC-sovitinta, joka voidaan liittää suoraan Arduinon virtaliittimeen.
Pienen korjauksen jälkeen Arduino Based Coin Sorterin täydellinen asennus näyttää seuraavalta:
Arduinon ohjelmointi
Onnistuneiden laitteistoyhteyksien jälkeen on nyt aika ohjelmoida Arduino. Arduinon täydellinen koodi on tämän opetusohjelman alaosassa. Koodin selitys vaiheittain annetaan alla:
Ensimmäinen tehtävä ohjelmassa on sisällyttää kaikki vaaditut kirjastot. Tässä tapauksessani olen sisällyttänyt “ LiquidCrystal_I2C.h” -kirjaston LCD-näytön I2C-käyttöliittymän käyttämiseen ja “ Wire.h ” I2C-toiminnon käyttämiseen Arduinossa .
#sisältää
Asennuksen sisällä () LCD-komennot kirjoitetaan tervetuloviestin näyttämiseksi LCD-näytöllä.
lcd.init (); lcd.taustavalo (); lcd.setCursor (0,0); lcd.print ("ARDUINO BASED"); lcd.setCursor (0,1); lcd.print ("KOLIKOJEN Lajittelu"); viive (2000); lcd.clear ();
Sisällä silmukka (), analogRead- toimintoa käytetään lukemaan infrapunatunnistimen arvot Arduinon eri analogisista kanavista ja tallentamaan ne eri muuttujiin.
int s1 = analoginen luku (A0); int s2 = analoginen luku (A1); int s3 = analoginen luku (A2);
Sitten alla oleva koodi kirjoitetaan kolikoiden havaitsemiseksi ja kolikkolaskurin arvojen kasvattamiseksi. Tässä lippuarvoa f1 käytetään kolikoiden moninkertaisen laskennan välttämiseksi.
jos (s1> = 200 && f1 == 0) {f1 = 1; } muu if (s1 <200 && f1 == 1) {f1 = 0; c1 ++; }
Lopuksi laskenta-arvot näytetään nestekidenäytössä alla olevien komentojen avulla.
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);
Arduino-kolikkolaskurin toiminta
Kun olet määrittänyt kaikki asetukset ja lataanut koodin, kytke 12 V DC -virtalähde PÄÄLLE. Ensinnäkin nestekidenäytölle tulee tervetuloviesti ja muutaman sekunnin kuluttua LCD-näyttöön tulee näyttö, jossa näkyy kaikkien käytettävissä olevien kolikoiden määrä. Alussa se näyttää nollan, koska emme ole vielä asettaneet kolikoita.
Aseta seuraavaksi kolikko (Rs. 2/5/10) koneen yläosaan, johon on kirjoitettu ” Lisää kolikko ”. Nyt näet, että kolikoiden arvo on päivitettävä LCD-näytöllä. Aseta sitten useita eri arvoja kolikoita ja tarkista vastaavien kolikoiden määrä nestekidenäytöltä.
Täydellinen koodi yhdessä videon kanssa on annettu alla.