wandelbots-api-client 25.11.0.dev28__py3-none-any.whl → 26.1.0.dev53__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 +2 -2
- wandelbots_api_client/api/application_api.py +1 -1
- wandelbots_api_client/api/cell_api.py +1 -1
- wandelbots_api_client/api/controller_api.py +1 -1
- wandelbots_api_client/api/controller_ios_api.py +1 -1
- wandelbots_api_client/api/coordinate_systems_api.py +1 -1
- wandelbots_api_client/api/device_configuration_api.py +1 -1
- wandelbots_api_client/api/library_program_api.py +1 -1
- wandelbots_api_client/api/library_program_metadata_api.py +1 -1
- wandelbots_api_client/api/library_recipe_api.py +1 -1
- wandelbots_api_client/api/library_recipe_metadata_api.py +1 -1
- wandelbots_api_client/api/license_api.py +1 -1
- wandelbots_api_client/api/motion_api.py +4 -4
- wandelbots_api_client/api/motion_group_api.py +1 -1
- wandelbots_api_client/api/motion_group_infos_api.py +1 -1
- wandelbots_api_client/api/motion_group_jogging_api.py +1 -1
- wandelbots_api_client/api/motion_group_kinematic_api.py +1 -1
- wandelbots_api_client/api/program_api.py +1 -1
- wandelbots_api_client/api/program_operator_api.py +1 -1
- wandelbots_api_client/api/program_values_api.py +1 -1
- wandelbots_api_client/api/store_collision_components_api.py +1 -1
- wandelbots_api_client/api/store_collision_scenes_api.py +1 -1
- wandelbots_api_client/api/store_object_api.py +1 -1
- wandelbots_api_client/api/system_api.py +1 -1
- wandelbots_api_client/api/version_api.py +1 -1
- wandelbots_api_client/api/virtual_robot_api.py +1 -1
- wandelbots_api_client/api/virtual_robot_behavior_api.py +1 -1
- wandelbots_api_client/api/virtual_robot_mode_api.py +1 -1
- wandelbots_api_client/api/virtual_robot_setup_api.py +1 -1
- wandelbots_api_client/api_client.py +2 -2
- wandelbots_api_client/configuration.py +3 -3
- wandelbots_api_client/exceptions.py +1 -1
- wandelbots_api_client/models/__init__.py +4 -2
- wandelbots_api_client/models/abb_controller.py +1 -1
- wandelbots_api_client/models/abb_controller_egm_server.py +1 -1
- wandelbots_api_client/models/activate_license_request.py +1 -1
- wandelbots_api_client/models/add_request.py +1 -1
- wandelbots_api_client/models/all_joint_positions_request.py +1 -1
- wandelbots_api_client/models/all_joint_positions_response.py +1 -1
- wandelbots_api_client/models/api_version.py +1 -1
- wandelbots_api_client/models/app.py +1 -1
- wandelbots_api_client/models/array_input.py +1 -1
- wandelbots_api_client/models/array_output.py +1 -1
- wandelbots_api_client/models/behavior.py +1 -1
- wandelbots_api_client/models/blending_auto.py +1 -1
- wandelbots_api_client/models/blending_position.py +1 -1
- wandelbots_api_client/models/box.py +1 -1
- wandelbots_api_client/models/box2.py +1 -1
- wandelbots_api_client/models/box3.py +1 -1
- wandelbots_api_client/models/capsule.py +1 -1
- wandelbots_api_client/models/capsule2.py +1 -1
- wandelbots_api_client/models/capsule3.py +1 -1
- wandelbots_api_client/models/capture.py +1 -1
- wandelbots_api_client/models/cell.py +1 -1
- wandelbots_api_client/models/circle.py +1 -1
- wandelbots_api_client/models/code_with_arguments.py +1 -1
- wandelbots_api_client/models/collection_value.py +1 -1
- wandelbots_api_client/models/collider.py +1 -1
- wandelbots_api_client/models/collider_input.py +1 -1
- wandelbots_api_client/models/collider_output.py +1 -1
- wandelbots_api_client/models/collider_output_shape.py +1 -1
- wandelbots_api_client/models/collider_shape.py +1 -1
- wandelbots_api_client/models/collision.py +1 -1
- wandelbots_api_client/models/collision_contact.py +1 -1
- wandelbots_api_client/models/collision_motion_group.py +1 -1
- wandelbots_api_client/models/collision_motion_group_assembly.py +1 -1
- wandelbots_api_client/models/collision_robot_configuration_input.py +1 -1
- wandelbots_api_client/models/collision_robot_configuration_output.py +1 -1
- wandelbots_api_client/models/collision_scene.py +1 -1
- wandelbots_api_client/models/collision_scene_assembly.py +1 -1
- wandelbots_api_client/models/command.py +1 -1
- wandelbots_api_client/models/command_settings.py +1 -1
- wandelbots_api_client/models/comparator.py +1 -1
- wandelbots_api_client/models/compound.py +1 -1
- wandelbots_api_client/models/container_environment_inner.py +1 -1
- wandelbots_api_client/models/container_image.py +1 -1
- wandelbots_api_client/models/container_image_secrets_inner.py +1 -1
- wandelbots_api_client/models/container_resources.py +1 -1
- wandelbots_api_client/models/container_storage.py +1 -1
- wandelbots_api_client/models/controller_capabilities.py +1 -1
- wandelbots_api_client/models/controller_instance.py +1 -1
- wandelbots_api_client/models/controller_instance_list.py +1 -1
- wandelbots_api_client/models/convex_hull.py +1 -1
- wandelbots_api_client/models/convex_hull2.py +1 -1
- wandelbots_api_client/models/convex_hull3.py +1 -1
- wandelbots_api_client/models/coordinate_system.py +1 -1
- wandelbots_api_client/models/coordinate_systems.py +1 -1
- wandelbots_api_client/models/create_device_request_inner.py +1 -1
- wandelbots_api_client/models/create_program_run200_response.py +1 -1
- wandelbots_api_client/models/create_program_run_request.py +1 -1
- wandelbots_api_client/models/create_trigger200_response.py +1 -1
- wandelbots_api_client/models/create_trigger_request.py +1 -1
- wandelbots_api_client/models/cubic_spline.py +1 -1
- wandelbots_api_client/models/cubic_spline_cubic_spline_parameter.py +1 -1
- wandelbots_api_client/models/cubic_spline_parameter.py +1 -1
- wandelbots_api_client/models/cycle_time.py +1 -1
- wandelbots_api_client/models/cylinder.py +1 -1
- wandelbots_api_client/models/cylinder2.py +1 -1
- wandelbots_api_client/models/cylinder3.py +1 -1
- wandelbots_api_client/models/dh_parameter.py +1 -1
- wandelbots_api_client/models/direction.py +1 -1
- wandelbots_api_client/models/direction_jogging_request.py +1 -1
- wandelbots_api_client/models/error.py +1 -1
- wandelbots_api_client/models/execute_trajectory_request.py +1 -1
- wandelbots_api_client/models/execute_trajectory_response.py +1 -1
- wandelbots_api_client/models/execution_result.py +1 -1
- wandelbots_api_client/models/external_joint_stream_datapoint.py +1 -1
- wandelbots_api_client/models/external_joint_stream_datapoint_value.py +1 -1
- wandelbots_api_client/models/fanuc_controller.py +1 -1
- wandelbots_api_client/models/feedback_collision.py +1 -1
- wandelbots_api_client/models/feedback_joint_limit_exceeded.py +1 -1
- wandelbots_api_client/models/feedback_out_of_workspace.py +1 -1
- wandelbots_api_client/models/feedback_singularity.py +1 -1
- wandelbots_api_client/models/flag.py +1 -1
- wandelbots_api_client/models/force_vector.py +1 -1
- wandelbots_api_client/models/geometry.py +1 -1
- wandelbots_api_client/models/get_all_program_runs200_response.py +1 -1
- wandelbots_api_client/models/get_all_triggers200_response.py +1 -1
- wandelbots_api_client/models/get_mode_response.py +1 -1
- wandelbots_api_client/models/get_trajectory_response.py +1 -1
- wandelbots_api_client/models/get_trajectory_sample_response.py +1 -1
- wandelbots_api_client/models/google_protobuf_any.py +1 -1
- wandelbots_api_client/models/http_exception_response.py +1 -1
- wandelbots_api_client/models/http_validation_error.py +1 -1
- wandelbots_api_client/models/http_validation_error2.py +1 -1
- wandelbots_api_client/models/image_credentials.py +1 -1
- wandelbots_api_client/models/info_service_capabilities.py +1 -1
- wandelbots_api_client/models/initialize_movement_request.py +1 -1
- wandelbots_api_client/models/initialize_movement_response.py +1 -1
- wandelbots_api_client/models/initialize_movement_response_init_response.py +1 -1
- wandelbots_api_client/models/io.py +1 -1
- wandelbots_api_client/models/io_description.py +1 -1
- wandelbots_api_client/models/io_value.py +1 -1
- wandelbots_api_client/models/ios.py +1 -1
- wandelbots_api_client/models/jogging_response.py +1 -1
- wandelbots_api_client/models/jogging_service_capabilities.py +1 -1
- wandelbots_api_client/models/joint_jogging_request.py +1 -1
- wandelbots_api_client/models/joint_limit.py +1 -1
- wandelbots_api_client/models/joint_limit_exceeded.py +1 -1
- wandelbots_api_client/models/joint_position_request.py +1 -1
- wandelbots_api_client/models/joint_trajectory.py +1 -1
- wandelbots_api_client/models/joints.py +1 -1
- wandelbots_api_client/models/kinematic_service_capabilities.py +1 -1
- wandelbots_api_client/models/kuka_controller.py +1 -1
- wandelbots_api_client/models/kuka_controller_rsi_server.py +1 -1
- wandelbots_api_client/models/license.py +1 -1
- wandelbots_api_client/models/license_status.py +1 -1
- wandelbots_api_client/models/license_status_enum.py +1 -1
- wandelbots_api_client/models/limit_settings.py +1 -1
- wandelbots_api_client/models/limits_override.py +1 -1
- wandelbots_api_client/models/list_devices200_response_inner.py +1 -1
- wandelbots_api_client/models/list_io_descriptions_response.py +1 -1
- wandelbots_api_client/models/list_io_values_response.py +1 -1
- wandelbots_api_client/models/list_payloads_response.py +1 -1
- wandelbots_api_client/models/list_program_metadata_response.py +1 -1
- wandelbots_api_client/models/list_recipe_metadata_response.py +1 -1
- wandelbots_api_client/models/list_response.py +1 -1
- wandelbots_api_client/models/list_tcps_response.py +1 -1
- wandelbots_api_client/models/manufacturer.py +1 -1
- wandelbots_api_client/models/mode_change_response.py +1 -1
- wandelbots_api_client/models/motion_command.py +1 -1
- wandelbots_api_client/models/motion_command_blending.py +1 -1
- wandelbots_api_client/models/motion_command_path.py +1 -1
- wandelbots_api_client/models/motion_group_behavior_getter.py +1 -1
- wandelbots_api_client/models/motion_group_info.py +1 -1
- wandelbots_api_client/models/motion_group_infos.py +1 -1
- wandelbots_api_client/models/motion_group_instance.py +1 -1
- wandelbots_api_client/models/motion_group_instance_list.py +1 -1
- wandelbots_api_client/models/motion_group_joints.py +1 -1
- wandelbots_api_client/models/motion_group_physical.py +1 -1
- wandelbots_api_client/models/motion_group_specification.py +1 -1
- wandelbots_api_client/models/motion_group_state.py +1 -1
- wandelbots_api_client/models/motion_group_state_joint_limit_reached.py +1 -1
- wandelbots_api_client/models/motion_group_state_response.py +1 -1
- wandelbots_api_client/models/motion_id.py +1 -1
- wandelbots_api_client/models/motion_ids_list_response.py +1 -1
- wandelbots_api_client/models/motion_vector.py +1 -1
- wandelbots_api_client/models/mounting.py +1 -1
- wandelbots_api_client/models/move_request.py +1 -1
- wandelbots_api_client/models/move_response.py +1 -1
- wandelbots_api_client/models/move_to_trajectory_via_joint_ptp_request.py +1 -1
- wandelbots_api_client/models/movement.py +1 -1
- wandelbots_api_client/models/movement_error.py +1 -1
- wandelbots_api_client/models/movement_error_error.py +1 -1
- wandelbots_api_client/models/movement_movement.py +1 -1
- wandelbots_api_client/models/op_mode.py +1 -1
- wandelbots_api_client/models/opcua_node_value_trigger_config.py +1 -1
- wandelbots_api_client/models/opcua_node_value_trigger_config_node_value.py +1 -1
- wandelbots_api_client/models/optimizer_setup.py +1 -1
- wandelbots_api_client/models/out_of_workspace.py +1 -1
- wandelbots_api_client/models/path.py +1 -1
- wandelbots_api_client/models/path_cartesian_ptp.py +1 -1
- wandelbots_api_client/models/path_circle.py +1 -1
- wandelbots_api_client/models/path_cubic_spline.py +1 -1
- wandelbots_api_client/models/path_joint_ptp.py +1 -1
- wandelbots_api_client/models/path_line.py +1 -1
- wandelbots_api_client/models/pause_movement_request.py +1 -1
- wandelbots_api_client/models/pause_movement_response.py +1 -1
- wandelbots_api_client/models/pause_movement_response_pause_response.py +1 -1
- wandelbots_api_client/models/pause_on_io.py +1 -1
- wandelbots_api_client/models/payload.py +1 -1
- wandelbots_api_client/models/plan_collision_free_ptp_request.py +1 -1
- wandelbots_api_client/models/plan_collision_free_ptp_request_target.py +1 -1
- wandelbots_api_client/models/plan_failed_on_trajectory_response.py +1 -1
- wandelbots_api_client/models/plan_failed_response.py +1 -1
- wandelbots_api_client/models/plan_request.py +1 -1
- wandelbots_api_client/models/plan_response.py +1 -1
- wandelbots_api_client/models/plan_successful_response.py +1 -1
- wandelbots_api_client/models/plan_trajectory_failed_response.py +1 -1
- wandelbots_api_client/models/plan_trajectory_failed_response_error_feedback.py +1 -1
- wandelbots_api_client/models/plan_trajectory_request.py +1 -1
- wandelbots_api_client/models/plan_trajectory_response.py +1 -1
- wandelbots_api_client/models/plan_trajectory_response_response.py +1 -1
- wandelbots_api_client/models/plane2.py +1 -1
- wandelbots_api_client/models/plane3.py +1 -1
- wandelbots_api_client/models/planned_motion.py +1 -1
- wandelbots_api_client/models/planner_pose.py +1 -1
- wandelbots_api_client/models/planning_limits.py +1 -1
- wandelbots_api_client/models/planning_limits_limit_range.py +1 -1
- wandelbots_api_client/models/playback_speed_request.py +1 -1
- wandelbots_api_client/models/playback_speed_response.py +1 -1
- wandelbots_api_client/models/playback_speed_response_playback_speed_response.py +1 -1
- wandelbots_api_client/models/point_cloud.py +1 -1
- wandelbots_api_client/models/pose.py +1 -1
- wandelbots_api_client/models/pose2.py +1 -1
- wandelbots_api_client/models/program_metadata.py +1 -1
- wandelbots_api_client/models/program_run.py +1 -1
- wandelbots_api_client/models/program_run_object.py +1 -1
- wandelbots_api_client/models/program_run_state.py +1 -1
- wandelbots_api_client/models/program_runner_reference.py +1 -1
- wandelbots_api_client/models/pyjectory_datatypes_core_pose.py +1 -1
- wandelbots_api_client/models/pyjectory_datatypes_serializer_orientation.py +1 -1
- wandelbots_api_client/models/pyjectory_datatypes_serializer_pose.py +1 -1
- wandelbots_api_client/models/pyjectory_datatypes_serializer_position.py +1 -1
- wandelbots_api_client/models/pyriphery_etcd_etcd_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_hardware_isaac_isaac_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_opcua_opcua_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_pyrae_controller_controller_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_pyrae_robot_robot_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_input.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_output.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_robotcell_timer_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_simulation_robot_with_view_open3d_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_io_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_opcua_configuration.py +1 -1
- wandelbots_api_client/models/quaternion.py +1 -1
- wandelbots_api_client/models/recipe_metadata.py +1 -1
- wandelbots_api_client/models/rectangle.py +1 -1
- wandelbots_api_client/models/rectangle2.py +1 -1
- wandelbots_api_client/models/rectangle3.py +1 -1
- wandelbots_api_client/models/rectangular_capsule.py +1 -1
- wandelbots_api_client/models/rectangular_capsule2.py +1 -1
- wandelbots_api_client/models/rectangular_capsule3.py +1 -1
- wandelbots_api_client/models/release_channel.py +1 -1
- wandelbots_api_client/models/request.py +1 -1
- wandelbots_api_client/models/request1.py +1 -1
- wandelbots_api_client/models/response_get_value_programs_values_key_get.py +1 -1
- wandelbots_api_client/models/response_get_values_programs_values_get_value.py +1 -1
- wandelbots_api_client/models/robot_controller.py +1 -1
- wandelbots_api_client/models/robot_controller_configuration.py +1 -1
- wandelbots_api_client/models/robot_controller_state.py +1 -1
- wandelbots_api_client/models/robot_link_geometry.py +1 -1
- wandelbots_api_client/models/robot_state.py +1 -1
- wandelbots_api_client/models/robot_system_mode.py +1 -1
- wandelbots_api_client/models/robot_tcp.py +1 -1
- wandelbots_api_client/models/robot_tcps.py +1 -1
- wandelbots_api_client/models/rotation_angle_types.py +1 -1
- wandelbots_api_client/models/rotation_angles.py +1 -1
- wandelbots_api_client/models/safety_configuration.py +1 -1
- wandelbots_api_client/models/safety_setup.py +1 -1
- wandelbots_api_client/models/safety_setup_safety_settings.py +1 -1
- wandelbots_api_client/models/safety_setup_safety_zone.py +1 -1
- wandelbots_api_client/models/safety_zone.py +1 -1
- wandelbots_api_client/models/safety_zone_limits.py +1 -1
- wandelbots_api_client/models/safety_zone_violation.py +1 -1
- wandelbots_api_client/models/service_status.py +1 -1
- wandelbots_api_client/models/service_status_phase.py +1 -1
- wandelbots_api_client/models/service_status_severity.py +1 -1
- wandelbots_api_client/models/service_status_status.py +1 -1
- wandelbots_api_client/models/set_io.py +1 -1
- wandelbots_api_client/models/set_playback_speed.py +1 -1
- wandelbots_api_client/models/single_joint_limit.py +1 -1
- wandelbots_api_client/models/singularity.py +1 -1
- wandelbots_api_client/models/singularity_type_enum.py +1 -1
- wandelbots_api_client/models/sphere.py +1 -1
- wandelbots_api_client/models/sphere2.py +1 -1
- wandelbots_api_client/models/sphere3.py +1 -1
- wandelbots_api_client/models/standstill.py +1 -1
- wandelbots_api_client/models/standstill_reason.py +1 -1
- wandelbots_api_client/models/standstill_standstill.py +1 -1
- wandelbots_api_client/models/start_movement_request.py +1 -1
- wandelbots_api_client/models/start_on_io.py +1 -1
- wandelbots_api_client/models/status.py +1 -1
- wandelbots_api_client/models/stop_response.py +1 -1
- wandelbots_api_client/models/store_value.py +1 -1
- wandelbots_api_client/models/stream_move_backward.py +1 -1
- wandelbots_api_client/models/stream_move_forward.py +1 -1
- wandelbots_api_client/models/stream_move_playback_speed.py +1 -1
- wandelbots_api_client/models/stream_move_request.py +1 -1
- wandelbots_api_client/models/stream_move_response.py +1 -1
- wandelbots_api_client/models/stream_move_to_trajectory.py +1 -1
- wandelbots_api_client/models/stream_stop.py +1 -1
- wandelbots_api_client/models/tcp_pose.py +1 -1
- wandelbots_api_client/models/tcp_pose_request.py +1 -1
- wandelbots_api_client/models/tool_geometry.py +1 -1
- wandelbots_api_client/models/trajectory_sample.py +1 -1
- wandelbots_api_client/models/trigger_object.py +1 -1
- wandelbots_api_client/models/trigger_type.py +1 -1
- wandelbots_api_client/models/universalrobots_controller.py +1 -1
- wandelbots_api_client/models/update_nova_version_request.py +1 -1
- wandelbots_api_client/models/update_program_metadata_request.py +1 -1
- wandelbots_api_client/models/update_recipe_metadata_request.py +1 -1
- wandelbots_api_client/models/update_trigger_request.py +1 -1
- wandelbots_api_client/models/validation_error.py +1 -1
- wandelbots_api_client/models/validation_error2.py +1 -1
- wandelbots_api_client/models/validation_error2_loc_inner.py +1 -1
- wandelbots_api_client/models/validation_error_loc_inner.py +1 -1
- wandelbots_api_client/models/value.py +1 -1
- wandelbots_api_client/models/vector3d.py +1 -1
- wandelbots_api_client/models/version_number.py +1 -1
- wandelbots_api_client/models/virtual_controller.py +1 -1
- wandelbots_api_client/models/virtual_controller_types.py +4 -4
- wandelbots_api_client/models/virtual_robot_configuration.py +1 -1
- wandelbots_api_client/models/yaskawa_controller.py +1 -1
- wandelbots_api_client/rest.py +1 -1
- wandelbots_api_client/v2/__init__.py +1 -1
- wandelbots_api_client/v2/api/__init__.py +2 -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/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 +5 -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/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/jogging_api.py +1 -1
- wandelbots_api_client/v2_pydantic/api/motion_group_models_api.py +536 -2
- 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 +423 -499
- wandelbots_api_client/v2_pydantic/virtual_controller_types.py +126 -0
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/METADATA +3 -3
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/RECORD +354 -350
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/WHEEL +0 -0
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/licenses/LICENSE +0 -0
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/top_level.txt +0 -0
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
2
|
# filename: public.openapi.yaml
|
|
3
|
-
# timestamp:
|
|
3
|
+
# timestamp: 2026-01-10T00:12:37+00:00
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
7
|
from datetime import date
|
|
8
8
|
from enum import Enum
|
|
9
9
|
from pathlib import Path
|
|
10
|
-
from typing import Annotated, Any,
|
|
10
|
+
from typing import Annotated, Any, Literal
|
|
11
11
|
|
|
12
12
|
from pydantic import AwareDatetime, BaseModel, EmailStr, Field, RootModel
|
|
13
|
+
from .virtual_controller_types import VirtualControllerTypes
|
|
13
14
|
|
|
14
15
|
|
|
15
16
|
class NameList(RootModel):
|
|
@@ -17,7 +18,7 @@ class NameList(RootModel):
|
|
|
17
18
|
A list of names
|
|
18
19
|
"""
|
|
19
20
|
|
|
20
|
-
root:
|
|
21
|
+
root: list[str]
|
|
21
22
|
"""
|
|
22
23
|
A list of names
|
|
23
24
|
"""
|
|
@@ -127,7 +128,7 @@ class KukaController(BaseModel):
|
|
|
127
128
|
"""
|
|
128
129
|
The RSI server runs inside of the cell.
|
|
129
130
|
"""
|
|
130
|
-
slow_cycle_rate:
|
|
131
|
+
slow_cycle_rate: bool | None = False
|
|
131
132
|
"""
|
|
132
133
|
If true, uses slower cycle time of 12ms instead of 4ms.
|
|
133
134
|
|
|
@@ -151,130 +152,6 @@ class Manufacturer(Enum):
|
|
|
151
152
|
YASKAWA = 'yaskawa'
|
|
152
153
|
|
|
153
154
|
|
|
154
|
-
class VirtualControllerTypes(Enum):
|
|
155
|
-
ABB_IRB1010_037_15 = 'abb-irb1010_037_15'
|
|
156
|
-
ABB_IRB1100_0475_4 = 'abb-irb1100_0475_4'
|
|
157
|
-
ABB_IRB1100_058_4 = 'abb-irb1100_058_4'
|
|
158
|
-
ABB_IRB1200_7 = 'abb-irb1200_7'
|
|
159
|
-
ABB_IRB1300_09_11 = 'abb-irb1300_09_11'
|
|
160
|
-
ABB_IRB1300_115_10 = 'abb-irb1300_115_10'
|
|
161
|
-
ABB_IRB1300_14_12 = 'abb-irb1300_14_12'
|
|
162
|
-
ABB_IRB1300_14_7 = 'abb-irb1300_14_7'
|
|
163
|
-
ABB_IRB1600_12_10 = 'abb-irb1600_12_10'
|
|
164
|
-
ABB_IRB1600_12_6 = 'abb-irb1600_12_6'
|
|
165
|
-
ABB_IRB1600_145_10 = 'abb-irb1600_145_10'
|
|
166
|
-
ABB_IRB1600_145_6 = 'abb-irb1600_145_6'
|
|
167
|
-
ABB_IRB2600_ID_185_15 = 'abb-irb2600ID_185_15'
|
|
168
|
-
ABB_IRB2600_ID_200_8 = 'abb-irb2600ID_200_8'
|
|
169
|
-
ABB_IRB2600_165_12 = 'abb-irb2600_165_12'
|
|
170
|
-
ABB_IRB2600_165_20 = 'abb-irb2600_165_20'
|
|
171
|
-
ABB_IRB2600_185_12 = 'abb-irb2600_185_12'
|
|
172
|
-
ABB_IRB4600_205_45 = 'abb-irb4600_205_45'
|
|
173
|
-
ABB_IRB4600_205_60 = 'abb-irb4600_205_60'
|
|
174
|
-
ABB_IRB4600_250_20 = 'abb-irb4600_250_20'
|
|
175
|
-
ABB_IRB4600_255_40 = 'abb-irb4600_255_40'
|
|
176
|
-
ABB_IRB6730_210_310 = 'abb-irb6730_210_310'
|
|
177
|
-
ABB_IRB6730_240_290 = 'abb-irb6730_240_290'
|
|
178
|
-
FANUC_ARC_MATE_100I_D = 'fanuc-arc_mate_100iD'
|
|
179
|
-
FANUC_ARC_MATE_100I_D16_S = 'fanuc-arc_mate_100iD16S'
|
|
180
|
-
FANUC_ARC_MATE_120I_D = 'fanuc-arc_mate_120iD'
|
|
181
|
-
FANUC_ARC_MATE_120I_D12_L = 'fanuc-arc_mate_120iD12L'
|
|
182
|
-
FANUC_ARC_MATE_120I_D35 = 'fanuc-arc_mate_120iD35'
|
|
183
|
-
FANUC_CR35IB = 'fanuc-cr35ib'
|
|
184
|
-
FANUC_CR7IA = 'fanuc-cr7ia'
|
|
185
|
-
FANUC_CR7IAL = 'fanuc-cr7ial'
|
|
186
|
-
FANUC_CRX10IA = 'fanuc-crx10ia'
|
|
187
|
-
FANUC_CRX10IAL = 'fanuc-crx10ial'
|
|
188
|
-
FANUC_CRX20IAL = 'fanuc-crx20ial'
|
|
189
|
-
FANUC_CRX25IA = 'fanuc-crx25ia'
|
|
190
|
-
FANUC_CRX30IA = 'fanuc-crx30ia'
|
|
191
|
-
FANUC_CRX5IA = 'fanuc-crx5ia'
|
|
192
|
-
FANUC_LR_MATE_200I_D = 'fanuc-lr_mate_200iD'
|
|
193
|
-
FANUC_LR_MATE_200I_D4_S = 'fanuc-lr_mate_200iD4S'
|
|
194
|
-
FANUC_LR_MATE_200I_D7_L = 'fanuc-lr_mate_200iD7L'
|
|
195
|
-
FANUC_M10I_D12 = 'fanuc-m10iD12'
|
|
196
|
-
FANUC_M10I_D16_S = 'fanuc-m10iD16S'
|
|
197
|
-
FANUC_M20I_D25 = 'fanuc-m20iD25'
|
|
198
|
-
FANUC_M20I_D35 = 'fanuc-m20iD35'
|
|
199
|
-
FANUC_M710I_C20_L = 'fanuc-m710iC20L'
|
|
200
|
-
FANUC_M900I_B280_L = 'fanuc-m900iB280L'
|
|
201
|
-
FANUC_M900I_B360_E = 'fanuc-m900iB360E'
|
|
202
|
-
FANUC_R2000IC125L = 'fanuc-r2000ic125l'
|
|
203
|
-
FANUC_R2000IC210F = 'fanuc-r2000ic210f'
|
|
204
|
-
KUKA_KR10_R1100 = 'kuka-kr10_r1100'
|
|
205
|
-
KUKA_KR10_R1100_2 = 'kuka-kr10_r1100_2'
|
|
206
|
-
KUKA_KR10_R900 = 'kuka-kr10_r900'
|
|
207
|
-
KUKA_KR10_R900_2 = 'kuka-kr10_r900_2'
|
|
208
|
-
KUKA_KR120_R2700_2 = 'kuka-kr120_r2700_2'
|
|
209
|
-
KUKA_KR12_R1810_2 = 'kuka-kr12_r1810_2'
|
|
210
|
-
KUKA_KR150_R2 = 'kuka-kr150_r2'
|
|
211
|
-
KUKA_KR16_R1610_2 = 'kuka-kr16_r1610_2'
|
|
212
|
-
KUKA_KR16_R2010_2 = 'kuka-kr16_r2010_2'
|
|
213
|
-
KUKA_KR20_R1810 = 'kuka-kr20_r1810'
|
|
214
|
-
KUKA_KR20_R1810_2 = 'kuka-kr20_r1810_2'
|
|
215
|
-
KUKA_KR120_R3100_2 = 'kuka-kr120_r3100_2'
|
|
216
|
-
KUKA_KR120_R3900_2_K = 'kuka-kr120_r3900_2_k'
|
|
217
|
-
KUKA_KR210_R2700_EXTRA = 'kuka-kr210_r2700_extra'
|
|
218
|
-
KUKA_KR210_R2700_2 = 'kuka-kr210_r2700_2'
|
|
219
|
-
KUKA_KR210_R3100_2 = 'kuka-kr210_r3100_2'
|
|
220
|
-
KUKA_KR210_R3300_2 = 'kuka-kr210_r3300_2'
|
|
221
|
-
KUKA_KR240_R2700 = 'kuka-kr240_r2700'
|
|
222
|
-
KUKA_KR240_R2900 = 'kuka-kr240_r2900'
|
|
223
|
-
KUKA_KR240_R3700_2 = 'kuka-kr240_r3700_2'
|
|
224
|
-
KUKA_KR250_R2700_2 = 'kuka-kr250_r2700_2'
|
|
225
|
-
KUKA_KR270_R2700 = 'kuka-kr270_r2700'
|
|
226
|
-
KUKA_KR30_R2100 = 'kuka-kr30_r2100'
|
|
227
|
-
KUKA_KR30_R3 = 'kuka-kr30_r3'
|
|
228
|
-
KUKA_KR360_L240_3 = 'kuka-kr360_l240_3'
|
|
229
|
-
KUKA_KR3_R540 = 'kuka-kr3_r540'
|
|
230
|
-
KUKA_KR4_R600 = 'kuka-kr4_r600'
|
|
231
|
-
KUKA_KR500_L340_3 = 'kuka-kr500_l340_3'
|
|
232
|
-
KUKA_KR50_R2500 = 'kuka-kr50_r2500'
|
|
233
|
-
KUKA_KR60_R3 = 'kuka-kr60_r3'
|
|
234
|
-
KUKA_KR6_R1820 = 'kuka-kr6_r1820'
|
|
235
|
-
KUKA_KR6_R700_2 = 'kuka-kr6_r700_2'
|
|
236
|
-
KUKA_KR6_R700_SIXX = 'kuka-kr6_r700_sixx'
|
|
237
|
-
KUKA_KR6_R900 = 'kuka-kr6_r900'
|
|
238
|
-
KUKA_KR6_R900_2 = 'kuka-kr6_r900_2'
|
|
239
|
-
KUKA_KR70_R2100 = 'kuka-kr70_r2100'
|
|
240
|
-
KUKA_LBR_IISY_11_R1300 = 'kuka-lbr_iisy_11_r1300'
|
|
241
|
-
UNIVERSALROBOTS_UR10CB = 'universalrobots-ur10cb'
|
|
242
|
-
UNIVERSALROBOTS_UR10E = 'universalrobots-ur10e'
|
|
243
|
-
UNIVERSALROBOTS_UR12E = 'universalrobots-ur12e'
|
|
244
|
-
UNIVERSALROBOTS_UR16E = 'universalrobots-ur16e'
|
|
245
|
-
UNIVERSALROBOTS_UR20E = 'universalrobots-ur20e'
|
|
246
|
-
UNIVERSALROBOTS_UR3E = 'universalrobots-ur3e'
|
|
247
|
-
UNIVERSALROBOTS_UR5CB = 'universalrobots-ur5cb'
|
|
248
|
-
UNIVERSALROBOTS_UR5E = 'universalrobots-ur5e'
|
|
249
|
-
UNIVERSALROBOTS_UR7E = 'universalrobots-ur7e'
|
|
250
|
-
YASKAWA_AR1440 = 'yaskawa-ar1440'
|
|
251
|
-
YASKAWA_AR1730 = 'yaskawa-ar1730'
|
|
252
|
-
YASKAWA_AR2010 = 'yaskawa-ar2010'
|
|
253
|
-
YASKAWA_AR3120 = 'yaskawa-ar3120'
|
|
254
|
-
YASKAWA_AR700 = 'yaskawa-ar700'
|
|
255
|
-
YASKAWA_AR900 = 'yaskawa-ar900'
|
|
256
|
-
YASKAWA_GP110 = 'yaskawa-gp110'
|
|
257
|
-
YASKAWA_GP12 = 'yaskawa-gp12'
|
|
258
|
-
YASKAWA_GP180 = 'yaskawa-gp180'
|
|
259
|
-
YASKAWA_GP180_120 = 'yaskawa-gp180-120'
|
|
260
|
-
YASKAWA_GP20HL = 'yaskawa-gp20hl'
|
|
261
|
-
YASKAWA_GP215 = 'yaskawa-gp215'
|
|
262
|
-
YASKAWA_GP225 = 'yaskawa-gp225'
|
|
263
|
-
YASKAWA_GP25 = 'yaskawa-gp25'
|
|
264
|
-
YASKAWA_GP250 = 'yaskawa-gp250'
|
|
265
|
-
YASKAWA_GP25_12 = 'yaskawa-gp25_12'
|
|
266
|
-
YASKAWA_GP280 = 'yaskawa-gp280'
|
|
267
|
-
YASKAWA_GP35_L = 'yaskawa-gp35L'
|
|
268
|
-
YASKAWA_GP400 = 'yaskawa-gp400'
|
|
269
|
-
YASKAWA_GP50 = 'yaskawa-gp50'
|
|
270
|
-
YASKAWA_GP600 = 'yaskawa-gp600'
|
|
271
|
-
YASKAWA_GP7 = 'yaskawa-gp7'
|
|
272
|
-
YASKAWA_GP8 = 'yaskawa-gp8'
|
|
273
|
-
YASKAWA_GP88 = 'yaskawa-gp88'
|
|
274
|
-
YASKAWA_HC10DTP = 'yaskawa-hc10dtp'
|
|
275
|
-
YASKAWA_HC20DTP = 'yaskawa-hc20dtp'
|
|
276
|
-
|
|
277
|
-
|
|
278
155
|
class VirtualController(BaseModel):
|
|
279
156
|
"""
|
|
280
157
|
The configuration of a virtual robot controller has to contain the manufacturer string,
|
|
@@ -284,15 +161,40 @@ class VirtualController(BaseModel):
|
|
|
284
161
|
|
|
285
162
|
kind: Literal['VirtualController'] = 'VirtualController'
|
|
286
163
|
manufacturer: Manufacturer
|
|
287
|
-
type:
|
|
288
|
-
|
|
164
|
+
type: Annotated[
|
|
165
|
+
str | None,
|
|
166
|
+
Field(
|
|
167
|
+
examples=[
|
|
168
|
+
'abb-irb1200_7',
|
|
169
|
+
'abb-irb1010_037_15',
|
|
170
|
+
'abb-irb2600ID_200_8',
|
|
171
|
+
'fanuc-arc_mate_120iD12L',
|
|
172
|
+
'fanuc-crx10ial',
|
|
173
|
+
'fanuc-lr_mate_200iD4S',
|
|
174
|
+
'fanuc-r2000ic125l',
|
|
175
|
+
'kuka-kr10_r1100_2',
|
|
176
|
+
'kuka-kr210_r2700_extra',
|
|
177
|
+
'kuka-lbr_iisy_11_r1300',
|
|
178
|
+
'universalrobots-ur10cb',
|
|
179
|
+
'yaskawa-ar1440',
|
|
180
|
+
'yaskawa-gp180-120',
|
|
181
|
+
'yaskawa-hc20dtp',
|
|
182
|
+
]
|
|
183
|
+
),
|
|
184
|
+
] = None
|
|
185
|
+
"""
|
|
186
|
+
Preset type of the virtual robot controller.
|
|
187
|
+
See [getRobotConfigurations](getRobotConfigurations) for supported types.
|
|
188
|
+
|
|
189
|
+
"""
|
|
190
|
+
json_: Annotated[str | None, Field(alias='json')] = None
|
|
289
191
|
"""
|
|
290
192
|
Complete JSON configuration of the virtual robot controller.
|
|
291
193
|
Can be obtained from the physical controller's configuration via [getVirtualControllerConfiguration](getVirtualControllerConfiguration).
|
|
292
194
|
If provided, the `type` field should not be used.
|
|
293
195
|
|
|
294
196
|
"""
|
|
295
|
-
initial_joint_position:
|
|
197
|
+
initial_joint_position: str | None = None
|
|
296
198
|
"""
|
|
297
199
|
Initial joint position of the first motion group from the virtual robot controller.
|
|
298
200
|
Provide the joint position as a JSON array containing 7 float values,
|
|
@@ -323,14 +225,12 @@ class RobotController(BaseModel):
|
|
|
323
225
|
|
|
324
226
|
"""
|
|
325
227
|
configuration: Annotated[
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
YaskawaController,
|
|
333
|
-
],
|
|
228
|
+
AbbController
|
|
229
|
+
| FanucController
|
|
230
|
+
| KukaController
|
|
231
|
+
| UniversalrobotsController
|
|
232
|
+
| VirtualController
|
|
233
|
+
| YaskawaController,
|
|
334
234
|
Field(discriminator='kind'),
|
|
335
235
|
]
|
|
336
236
|
|
|
@@ -360,8 +260,8 @@ class ContainerImage(BaseModel):
|
|
|
360
260
|
"""
|
|
361
261
|
The location of a container image in the form of `<registry>/<image>:<tag>`.
|
|
362
262
|
"""
|
|
363
|
-
credentials:
|
|
364
|
-
secrets:
|
|
263
|
+
credentials: ImageCredentials | None = None
|
|
264
|
+
secrets: list[Secret] | None = None
|
|
365
265
|
"""
|
|
366
266
|
Known secrets for authentication with the container registry.
|
|
367
267
|
"""
|
|
@@ -379,7 +279,7 @@ class ContainerEnvironment(RootModel):
|
|
|
379
279
|
|
|
380
280
|
"""
|
|
381
281
|
|
|
382
|
-
root:
|
|
282
|
+
root: list[ContainerEnvironmentItem]
|
|
383
283
|
"""
|
|
384
284
|
A list of environment variables with name and their value.
|
|
385
285
|
These can be used to configure the containerized application, and turn features on or off.
|
|
@@ -446,11 +346,11 @@ class ContainerResources(BaseModel):
|
|
|
446
346
|
Additional resources that the application requires.
|
|
447
347
|
"""
|
|
448
348
|
|
|
449
|
-
intel_gpu: Annotated[
|
|
349
|
+
intel_gpu: Annotated[int | None, Field(ge=0, le=1)] = None
|
|
450
350
|
"""
|
|
451
351
|
Number of GPUs the application requires.
|
|
452
352
|
"""
|
|
453
|
-
memory_limit: Annotated[
|
|
353
|
+
memory_limit: Annotated[str | None, Field(examples=['1000Mi'])] = None
|
|
454
354
|
"""
|
|
455
355
|
The maximum memory allocated to this application.
|
|
456
356
|
"""
|
|
@@ -478,14 +378,14 @@ class App(BaseModel):
|
|
|
478
378
|
The path of the icon for the App (/$cell/$name/$app_icon).
|
|
479
379
|
"""
|
|
480
380
|
container_image: ContainerImage
|
|
481
|
-
port:
|
|
381
|
+
port: int | None = 8080
|
|
482
382
|
"""
|
|
483
383
|
The port the containerized webserver is listening on.
|
|
484
384
|
"""
|
|
485
|
-
environment:
|
|
486
|
-
storage:
|
|
487
|
-
resources:
|
|
488
|
-
health_path:
|
|
385
|
+
environment: ContainerEnvironment | None = None
|
|
386
|
+
storage: ContainerStorage | None = None
|
|
387
|
+
resources: ContainerResources | None = None
|
|
388
|
+
health_path: str | None = None
|
|
489
389
|
"""
|
|
490
390
|
Defines the URL path suffix used to check the application's health status. The complete health check URL
|
|
491
391
|
is constructed as `/$cell/$name/$health_path`. When the application is working as expected,
|
|
@@ -498,7 +398,7 @@ class App(BaseModel):
|
|
|
498
398
|
automatically restart the application container to restore service.
|
|
499
399
|
|
|
500
400
|
"""
|
|
501
|
-
diagnosis_path:
|
|
401
|
+
diagnosis_path: str | None = None
|
|
502
402
|
"""
|
|
503
403
|
Defines the URL path suffix used to provide an endpoint for diagnosis data collection.
|
|
504
404
|
The complete diagnosis check URL is constructed as `/$cell/$name/$diagnosis_path`.
|
|
@@ -518,13 +418,13 @@ class Cell(BaseModel):
|
|
|
518
418
|
"""
|
|
519
419
|
|
|
520
420
|
name: CellName
|
|
521
|
-
description:
|
|
522
|
-
controllers:
|
|
523
|
-
apps:
|
|
421
|
+
description: CellDescription | None = None
|
|
422
|
+
controllers: list[RobotController] | None = None
|
|
423
|
+
apps: list[App] | None = None
|
|
524
424
|
|
|
525
425
|
|
|
526
426
|
class Error(BaseModel):
|
|
527
|
-
code:
|
|
427
|
+
code: str | None = None
|
|
528
428
|
message: str
|
|
529
429
|
|
|
530
430
|
|
|
@@ -570,7 +470,7 @@ class ServiceStatusPhase(Enum):
|
|
|
570
470
|
class Status(BaseModel):
|
|
571
471
|
severity: ServiceStatusSeverity
|
|
572
472
|
code: ServiceStatusPhase
|
|
573
|
-
reason:
|
|
473
|
+
reason: str | None = None
|
|
574
474
|
|
|
575
475
|
|
|
576
476
|
class ServiceStatus(BaseModel):
|
|
@@ -580,7 +480,7 @@ class ServiceStatus(BaseModel):
|
|
|
580
480
|
|
|
581
481
|
|
|
582
482
|
class ServiceStatusList(RootModel):
|
|
583
|
-
root:
|
|
483
|
+
root: list[ServiceStatus]
|
|
584
484
|
|
|
585
485
|
def __getitem__(self, index: int) -> ServiceStatus:
|
|
586
486
|
"""
|
|
@@ -644,14 +544,14 @@ class BusIOProfinetIpConfig(BaseModel):
|
|
|
644
544
|
|
|
645
545
|
|
|
646
546
|
class BusIOProfinetNetwork(BaseModel):
|
|
647
|
-
device_name: Annotated[
|
|
547
|
+
device_name: Annotated[str | None, Field(examples=['pnDevice'])] = None
|
|
648
548
|
"""
|
|
649
549
|
Name of Station (NoS) of the PROFINET device. The NoS is used in combination with IPv4 record to identify your device in the PROFINET network.
|
|
650
550
|
The `device_name` will be used as NoS if no REMA XML file is already present on your machine and no `rema_xml_content` is provided.
|
|
651
551
|
|
|
652
552
|
"""
|
|
653
|
-
ip_config:
|
|
654
|
-
rema_xml_content:
|
|
553
|
+
ip_config: BusIOProfinetIpConfig | None = None
|
|
554
|
+
rema_xml_content: str | None = None
|
|
655
555
|
"""
|
|
656
556
|
Content of the PROFINET REMA XML file.
|
|
657
557
|
Is used when PROFINET service is added for the first time to create the REMA XML file that holds data to be kept for the next session.
|
|
@@ -690,7 +590,7 @@ class BusIOProfinet(BaseModel):
|
|
|
690
590
|
"""
|
|
691
591
|
|
|
692
592
|
bus_type: Literal['profinet'] = 'profinet'
|
|
693
|
-
network_config:
|
|
593
|
+
network_config: BusIOProfinetNetwork | None = None
|
|
694
594
|
"""
|
|
695
595
|
Used to enable IP communication through the same physical ethernet interface while PROFINET driver is active.
|
|
696
596
|
|
|
@@ -709,7 +609,9 @@ class BusIOProfinet(BaseModel):
|
|
|
709
609
|
MAC address of the physical ethernet interface that you want to use for PROFINET communication.
|
|
710
610
|
|
|
711
611
|
"""
|
|
712
|
-
default_route:
|
|
612
|
+
default_route: Annotated[
|
|
613
|
+
BusIOProfinetDefaultRoute | None, Field(deprecated=True)
|
|
614
|
+
] = None
|
|
713
615
|
|
|
714
616
|
|
|
715
617
|
class BusIOProfinetVirtual(BaseModel):
|
|
@@ -722,7 +624,7 @@ class BusIOProfinetVirtual(BaseModel):
|
|
|
722
624
|
|
|
723
625
|
|
|
724
626
|
class BusIOModbusTCPServer(BaseModel):
|
|
725
|
-
network_type:
|
|
627
|
+
network_type: Literal['tcp'] | None = None
|
|
726
628
|
port: Annotated[int, Field(examples=[502], ge=1, le=65534)]
|
|
727
629
|
"""
|
|
728
630
|
Port number of the MODBUS server to establish communication with.
|
|
@@ -766,7 +668,7 @@ class BusIOModbusServer(BaseModel):
|
|
|
766
668
|
|
|
767
669
|
|
|
768
670
|
class BusIOModbusTCPClient(BaseModel):
|
|
769
|
-
network_type:
|
|
671
|
+
network_type: Literal['tcp'] | None = None
|
|
770
672
|
ip: Annotated[str, Field(examples=['192.168.1.100'])]
|
|
771
673
|
"""
|
|
772
674
|
IP address of the MODBUS server to establish communication with.
|
|
@@ -800,13 +702,11 @@ class BusIOModbusVirtual(BaseModel):
|
|
|
800
702
|
|
|
801
703
|
class BusIOType(RootModel):
|
|
802
704
|
root: Annotated[
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
BusIOModbusVirtual,
|
|
809
|
-
],
|
|
705
|
+
BusIOProfinet
|
|
706
|
+
| BusIOProfinetVirtual
|
|
707
|
+
| BusIOModbusServer
|
|
708
|
+
| BusIOModbusClient
|
|
709
|
+
| BusIOModbusVirtual,
|
|
810
710
|
Field(discriminator='bus_type'),
|
|
811
711
|
]
|
|
812
712
|
|
|
@@ -845,7 +745,7 @@ class Metadata(RootModel):
|
|
|
845
745
|
Additional metadata to add to the backup
|
|
846
746
|
"""
|
|
847
747
|
|
|
848
|
-
root:
|
|
748
|
+
root: dict[str, str]
|
|
849
749
|
|
|
850
750
|
|
|
851
751
|
class ConfigurationArchive(RootModel):
|
|
@@ -883,11 +783,9 @@ class ConfigurationArchiveStatusSuccess(BaseModel):
|
|
|
883
783
|
|
|
884
784
|
class ConfigurationArchiveStatus(RootModel):
|
|
885
785
|
root: Annotated[
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
ConfigurationArchiveStatusSuccess,
|
|
890
|
-
],
|
|
786
|
+
ConfigurationArchiveStatusCreating
|
|
787
|
+
| ConfigurationArchiveStatusError
|
|
788
|
+
| ConfigurationArchiveStatusSuccess,
|
|
891
789
|
Field(discriminator='status'),
|
|
892
790
|
]
|
|
893
791
|
"""
|
|
@@ -925,7 +823,7 @@ class License(BaseModel):
|
|
|
925
823
|
"""
|
|
926
824
|
Identification key of the license.
|
|
927
825
|
"""
|
|
928
|
-
license_expiry_date:
|
|
826
|
+
license_expiry_date: date | None = None
|
|
929
827
|
"""
|
|
930
828
|
Expiration date of the license.
|
|
931
829
|
"""
|
|
@@ -941,11 +839,11 @@ class License(BaseModel):
|
|
|
941
839
|
"""
|
|
942
840
|
Amount of times the license can be activated.
|
|
943
841
|
"""
|
|
944
|
-
feature_limitations:
|
|
842
|
+
feature_limitations: dict[str, int] | None = None
|
|
945
843
|
"""
|
|
946
844
|
Feature limitations of the license.
|
|
947
845
|
"""
|
|
948
|
-
feature_flags:
|
|
846
|
+
feature_flags: list[str] | None = None
|
|
949
847
|
"""
|
|
950
848
|
Features enabled by a license.
|
|
951
849
|
"""
|
|
@@ -1101,7 +999,7 @@ class Vector3d(RootModel):
|
|
|
1101
999
|
|
|
1102
1000
|
"""
|
|
1103
1001
|
|
|
1104
|
-
root: Annotated[
|
|
1002
|
+
root: Annotated[list[float], Field(max_length=3, min_length=3, title='Vector3d')]
|
|
1105
1003
|
"""
|
|
1106
1004
|
A three-dimensional vector [x, y, z] with double precision.
|
|
1107
1005
|
|
|
@@ -1138,7 +1036,7 @@ class ConvexHull(BaseModel):
|
|
|
1138
1036
|
"""
|
|
1139
1037
|
|
|
1140
1038
|
shape_type: Literal['convex_hull'] = 'convex_hull'
|
|
1141
|
-
vertices:
|
|
1039
|
+
vertices: list[Vector3d]
|
|
1142
1040
|
"""
|
|
1143
1041
|
The list of encapsulated points.
|
|
1144
1042
|
"""
|
|
@@ -1154,7 +1052,7 @@ class RotationVector(RootModel):
|
|
|
1154
1052
|
"""
|
|
1155
1053
|
|
|
1156
1054
|
root: Annotated[
|
|
1157
|
-
|
|
1055
|
+
list[float], Field(max_length=3, min_length=3, title='RotationVector')
|
|
1158
1056
|
]
|
|
1159
1057
|
"""
|
|
1160
1058
|
Defines a rotation in 3D space.
|
|
@@ -1197,8 +1095,8 @@ class Pose(BaseModel):
|
|
|
1197
1095
|
|
|
1198
1096
|
"""
|
|
1199
1097
|
|
|
1200
|
-
position:
|
|
1201
|
-
orientation:
|
|
1098
|
+
position: Vector3d | None = None
|
|
1099
|
+
orientation: RotationVector | None = None
|
|
1202
1100
|
|
|
1203
1101
|
|
|
1204
1102
|
class Collider(BaseModel):
|
|
@@ -1216,27 +1114,25 @@ class Collider(BaseModel):
|
|
|
1216
1114
|
"""
|
|
1217
1115
|
|
|
1218
1116
|
shape: Annotated[
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
ConvexHull,
|
|
1228
|
-
],
|
|
1117
|
+
Sphere
|
|
1118
|
+
| Box
|
|
1119
|
+
| Rectangle
|
|
1120
|
+
| Plane
|
|
1121
|
+
| Cylinder
|
|
1122
|
+
| Capsule
|
|
1123
|
+
| RectangularCapsule
|
|
1124
|
+
| ConvexHull,
|
|
1229
1125
|
Field(discriminator='shape_type'),
|
|
1230
1126
|
]
|
|
1231
|
-
pose:
|
|
1232
|
-
margin:
|
|
1127
|
+
pose: Pose | None = None
|
|
1128
|
+
margin: float | None = 0
|
|
1233
1129
|
"""
|
|
1234
1130
|
Increases the shape's size in all dimensions. Applied in [mm]. Can be used to keep a safe distance to the shape.
|
|
1235
1131
|
"""
|
|
1236
1132
|
|
|
1237
1133
|
|
|
1238
1134
|
class Link(RootModel):
|
|
1239
|
-
root:
|
|
1135
|
+
root: dict[str, Collider]
|
|
1240
1136
|
|
|
1241
1137
|
|
|
1242
1138
|
class LinkChain(RootModel):
|
|
@@ -1257,7 +1153,7 @@ class LinkChain(RootModel):
|
|
|
1257
1153
|
"""
|
|
1258
1154
|
|
|
1259
1155
|
root: Annotated[
|
|
1260
|
-
|
|
1156
|
+
list[Link],
|
|
1261
1157
|
Field(
|
|
1262
1158
|
examples=[
|
|
1263
1159
|
[
|
|
@@ -1335,7 +1231,7 @@ class ControllerDescription(BaseModel):
|
|
|
1335
1231
|
The data type to describe a robot controller.
|
|
1336
1232
|
"""
|
|
1337
1233
|
|
|
1338
|
-
connected_motion_groups:
|
|
1234
|
+
connected_motion_groups: list[str]
|
|
1339
1235
|
supports_freedrive: bool
|
|
1340
1236
|
"""
|
|
1341
1237
|
Can this controller be moved through freedrive (true), or not (false).
|
|
@@ -1462,7 +1358,7 @@ class Joints(RootModel):
|
|
|
1462
1358
|
|
|
1463
1359
|
"""
|
|
1464
1360
|
|
|
1465
|
-
root:
|
|
1361
|
+
root: list[float]
|
|
1466
1362
|
"""
|
|
1467
1363
|
This structure describes a set of joint values, e.g., positions, currents, torques, of a motion group.
|
|
1468
1364
|
|
|
@@ -1502,7 +1398,7 @@ class MotionGroupStateJointLimitReached(BaseModel):
|
|
|
1502
1398
|
|
|
1503
1399
|
"""
|
|
1504
1400
|
|
|
1505
|
-
limit_reached:
|
|
1401
|
+
limit_reached: list[bool]
|
|
1506
1402
|
"""
|
|
1507
1403
|
If true, operational (soft) jointLimit is reached for specific joint.
|
|
1508
1404
|
"""
|
|
@@ -1546,7 +1442,7 @@ class JoggingPausedNearJointLimit(BaseModel):
|
|
|
1546
1442
|
"""
|
|
1547
1443
|
|
|
1548
1444
|
kind: Literal['PAUSED_NEAR_JOINT_LIMIT'] = 'PAUSED_NEAR_JOINT_LIMIT'
|
|
1549
|
-
joint_indices:
|
|
1445
|
+
joint_indices: list[JointIndice]
|
|
1550
1446
|
|
|
1551
1447
|
|
|
1552
1448
|
class JoggingPausedNearCollision(BaseModel):
|
|
@@ -1573,13 +1469,11 @@ class JoggingDetails(BaseModel):
|
|
|
1573
1469
|
"""
|
|
1574
1470
|
|
|
1575
1471
|
state: Annotated[
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
JoggingPausedNearCollision,
|
|
1582
|
-
],
|
|
1472
|
+
JoggingRunning
|
|
1473
|
+
| JoggingPausedByUser
|
|
1474
|
+
| JoggingPausedOnIO
|
|
1475
|
+
| JoggingPausedNearJointLimit
|
|
1476
|
+
| JoggingPausedNearCollision,
|
|
1583
1477
|
Field(discriminator='kind'),
|
|
1584
1478
|
]
|
|
1585
1479
|
kind: Literal['JOGGING'] = 'JOGGING'
|
|
@@ -1670,13 +1564,11 @@ class TrajectoryDetails(BaseModel):
|
|
|
1670
1564
|
"""
|
|
1671
1565
|
location: Location
|
|
1672
1566
|
state: Annotated[
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
|
-
|
|
1676
|
-
|
|
1677
|
-
|
|
1678
|
-
TrajectoryPausedOnIO,
|
|
1679
|
-
],
|
|
1567
|
+
TrajectoryRunning
|
|
1568
|
+
| TrajectoryPausedByUser
|
|
1569
|
+
| TrajectoryEnded
|
|
1570
|
+
| TrajectoryWaitForIO
|
|
1571
|
+
| TrajectoryPausedOnIO,
|
|
1680
1572
|
Field(discriminator='kind'),
|
|
1681
1573
|
]
|
|
1682
1574
|
kind: Literal['TRAJECTORY'] = 'TRAJECTORY'
|
|
@@ -1694,13 +1586,13 @@ class Execute(BaseModel):
|
|
|
1694
1586
|
|
|
1695
1587
|
"""
|
|
1696
1588
|
|
|
1697
|
-
joint_position:
|
|
1589
|
+
joint_position: list[float]
|
|
1698
1590
|
"""
|
|
1699
1591
|
Commanded joint position of each joint in [rad]. This command was sent in the time step the corresponding state was received.
|
|
1700
1592
|
|
|
1701
1593
|
"""
|
|
1702
1594
|
details: Annotated[
|
|
1703
|
-
|
|
1595
|
+
JoggingDetails | TrajectoryDetails | None, Field(discriminator='kind')
|
|
1704
1596
|
] = None
|
|
1705
1597
|
|
|
1706
1598
|
|
|
@@ -1737,19 +1629,19 @@ class MotionGroupState(BaseModel):
|
|
|
1737
1629
|
Indicates whether the joint is in a limit for all joints of the motion group.
|
|
1738
1630
|
|
|
1739
1631
|
"""
|
|
1740
|
-
joint_torque:
|
|
1632
|
+
joint_torque: Joints | None = None
|
|
1741
1633
|
"""
|
|
1742
1634
|
Current joint torque of each joint in [Nm].
|
|
1743
1635
|
Is only available if the robot controller supports it, e.g., available for UR controllers.
|
|
1744
1636
|
|
|
1745
1637
|
"""
|
|
1746
|
-
joint_current:
|
|
1638
|
+
joint_current: Joints | None = None
|
|
1747
1639
|
"""
|
|
1748
1640
|
Current at TCP in [A].
|
|
1749
1641
|
Is only available if the robot controller supports it, e.g., available for UR controllers.
|
|
1750
1642
|
|
|
1751
1643
|
"""
|
|
1752
|
-
flange_pose:
|
|
1644
|
+
flange_pose: Pose | None = None
|
|
1753
1645
|
"""
|
|
1754
1646
|
Pose of the flange.
|
|
1755
1647
|
Positions are in [mm].
|
|
@@ -1758,13 +1650,13 @@ class MotionGroupState(BaseModel):
|
|
|
1758
1650
|
For robot arms a flange pose is always returned, for positioners the flange might not be available, depending on the model.
|
|
1759
1651
|
|
|
1760
1652
|
"""
|
|
1761
|
-
tcp:
|
|
1653
|
+
tcp: str | None = None
|
|
1762
1654
|
"""
|
|
1763
1655
|
Unique identifier addressing the active TCP.
|
|
1764
1656
|
Might not be returned for positioners as some do not support TCPs, depending on the model.
|
|
1765
1657
|
|
|
1766
1658
|
"""
|
|
1767
|
-
tcp_pose:
|
|
1659
|
+
tcp_pose: Pose | None = None
|
|
1768
1660
|
"""
|
|
1769
1661
|
Pose of the TCP selected on the robot control panel.
|
|
1770
1662
|
Positions are in [mm].
|
|
@@ -1773,14 +1665,14 @@ class MotionGroupState(BaseModel):
|
|
|
1773
1665
|
Might not be returned for positioners as some do not support TCPs, depending on the model.
|
|
1774
1666
|
|
|
1775
1667
|
"""
|
|
1776
|
-
coordinate_system:
|
|
1668
|
+
coordinate_system: str | None = None
|
|
1777
1669
|
"""
|
|
1778
1670
|
Unique identifier addressing the reference coordinate system of the cartesian data.
|
|
1779
1671
|
Might not be returned for positioners as some do not support TCPs, depending on the model.
|
|
1780
1672
|
Default: world coordinate system of corresponding controller.
|
|
1781
1673
|
|
|
1782
1674
|
"""
|
|
1783
|
-
payload:
|
|
1675
|
+
payload: str | None = None
|
|
1784
1676
|
"""
|
|
1785
1677
|
Unique identifier addressing the active payload.
|
|
1786
1678
|
Only fetchable via GET endpoint, not available in WebSocket.
|
|
@@ -1792,7 +1684,7 @@ class MotionGroupState(BaseModel):
|
|
|
1792
1684
|
Convenience: Signals that NOVA treats measured joint velocities as 0.
|
|
1793
1685
|
|
|
1794
1686
|
"""
|
|
1795
|
-
execute:
|
|
1687
|
+
execute: Execute | None = None
|
|
1796
1688
|
"""
|
|
1797
1689
|
Data that was commanded to the motion group. Includes additional data on NOVA's execution components for executing trajectories and jogging.
|
|
1798
1690
|
This is a convenience field to indicate the last command sent to the motion group.
|
|
@@ -1810,7 +1702,7 @@ class RobotControllerState(BaseModel):
|
|
|
1810
1702
|
"""
|
|
1811
1703
|
Mode of communication and control between NOVA and the robot controller.
|
|
1812
1704
|
"""
|
|
1813
|
-
last_error:
|
|
1705
|
+
last_error: list[str] | None = None
|
|
1814
1706
|
"""
|
|
1815
1707
|
Last error stack encountered during initialization process or after a controller disconnect.
|
|
1816
1708
|
At this stage, it's unclear whether the error is fatal.
|
|
@@ -1837,14 +1729,14 @@ class RobotControllerState(BaseModel):
|
|
|
1837
1729
|
"""
|
|
1838
1730
|
operation_mode: OperationMode
|
|
1839
1731
|
safety_state: SafetyStateType
|
|
1840
|
-
velocity_override: Annotated[
|
|
1732
|
+
velocity_override: Annotated[int | None, Field(ge=1, le=100)] = None
|
|
1841
1733
|
"""
|
|
1842
1734
|
If made available by the robot controller, returns the current velocity override in
|
|
1843
1735
|
[percentage] for movements adjusted on robot control panel.
|
|
1844
1736
|
Valid value range: 1 - 100.
|
|
1845
1737
|
|
|
1846
1738
|
"""
|
|
1847
|
-
motion_groups: Annotated[
|
|
1739
|
+
motion_groups: Annotated[list[MotionGroupState], Field(title='MotionGroupState[]')]
|
|
1848
1740
|
"""
|
|
1849
1741
|
State of indicated motion groups.
|
|
1850
1742
|
In case of state request via controller all configured motion groups are returned.
|
|
@@ -1924,7 +1816,7 @@ class FloatValue(BaseModel):
|
|
|
1924
1816
|
|
|
1925
1817
|
class IOBoundary(RootModel):
|
|
1926
1818
|
root: Annotated[
|
|
1927
|
-
|
|
1819
|
+
BooleanValue | IntegerValue | FloatValue,
|
|
1928
1820
|
Field(discriminator='value_type', title='IOBoundary'),
|
|
1929
1821
|
]
|
|
1930
1822
|
|
|
@@ -1940,20 +1832,20 @@ class IODescription(BaseModel):
|
|
|
1940
1832
|
Name of the input/output. Customize it on the physical controller or in the virtual robot specification.
|
|
1941
1833
|
|
|
1942
1834
|
"""
|
|
1943
|
-
group:
|
|
1835
|
+
group: str | None = None
|
|
1944
1836
|
"""
|
|
1945
1837
|
Name of the input/output group. Customize it on the physical controller or in the virtual robot specification.
|
|
1946
1838
|
|
|
1947
1839
|
"""
|
|
1948
1840
|
direction: IODirection
|
|
1949
1841
|
value_type: IOValueType
|
|
1950
|
-
unit:
|
|
1951
|
-
min:
|
|
1952
|
-
max:
|
|
1842
|
+
unit: UnitType | None = None
|
|
1843
|
+
min: IOBoundary | None = None
|
|
1844
|
+
max: IOBoundary | None = None
|
|
1953
1845
|
|
|
1954
1846
|
|
|
1955
1847
|
class ListIODescriptionsResponse(RootModel):
|
|
1956
|
-
root:
|
|
1848
|
+
root: list[IODescription]
|
|
1957
1849
|
|
|
1958
1850
|
def __getitem__(self, index: int) -> IODescription:
|
|
1959
1851
|
"""
|
|
@@ -2029,7 +1921,7 @@ class IOFloatValue(BaseModel):
|
|
|
2029
1921
|
|
|
2030
1922
|
class IOValue(RootModel):
|
|
2031
1923
|
root: Annotated[
|
|
2032
|
-
|
|
1924
|
+
IOBooleanValue | IOIntegerValue | IOFloatValue,
|
|
2033
1925
|
Field(discriminator='value_type'),
|
|
2034
1926
|
]
|
|
2035
1927
|
|
|
@@ -2039,7 +1931,7 @@ class StreamIOValuesResponse(BaseModel):
|
|
|
2039
1931
|
Array of input/output values.
|
|
2040
1932
|
"""
|
|
2041
1933
|
|
|
2042
|
-
io_values:
|
|
1934
|
+
io_values: list[IOValue]
|
|
2043
1935
|
timestamp: AwareDatetime
|
|
2044
1936
|
"""
|
|
2045
1937
|
Timestamp indicating when the represented information was received from the robot controller.
|
|
@@ -2058,7 +1950,7 @@ class ListIOValuesResponse(RootModel):
|
|
|
2058
1950
|
"""
|
|
2059
1951
|
|
|
2060
1952
|
root: Annotated[
|
|
2061
|
-
|
|
1953
|
+
list[IOValue],
|
|
2062
1954
|
Field(
|
|
2063
1955
|
examples=[
|
|
2064
1956
|
{
|
|
@@ -2211,7 +2103,7 @@ class Orientation(RootModel):
|
|
|
2211
2103
|
|
|
2212
2104
|
"""
|
|
2213
2105
|
|
|
2214
|
-
root: Annotated[
|
|
2106
|
+
root: Annotated[list[float], Field(max_length=4, min_length=3, title='Orientation')]
|
|
2215
2107
|
"""
|
|
2216
2108
|
Describes an orientation in 3D space.
|
|
2217
2109
|
A tree-to-four-dimensional vector [x, y, z, w] with double precision.
|
|
@@ -2244,17 +2136,17 @@ class Orientation(RootModel):
|
|
|
2244
2136
|
|
|
2245
2137
|
|
|
2246
2138
|
class CoordinateSystemData(BaseModel):
|
|
2247
|
-
name:
|
|
2139
|
+
name: str | None = None
|
|
2248
2140
|
"""
|
|
2249
2141
|
Human readable name of this coordinate system.
|
|
2250
2142
|
"""
|
|
2251
|
-
reference_coordinate_system:
|
|
2143
|
+
reference_coordinate_system: str | None = None
|
|
2252
2144
|
"""
|
|
2253
2145
|
The identifier of the reference coordinate system. Empty if world is used.
|
|
2254
2146
|
"""
|
|
2255
|
-
position:
|
|
2256
|
-
orientation:
|
|
2257
|
-
orientation_type:
|
|
2147
|
+
position: Vector3d | None = None
|
|
2148
|
+
orientation: Orientation | None = None
|
|
2149
|
+
orientation_type: OrientationType | None = 'ROTATION_VECTOR'
|
|
2258
2150
|
|
|
2259
2151
|
|
|
2260
2152
|
class CoordinateSystem(CoordinateSystemData):
|
|
@@ -2265,7 +2157,7 @@ class CoordinateSystem(CoordinateSystemData):
|
|
|
2265
2157
|
|
|
2266
2158
|
|
|
2267
2159
|
class ListCoordinateSystemsResponse(RootModel):
|
|
2268
|
-
root:
|
|
2160
|
+
root: list[CoordinateSystem]
|
|
2269
2161
|
|
|
2270
2162
|
def __getitem__(self, index: int) -> CoordinateSystem:
|
|
2271
2163
|
"""
|
|
@@ -2312,7 +2204,7 @@ class ColliderDictionary(RootModel):
|
|
|
2312
2204
|
A collection of identifiable colliders.
|
|
2313
2205
|
"""
|
|
2314
2206
|
|
|
2315
|
-
root:
|
|
2207
|
+
root: dict[str, Collider]
|
|
2316
2208
|
|
|
2317
2209
|
|
|
2318
2210
|
class LimitRange(BaseModel):
|
|
@@ -2320,37 +2212,37 @@ class LimitRange(BaseModel):
|
|
|
2320
2212
|
The upper_limit must be greater then the lower_limit.
|
|
2321
2213
|
"""
|
|
2322
2214
|
|
|
2323
|
-
lower_limit:
|
|
2324
|
-
upper_limit:
|
|
2215
|
+
lower_limit: float | None = None
|
|
2216
|
+
upper_limit: float | None = None
|
|
2325
2217
|
|
|
2326
2218
|
|
|
2327
2219
|
class JointLimits(BaseModel):
|
|
2328
|
-
position:
|
|
2329
|
-
velocity:
|
|
2330
|
-
acceleration:
|
|
2331
|
-
torque:
|
|
2220
|
+
position: LimitRange | None = None
|
|
2221
|
+
velocity: float | None = None
|
|
2222
|
+
acceleration: float | None = None
|
|
2223
|
+
torque: float | None = None
|
|
2332
2224
|
|
|
2333
2225
|
|
|
2334
2226
|
class CartesianLimits(BaseModel):
|
|
2335
|
-
velocity:
|
|
2336
|
-
acceleration:
|
|
2337
|
-
orientation_velocity:
|
|
2338
|
-
orientation_acceleration:
|
|
2227
|
+
velocity: float | None = None
|
|
2228
|
+
acceleration: float | None = None
|
|
2229
|
+
orientation_velocity: float | None = None
|
|
2230
|
+
orientation_acceleration: float | None = None
|
|
2339
2231
|
|
|
2340
2232
|
|
|
2341
2233
|
class LimitSet(BaseModel):
|
|
2342
|
-
joints:
|
|
2343
|
-
tcp:
|
|
2344
|
-
elbow:
|
|
2345
|
-
flange:
|
|
2346
|
-
coupled_shoulder_elbow_joint:
|
|
2234
|
+
joints: list[JointLimits] | None = None
|
|
2235
|
+
tcp: CartesianLimits | None = None
|
|
2236
|
+
elbow: CartesianLimits | None = None
|
|
2237
|
+
flange: CartesianLimits | None = None
|
|
2238
|
+
coupled_shoulder_elbow_joint: JointLimits | None = None
|
|
2347
2239
|
|
|
2348
2240
|
|
|
2349
2241
|
class OperationLimits(BaseModel):
|
|
2350
|
-
auto_limits:
|
|
2351
|
-
manual_limits:
|
|
2352
|
-
manual_t1_limits:
|
|
2353
|
-
manual_t2_limits:
|
|
2242
|
+
auto_limits: LimitSet | None = None
|
|
2243
|
+
manual_limits: LimitSet | None = None
|
|
2244
|
+
manual_t1_limits: LimitSet | None = None
|
|
2245
|
+
manual_t2_limits: LimitSet | None = None
|
|
2354
2246
|
|
|
2355
2247
|
|
|
2356
2248
|
class Payload(BaseModel):
|
|
@@ -2359,8 +2251,8 @@ class Payload(BaseModel):
|
|
|
2359
2251
|
"""
|
|
2360
2252
|
Mass of payload in [kg].
|
|
2361
2253
|
"""
|
|
2362
|
-
center_of_mass:
|
|
2363
|
-
moment_of_inertia:
|
|
2254
|
+
center_of_mass: Vector3d | None = None
|
|
2255
|
+
moment_of_inertia: Vector3d | None = None
|
|
2364
2256
|
|
|
2365
2257
|
|
|
2366
2258
|
class DHParameter(BaseModel):
|
|
@@ -2368,23 +2260,23 @@ class DHParameter(BaseModel):
|
|
|
2368
2260
|
A single set of DH parameters.
|
|
2369
2261
|
"""
|
|
2370
2262
|
|
|
2371
|
-
alpha:
|
|
2263
|
+
alpha: float | None = None
|
|
2372
2264
|
"""
|
|
2373
2265
|
Angle about x-axis in [rad].
|
|
2374
2266
|
"""
|
|
2375
|
-
theta:
|
|
2267
|
+
theta: float | None = None
|
|
2376
2268
|
"""
|
|
2377
2269
|
Angle about z-axis in [rad].
|
|
2378
2270
|
"""
|
|
2379
|
-
a:
|
|
2271
|
+
a: float | None = None
|
|
2380
2272
|
"""
|
|
2381
2273
|
Offset along x-axis in [mm].
|
|
2382
2274
|
"""
|
|
2383
|
-
d:
|
|
2275
|
+
d: float | None = None
|
|
2384
2276
|
"""
|
|
2385
2277
|
Offset along z-axis in [mm].
|
|
2386
2278
|
"""
|
|
2387
|
-
reverse_rotation_direction:
|
|
2279
|
+
reverse_rotation_direction: bool | None = None
|
|
2388
2280
|
"""
|
|
2389
2281
|
True, if rotation direction of joint is reversed.
|
|
2390
2282
|
"""
|
|
@@ -2396,30 +2288,30 @@ class MotionGroupDescription(BaseModel):
|
|
|
2396
2288
|
"""
|
|
2397
2289
|
|
|
2398
2290
|
motion_group_model: MotionGroupModel
|
|
2399
|
-
mounting:
|
|
2291
|
+
mounting: Pose | None = None
|
|
2400
2292
|
"""
|
|
2401
2293
|
The offset from the world frame to the motion group base.
|
|
2402
2294
|
"""
|
|
2403
|
-
tcps: Annotated[
|
|
2404
|
-
|
|
2405
|
-
|
|
2295
|
+
tcps: Annotated[dict[str, TcpOffset] | None, Field(title='TcpOffsetDictionary')] = (
|
|
2296
|
+
None
|
|
2297
|
+
)
|
|
2406
2298
|
"""
|
|
2407
2299
|
Maps a TCP name to its offset relative to the flange coordinate system. Key must be a TCP identifier.
|
|
2408
2300
|
Values are TcpOffsets.
|
|
2409
2301
|
|
|
2410
2302
|
"""
|
|
2411
|
-
safety_zones:
|
|
2303
|
+
safety_zones: ColliderDictionary | None = None
|
|
2412
2304
|
"""
|
|
2413
2305
|
SafetyZones are areas which cannot be entered or where certain limits apply.
|
|
2414
2306
|
"""
|
|
2415
|
-
safety_link_colliders:
|
|
2307
|
+
safety_link_colliders: list[ColliderDictionary] | None = None
|
|
2416
2308
|
"""
|
|
2417
2309
|
The shape of the MotionGroups links to validate against safety zones.
|
|
2418
2310
|
Indexed along the kinematic chain, starting with a static base shape before first joint.
|
|
2419
2311
|
|
|
2420
2312
|
"""
|
|
2421
2313
|
safety_tool_colliders: Annotated[
|
|
2422
|
-
|
|
2314
|
+
dict[str, ColliderDictionary] | None, Field(title='SafetyToolColliders')
|
|
2423
2315
|
] = None
|
|
2424
2316
|
"""
|
|
2425
2317
|
Maps a TCP name to its tool collider. Key must be a TCP identifier.
|
|
@@ -2427,23 +2319,23 @@ class MotionGroupDescription(BaseModel):
|
|
|
2427
2319
|
|
|
2428
2320
|
"""
|
|
2429
2321
|
operation_limits: OperationLimits
|
|
2430
|
-
payloads: Annotated[
|
|
2431
|
-
|
|
2432
|
-
|
|
2322
|
+
payloads: Annotated[dict[str, Payload] | None, Field(title='PayloadDictionary')] = (
|
|
2323
|
+
None
|
|
2324
|
+
)
|
|
2433
2325
|
"""
|
|
2434
2326
|
Maps a payload name to its configuration. Key must be a payload identifier.
|
|
2435
2327
|
Values are payload objects.
|
|
2436
2328
|
|
|
2437
2329
|
"""
|
|
2438
|
-
cycle_time: Annotated[
|
|
2330
|
+
cycle_time: Annotated[int | None, Field(ge=0, le=2147483647)] = None
|
|
2439
2331
|
"""
|
|
2440
2332
|
[ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.
|
|
2441
2333
|
"""
|
|
2442
|
-
dh_parameters:
|
|
2334
|
+
dh_parameters: list[DHParameter] | None = None
|
|
2443
2335
|
"""
|
|
2444
2336
|
The DH parameters describing the motion group geometry, starting from base.
|
|
2445
2337
|
"""
|
|
2446
|
-
serial_number:
|
|
2338
|
+
serial_number: str | None = None
|
|
2447
2339
|
"""
|
|
2448
2340
|
The serial number of the motion group, if available. If not available, the serial number of the robot controller. If not available, empty.
|
|
2449
2341
|
|
|
@@ -2460,28 +2352,28 @@ class Tool(RootModel):
|
|
|
2460
2352
|
|
|
2461
2353
|
"""
|
|
2462
2354
|
|
|
2463
|
-
root:
|
|
2355
|
+
root: dict[str, Collider]
|
|
2464
2356
|
|
|
2465
2357
|
|
|
2466
2358
|
class CollisionSetup(BaseModel):
|
|
2467
|
-
colliders:
|
|
2359
|
+
colliders: ColliderDictionary | None = None
|
|
2468
2360
|
"""
|
|
2469
2361
|
Colliders are checked against links and tool.
|
|
2470
2362
|
|
|
2471
2363
|
"""
|
|
2472
|
-
link_chain:
|
|
2364
|
+
link_chain: LinkChain | None = None
|
|
2473
2365
|
"""
|
|
2474
2366
|
The shape of the motion groups links to validate against colliders.
|
|
2475
2367
|
Indexed along the kinematic chain, starting with a static base shape before first joint.
|
|
2476
2368
|
The base of the motion group is not checked for collision against the environment.
|
|
2477
2369
|
|
|
2478
2370
|
"""
|
|
2479
|
-
tool:
|
|
2371
|
+
tool: Tool | None = None
|
|
2480
2372
|
"""
|
|
2481
2373
|
Shape of the tool to validate against colliders.
|
|
2482
2374
|
|
|
2483
2375
|
"""
|
|
2484
|
-
self_collision_detection:
|
|
2376
|
+
self_collision_detection: bool | None = True
|
|
2485
2377
|
"""
|
|
2486
2378
|
If true, self-collision detection is enabled for the motion group.
|
|
2487
2379
|
|
|
@@ -2509,7 +2401,7 @@ class CollisionSetups(RootModel):
|
|
|
2509
2401
|
|
|
2510
2402
|
"""
|
|
2511
2403
|
|
|
2512
|
-
root:
|
|
2404
|
+
root: dict[str, CollisionSetup]
|
|
2513
2405
|
|
|
2514
2406
|
|
|
2515
2407
|
class MotionGroupSetup(BaseModel):
|
|
@@ -2518,18 +2410,18 @@ class MotionGroupSetup(BaseModel):
|
|
|
2518
2410
|
"""
|
|
2519
2411
|
[ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.
|
|
2520
2412
|
"""
|
|
2521
|
-
mounting:
|
|
2413
|
+
mounting: Pose | None = None
|
|
2522
2414
|
"""
|
|
2523
2415
|
The offset from the world frame to the motion group base.
|
|
2524
2416
|
"""
|
|
2525
|
-
tcp_offset:
|
|
2526
|
-
global_limits:
|
|
2527
|
-
payload:
|
|
2528
|
-
collision_setups:
|
|
2417
|
+
tcp_offset: Pose | None = None
|
|
2418
|
+
global_limits: LimitSet | None = None
|
|
2419
|
+
payload: Payload | None = None
|
|
2420
|
+
collision_setups: CollisionSetups | None = None
|
|
2529
2421
|
|
|
2530
2422
|
|
|
2531
2423
|
class DoubleArray(RootModel):
|
|
2532
|
-
root:
|
|
2424
|
+
root: list[float]
|
|
2533
2425
|
|
|
2534
2426
|
def __getitem__(self, index: int) -> float:
|
|
2535
2427
|
"""
|
|
@@ -2557,23 +2449,70 @@ class DoubleArray(RootModel):
|
|
|
2557
2449
|
|
|
2558
2450
|
|
|
2559
2451
|
class BlendingAuto(BaseModel):
|
|
2560
|
-
min_velocity_in_percent: Annotated[
|
|
2452
|
+
min_velocity_in_percent: Annotated[int | None, Field(ge=0, le=100)] = None
|
|
2561
2453
|
"""
|
|
2562
|
-
Auto-blending is used to keep a constant velocity when blending between two motion commands.
|
|
2454
|
+
Auto-blending is used to keep a constant velocity when blending between two motion commands. To use auto-blending, the TCP velocity limit must be set.
|
|
2563
2455
|
It changes the TCP path around the target point of the motion command.
|
|
2564
|
-
The value represents the percentage of the original velocity.
|
|
2456
|
+
The value represents the percentage of the original velocity. Auto-blending is always performed in cartesian space.
|
|
2565
2457
|
|
|
2566
2458
|
"""
|
|
2567
2459
|
blending_name: Literal['BlendingAuto'] = 'BlendingAuto'
|
|
2568
2460
|
|
|
2569
2461
|
|
|
2462
|
+
class BlendingSpace(Enum):
|
|
2463
|
+
"""
|
|
2464
|
+
Defines the space in which blending is performed.
|
|
2465
|
+
- `JOINT`: Zone blending is performed in joint space
|
|
2466
|
+
- `CARTESIAN`: Auto-blending is performed in cartesian space
|
|
2467
|
+
|
|
2468
|
+
"""
|
|
2469
|
+
|
|
2470
|
+
JOINT = 'JOINT'
|
|
2471
|
+
CARTESIAN = 'CARTESIAN'
|
|
2472
|
+
|
|
2473
|
+
|
|
2570
2474
|
class BlendingPosition(BaseModel):
|
|
2571
|
-
position_zone_radius:
|
|
2475
|
+
position_zone_radius: float | None = None
|
|
2572
2476
|
"""
|
|
2573
2477
|
Specifies the maximum radius in [mm] around the motion command's target point
|
|
2574
2478
|
where the TCP path can be altered to blend the motion command into the following one.
|
|
2575
2479
|
If auto-blending blends too much of the resulting trajectory, use position-blending to restrict the blending zone radius.
|
|
2576
2480
|
|
|
2481
|
+
"""
|
|
2482
|
+
position_zone_percentage: Annotated[float | None, Field(ge=0.0, le=100.0)] = None
|
|
2483
|
+
"""
|
|
2484
|
+
Specifies the maximum blending percentage based on the trajectory length in position space
|
|
2485
|
+
around the motion command's target point. Percentage indicated in 0.0 - 100.0.
|
|
2486
|
+
|
|
2487
|
+
"""
|
|
2488
|
+
orientation_zone_radius: float | None = None
|
|
2489
|
+
"""
|
|
2490
|
+
Specifies the maximum radius in [rad] for orientation blending around the motion command's
|
|
2491
|
+
target orientation. At the target's orientation, the TCP orientation can be altered to blend into the following motion.
|
|
2492
|
+
|
|
2493
|
+
"""
|
|
2494
|
+
orientation_zone_percentage: Annotated[float | None, Field(ge=0.0, le=100.0)] = None
|
|
2495
|
+
"""
|
|
2496
|
+
Specifies the maximum blending percentage for orientation blending
|
|
2497
|
+
based on the trajectory length in orientation space. Percentage indicated in 0.0 - 100.0.
|
|
2498
|
+
|
|
2499
|
+
"""
|
|
2500
|
+
joints_zone_radius: float | None = None
|
|
2501
|
+
"""
|
|
2502
|
+
Specifies the maximum radius in [rad] for joint space blending around the motion command's
|
|
2503
|
+
target joint configuration. At the target joint configuration, the joint path can be altered to blend into the following motion.
|
|
2504
|
+
|
|
2505
|
+
"""
|
|
2506
|
+
joints_zone_percentage: Annotated[float | None, Field(ge=0.0, le=100.0)] = None
|
|
2507
|
+
"""
|
|
2508
|
+
Specifies the maximum blending percentage for joint space blending
|
|
2509
|
+
based on the trajectory length in joint space. Percentage indicated in 0.0 to 100.0.
|
|
2510
|
+
|
|
2511
|
+
"""
|
|
2512
|
+
space: BlendingSpace | None = None
|
|
2513
|
+
"""
|
|
2514
|
+
Defines the space in which blending is performed.
|
|
2515
|
+
|
|
2577
2516
|
"""
|
|
2578
2517
|
blending_name: Literal['BlendingPosition'] = 'BlendingPosition'
|
|
2579
2518
|
|
|
@@ -2584,34 +2523,34 @@ class LimitsOverride(BaseModel):
|
|
|
2584
2523
|
|
|
2585
2524
|
"""
|
|
2586
2525
|
|
|
2587
|
-
joint_velocity_limits:
|
|
2526
|
+
joint_velocity_limits: list[float] | None = None
|
|
2588
2527
|
"""
|
|
2589
2528
|
Maximum joint velocity in [rad/s] for each joint.
|
|
2590
2529
|
Either leave this field empty or set a value for each joint.
|
|
2591
2530
|
|
|
2592
2531
|
"""
|
|
2593
|
-
joint_acceleration_limits:
|
|
2532
|
+
joint_acceleration_limits: list[float] | None = None
|
|
2594
2533
|
"""
|
|
2595
2534
|
Maximum joint acceleration in [rad/s^2] for each joint.
|
|
2596
2535
|
Either leave this field empty or set a value for each joint.
|
|
2597
2536
|
|
|
2598
2537
|
"""
|
|
2599
|
-
tcp_velocity_limit:
|
|
2538
|
+
tcp_velocity_limit: float | None = None
|
|
2600
2539
|
"""
|
|
2601
2540
|
Maximum allowed TCP velocity in [mm/s].
|
|
2602
2541
|
|
|
2603
2542
|
"""
|
|
2604
|
-
tcp_acceleration_limit:
|
|
2543
|
+
tcp_acceleration_limit: float | None = None
|
|
2605
2544
|
"""
|
|
2606
2545
|
Maximum allowed TCP acceleration in [mm/s^2].
|
|
2607
2546
|
|
|
2608
2547
|
"""
|
|
2609
|
-
tcp_orientation_velocity_limit:
|
|
2548
|
+
tcp_orientation_velocity_limit: float | None = None
|
|
2610
2549
|
"""
|
|
2611
2550
|
Maximum allowed TCP rotation velocity in [rad/s].
|
|
2612
2551
|
|
|
2613
2552
|
"""
|
|
2614
|
-
tcp_orientation_acceleration_limit:
|
|
2553
|
+
tcp_orientation_acceleration_limit: float | None = None
|
|
2615
2554
|
"""
|
|
2616
2555
|
Maximum allowed TCP rotation acceleration in [rad/s^2].
|
|
2617
2556
|
|
|
@@ -2642,7 +2581,7 @@ class PathCubicSpline(BaseModel):
|
|
|
2642
2581
|
|
|
2643
2582
|
"""
|
|
2644
2583
|
|
|
2645
|
-
parameters:
|
|
2584
|
+
parameters: list[CubicSplineParameter]
|
|
2646
2585
|
path_definition_name: Literal['PathCubicSpline'] = 'PathCubicSpline'
|
|
2647
2586
|
|
|
2648
2587
|
|
|
@@ -2683,21 +2622,20 @@ class PathJointPTP(BaseModel):
|
|
|
2683
2622
|
|
|
2684
2623
|
class MotionCommand(BaseModel):
|
|
2685
2624
|
blending: Annotated[
|
|
2686
|
-
|
|
2687
|
-
Field(discriminator='blending_name'),
|
|
2625
|
+
BlendingAuto | BlendingPosition | None, Field(discriminator='blending_name')
|
|
2688
2626
|
] = None
|
|
2689
2627
|
"""
|
|
2690
2628
|
Blending alters the TCP path at the target point of a motion command
|
|
2691
2629
|
to ensure that the velocity does not drop to zero between two motion commands.
|
|
2692
2630
|
|
|
2693
2631
|
"""
|
|
2694
|
-
limits_override:
|
|
2632
|
+
limits_override: LimitsOverride | None = None
|
|
2695
2633
|
"""
|
|
2696
2634
|
Limits override is used to override the global limits of the motion group for this segment of the motion.
|
|
2697
2635
|
|
|
2698
2636
|
"""
|
|
2699
2637
|
path: Annotated[
|
|
2700
|
-
|
|
2638
|
+
PathCartesianPTP | PathCubicSpline | PathLine | PathCircle | PathJointPTP,
|
|
2701
2639
|
Field(discriminator='path_definition_name'),
|
|
2702
2640
|
]
|
|
2703
2641
|
|
|
@@ -2716,7 +2654,7 @@ class PlanTrajectoryRequest(BaseModel):
|
|
|
2716
2654
|
To move the robot to the start joint position use the endpoint [streamMoveToTrajectoryViaJointP2P](streamMoveToTrajectoryViaJointP2P).
|
|
2717
2655
|
|
|
2718
2656
|
"""
|
|
2719
|
-
motion_commands:
|
|
2657
|
+
motion_commands: list[MotionCommand]
|
|
2720
2658
|
"""
|
|
2721
2659
|
List of motion commands. A command consists of a path definition (line, circle, joint_ptp, cartesian_ptp, cubic_spline), blending, and limits override.
|
|
2722
2660
|
|
|
@@ -2724,17 +2662,17 @@ class PlanTrajectoryRequest(BaseModel):
|
|
|
2724
2662
|
|
|
2725
2663
|
|
|
2726
2664
|
class JointTrajectory(BaseModel):
|
|
2727
|
-
joint_positions:
|
|
2665
|
+
joint_positions: list[Joints]
|
|
2728
2666
|
"""
|
|
2729
2667
|
List of joint positions [rad] for each sample.
|
|
2730
2668
|
The number of samples must match the number of timestamps provided in the times field.
|
|
2731
2669
|
|
|
2732
2670
|
"""
|
|
2733
|
-
times:
|
|
2671
|
+
times: list[float]
|
|
2734
2672
|
"""
|
|
2735
2673
|
Timestamp for each sample [s].
|
|
2736
2674
|
"""
|
|
2737
|
-
locations:
|
|
2675
|
+
locations: list[Location]
|
|
2738
2676
|
|
|
2739
2677
|
|
|
2740
2678
|
class FeedbackOutOfWorkspace(BaseModel):
|
|
@@ -2742,7 +2680,7 @@ class FeedbackOutOfWorkspace(BaseModel):
|
|
|
2742
2680
|
Requested TCP pose is outside of motion group's workspace.
|
|
2743
2681
|
"""
|
|
2744
2682
|
|
|
2745
|
-
invalid_tcp_pose:
|
|
2683
|
+
invalid_tcp_pose: Pose | None = None
|
|
2746
2684
|
error_feedback_name: Literal['FeedbackOutOfWorkspace'] = 'FeedbackOutOfWorkspace'
|
|
2747
2685
|
|
|
2748
2686
|
|
|
@@ -2763,8 +2701,8 @@ class FeedbackSingularity(BaseModel):
|
|
|
2763
2701
|
|
|
2764
2702
|
"""
|
|
2765
2703
|
|
|
2766
|
-
singularity_type:
|
|
2767
|
-
singular_joint_position:
|
|
2704
|
+
singularity_type: SingularityTypeEnum | None = None
|
|
2705
|
+
singular_joint_position: DoubleArray | None = None
|
|
2768
2706
|
error_feedback_name: Literal['FeedbackSingularity'] = 'FeedbackSingularity'
|
|
2769
2707
|
|
|
2770
2708
|
|
|
@@ -2775,46 +2713,44 @@ class FeedbackJointLimitExceeded(BaseModel):
|
|
|
2775
2713
|
|
|
2776
2714
|
"""
|
|
2777
2715
|
|
|
2778
|
-
joint_index: Annotated[
|
|
2779
|
-
joint_position:
|
|
2716
|
+
joint_index: Annotated[int | None, Field(ge=0, le=2147483647)] = None
|
|
2717
|
+
joint_position: DoubleArray | None = None
|
|
2780
2718
|
error_feedback_name: Literal['FeedbackJointLimitExceeded'] = (
|
|
2781
2719
|
'FeedbackJointLimitExceeded'
|
|
2782
2720
|
)
|
|
2783
2721
|
|
|
2784
2722
|
|
|
2785
2723
|
class CollisionContact(BaseModel):
|
|
2786
|
-
local:
|
|
2787
|
-
root:
|
|
2724
|
+
local: Vector3d | None = None
|
|
2725
|
+
root: Vector3d | None = None
|
|
2788
2726
|
|
|
2789
2727
|
|
|
2790
2728
|
class Collision(BaseModel):
|
|
2791
|
-
id_of_a:
|
|
2792
|
-
id_of_b:
|
|
2793
|
-
id_of_layer:
|
|
2794
|
-
normal_root_on_b:
|
|
2795
|
-
position_on_a:
|
|
2796
|
-
position_on_b:
|
|
2729
|
+
id_of_a: str | None = None
|
|
2730
|
+
id_of_b: str | None = None
|
|
2731
|
+
id_of_layer: str | None = None
|
|
2732
|
+
normal_root_on_b: Vector3d | None = None
|
|
2733
|
+
position_on_a: CollisionContact | None = None
|
|
2734
|
+
position_on_b: CollisionContact | None = None
|
|
2797
2735
|
|
|
2798
2736
|
|
|
2799
2737
|
class FeedbackCollision(BaseModel):
|
|
2800
|
-
collisions:
|
|
2801
|
-
joint_position:
|
|
2802
|
-
tcp_pose:
|
|
2738
|
+
collisions: list[Collision] | None = None
|
|
2739
|
+
joint_position: DoubleArray | None = None
|
|
2740
|
+
tcp_pose: Pose | None = None
|
|
2803
2741
|
error_feedback_name: Literal['FeedbackCollision'] = 'FeedbackCollision'
|
|
2804
2742
|
|
|
2805
2743
|
|
|
2806
2744
|
class PlanTrajectoryFailedResponse(BaseModel):
|
|
2807
2745
|
error_feedback: Annotated[
|
|
2808
|
-
|
|
2809
|
-
|
|
2810
|
-
|
|
2811
|
-
|
|
2812
|
-
FeedbackCollision,
|
|
2813
|
-
],
|
|
2746
|
+
FeedbackOutOfWorkspace
|
|
2747
|
+
| FeedbackSingularity
|
|
2748
|
+
| FeedbackJointLimitExceeded
|
|
2749
|
+
| FeedbackCollision,
|
|
2814
2750
|
Field(discriminator='error_feedback_name'),
|
|
2815
2751
|
]
|
|
2816
2752
|
error_location_on_trajectory: Location
|
|
2817
|
-
joint_trajectory:
|
|
2753
|
+
joint_trajectory: JointTrajectory | None = None
|
|
2818
2754
|
"""
|
|
2819
2755
|
The joint trajectory from the start joint position to the error.
|
|
2820
2756
|
|
|
@@ -2822,14 +2758,14 @@ class PlanTrajectoryFailedResponse(BaseModel):
|
|
|
2822
2758
|
|
|
2823
2759
|
|
|
2824
2760
|
class PlanTrajectoryResponse(BaseModel):
|
|
2825
|
-
response:
|
|
2761
|
+
response: JointTrajectory | PlanTrajectoryFailedResponse
|
|
2826
2762
|
|
|
2827
2763
|
|
|
2828
2764
|
class ValidationError(BaseModel):
|
|
2829
|
-
loc: Annotated[
|
|
2765
|
+
loc: Annotated[list[str | int], Field(title='Location')]
|
|
2830
2766
|
msg: Annotated[str, Field(title='Message')]
|
|
2831
2767
|
type: Annotated[str, Field(title='Error Type')]
|
|
2832
|
-
input:
|
|
2768
|
+
input: dict[str, Any]
|
|
2833
2769
|
|
|
2834
2770
|
|
|
2835
2771
|
class ErrorInvalidJointCount(BaseModel):
|
|
@@ -2858,12 +2794,12 @@ class ErrorJointLimitExceeded(BaseModel):
|
|
|
2858
2794
|
|
|
2859
2795
|
"""
|
|
2860
2796
|
|
|
2861
|
-
joint_index: Annotated[
|
|
2797
|
+
joint_index: Annotated[int | None, Field(ge=0, le=2147483647)] = None
|
|
2862
2798
|
"""
|
|
2863
2799
|
Index of the joint exceeding its limits (0-based).
|
|
2864
2800
|
|
|
2865
2801
|
"""
|
|
2866
|
-
joint_position:
|
|
2802
|
+
joint_position: DoubleArray | None = None
|
|
2867
2803
|
"""
|
|
2868
2804
|
The joint position violating the limits.
|
|
2869
2805
|
|
|
@@ -2877,8 +2813,8 @@ class ErrorJointPositionCollision(BaseModel):
|
|
|
2877
2813
|
|
|
2878
2814
|
"""
|
|
2879
2815
|
|
|
2880
|
-
collisions:
|
|
2881
|
-
joint_position:
|
|
2816
|
+
collisions: list[Collision] | None = None
|
|
2817
|
+
joint_position: DoubleArray | None = None
|
|
2882
2818
|
"""
|
|
2883
2819
|
The joint position that collides.
|
|
2884
2820
|
|
|
@@ -2890,13 +2826,10 @@ class ErrorJointPositionCollision(BaseModel):
|
|
|
2890
2826
|
|
|
2891
2827
|
class PlanValidationError(ValidationError):
|
|
2892
2828
|
data: Annotated[
|
|
2893
|
-
|
|
2894
|
-
|
|
2895
|
-
|
|
2896
|
-
|
|
2897
|
-
ErrorJointPositionCollision,
|
|
2898
|
-
]
|
|
2899
|
-
],
|
|
2829
|
+
ErrorInvalidJointCount
|
|
2830
|
+
| ErrorJointLimitExceeded
|
|
2831
|
+
| ErrorJointPositionCollision
|
|
2832
|
+
| None,
|
|
2900
2833
|
Field(discriminator='error_feedback_name'),
|
|
2901
2834
|
] = None
|
|
2902
2835
|
"""
|
|
@@ -2906,7 +2839,7 @@ class PlanValidationError(ValidationError):
|
|
|
2906
2839
|
|
|
2907
2840
|
|
|
2908
2841
|
class Plan422Response(BaseModel):
|
|
2909
|
-
detail: Annotated[
|
|
2842
|
+
detail: Annotated[list[PlanValidationError] | None, Field(title='Detail')] = None
|
|
2910
2843
|
|
|
2911
2844
|
|
|
2912
2845
|
class RRTConnectAlgorithm(BaseModel):
|
|
@@ -2921,25 +2854,25 @@ class RRTConnectAlgorithm(BaseModel):
|
|
|
2921
2854
|
This is a custom implementation optimized for manipulator kinematics and collision checking in industrial contexts.
|
|
2922
2855
|
|
|
2923
2856
|
"""
|
|
2924
|
-
max_iterations: Annotated[
|
|
2857
|
+
max_iterations: Annotated[int | None, Field(ge=1)] = 10000
|
|
2925
2858
|
"""
|
|
2926
2859
|
Maximum number of iterations for the RRT Connect algorithm.
|
|
2927
2860
|
Higher values increase likelihood of success, but also computation time.
|
|
2928
2861
|
|
|
2929
2862
|
"""
|
|
2930
|
-
max_step_size:
|
|
2863
|
+
max_step_size: float | None = 1
|
|
2931
2864
|
"""
|
|
2932
2865
|
Maximum step size for tree extension in joint space.
|
|
2933
2866
|
"""
|
|
2934
|
-
adaptive_step_size:
|
|
2867
|
+
adaptive_step_size: bool | None = True
|
|
2935
2868
|
"""
|
|
2936
2869
|
Adjust the maximum step size during the search based on the recent success rate of tree expansion.
|
|
2937
2870
|
"""
|
|
2938
|
-
apply_smoothing:
|
|
2871
|
+
apply_smoothing: bool | None = True
|
|
2939
2872
|
"""
|
|
2940
2873
|
Apply smoothing after the search has succeeded. This will remove as many intermediate points as possible while keeping the path valid.
|
|
2941
2874
|
"""
|
|
2942
|
-
apply_blending:
|
|
2875
|
+
apply_blending: bool | None = True
|
|
2943
2876
|
"""
|
|
2944
2877
|
Apply blending after the search has succeeded and smoothing has been applied. This will apply the largest viable blending at each intermediate point.
|
|
2945
2878
|
"""
|
|
@@ -2954,7 +2887,7 @@ class MidpointInsertionAlgorithm(BaseModel):
|
|
|
2954
2887
|
This algorithm adds a single midpoint between the start and target joint position to find collision-free paths.
|
|
2955
2888
|
|
|
2956
2889
|
"""
|
|
2957
|
-
max_iterations: Annotated[
|
|
2890
|
+
max_iterations: Annotated[int | None, Field(ge=1)] = 1000
|
|
2958
2891
|
"""
|
|
2959
2892
|
Maximum number of iterations for the midpoint insertion algorithm.
|
|
2960
2893
|
Higher values increase likelyhood of success, but also computation time (linear).
|
|
@@ -2964,7 +2897,7 @@ class MidpointInsertionAlgorithm(BaseModel):
|
|
|
2964
2897
|
|
|
2965
2898
|
class CollisionFreeAlgorithm(RootModel):
|
|
2966
2899
|
root: Annotated[
|
|
2967
|
-
|
|
2900
|
+
RRTConnectAlgorithm | MidpointInsertionAlgorithm,
|
|
2968
2901
|
Field(discriminator='algorithm_name', title='CollisionFreeAlgorithm'),
|
|
2969
2902
|
]
|
|
2970
2903
|
"""
|
|
@@ -3008,7 +2941,7 @@ class ErrorMaxIterationsExceeded(BaseModel):
|
|
|
3008
2941
|
|
|
3009
2942
|
"""
|
|
3010
2943
|
|
|
3011
|
-
max_iterations:
|
|
2944
|
+
max_iterations: int | None = None
|
|
3012
2945
|
"""
|
|
3013
2946
|
The maximum number of iterations that was reached.
|
|
3014
2947
|
|
|
@@ -3035,7 +2968,7 @@ class PlanCollisionFreeResponse(BaseModel):
|
|
|
3035
2968
|
|
|
3036
2969
|
"""
|
|
3037
2970
|
|
|
3038
|
-
response:
|
|
2971
|
+
response: JointTrajectory | PlanCollisionFreeFailedResponse
|
|
3039
2972
|
|
|
3040
2973
|
|
|
3041
2974
|
class JointPositionLimits(RootModel):
|
|
@@ -3044,7 +2977,7 @@ class JointPositionLimits(RootModel):
|
|
|
3044
2977
|
|
|
3045
2978
|
"""
|
|
3046
2979
|
|
|
3047
|
-
root: Annotated[
|
|
2980
|
+
root: Annotated[list[LimitRange], Field(title='JointPositionLimits')]
|
|
3048
2981
|
"""
|
|
3049
2982
|
Joint position limits in [rad], indexed starting from base.
|
|
3050
2983
|
|
|
@@ -3077,27 +3010,27 @@ class JointPositionLimits(RootModel):
|
|
|
3077
3010
|
|
|
3078
3011
|
class InverseKinematicsRequest(BaseModel):
|
|
3079
3012
|
motion_group_model: MotionGroupModel
|
|
3080
|
-
tcp_poses:
|
|
3013
|
+
tcp_poses: list[Pose]
|
|
3081
3014
|
"""
|
|
3082
3015
|
List of TCP poses for which the inverse solutions are computed.
|
|
3083
3016
|
|
|
3084
3017
|
"""
|
|
3085
|
-
tcp_offset:
|
|
3086
|
-
mounting:
|
|
3018
|
+
tcp_offset: Pose | None = None
|
|
3019
|
+
mounting: Pose | None = None
|
|
3087
3020
|
"""
|
|
3088
3021
|
Offset from the world frame to the motion group base.
|
|
3089
3022
|
"""
|
|
3090
|
-
joint_position_limits:
|
|
3091
|
-
collision_setups:
|
|
3023
|
+
joint_position_limits: JointPositionLimits | None = None
|
|
3024
|
+
collision_setups: CollisionSetups | None = None
|
|
3092
3025
|
|
|
3093
3026
|
|
|
3094
3027
|
class InverseKinematicsResponse(BaseModel):
|
|
3095
|
-
joints:
|
|
3028
|
+
joints: list[list[DoubleArray]]
|
|
3096
3029
|
|
|
3097
3030
|
|
|
3098
3031
|
class InverseKinematicsValidationError(ValidationError):
|
|
3099
3032
|
data: Annotated[
|
|
3100
|
-
|
|
3033
|
+
ErrorInvalidJointCount | ErrorJointLimitExceeded | None,
|
|
3101
3034
|
Field(discriminator='error_feedback_name'),
|
|
3102
3035
|
] = None
|
|
3103
3036
|
"""
|
|
@@ -3108,26 +3041,26 @@ class InverseKinematicsValidationError(ValidationError):
|
|
|
3108
3041
|
|
|
3109
3042
|
class InverseKinematics422Response(BaseModel):
|
|
3110
3043
|
detail: Annotated[
|
|
3111
|
-
|
|
3044
|
+
list[InverseKinematicsValidationError] | None, Field(title='Detail')
|
|
3112
3045
|
] = None
|
|
3113
3046
|
|
|
3114
3047
|
|
|
3115
3048
|
class ForwardKinematicsRequest(BaseModel):
|
|
3116
3049
|
motion_group_model: MotionGroupModel
|
|
3117
|
-
joint_positions:
|
|
3050
|
+
joint_positions: list[DoubleArray]
|
|
3118
3051
|
"""
|
|
3119
3052
|
List of joint positions [rad] for which TCP poses are computed.
|
|
3120
3053
|
|
|
3121
3054
|
"""
|
|
3122
|
-
tcp_offset:
|
|
3123
|
-
mounting:
|
|
3055
|
+
tcp_offset: Pose | None = None
|
|
3056
|
+
mounting: Pose | None = None
|
|
3124
3057
|
"""
|
|
3125
3058
|
Offset from the world frame to the motion group base.
|
|
3126
3059
|
"""
|
|
3127
3060
|
|
|
3128
3061
|
|
|
3129
3062
|
class ForwardKinematicsResponse(BaseModel):
|
|
3130
|
-
tcp_poses:
|
|
3063
|
+
tcp_poses: list[Pose]
|
|
3131
3064
|
"""
|
|
3132
3065
|
List of computed TCP poses corresponding to the input joint positions.
|
|
3133
3066
|
|
|
@@ -3135,17 +3068,17 @@ class ForwardKinematicsResponse(BaseModel):
|
|
|
3135
3068
|
|
|
3136
3069
|
|
|
3137
3070
|
class ForwardKinematicsValidationError(ValidationError):
|
|
3138
|
-
data:
|
|
3071
|
+
data: ErrorInvalidJointCount | None = None
|
|
3139
3072
|
|
|
3140
3073
|
|
|
3141
3074
|
class ForwardKinematics422Response(BaseModel):
|
|
3142
3075
|
detail: Annotated[
|
|
3143
|
-
|
|
3076
|
+
list[ForwardKinematicsValidationError] | None, Field(title='Detail')
|
|
3144
3077
|
] = None
|
|
3145
3078
|
|
|
3146
3079
|
|
|
3147
3080
|
class ListTrajectoriesResponse(BaseModel):
|
|
3148
|
-
trajectories:
|
|
3081
|
+
trajectories: list[str] | None = None
|
|
3149
3082
|
"""
|
|
3150
3083
|
Identifiers of trajectories which are currently cached.
|
|
3151
3084
|
Use [addTrajectory](addTrajectory) to add a new trajectory. Adding trajectories is necessary to execute them.
|
|
@@ -3165,7 +3098,7 @@ class AddTrajectoryRequest(BaseModel):
|
|
|
3165
3098
|
an equal number of corresponding timestamps.
|
|
3166
3099
|
|
|
3167
3100
|
"""
|
|
3168
|
-
tcp:
|
|
3101
|
+
tcp: str | None = None
|
|
3169
3102
|
"""
|
|
3170
3103
|
Unique identifier of the tool the trajectory is planned for.
|
|
3171
3104
|
"""
|
|
@@ -3176,13 +3109,13 @@ class TcpRequiredError(BaseModel):
|
|
|
3176
3109
|
Requested motion group requires TCP to be defined.
|
|
3177
3110
|
"""
|
|
3178
3111
|
|
|
3179
|
-
tcp_missing:
|
|
3112
|
+
tcp_missing: dict[str, Any] | None = None
|
|
3180
3113
|
|
|
3181
3114
|
|
|
3182
3115
|
class InconsistentTrajectorySize(BaseModel):
|
|
3183
|
-
joint_position_size:
|
|
3184
|
-
times_size:
|
|
3185
|
-
locations_size:
|
|
3116
|
+
joint_position_size: int | None = None
|
|
3117
|
+
times_size: int | None = None
|
|
3118
|
+
locations_size: int | None = None
|
|
3186
3119
|
|
|
3187
3120
|
|
|
3188
3121
|
class InconsistentTrajectorySizeError(BaseModel):
|
|
@@ -3191,24 +3124,24 @@ class InconsistentTrajectorySizeError(BaseModel):
|
|
|
3191
3124
|
|
|
3192
3125
|
"""
|
|
3193
3126
|
|
|
3194
|
-
inconsistent_trajectory_size:
|
|
3127
|
+
inconsistent_trajectory_size: InconsistentTrajectorySize | None = None
|
|
3195
3128
|
|
|
3196
3129
|
|
|
3197
3130
|
class JointLimitExceededError(BaseModel):
|
|
3198
|
-
joint_limit_exceeded:
|
|
3131
|
+
joint_limit_exceeded: FeedbackJointLimitExceeded | None = None
|
|
3199
3132
|
|
|
3200
3133
|
|
|
3201
3134
|
class CollisionError(BaseModel):
|
|
3202
|
-
collision:
|
|
3135
|
+
collision: FeedbackCollision | None = None
|
|
3203
3136
|
|
|
3204
3137
|
|
|
3205
3138
|
class TorqueExceeded(BaseModel):
|
|
3206
|
-
torque_value:
|
|
3139
|
+
torque_value: float | None = None
|
|
3207
3140
|
"""
|
|
3208
3141
|
The torque value that was exceeded.
|
|
3209
3142
|
|
|
3210
3143
|
"""
|
|
3211
|
-
torque_limit:
|
|
3144
|
+
torque_limit: float | None = None
|
|
3212
3145
|
"""
|
|
3213
3146
|
The value of the torque limit that was exceeded.
|
|
3214
3147
|
|
|
@@ -3216,23 +3149,23 @@ class TorqueExceeded(BaseModel):
|
|
|
3216
3149
|
|
|
3217
3150
|
|
|
3218
3151
|
class TorqueExceededError(BaseModel):
|
|
3219
|
-
torque_exceeded:
|
|
3152
|
+
torque_exceeded: TorqueExceeded | None = None
|
|
3220
3153
|
|
|
3221
3154
|
|
|
3222
3155
|
class InvalidDof(BaseModel):
|
|
3223
|
-
valid_dof:
|
|
3156
|
+
valid_dof: int | None = None
|
|
3224
3157
|
"""
|
|
3225
3158
|
The valid degrees of freedom for the motion group.
|
|
3226
3159
|
|
|
3227
3160
|
"""
|
|
3228
|
-
joint_position:
|
|
3161
|
+
joint_position: list[float] | None = None
|
|
3229
3162
|
"""
|
|
3230
3163
|
The joint position that is out of its limits.
|
|
3231
3164
|
"""
|
|
3232
3165
|
|
|
3233
3166
|
|
|
3234
3167
|
class InvalidDofError(BaseModel):
|
|
3235
|
-
invalid_dof:
|
|
3168
|
+
invalid_dof: InvalidDof | None = None
|
|
3236
3169
|
|
|
3237
3170
|
|
|
3238
3171
|
class NanValue(BaseModel):
|
|
@@ -3240,33 +3173,32 @@ class NanValue(BaseModel):
|
|
|
3240
3173
|
Requested joint position contains NaN values.
|
|
3241
3174
|
"""
|
|
3242
3175
|
|
|
3243
|
-
joint_position:
|
|
3176
|
+
joint_position: list[float] | None = None
|
|
3244
3177
|
"""
|
|
3245
3178
|
The joint position that is out of its limits.
|
|
3246
3179
|
"""
|
|
3247
3180
|
|
|
3248
3181
|
|
|
3249
3182
|
class NanValueError(BaseModel):
|
|
3250
|
-
nan_value:
|
|
3183
|
+
nan_value: NanValue | None = None
|
|
3251
3184
|
"""
|
|
3252
3185
|
Requested joint position contains NaN values.
|
|
3253
3186
|
"""
|
|
3254
3187
|
|
|
3255
3188
|
|
|
3256
3189
|
class AddTrajectoryError(BaseModel):
|
|
3257
|
-
message:
|
|
3258
|
-
location:
|
|
3259
|
-
data:
|
|
3260
|
-
|
|
3261
|
-
|
|
3262
|
-
|
|
3263
|
-
|
|
3264
|
-
|
|
3265
|
-
|
|
3266
|
-
|
|
3267
|
-
|
|
3268
|
-
|
|
3269
|
-
] = None
|
|
3190
|
+
message: str | None = None
|
|
3191
|
+
location: Location | None = None
|
|
3192
|
+
data: (
|
|
3193
|
+
TcpRequiredError
|
|
3194
|
+
| InconsistentTrajectorySizeError
|
|
3195
|
+
| JointLimitExceededError
|
|
3196
|
+
| CollisionError
|
|
3197
|
+
| TorqueExceededError
|
|
3198
|
+
| InvalidDofError
|
|
3199
|
+
| NanValueError
|
|
3200
|
+
| None
|
|
3201
|
+
) = None
|
|
3270
3202
|
|
|
3271
3203
|
|
|
3272
3204
|
class AddTrajectoryResponse(BaseModel):
|
|
@@ -3281,12 +3213,12 @@ class AddTrajectoryResponse(BaseModel):
|
|
|
3281
3213
|
|
|
3282
3214
|
"""
|
|
3283
3215
|
|
|
3284
|
-
trajectory:
|
|
3216
|
+
trajectory: str | None = None
|
|
3285
3217
|
"""
|
|
3286
3218
|
The unique identifier of the trajectory. Use this identifier to execute the trajectory with the [executeTrajectory](executeTrajectory) endpoint.
|
|
3287
3219
|
|
|
3288
3220
|
"""
|
|
3289
|
-
error:
|
|
3221
|
+
error: AddTrajectoryError | None = None
|
|
3290
3222
|
"""
|
|
3291
3223
|
Always check this field first. If this field is present, the trajectory has an error and is only partially or not executable.
|
|
3292
3224
|
|
|
@@ -3329,7 +3261,7 @@ class TrajectoryData(BaseModel):
|
|
|
3329
3261
|
Type specifier for server, set automatically.
|
|
3330
3262
|
|
|
3331
3263
|
"""
|
|
3332
|
-
motion_group:
|
|
3264
|
+
motion_group: str | None = None
|
|
3333
3265
|
"""
|
|
3334
3266
|
Identifier of the motion-group.
|
|
3335
3267
|
"""
|
|
@@ -3339,7 +3271,7 @@ class TrajectoryData(BaseModel):
|
|
|
3339
3271
|
an equal number of corresponding timestamps.
|
|
3340
3272
|
|
|
3341
3273
|
"""
|
|
3342
|
-
tcp:
|
|
3274
|
+
tcp: str | None = None
|
|
3343
3275
|
"""
|
|
3344
3276
|
Unique identifier of the tool the trajectory is planned for.
|
|
3345
3277
|
"""
|
|
@@ -3359,14 +3291,14 @@ class InitializeMovementRequest(BaseModel):
|
|
|
3359
3291
|
|
|
3360
3292
|
"""
|
|
3361
3293
|
trajectory: Annotated[
|
|
3362
|
-
|
|
3294
|
+
TrajectoryId | TrajectoryData, Field(discriminator='message_type')
|
|
3363
3295
|
]
|
|
3364
3296
|
"""
|
|
3365
3297
|
The trajectory which should be executed and locked to the connection.
|
|
3366
3298
|
|
|
3367
3299
|
"""
|
|
3368
|
-
initial_location:
|
|
3369
|
-
response_coordinate_system:
|
|
3300
|
+
initial_location: Location | None = None
|
|
3301
|
+
response_coordinate_system: str | None = None
|
|
3370
3302
|
"""
|
|
3371
3303
|
Unique identifier addressing a coordinate system to which the responses are transformed.
|
|
3372
3304
|
If not set, world coordinate system is used.
|
|
@@ -3454,26 +3386,26 @@ class StartMovementRequest(BaseModel):
|
|
|
3454
3386
|
Type specifier for server, set automatically.
|
|
3455
3387
|
|
|
3456
3388
|
"""
|
|
3457
|
-
direction:
|
|
3458
|
-
target_location:
|
|
3389
|
+
direction: Direction | None = 'DIRECTION_FORWARD'
|
|
3390
|
+
target_location: Location | None = None
|
|
3459
3391
|
"""
|
|
3460
3392
|
The target location to which the motion group moves along the trajectory to.
|
|
3461
3393
|
If `direction` and `target_location` are both specified, target location takes precedence.
|
|
3462
3394
|
If neither is specified, the default is `DIRECTION_FORWARD`.
|
|
3463
3395
|
|
|
3464
3396
|
"""
|
|
3465
|
-
set_outputs:
|
|
3397
|
+
set_outputs: list[SetIO] | None = None
|
|
3466
3398
|
"""
|
|
3467
3399
|
Attaches a list of output commands to the trajectory. The outputs are set to the specified values right after the specified location was reached.
|
|
3468
3400
|
If the specified location is located before the start location (forward direction: value is smaller, backward direction: value is bigger), the output is not set.
|
|
3469
3401
|
|
|
3470
3402
|
"""
|
|
3471
|
-
start_on_io:
|
|
3403
|
+
start_on_io: StartOnIO | None = None
|
|
3472
3404
|
"""
|
|
3473
3405
|
Defines an input/output that is listened to before the movement. Execution starts if the defined comparator evaluates to `true`.
|
|
3474
3406
|
|
|
3475
3407
|
"""
|
|
3476
|
-
pause_on_io:
|
|
3408
|
+
pause_on_io: PauseOnIO | None = None
|
|
3477
3409
|
"""
|
|
3478
3410
|
Defines an input/output that is listened to during the movement. Execution pauses if the defined comparator evaluates to `true`.
|
|
3479
3411
|
|
|
@@ -3517,12 +3449,10 @@ class PlaybackSpeedRequest(BaseModel):
|
|
|
3517
3449
|
|
|
3518
3450
|
class ExecuteTrajectoryRequest(RootModel):
|
|
3519
3451
|
root: Annotated[
|
|
3520
|
-
|
|
3521
|
-
|
|
3522
|
-
|
|
3523
|
-
|
|
3524
|
-
PlaybackSpeedRequest,
|
|
3525
|
-
],
|
|
3452
|
+
InitializeMovementRequest
|
|
3453
|
+
| StartMovementRequest
|
|
3454
|
+
| PauseMovementRequest
|
|
3455
|
+
| PlaybackSpeedRequest,
|
|
3526
3456
|
Field(discriminator='message_type', title='ExecuteTrajectoryRequest'),
|
|
3527
3457
|
]
|
|
3528
3458
|
|
|
@@ -3533,11 +3463,11 @@ class InitializeMovementResponse(BaseModel):
|
|
|
3533
3463
|
|
|
3534
3464
|
"""
|
|
3535
3465
|
|
|
3536
|
-
message:
|
|
3466
|
+
message: str | None = None
|
|
3537
3467
|
"""
|
|
3538
3468
|
Error message in case of invalid InitializeMovementRequest.
|
|
3539
3469
|
"""
|
|
3540
|
-
add_trajectory_error:
|
|
3470
|
+
add_trajectory_error: AddTrajectoryError | None = None
|
|
3541
3471
|
"""
|
|
3542
3472
|
Error can occur if joint trajectory was added by [InitializeMovementRequest](InitializeMovementRequest) and the trajectory is invalid.
|
|
3543
3473
|
|
|
@@ -3553,7 +3483,7 @@ class StartMovementResponse(BaseModel):
|
|
|
3553
3483
|
|
|
3554
3484
|
"""
|
|
3555
3485
|
|
|
3556
|
-
message:
|
|
3486
|
+
message: str | None = None
|
|
3557
3487
|
"""
|
|
3558
3488
|
Error message in case of invalid StartMovementResquest.
|
|
3559
3489
|
"""
|
|
@@ -3568,7 +3498,7 @@ class PauseMovementResponse(BaseModel):
|
|
|
3568
3498
|
|
|
3569
3499
|
"""
|
|
3570
3500
|
|
|
3571
|
-
message:
|
|
3501
|
+
message: str | None = None
|
|
3572
3502
|
"""
|
|
3573
3503
|
Error message in case of invalid PauseMovementResquest.
|
|
3574
3504
|
"""
|
|
@@ -3581,7 +3511,7 @@ class PlaybackSpeedResponse(BaseModel):
|
|
|
3581
3511
|
|
|
3582
3512
|
"""
|
|
3583
3513
|
|
|
3584
|
-
message:
|
|
3514
|
+
message: str | None = None
|
|
3585
3515
|
"""
|
|
3586
3516
|
Error message in case of invalid PlaybackSpeedRequest.
|
|
3587
3517
|
"""
|
|
@@ -3603,13 +3533,11 @@ class MovementErrorResponse(BaseModel):
|
|
|
3603
3533
|
|
|
3604
3534
|
class ExecuteTrajectoryResponse(RootModel):
|
|
3605
3535
|
root: Annotated[
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3609
|
-
|
|
3610
|
-
|
|
3611
|
-
MovementErrorResponse,
|
|
3612
|
-
],
|
|
3536
|
+
InitializeMovementResponse
|
|
3537
|
+
| StartMovementResponse
|
|
3538
|
+
| PauseMovementResponse
|
|
3539
|
+
| PlaybackSpeedResponse
|
|
3540
|
+
| MovementErrorResponse,
|
|
3613
3541
|
Field(discriminator='kind', title='ExecuteTrajectoryResponse'),
|
|
3614
3542
|
]
|
|
3615
3543
|
|
|
@@ -3628,12 +3556,12 @@ class InitializeJoggingRequest(BaseModel):
|
|
|
3628
3556
|
"""
|
|
3629
3557
|
Identifier of the motion group.
|
|
3630
3558
|
"""
|
|
3631
|
-
tcp:
|
|
3559
|
+
tcp: str | None = None
|
|
3632
3560
|
"""
|
|
3633
3561
|
Identifier of the tool. Required for robots (all limits, including TCP limits, are respected at all times regardless of the motion). Not required for external axes.
|
|
3634
3562
|
|
|
3635
3563
|
"""
|
|
3636
|
-
response_coordinate_system:
|
|
3564
|
+
response_coordinate_system: str | None = None
|
|
3637
3565
|
"""
|
|
3638
3566
|
Unique identifier addressing a coordinate system to which the responses are transformed.
|
|
3639
3567
|
If not set, world coordinate system is used.
|
|
@@ -3671,7 +3599,7 @@ class TcpVelocityRequest(BaseModel):
|
|
|
3671
3599
|
"""
|
|
3672
3600
|
translation: Vector3d
|
|
3673
3601
|
rotation: Vector3d
|
|
3674
|
-
use_tool_coordinate_system:
|
|
3602
|
+
use_tool_coordinate_system: bool | None = False
|
|
3675
3603
|
"""
|
|
3676
3604
|
If true, TCP velocities are interpreted in the tool coordinate system, specified by the TCP.
|
|
3677
3605
|
If false, TCP velocities are interpreted in the world coordinate system.
|
|
@@ -3694,12 +3622,10 @@ class PauseJoggingRequest(BaseModel):
|
|
|
3694
3622
|
|
|
3695
3623
|
class ExecuteJoggingRequest(RootModel):
|
|
3696
3624
|
root: Annotated[
|
|
3697
|
-
|
|
3698
|
-
|
|
3699
|
-
|
|
3700
|
-
|
|
3701
|
-
PauseJoggingRequest,
|
|
3702
|
-
],
|
|
3625
|
+
InitializeJoggingRequest
|
|
3626
|
+
| JointVelocityRequest
|
|
3627
|
+
| TcpVelocityRequest
|
|
3628
|
+
| PauseJoggingRequest,
|
|
3703
3629
|
Field(discriminator='message_type', title='ExecuteJoggingRequest'),
|
|
3704
3630
|
]
|
|
3705
3631
|
|
|
@@ -3710,7 +3636,7 @@ class InitializeJoggingResponse(BaseModel):
|
|
|
3710
3636
|
|
|
3711
3637
|
"""
|
|
3712
3638
|
|
|
3713
|
-
message:
|
|
3639
|
+
message: str | None = None
|
|
3714
3640
|
"""
|
|
3715
3641
|
Error message in case of invalid InitializeJoggingRequest.
|
|
3716
3642
|
"""
|
|
@@ -3723,7 +3649,7 @@ class PauseJoggingResponse(BaseModel):
|
|
|
3723
3649
|
|
|
3724
3650
|
"""
|
|
3725
3651
|
|
|
3726
|
-
message:
|
|
3652
|
+
message: str | None = None
|
|
3727
3653
|
"""
|
|
3728
3654
|
Error message in case of invalid PauseJoggingRequest.
|
|
3729
3655
|
"""
|
|
@@ -3736,7 +3662,7 @@ class TcpVelocityResponse(BaseModel):
|
|
|
3736
3662
|
|
|
3737
3663
|
"""
|
|
3738
3664
|
|
|
3739
|
-
message:
|
|
3665
|
+
message: str | None = None
|
|
3740
3666
|
"""
|
|
3741
3667
|
Error message in case of invalid TcpVelocityRequest.
|
|
3742
3668
|
"""
|
|
@@ -3749,7 +3675,7 @@ class JointVelocityResponse(BaseModel):
|
|
|
3749
3675
|
|
|
3750
3676
|
"""
|
|
3751
3677
|
|
|
3752
|
-
message:
|
|
3678
|
+
message: str | None = None
|
|
3753
3679
|
"""
|
|
3754
3680
|
Error message in case of invalid JointVelocityRequest.
|
|
3755
3681
|
"""
|
|
@@ -3758,13 +3684,11 @@ class JointVelocityResponse(BaseModel):
|
|
|
3758
3684
|
|
|
3759
3685
|
class ExecuteJoggingResponse(RootModel):
|
|
3760
3686
|
root: Annotated[
|
|
3761
|
-
|
|
3762
|
-
|
|
3763
|
-
|
|
3764
|
-
|
|
3765
|
-
|
|
3766
|
-
MovementErrorResponse,
|
|
3767
|
-
],
|
|
3687
|
+
InitializeJoggingResponse
|
|
3688
|
+
| PauseJoggingResponse
|
|
3689
|
+
| TcpVelocityResponse
|
|
3690
|
+
| JointVelocityResponse
|
|
3691
|
+
| MovementErrorResponse,
|
|
3768
3692
|
Field(discriminator='kind', title='ExecuteJoggingResponse'),
|
|
3769
3693
|
]
|
|
3770
3694
|
|
|
@@ -3784,14 +3708,14 @@ class Program(BaseModel):
|
|
|
3784
3708
|
title='Unique program identifier',
|
|
3785
3709
|
),
|
|
3786
3710
|
]
|
|
3787
|
-
name: Annotated[
|
|
3788
|
-
description: Annotated[
|
|
3711
|
+
name: Annotated[str | None, Field(title='Program name')] = None
|
|
3712
|
+
description: Annotated[str | None, Field(title='Program description')] = None
|
|
3789
3713
|
app: Annotated[str, Field(title='The app containing the program.')]
|
|
3790
3714
|
input_schema: Annotated[
|
|
3791
|
-
|
|
3715
|
+
dict[str, Any] | None, Field(title='Program input json schema')
|
|
3792
3716
|
] = None
|
|
3793
3717
|
preconditions: Annotated[
|
|
3794
|
-
|
|
3718
|
+
dict[str, Any] | None,
|
|
3795
3719
|
Field(title='Preconditions before the program can be started'),
|
|
3796
3720
|
] = None
|
|
3797
3721
|
|
|
@@ -3801,7 +3725,7 @@ class ProgramStartRequest(BaseModel):
|
|
|
3801
3725
|
The state of a program run.
|
|
3802
3726
|
"""
|
|
3803
3727
|
|
|
3804
|
-
arguments:
|
|
3728
|
+
arguments: dict[str, Any]
|
|
3805
3729
|
"""
|
|
3806
3730
|
The arguments to pass to the program.
|
|
3807
3731
|
"""
|
|
@@ -3832,7 +3756,7 @@ class ProgramRun(BaseModel):
|
|
|
3832
3756
|
"""
|
|
3833
3757
|
Unique identifier of the program
|
|
3834
3758
|
"""
|
|
3835
|
-
app: Annotated[
|
|
3759
|
+
app: Annotated[str | None, Field(title='App Id')] = None
|
|
3836
3760
|
"""
|
|
3837
3761
|
Identifier of the app that produced the program run
|
|
3838
3762
|
"""
|
|
@@ -3840,35 +3764,35 @@ class ProgramRun(BaseModel):
|
|
|
3840
3764
|
"""
|
|
3841
3765
|
State of the program run
|
|
3842
3766
|
"""
|
|
3843
|
-
logs: Annotated[
|
|
3767
|
+
logs: Annotated[str | None, Field(title='Logs')] = None
|
|
3844
3768
|
"""
|
|
3845
3769
|
Logs of the program run
|
|
3846
3770
|
"""
|
|
3847
|
-
stdout: Annotated[
|
|
3771
|
+
stdout: Annotated[str | None, Field(title='Stdout')] = None
|
|
3848
3772
|
"""
|
|
3849
3773
|
Stdout of the program run
|
|
3850
3774
|
"""
|
|
3851
|
-
stderr: Annotated[
|
|
3775
|
+
stderr: Annotated[str | None, Field(title='Stderr')] = None
|
|
3852
3776
|
"""
|
|
3853
3777
|
Stderr of the program run
|
|
3854
3778
|
"""
|
|
3855
|
-
error: Annotated[
|
|
3779
|
+
error: Annotated[str | None, Field(title='Error')] = None
|
|
3856
3780
|
"""
|
|
3857
3781
|
Error message of the program run, if any
|
|
3858
3782
|
"""
|
|
3859
|
-
traceback: Annotated[
|
|
3783
|
+
traceback: Annotated[str | None, Field(title='Traceback')] = None
|
|
3860
3784
|
"""
|
|
3861
3785
|
Traceback of the program run, if any
|
|
3862
3786
|
"""
|
|
3863
|
-
start_time: Annotated[
|
|
3787
|
+
start_time: Annotated[AwareDatetime | None, Field(title='Start Time')] = None
|
|
3864
3788
|
"""
|
|
3865
3789
|
Start time of the program run in RFC3339 format
|
|
3866
3790
|
"""
|
|
3867
|
-
end_time: Annotated[
|
|
3791
|
+
end_time: Annotated[AwareDatetime | None, Field(title='End Time')] = None
|
|
3868
3792
|
"""
|
|
3869
3793
|
End time of the program run in RFC3339 format
|
|
3870
3794
|
"""
|
|
3871
|
-
input_data: Annotated[
|
|
3795
|
+
input_data: Annotated[dict[str, Any] | None, Field(title='Input Data')] = None
|
|
3872
3796
|
"""
|
|
3873
3797
|
Input data of the program run
|
|
3874
3798
|
"""
|
|
@@ -3879,13 +3803,13 @@ class ValidationError2(BaseModel):
|
|
|
3879
3803
|
A validation error of a program.
|
|
3880
3804
|
"""
|
|
3881
3805
|
|
|
3882
|
-
loc: Annotated[
|
|
3806
|
+
loc: Annotated[list[int], Field(title='Location')]
|
|
3883
3807
|
msg: Annotated[str, Field(title='Message')]
|
|
3884
3808
|
type: Annotated[str, Field(title='Error Type')]
|
|
3885
3809
|
|
|
3886
3810
|
|
|
3887
3811
|
class HTTPValidationError(BaseModel):
|
|
3888
|
-
detail: Annotated[
|
|
3812
|
+
detail: Annotated[list[ValidationError2] | None, Field(title='Detail')] = None
|
|
3889
3813
|
|
|
3890
3814
|
|
|
3891
3815
|
class MotionGroupInfo(BaseModel):
|
|
@@ -3907,7 +3831,7 @@ class MotionGroupInfo(BaseModel):
|
|
|
3907
3831
|
|
|
3908
3832
|
|
|
3909
3833
|
class MotionGroupInfos(RootModel):
|
|
3910
|
-
root:
|
|
3834
|
+
root: list[MotionGroupInfo]
|
|
3911
3835
|
|
|
3912
3836
|
def __getitem__(self, index: int) -> MotionGroupInfo:
|
|
3913
3837
|
"""
|
|
@@ -3940,22 +3864,22 @@ class MotionGroupJoints(BaseModel):
|
|
|
3940
3864
|
Everything but positions is optional.
|
|
3941
3865
|
"""
|
|
3942
3866
|
|
|
3943
|
-
positions:
|
|
3867
|
+
positions: list[float]
|
|
3944
3868
|
"""
|
|
3945
3869
|
The joint positions of the motion group.
|
|
3946
3870
|
|
|
3947
3871
|
"""
|
|
3948
|
-
velocities:
|
|
3872
|
+
velocities: list[float] | None = None
|
|
3949
3873
|
"""
|
|
3950
3874
|
The joint velocities of the motion group.
|
|
3951
3875
|
|
|
3952
3876
|
"""
|
|
3953
|
-
accelerations:
|
|
3877
|
+
accelerations: list[float] | None = None
|
|
3954
3878
|
"""
|
|
3955
3879
|
The joint accelerations of the motion group.
|
|
3956
3880
|
|
|
3957
3881
|
"""
|
|
3958
|
-
torques:
|
|
3882
|
+
torques: list[float] | None = None
|
|
3959
3883
|
"""
|
|
3960
3884
|
The joint torques of the motion group.
|
|
3961
3885
|
|
|
@@ -3963,13 +3887,13 @@ class MotionGroupJoints(BaseModel):
|
|
|
3963
3887
|
|
|
3964
3888
|
|
|
3965
3889
|
class RobotTcpData(BaseModel):
|
|
3966
|
-
name:
|
|
3890
|
+
name: str | None = None
|
|
3967
3891
|
"""
|
|
3968
3892
|
A readable and changeable name for frontend visualization.
|
|
3969
3893
|
"""
|
|
3970
3894
|
position: Vector3d
|
|
3971
|
-
orientation:
|
|
3972
|
-
orientation_type:
|
|
3895
|
+
orientation: Orientation | None = None
|
|
3896
|
+
orientation_type: OrientationType | None = 'ROTATION_VECTOR'
|
|
3973
3897
|
|
|
3974
3898
|
|
|
3975
3899
|
class RobotTcp(RobotTcpData):
|
|
@@ -3981,7 +3905,7 @@ class RobotTcp(RobotTcpData):
|
|
|
3981
3905
|
|
|
3982
3906
|
class RobotTcps(RootModel):
|
|
3983
3907
|
root: Annotated[
|
|
3984
|
-
|
|
3908
|
+
list[RobotTcp],
|
|
3985
3909
|
Field(
|
|
3986
3910
|
examples=[
|
|
3987
3911
|
[
|
|
@@ -4087,7 +4011,7 @@ class ExternalJointStreamDatapoint(BaseModel):
|
|
|
4087
4011
|
|
|
4088
4012
|
|
|
4089
4013
|
class ExternalJointStreamDatapoints(RootModel):
|
|
4090
|
-
root:
|
|
4014
|
+
root: list[ExternalJointStreamDatapoint]
|
|
4091
4015
|
|
|
4092
4016
|
def __getitem__(self, index: int) -> ExternalJointStreamDatapoint:
|
|
4093
4017
|
"""
|
|
@@ -4133,7 +4057,7 @@ class MetadataObject(RootModel):
|
|
|
4133
4057
|
A metadata object.
|
|
4134
4058
|
"""
|
|
4135
4059
|
|
|
4136
|
-
root:
|
|
4060
|
+
root: dict[str, str]
|
|
4137
4061
|
|
|
4138
4062
|
|
|
4139
4063
|
class BinaryObject(RootModel):
|
|
@@ -4156,13 +4080,13 @@ class BusIODescription(BaseModel):
|
|
|
4156
4080
|
"""
|
|
4157
4081
|
direction: IODirection
|
|
4158
4082
|
value_type: IOValueType
|
|
4159
|
-
unit:
|
|
4160
|
-
min:
|
|
4161
|
-
max:
|
|
4083
|
+
unit: UnitType | None = None
|
|
4084
|
+
min: IOBoundary | None = None
|
|
4085
|
+
max: IOBoundary | None = None
|
|
4162
4086
|
|
|
4163
4087
|
|
|
4164
4088
|
class ListBusIODescriptionsResponse(RootModel):
|
|
4165
|
-
root:
|
|
4089
|
+
root: list[BusIODescription]
|
|
4166
4090
|
|
|
4167
4091
|
def __getitem__(self, index: int) -> BusIODescription:
|
|
4168
4092
|
"""
|
|
@@ -4203,7 +4127,7 @@ class BusIOsStateEnum(Enum):
|
|
|
4203
4127
|
|
|
4204
4128
|
class BusIOsState(BaseModel):
|
|
4205
4129
|
state: BusIOsStateEnum
|
|
4206
|
-
message:
|
|
4130
|
+
message: str | None = None
|
|
4207
4131
|
"""
|
|
4208
4132
|
A message providing additional information on the input/output service, e.g., BUS service status, encountered errors.
|
|
4209
4133
|
May be empty if no additional information is available.
|
|
@@ -4251,7 +4175,7 @@ class ProfinetSlotDescription(BaseModel):
|
|
|
4251
4175
|
The API identifies the application relation (AR) that is using the slot.
|
|
4252
4176
|
|
|
4253
4177
|
"""
|
|
4254
|
-
subslots:
|
|
4178
|
+
subslots: list[ProfinetSubSlotDescription]
|
|
4255
4179
|
"""
|
|
4256
4180
|
An array of PROFINET subslots.
|
|
4257
4181
|
|
|
@@ -4269,14 +4193,14 @@ class ProfinetDescription(BaseModel):
|
|
|
4269
4193
|
The device identifier of the PROFINET device, identifying the specific device within the vendor's range.
|
|
4270
4194
|
|
|
4271
4195
|
"""
|
|
4272
|
-
slots:
|
|
4273
|
-
device_name: Annotated[
|
|
4196
|
+
slots: list[ProfinetSlotDescription] | None = None
|
|
4197
|
+
device_name: Annotated[str | None, Field(examples=['pnDevice'])] = None
|
|
4274
4198
|
"""
|
|
4275
4199
|
Name of Station (NoS) of the PROFINET device. The NoS is used in combination with IPv4 record to identify your device in the PROFINET network.
|
|
4276
4200
|
The `device_name` will be used as NoS if no REMA XML file is already present on your NOVA instance and no `rema_xml_content` is provided.
|
|
4277
4201
|
|
|
4278
4202
|
"""
|
|
4279
|
-
ip_config:
|
|
4203
|
+
ip_config: BusIOProfinetIpConfig | None = None
|
|
4280
4204
|
|
|
4281
4205
|
|
|
4282
4206
|
class ProfinetIOTypeEnum(Enum):
|
|
@@ -4325,7 +4249,7 @@ class ProfinetIOData(BaseModel):
|
|
|
4325
4249
|
The byte address is used to locate the specific input/output variable within the device's memory or data structure.
|
|
4326
4250
|
|
|
4327
4251
|
"""
|
|
4328
|
-
bit_address: Annotated[
|
|
4252
|
+
bit_address: Annotated[int | None, Field(ge=0, le=7)] = None
|
|
4329
4253
|
"""
|
|
4330
4254
|
The bit address of the input/output variable within the byte or word address.
|
|
4331
4255
|
The bit address is used to specify the exact bit within the byte or word that corresponds to the input/output variable.
|
|
@@ -4347,7 +4271,7 @@ class ProfinetIOs(RootModel):
|
|
|
4347
4271
|
Array of PROFINET input/output variable configurations.
|
|
4348
4272
|
"""
|
|
4349
4273
|
|
|
4350
|
-
root:
|
|
4274
|
+
root: list[ProfinetIO]
|
|
4351
4275
|
"""
|
|
4352
4276
|
Array of PROFINET input/output variable configurations.
|
|
4353
4277
|
"""
|
|
@@ -4478,7 +4402,7 @@ class ModbusIOs(RootModel):
|
|
|
4478
4402
|
Array of MODBUS input/output variable configurations.
|
|
4479
4403
|
"""
|
|
4480
4404
|
|
|
4481
|
-
root:
|
|
4405
|
+
root: list[ModbusIO]
|
|
4482
4406
|
"""
|
|
4483
4407
|
Array of MODBUS input/output variable configurations.
|
|
4484
4408
|
"""
|
|
@@ -4525,7 +4449,7 @@ class ConfigurationResource(BaseModel):
|
|
|
4525
4449
|
"""
|
|
4526
4450
|
Human-readable name of the configuration resource.
|
|
4527
4451
|
"""
|
|
4528
|
-
children:
|
|
4452
|
+
children: ConfigurationResourceArray | None = None
|
|
4529
4453
|
|
|
4530
4454
|
|
|
4531
4455
|
class ConfigurationResourceArray(RootModel):
|
|
@@ -4533,7 +4457,7 @@ class ConfigurationResourceArray(RootModel):
|
|
|
4533
4457
|
Array of configuration resources.
|
|
4534
4458
|
"""
|
|
4535
4459
|
|
|
4536
|
-
root:
|
|
4460
|
+
root: list[ConfigurationResource]
|
|
4537
4461
|
"""
|
|
4538
4462
|
Array of configuration resources.
|
|
4539
4463
|
"""
|