IR-Lockの設定方法まとめ
はじめに
マルチコプターを運用する中で、精密着陸が必要なケースがあります
代表的な手法として
- カメラ+赤外線ビーコン
- RTKやCLAS
- カメラ+マーカー
などがありますが、それぞれメリットデメリットがあります
今回は、Ardupilotに実装されていて、比較的扱いやすいIR-Lockの設定を行います
参考
使用したもの
- Tarot650
- Cube Orange
- ArduCopter V4.0.7
- IR-Lock Sensor
- IR-Lock Beacon
- LW20
設定
各種ダウンロード
pixymonのダウンロードページよりpixymon softwareとIR-Lock Sensor Firmwareをダウンロードします
pixycamの設定
ダウンロードしたpixymonを起動します
このとき、まだpixycam(IR-Lock Sensor)は接続しないでください
pixycamの白いボタンを押しながらPCとpixycamを接続します
さっきダウンロードしたファームの場所を選択して開きます
アップロード後、Cooked videoを選択します
Actionタブの中のRestore default parameter valuesをクリック
設定画面を開きます
露光を調整します
露光が多いと太陽の反射とかも拾ってしまいます
まずは設定のExposureを6くらいに設定してみます
Data out portを設定します
デフォルトは0なので、これを1に変更します
焦点距離の設定
焦点距離の調整はとても重要です
ビーコンをセンサーから10~15m離れた場所に設置します
環境としては、できるだけ実際に使うであろう環境と同じ環境でやったほうが良いと思います
屋外で使うのであれば、屋外で設定した方が良いかもしれません
pixymonを起動し、「Display raw video」ボタンをクリックして、表示します
画像が鮮明に見えるまでレンズを回転させ、焦点を合わせます
焦点を合わせた後、レンズを約1/4から1/2回転させて、焦点を少しずらすことにより、ビーコンが少し大きく認識できます
アクションタブの「デフォルトプログラム」ボタンをクリックして、検出範囲を確認することができます
Exposureの違い
exposure=10
exposure=6
最適なexposureの値と焦点距離を探してください
フラコンの設定
基本的には最新のドキュメントを参考にしてください
バージョンが上がって少し変わったりしているみたいです
フラコンのI2Cとpixycamを接続
PLND_ENABLED : 1
PLND_TYPE : 2(IR-Lock)
これで認識できるはずです
チャンネルオプションでPrecision Loiterを割り当ててもいいですし、普通にLandコマンドやモードでビーコンを認識すると制御が入ります
ログをダウンロードして、PLのHealが1になっていれば、正常にコミュニケーションできています
PL.TAcqが1のとき、ターゲットを補足しています
ちゃんと認識しない場合
- pixymonの設定で、Data out portが1になっているか確認
- PLND_BUSが0になっているか確認(これを3にするとできた人もネット上にはいるみたいですが、謎です)
- リセットボタンがおされていないか?
- 突然Vision Badが現れたのであれば、押された可能性が高いです
- 白いボタンに今後一切触れられないように、カバーで覆ってください
<参考>レンジファインダーのステータスについて
0 : NotConnected
1 : NoData
2 : OutOfRangeLow
3 : OutOfRangeHigh
4 : Good
Discussion