2019년 10월 14일 월요일

가장 싸게 CCTV를 구현해 보자 (ESP32-CAM)

1. 카메라 모듈의 연구

여러 종류의 카메라 모듈을 연구했다. MCU와 결합해서 사진을 서버로 전송하는 기능을 만들기도하고, 원격 조정이 가능한 탱크(물론 이것 역시 제작한 것)에 올려서 스트리밍을 기능을 하는 것도 만들기도 했다. 하지만 카메라 모듈의 크기나 가격, 연구 난이도 등등 여러 이유때문에 많이 만들지는 않았다. (모듈별로 한두개 정도)

 
[ 처음 연구한 카메라 모듈 ]

[ 네번째 연구한 모듈 ]

[ 연구후에 기판에 납땜한 모습 ]


[ 배선이 복잡해서 양면으로 배선햇다. ㅠㅠ ]

이정도 까지 연구하고  나니, PCB를 떠서 다량으로 만들까 생각도 했지만, 카메라 모듈의 화질이 별로 여서 저정도까지 만들고 멈추었다. 

2. ESP-EYE, ESP32-CAM

 마지막에 연구한 것이 바로 ESP32와 카메라 모듈을 결합하는 형태인데, 이젠 아예 쉽게 결합이 가능한 형태로 만들어진 제품이 나오고 있었다. 즉 납땜할 필요가 없는 정도의 레벨로 제품이 나오고 있으며, 가격또한 저렴했다.

알리 기준으로 ESP32-CAM은 5$ 이하에 구입이 가능하다.

[ 외부에 나와 있는 핀들의 배열 ]

[ 내부 핀 정보 ]


3. 동작을 시키는 방법

 정말 손쉽다. 뭐 별거 할것이 없는 정도로 쉬웠다. 먼저 Arduino IDE에서 보드매니저를 열고 ESP32 보드를 추가하자.

먼저 IDE의 파일 > 환경설정창에 추가적인 보드매니저를 추가하자. 아래 그림의 표시한 부분 버튼을 누르고 https://dl.espressif.com/dl/package_esp32_index.json 를 추가 한다.

그리고 IDE의 툴 > 보드 > 보드 매니저 에서 esp32를 검색하여 설치
[ 보드 매니저에서 esp32를 검색하고 설치 ]


거의 다 되었다.  그다음 IDE의 파일 > 예제 > ESP32 > Camera > CameraWebServer를 열면된다.  소스코드에서 구매한 모듈과 맞는 핀번호를 설정해야 하는데, 핀별로 설정하는 것이 아니라 이미 define 된 것중에서 선택하면 손쉽다. 아래의 그림과 같이 다른 제품들의 define 내용은 코멘트 처리하고 AI-THINKER 쪽을 활성화 하자.

[ 소스코드에서 수정할 부분은 위에 표시한 곳 및 WiFi 관련 비번 정도 ]

그 다음은 IDE에서  툴 메뉴에서 보드 및 파티션 정보를 올바르게 넣으면 된다.
보드는 "ESP32 Wrover Modue" 이며,  파티션 스키마는 "Huge APP (3MB No OTA)"로 설정하면 된다. 

[ 보드및 파티션 스키마 !! ]

이제 컴파일 하고 스케치만 업로드 하면 된다. 

[ 이렇게 연결하면 업로드 가능 ]

위와 같이 연결하고 스케치 업로드한 후에 GND + IO 0 핀에 연결된 부분을 해제 하고 리셋버튼을 누르면 동작한다. 리셋하기 전에 Serial Monitor를 켜고 리셋하자. 리셋된 후에 Serial Monitor에 아이피가 표시될 것이다.

4. 결과는?

 웹브라우져에서 표시된 아이피를 입력하고 연결하면 아래와 같이 설정가능한 화면과 현재 모습이 라이브로 방송되고 있을 것이다.  

[ 고해상도도 가능하다 ]

5. 향후 작업 예정

 다중 접속 활성화, 웹페이지 개선, 리셋 되더라도 환경변수 기억 등등..



댓글 없음:

댓글 쓰기

3단 6핀 스위치로 DC 모터의 회전 방향을 바꾸어 보자

1. 필요는 연구의 어머니 항상 느끼는 부분이다. 필요하지 않으면 연구하지 않으며, 필요하면 연구한다. DC 모터를 조건에 따라서 정방향 또는 역방향으로 회전시켜야 하는 필요가 생겼다. 처음에는 MCU 및 Relay Switch를 이용하는 방법을 생각...