# 例外・戻り値の呼び出し経路(ソース照合) 対象: 同梱の `source_reference/dobot_core/` のスナップショット。行番号はこのスナップショットに対するものです。 以下はASTで確認できる**直接呼び出し**と明示的な例外構文のみです。戻り値・通信の健全性・実行時例外を保証するものではありません。 | API | 定義位置 | 直接呼び出し | 明示的raise | 捕捉例外 | |---|---|---|---|---| | `connect` | `dobot_ctrl.py:36` | `_ctrl.connect` | — | — | | `disconnect` | `dobot_ctrl.py:48` | `_ctrl.disconnect` | — | — | | `reset_error` | `dobot_ctrl.py:74` | `_ctrl.reset_error` | — | — | | `get_motion_complete` | `dobot_ctrl.py:87` | `_ctrl.get_motion_complete` | — | — | | `wait_for_complete` | `dobot_ctrl.py:90` | `_ctrl.wait_for_complete` | — | — | | `get_current_position` | `dobot_ctrl.py:288` | `_ctrl.get_current_position` | — | — | | `get_current_angle` | `dobot_ctrl.py:294` | `_ctrl.get_current_angle` | — | — | | `get_error` | `dobot_ctrl.py:312` | `_ctrl.get_error` | — | — | | `get_error_code` | `dobot_ctrl.py:315` | `_ctrl.get_error_code` | — | — | | `get_error_count` | `dobot_ctrl.py:318` | `_ctrl.get_error_count` | — | — | | `move` | `dobot_ctrl.py:420` | `_ctrl.move` | — | — | | `get_IO` | `dobot_ctrl.py:493` | `_ctrl.get_IO` | — | — | | `get_digital_input` | `dobot_ctrl.py:496` | `_ctrl.get_digital_input` | — | — | | `set_IO` | `dobot_ctrl.py:499` | `_ctrl.set_IO` | — | — | | `connect` | `dobot_tcp.py:108` | — | `RuntimeError(f'Dobot feedback dtype size mismatch: MyType.itemsize={MyType.itemsize}, expected={self.FEEDBACK_SIZE}')` | `Exception` | | `disconnect` | `dobot_tcp.py:170` | — | — | `Exception` | | `reset_error` | `dobot_tcp.py:484` | `_dashboard.ClearError`, `_handle_command_reply` | — | — | | `get_current_position` | `dobot_tcp.py:535` | `_dashboard.GetPose`, `_dashboard_values` | `RuntimeError(f'GetPose returned too few values: {values}')` | — | | `get_current_angle` | `dobot_tcp.py:560` | `_dashboard.GetAngle`, `_dashboard_values` | `RuntimeError(f'GetAngle returned too few values: {values}')` | — | | `wait_for_complete` | `dobot_tcp.py:653` | `_handle_command_reply`, `_motion_error_active`, `_move.Sync` | — | — | | `get_error` | `dobot_tcp.py:688` | `_error_manager.get_error` | — | — | | `get_error_code` | `dobot_tcp.py:692` | `_error_manager.get_error_code` | — | — | | `get_error_count` | `dobot_tcp.py:700` | `_error_manager.get_error_count` | — | — | | `move` | `dobot_tcp.py:1310` | `_handle_command_reply`, `_j_to_mg400`, `_move.JointMovJ`, `_move.MovJ`, `_move.MovL`, `_p_to_mg400`, `_set_motion_target`, `_vector6`, `_wait_motion_start_or_error` | — | `Exception` | | `get_digital_input` | `dobot_tcp.py:1751` | `_dashboard.DI`, `_ok`, `_parse_reply_values` | — | `Exception` | | `get_IO` | `dobot_tcp.py:1796` | `_scalar_status`, `_state` | `ValueError('id_num must be >= 1')` | — | | `set_IO` | `dobot_tcp.py:1808` | `_dashboard.DO`, `_ok` | — | — | ## 確認上の注意 - `DobotCtrl` から `_ctrl` への委譲、`DobotTcp` から `_error_manager` への委譲を区別する。 - `get_error*` は `DobotErrorManager._get_error_records()` を介する。通信失敗とアラームなしを混同する可能性は [戻り値一覧](return_failure_quick_reference.md) を参照。 - `wait_for_complete()` の `Sync()` 応答は移動結果の安全証明ではない。 - 呼び出し先の内部例外、プロパティ、動的ディスパッチ、外部ライブラリ例外は未追跡。