wandelbots-api-client 25.11.0.dev12__py3-none-any.whl → 26.1.0.dev62__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/models/__init__.py +3 -1
- wandelbots_api_client/models/virtual_controller_types.py +4 -4
- wandelbots_api_client/v2/__init__.py +1 -1
- wandelbots_api_client/v2/api/__init__.py +2 -0
- 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 +795 -2
- wandelbots_api_client/v2/api/program_api.py +12 -12
- wandelbots_api_client/v2/api/robot_configurations_api.py +291 -0
- 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 +7 -3
- 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/initialize_jogging_request.py +2 -4
- wandelbots_api_client/v2/models/inverse_kinematics_request.py +6 -4
- wandelbots_api_client/v2/models/kinematic_model.py +110 -0
- wandelbots_api_client/v2/models/motion_group_description.py +4 -2
- wandelbots_api_client/v2/models/virtual_controller.py +1 -2
- wandelbots_api_client/v2/models/virtual_controller_types.py +1 -1
- wandelbots_api_client/v2_pydantic/__init__.py +1 -1
- wandelbots_api_client/v2_pydantic/api/__init__.py +2 -0
- 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 +804 -2
- wandelbots_api_client/v2_pydantic/api/program_api.py +12 -12
- wandelbots_api_client/v2_pydantic/api/robot_configurations_api.py +294 -0
- 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 +471 -527
- wandelbots_api_client/v2_pydantic/virtual_controller_types.py +126 -0
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev62.dist-info}/METADATA +2 -2
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev62.dist-info}/RECORD +43 -38
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev62.dist-info}/WHEEL +0 -0
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev62.dist-info}/licenses/LICENSE +0 -0
- {wandelbots_api_client-25.11.0.dev12.dist-info → wandelbots_api_client-26.1.0.dev62.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Wandelbots NOVA API
|
|
5
|
+
|
|
6
|
+
Interact with robots in an easy and intuitive way.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 2.1.0 dev
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from wandelbots_api_client.v2.models.dh_parameter import DHParameter
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class KinematicModel(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
Kinematics model described by Denavit-Hartenberg parameters.
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
dh_parameters: Optional[List[DHParameter]] = None
|
|
31
|
+
inverse_solver: Optional[StrictStr] = Field(default=None, description="Optional name of the inverse kinematics solver.")
|
|
32
|
+
__properties: ClassVar[List[str]] = ["dh_parameters", "inverse_solver"]
|
|
33
|
+
|
|
34
|
+
model_config = ConfigDict(
|
|
35
|
+
populate_by_name=True,
|
|
36
|
+
validate_assignment=True,
|
|
37
|
+
protected_namespaces=(),
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
def to_str(self) -> str:
|
|
42
|
+
"""Returns the string representation of the model using alias"""
|
|
43
|
+
return pprint.pformat(self.model_dump(by_alias=True, exclude_none=True))
|
|
44
|
+
|
|
45
|
+
def to_json(self) -> str:
|
|
46
|
+
"""
|
|
47
|
+
Returns the JSON representation of the model using alias
|
|
48
|
+
|
|
49
|
+
Do not use pydantic v2 .model_dump_json(by_alias=True, exclude_unset=True) here!
|
|
50
|
+
It is unable to resolve nested types generated by openapi-generator.
|
|
51
|
+
"""
|
|
52
|
+
return json.dumps(self.to_dict())
|
|
53
|
+
|
|
54
|
+
@classmethod
|
|
55
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
56
|
+
"""Create an instance of KinematicModel from a JSON string"""
|
|
57
|
+
return cls.from_dict(json.loads(json_str))
|
|
58
|
+
|
|
59
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
60
|
+
"""Return the dictionary representation of the model using alias.
|
|
61
|
+
|
|
62
|
+
This has the following differences from calling pydantic's
|
|
63
|
+
`self.model_dump(by_alias=True)`:
|
|
64
|
+
|
|
65
|
+
* `None` is only added to the output dict for nullable fields that
|
|
66
|
+
were set at model initialization. Other fields with value `None`
|
|
67
|
+
are ignored.
|
|
68
|
+
"""
|
|
69
|
+
excluded_fields: Set[str] = set([
|
|
70
|
+
])
|
|
71
|
+
|
|
72
|
+
_dict = self.model_dump(
|
|
73
|
+
by_alias=True,
|
|
74
|
+
exclude=excluded_fields,
|
|
75
|
+
exclude_none=True,
|
|
76
|
+
)
|
|
77
|
+
# override the default output from pydantic by calling `to_dict()` of each item in dh_parameters (list)
|
|
78
|
+
_items = []
|
|
79
|
+
if self.dh_parameters:
|
|
80
|
+
for _item in self.dh_parameters:
|
|
81
|
+
# >>> Modified from https://github.com/OpenAPITools/openapi-generator/blob/v7.6.0/modules/openapi-generator/src/main/resources/python/model_generic.mustache
|
|
82
|
+
# to not drop empty elements in lists
|
|
83
|
+
if _item is not None:
|
|
84
|
+
_items.append(_item.to_dict())
|
|
85
|
+
# <<< End modification
|
|
86
|
+
_dict['dh_parameters'] = _items
|
|
87
|
+
return _dict
|
|
88
|
+
|
|
89
|
+
@classmethod
|
|
90
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
91
|
+
"""Create an instance of KinematicModel from a dict"""
|
|
92
|
+
if obj is None:
|
|
93
|
+
return None
|
|
94
|
+
|
|
95
|
+
if not isinstance(obj, dict):
|
|
96
|
+
return cls.model_validate(obj)
|
|
97
|
+
|
|
98
|
+
_obj = cls.model_validate({
|
|
99
|
+
"dh_parameters": [
|
|
100
|
+
# >>> Modified from https://github.com/OpenAPITools/openapi-generator/blob/v7.6.0/modules/openapi-generator/src/main/resources/python/model_generic.mustache
|
|
101
|
+
# to allow dicts in lists
|
|
102
|
+
DHParameter.from_dict(_item) if hasattr(DHParameter, 'from_dict') else _item
|
|
103
|
+
# <<< End modification
|
|
104
|
+
for _item in obj["dh_parameters"]
|
|
105
|
+
] if obj.get("dh_parameters") is not None else None,
|
|
106
|
+
"inverse_solver": obj.get("inverse_solver")
|
|
107
|
+
})
|
|
108
|
+
return _obj
|
|
109
|
+
|
|
110
|
+
|
|
@@ -43,7 +43,8 @@ class MotionGroupDescription(BaseModel):
|
|
|
43
43
|
payloads: Optional[Dict[str, Payload]] = Field(default=None, description="Maps a payload name to its configuration. Key must be a payload identifier. Values are payload objects. ")
|
|
44
44
|
cycle_time: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=0)]] = Field(default=None, description="[ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.")
|
|
45
45
|
dh_parameters: Optional[List[DHParameter]] = Field(default=None, description="The DH parameters describing the motion group geometry, starting from base.")
|
|
46
|
-
|
|
46
|
+
serial_number: Optional[StrictStr] = Field(default=None, description="The serial number of the motion group, if available. If not available, the serial number of the robot controller. If not available, empty. ")
|
|
47
|
+
__properties: ClassVar[List[str]] = ["motion_group_model", "mounting", "tcps", "safety_zones", "safety_link_colliders", "safety_tool_colliders", "operation_limits", "payloads", "cycle_time", "dh_parameters", "serial_number"]
|
|
47
48
|
|
|
48
49
|
model_config = ConfigDict(
|
|
49
50
|
populate_by_name=True,
|
|
@@ -204,7 +205,8 @@ class MotionGroupDescription(BaseModel):
|
|
|
204
205
|
DHParameter.from_dict(_item) if hasattr(DHParameter, 'from_dict') else _item
|
|
205
206
|
# <<< End modification
|
|
206
207
|
for _item in obj["dh_parameters"]
|
|
207
|
-
] if obj.get("dh_parameters") is not None else None
|
|
208
|
+
] if obj.get("dh_parameters") is not None else None,
|
|
209
|
+
"serial_number": obj.get("serial_number")
|
|
208
210
|
})
|
|
209
211
|
return _obj
|
|
210
212
|
|
|
@@ -20,7 +20,6 @@ import json
|
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
22
|
from wandelbots_api_client.v2.models.manufacturer import Manufacturer
|
|
23
|
-
from wandelbots_api_client.v2.models.virtual_controller_types import VirtualControllerTypes
|
|
24
23
|
from typing import Optional, Set
|
|
25
24
|
from typing_extensions import Self
|
|
26
25
|
|
|
@@ -30,7 +29,7 @@ class VirtualController(BaseModel):
|
|
|
30
29
|
""" # noqa: E501
|
|
31
30
|
kind: str = "VirtualController"
|
|
32
31
|
manufacturer: Manufacturer
|
|
33
|
-
type: Optional[
|
|
32
|
+
type: Optional[StrictStr] = Field(default=None, description="Preset type of the virtual robot controller. See [getRobotConfigurations](getRobotConfigurations) for supported types. ")
|
|
34
33
|
var_json: Optional[StrictStr] = Field(default=None, description="Complete JSON configuration of the virtual robot controller. Can be obtained from the physical controller's configuration via [getVirtualControllerConfiguration](getVirtualControllerConfiguration). If provided, the `type` field should not be used. ", alias="json")
|
|
35
34
|
initial_joint_position: Optional[StrictStr] = Field(default=None, description="Initial joint position of the first motion group from the virtual robot controller. Provide the joint position as a JSON array containing 7 float values, each representing a joint position in radians, e.g., \"[0, 0, 0, 0, 0, 0, 0]\". If the robot has fewer than 7 joints, use \"0\" for each remaining position to ensure the array has exactly 7 values. ")
|
|
36
35
|
__properties: ClassVar[List[str]] = ["kind", "manufacturer", "type", "json", "initial_joint_position"]
|
|
@@ -12,6 +12,7 @@ from .license_api import LicenseApi
|
|
|
12
12
|
from .motion_group_api import MotionGroupApi
|
|
13
13
|
from .motion_group_models_api import MotionGroupModelsApi
|
|
14
14
|
from .program_api import ProgramApi
|
|
15
|
+
from .robot_configurations_api import RobotConfigurationsApi
|
|
15
16
|
from .store_collision_components_api import StoreCollisionComponentsApi
|
|
16
17
|
from .store_collision_setups_api import StoreCollisionSetupsApi
|
|
17
18
|
from .store_object_api import StoreObjectApi
|
|
@@ -37,6 +38,7 @@ __all__ = [
|
|
|
37
38
|
"MotionGroupApi",
|
|
38
39
|
"MotionGroupModelsApi",
|
|
39
40
|
"ProgramApi",
|
|
41
|
+
"RobotConfigurationsApi",
|
|
40
42
|
"StoreCollisionComponentsApi",
|
|
41
43
|
"StoreCollisionSetupsApi",
|
|
42
44
|
"StoreObjectApi",
|