종종 경기장, 쇼핑몰, 사무실, 강의실 등에서 방문자 카운터를 볼 수 있습니다. 내부에 아무도 없을 때 사람들을 어떻게 세고 조명을 켜거나 끄나요? 오늘 우리는 Arduino Uno를 사용하여 양방향 방문자 카운터 가 있는 자동 실내 조명 컨트롤러 프로젝트를 가지고 있습니다. 취미와 학생들에게 재미와 학습을위한 매우 흥미로운 프로젝트입니다.
구성품
- Arduino UNO
- 릴레이 (5v)
- 저항 자
- IR 센서 모듈
- 16x2 LCD 디스플레이
- 브레드 보드
- 전선 연결
- 주도
- BC547 트랜지스터
“ 디지털 방문자 카운터 ” 프로젝트는 센서, 모터 등과 같은 일부 구성 요소와 arduino 마이크로 컨트롤러의 인터페이스를 기반으로합니다. 이 카운터는 양방향으로 사람을 계산할 수 있습니다. 이 회로는 입구 게이트에서 홀 / 몰 / 홈 / 오피스에 출입하는 사람의 수를 계산하는 데 사용할 수 있으며, 같은 게이트 또는 출구에서 카운트를 줄여서 홀을 나가는 사람의 수를 계산할 수 있으며 센서에 따라 다릅니다. 쇼핑몰 / 홀에 배치. 또한 주차장 게이트 및 기타 공공 장소에서 사용할 수 있습니다.
이 프로젝트는 센서, 컨트롤러, 카운터 디스플레이 및 게이트의 네 부분으로 나뉩니다. 센서는 중단을 관찰하고 사람의 출입에 따라 카운터 증가 또는 감소를 실행하는 컨트롤러에 입력을 제공합니다. 그리고 계수는 컨트롤러를 통해 16x2 LCD에 표시됩니다.
누군가가 방에 들어 오면 IR 센서가 물체에 의해 차단되고 잠시 지연을 추가했기 때문에 다른 센서가 작동하지 않습니다.
회로 설명
전체 방문자 카운터 회로의 일부 섹션은 센서 섹션, 제어 섹션, 디스플레이 섹션 및 운전자 섹션입니다.
센서 섹션: 이 섹션에서는 IR 다이오드, 전위차계, 비교기 (Op-Amp) 및 LED를 포함하는 두 개의 IR 센서 모듈을 사용했습니다. 전위차계는 비교기의 한 단자에서 기준 전압을 설정하는 데 사용되며 IR 센서는 물체 또는 사람을 감지하고 비교기의 두 번째 단자에서 전압 변화를 제공합니다. 그런 다음 비교기는 두 전압을 비교하고 출력에서 디지털 신호를 생성합니다. 이 회로에서는 두 개의 센서에 대해 두 개의 비교기를 사용했습니다. LM358은 비교기로 사용됩니다. LM358에는 두 개의 저잡음 연산 증폭기가 내장되어 있습니다.
제어 섹션: Arduino UNO는이 방문자 카운터 프로젝트의 전체 프로세스를 제어하는 데 사용됩니다. 비교기의 출력은 arduino의 디지털 핀 번호 14 및 19에 연결됩니다. Arduino는 이러한 신호를 읽고 릴레이 드라이버 회로에 명령을 보내 전구 제어용 릴레이를 구동합니다. 릴레이 작업에 어려움이있는 경우 arduino 릴레이 제어에 대한이 자습서를 확인하여 Arduino를 사용한 릴레이 작동에 대해 자세히 알아보십시오.
디스플레이 섹션: 디스플레이 섹션에는 16x2 LCD가 있습니다. 이 섹션은 아무도 방에 없을 때 계산 된 사람 수와 조명 상태를 표시합니다.
릴레이 드라이버 섹션: 릴레이 드라이버 섹션은 BC547 트랜지스터와 전구를 제어하기위한 5 볼트 릴레이로 구성됩니다. arduino가 릴레이를 구동하기에 충분한 전압과 전류를 공급하지 않기 때문에 트랜지스터를 사용하여 릴레이를 구동합니다. 그래서 릴레이에 충분한 전압과 전류를 얻기 위해 릴레이 드라이버 회로를 추가했습니다. Arduino는이 릴레이 드라이버 트랜지스터에 명령을 보내고 그에 따라 전구가 켜지거나 꺼집니다.
방문자 카운터 회로도
IR 센서 모듈의 출력은 arduino 디지털 핀 번호 14 (A0) 및 19 (A5)에 직접 연결됩니다. 그리고 디지털 핀 2의 릴레이 드라이버 트랜지스터. LCD는 4 비트 모드로 연결됩니다. LCD의 RS와 EN 핀은 13과 12에서 직접 연결됩니다. LCD D4-D7의 데이터 핀도 D11-D8에서 각각 arduino에 직접 연결됩니다. 나머지 연결은 아래 회로도에 나와 있습니다.
코드 설명
먼저 LCD 용 라이브러리를 포함하고 동일한 핀을 정의했습니다. 또한 센서 및 ralay에 대해 정의 된 입력 출력 핀.
그런 다음 입력 출력 핀에 대한 방향을 지정하고 설정 루프에서 LCD를 초기화합니다.
루프 기능에서 센서 입력을 읽고 입력 또는 종료 작업에 따라 계수를 증가 또는 감소시킵니다. 또한 제로 상태를 확인하십시오. 제로 조건은 방에 아무도 없음을 의미합니다. 0 조건이 참이면 arduino는 트랜지스터를 통해 릴레이를 비활성화하여 전구를 끕니다.
제로 조건이 거짓이면 arduino가 조명을 켭니다. 여기에 들어오고 나가는 두 가지 기능이 있습니다.