Exceptions¶
All exceptions derive from DobotError and are importable from pydobotlab and pydobotlab.errors.
DobotError
├── DobotConfigError
├── DobotConnectionError
│ ├── DobotPortInUseError
│ └── DobotPermissionError
├── DobotProtocolError
├── DobotTimeoutError
└── DobotAlarmError
├── DobotKinematicError
├── DobotOverspeedError
├── DobotLostStepError
└── DobotSystemAlarmError
| Exception | Description |
|---|---|
DobotError |
Base class. |
DobotConfigError |
The configuration file is invalid. |
DobotConnectionError |
The connection could not be opened or used. |
DobotPortInUseError |
The port is busy. |
DobotPermissionError |
Access to the port was denied. |
DobotProtocolError |
A malformed frame was received. |
DobotTimeoutError |
A response or wait timed out. |
DobotAlarmError |
The arm reported an alarm. |
DobotKinematicError |
A planning, motion, or limit alarm. |
DobotOverspeedError |
A joint over-speed alarm. |
DobotLostStepError |
A lost-step alarm. |
DobotSystemAlarmError |
A system alarm. |
DobotError¶
Base class of all pydobotlab exceptions.
DobotConfigError¶
The configuration file is invalid. The message names the file and the setting. Raised by the first use of any object that reads a default setting.
DobotConnectionError¶
The serial port or broker connection could not be opened, read, or written, a command was sent while not connected, or the control panel is required and not running (see require_panel in Magician).
DobotPortInUseError¶
Subclass of DobotConnectionError. The port is open in this process or held by another program. The message has the form port 'COM3' is busy.
DobotPermissionError¶
Subclass of DobotConnectionError. The operating system denied access to the port (Linux and macOS). The message names the condition and its remedy:
- The user is not in the group of the device, for example
dialouton Ubuntu and Debian oruucpon Arch Linux. - The user was added to the group after the current session started.
- The user is in the group and access is still denied.
- The group has no read and write permission on the device.
DobotProtocolError¶
A malformed frame was received: invalid header, length, or checksum.
DobotTimeoutError¶
No response arrived within the read timeout, or a wait exceeded its timeout. Raised by any command and by wait_for, wait_idle, and move_to.
DobotAlarmError¶
The arm reported an alarm. Raised by every DobotLab function that changes the arm state, such as ptp, and by move_to, wait_for, wait_idle, batch, clear_alarm, and ensure_no_alarms. The arm refuses further commands until the alarm is cleared with clear_alarm or the panel's Clear Alarm button. See Alarms and recovery.
The subclass follows the group of the alarm, as listed under Alarm groups. The message lists each active alarm with a remedy.
| Attribute | Type | Description |
|---|---|---|
alarms |
list[str] |
Names of the active alarms. |
DobotKinematicError¶
Subclass of DobotAlarmError. A planning, motion, or limit alarm (PLAN_*, MOVE_*, LIMIT_*), for example a target outside the workspace.
DobotOverspeedError¶
Subclass of DobotAlarmError. A joint exceeded its maximum speed (OVERSPEED_J1 to OVERSPEED_J4).
DobotLostStepError¶
Subclass of DobotAlarmError. A joint lost steps (LOST_STEP_J1 to LOST_STEP_J4).
DobotSystemAlarmError¶
Subclass of DobotAlarmError. The arm reported a system fault (PUBLIC_RESET to PUBLIC_ANGLE_SENSOR_READ).