DK1 Pathに戻る

リーダー/フォロワー制御を設定する

DK1 の双手学習経路のユニット 2 DK1 SDK をインストールし,リーダー/フォロワー ペアリングを設定し,両腕の Python 接続テストを実行し,シグネーションを確認する ~2時間.

6つ目の2つ目 ·リーダー/フォロワー設定 · ~2時間

DK1 SDKをインストールし,リーダー/フォロワーペアリングを設定し,両腕の Python 接続テストを実行します.このユニットの終わりまでに,リーダー腕を移動すると,フォロワー腕の両方で即座に同期応答が生成されます.

SDKのインストール参照は hardware/dk1/software であります.このユニットは,OpenArmで実行した単腕 SDKのインストールを超えた双手作業の特定設定手順をカバーします.

DK1 SDKをインストールする

DK1 SDKは OpenArm SDKから分離している. OpenArm パッケージで DK1 腕を実行する試みをするな.

# DK1 の作業 python3 -m venv ~/dk1-env ソース ~/dk1-env/bin/activate # DK1 SDK と双手拡張子をインストールします.

リーダー/フォロワーペアリングを設定する

SDKは,どのシリアルデバイスがリーダーであり,どのデバイスがフォロワーアームであるかを示すYAML構成ファイルを読みます.正しい順にデバイス経路を指定する必要があります.

# デフォルト式二手動設定ファイル dk1-configを生成します --mode二手動 --output ~/dk1-config.yaml # 設定を開いて編集します 設定する実際のデバイスのパスナノ ~/dk1-config.yaml

T0のキーフィールド:

リーダー:デバイス: /dev/ttyUSB2 #リーダーコントローラ腕のボードレート: 1000000フォロワー_左:デバイス: /dev/ttyUSB0 #左フォロワー腕のボードレート: 1000000フォロワー_右:デバイス: /dev/ttyUSB1 #右フォロワー腕のボードレート: 1000000シンクロン:周波数_hz: 50 #コモンステートシンクロン速度の遅延性_トレランス_ms: 5 #最大許容シンクロン遅延

デバイスパス割り当て: 物理腕から T1までのマッピングは,リブートの間間で変更されるUSBポート順に依存します.安定したニックネームを作成するには,デバイスシリアル番号に鍵付けられた T2ルールを使用します. 各腕のシリアルを見つけるために T3を実行し, T4でルールを作成します.これは [ハードウェア/dk1/ソフトウェア](T15で詳細に説明されています.

パイソン接続テスト 両腕

設定を編集した後,すべての3つのデバイスを同時に実行する接続テストを実行します.

dk1 import BimanualRobot = BimanualRobot(config_path="~/dk1-config.yaml") robot.connect() # 両腕の関節状態を印刷する は i の範囲の 50Hz で更新されるべきです(10):状態 = robot.get_joint_states() print(f"左: {\f'{j:.2f}' for j in state.left.]}") printf"右: {\f'{j:.2f}' for j in state.right]}") print"---") robot.disconnect)

成功した実行では,一致で安定した値を持つ10ペアの関節状態アレイを印刷します.NaN値,タイムアウトエラー,または各腕に6以上の関節値が表示されている場合は,設定ファイル内のデバイスパス割り当てを確認してください.

同期確認

このユニットの最も重要なチェックは,リーダー運動が 感知可能な遅延なしに同期化されたフォロワー応答を生成することを確認することです.

dk1 import BimanualRobot, LeaderFollowerSession robot = BimanualRobot(config_path="~/dk1-config.yaml") セッション = LeaderFollowerSession(robot) #リーダー/フォロワー同期ループを起動します #リーダー腕をゆっくり移動します 両方のフォロワーがすぐにセッションを映し出すべきです.start() 入力("停止する入力を押す...") セッション.stop()

フォロワー両腕は,可視遅延なしに一致して移動する.フォロワー1人が半秒以上後退した場合, T5設定を確認し,ゆっくりとした腕のUSB接続を確認する.

常見な誤りと修正

Error Cause Fix
SerialException: device not found Wrong device path in config, or USB not connected Run ls /dev/ttyUSB* and update config paths. Check physical USB connections.
SyncTimeoutError: follower_right Right follower arm not responding within latency tolerance Increase latency_tolerance_ms to 10, or try a different USB port. Check cable for damage.
Joint states all zeros after connect Servos not enabled — arm is in standby mode Call robot.enable_servos() before reading joint states, or enable via the web UI first.
One follower mirrors, other is stationary Leader is paired only to one follower in config Verify both follower_left and follower_right are set in the YAML config.

ユニット2 完成する...

DK1 SDK がインストールされ, T13 が 0.4.0 以上返されます.接続テストでは両腕の安定した関節状態値を 50Hz で印刷します.リーダー/フォロワーセッションを開始し,リーダー腕を移動すると,フォロワー腕の両方が感知性遅延なしに動きを反映します.リーダー腕の少なくとも3つの異なる関節動きで確認されています.

[← 経路概要に戻る]