구글의 Project Soli 가 발표되었던걸 기억 하실런지 모르겠네요. 요란하게 등장한 기술은 아니지만 구글의 인상깊은 프로젝트 중 하나였습니다.

쉽게 얘기해서 초소형 레이더 모듈을 이용해 비접촉식 제스처 인식이 가능하도록 만든겁니다. 그리고 레이더 모듈의 특성상 장애물(옷이나 기타 등등)이 있더라도 인식이 가능하기 때문에 휴대폰을 굳이 보고 있지 않더라도 제스처를 통해 조작이 가능한 기술입니다.

워낙에 인상 깊었던 모듈이라 개인적으로 한번 테스트 해보고 싶었는데, 기존에 판매되는 관련 모듈은 가격도 비싸고 복잡한 회로를 구성해야 사용이 가능했습니다. 하지만 드디어 아두이노를 이용해 연동 할 수 있는 쉽고 값싼 모듈이 등장했네요.

비록 구글의 프로젝트처럼 세밀한 측정값을 얻을 순 없지만 간단하게 사용할 수 있는 1.2 GHz Microwave Radar Sensor 모듈입니다. 해외에서 저렴한 가격에 풀기 시작했네요!

1.2 GHz Microwave Radar Sensor

이 모듈은 도플러 레이더와 도플러 효과를 이용해서 사용해서 움직임을 감지하는 센서입니다.

모듈에서 microwave 전자기파를 송출하면 주변으로 확산되다 물체에 부딪히면 다시 되돌아오게 됩니다. 이때 물체가 아무런 움직임이 없다면 되돌아온 전자기파의 파장은 송출할 때의 파장과 별 차이가 없습니다. 하지만 물체가 레이더 방향으로 움직이면 회송된 전자기파의 파장이 짧아지거나 길어지게 됩니다. 이게 도플러 효과입니다.

즉, 되돌아 온 파장이 짧아지면 레이더 모듈쪽으로 물체가 움직인 것이고 파장이 길어지면 레이더 모듈에서 멀어지는 쪽으로 물체가 움직인 것을 감지할 수 있습니다.

doppler-effect-image

그림: 나무위키 – 도플러 효과

레이더 모듈은 되돌아온 파장의 변화를 알려줌으로써 사용자가 현재 상태를 인식할 수 있도록 해줍니다.

레이더 모듈은 비접촉식이며 온도, 습도, 소음, 먼지, 빛 등에 영향을 받지 않습니다. 그리고 벽 넘어의 움직임도 감지할 수 있습니다. 일반적인 저주파에 의한 영향이 적고 송출 파워가 약하기 때문에 인체에 해가 없습니다. 탐지 거리는 이론상 약 20m 이상인데 실 사용은 0~3m 정도라고 합니다. 5~24V에서 동작하지만 전류 소모량은 작은걸로 나와 있습니다.

시중에서 구할 수 있는 두 종류의 레이더 모듈이 있는데 HB100 breakout 모듈과 1.2GHz Microwave 모듈입니다.

HB100-miniature-microwave-motion-sensor-breakout-board HB100 breakout

1-2-GHz-microwave-sensor-module-car 1.2GHz Microwave Radar module

사용 방법

먼저 1.2GHz Microwave Radar 모듈을 보면…

Free-shipping-1-2-GHz-microwave-sensor-module-car-radar-detection-sensor

오른쪽 아래에 전원과 신호선을 연결하는 소켓이 있습니다. 이미지에 안내되어 있는 것 처럼 VCC/GND/OUT 핀이 있어서 아두이노와 연결하면 모듈이 인식한 결과를 받을 수 있습니다. 감도를 조절하는 다이얼이 LED 밑에 있습니다. 아마도 특정 수준 이상의 변화가 감지될 때 OUT 핀으로 신호를 보내주는듯 합니다. (on/off 신호인지 0~5V 전압 변화로 주는지는 미확인, 전자로 추정)

(모듈 입수되면 테스트 후 자세한 내용을 업데이트 하겠습니다.)

보다 세밀한 측정값을 받아보고 싶은 경우는 HB100 breakout 보드를 사용하는 것이 좋습니다. 가격이 상대적으로 비싼만큼 더 좋은 성능을 내줄 것으로 기대됩니다….

HB100-miniature-microwave-motion-sensor-breakout-board

  • 5V / 50mA input
  • Frequency output, proportional to the object’s speed
  • Voltage output, proportional to the amount of reflected RF signal

위 설명처럼 5V 입력을 주면 감지된 물체의 속도에 따라 frequency output을 주기도 하고(도플러 효과로 변형된 주파수 차이), 되돌아온 RF 신호의 변화에 따라 voltage output을 주기도 합니다. 그래서 2개의 신호 출력 핀이 있습니다. (Frequency Out, Voltage Out) 아두이노의 아날로그 핀으로 값을 읽으면 되겠습니다. (모듈 입수 후 확인 필요)

HB100 모듈은 아두이노에서 작업한 사람이 있네요. 해당 소스코드를 보고 따라해 보시는게 도움이 많이 될 것입니다.