이것은 누군가를 감지했을 때 이메일을 트리거 할 수있는 보안 시스템을 구축 할 또 다른 흥미로운 IOT 프로젝트입니다. 이 프로젝트는 ESP8266, PIR 센서 및 ISD1820 음성 모듈의 힘을 혼합했습니다. 이 기사의 끝에서 인터넷을 통해 원격으로 무장 / 무장 해제 (활성화 / 비활성화) 할 수있는 완전한 기능의 보안 시스템을 구축했을 것입니다. 움직임이 감지 될 때 재생 될 오디오 클립을 녹음하고 침입을 알리는 특정 이메일 ID로 날짜와 시간이 포함 된 메일을 보낼 수도 있습니다. 충분히 쿨….. !!! ??
그러니 만들어 보자..
필요한 재료:
이 프로젝트를 구축하는 데 필요한 자료는 다음과 같습니다.
- ESP8266
- PIR 센서
- ISD1820 음성 모듈
- LM317, LM7805
- BC547 (2Nos)
- 1K, 200ohm, 330ohm 저항기
- 10uf 및 0.1uf 커패시터
- 12V 어댑터 / 9V 배터리로 설정 전원 공급
모듈 설명:
이 프로젝트에는 ESP8266 모듈, PIR 센서 및 ISD1820 음성 모듈의 세 가지 중요한 구성 요소가 있습니다. 이러한 모듈에 대해 잘 알고 있다면 회로도로 이동하면서이 부분을 건너 뛸 수 있지만, 어떻게 작동하는지 알고 싶다면 계속 읽어보십시오.
ESP8266 모듈:
이 모듈을 언젠가 보셨을 것입니다. IOT 프로젝트에서 주로 사용되는 매우 유명하고 강력한 WiFi 모듈입니다.
이 프로젝트는 ESP8266 모듈을 프로그래밍하는 방법을 알고 있다고 가정하고 ESP8266을 시작하는 방법과 Arduino IDE를 사용하여 프로그래밍하는 방법을 설명한 아래의 두 자습서를 참조하십시오. 프로젝트를 완료하려면 이것을 알아야합니다.
- ESP8266 시작하기
- Arduino IDE를 사용하여 ESP8266 프로그래밍
PIR 센서:
PIR 센서는 수동 적외선 센서를 의미합니다. 인간이나 동물의 존재를 감지 할 수있는 저가형 센서입니다. 센서에는 두 가지 중요한 물질이 존재합니다. 하나는 살아있는 유기체 (인간 / 동물)의 열 신호를 감지 할 수있는 초 전기 크리스탈이고 다른 하나는 센서의 범위를 넓힐 수있는 프레 넬 렌즈입니다. 또한 PIR 센서 모듈은 아래 이미지와 같이 센서 작동을 조정하는 몇 가지 옵션을 제공합니다.
두 개의 전위차계 (주황색)는 감도를 제어하고 센서의 시간에 트리거하는 데 사용됩니다. 기본적으로 센서의 Dout 핀은 Vcc와 Gnd 핀 사이에 있습니다. 이 모듈은 3.3V에서 작동하지만 5V로도 전원을 공급받을 수 있습니다. 왼쪽 상단에는 모듈이 두 가지 다른 모드에서 작동하도록하는 데 사용할 수있는 트리거 핀 설정도 있습니다. 하나는 "H"모드이고 다른 하나는 "I"모드입니다.
"H"모드에서 출력 핀 Dout은 사람이 범위 내에서 감지되면 높고 (3.3V) 특정 시간이 지나면 낮아집니다 (시간은 전위차계로 설정 됨). 이 모드에서 출력 핀은 사람이 여전히 범위 내에 있거나 해당 영역을 떠 났는지 여부에 관계없이 높아집니다. 우리는 프로젝트에서 "H"모드로 모듈을 사용하고 있습니다.
"I"모드에서 출력 핀 Dout은 사람이 범위 내에서 감지되면 높고 (3.3V) 센서 범위의 한계 내에 머무르는 한 높게 유지됩니다. 사람이 영역을 벗어나면 전위차계를 사용하여 설정할 수있는 특정 시간이 지나면 핀이 낮아집니다.
참고: 전위차계 또는 핀의 위치는 PIR 센서 공급 업체에 따라 다를 수 있습니다. 실크 스크린을 따라 핀아웃을 결정하십시오.
ISD1820 음성 모듈:
ISD 1820 Voice 모듈은 음성 안내로 프로젝트를 꾸밀 수있는 정말 멋진 모듈입니다. 이 모듈은 10 초 동안 오디오 클립을 녹음 한 다음 필요할 때 재생할 수 있습니다. 모듈 자체에는 마이크와 스피커 (8ohms 0.5watts)가 함께 제공되며 아래와 같은 모습이어야합니다.
모듈은 + 5V에서 작동하며 왼쪽의 버그 스틱을 사용하여 전원을 공급할 수 있습니다. 또한 하단에 Rec 인 3 개의 버튼이 있습니다. 버튼, PlayE. 버튼과 PlayL. 버튼을 각각 누릅니다. Rec를 눌러 음성을 녹음 할 수 있습니다. 버튼을 누르고 PlayE 버튼을 사용하여 재생합니다. PlayL은 버튼을 누르고있는 동안 음성을 재생합니다. MCU 또는 ESP와 인터페이스 할 때 왼쪽에있는 핀을 사용할 수 있습니다. 이 핀은 3V-5V를 견딜 수 있으므로 Arduino / ESP8266에 의해 직접 구동 될 수 있습니다. 우리 프로젝트에서는 ESP8266 모듈의 GPIO 0 핀을 사용하여 PLAYE 핀을 제어하고 있습니다. 침입자가 감지되면 녹음 된 음성을 재생할 수 있습니다.
회로도 및 하드웨어
이 IoT 보안 시스템 프로젝트 의 전체 회로도 는 다음과 같습니다.
회로는 두 개의 전압 조정기로 구성됩니다. 하나는 LM317을 사용하여 설계된 3.3V 조정기이고 다른 하나는 7805 조정기 IC를 사용하여 수행 된 5V 조정기입니다. LM317은 저항 200ohm 및 330ohm을 사용하여 출력이 3.3V로 설정된 가변 전압 조정기입니다. 두 레귤레이터 모두 12V 어댑터를 사용하여 전원이 공급됩니다. 이 회로의 전력 소비는 매우 적기 때문에 12V 어댑터 대신 9V 배터리를 사용할 수도 있습니다.
PIR 센서 및 음성 모듈은 GPIO 2 핀을 하이로 설정하여 켜집니다. 이 핀은 1k 전류 제한 저항을 통해 BC547을 구동하고 두 모듈의 전원 회로를 완성합니다. GPIO_0 핀은 입력 핀으로 사용됩니다. BC547 트랜지스터를 통해 PIR 센서의 Dout 핀에 연결됩니다. 이 핀이 높아지면 Arduino 프로그램을 통한 침입을 알리는 이메일이 트리거됩니다.
출력 핀 (Dout, GPIO_2 및 GPIO2)의 소스 전류는 훨씬 적기 때문에 트랜지스터를 사용하여 구동했습니다. 또한 ESP8266의 GPIO 핀은 모듈의 전원이 켜져있을 때로드되어서는 안됩니다. 그렇지 않으면 모듈이 무한 리셋 루프에 들어갑니다. 이를 방지하기 위해 두 개의 스위치를 배치하여 전원을 켤 때 일시적으로 분리했습니다.
위의 회로를 Perf 보드에 납땜하거나 단순히 브레드 보드를 사용할 수 있습니다. 모듈에 납땜을 피할 수 있도록 암 / 수 베르그 스틱을 사용했습니다. 완료되면 보드가 아래와 같이 보일 것입니다.
IFTTT를 사용하여 이메일을 보내는 API 만들기:
하드웨어가 준비되면 특정 이메일 ID로 이메일을 보낼 수있는 API (Application Program Interface)를 만들 수 있습니다. 이것은 IFTTT.com이라는 웹 사이트의 도움으로 쉽게 할 수 있습니다. 또한 동일한 IFTTT 서비스를 사용하는 PIC 마이크로 컨트롤러를 사용하여 ESP8266 및 이메일을 사용하여 SMS를 보낼 수있는 프로젝트를 다루었습니다.
아직 IFTTT를 사용하지 않았다면이 튜토리얼의 끝에있는 비디오를 방문하십시오. 익숙한 경우 아래 단계를 따르십시오.
1. IFTTT 계정에 로그인하십시오.
2. "Maker Web hooks"를 검색하고 연결을 클릭합니다.
3. 이제 "Gmail"을 검색하고 연결을 클릭하고 단계에 따라 액세스 권한을 부여하십시오.
4. 그런 다음 내 애플릿-> 새 애플릿을 클릭하여 애플릿을 만듭니다.
5. 여기서“This”기능은 웹 메이커 후크 서비스 용이고“that”기능은 Gmail 서비스입니다.
6. "This"를 클릭하고 Web maker hooks를 검색하여 선택하십시오. 이벤트 이름을 묻는 메시지가 표시됩니다. 이벤트 이름을“123”으로 지정했습니다. 원하는 이름을 지정할 수 있습니다.
7. 그런 다음 "That"을 클릭하고 Gmail을 검색하여 선택하고 메일 제목과 본문을 입력합니다.
8. 필요한 모든 세부 정보를 입력하면 Apple이 준비되고 다음과 같이 보일 것입니다.
9. 이제 Web Maker Hooks를 검색하고 다시 들어가서“Documentation”을 클릭합니다. 그런 다음 이벤트 이름 아래에 애플릿에서 사용한 이벤트 이름을 입력합니다. 제 경우에는 "123"이고 Arduino 프로그램에서 필요하므로 URL을 복사합니다. URL은 아래와 같은 형식이어야합니다.
10. "Test it"버튼을 클릭하여 링크가 제대로 작동하는지 확인하고 그렇게하여 테스트 메일을 받았어야합니다.
Arduino 프로그램
이 프로젝트의 Arduino 프로그램은 간단하고 쉽습니다. ESP가 AP와 STA 역할을하도록하기 만하면됩니다. 그런 다음 HTML 코드를 사용하여 알람 시스템을 ARM / DISARM 할 수있는 웹 페이지를 만듭니다. 전체 코드는이 튜토리얼의 끝에 제공되며 코드는 주석 줄을 사용하여 설명됩니다. 또한 중요한 라인은 아래에 설명되어 있습니다.
const char * ssid = "BPAS 홈"; // 여기에 Wifi SSID를 입력하세요 const char * password = "cracksen"; // 여기에 비밀번호 입력
위의 코드 줄에서 SSID 이름과 암호를 라우터 SSID 이름과 해당 암호로 변경합니다.
ESP8266이 연결된 IP를 찾으려면 직렬 모니터를 열어 확인할 수 있습니다. 다음 코드 줄은 Arduino IDE 직렬 모니터에 IP를 인쇄합니다.
Serial.println (""); Serial.print ("연결됨"); Serial.println (ssid); Serial.print ("IP 주소:"); Serial.println (WiFi.localIP ()); // 직렬 모니터는 ESP 모듈의 IP 주소를 제공합니다.
웹 페이지 생성을 담당하는 HTML 코드는 다음과 같습니다. 자신의 코드로 웹 페이지를 사용자 정의 할 수 있습니다. 페이지가 성공적으로로드 된 경우 사용자를 확인하도록 피드백 부분을 수정했습니다.
// 웹 페이지 용 HTML 코드 // mainPage + = "
IOT 기반 보안 시스템
-CircuitDigest
경보 상태:
"; 피드백 ="ARM을 클릭하여 보안 시스템을 활성화하십시오.
"; // HTML 코드 끝 //아래 코드 줄은 경보가 활성화 또는 해제되었을 때 수행해야 할 작업을 결정합니다. 내 프로그램에서 HTML 코드의 피드백 부분을 변경하고 아래와 같이 버튼을 기반으로 GPIO 2 핀을 HIGH / LOW로 만들었습니다.
server.on ("/ switch2On", () {피드백 = "
알람이 작동 중입니다.
"; // HTML 코드 수정 currentPage = mainPage + feedback; server.send (200,"text / html ", currentPage); currentPage =" "; digitalWrite (GPIO_2, HIGH); // PIR 및 음성 모듈 켜기 power_module = true; delay (1000);}); server.on ("/ switch2Off", () {feedback = "알람 다운
"; // HTML 코드 수정 currentPage = mainPage + feedback; server.send (200,"text / html ", currentPage); currentPage =" "; digitalWrite (GPIO_2, LOW); // PIT 및 음성 모듈 끄기 power_module = 거짓; 지연 (1000);});시스템이 제대로 작동하기 위해 변경해야하는 또 다른 중요한 줄은 URL 문자열 줄입니다. IFTTT 웹 사이트에서 복사 한 줄 (뒤에 "/ 트리거")을 여기에 붙여 넣습니다. 나는 아래에 내 것을 보여 주었지만 내 API 키를 사용하지 마십시오.
String url = "/ trigger / 123 / with / key / mDsoOV_EERS3xRfrh3_UQBhbcx0qlRHns-z2qXXXXX"; // API URL로 변경해야합니다.
나머지 코드는 자명합니다. 의심스러운 부분이 있으면 주석 섹션을 사용하면 도움이 될 것입니다.
일
하드웨어와 코드가 준비되면 FTDI 보드를 사용하여 ESP8266 모듈에 프로그램을 업로드 할 수 있습니다. Arduino IDE를 사용하여 ESP8266에 프로그램을 업로드하는 방법을 모르는 경우이 튜토리얼을 참조하십시오.
프로그램을 업로드 한 후 시리얼 모니터를 클릭하면 아래와 같은 화면이 나타납니다. ESP8266 모듈을 재설정하지 않은 경우 다시 시도하십시오.
여기에서 ESP8266 모듈에 할당 된 IP 주소를 기록 할 수도 있습니다. 그런 다음 아래 그림과 같이 IP를 사용하여 브라우저에 웹 페이지를로드하고 거기에서 IoT 보안 시스템 을 활성화 / 해제 할 수 있습니다.
이 모든 것을 확인했으면 이제 ESP8266을 Perf 보드로 전송하고 전원을 켠 다음 비디오에 표시된대로 스위치를 단락시킬 수 있습니다.
전원을 켠 후 IP를 사용하여 위에 표시된 웹 페이지로 이동하고 보안 시스템을 활성화 할 수 있습니다. 활성화 한 후 PIR 센서가 보정 될 때까지 50-60 초 동안 기다립니다.
이제 프로젝트를 실행할 준비가되었습니다. 원하는 장소에 남겨 둘 수 있으며, 누군가 해당 장소를 가로 지르고 PIR 센서 범위 내에 있으면 음성 메시지가 트리거되고 이메일이 이메일로 전송됩니다. 그 / 그녀가 교차 한 날짜와 시간이있는 ID. 이메일은 아래와 같습니다.
그게 다야..이 프로젝트가 마음에 들었 으면 좋겠고 직접 만드는 것도 즐거웠 으면한다. 프로젝트의 전체 작업은 아래 비디오에 나와 있습니다. 의문이나 제안이 있으시면 아래 댓글란에 적어 주시면 최대한 답변 드리겠습니다.