こんにちは、むらさんです。
今回は過去にラズパイで作ったシリーズ2回目で、可動式のカメラマウントを紹介したいと思います。
購入したキット
購入したキットは Physical Computing Labというサイトで販売されている、ラズパイ用のカメラマウントキットです。

カメラのマウンターにサーボモーターが二個組付けられており、パン(横振り)、チルト(縦振り)機能を実装することができます。私の購入したキットは5年以上前のものなので、カメラの種類は変わっているようですが、同様のキットが今でも以下のサイトで購入できるようです。
また、カメラなしのものであればスイッチサイエンスでも販売されていました。

サーボモーター
サーボモーターはSG-90というホビー用途でよく使われるものが同梱されていました。

このサーボはアマゾンなどでも単体で購入できると思います。
モーターコントローラー
サーボモーターの制御は既製品のラズパイの拡張ボードを買っても良かったのですが、この時は勉強も兼ねてFPGAで自作することにしました。Terasic社のCycloneIVを搭載したボードです。

Terasic社のボードは非常に安く、GPIOも搭載されているためアクセスがし易く重宝しています。最近はCyconeV SoCを搭載したDE10-Nanoをよく使います。
このDE0-Nanoに搭載されているFPGAでサーボモーターを制御するPWM信号を生成しています。
ラズパイとの接続
上位コントローラのラズパイとFPGAボード間の接続はジャンパーケーブルです。

通信にはSPIを使っており、SS、SIN、SOUT、CLKの4本の信号線を接続してデータをやりとりします。組み込みではSPIやI2Cなどの方式が良く使われるかと思いますが、どちらもラズパイにはペリフェラルが搭載されていますので、アプリからライブラリを叩けば外部の機器と通信することができます。
実機の動作
実際にラズパイから指令を送って、カメラマウントのサーボモーターを駆動している動画です。このようにPWMのデューティーを変えることによって、サーボを狙った位置まで駆動することができます。
まとめ
いかがだったでしょうか?
このようにカメラに駆動式のマウントを付けることによって、映したい目標をカメラで追跡するようなアプリケーションを構築することができます。
最近ラズパイにはHATという規格の拡張ボードがたくさん出ていますので、サーボをやってみたい方はHATのドライバ基板を使えば比較的簡単に実装できるのではないかと思います。
それでは、また次の記事でお会いしましょう。
コメント