이번 포스트에서는 라즈베리파이를 이용하여 간단한 CCTV를 만드는 법을 알아보자. 인터넷에 이와 관련해서 여러 블로그 자료가 있는데 그대로 따라했음에도 불구하고 제대로 작동하지 않아 답답한 사람들이라면 이번 포스트를 통해를 해결 할 수 있길 바란다.

 

  우선 CCTV를 만들기 위해서는 카메라가 필요하다. 카메라는 아래 왼쪽과 같은 라즈베리파이용 카메라 모듈을 사용할 수 있지만 일반 웹캠을 사용해도 무방하다. 사용할 수 있는 웹캠의 종류는 여기서 확인 할 수 있다. 이 포스트는 아래 오른쪽 사진에서 보이는 마이크로소프트사의 HD-3000을 기준으로 설명한다. 

라즈베리파이 CCTV라즈베리파이 CCTV

 

  일반 usb웹캠을 사용하게 되면 전력이 부족해서 라즈베리파이가 작동되지 않는다. 따라서 웹캠에 전원을 공급할 수 있도록 usb 허브를 사용해야한다. 필자는 지난 포스트에서 소개했던 MBF-H04 USB 허브를 이용하였다. 

USB 허브

 

  카메라를 usb 허브를 통해 라즈베리파이에 연결한 후, 제대로 연결되었는지 lsusb 명령어로 확인해본다. 아래 그림에서 웹캠이 Device 006으로 인식된 것을 확인 할 수 있다. 

라즈베리파이 CCTV

 

  라즈베리파이를 CCTV로 만들기 위해 사용되는 프로그램은 몇가지 있지만 그 중에 가장 많이 사용되는 것으로 보이는 motion 프로그램을 설치해보자. motion은 리눅스용으로 개발된 mjpeg 스트리밍 프로그램으로 카메라에 움직임이 포착될 때 사진을 저장하는 기능이 있어 CCTV 프로그램으로 쓰기에 좋다. 아래와 같이 'sudo apt-get install motion'을 입력하면 설치가 완료되는데 설치 전에 'sudo apt-get update' 명령으로 업데이트를 먼저 할 것을 추천한다.

라즈베리파이 CCTV

 

  프로그램 설치가 끝났으면 프로그램을 실행하기 전에 'nmap localhost' 명령으로 지금 사용되고 있는 네트워크 포트를 확인해 보자. nmap이 설치되어 있지 않다면 apt-get으로 쉽게 설치가 가능하다. 아래 그림에서 22, 80, 3389, 8080, 9090번 포트가 열려있는 것을 알 수 있다. 

라즈베리파이 CCTV

 

  이제 'sudo service motion start' 라고 입력하여 프로그램을 실행시켜보자. 원래 프로그램이 daemon 으로 실행, 즉, 백그라운드에서 실행되야 하지만 아래에서 보듯 실행되지 않는다. daemon 실행이 되지 않도록 기본값이 설정되어 있기 때문이라 설정을 바꿔줘야 한다.

라즈베리파이 CCTV

 

  우선 '/etc/default/motion' 파일을 열어서 'start_motion_daemon' 값을 yes로 바꾼다.

라즈베리파이 CCTV


  둘째로 '/etc/motion/motion.conf' 파일을 변경해야 하는데 이 파일에는 프로그램의 모든 설정사항들이 포함되어 있으므로 하나씩 읽어보길 권장한다. 우선 daemon으로 실행하기 위해 'daemon' 값을 on으로 바꾼다. 또한 포트 8080번은 xbmc에서 사용하고 있으므로 다른 포트로 사용해야 두 프로그램을 모두 원활하게 사용할 수 있다. 필자는 webcam_port 8082, control_port 8081으로 설정했다.

라즈베리파이 CCTV


  이제 다시 프로그램을 실행시켜보면 실행이 된다. 'nmap localhost' 명령으로 확인해보면 8081, 8082포트가 새로 열린 것을 알 수 있다. 8082 포트는 라이브 웹캠 화면을 볼 때 사용하는 포트이고 8081 포트는 http를 통해 컨트롤하는데 사용된다.

라즈베리파이 CCTV

 

  우선 192.168.1.9:8081에 접속하면 아래와 같은 화면을 볼 수 있다. 이 간단한 페이지를 통해 motion 프로그램의 설정 값을 가져오고 설정할 수 있다.

  이번 포스트에서는 motion 프로그램을 실행시키는 것 까지 알아보았다. 다음 포스트에서는 실제로 CCTV화면을 확인하고, motion 프로그램을 설정하는 법을 알아보자.

블로그 이미지

작은 조약돌

공돌이 형과 글쟁이 동생 쌍둥이 형제의 낙서장

,