Raspberry Piで超音波距離センサー(HC-SR04)を試してみる。
おはようございます。(13:40 JST)
昨日秋葉原で買ってきたセンサーを開封して遊んでみました。
買ってきたセンサーは『超音波距離センサー(HC-SR04)』。秋月で400JPY。
名前の通り、この基板に埋め込まれた2つの大砲から超音波を放って距離を測定するモジュール。コウモリのエコロケーションと同じ仕組みかな?
一応Arduino用だけどRPiで使っても何の問題もない。
測距範囲は2cm~180cmなので室内で使うにはちょうどいい。パララックス社が出してる3mまで測距できるセンサーがあるけど、10倍近く値段が違うのでおそらく学生のうちに買うことはないだろう。
HC-SR04のメーカーはSain Smart。なんか見覚えある名前だな〜と思ったらこの会社、ArduinoMEGAの互換ボードを3000円弱で売ってるとこだった。流石にATmega1280のハンダ付けをできる自信はないので自作せず素直にMEGAは買おうかな。
さっそくやってみよう
こちらのサイトを参考に
Using an Ultrasonic Sensor (HC-SR04) on a Raspberry Pi with Python — Byte Creation
サイトの親切すぎるpythonスクリプトをもとに配線を組む。
HC-SR04が表(大砲のある面)の状態で、ピンを左から順に
VCC: 5V
Trig:1kΩ抵抗 - GPIO(17)
Echo:GPIO(27)
と、ラズパイのピンに対応させる。
見難いけどこんな感じのシンプルな配線になる。
編集したusonic.pyをラズパイの適当なディレクトリに置き実行する。センサーとマグカップの距離を測ってみる。
出力結果はcm。「400円ぽっちのオモチャが〜」ってナメてるとかなり精度が高くてびっくりする。
まとめ
主にロボットなどに使われるこのセンサーモジュール。まだモーターの勉強をしてないからラジコンやロボットに実装するのはまだまだ先の話になりそう。
今のところは睡眠時間ロガーとして使ってみようと思う。寝てる時以外は基本的に自室の扉(ふすま)は開けっ放しだから、その癖を利用して扉のそばにこのセンサーを仕掛けておけば自分の毎日の睡眠時間が計測できる。
また原理を理解しないまま工作だけして満足してしまった。
一応理系だし真面目に電気の勉強もしなきゃなぁ。
どうでもいい話
秋葉原から神保町→九段下経由で市ヶ谷へ向かう途中にスタバが7店舗以上ある。Wifiに困らないね。
神保町にあるWARHAMMER屋の前でカップルがいちゃついてて少し悔しかった。てか、Warhammer知ってる日本人ってどれくらいいるんだろう。D&D以上にマイナーなボードゲームだからコアなファンは絶滅危惧種指定されてもおかしくない気がする。