Vaak zien we bezoekersbalies in het stadion, winkelcentrum, kantoren, klaslokalen enz. Hoe tellen ze de mensen en zetten ze het licht AAN of UIT als er niemand binnen is? Vandaag zijn we hier met een automatisch kamerlichtcontrollerproject met bidirectionele bezoekersteller met behulp van Arduino Uno. Het is een zeer interessant project voor hobbyisten en studenten, zowel voor de lol als voor het leren.
Componenten
- Arduino UNO
- Relais (5v)
- Resisters
- IR-sensormodule
- 16x2 LCD-scherm
- Broodplank
- Verbindingsdraden
- LED
- BC547-transistor
Het project van " Digitale bezoeker teller " is gebaseerd op de koppeling van sommige componenten zoals sensoren, motoren etc. met arduino microcontroller. Deze teller kan mensen in beide richtingen tellen. Dit circuit kan worden gebruikt om het aantal personen te tellen dat een hal / winkelcentrum / huis / kantoor binnenkomt via de toegangspoort en het kan het aantal personen tellen dat de hal verlaat door het aantal bij dezelfde poort of uitgangspoort te verlagen en het hangt af van de sensor plaatsing in winkelcentrum / hal. Het kan ook worden gebruikt bij poorten van parkeerterreinen en andere openbare plaatsen.
Dit project is opgedeeld in vier delen: sensoren, controller, toonbankdisplay en poort. De sensor zou een onderbreking waarnemen en een input leveren aan de controller die de teller zou verhogen of verlagen, afhankelijk van het binnenkomen of verlaten van de persoon. En het tellen wordt weergegeven op een 16x2 LCD via de controller.
Wanneer iemand de kamer binnenkomt, wordt de IR-sensor onderbroken door het object en de andere sensor werkt niet omdat we een tijdje een vertraging hebben toegevoegd.
Circuit uitleg
Er zijn enkele secties van het hele bezoekerstellercircuit die het sensorgedeelte, het bedieningsgedeelte, het weergavegedeelte en het bestuurdersgedeelte zijn.
Sensorsectie: In deze sectie hebben we twee IR-sensormodules gebruikt die IR-diodes, potentiometer, Comparator (Op-Amp) en LED's bevatten. Potentiometer wordt gebruikt voor het instellen van referentiespanning op de ene aansluiting van de comparator en IR-sensoren detecteren het object of de persoon en zorgen voor een verandering in de spanning op de tweede aansluiting van de comparator. Vervolgens vergelijkt de comparator beide spanningen en genereert een digitaal signaal aan de uitgang. Hier in dit circuit hebben we twee vergelijkers voor twee sensoren gebruikt. LM358 wordt gebruikt als vergelijker. De LM358 heeft twee ingebouwde Op-amp met lage ruis.
Besturingsgedeelte: Arduino UNO wordt gebruikt voor het besturen van het hele proces van dit bezoekerstellerproject. De uitgangen van comparatoren zijn verbonden met digitale pin nummer 14 en 19 van arduino. Arduino leest deze signalen en stuurt opdrachten naar het stuurcircuit van het relais om het relais voor gloeilampbesturing aan te sturen. Als u problemen ondervindt bij het werken met relais, bekijk dan deze tutorial over arduino-relaisbesturing voor meer informatie over het bedienen van relais met Arduino.
Beeldschermgedeelte: het beeldschermgedeelte bevat een 16x2 LCD. Deze sectie geeft het getelde aantal mensen en de lichtstatus weer wanneer niemand in de kamer komt.
Relay Driver-sectie: Relay-driver-sectie bestaat uit een BC547-transistor en een 5 volt-relais voor het besturen van de gloeilamp. Transistor wordt gebruikt om het relais aan te sturen omdat de Arduino niet genoeg spanning en stroom levert om het relais aan te sturen. Dus hebben we een relaisstuurcircuit toegevoegd om voldoende spanning en stroom voor relais te krijgen. Arduino stuurt opdrachten naar deze transistor van de relaisstuurprogramma en vervolgens zal de gloeilamp overeenkomstig in- / uitschakelen.
Circuitdiagram bezoeker teller
De uitgangen van IR-sensormodules zijn rechtstreeks verbonden met de digitale pin 14 (A0) en 19 (A5) van Arduino. En Relay driver transistor op digitale pin 2. LCD is aangesloten in 4 bit mode. RS en EN pin van LCD is direct verbonden op 13 en 12. Data pin van LCD D4-D7 is ook direct verbonden met arduino op respectievelijk D11-D8. De overige aansluitingen worden weergegeven in het onderstaande schakelschema.
Code Uitleg
Eerst hebben we een bibliotheek voor LCD en een gedefinieerde pin voor hetzelfde opgenomen. En ook gedefinieerde input output pin voor sensoren en ralay.
Vervolgens richting gegeven aan input output pin en geïnitialiseerd LCD in setup loop.
In de lusfunctie lezen we de ingang van de sensoren en verhogen of verlagen de telling afhankelijk van de ingang of uitgang. En controleer ook op nultoestand. Nul-conditie betekent dat er niemand in de kamer is. Als de nulconditie waar is, schakelt de arduino de lamp uit door het relais via de transistor te deactiveren.
En als de nulconditie niet waar is, dan doet arduino het licht aan. Hier zijn twee functies voor binnenkomen en verlaten.