DSC02440.JPG

簡易的なマスタスレーブを作ってみました.

DSC02430.JPG

材料はこれ.
ロボゼロ70号×10.

DSC02441.JPG

ブラケットは適当に自作.
とりあえず5軸で構成しましたが,エンドの1軸は今回使用していません.
諸事情でマスタとスレーブは対照の形になっています.
全てのサーボの情報を取得し,
対応する関節同士の現在角度を足して2で割り,指令角度とする.
上手くいけば鏡に映るような動きをしてくれるはず.
テスト①

まずはマスタ側をエンコーダの用途のみでテスト.
マスタ側のサーボトルクをオフにしました.
左がマスタ,右がスレーブ.
あまり力を入れずに軽く操作できるぶん,マスタから手を離すと姿勢が崩れる.
スレーブからの入力は受け付けない.
テスト②

次はマスタ側のトルクはオン.
マスタ側のサーボ最大トルクが,スレーブ側に対して20分の1に設定されている.
トルクオフよりは扱いやすい感じ.
こちらも同じくスレーブからの入力は受け付けない.
どれも追従が悪いのは通信速度が原因なのかな.
SoftwareSerialライブラリを使用してArduinoとシリアル通信しているのだけれども,
この通信は9600bpsまでと限定されている.
すぐにできる対策は複数のシリアルポートが用意されているArduinoMegaに乗り換えること.
今回製作したマスタスレーブは設計中のエグゾネクスの上半身と同じ自由度構成になっている.
今後いろいろ試す.
※2013/2/20追記
一般に,マスタースレーブシステムの制御は,
1)ユニラテラル,2)対称型バイラテラル,3)力逆送型バイラテラル,4)力帰還型バイラテラル
に分けられる.
今回は,
テスト①が 1)ユニラテラル,
テスト②が 2)対称型バイラテラル
に該当する.