海洋ロボットコンペティションin沖縄に参加するために製作したロボットです.海洋で使うために必要な防水性,駆動性,カメラ性能の確保を目的として製作したロボットです.
概要
360度カメラ Insta 360 Air搭載により360度の視野を確保
全面,下面に専用カメラを配置
全方位に移動可能な左右方向のスラスタ,上下方向の推進機構
スラスタの配置
スラスタの方向はそれぞれ90度づつの配置になっています.スラスタの向きをすべて直交させることで,全方位に移動することを可能にしています.海流があったとしても流されないようにフィードバック制御をするときに備えています.大会までに実装よていでしたが間に合わず.
スラスタの防水
モータはブラシレスモータ(1000kV)を使用しています.モータはむき出しで使用しています.ブラシレスモータはポリウレタン導線を使用しているため,海水によるショートなく使用することが可能です.
スラスタの防水はOpenROVの組み立てマニュアルを参考にしました.(P.105から)https://www.sekidorc.com/pdf/OpenROV_AssemblyGuide_jp_v1.0_151203.pdf
欠点としては,使用後のメンテナンスが大変,(連続使用による)腐食が発生する点です.ブラシレスモータの巻線部は保護されていますが,モータの鉄心,ベアリング等は保護されていません.そのため,使用後に水を拭き取り,注油する必要があります.金属むき出しのための腐食は発生してしまいます.
カメラ
カメラはSony PlayStation Eye,Raspberry Pi camera,Insta 360 airを使用しています.
Sony PlayStation 3 Eye (以下,Eye カメラ)はPlay station 3用のカメラですが,webカメラのように利用できます.今回のROVでは底面の撮影用に使用しています.こちらはMJPG streamerで配信しています.
Raspberry Pi cameraはRaspberryの純正カメラで,ラズパイの専用ポートに接続するためUSBポートを利用しなくてよく,小型であるため耐圧容器内に設置しやすいため採用しています.正面の撮影用に使用しています.こちらもMJPG streamerです.
Insta 360 Airは360度の全方位を撮影できる全天球カメラです.ROVの固定カメラでは視点を変えるためには機体を動かす必要があります.全天球カメラの場合は機体を動かさなくても見ることができます.QRコードの探索用に全天球カメラを搭載.
Insta 360 airは魚眼カメラを裏表に2台搭載している.ラズパイとUSBで接続して,ラズパイからGstremerで配信を行う.PC側で魚眼画像を平面に展開し,2台のカメラ画像を1個につなげる処理をしている.
プログラムを書いてくれた とりてん氏に感謝
http://toriten1024.hatenablog.com/entry/2018/09/29/012205
https://github.com/toriten1034/UnderWaterRobotStreaming
耐圧容器
耐圧容器は100円ショップのアクリルケースとアクリル板,ゴム板を利用して自作している.
制御系
回路構成
- カメラの処理分散のため,ラズパイを2台使用
- Raspberry PiはNode-redを利用して制御プログラムを動作
- 画像を遅延なく送るために1GbpsのLANケーブル,HUBを使用
- PCは画像ストリーム専用
- コントローラはラズパイにキーボードを接続しただけで構成
コントローラ
コントローラはパソコン用のキーボードを使用しています.コントローラはゲームコントローラを使う方法がよく使われます.パソコンのコントローラを使うメリットが3つありましたので使いました.
- パソコンのキーボードのほうが操作になれている
- キーボードを机におけば,片手でロボットを操作できる
- ラズパイに使っているnode-redはキーボードからの入力が容易にできる