全方位移動基地
ダミアオAGVの仕様
完全な技術仕様: ドライブ システム、UART/DBUS プロトコル、チャネル マッピング、エージェント CLI フラグ、およびプラットフォーム統合の詳細。
コア仕様
駆動システム、通信、制御パラメータ
| ベンダー | ダミャオ (ダミャオ) |
| ドライブ構成 | 全方向4輪(4WS4WD) |
| ホイールの種類 | メカナムまたはオムニホイール |
| モーション軸 | X (前方/後方)、Y (横方向)、Z (ヨー/回転) |
| 制御インターフェース | メインコントローラーの UART5 (ピン PD2、RX) |
| ボーレート | 100000 |
| シリアルフレーミング | 8 データ ビット、偶数パリティ、2 ストップ ビット (8E2) |
| プロトコル | DBUS/SBUS スタイルの RC フレーム、フレームあたり 18 バイト |
| チャンネル範囲 | ch0 ~ ch3: 11 ビット、値 0 ~ 2047、センター 1024 |
| 振幅パラメータ | --amp デフォルトは 660、範囲は 250 ~ 900 (中心からのオフセット 1024) |
| 制御レート | 30 Hz (で設定可能) --control-hz) |
| テレメトリーレート | 8 Hz (で設定可能) --telemetry-hz) |
| コマンドタイムアウト | 300ms(で設定可能) --cmd-timeout-ms); AGVが自動停止 |
| シャットダウンの安全性 | シリアル終了前のエージェント終了時に 3 つの中央位置の DBUS フレームが送信される |
| プラットフォームデバイスのタイプ | mobile_base |
| プラットフォームの機能 | ["mobile_base", "agv", "telemetry"] |
| エージェントモジュール | dami_agent.py |
| バックエンド WebSocket URL | ws://localhost:8000 (デフォルト) |
| モックモード | はい (--mock); シリアル ポートがスキップされ、完全な WebSocket パイプラインがアクティブになります |
DBUS フレーム レイアウト
すべてのモーションコマンドに使用される 18 バイトのフレーム構造
| バイト | コンテンツ | 注意事項 |
|---|---|---|
| 0–5 | ch0、ch1、ch2、ch3 パック(各 11 ビット) | リトルエンディアンのビットパッキング。 44 ビットを 48 ビットに変換 |
| 5 (ハイニブル) | s0 (ビット[5:4])、s1 (ビット[7:6]) | 状態を切り替えます。 AGVの場合は1/1(中央)に固定 |
| 6–15 | マウスとキーボードのフィールド | ゼロ化されました。 AGV ファームウェアによって解析されない |
| 16–17 | ch4(11ビット) | 中央で固定 (1024)。 AGVの動作には使用されません |
チャンネルと速度のマッピング
AGV ファームウェアがチャネルをデコードする方法とエージェントが速度コマンドをエンコードする方法
| チャネル | ファームウェアは次のようにデコードします | エージェントのエンコード元 | 式 |
|---|---|---|---|
| ch0 | ヨー(回転) | vw (角速度) | ch0 = 1024 + (−vw) × amp |
| ch1 | 未使用 | — | 1024で固定 |
| ch2 | 横方向(Y) | あなた | ch2 = 1024 + vy × amp |
| ch3 | 前進(X) | vx | ch3 = 1024 + vx × amp |
シリアル フレームは重要です。
UART5 は 100000 ボー、8E2 (8 データ ビット、偶数パリティ、2 ストップ ビット) として設定する必要があります。 よくある間違いは、ポートを 8N1 として開くことです。 AGV ファームウェアは、間違ったフレーム構成でフレームを黙って無視または誤って解析します。
pyserial.PARITY_EVEN そして STOPBITS_TWO.
エージェント CLI リファレンス
dami_agent.py のすべてのフラグ
| フラグ | デフォルト | 説明 |
|---|---|---|
| --バックエンド | ws://ローカルホスト:8000 | プラットフォーム WebSocket ベース URL |
| - セッション | (必須) | テレオペセッションID(形式:RC-XXXX-XXXX) |
| --ノードID | ホスト名 | セッション内の AGV ノード識別子 |
| --シリアルポート | /dev/ttyUSB0 | USB-to-TTL アダプターのデバイス パス |
| --テレメトリ-hz | 8.0 | テレメトリをプラットフォームに送信する頻度 |
| --control-hz | 30.0 | DBUS フレーム出力レート (Hz) |
| --cmd-タイムアウト-ms | 300 | このウィンドウ内でコマンドを受信しなかった場合は自動停止します |
| --アンプ | 660 | ジョイスティックの振幅。 500 ~ 760 の推奨範囲 |
| --invert-x | 間違い | 前後方向を反転 |
| --invert-y | 間違い | 左右方向を反転 |
| --invert-z | 間違い | 回転方向を反転する |
| --モック | 間違い | シリアルポートをスキップします。 コマンドパイプラインのみを検証する |
プラットフォームの統合
WebSocket の登録とテレメトリの形式
| WebSocketエンドポイント | /api/teleop/ws Fearless Platform バックエンド上 |
| 登録の役割 | robot |
| デバイスの種類 | mobile_base |
| 能力 | ["mobile_base", "agv", "telemetry"] |
| テレメトリーフィールド | vx_cmd, vy_cmd, vw_cmd (流速記号); feedback 接続状態、アンプ、タイムアウトを含むオブジェクト |
| キープアライブ | プラットフォームの沈黙が 45 秒続いた後に ping が送信されます。 接続が切断された場合、cmd タイムアウト後に AGV が自動停止する |
| エピソードの録画 | すべてのテレメトリ フレームは、同じセッション内の腕、カメラ、触覚ノードとともに JSONL でアーカイブされます |
ダミアオモーターコンポーネント
AGV ドライブトレインおよび取り付けられたアームペイロードで使用される QDD アクチュエーター
背景: モーターと AGV。
Damiao (达妙科技) は、AGV モバイル ベース (このハードウェア ページ) と、AGV に搭載されたロボット アームに使用される QDD モーター コンポーネントの両方を製造しています。 以下のモーター情報は、この AGV に統合された OpenArm および DK1 ペイロードで使用される DM-J43xx-2EC シリーズをカバーしています。 完全なモーターリファレンス: ダミャオモーターズ Wiki →
| モデル | ピークトルク | 無負荷速度 | ギア比 | 代表的なジョイント |
|---|---|---|---|---|
| DM-J4310-2EC V1.1 | ~10Nm | ~30rpm | 10:1 | リスト&グリッパー(J7、J8) |
| DM-J4340-2EC | ~18Nm | ~15rpm | 10:1 | 肘と中腕 (J4、J5、J6) |
| DM-J4340p-2EC | ~25Nm | ~12rpm | 10:1 | ベース&ショルダー(J1、J2、J3) |
| ステータ直径 | 43 mm (すべてのバリエーション) |
| 公称電圧 | DC24V |
| コミュニケーション | CAN2.0/CANFD |
| エンコーダ | デュアル(モーター側+出力側) |
| 制御モード | MIT PVT、位置、速度、トルク |
| CAN公称ボー | 1Mビット/秒 |
| CAN FD データボー | 最大5Mビット/秒 |
| 動作温度 | −20℃〜80℃ |
定格トルクはピーク値です。
連続トルクは通常、ピーク定格の 40 ~ 60% です。 連続運転中のサーマルシャットダウンを避けるために、連続運転に適したサイズのモーターを選択してください。