초음파 손 소독제 회로

문제를 제거하기 위해 도구를 사용해보십시오





초음파 손 소독기 회로는 반사 된 초음파를 통해 사람의 손의 존재를 감지하고 사용자의 손에 소독액을 분배하기 위해 릴레이 솔레노이드 펌프를 순간적으로 트리거합니다.

이 프로젝트는 필요한 감지 기능에 널리 사용되는 HC-SR04 초음파 센서 모듈을 사용합니다.



HC-SR04 사용

HC-SR04 초음파 센서 모듈은 약 40kHz의 주파수에서 작동하고 응답하는 것으로 평가 된 몇 가지 특수 초음파 변환기를 사용하여 제작되었습니다.

모듈에는 의도 된 드라이버 회로에 구성하기위한 4 개의 핀아웃이 있습니다.



공급 핀아웃은 Vcc 및 Gnd 핀으로 표시됩니다. 여기서 Vcc는 모듈의 양의 5V 입력이고 Gnd는 입력 전원 공급 장치의 음의 라인에 연결되어야합니다.

트리거 핀은 반사 된 초음파를 송수신하기 위해 두 개의 변환기를 활성화하는 10us 펄스로 작동합니다.

일련의 반사 신호가 감지되면 '에코'핀이 외부 릴레이 또는 솔레노이드 또는 선호하는 부하를 시작하기 위해 하이가됩니다.

Arduino와 HC-SR04 인터페이스

HC-SR04 모듈을 처리하고 정밀 초음파 근접 감지기로 작동하려면 작업을위한 Arduino와 같은 마이크로 컨트롤러 장치가 필요합니다.

아래 주어진 코드로 적절하게 프로그래밍되면 Arduino는 의도 된 손 근접 감지 및 살균제 분배 메커니즘의 활성화를 위해 HC-SR04와 호환됩니다.

Arduino와 HC-SR04 및 릴레이 단계의 인터페이스 배선 다이어그램은 다음 다이어그램에서 볼 수 있습니다.

운영 세부 사항

이 초음파 손 소독기 회로의 작동 절차는 간단하며 다음과 같은 점으로 이해할 수 있습니다.

Arduino는 HC-SR04 모듈 트리거 펄스에 10 us 활성화 펄스를 제공하여 모듈이 사용자의 손인 타겟에서 반사 된 펄스 트레인을 송수신 할 수 있도록합니다.

이 반사 된 데이터는 HC-SR04 모듈의 Echo 핀에서 rduino로 전송됩니다.

Arduino는 신호를 처리하고 10k 저항과 100uF 커패시터를 통해 릴레이 드라이버 단계에 연결된 보드의 핀 7에서 안정적인 DC 출력을 활성화합니다.

Arduino의 7 번 핀은 HC-SR04 모듈이 설정된 근접 거리 내에서 사용자 손을 계속 감지하는 한 높게 유지되어야합니다.

이것은 우리가 원하지 않는 기간 동안 reay가 계속 켜져 있음을 의미합니다.

릴레이 및 부착 형 디스 펜싱 메커니즘 또는 펌프가 몇 초 동안 만 작동하도록하기 위해 커패시터를 BC547의베이스와 직렬로 배치합니다.

사람의 손이있어 핀 # 7이 높아지면 BC547은 기본 100uF가 완전히 충전 된 동안 만 전도되며, 이는 몇 초 내에 발생합니다.

100uF가 완전히 충전되면 BC547베이스가베이스 드라이브에서 차단되고 전도가 중지되고 릴레이가 꺼지고 부착 된 손 소독제 분배 메커니즘이 비활성화됩니다.

손이 제거되면 HC-SR04는 아두 이노에 에코 신호를 보내는 것을 멈추고 핀 # 7을 로직 0으로 뒤집습니다.

이 시점에서 100uF 기본 커패시터는 Arduino 핀 # 7과 오른쪽 10k 접지 저항을 통해 방전되기 시작합니다.

프로그램 코드

위에서 설명한 HC-SR04 및 Arduino를 사용하는 초음파 손 소독기 회로의 전체 프로그램 코드는 다음과 같습니다.


const int trigger = A1
const int echo = A2
int vcc = A0
int gnd = A3
int OP = 7
long Time
float distanceCM
float distance = 15 // set threshold distance in cm
float resultCM
void setup()
{
pinMode(OP,OUTPUT)
pinMode(trigger,OUTPUT)
pinMode(echo,INPUT)
pinMode(vcc,OUTPUT)
pinMode(gnd,OUTPUT)
}
void loop()
{
digitalWrite(vcc,HIGH)
digitalWrite(gnd,LOW)
digitalWrite(trigger,LOW)
delay(1)
digitalWrite(trigger,HIGH)
delayMicroseconds(10)
digitalWrite(trigger,LOW)
Time=pulseIn(echo,HIGH)
distanceCM=Time*0.034
resultCM=distanceCM/2
if(resultCM<=distance)
{
digitalWrite(OP,HIGH)
delay(4000)
}
if(resultCM>=distance)
{
digitalWrite(OP,LOW)
}
delay(10)
}

경고: 제안 된 초음파 손 소독제 회로는 저자가 실제로 테스트하지 않았습니다. 아이디어는 이 기사 , 디스펜서 펌프 또는 솔레노이드에 필요한 순간 ​​ON / OFF 기능을 활성화하기 위해 적절하게 수정되었습니다.




이전 : 바디 험 센서 알람 회로 다음 :이 회로를 사용하여 빠르게 트랜지스터 쌍 일치