wandelbots-api-client 25.11.0.dev12__py3-none-any.whl → 26.1.0.dev50__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- wandelbots_api_client/__init__.py +1 -1
- wandelbots_api_client/api/motion_api.py +3 -3
- wandelbots_api_client/api_client.py +1 -1
- wandelbots_api_client/configuration.py +1 -1
- wandelbots_api_client/v2/__init__.py +1 -1
- wandelbots_api_client/v2/api/bus_inputs_outputs_api.py +579 -0
- wandelbots_api_client/v2/api/jogging_api.py +1 -1
- wandelbots_api_client/v2/api/motion_group_models_api.py +530 -2
- wandelbots_api_client/v2/api/program_api.py +12 -12
- wandelbots_api_client/v2/api/trajectory_execution_api.py +1 -1
- wandelbots_api_client/v2/api_client.py +1 -1
- wandelbots_api_client/v2/configuration.py +1 -1
- wandelbots_api_client/v2/models/__init__.py +2 -0
- wandelbots_api_client/v2/models/blending_auto.py +1 -1
- wandelbots_api_client/v2/models/blending_position.py +15 -1
- wandelbots_api_client/v2/models/blending_space.py +37 -0
- wandelbots_api_client/v2/models/motion_group_description.py +4 -2
- wandelbots_api_client/v2_pydantic/__init__.py +1 -1
- wandelbots_api_client/v2_pydantic/api/bus_inputs_outputs_api.py +585 -0
- wandelbots_api_client/v2_pydantic/api/jogging_api.py +1 -1
- wandelbots_api_client/v2_pydantic/api/motion_group_models_api.py +536 -2
- wandelbots_api_client/v2_pydantic/api/program_api.py +12 -12
- wandelbots_api_client/v2_pydantic/api/trajectory_execution_api.py +1 -1
- wandelbots_api_client/v2_pydantic/api_client.py +1 -1
- wandelbots_api_client/v2_pydantic/configuration.py +1 -1
- wandelbots_api_client/v2_pydantic/models.py +401 -374
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev50.dist-info}/METADATA +2 -2
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev50.dist-info}/RECORD +31 -30
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev50.dist-info}/WHEEL +0 -0
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev50.dist-info}/licenses/LICENSE +0 -0
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev50.dist-info}/top_level.txt +0 -0
|
@@ -47,7 +47,7 @@ class TrajectoryExecutionApi:
|
|
|
47
47
|
async def execute_trajectory(self, cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")], controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")], client_request_generator: Callable[[AsyncGenerator[ExecuteTrajectoryResponse, None]], AsyncGenerator[ExecuteTrajectoryRequest, None]]) -> None: # noqa: E501
|
|
48
48
|
"""Execute Trajectory # noqa: E501
|
|
49
49
|
|
|
50
|
-
<!-- theme: success --> > Websocket endpoint Provides execution control over a previously [planned trajectory](planTrajectory). Enables the caller to attach input/output actions to the trajectory. ### Movement behavior | Virtual controller | Physical controller | |------------------|-------------------| | Desired joint configurations are commanded to each motion group and **applied immediately** | Move to desired **actual joint configuration**, **if possible** | ### Concept of location - The location or path parameter specifies the exact position along a trajectory. - The location is a scalar value that ranges from 0 to `n`, where `n` denotes the number of motion commands, or trajectory segments, e.g., line, p2p, etc. See [planTrajectory](planTrajectory). - Each integer value of the location corresponds to one motion command, e.g., 3.0 to 3.999 could be a line. ### Preconditions - The motion group's control mode is not claimed by any other endpoint. - The motion group's joint position are at start location specified with `InitializeMovementRequest`. - Use [executeToTrajectory](executeToTrajectory) to move the robot to the start location. ### Requests #### 1. Send `InitializeMovementRequest` to lock the trajectory to this connection The following actions are executed: - Sets robot controller mode to control mode, - Sets start location of the execution Keep in mind that only a single trajectory can be locked to a websocket connection at a time
|
|
50
|
+
<!-- theme: success --> > Websocket endpoint Provides execution control over a previously [planned trajectory](planTrajectory). Enables the caller to attach input/output actions to the trajectory. ### Movement behavior | Virtual controller | Physical controller | |------------------|-------------------| | Desired joint configurations are commanded to each motion group and **applied immediately** | Move to desired **actual joint configuration**, **if possible** | ### Concept of location - The location or path parameter specifies the exact position along a trajectory. - The location is a scalar value that ranges from 0 to `n`, where `n` denotes the number of motion commands, or trajectory segments, e.g., line, p2p, etc. See [planTrajectory](planTrajectory). - Each integer value of the location corresponds to one motion command, e.g., 3.0 to 3.999 could be a line. ### Preconditions - The motion group's control mode is not claimed by any other endpoint. - The motion group's joint position are at start location specified with `InitializeMovementRequest`. - Use [executeToTrajectory](executeToTrajectory) to move the robot to the start location. ### Requests #### 1. Send `InitializeMovementRequest` to lock the trajectory to this connection The following actions are executed: - Sets robot controller mode to control mode, - Sets start location of the execution Keep in mind that only a single trajectory can be locked to a websocket connection at a time. Pausing the current movement enables you to send another `InitializeMovementRequest` to execute another trajectory on the same connection. #### 2. Send `StartMovementRequest` to start the movement Sets direction of movement, default is forward. #### **Optional** - To pause, send `PauseMovementRequest` before the movement has reached its end location. - Change the movement's velocity with `PlaybackSpeedRequest` after initializing the movement with `InitializeMovementRequest`. ### Responses To monitor the state of the movement, listen to the [state stream](streamMotionGroupState). The state is published via nats as well. Field `execute` in the `MotionGroupState` indicates whether a movement is ongoing and carries execution details. Each request has a corresponding acknowledgment response. They signal success or failure of the request. Especially for `PauseMovementResponse`, it does not signal the end of the movement. Additionally, `MovementError` messages can be sent in case of unexpected errors during the execution, e.g., controller disconnects during movement. ### Tips and Tricks - A movement can be paused and resumed by sending `PauseMovementRequest` and `StartMovementRequest`. - Send `PlaybackSpeedRequest` before `StartMovementRequest` to reduce the velocity of the movement before it starts. - Send `PlaybackSpeedRequest` repeatedly to implement a slider. The velocity of the motion group can be adjusted with each controller step. Therefore, if your app needs a slider-like UI to alter the velocity of a currently running movement, you can send `PlaybackSpeedRequest` with different speed values repeatedly during the movement. - A closed trajectory (end and start joint position are equal) can be repeated by sending `StartMovementRequest` after the movement has finished. # noqa: E501
|
|
51
51
|
:param client_request_generator: An AsyncGenerator that yields request of type ExecuteTrajectoryRequest and takes an AsyncGenerator of ExecuteTrajectoryResponse as an input argument (required)
|
|
52
52
|
:info All responses from the server will be yielded to client_request_generator through the (AsyncGenerator[ExecuteTrajectoryResponse, None])
|
|
53
53
|
:type AsyncGenerator[ExecuteTrajectoryRequest, None]
|
|
@@ -91,7 +91,7 @@ class ApiClient:
|
|
|
91
91
|
self.default_headers[header_name] = header_value
|
|
92
92
|
self.cookie = cookie
|
|
93
93
|
# Set default User-Agent.
|
|
94
|
-
self.user_agent = 'Wandelbots-Nova-API-Python-Client/
|
|
94
|
+
self.user_agent = 'Wandelbots-Nova-API-Python-Client/26.1.0.dev50'
|
|
95
95
|
self.client_side_validation = configuration.client_side_validation
|
|
96
96
|
|
|
97
97
|
async def __aenter__(self):
|
|
@@ -535,7 +535,7 @@ conf = wandelbots_api_client.v2_pydantic.Configuration(
|
|
|
535
535
|
"OS: {env}\n"\
|
|
536
536
|
"Python Version: {pyversion}\n"\
|
|
537
537
|
"Version of the API: 2.1.0 dev\n"\
|
|
538
|
-
"SDK Package Version:
|
|
538
|
+
"SDK Package Version: 26.1.0.dev50".\
|
|
539
539
|
format(env=sys.platform, pyversion=sys.version)
|
|
540
540
|
|
|
541
541
|
def get_host_settings(self) -> List[HostSetting]:
|