自走ロボット用のコントローラ基板を開発しました。
特徴
以下の機能を搭載しています。
- CAT6 LANケーブルを使用して、20mの距離でUSB2.0x2系統,DC電源を伝送
- USB2.0 ポートx2で合計4台のUSBカメラを接続
- LEDドライバx4ch
- モータドライバx4ch
- ロータリエンコーダx1
このコントローラ基板は、複合USBデバイスです。コンソール装置からはUSBデバイスとして制御することができますので、一般的なパソコンで制御が可能です。
モータ、LEDはUSBシリアルポート経由でコマンドでの制御になります。
接続図
機能説明
コントローラ基板上には2系統のUSB2.0 HUBが搭載され、それぞれに2台の小型オートフォーカスUSB2.0カメラモジュールが接続されています。
それぞれのカメラモジュール用にLED照明が付けられます。LEDは調光機能付きのLEDドライバで駆動します。
モータドライバは4チャンネルで、それぞれ12V/1AまでのDCモータを駆動できます。PWM制御でスピード調整が可能です。
走行距離計測のためにロータリエンコーダを使用します。
USB2.0の長距離伝送について
本コントローラ基板を搭載したロボットは、20mのCAT6 ケーブルで接続されます。カメラ4台分の帯域を確保するために2系統のUSB2.0を使用します。USB2.0エクステンダーチップを使用しました。このチップは最大50m まで480Mbps USB2.0の延長ができます。
こちらは事前に実験した際の写真です。
※USB3.0ではなく、USB2.0を選択した理由は、USB2.0のほうが小型のカメラモジュールが使えるためです。
システム
コンソールボックスは、ロボットへの給電とUSB信号の分離を行います。
コントローラPCはUbuntu20を採用しています。ロボット制御用アプリは独自に開発しました。このアプリでは、カメラ4台の制御(露光、フォーカス、静止画キャプチャ、動画記録)、ロボット駆動制御を行います。