ソフトウェア構造

アプリケーション
 ├─ DobotCtrl ── DobotTcp ── DobotApiExt ── vendor dobot_api.py
 │                    ├─ Dashboard TCP 29999
 │                    ├─ Motion TCP    30003
 │                    └─ Feedback TCP  30004
 └─ SyncDobotClient / AsyncDobotClient / DeviceProxy
              │ HTTP / JSON
       FastApiServer + DeviceRouter
              │ automatic dispatch
           DobotCtrl

DobotCtrl は公開 I/F を保持する薄い委譲クラスです。MG400 固有の変換・状態取得・通信は DobotTcp に実装されています。dobot_api.py はベンダー API で、追加の logger 処理と通信監視は dobot_api_ext.py の派生クラスが担います。

DobotTcp は 30004 番ポートから 1440 byte の feedback を専用スレッドで受信します。DobotErrorManager はエラー処理、RobotVarManager は P/J/I/F/IO 変数のローカル保存を担当します。変数ストアはロボット本体の変数とは区別してください。