wandelbots-api-client 25.10.0.dev35__py3-none-any.whl → 26.1.0.dev50__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- wandelbots_api_client/__init__.py +2 -3
- wandelbots_api_client/api/__init__.py +2 -0
- wandelbots_api_client/api/application_api.py +1 -2
- wandelbots_api_client/api/cell_api.py +1 -2
- wandelbots_api_client/api/controller_api.py +1 -2
- wandelbots_api_client/api/controller_ios_api.py +1 -2
- wandelbots_api_client/api/coordinate_systems_api.py +1 -2
- wandelbots_api_client/api/device_configuration_api.py +1 -2
- wandelbots_api_client/api/library_program_api.py +1 -2
- wandelbots_api_client/api/library_program_metadata_api.py +1 -2
- wandelbots_api_client/api/library_recipe_api.py +1 -2
- wandelbots_api_client/api/library_recipe_metadata_api.py +1 -2
- wandelbots_api_client/api/license_api.py +1 -2
- wandelbots_api_client/api/motion_api.py +4 -5
- wandelbots_api_client/api/motion_group_api.py +1 -2
- wandelbots_api_client/api/motion_group_infos_api.py +1 -2
- wandelbots_api_client/api/motion_group_jogging_api.py +1 -2
- wandelbots_api_client/api/motion_group_kinematic_api.py +1 -2
- wandelbots_api_client/api/program_api.py +1 -2
- wandelbots_api_client/api/program_operator_api.py +1 -2
- wandelbots_api_client/api/program_values_api.py +1 -2
- wandelbots_api_client/api/store_collision_components_api.py +1 -2
- wandelbots_api_client/api/store_collision_scenes_api.py +1 -2
- wandelbots_api_client/api/store_object_api.py +1 -2
- wandelbots_api_client/api/system_api.py +1 -2
- wandelbots_api_client/api/version_api.py +284 -0
- wandelbots_api_client/api/virtual_robot_api.py +1 -2
- wandelbots_api_client/api/virtual_robot_behavior_api.py +1 -2
- wandelbots_api_client/api/virtual_robot_mode_api.py +1 -2
- wandelbots_api_client/api/virtual_robot_setup_api.py +1 -2
- wandelbots_api_client/api_client.py +14 -7
- wandelbots_api_client/configuration.py +18 -7
- wandelbots_api_client/exceptions.py +1 -1
- wandelbots_api_client/models/__init__.py +3 -4
- 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 +91 -0
- 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 +5 -4
- 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 -41
- 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 +5 -4
- wandelbots_api_client/models/collision_motion_group_assembly.py +5 -4
- wandelbots_api_client/models/collision_robot_configuration_input.py +9 -7
- wandelbots_api_client/models/collision_robot_configuration_output.py +9 -7
- wandelbots_api_client/models/collision_scene.py +9 -7
- wandelbots_api_client/models/collision_scene_assembly.py +9 -7
- 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 +4 -4
- 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 +5 -4
- 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 +5 -4
- 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 +5 -4
- 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 +9 -7
- wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_output.py +9 -7
- 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 +4 -4
- 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 +4 -4
- 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 +8 -1
- wandelbots_api_client/models/virtual_robot_configuration.py +1 -1
- wandelbots_api_client/models/yaskawa_controller.py +1 -1
- wandelbots_api_client/rest.py +3 -2
- wandelbots_api_client/v2/__init__.py +3 -4
- wandelbots_api_client/v2/api/__init__.py +2 -0
- wandelbots_api_client/v2/api/application_api.py +2 -3
- wandelbots_api_client/v2/api/bus_inputs_outputs_api.py +581 -3
- wandelbots_api_client/v2/api/cell_api.py +2 -3
- wandelbots_api_client/v2/api/controller_api.py +5 -6
- wandelbots_api_client/v2/api/controller_inputs_outputs_api.py +2 -3
- wandelbots_api_client/v2/api/jogging_api.py +3 -4
- wandelbots_api_client/v2/api/kinematics_api.py +2 -3
- wandelbots_api_client/v2/api/license_api.py +2 -3
- wandelbots_api_client/v2/api/motion_group_api.py +4 -5
- wandelbots_api_client/v2/api/motion_group_models_api.py +532 -5
- wandelbots_api_client/v2/api/program_api.py +14 -15
- wandelbots_api_client/v2/api/store_collision_components_api.py +2 -3
- wandelbots_api_client/v2/api/store_collision_setups_api.py +2 -3
- wandelbots_api_client/v2/api/store_object_api.py +2 -3
- wandelbots_api_client/v2/api/system_api.py +6 -6
- wandelbots_api_client/v2/api/trajectory_caching_api.py +2 -3
- wandelbots_api_client/v2/api/trajectory_execution_api.py +3 -4
- wandelbots_api_client/v2/api/trajectory_planning_api.py +2 -3
- wandelbots_api_client/v2/api/version_api.py +284 -0
- wandelbots_api_client/v2/api/virtual_controller_api.py +2 -3
- wandelbots_api_client/v2/api/virtual_controller_behavior_api.py +2 -3
- wandelbots_api_client/v2/api/virtual_controller_inputs_outputs_api.py +2 -3
- wandelbots_api_client/v2/api_client.py +15 -8
- wandelbots_api_client/v2/configuration.py +19 -8
- wandelbots_api_client/v2/exceptions.py +2 -2
- wandelbots_api_client/v2/models/__init__.py +6 -3
- wandelbots_api_client/v2/models/abb_controller.py +2 -2
- wandelbots_api_client/v2/models/abb_controller_egm_server.py +2 -2
- wandelbots_api_client/v2/models/activate_license_request.py +2 -2
- wandelbots_api_client/v2/models/add_trajectory_error.py +2 -2
- wandelbots_api_client/v2/models/add_trajectory_error_data.py +2 -2
- wandelbots_api_client/v2/models/add_trajectory_request.py +2 -2
- wandelbots_api_client/v2/models/add_trajectory_response.py +2 -2
- wandelbots_api_client/v2/models/api_version.py +91 -0
- wandelbots_api_client/v2/models/app.py +2 -2
- wandelbots_api_client/v2/models/behavior.py +2 -2
- wandelbots_api_client/v2/models/blending_auto.py +5 -4
- wandelbots_api_client/v2/models/blending_position.py +17 -3
- wandelbots_api_client/v2/models/blending_space.py +37 -0
- wandelbots_api_client/v2/models/boolean_value.py +2 -2
- wandelbots_api_client/v2/models/box.py +2 -2
- wandelbots_api_client/v2/models/bus_io_description.py +2 -2
- wandelbots_api_client/v2/models/bus_io_modbus_client.py +2 -2
- wandelbots_api_client/v2/models/bus_io_modbus_server.py +2 -2
- wandelbots_api_client/v2/models/bus_io_modbus_tcp_client.py +2 -2
- wandelbots_api_client/v2/models/bus_io_modbus_tcp_server.py +2 -2
- wandelbots_api_client/v2/models/bus_io_modbus_virtual.py +2 -2
- wandelbots_api_client/v2/models/bus_io_profinet.py +2 -2
- wandelbots_api_client/v2/models/bus_io_profinet_default_route.py +2 -2
- wandelbots_api_client/v2/models/bus_io_profinet_ip_config.py +2 -2
- wandelbots_api_client/v2/models/bus_io_profinet_network.py +2 -2
- wandelbots_api_client/v2/models/bus_io_profinet_virtual.py +2 -2
- wandelbots_api_client/v2/models/bus_io_type.py +2 -27
- wandelbots_api_client/v2/models/bus_ios_state.py +2 -2
- wandelbots_api_client/v2/models/bus_ios_state_enum.py +2 -2
- wandelbots_api_client/v2/models/capsule.py +2 -2
- wandelbots_api_client/v2/models/cartesian_limits.py +2 -2
- wandelbots_api_client/v2/models/cell.py +2 -2
- wandelbots_api_client/v2/models/collider.py +2 -2
- wandelbots_api_client/v2/models/collider_shape.py +2 -42
- wandelbots_api_client/v2/models/collision.py +2 -2
- wandelbots_api_client/v2/models/collision_contact.py +2 -2
- wandelbots_api_client/v2/models/collision_error.py +2 -2
- wandelbots_api_client/v2/models/collision_free_algorithm.py +3 -3
- wandelbots_api_client/v2/models/collision_setup.py +10 -8
- wandelbots_api_client/v2/models/comparator.py +2 -2
- wandelbots_api_client/v2/models/configuration_archive_status.py +2 -17
- wandelbots_api_client/v2/models/configuration_archive_status_creating.py +2 -2
- wandelbots_api_client/v2/models/configuration_archive_status_error.py +2 -2
- wandelbots_api_client/v2/models/configuration_archive_status_success.py +2 -2
- wandelbots_api_client/v2/models/configuration_resource.py +2 -2
- wandelbots_api_client/v2/models/container_environment_inner.py +2 -2
- wandelbots_api_client/v2/models/container_image.py +2 -2
- wandelbots_api_client/v2/models/container_image_secrets_inner.py +2 -2
- wandelbots_api_client/v2/models/container_resources.py +2 -2
- wandelbots_api_client/v2/models/container_storage.py +2 -2
- wandelbots_api_client/v2/models/controller_description.py +2 -2
- wandelbots_api_client/v2/models/convex_hull.py +2 -2
- wandelbots_api_client/v2/models/coordinate_system.py +2 -2
- wandelbots_api_client/v2/models/coordinate_system_data.py +2 -2
- wandelbots_api_client/v2/models/cubic_spline_parameter.py +2 -2
- wandelbots_api_client/v2/models/cycle_time.py +5 -4
- wandelbots_api_client/v2/models/cylinder.py +2 -2
- wandelbots_api_client/v2/models/dh_parameter.py +2 -2
- wandelbots_api_client/v2/models/direction.py +2 -2
- wandelbots_api_client/v2/models/error.py +2 -2
- wandelbots_api_client/v2/models/error_invalid_joint_count.py +2 -2
- wandelbots_api_client/v2/models/error_joint_limit_exceeded.py +4 -3
- wandelbots_api_client/v2/models/error_joint_position_collision.py +2 -2
- wandelbots_api_client/v2/models/error_max_iterations_exceeded.py +2 -2
- wandelbots_api_client/v2/models/execute.py +2 -2
- wandelbots_api_client/v2/models/execute_details.py +2 -12
- wandelbots_api_client/v2/models/execute_jogging_request.py +2 -2
- wandelbots_api_client/v2/models/execute_jogging_response.py +2 -27
- wandelbots_api_client/v2/models/execute_trajectory_request.py +2 -2
- wandelbots_api_client/v2/models/execute_trajectory_response.py +2 -27
- wandelbots_api_client/v2/models/external_joint_stream_datapoint.py +2 -2
- wandelbots_api_client/v2/models/external_joint_stream_request.py +2 -2
- wandelbots_api_client/v2/models/fanuc_controller.py +2 -2
- wandelbots_api_client/v2/models/feedback_collision.py +2 -2
- wandelbots_api_client/v2/models/feedback_joint_limit_exceeded.py +5 -4
- wandelbots_api_client/v2/models/feedback_out_of_workspace.py +2 -2
- wandelbots_api_client/v2/models/feedback_singularity.py +2 -2
- wandelbots_api_client/v2/models/flag.py +2 -2
- wandelbots_api_client/v2/models/float_value.py +2 -2
- wandelbots_api_client/v2/models/forward_kinematics422_response.py +2 -2
- wandelbots_api_client/v2/models/forward_kinematics_request.py +2 -2
- wandelbots_api_client/v2/models/forward_kinematics_response.py +2 -2
- wandelbots_api_client/v2/models/forward_kinematics_validation_error.py +2 -2
- wandelbots_api_client/v2/models/get_trajectory_response.py +2 -2
- wandelbots_api_client/v2/models/http_validation_error.py +2 -2
- wandelbots_api_client/v2/models/image_credentials.py +2 -2
- wandelbots_api_client/v2/models/inconsistent_trajectory_size_error.py +2 -2
- wandelbots_api_client/v2/models/inconsistent_trajectory_size_error_inconsistent_trajectory_size.py +2 -2
- wandelbots_api_client/v2/models/initialize_jogging_request.py +2 -2
- wandelbots_api_client/v2/models/initialize_jogging_response.py +2 -2
- wandelbots_api_client/v2/models/initialize_movement_request.py +2 -2
- wandelbots_api_client/v2/models/initialize_movement_request_trajectory.py +2 -2
- wandelbots_api_client/v2/models/initialize_movement_response.py +2 -2
- wandelbots_api_client/v2/models/integer_value.py +2 -2
- wandelbots_api_client/v2/models/invalid_dof_error.py +2 -2
- wandelbots_api_client/v2/models/invalid_dof_error_invalid_dof.py +2 -2
- wandelbots_api_client/v2/models/inverse_kinematics422_response.py +2 -2
- wandelbots_api_client/v2/models/inverse_kinematics_request.py +6 -5
- wandelbots_api_client/v2/models/inverse_kinematics_response.py +2 -2
- wandelbots_api_client/v2/models/inverse_kinematics_validation_error.py +2 -2
- wandelbots_api_client/v2/models/inverse_kinematics_validation_error_all_of_data.py +2 -2
- wandelbots_api_client/v2/models/io_boolean_value.py +2 -2
- wandelbots_api_client/v2/models/io_boundary.py +2 -17
- wandelbots_api_client/v2/models/io_description.py +2 -2
- wandelbots_api_client/v2/models/io_direction.py +2 -2
- wandelbots_api_client/v2/models/io_float_value.py +2 -2
- wandelbots_api_client/v2/models/io_integer_value.py +2 -2
- wandelbots_api_client/v2/models/io_origin.py +2 -2
- wandelbots_api_client/v2/models/io_value.py +2 -17
- wandelbots_api_client/v2/models/io_value_type.py +2 -2
- wandelbots_api_client/v2/models/jogging_details.py +2 -2
- wandelbots_api_client/v2/models/jogging_details_state.py +2 -27
- wandelbots_api_client/v2/models/jogging_paused_by_user.py +2 -2
- wandelbots_api_client/v2/models/jogging_paused_near_collision.py +2 -2
- wandelbots_api_client/v2/models/jogging_paused_near_joint_limit.py +5 -4
- wandelbots_api_client/v2/models/jogging_paused_on_io.py +2 -2
- wandelbots_api_client/v2/models/jogging_running.py +2 -2
- wandelbots_api_client/v2/models/joint_limit_exceeded_error.py +2 -2
- wandelbots_api_client/v2/models/joint_limits.py +2 -2
- wandelbots_api_client/v2/models/joint_trajectory.py +2 -2
- wandelbots_api_client/v2/models/joint_velocity_request.py +2 -2
- wandelbots_api_client/v2/models/joint_velocity_response.py +2 -2
- wandelbots_api_client/v2/models/kuka_controller.py +2 -2
- wandelbots_api_client/v2/models/kuka_controller_rsi_server.py +2 -2
- wandelbots_api_client/v2/models/license.py +2 -2
- wandelbots_api_client/v2/models/license_status.py +2 -2
- wandelbots_api_client/v2/models/license_status_enum.py +2 -2
- wandelbots_api_client/v2/models/limit_range.py +2 -2
- wandelbots_api_client/v2/models/limit_set.py +2 -2
- wandelbots_api_client/v2/models/limits_override.py +2 -2
- wandelbots_api_client/v2/models/list_trajectories_response.py +2 -2
- wandelbots_api_client/v2/models/manufacturer.py +2 -2
- wandelbots_api_client/v2/models/midpoint_insertion_algorithm.py +2 -2
- wandelbots_api_client/v2/models/modbus_io.py +2 -2
- wandelbots_api_client/v2/models/modbus_io_area.py +2 -2
- wandelbots_api_client/v2/models/modbus_io_byte_order.py +2 -2
- wandelbots_api_client/v2/models/modbus_io_data.py +2 -2
- wandelbots_api_client/v2/models/modbus_io_type_enum.py +2 -2
- wandelbots_api_client/v2/models/motion_command.py +2 -2
- wandelbots_api_client/v2/models/motion_command_blending.py +2 -2
- wandelbots_api_client/v2/models/motion_command_path.py +2 -2
- wandelbots_api_client/v2/models/motion_group_description.py +25 -18
- wandelbots_api_client/v2/models/motion_group_info.py +5 -4
- wandelbots_api_client/v2/models/motion_group_joints.py +2 -2
- wandelbots_api_client/v2/models/motion_group_setup.py +9 -7
- wandelbots_api_client/v2/models/motion_group_state.py +4 -3
- wandelbots_api_client/v2/models/motion_group_state_joint_limit_reached.py +2 -2
- wandelbots_api_client/v2/models/movement_error_response.py +2 -2
- wandelbots_api_client/v2/models/nan_value_error.py +2 -2
- wandelbots_api_client/v2/models/nan_value_error_nan_value.py +2 -2
- wandelbots_api_client/v2/models/op_mode.py +2 -2
- wandelbots_api_client/v2/models/operating_state.py +2 -2
- wandelbots_api_client/v2/models/operation_limits.py +2 -2
- wandelbots_api_client/v2/models/operation_mode.py +2 -2
- wandelbots_api_client/v2/models/orientation_type.py +2 -2
- wandelbots_api_client/v2/models/path_cartesian_ptp.py +2 -2
- wandelbots_api_client/v2/models/path_circle.py +2 -2
- wandelbots_api_client/v2/models/path_cubic_spline.py +2 -2
- wandelbots_api_client/v2/models/path_joint_ptp.py +2 -2
- wandelbots_api_client/v2/models/path_line.py +2 -2
- wandelbots_api_client/v2/models/pause_jogging_request.py +2 -2
- wandelbots_api_client/v2/models/pause_jogging_response.py +2 -2
- wandelbots_api_client/v2/models/pause_movement_request.py +2 -2
- wandelbots_api_client/v2/models/pause_movement_response.py +2 -2
- wandelbots_api_client/v2/models/pause_on_io.py +2 -2
- wandelbots_api_client/v2/models/payload.py +2 -2
- wandelbots_api_client/v2/models/plan422_response.py +2 -2
- wandelbots_api_client/v2/models/plan_collision_free_failed_response.py +2 -2
- wandelbots_api_client/v2/models/plan_collision_free_request.py +2 -2
- wandelbots_api_client/v2/models/plan_collision_free_response.py +2 -2
- wandelbots_api_client/v2/models/plan_collision_free_response_response.py +2 -2
- wandelbots_api_client/v2/models/plan_trajectory_failed_response.py +2 -2
- wandelbots_api_client/v2/models/plan_trajectory_failed_response_error_feedback.py +2 -2
- wandelbots_api_client/v2/models/plan_trajectory_request.py +2 -2
- wandelbots_api_client/v2/models/plan_trajectory_response.py +2 -2
- wandelbots_api_client/v2/models/plan_trajectory_response_response.py +2 -2
- wandelbots_api_client/v2/models/plan_validation_error.py +2 -2
- wandelbots_api_client/v2/models/plan_validation_error_all_of_data.py +2 -2
- wandelbots_api_client/v2/models/plane.py +2 -2
- wandelbots_api_client/v2/models/playback_speed_request.py +5 -4
- wandelbots_api_client/v2/models/playback_speed_response.py +2 -2
- wandelbots_api_client/v2/models/pose.py +2 -2
- wandelbots_api_client/v2/models/profinet_description.py +2 -2
- wandelbots_api_client/v2/models/profinet_input_output_config.py +4 -4
- wandelbots_api_client/v2/models/profinet_io.py +2 -2
- wandelbots_api_client/v2/models/profinet_io_data.py +2 -2
- wandelbots_api_client/v2/models/profinet_io_direction.py +2 -2
- wandelbots_api_client/v2/models/profinet_io_type_enum.py +2 -2
- wandelbots_api_client/v2/models/profinet_slot_description.py +4 -4
- wandelbots_api_client/v2/models/profinet_sub_slot_description.py +5 -5
- wandelbots_api_client/v2/models/program.py +2 -2
- wandelbots_api_client/v2/models/program_run.py +2 -2
- wandelbots_api_client/v2/models/program_run_state.py +2 -2
- wandelbots_api_client/v2/models/program_start_request.py +2 -2
- wandelbots_api_client/v2/models/rectangle.py +2 -2
- wandelbots_api_client/v2/models/rectangular_capsule.py +2 -2
- wandelbots_api_client/v2/models/release_channel.py +2 -2
- wandelbots_api_client/v2/models/robot_controller.py +2 -2
- wandelbots_api_client/v2/models/robot_controller_configuration.py +2 -2
- wandelbots_api_client/v2/models/robot_controller_state.py +6 -5
- wandelbots_api_client/v2/models/robot_system_mode.py +2 -2
- wandelbots_api_client/v2/models/robot_tcp.py +2 -2
- wandelbots_api_client/v2/models/robot_tcp_data.py +2 -2
- wandelbots_api_client/v2/models/rrt_connect_algorithm.py +2 -2
- wandelbots_api_client/v2/models/safety_state_type.py +2 -2
- wandelbots_api_client/v2/models/service_group.py +2 -2
- wandelbots_api_client/v2/models/service_status.py +2 -2
- wandelbots_api_client/v2/models/service_status_phase.py +2 -2
- wandelbots_api_client/v2/models/service_status_response.py +2 -2
- wandelbots_api_client/v2/models/service_status_severity.py +2 -2
- wandelbots_api_client/v2/models/service_status_status.py +2 -2
- wandelbots_api_client/v2/models/set_io.py +2 -2
- wandelbots_api_client/v2/models/settable_robot_system_mode.py +2 -2
- wandelbots_api_client/v2/models/singularity_type_enum.py +2 -2
- wandelbots_api_client/v2/models/sphere.py +2 -2
- wandelbots_api_client/v2/models/start_movement_request.py +2 -2
- wandelbots_api_client/v2/models/start_movement_response.py +2 -2
- wandelbots_api_client/v2/models/start_on_io.py +2 -2
- wandelbots_api_client/v2/models/stream_io_values_response.py +5 -4
- wandelbots_api_client/v2/models/tcp_offset.py +2 -2
- wandelbots_api_client/v2/models/tcp_required_error.py +2 -2
- wandelbots_api_client/v2/models/tcp_velocity_request.py +2 -2
- wandelbots_api_client/v2/models/tcp_velocity_response.py +2 -2
- wandelbots_api_client/v2/models/torque_exceeded_error.py +2 -2
- wandelbots_api_client/v2/models/torque_exceeded_error_torque_exceeded.py +2 -2
- wandelbots_api_client/v2/models/trajectory_data.py +2 -2
- wandelbots_api_client/v2/models/trajectory_details.py +2 -2
- wandelbots_api_client/v2/models/trajectory_details_state.py +2 -27
- wandelbots_api_client/v2/models/trajectory_ended.py +2 -2
- wandelbots_api_client/v2/models/trajectory_id.py +2 -2
- wandelbots_api_client/v2/models/trajectory_paused_by_user.py +2 -2
- wandelbots_api_client/v2/models/trajectory_paused_on_io.py +2 -2
- wandelbots_api_client/v2/models/trajectory_running.py +5 -4
- wandelbots_api_client/v2/models/trajectory_wait_for_io.py +2 -2
- wandelbots_api_client/v2/models/unit_type.py +2 -2
- wandelbots_api_client/v2/models/universalrobots_controller.py +2 -2
- wandelbots_api_client/v2/models/update_nova_version_request.py +2 -2
- wandelbots_api_client/v2/models/validation_error.py +2 -2
- wandelbots_api_client/v2/models/validation_error2.py +2 -2
- wandelbots_api_client/v2/models/validation_error_loc_inner.py +2 -2
- wandelbots_api_client/v2/models/virtual_controller.py +2 -2
- wandelbots_api_client/v2/models/virtual_controller_types.py +9 -2
- wandelbots_api_client/v2/models/virtual_robot_configuration.py +2 -2
- wandelbots_api_client/v2/models/wait_for_io_event_request.py +2 -2
- wandelbots_api_client/v2/models/yaskawa_controller.py +2 -2
- wandelbots_api_client/v2/rest.py +4 -3
- wandelbots_api_client/v2_pydantic/__init__.py +3 -4
- wandelbots_api_client/v2_pydantic/api/__init__.py +2 -0
- wandelbots_api_client/v2_pydantic/api/application_api.py +20 -39
- wandelbots_api_client/v2_pydantic/api/bus_inputs_outputs_api.py +772 -236
- wandelbots_api_client/v2_pydantic/api/cell_api.py +23 -45
- wandelbots_api_client/v2_pydantic/api/controller_api.py +41 -78
- wandelbots_api_client/v2_pydantic/api/controller_inputs_outputs_api.py +14 -27
- wandelbots_api_client/v2_pydantic/api/jogging_api.py +3 -4
- wandelbots_api_client/v2_pydantic/api/kinematics_api.py +8 -15
- wandelbots_api_client/v2_pydantic/api/license_api.py +14 -27
- wandelbots_api_client/v2_pydantic/api/motion_group_api.py +10 -17
- wandelbots_api_client/v2_pydantic/api/motion_group_models_api.py +544 -17
- wandelbots_api_client/v2_pydantic/api/program_api.py +26 -39
- wandelbots_api_client/v2_pydantic/api/store_collision_components_api.py +47 -93
- wandelbots_api_client/v2_pydantic/api/store_collision_setups_api.py +17 -33
- wandelbots_api_client/v2_pydantic/api/store_object_api.py +20 -39
- wandelbots_api_client/v2_pydantic/api/system_api.py +33 -60
- wandelbots_api_client/v2_pydantic/api/trajectory_caching_api.py +17 -33
- wandelbots_api_client/v2_pydantic/api/trajectory_execution_api.py +3 -4
- wandelbots_api_client/v2_pydantic/api/trajectory_planning_api.py +8 -15
- wandelbots_api_client/v2_pydantic/api/version_api.py +287 -0
- wandelbots_api_client/v2_pydantic/api/virtual_controller_api.py +47 -93
- wandelbots_api_client/v2_pydantic/api/virtual_controller_behavior_api.py +11 -21
- wandelbots_api_client/v2_pydantic/api/virtual_controller_inputs_outputs_api.py +11 -21
- wandelbots_api_client/v2_pydantic/api_client.py +3 -4
- wandelbots_api_client/v2_pydantic/configuration.py +19 -8
- wandelbots_api_client/v2_pydantic/exceptions.py +2 -2
- wandelbots_api_client/v2_pydantic/models.py +451 -406
- wandelbots_api_client/v2_pydantic/rest.py +4 -3
- {wandelbots_api_client-25.10.0.dev35.dist-info → wandelbots_api_client-26.1.0.dev50.dist-info}/METADATA +3 -3
- wandelbots_api_client-26.1.0.dev50.dist-info/RECORD +641 -0
- wandelbots_api_client/models/create_trigger_request_config.py +0 -123
- wandelbots_api_client-25.10.0.dev35.dist-info/RECORD +0 -636
- {wandelbots_api_client-25.10.0.dev35.dist-info → wandelbots_api_client-26.1.0.dev50.dist-info}/WHEEL +0 -0
- {wandelbots_api_client-25.10.0.dev35.dist-info → wandelbots_api_client-26.1.0.dev50.dist-info}/licenses/LICENSE +0 -0
- {wandelbots_api_client-25.10.0.dev35.dist-info → wandelbots_api_client-26.1.0.dev50.dist-info}/top_level.txt +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# generated by datamodel-codegen:
|
|
2
2
|
# filename: public.openapi.yaml
|
|
3
|
-
# timestamp:
|
|
3
|
+
# timestamp: 2026-01-09T13:39:05+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
13
|
|
|
@@ -17,7 +17,7 @@ class NameList(RootModel):
|
|
|
17
17
|
A list of names
|
|
18
18
|
"""
|
|
19
19
|
|
|
20
|
-
root:
|
|
20
|
+
root: list[str]
|
|
21
21
|
"""
|
|
22
22
|
A list of names
|
|
23
23
|
"""
|
|
@@ -127,7 +127,7 @@ class KukaController(BaseModel):
|
|
|
127
127
|
"""
|
|
128
128
|
The RSI server runs inside of the cell.
|
|
129
129
|
"""
|
|
130
|
-
slow_cycle_rate:
|
|
130
|
+
slow_cycle_rate: bool | None = False
|
|
131
131
|
"""
|
|
132
132
|
If true, uses slower cycle time of 12ms instead of 4ms.
|
|
133
133
|
|
|
@@ -174,6 +174,7 @@ class VirtualControllerTypes(Enum):
|
|
|
174
174
|
ABB_IRB4600_250_20 = 'abb-irb4600_250_20'
|
|
175
175
|
ABB_IRB4600_255_40 = 'abb-irb4600_255_40'
|
|
176
176
|
ABB_IRB6730_210_310 = 'abb-irb6730_210_310'
|
|
177
|
+
ABB_IRB6730_240_290 = 'abb-irb6730_240_290'
|
|
177
178
|
FANUC_ARC_MATE_100I_D = 'fanuc-arc_mate_100iD'
|
|
178
179
|
FANUC_ARC_MATE_100I_D16_S = 'fanuc-arc_mate_100iD16S'
|
|
179
180
|
FANUC_ARC_MATE_120I_D = 'fanuc-arc_mate_120iD'
|
|
@@ -211,11 +212,17 @@ class VirtualControllerTypes(Enum):
|
|
|
211
212
|
KUKA_KR16_R2010_2 = 'kuka-kr16_r2010_2'
|
|
212
213
|
KUKA_KR20_R1810 = 'kuka-kr20_r1810'
|
|
213
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'
|
|
214
218
|
KUKA_KR210_R2700_2 = 'kuka-kr210_r2700_2'
|
|
215
219
|
KUKA_KR210_R3100_2 = 'kuka-kr210_r3100_2'
|
|
216
220
|
KUKA_KR210_R3300_2 = 'kuka-kr210_r3300_2'
|
|
217
221
|
KUKA_KR240_R2700 = 'kuka-kr240_r2700'
|
|
222
|
+
KUKA_KR240_R2900 = 'kuka-kr240_r2900'
|
|
223
|
+
KUKA_KR240_R3700_2 = 'kuka-kr240_r3700_2'
|
|
218
224
|
KUKA_KR250_R2700_2 = 'kuka-kr250_r2700_2'
|
|
225
|
+
KUKA_KR270_R2700 = 'kuka-kr270_r2700'
|
|
219
226
|
KUKA_KR30_R2100 = 'kuka-kr30_r2100'
|
|
220
227
|
KUKA_KR30_R3 = 'kuka-kr30_r3'
|
|
221
228
|
KUKA_KR360_L240_3 = 'kuka-kr360_l240_3'
|
|
@@ -277,15 +284,15 @@ class VirtualController(BaseModel):
|
|
|
277
284
|
|
|
278
285
|
kind: Literal['VirtualController'] = 'VirtualController'
|
|
279
286
|
manufacturer: Manufacturer
|
|
280
|
-
type:
|
|
281
|
-
json_: Annotated[
|
|
287
|
+
type: VirtualControllerTypes | None = None
|
|
288
|
+
json_: Annotated[str | None, Field(alias='json')] = None
|
|
282
289
|
"""
|
|
283
290
|
Complete JSON configuration of the virtual robot controller.
|
|
284
291
|
Can be obtained from the physical controller's configuration via [getVirtualControllerConfiguration](getVirtualControllerConfiguration).
|
|
285
292
|
If provided, the `type` field should not be used.
|
|
286
293
|
|
|
287
294
|
"""
|
|
288
|
-
initial_joint_position:
|
|
295
|
+
initial_joint_position: str | None = None
|
|
289
296
|
"""
|
|
290
297
|
Initial joint position of the first motion group from the virtual robot controller.
|
|
291
298
|
Provide the joint position as a JSON array containing 7 float values,
|
|
@@ -316,14 +323,12 @@ class RobotController(BaseModel):
|
|
|
316
323
|
|
|
317
324
|
"""
|
|
318
325
|
configuration: Annotated[
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
YaskawaController,
|
|
326
|
-
],
|
|
326
|
+
AbbController
|
|
327
|
+
| FanucController
|
|
328
|
+
| KukaController
|
|
329
|
+
| UniversalrobotsController
|
|
330
|
+
| VirtualController
|
|
331
|
+
| YaskawaController,
|
|
327
332
|
Field(discriminator='kind'),
|
|
328
333
|
]
|
|
329
334
|
|
|
@@ -353,8 +358,8 @@ class ContainerImage(BaseModel):
|
|
|
353
358
|
"""
|
|
354
359
|
The location of a container image in the form of `<registry>/<image>:<tag>`.
|
|
355
360
|
"""
|
|
356
|
-
credentials:
|
|
357
|
-
secrets:
|
|
361
|
+
credentials: ImageCredentials | None = None
|
|
362
|
+
secrets: list[Secret] | None = None
|
|
358
363
|
"""
|
|
359
364
|
Known secrets for authentication with the container registry.
|
|
360
365
|
"""
|
|
@@ -372,7 +377,7 @@ class ContainerEnvironment(RootModel):
|
|
|
372
377
|
|
|
373
378
|
"""
|
|
374
379
|
|
|
375
|
-
root:
|
|
380
|
+
root: list[ContainerEnvironmentItem]
|
|
376
381
|
"""
|
|
377
382
|
A list of environment variables with name and their value.
|
|
378
383
|
These can be used to configure the containerized application, and turn features on or off.
|
|
@@ -439,11 +444,11 @@ class ContainerResources(BaseModel):
|
|
|
439
444
|
Additional resources that the application requires.
|
|
440
445
|
"""
|
|
441
446
|
|
|
442
|
-
intel_gpu: Annotated[
|
|
447
|
+
intel_gpu: Annotated[int | None, Field(ge=0, le=1)] = None
|
|
443
448
|
"""
|
|
444
449
|
Number of GPUs the application requires.
|
|
445
450
|
"""
|
|
446
|
-
memory_limit: Annotated[
|
|
451
|
+
memory_limit: Annotated[str | None, Field(examples=['1000Mi'])] = None
|
|
447
452
|
"""
|
|
448
453
|
The maximum memory allocated to this application.
|
|
449
454
|
"""
|
|
@@ -471,14 +476,14 @@ class App(BaseModel):
|
|
|
471
476
|
The path of the icon for the App (/$cell/$name/$app_icon).
|
|
472
477
|
"""
|
|
473
478
|
container_image: ContainerImage
|
|
474
|
-
port:
|
|
479
|
+
port: int | None = 8080
|
|
475
480
|
"""
|
|
476
481
|
The port the containerized webserver is listening on.
|
|
477
482
|
"""
|
|
478
|
-
environment:
|
|
479
|
-
storage:
|
|
480
|
-
resources:
|
|
481
|
-
health_path:
|
|
483
|
+
environment: ContainerEnvironment | None = None
|
|
484
|
+
storage: ContainerStorage | None = None
|
|
485
|
+
resources: ContainerResources | None = None
|
|
486
|
+
health_path: str | None = None
|
|
482
487
|
"""
|
|
483
488
|
Defines the URL path suffix used to check the application's health status. The complete health check URL
|
|
484
489
|
is constructed as `/$cell/$name/$health_path`. When the application is working as expected,
|
|
@@ -491,7 +496,7 @@ class App(BaseModel):
|
|
|
491
496
|
automatically restart the application container to restore service.
|
|
492
497
|
|
|
493
498
|
"""
|
|
494
|
-
diagnosis_path:
|
|
499
|
+
diagnosis_path: str | None = None
|
|
495
500
|
"""
|
|
496
501
|
Defines the URL path suffix used to provide an endpoint for diagnosis data collection.
|
|
497
502
|
The complete diagnosis check URL is constructed as `/$cell/$name/$diagnosis_path`.
|
|
@@ -511,13 +516,13 @@ class Cell(BaseModel):
|
|
|
511
516
|
"""
|
|
512
517
|
|
|
513
518
|
name: CellName
|
|
514
|
-
description:
|
|
515
|
-
controllers:
|
|
516
|
-
apps:
|
|
519
|
+
description: CellDescription | None = None
|
|
520
|
+
controllers: list[RobotController] | None = None
|
|
521
|
+
apps: list[App] | None = None
|
|
517
522
|
|
|
518
523
|
|
|
519
524
|
class Error(BaseModel):
|
|
520
|
-
code:
|
|
525
|
+
code: str | None = None
|
|
521
526
|
message: str
|
|
522
527
|
|
|
523
528
|
|
|
@@ -563,7 +568,7 @@ class ServiceStatusPhase(Enum):
|
|
|
563
568
|
class Status(BaseModel):
|
|
564
569
|
severity: ServiceStatusSeverity
|
|
565
570
|
code: ServiceStatusPhase
|
|
566
|
-
reason:
|
|
571
|
+
reason: str | None = None
|
|
567
572
|
|
|
568
573
|
|
|
569
574
|
class ServiceStatus(BaseModel):
|
|
@@ -573,7 +578,7 @@ class ServiceStatus(BaseModel):
|
|
|
573
578
|
|
|
574
579
|
|
|
575
580
|
class ServiceStatusList(RootModel):
|
|
576
|
-
root:
|
|
581
|
+
root: list[ServiceStatus]
|
|
577
582
|
|
|
578
583
|
def __getitem__(self, index: int) -> ServiceStatus:
|
|
579
584
|
"""
|
|
@@ -637,14 +642,14 @@ class BusIOProfinetIpConfig(BaseModel):
|
|
|
637
642
|
|
|
638
643
|
|
|
639
644
|
class BusIOProfinetNetwork(BaseModel):
|
|
640
|
-
device_name: Annotated[
|
|
645
|
+
device_name: Annotated[str | None, Field(examples=['pnDevice'])] = None
|
|
641
646
|
"""
|
|
642
647
|
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.
|
|
643
648
|
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.
|
|
644
649
|
|
|
645
650
|
"""
|
|
646
|
-
ip_config:
|
|
647
|
-
rema_xml_content:
|
|
651
|
+
ip_config: BusIOProfinetIpConfig | None = None
|
|
652
|
+
rema_xml_content: str | None = None
|
|
648
653
|
"""
|
|
649
654
|
Content of the PROFINET REMA XML file.
|
|
650
655
|
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.
|
|
@@ -683,7 +688,7 @@ class BusIOProfinet(BaseModel):
|
|
|
683
688
|
"""
|
|
684
689
|
|
|
685
690
|
bus_type: Literal['profinet'] = 'profinet'
|
|
686
|
-
network_config:
|
|
691
|
+
network_config: BusIOProfinetNetwork | None = None
|
|
687
692
|
"""
|
|
688
693
|
Used to enable IP communication through the same physical ethernet interface while PROFINET driver is active.
|
|
689
694
|
|
|
@@ -702,7 +707,9 @@ class BusIOProfinet(BaseModel):
|
|
|
702
707
|
MAC address of the physical ethernet interface that you want to use for PROFINET communication.
|
|
703
708
|
|
|
704
709
|
"""
|
|
705
|
-
default_route:
|
|
710
|
+
default_route: Annotated[
|
|
711
|
+
BusIOProfinetDefaultRoute | None, Field(deprecated=True)
|
|
712
|
+
] = None
|
|
706
713
|
|
|
707
714
|
|
|
708
715
|
class BusIOProfinetVirtual(BaseModel):
|
|
@@ -715,7 +722,7 @@ class BusIOProfinetVirtual(BaseModel):
|
|
|
715
722
|
|
|
716
723
|
|
|
717
724
|
class BusIOModbusTCPServer(BaseModel):
|
|
718
|
-
network_type:
|
|
725
|
+
network_type: Literal['tcp'] | None = None
|
|
719
726
|
port: Annotated[int, Field(examples=[502], ge=1, le=65534)]
|
|
720
727
|
"""
|
|
721
728
|
Port number of the MODBUS server to establish communication with.
|
|
@@ -759,7 +766,7 @@ class BusIOModbusServer(BaseModel):
|
|
|
759
766
|
|
|
760
767
|
|
|
761
768
|
class BusIOModbusTCPClient(BaseModel):
|
|
762
|
-
network_type:
|
|
769
|
+
network_type: Literal['tcp'] | None = None
|
|
763
770
|
ip: Annotated[str, Field(examples=['192.168.1.100'])]
|
|
764
771
|
"""
|
|
765
772
|
IP address of the MODBUS server to establish communication with.
|
|
@@ -793,13 +800,11 @@ class BusIOModbusVirtual(BaseModel):
|
|
|
793
800
|
|
|
794
801
|
class BusIOType(RootModel):
|
|
795
802
|
root: Annotated[
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
BusIOModbusVirtual,
|
|
802
|
-
],
|
|
803
|
+
BusIOProfinet
|
|
804
|
+
| BusIOProfinetVirtual
|
|
805
|
+
| BusIOModbusServer
|
|
806
|
+
| BusIOModbusClient
|
|
807
|
+
| BusIOModbusVirtual,
|
|
803
808
|
Field(discriminator='bus_type'),
|
|
804
809
|
]
|
|
805
810
|
|
|
@@ -838,7 +843,7 @@ class Metadata(RootModel):
|
|
|
838
843
|
Additional metadata to add to the backup
|
|
839
844
|
"""
|
|
840
845
|
|
|
841
|
-
root:
|
|
846
|
+
root: dict[str, str]
|
|
842
847
|
|
|
843
848
|
|
|
844
849
|
class ConfigurationArchive(RootModel):
|
|
@@ -876,11 +881,9 @@ class ConfigurationArchiveStatusSuccess(BaseModel):
|
|
|
876
881
|
|
|
877
882
|
class ConfigurationArchiveStatus(RootModel):
|
|
878
883
|
root: Annotated[
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
ConfigurationArchiveStatusSuccess,
|
|
883
|
-
],
|
|
884
|
+
ConfigurationArchiveStatusCreating
|
|
885
|
+
| ConfigurationArchiveStatusError
|
|
886
|
+
| ConfigurationArchiveStatusSuccess,
|
|
884
887
|
Field(discriminator='status'),
|
|
885
888
|
]
|
|
886
889
|
"""
|
|
@@ -918,7 +921,7 @@ class License(BaseModel):
|
|
|
918
921
|
"""
|
|
919
922
|
Identification key of the license.
|
|
920
923
|
"""
|
|
921
|
-
license_expiry_date:
|
|
924
|
+
license_expiry_date: date | None = None
|
|
922
925
|
"""
|
|
923
926
|
Expiration date of the license.
|
|
924
927
|
"""
|
|
@@ -934,11 +937,11 @@ class License(BaseModel):
|
|
|
934
937
|
"""
|
|
935
938
|
Amount of times the license can be activated.
|
|
936
939
|
"""
|
|
937
|
-
feature_limitations:
|
|
940
|
+
feature_limitations: dict[str, int] | None = None
|
|
938
941
|
"""
|
|
939
942
|
Feature limitations of the license.
|
|
940
943
|
"""
|
|
941
|
-
feature_flags:
|
|
944
|
+
feature_flags: list[str] | None = None
|
|
942
945
|
"""
|
|
943
946
|
Features enabled by a license.
|
|
944
947
|
"""
|
|
@@ -1094,7 +1097,7 @@ class Vector3d(RootModel):
|
|
|
1094
1097
|
|
|
1095
1098
|
"""
|
|
1096
1099
|
|
|
1097
|
-
root: Annotated[
|
|
1100
|
+
root: Annotated[list[float], Field(max_length=3, min_length=3, title='Vector3d')]
|
|
1098
1101
|
"""
|
|
1099
1102
|
A three-dimensional vector [x, y, z] with double precision.
|
|
1100
1103
|
|
|
@@ -1131,7 +1134,7 @@ class ConvexHull(BaseModel):
|
|
|
1131
1134
|
"""
|
|
1132
1135
|
|
|
1133
1136
|
shape_type: Literal['convex_hull'] = 'convex_hull'
|
|
1134
|
-
vertices:
|
|
1137
|
+
vertices: list[Vector3d]
|
|
1135
1138
|
"""
|
|
1136
1139
|
The list of encapsulated points.
|
|
1137
1140
|
"""
|
|
@@ -1147,7 +1150,7 @@ class RotationVector(RootModel):
|
|
|
1147
1150
|
"""
|
|
1148
1151
|
|
|
1149
1152
|
root: Annotated[
|
|
1150
|
-
|
|
1153
|
+
list[float], Field(max_length=3, min_length=3, title='RotationVector')
|
|
1151
1154
|
]
|
|
1152
1155
|
"""
|
|
1153
1156
|
Defines a rotation in 3D space.
|
|
@@ -1190,8 +1193,8 @@ class Pose(BaseModel):
|
|
|
1190
1193
|
|
|
1191
1194
|
"""
|
|
1192
1195
|
|
|
1193
|
-
position:
|
|
1194
|
-
orientation:
|
|
1196
|
+
position: Vector3d | None = None
|
|
1197
|
+
orientation: RotationVector | None = None
|
|
1195
1198
|
|
|
1196
1199
|
|
|
1197
1200
|
class Collider(BaseModel):
|
|
@@ -1209,27 +1212,25 @@ class Collider(BaseModel):
|
|
|
1209
1212
|
"""
|
|
1210
1213
|
|
|
1211
1214
|
shape: Annotated[
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
ConvexHull,
|
|
1221
|
-
],
|
|
1215
|
+
Sphere
|
|
1216
|
+
| Box
|
|
1217
|
+
| Rectangle
|
|
1218
|
+
| Plane
|
|
1219
|
+
| Cylinder
|
|
1220
|
+
| Capsule
|
|
1221
|
+
| RectangularCapsule
|
|
1222
|
+
| ConvexHull,
|
|
1222
1223
|
Field(discriminator='shape_type'),
|
|
1223
1224
|
]
|
|
1224
|
-
pose:
|
|
1225
|
-
margin:
|
|
1225
|
+
pose: Pose | None = None
|
|
1226
|
+
margin: float | None = 0
|
|
1226
1227
|
"""
|
|
1227
1228
|
Increases the shape's size in all dimensions. Applied in [mm]. Can be used to keep a safe distance to the shape.
|
|
1228
1229
|
"""
|
|
1229
1230
|
|
|
1230
1231
|
|
|
1231
1232
|
class Link(RootModel):
|
|
1232
|
-
root:
|
|
1233
|
+
root: dict[str, Collider]
|
|
1233
1234
|
|
|
1234
1235
|
|
|
1235
1236
|
class LinkChain(RootModel):
|
|
@@ -1250,7 +1251,7 @@ class LinkChain(RootModel):
|
|
|
1250
1251
|
"""
|
|
1251
1252
|
|
|
1252
1253
|
root: Annotated[
|
|
1253
|
-
|
|
1254
|
+
list[Link],
|
|
1254
1255
|
Field(
|
|
1255
1256
|
examples=[
|
|
1256
1257
|
[
|
|
@@ -1328,7 +1329,7 @@ class ControllerDescription(BaseModel):
|
|
|
1328
1329
|
The data type to describe a robot controller.
|
|
1329
1330
|
"""
|
|
1330
1331
|
|
|
1331
|
-
connected_motion_groups:
|
|
1332
|
+
connected_motion_groups: list[str]
|
|
1332
1333
|
supports_freedrive: bool
|
|
1333
1334
|
"""
|
|
1334
1335
|
Can this controller be moved through freedrive (true), or not (false).
|
|
@@ -1455,7 +1456,7 @@ class Joints(RootModel):
|
|
|
1455
1456
|
|
|
1456
1457
|
"""
|
|
1457
1458
|
|
|
1458
|
-
root:
|
|
1459
|
+
root: list[float]
|
|
1459
1460
|
"""
|
|
1460
1461
|
This structure describes a set of joint values, e.g., positions, currents, torques, of a motion group.
|
|
1461
1462
|
|
|
@@ -1495,7 +1496,7 @@ class MotionGroupStateJointLimitReached(BaseModel):
|
|
|
1495
1496
|
|
|
1496
1497
|
"""
|
|
1497
1498
|
|
|
1498
|
-
limit_reached:
|
|
1499
|
+
limit_reached: list[bool]
|
|
1499
1500
|
"""
|
|
1500
1501
|
If true, operational (soft) jointLimit is reached for specific joint.
|
|
1501
1502
|
"""
|
|
@@ -1528,6 +1529,10 @@ class JoggingPausedOnIO(BaseModel):
|
|
|
1528
1529
|
kind: Literal['PAUSED_ON_IO'] = 'PAUSED_ON_IO'
|
|
1529
1530
|
|
|
1530
1531
|
|
|
1532
|
+
class JointIndice(RootModel):
|
|
1533
|
+
root: Annotated[int, Field(ge=0, le=2147483647)]
|
|
1534
|
+
|
|
1535
|
+
|
|
1531
1536
|
class JoggingPausedNearJointLimit(BaseModel):
|
|
1532
1537
|
"""
|
|
1533
1538
|
Jogging was paused because a joint is near its limit.
|
|
@@ -1535,7 +1540,7 @@ class JoggingPausedNearJointLimit(BaseModel):
|
|
|
1535
1540
|
"""
|
|
1536
1541
|
|
|
1537
1542
|
kind: Literal['PAUSED_NEAR_JOINT_LIMIT'] = 'PAUSED_NEAR_JOINT_LIMIT'
|
|
1538
|
-
joint_indices:
|
|
1543
|
+
joint_indices: list[JointIndice]
|
|
1539
1544
|
|
|
1540
1545
|
|
|
1541
1546
|
class JoggingPausedNearCollision(BaseModel):
|
|
@@ -1562,13 +1567,11 @@ class JoggingDetails(BaseModel):
|
|
|
1562
1567
|
"""
|
|
1563
1568
|
|
|
1564
1569
|
state: Annotated[
|
|
1565
|
-
|
|
1566
|
-
|
|
1567
|
-
|
|
1568
|
-
|
|
1569
|
-
|
|
1570
|
-
JoggingPausedNearCollision,
|
|
1571
|
-
],
|
|
1570
|
+
JoggingRunning
|
|
1571
|
+
| JoggingPausedByUser
|
|
1572
|
+
| JoggingPausedOnIO
|
|
1573
|
+
| JoggingPausedNearJointLimit
|
|
1574
|
+
| JoggingPausedNearCollision,
|
|
1572
1575
|
Field(discriminator='kind'),
|
|
1573
1576
|
]
|
|
1574
1577
|
kind: Literal['JOGGING'] = 'JOGGING'
|
|
@@ -1597,7 +1600,7 @@ class TrajectoryRunning(BaseModel):
|
|
|
1597
1600
|
"""
|
|
1598
1601
|
|
|
1599
1602
|
kind: Literal['RUNNING'] = 'RUNNING'
|
|
1600
|
-
time_to_end: int
|
|
1603
|
+
time_to_end: Annotated[int, Field(ge=0, le=4294967295)]
|
|
1601
1604
|
"""
|
|
1602
1605
|
Remaining time in milliseconds (ms) to reach the end of the motion.
|
|
1603
1606
|
"""
|
|
@@ -1659,13 +1662,11 @@ class TrajectoryDetails(BaseModel):
|
|
|
1659
1662
|
"""
|
|
1660
1663
|
location: Location
|
|
1661
1664
|
state: Annotated[
|
|
1662
|
-
|
|
1663
|
-
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
TrajectoryPausedOnIO,
|
|
1668
|
-
],
|
|
1665
|
+
TrajectoryRunning
|
|
1666
|
+
| TrajectoryPausedByUser
|
|
1667
|
+
| TrajectoryEnded
|
|
1668
|
+
| TrajectoryWaitForIO
|
|
1669
|
+
| TrajectoryPausedOnIO,
|
|
1669
1670
|
Field(discriminator='kind'),
|
|
1670
1671
|
]
|
|
1671
1672
|
kind: Literal['TRAJECTORY'] = 'TRAJECTORY'
|
|
@@ -1683,13 +1684,13 @@ class Execute(BaseModel):
|
|
|
1683
1684
|
|
|
1684
1685
|
"""
|
|
1685
1686
|
|
|
1686
|
-
joint_position:
|
|
1687
|
+
joint_position: list[float]
|
|
1687
1688
|
"""
|
|
1688
1689
|
Commanded joint position of each joint in [rad]. This command was sent in the time step the corresponding state was received.
|
|
1689
1690
|
|
|
1690
1691
|
"""
|
|
1691
1692
|
details: Annotated[
|
|
1692
|
-
|
|
1693
|
+
JoggingDetails | TrajectoryDetails | None, Field(discriminator='kind')
|
|
1693
1694
|
] = None
|
|
1694
1695
|
|
|
1695
1696
|
|
|
@@ -1702,7 +1703,7 @@ class MotionGroupState(BaseModel):
|
|
|
1702
1703
|
"""
|
|
1703
1704
|
Timestamp for when data was received from the robot controller.
|
|
1704
1705
|
"""
|
|
1705
|
-
sequence_number: int
|
|
1706
|
+
sequence_number: Annotated[int, Field(ge=0, le=4294967295)]
|
|
1706
1707
|
"""
|
|
1707
1708
|
Sequence number of the controller state. It starts with 0 upon establishing the connection with a physical controller.
|
|
1708
1709
|
The sequence number is reset when the connection to the physical controller is closed and re-established.
|
|
@@ -1726,19 +1727,19 @@ class MotionGroupState(BaseModel):
|
|
|
1726
1727
|
Indicates whether the joint is in a limit for all joints of the motion group.
|
|
1727
1728
|
|
|
1728
1729
|
"""
|
|
1729
|
-
joint_torque:
|
|
1730
|
+
joint_torque: Joints | None = None
|
|
1730
1731
|
"""
|
|
1731
1732
|
Current joint torque of each joint in [Nm].
|
|
1732
1733
|
Is only available if the robot controller supports it, e.g., available for UR controllers.
|
|
1733
1734
|
|
|
1734
1735
|
"""
|
|
1735
|
-
joint_current:
|
|
1736
|
+
joint_current: Joints | None = None
|
|
1736
1737
|
"""
|
|
1737
1738
|
Current at TCP in [A].
|
|
1738
1739
|
Is only available if the robot controller supports it, e.g., available for UR controllers.
|
|
1739
1740
|
|
|
1740
1741
|
"""
|
|
1741
|
-
flange_pose:
|
|
1742
|
+
flange_pose: Pose | None = None
|
|
1742
1743
|
"""
|
|
1743
1744
|
Pose of the flange.
|
|
1744
1745
|
Positions are in [mm].
|
|
@@ -1747,13 +1748,13 @@ class MotionGroupState(BaseModel):
|
|
|
1747
1748
|
For robot arms a flange pose is always returned, for positioners the flange might not be available, depending on the model.
|
|
1748
1749
|
|
|
1749
1750
|
"""
|
|
1750
|
-
tcp:
|
|
1751
|
+
tcp: str | None = None
|
|
1751
1752
|
"""
|
|
1752
1753
|
Unique identifier addressing the active TCP.
|
|
1753
1754
|
Might not be returned for positioners as some do not support TCPs, depending on the model.
|
|
1754
1755
|
|
|
1755
1756
|
"""
|
|
1756
|
-
tcp_pose:
|
|
1757
|
+
tcp_pose: Pose | None = None
|
|
1757
1758
|
"""
|
|
1758
1759
|
Pose of the TCP selected on the robot control panel.
|
|
1759
1760
|
Positions are in [mm].
|
|
@@ -1762,14 +1763,14 @@ class MotionGroupState(BaseModel):
|
|
|
1762
1763
|
Might not be returned for positioners as some do not support TCPs, depending on the model.
|
|
1763
1764
|
|
|
1764
1765
|
"""
|
|
1765
|
-
coordinate_system:
|
|
1766
|
+
coordinate_system: str | None = None
|
|
1766
1767
|
"""
|
|
1767
1768
|
Unique identifier addressing the reference coordinate system of the cartesian data.
|
|
1768
1769
|
Might not be returned for positioners as some do not support TCPs, depending on the model.
|
|
1769
1770
|
Default: world coordinate system of corresponding controller.
|
|
1770
1771
|
|
|
1771
1772
|
"""
|
|
1772
|
-
payload:
|
|
1773
|
+
payload: str | None = None
|
|
1773
1774
|
"""
|
|
1774
1775
|
Unique identifier addressing the active payload.
|
|
1775
1776
|
Only fetchable via GET endpoint, not available in WebSocket.
|
|
@@ -1781,7 +1782,7 @@ class MotionGroupState(BaseModel):
|
|
|
1781
1782
|
Convenience: Signals that NOVA treats measured joint velocities as 0.
|
|
1782
1783
|
|
|
1783
1784
|
"""
|
|
1784
|
-
execute:
|
|
1785
|
+
execute: Execute | None = None
|
|
1785
1786
|
"""
|
|
1786
1787
|
Data that was commanded to the motion group. Includes additional data on NOVA's execution components for executing trajectories and jogging.
|
|
1787
1788
|
This is a convenience field to indicate the last command sent to the motion group.
|
|
@@ -1799,7 +1800,7 @@ class RobotControllerState(BaseModel):
|
|
|
1799
1800
|
"""
|
|
1800
1801
|
Mode of communication and control between NOVA and the robot controller.
|
|
1801
1802
|
"""
|
|
1802
|
-
last_error:
|
|
1803
|
+
last_error: list[str] | None = None
|
|
1803
1804
|
"""
|
|
1804
1805
|
Last error stack encountered during initialization process or after a controller disconnect.
|
|
1805
1806
|
At this stage, it's unclear whether the error is fatal.
|
|
@@ -1814,7 +1815,7 @@ class RobotControllerState(BaseModel):
|
|
|
1814
1815
|
"""
|
|
1815
1816
|
Timestamp indicating when the represented information was received from the robot controller.
|
|
1816
1817
|
"""
|
|
1817
|
-
sequence_number: int
|
|
1818
|
+
sequence_number: Annotated[int, Field(ge=0, le=4294967295)]
|
|
1818
1819
|
"""
|
|
1819
1820
|
Sequence number of the controller state. It starts with 0 upon establishing the connection with a physical controller.
|
|
1820
1821
|
The sequence number is reset when the connection to the physical controller is closed and re-established.
|
|
@@ -1826,14 +1827,14 @@ class RobotControllerState(BaseModel):
|
|
|
1826
1827
|
"""
|
|
1827
1828
|
operation_mode: OperationMode
|
|
1828
1829
|
safety_state: SafetyStateType
|
|
1829
|
-
velocity_override:
|
|
1830
|
+
velocity_override: Annotated[int | None, Field(ge=1, le=100)] = None
|
|
1830
1831
|
"""
|
|
1831
1832
|
If made available by the robot controller, returns the current velocity override in
|
|
1832
1833
|
[percentage] for movements adjusted on robot control panel.
|
|
1833
1834
|
Valid value range: 1 - 100.
|
|
1834
1835
|
|
|
1835
1836
|
"""
|
|
1836
|
-
motion_groups: Annotated[
|
|
1837
|
+
motion_groups: Annotated[list[MotionGroupState], Field(title='MotionGroupState[]')]
|
|
1837
1838
|
"""
|
|
1838
1839
|
State of indicated motion groups.
|
|
1839
1840
|
In case of state request via controller all configured motion groups are returned.
|
|
@@ -1913,7 +1914,7 @@ class FloatValue(BaseModel):
|
|
|
1913
1914
|
|
|
1914
1915
|
class IOBoundary(RootModel):
|
|
1915
1916
|
root: Annotated[
|
|
1916
|
-
|
|
1917
|
+
BooleanValue | IntegerValue | FloatValue,
|
|
1917
1918
|
Field(discriminator='value_type', title='IOBoundary'),
|
|
1918
1919
|
]
|
|
1919
1920
|
|
|
@@ -1929,20 +1930,20 @@ class IODescription(BaseModel):
|
|
|
1929
1930
|
Name of the input/output. Customize it on the physical controller or in the virtual robot specification.
|
|
1930
1931
|
|
|
1931
1932
|
"""
|
|
1932
|
-
group:
|
|
1933
|
+
group: str | None = None
|
|
1933
1934
|
"""
|
|
1934
1935
|
Name of the input/output group. Customize it on the physical controller or in the virtual robot specification.
|
|
1935
1936
|
|
|
1936
1937
|
"""
|
|
1937
1938
|
direction: IODirection
|
|
1938
1939
|
value_type: IOValueType
|
|
1939
|
-
unit:
|
|
1940
|
-
min:
|
|
1941
|
-
max:
|
|
1940
|
+
unit: UnitType | None = None
|
|
1941
|
+
min: IOBoundary | None = None
|
|
1942
|
+
max: IOBoundary | None = None
|
|
1942
1943
|
|
|
1943
1944
|
|
|
1944
1945
|
class ListIODescriptionsResponse(RootModel):
|
|
1945
|
-
root:
|
|
1946
|
+
root: list[IODescription]
|
|
1946
1947
|
|
|
1947
1948
|
def __getitem__(self, index: int) -> IODescription:
|
|
1948
1949
|
"""
|
|
@@ -2018,7 +2019,7 @@ class IOFloatValue(BaseModel):
|
|
|
2018
2019
|
|
|
2019
2020
|
class IOValue(RootModel):
|
|
2020
2021
|
root: Annotated[
|
|
2021
|
-
|
|
2022
|
+
IOBooleanValue | IOIntegerValue | IOFloatValue,
|
|
2022
2023
|
Field(discriminator='value_type'),
|
|
2023
2024
|
]
|
|
2024
2025
|
|
|
@@ -2028,12 +2029,12 @@ class StreamIOValuesResponse(BaseModel):
|
|
|
2028
2029
|
Array of input/output values.
|
|
2029
2030
|
"""
|
|
2030
2031
|
|
|
2031
|
-
io_values:
|
|
2032
|
+
io_values: list[IOValue]
|
|
2032
2033
|
timestamp: AwareDatetime
|
|
2033
2034
|
"""
|
|
2034
2035
|
Timestamp indicating when the represented information was received from the robot controller.
|
|
2035
2036
|
"""
|
|
2036
|
-
sequence_number: int
|
|
2037
|
+
sequence_number: Annotated[int, Field(ge=0, le=4294967295)]
|
|
2037
2038
|
"""
|
|
2038
2039
|
Sequence number of the controller state. It starts with 0 upon establishing the connection with a physical controller.
|
|
2039
2040
|
The sequence number is reset when the connection to the physical controller is closed and re-established.
|
|
@@ -2047,7 +2048,7 @@ class ListIOValuesResponse(RootModel):
|
|
|
2047
2048
|
"""
|
|
2048
2049
|
|
|
2049
2050
|
root: Annotated[
|
|
2050
|
-
|
|
2051
|
+
list[IOValue],
|
|
2051
2052
|
Field(
|
|
2052
2053
|
examples=[
|
|
2053
2054
|
{
|
|
@@ -2200,7 +2201,7 @@ class Orientation(RootModel):
|
|
|
2200
2201
|
|
|
2201
2202
|
"""
|
|
2202
2203
|
|
|
2203
|
-
root: Annotated[
|
|
2204
|
+
root: Annotated[list[float], Field(max_length=4, min_length=3, title='Orientation')]
|
|
2204
2205
|
"""
|
|
2205
2206
|
Describes an orientation in 3D space.
|
|
2206
2207
|
A tree-to-four-dimensional vector [x, y, z, w] with double precision.
|
|
@@ -2233,17 +2234,17 @@ class Orientation(RootModel):
|
|
|
2233
2234
|
|
|
2234
2235
|
|
|
2235
2236
|
class CoordinateSystemData(BaseModel):
|
|
2236
|
-
name:
|
|
2237
|
+
name: str | None = None
|
|
2237
2238
|
"""
|
|
2238
2239
|
Human readable name of this coordinate system.
|
|
2239
2240
|
"""
|
|
2240
|
-
reference_coordinate_system:
|
|
2241
|
+
reference_coordinate_system: str | None = None
|
|
2241
2242
|
"""
|
|
2242
2243
|
The identifier of the reference coordinate system. Empty if world is used.
|
|
2243
2244
|
"""
|
|
2244
|
-
position:
|
|
2245
|
-
orientation:
|
|
2246
|
-
orientation_type:
|
|
2245
|
+
position: Vector3d | None = None
|
|
2246
|
+
orientation: Orientation | None = None
|
|
2247
|
+
orientation_type: OrientationType | None = 'ROTATION_VECTOR'
|
|
2247
2248
|
|
|
2248
2249
|
|
|
2249
2250
|
class CoordinateSystem(CoordinateSystemData):
|
|
@@ -2254,7 +2255,7 @@ class CoordinateSystem(CoordinateSystemData):
|
|
|
2254
2255
|
|
|
2255
2256
|
|
|
2256
2257
|
class ListCoordinateSystemsResponse(RootModel):
|
|
2257
|
-
root:
|
|
2258
|
+
root: list[CoordinateSystem]
|
|
2258
2259
|
|
|
2259
2260
|
def __getitem__(self, index: int) -> CoordinateSystem:
|
|
2260
2261
|
"""
|
|
@@ -2301,7 +2302,7 @@ class ColliderDictionary(RootModel):
|
|
|
2301
2302
|
A collection of identifiable colliders.
|
|
2302
2303
|
"""
|
|
2303
2304
|
|
|
2304
|
-
root:
|
|
2305
|
+
root: dict[str, Collider]
|
|
2305
2306
|
|
|
2306
2307
|
|
|
2307
2308
|
class LimitRange(BaseModel):
|
|
@@ -2309,37 +2310,37 @@ class LimitRange(BaseModel):
|
|
|
2309
2310
|
The upper_limit must be greater then the lower_limit.
|
|
2310
2311
|
"""
|
|
2311
2312
|
|
|
2312
|
-
lower_limit:
|
|
2313
|
-
upper_limit:
|
|
2313
|
+
lower_limit: float | None = None
|
|
2314
|
+
upper_limit: float | None = None
|
|
2314
2315
|
|
|
2315
2316
|
|
|
2316
2317
|
class JointLimits(BaseModel):
|
|
2317
|
-
position:
|
|
2318
|
-
velocity:
|
|
2319
|
-
acceleration:
|
|
2320
|
-
torque:
|
|
2318
|
+
position: LimitRange | None = None
|
|
2319
|
+
velocity: float | None = None
|
|
2320
|
+
acceleration: float | None = None
|
|
2321
|
+
torque: float | None = None
|
|
2321
2322
|
|
|
2322
2323
|
|
|
2323
2324
|
class CartesianLimits(BaseModel):
|
|
2324
|
-
velocity:
|
|
2325
|
-
acceleration:
|
|
2326
|
-
orientation_velocity:
|
|
2327
|
-
orientation_acceleration:
|
|
2325
|
+
velocity: float | None = None
|
|
2326
|
+
acceleration: float | None = None
|
|
2327
|
+
orientation_velocity: float | None = None
|
|
2328
|
+
orientation_acceleration: float | None = None
|
|
2328
2329
|
|
|
2329
2330
|
|
|
2330
2331
|
class LimitSet(BaseModel):
|
|
2331
|
-
joints:
|
|
2332
|
-
tcp:
|
|
2333
|
-
elbow:
|
|
2334
|
-
flange:
|
|
2335
|
-
coupled_shoulder_elbow_joint:
|
|
2332
|
+
joints: list[JointLimits] | None = None
|
|
2333
|
+
tcp: CartesianLimits | None = None
|
|
2334
|
+
elbow: CartesianLimits | None = None
|
|
2335
|
+
flange: CartesianLimits | None = None
|
|
2336
|
+
coupled_shoulder_elbow_joint: JointLimits | None = None
|
|
2336
2337
|
|
|
2337
2338
|
|
|
2338
2339
|
class OperationLimits(BaseModel):
|
|
2339
|
-
auto_limits:
|
|
2340
|
-
manual_limits:
|
|
2341
|
-
manual_t1_limits:
|
|
2342
|
-
manual_t2_limits:
|
|
2340
|
+
auto_limits: LimitSet | None = None
|
|
2341
|
+
manual_limits: LimitSet | None = None
|
|
2342
|
+
manual_t1_limits: LimitSet | None = None
|
|
2343
|
+
manual_t2_limits: LimitSet | None = None
|
|
2343
2344
|
|
|
2344
2345
|
|
|
2345
2346
|
class Payload(BaseModel):
|
|
@@ -2348,8 +2349,8 @@ class Payload(BaseModel):
|
|
|
2348
2349
|
"""
|
|
2349
2350
|
Mass of payload in [kg].
|
|
2350
2351
|
"""
|
|
2351
|
-
center_of_mass:
|
|
2352
|
-
moment_of_inertia:
|
|
2352
|
+
center_of_mass: Vector3d | None = None
|
|
2353
|
+
moment_of_inertia: Vector3d | None = None
|
|
2353
2354
|
|
|
2354
2355
|
|
|
2355
2356
|
class DHParameter(BaseModel):
|
|
@@ -2357,23 +2358,23 @@ class DHParameter(BaseModel):
|
|
|
2357
2358
|
A single set of DH parameters.
|
|
2358
2359
|
"""
|
|
2359
2360
|
|
|
2360
|
-
alpha:
|
|
2361
|
+
alpha: float | None = None
|
|
2361
2362
|
"""
|
|
2362
2363
|
Angle about x-axis in [rad].
|
|
2363
2364
|
"""
|
|
2364
|
-
theta:
|
|
2365
|
+
theta: float | None = None
|
|
2365
2366
|
"""
|
|
2366
2367
|
Angle about z-axis in [rad].
|
|
2367
2368
|
"""
|
|
2368
|
-
a:
|
|
2369
|
+
a: float | None = None
|
|
2369
2370
|
"""
|
|
2370
2371
|
Offset along x-axis in [mm].
|
|
2371
2372
|
"""
|
|
2372
|
-
d:
|
|
2373
|
+
d: float | None = None
|
|
2373
2374
|
"""
|
|
2374
2375
|
Offset along z-axis in [mm].
|
|
2375
2376
|
"""
|
|
2376
|
-
reverse_rotation_direction:
|
|
2377
|
+
reverse_rotation_direction: bool | None = None
|
|
2377
2378
|
"""
|
|
2378
2379
|
True, if rotation direction of joint is reversed.
|
|
2379
2380
|
"""
|
|
@@ -2385,30 +2386,30 @@ class MotionGroupDescription(BaseModel):
|
|
|
2385
2386
|
"""
|
|
2386
2387
|
|
|
2387
2388
|
motion_group_model: MotionGroupModel
|
|
2388
|
-
mounting:
|
|
2389
|
+
mounting: Pose | None = None
|
|
2389
2390
|
"""
|
|
2390
2391
|
The offset from the world frame to the motion group base.
|
|
2391
2392
|
"""
|
|
2392
|
-
tcps: Annotated[
|
|
2393
|
-
|
|
2394
|
-
|
|
2393
|
+
tcps: Annotated[dict[str, TcpOffset] | None, Field(title='TcpOffsetDictionary')] = (
|
|
2394
|
+
None
|
|
2395
|
+
)
|
|
2395
2396
|
"""
|
|
2396
2397
|
Maps a TCP name to its offset relative to the flange coordinate system. Key must be a TCP identifier.
|
|
2397
2398
|
Values are TcpOffsets.
|
|
2398
2399
|
|
|
2399
2400
|
"""
|
|
2400
|
-
safety_zones:
|
|
2401
|
+
safety_zones: ColliderDictionary | None = None
|
|
2401
2402
|
"""
|
|
2402
2403
|
SafetyZones are areas which cannot be entered or where certain limits apply.
|
|
2403
2404
|
"""
|
|
2404
|
-
safety_link_colliders:
|
|
2405
|
+
safety_link_colliders: list[ColliderDictionary] | None = None
|
|
2405
2406
|
"""
|
|
2406
2407
|
The shape of the MotionGroups links to validate against safety zones.
|
|
2407
2408
|
Indexed along the kinematic chain, starting with a static base shape before first joint.
|
|
2408
2409
|
|
|
2409
2410
|
"""
|
|
2410
2411
|
safety_tool_colliders: Annotated[
|
|
2411
|
-
|
|
2412
|
+
dict[str, ColliderDictionary] | None, Field(title='SafetyToolColliders')
|
|
2412
2413
|
] = None
|
|
2413
2414
|
"""
|
|
2414
2415
|
Maps a TCP name to its tool collider. Key must be a TCP identifier.
|
|
@@ -2416,22 +2417,27 @@ class MotionGroupDescription(BaseModel):
|
|
|
2416
2417
|
|
|
2417
2418
|
"""
|
|
2418
2419
|
operation_limits: OperationLimits
|
|
2419
|
-
payloads: Annotated[
|
|
2420
|
-
|
|
2421
|
-
|
|
2420
|
+
payloads: Annotated[dict[str, Payload] | None, Field(title='PayloadDictionary')] = (
|
|
2421
|
+
None
|
|
2422
|
+
)
|
|
2422
2423
|
"""
|
|
2423
2424
|
Maps a payload name to its configuration. Key must be a payload identifier.
|
|
2424
2425
|
Values are payload objects.
|
|
2425
2426
|
|
|
2426
2427
|
"""
|
|
2427
|
-
cycle_time:
|
|
2428
|
+
cycle_time: Annotated[int | None, Field(ge=0, le=2147483647)] = None
|
|
2428
2429
|
"""
|
|
2429
2430
|
[ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.
|
|
2430
2431
|
"""
|
|
2431
|
-
dh_parameters:
|
|
2432
|
+
dh_parameters: list[DHParameter] | None = None
|
|
2432
2433
|
"""
|
|
2433
2434
|
The DH parameters describing the motion group geometry, starting from base.
|
|
2434
2435
|
"""
|
|
2436
|
+
serial_number: str | None = None
|
|
2437
|
+
"""
|
|
2438
|
+
The serial number of the motion group, if available. If not available, the serial number of the robot controller. If not available, empty.
|
|
2439
|
+
|
|
2440
|
+
"""
|
|
2435
2441
|
|
|
2436
2442
|
|
|
2437
2443
|
class Tool(RootModel):
|
|
@@ -2444,28 +2450,28 @@ class Tool(RootModel):
|
|
|
2444
2450
|
|
|
2445
2451
|
"""
|
|
2446
2452
|
|
|
2447
|
-
root:
|
|
2453
|
+
root: dict[str, Collider]
|
|
2448
2454
|
|
|
2449
2455
|
|
|
2450
2456
|
class CollisionSetup(BaseModel):
|
|
2451
|
-
colliders:
|
|
2457
|
+
colliders: ColliderDictionary | None = None
|
|
2452
2458
|
"""
|
|
2453
2459
|
Colliders are checked against links and tool.
|
|
2454
2460
|
|
|
2455
2461
|
"""
|
|
2456
|
-
link_chain:
|
|
2462
|
+
link_chain: LinkChain | None = None
|
|
2457
2463
|
"""
|
|
2458
2464
|
The shape of the motion groups links to validate against colliders.
|
|
2459
2465
|
Indexed along the kinematic chain, starting with a static base shape before first joint.
|
|
2460
2466
|
The base of the motion group is not checked for collision against the environment.
|
|
2461
2467
|
|
|
2462
2468
|
"""
|
|
2463
|
-
tool:
|
|
2469
|
+
tool: Tool | None = None
|
|
2464
2470
|
"""
|
|
2465
2471
|
Shape of the tool to validate against colliders.
|
|
2466
2472
|
|
|
2467
2473
|
"""
|
|
2468
|
-
self_collision_detection:
|
|
2474
|
+
self_collision_detection: bool | None = True
|
|
2469
2475
|
"""
|
|
2470
2476
|
If true, self-collision detection is enabled for the motion group.
|
|
2471
2477
|
|
|
@@ -2493,27 +2499,27 @@ class CollisionSetups(RootModel):
|
|
|
2493
2499
|
|
|
2494
2500
|
"""
|
|
2495
2501
|
|
|
2496
|
-
root:
|
|
2502
|
+
root: dict[str, CollisionSetup]
|
|
2497
2503
|
|
|
2498
2504
|
|
|
2499
2505
|
class MotionGroupSetup(BaseModel):
|
|
2500
2506
|
motion_group_model: MotionGroupModel
|
|
2501
|
-
cycle_time: int
|
|
2507
|
+
cycle_time: Annotated[int, Field(ge=0, le=2147483647)]
|
|
2502
2508
|
"""
|
|
2503
2509
|
[ms] cycle time of the motion group controller. A trajectory for this motion group should be computed to this resolution.
|
|
2504
2510
|
"""
|
|
2505
|
-
mounting:
|
|
2511
|
+
mounting: Pose | None = None
|
|
2506
2512
|
"""
|
|
2507
2513
|
The offset from the world frame to the motion group base.
|
|
2508
2514
|
"""
|
|
2509
|
-
tcp_offset:
|
|
2510
|
-
global_limits:
|
|
2511
|
-
payload:
|
|
2512
|
-
collision_setups:
|
|
2515
|
+
tcp_offset: Pose | None = None
|
|
2516
|
+
global_limits: LimitSet | None = None
|
|
2517
|
+
payload: Payload | None = None
|
|
2518
|
+
collision_setups: CollisionSetups | None = None
|
|
2513
2519
|
|
|
2514
2520
|
|
|
2515
2521
|
class DoubleArray(RootModel):
|
|
2516
|
-
root:
|
|
2522
|
+
root: list[float]
|
|
2517
2523
|
|
|
2518
2524
|
def __getitem__(self, index: int) -> float:
|
|
2519
2525
|
"""
|
|
@@ -2541,23 +2547,70 @@ class DoubleArray(RootModel):
|
|
|
2541
2547
|
|
|
2542
2548
|
|
|
2543
2549
|
class BlendingAuto(BaseModel):
|
|
2544
|
-
min_velocity_in_percent:
|
|
2550
|
+
min_velocity_in_percent: Annotated[int | None, Field(ge=0, le=100)] = None
|
|
2545
2551
|
"""
|
|
2546
|
-
Auto-blending is used to keep a constant velocity when blending between two motion commands.
|
|
2552
|
+
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.
|
|
2547
2553
|
It changes the TCP path around the target point of the motion command.
|
|
2548
|
-
The value represents the percentage of the original velocity.
|
|
2554
|
+
The value represents the percentage of the original velocity. Auto-blending is always performed in cartesian space.
|
|
2549
2555
|
|
|
2550
2556
|
"""
|
|
2551
2557
|
blending_name: Literal['BlendingAuto'] = 'BlendingAuto'
|
|
2552
2558
|
|
|
2553
2559
|
|
|
2560
|
+
class BlendingSpace(Enum):
|
|
2561
|
+
"""
|
|
2562
|
+
Defines the space in which blending is performed.
|
|
2563
|
+
- `JOINT`: Zone blending is performed in joint space
|
|
2564
|
+
- `CARTESIAN`: Auto-blending is performed in cartesian space
|
|
2565
|
+
|
|
2566
|
+
"""
|
|
2567
|
+
|
|
2568
|
+
JOINT = 'JOINT'
|
|
2569
|
+
CARTESIAN = 'CARTESIAN'
|
|
2570
|
+
|
|
2571
|
+
|
|
2554
2572
|
class BlendingPosition(BaseModel):
|
|
2555
|
-
position_zone_radius:
|
|
2573
|
+
position_zone_radius: float | None = None
|
|
2556
2574
|
"""
|
|
2557
2575
|
Specifies the maximum radius in [mm] around the motion command's target point
|
|
2558
2576
|
where the TCP path can be altered to blend the motion command into the following one.
|
|
2559
2577
|
If auto-blending blends too much of the resulting trajectory, use position-blending to restrict the blending zone radius.
|
|
2560
2578
|
|
|
2579
|
+
"""
|
|
2580
|
+
position_zone_percentage: Annotated[float | None, Field(ge=0.0, le=100.0)] = None
|
|
2581
|
+
"""
|
|
2582
|
+
Specifies the maximum blending percentage based on the trajectory length in position space
|
|
2583
|
+
around the motion command's target point. Percentage indicated in 0.0 - 100.0.
|
|
2584
|
+
|
|
2585
|
+
"""
|
|
2586
|
+
orientation_zone_radius: float | None = None
|
|
2587
|
+
"""
|
|
2588
|
+
Specifies the maximum radius in [rad] for orientation blending around the motion command's
|
|
2589
|
+
target orientation. At the target's orientation, the TCP orientation can be altered to blend into the following motion.
|
|
2590
|
+
|
|
2591
|
+
"""
|
|
2592
|
+
orientation_zone_percentage: Annotated[float | None, Field(ge=0.0, le=100.0)] = None
|
|
2593
|
+
"""
|
|
2594
|
+
Specifies the maximum blending percentage for orientation blending
|
|
2595
|
+
based on the trajectory length in orientation space. Percentage indicated in 0.0 - 100.0.
|
|
2596
|
+
|
|
2597
|
+
"""
|
|
2598
|
+
joints_zone_radius: float | None = None
|
|
2599
|
+
"""
|
|
2600
|
+
Specifies the maximum radius in [rad] for joint space blending around the motion command's
|
|
2601
|
+
target joint configuration. At the target joint configuration, the joint path can be altered to blend into the following motion.
|
|
2602
|
+
|
|
2603
|
+
"""
|
|
2604
|
+
joints_zone_percentage: Annotated[float | None, Field(ge=0.0, le=100.0)] = None
|
|
2605
|
+
"""
|
|
2606
|
+
Specifies the maximum blending percentage for joint space blending
|
|
2607
|
+
based on the trajectory length in joint space. Percentage indicated in 0.0 to 100.0.
|
|
2608
|
+
|
|
2609
|
+
"""
|
|
2610
|
+
space: BlendingSpace | None = None
|
|
2611
|
+
"""
|
|
2612
|
+
Defines the space in which blending is performed.
|
|
2613
|
+
|
|
2561
2614
|
"""
|
|
2562
2615
|
blending_name: Literal['BlendingPosition'] = 'BlendingPosition'
|
|
2563
2616
|
|
|
@@ -2568,34 +2621,34 @@ class LimitsOverride(BaseModel):
|
|
|
2568
2621
|
|
|
2569
2622
|
"""
|
|
2570
2623
|
|
|
2571
|
-
joint_velocity_limits:
|
|
2624
|
+
joint_velocity_limits: list[float] | None = None
|
|
2572
2625
|
"""
|
|
2573
2626
|
Maximum joint velocity in [rad/s] for each joint.
|
|
2574
2627
|
Either leave this field empty or set a value for each joint.
|
|
2575
2628
|
|
|
2576
2629
|
"""
|
|
2577
|
-
joint_acceleration_limits:
|
|
2630
|
+
joint_acceleration_limits: list[float] | None = None
|
|
2578
2631
|
"""
|
|
2579
2632
|
Maximum joint acceleration in [rad/s^2] for each joint.
|
|
2580
2633
|
Either leave this field empty or set a value for each joint.
|
|
2581
2634
|
|
|
2582
2635
|
"""
|
|
2583
|
-
tcp_velocity_limit:
|
|
2636
|
+
tcp_velocity_limit: float | None = None
|
|
2584
2637
|
"""
|
|
2585
2638
|
Maximum allowed TCP velocity in [mm/s].
|
|
2586
2639
|
|
|
2587
2640
|
"""
|
|
2588
|
-
tcp_acceleration_limit:
|
|
2641
|
+
tcp_acceleration_limit: float | None = None
|
|
2589
2642
|
"""
|
|
2590
2643
|
Maximum allowed TCP acceleration in [mm/s^2].
|
|
2591
2644
|
|
|
2592
2645
|
"""
|
|
2593
|
-
tcp_orientation_velocity_limit:
|
|
2646
|
+
tcp_orientation_velocity_limit: float | None = None
|
|
2594
2647
|
"""
|
|
2595
2648
|
Maximum allowed TCP rotation velocity in [rad/s].
|
|
2596
2649
|
|
|
2597
2650
|
"""
|
|
2598
|
-
tcp_orientation_acceleration_limit:
|
|
2651
|
+
tcp_orientation_acceleration_limit: float | None = None
|
|
2599
2652
|
"""
|
|
2600
2653
|
Maximum allowed TCP rotation acceleration in [rad/s^2].
|
|
2601
2654
|
|
|
@@ -2626,7 +2679,7 @@ class PathCubicSpline(BaseModel):
|
|
|
2626
2679
|
|
|
2627
2680
|
"""
|
|
2628
2681
|
|
|
2629
|
-
parameters:
|
|
2682
|
+
parameters: list[CubicSplineParameter]
|
|
2630
2683
|
path_definition_name: Literal['PathCubicSpline'] = 'PathCubicSpline'
|
|
2631
2684
|
|
|
2632
2685
|
|
|
@@ -2667,21 +2720,20 @@ class PathJointPTP(BaseModel):
|
|
|
2667
2720
|
|
|
2668
2721
|
class MotionCommand(BaseModel):
|
|
2669
2722
|
blending: Annotated[
|
|
2670
|
-
|
|
2671
|
-
Field(discriminator='blending_name'),
|
|
2723
|
+
BlendingAuto | BlendingPosition | None, Field(discriminator='blending_name')
|
|
2672
2724
|
] = None
|
|
2673
2725
|
"""
|
|
2674
2726
|
Blending alters the TCP path at the target point of a motion command
|
|
2675
2727
|
to ensure that the velocity does not drop to zero between two motion commands.
|
|
2676
2728
|
|
|
2677
2729
|
"""
|
|
2678
|
-
limits_override:
|
|
2730
|
+
limits_override: LimitsOverride | None = None
|
|
2679
2731
|
"""
|
|
2680
2732
|
Limits override is used to override the global limits of the motion group for this segment of the motion.
|
|
2681
2733
|
|
|
2682
2734
|
"""
|
|
2683
2735
|
path: Annotated[
|
|
2684
|
-
|
|
2736
|
+
PathCartesianPTP | PathCubicSpline | PathLine | PathCircle | PathJointPTP,
|
|
2685
2737
|
Field(discriminator='path_definition_name'),
|
|
2686
2738
|
]
|
|
2687
2739
|
|
|
@@ -2700,7 +2752,7 @@ class PlanTrajectoryRequest(BaseModel):
|
|
|
2700
2752
|
To move the robot to the start joint position use the endpoint [streamMoveToTrajectoryViaJointP2P](streamMoveToTrajectoryViaJointP2P).
|
|
2701
2753
|
|
|
2702
2754
|
"""
|
|
2703
|
-
motion_commands:
|
|
2755
|
+
motion_commands: list[MotionCommand]
|
|
2704
2756
|
"""
|
|
2705
2757
|
List of motion commands. A command consists of a path definition (line, circle, joint_ptp, cartesian_ptp, cubic_spline), blending, and limits override.
|
|
2706
2758
|
|
|
@@ -2708,17 +2760,17 @@ class PlanTrajectoryRequest(BaseModel):
|
|
|
2708
2760
|
|
|
2709
2761
|
|
|
2710
2762
|
class JointTrajectory(BaseModel):
|
|
2711
|
-
joint_positions:
|
|
2763
|
+
joint_positions: list[Joints]
|
|
2712
2764
|
"""
|
|
2713
2765
|
List of joint positions [rad] for each sample.
|
|
2714
2766
|
The number of samples must match the number of timestamps provided in the times field.
|
|
2715
2767
|
|
|
2716
2768
|
"""
|
|
2717
|
-
times:
|
|
2769
|
+
times: list[float]
|
|
2718
2770
|
"""
|
|
2719
2771
|
Timestamp for each sample [s].
|
|
2720
2772
|
"""
|
|
2721
|
-
locations:
|
|
2773
|
+
locations: list[Location]
|
|
2722
2774
|
|
|
2723
2775
|
|
|
2724
2776
|
class FeedbackOutOfWorkspace(BaseModel):
|
|
@@ -2726,7 +2778,7 @@ class FeedbackOutOfWorkspace(BaseModel):
|
|
|
2726
2778
|
Requested TCP pose is outside of motion group's workspace.
|
|
2727
2779
|
"""
|
|
2728
2780
|
|
|
2729
|
-
invalid_tcp_pose:
|
|
2781
|
+
invalid_tcp_pose: Pose | None = None
|
|
2730
2782
|
error_feedback_name: Literal['FeedbackOutOfWorkspace'] = 'FeedbackOutOfWorkspace'
|
|
2731
2783
|
|
|
2732
2784
|
|
|
@@ -2747,8 +2799,8 @@ class FeedbackSingularity(BaseModel):
|
|
|
2747
2799
|
|
|
2748
2800
|
"""
|
|
2749
2801
|
|
|
2750
|
-
singularity_type:
|
|
2751
|
-
singular_joint_position:
|
|
2802
|
+
singularity_type: SingularityTypeEnum | None = None
|
|
2803
|
+
singular_joint_position: DoubleArray | None = None
|
|
2752
2804
|
error_feedback_name: Literal['FeedbackSingularity'] = 'FeedbackSingularity'
|
|
2753
2805
|
|
|
2754
2806
|
|
|
@@ -2759,46 +2811,44 @@ class FeedbackJointLimitExceeded(BaseModel):
|
|
|
2759
2811
|
|
|
2760
2812
|
"""
|
|
2761
2813
|
|
|
2762
|
-
joint_index:
|
|
2763
|
-
joint_position:
|
|
2814
|
+
joint_index: Annotated[int | None, Field(ge=0, le=2147483647)] = None
|
|
2815
|
+
joint_position: DoubleArray | None = None
|
|
2764
2816
|
error_feedback_name: Literal['FeedbackJointLimitExceeded'] = (
|
|
2765
2817
|
'FeedbackJointLimitExceeded'
|
|
2766
2818
|
)
|
|
2767
2819
|
|
|
2768
2820
|
|
|
2769
2821
|
class CollisionContact(BaseModel):
|
|
2770
|
-
local:
|
|
2771
|
-
root:
|
|
2822
|
+
local: Vector3d | None = None
|
|
2823
|
+
root: Vector3d | None = None
|
|
2772
2824
|
|
|
2773
2825
|
|
|
2774
2826
|
class Collision(BaseModel):
|
|
2775
|
-
id_of_a:
|
|
2776
|
-
id_of_b:
|
|
2777
|
-
id_of_layer:
|
|
2778
|
-
normal_root_on_b:
|
|
2779
|
-
position_on_a:
|
|
2780
|
-
position_on_b:
|
|
2827
|
+
id_of_a: str | None = None
|
|
2828
|
+
id_of_b: str | None = None
|
|
2829
|
+
id_of_layer: str | None = None
|
|
2830
|
+
normal_root_on_b: Vector3d | None = None
|
|
2831
|
+
position_on_a: CollisionContact | None = None
|
|
2832
|
+
position_on_b: CollisionContact | None = None
|
|
2781
2833
|
|
|
2782
2834
|
|
|
2783
2835
|
class FeedbackCollision(BaseModel):
|
|
2784
|
-
collisions:
|
|
2785
|
-
joint_position:
|
|
2786
|
-
tcp_pose:
|
|
2836
|
+
collisions: list[Collision] | None = None
|
|
2837
|
+
joint_position: DoubleArray | None = None
|
|
2838
|
+
tcp_pose: Pose | None = None
|
|
2787
2839
|
error_feedback_name: Literal['FeedbackCollision'] = 'FeedbackCollision'
|
|
2788
2840
|
|
|
2789
2841
|
|
|
2790
2842
|
class PlanTrajectoryFailedResponse(BaseModel):
|
|
2791
2843
|
error_feedback: Annotated[
|
|
2792
|
-
|
|
2793
|
-
|
|
2794
|
-
|
|
2795
|
-
|
|
2796
|
-
FeedbackCollision,
|
|
2797
|
-
],
|
|
2844
|
+
FeedbackOutOfWorkspace
|
|
2845
|
+
| FeedbackSingularity
|
|
2846
|
+
| FeedbackJointLimitExceeded
|
|
2847
|
+
| FeedbackCollision,
|
|
2798
2848
|
Field(discriminator='error_feedback_name'),
|
|
2799
2849
|
]
|
|
2800
2850
|
error_location_on_trajectory: Location
|
|
2801
|
-
joint_trajectory:
|
|
2851
|
+
joint_trajectory: JointTrajectory | None = None
|
|
2802
2852
|
"""
|
|
2803
2853
|
The joint trajectory from the start joint position to the error.
|
|
2804
2854
|
|
|
@@ -2806,14 +2856,14 @@ class PlanTrajectoryFailedResponse(BaseModel):
|
|
|
2806
2856
|
|
|
2807
2857
|
|
|
2808
2858
|
class PlanTrajectoryResponse(BaseModel):
|
|
2809
|
-
response:
|
|
2859
|
+
response: JointTrajectory | PlanTrajectoryFailedResponse
|
|
2810
2860
|
|
|
2811
2861
|
|
|
2812
2862
|
class ValidationError(BaseModel):
|
|
2813
|
-
loc: Annotated[
|
|
2863
|
+
loc: Annotated[list[str | int], Field(title='Location')]
|
|
2814
2864
|
msg: Annotated[str, Field(title='Message')]
|
|
2815
2865
|
type: Annotated[str, Field(title='Error Type')]
|
|
2816
|
-
input:
|
|
2866
|
+
input: dict[str, Any]
|
|
2817
2867
|
|
|
2818
2868
|
|
|
2819
2869
|
class ErrorInvalidJointCount(BaseModel):
|
|
@@ -2842,12 +2892,12 @@ class ErrorJointLimitExceeded(BaseModel):
|
|
|
2842
2892
|
|
|
2843
2893
|
"""
|
|
2844
2894
|
|
|
2845
|
-
joint_index:
|
|
2895
|
+
joint_index: Annotated[int | None, Field(ge=0, le=2147483647)] = None
|
|
2846
2896
|
"""
|
|
2847
2897
|
Index of the joint exceeding its limits (0-based).
|
|
2848
2898
|
|
|
2849
2899
|
"""
|
|
2850
|
-
joint_position:
|
|
2900
|
+
joint_position: DoubleArray | None = None
|
|
2851
2901
|
"""
|
|
2852
2902
|
The joint position violating the limits.
|
|
2853
2903
|
|
|
@@ -2861,8 +2911,8 @@ class ErrorJointPositionCollision(BaseModel):
|
|
|
2861
2911
|
|
|
2862
2912
|
"""
|
|
2863
2913
|
|
|
2864
|
-
collisions:
|
|
2865
|
-
joint_position:
|
|
2914
|
+
collisions: list[Collision] | None = None
|
|
2915
|
+
joint_position: DoubleArray | None = None
|
|
2866
2916
|
"""
|
|
2867
2917
|
The joint position that collides.
|
|
2868
2918
|
|
|
@@ -2874,13 +2924,10 @@ class ErrorJointPositionCollision(BaseModel):
|
|
|
2874
2924
|
|
|
2875
2925
|
class PlanValidationError(ValidationError):
|
|
2876
2926
|
data: Annotated[
|
|
2877
|
-
|
|
2878
|
-
|
|
2879
|
-
|
|
2880
|
-
|
|
2881
|
-
ErrorJointPositionCollision,
|
|
2882
|
-
]
|
|
2883
|
-
],
|
|
2927
|
+
ErrorInvalidJointCount
|
|
2928
|
+
| ErrorJointLimitExceeded
|
|
2929
|
+
| ErrorJointPositionCollision
|
|
2930
|
+
| None,
|
|
2884
2931
|
Field(discriminator='error_feedback_name'),
|
|
2885
2932
|
] = None
|
|
2886
2933
|
"""
|
|
@@ -2890,7 +2937,7 @@ class PlanValidationError(ValidationError):
|
|
|
2890
2937
|
|
|
2891
2938
|
|
|
2892
2939
|
class Plan422Response(BaseModel):
|
|
2893
|
-
detail: Annotated[
|
|
2940
|
+
detail: Annotated[list[PlanValidationError] | None, Field(title='Detail')] = None
|
|
2894
2941
|
|
|
2895
2942
|
|
|
2896
2943
|
class RRTConnectAlgorithm(BaseModel):
|
|
@@ -2905,25 +2952,25 @@ class RRTConnectAlgorithm(BaseModel):
|
|
|
2905
2952
|
This is a custom implementation optimized for manipulator kinematics and collision checking in industrial contexts.
|
|
2906
2953
|
|
|
2907
2954
|
"""
|
|
2908
|
-
max_iterations: Annotated[
|
|
2955
|
+
max_iterations: Annotated[int | None, Field(ge=1)] = 10000
|
|
2909
2956
|
"""
|
|
2910
2957
|
Maximum number of iterations for the RRT Connect algorithm.
|
|
2911
2958
|
Higher values increase likelihood of success, but also computation time.
|
|
2912
2959
|
|
|
2913
2960
|
"""
|
|
2914
|
-
max_step_size:
|
|
2961
|
+
max_step_size: float | None = 1
|
|
2915
2962
|
"""
|
|
2916
2963
|
Maximum step size for tree extension in joint space.
|
|
2917
2964
|
"""
|
|
2918
|
-
adaptive_step_size:
|
|
2965
|
+
adaptive_step_size: bool | None = True
|
|
2919
2966
|
"""
|
|
2920
2967
|
Adjust the maximum step size during the search based on the recent success rate of tree expansion.
|
|
2921
2968
|
"""
|
|
2922
|
-
apply_smoothing:
|
|
2969
|
+
apply_smoothing: bool | None = True
|
|
2923
2970
|
"""
|
|
2924
2971
|
Apply smoothing after the search has succeeded. This will remove as many intermediate points as possible while keeping the path valid.
|
|
2925
2972
|
"""
|
|
2926
|
-
apply_blending:
|
|
2973
|
+
apply_blending: bool | None = True
|
|
2927
2974
|
"""
|
|
2928
2975
|
Apply blending after the search has succeeded and smoothing has been applied. This will apply the largest viable blending at each intermediate point.
|
|
2929
2976
|
"""
|
|
@@ -2938,7 +2985,7 @@ class MidpointInsertionAlgorithm(BaseModel):
|
|
|
2938
2985
|
This algorithm adds a single midpoint between the start and target joint position to find collision-free paths.
|
|
2939
2986
|
|
|
2940
2987
|
"""
|
|
2941
|
-
max_iterations: Annotated[
|
|
2988
|
+
max_iterations: Annotated[int | None, Field(ge=1)] = 1000
|
|
2942
2989
|
"""
|
|
2943
2990
|
Maximum number of iterations for the midpoint insertion algorithm.
|
|
2944
2991
|
Higher values increase likelyhood of success, but also computation time (linear).
|
|
@@ -2948,13 +2995,17 @@ class MidpointInsertionAlgorithm(BaseModel):
|
|
|
2948
2995
|
|
|
2949
2996
|
class CollisionFreeAlgorithm(RootModel):
|
|
2950
2997
|
root: Annotated[
|
|
2951
|
-
|
|
2998
|
+
RRTConnectAlgorithm | MidpointInsertionAlgorithm,
|
|
2952
2999
|
Field(discriminator='algorithm_name', title='CollisionFreeAlgorithm'),
|
|
2953
3000
|
]
|
|
2954
3001
|
"""
|
|
2955
3002
|
Configuration for collision-free path planning algorithms.
|
|
2956
3003
|
Different algorithms may have different parameters and behavior.
|
|
2957
3004
|
|
|
3005
|
+
Recommendation:
|
|
3006
|
+
- For **cells with many obstacles**, use the RRTConnect algorithm. Use it as a starting point.
|
|
3007
|
+
- For **simple cells with very few obstacles** and when a faster solution is needed, try the MidpointInsertion algorithm.
|
|
3008
|
+
|
|
2958
3009
|
"""
|
|
2959
3010
|
|
|
2960
3011
|
|
|
@@ -2969,10 +3020,6 @@ class PlanCollisionFreeRequest(BaseModel):
|
|
|
2969
3020
|
Must contain exactly the same number of values as joints in the motion group.
|
|
2970
3021
|
To retrieve the current joint position use the endpoint [getCurrentMotionGroupState](getCurrentMotionGroupState).
|
|
2971
3022
|
|
|
2972
|
-
Recommendations:
|
|
2973
|
-
- For **cells with many obstacles**, use the RRTConnect algorithm. Recommended for most cases. Use it as a starting point.
|
|
2974
|
-
- For **simple cells with few obstacles** and when a faster solution is needed, try the MidpointInsertion algorithm.
|
|
2975
|
-
|
|
2976
3023
|
"""
|
|
2977
3024
|
target: DoubleArray
|
|
2978
3025
|
"""
|
|
@@ -2992,7 +3039,7 @@ class ErrorMaxIterationsExceeded(BaseModel):
|
|
|
2992
3039
|
|
|
2993
3040
|
"""
|
|
2994
3041
|
|
|
2995
|
-
max_iterations:
|
|
3042
|
+
max_iterations: int | None = None
|
|
2996
3043
|
"""
|
|
2997
3044
|
The maximum number of iterations that was reached.
|
|
2998
3045
|
|
|
@@ -3019,7 +3066,7 @@ class PlanCollisionFreeResponse(BaseModel):
|
|
|
3019
3066
|
|
|
3020
3067
|
"""
|
|
3021
3068
|
|
|
3022
|
-
response:
|
|
3069
|
+
response: JointTrajectory | PlanCollisionFreeFailedResponse
|
|
3023
3070
|
|
|
3024
3071
|
|
|
3025
3072
|
class JointPositionLimits(RootModel):
|
|
@@ -3028,7 +3075,7 @@ class JointPositionLimits(RootModel):
|
|
|
3028
3075
|
|
|
3029
3076
|
"""
|
|
3030
3077
|
|
|
3031
|
-
root: Annotated[
|
|
3078
|
+
root: Annotated[list[LimitRange], Field(title='JointPositionLimits')]
|
|
3032
3079
|
"""
|
|
3033
3080
|
Joint position limits in [rad], indexed starting from base.
|
|
3034
3081
|
|
|
@@ -3061,27 +3108,27 @@ class JointPositionLimits(RootModel):
|
|
|
3061
3108
|
|
|
3062
3109
|
class InverseKinematicsRequest(BaseModel):
|
|
3063
3110
|
motion_group_model: MotionGroupModel
|
|
3064
|
-
tcp_poses:
|
|
3111
|
+
tcp_poses: list[Pose]
|
|
3065
3112
|
"""
|
|
3066
3113
|
List of TCP poses for which the inverse solutions are computed.
|
|
3067
3114
|
|
|
3068
3115
|
"""
|
|
3069
|
-
tcp_offset:
|
|
3070
|
-
mounting:
|
|
3116
|
+
tcp_offset: Pose | None = None
|
|
3117
|
+
mounting: Pose | None = None
|
|
3071
3118
|
"""
|
|
3072
3119
|
Offset from the world frame to the motion group base.
|
|
3073
3120
|
"""
|
|
3074
|
-
joint_position_limits:
|
|
3075
|
-
collision_setups:
|
|
3121
|
+
joint_position_limits: JointPositionLimits | None = None
|
|
3122
|
+
collision_setups: CollisionSetups | None = None
|
|
3076
3123
|
|
|
3077
3124
|
|
|
3078
3125
|
class InverseKinematicsResponse(BaseModel):
|
|
3079
|
-
joints:
|
|
3126
|
+
joints: list[list[DoubleArray]]
|
|
3080
3127
|
|
|
3081
3128
|
|
|
3082
3129
|
class InverseKinematicsValidationError(ValidationError):
|
|
3083
3130
|
data: Annotated[
|
|
3084
|
-
|
|
3131
|
+
ErrorInvalidJointCount | ErrorJointLimitExceeded | None,
|
|
3085
3132
|
Field(discriminator='error_feedback_name'),
|
|
3086
3133
|
] = None
|
|
3087
3134
|
"""
|
|
@@ -3092,26 +3139,26 @@ class InverseKinematicsValidationError(ValidationError):
|
|
|
3092
3139
|
|
|
3093
3140
|
class InverseKinematics422Response(BaseModel):
|
|
3094
3141
|
detail: Annotated[
|
|
3095
|
-
|
|
3142
|
+
list[InverseKinematicsValidationError] | None, Field(title='Detail')
|
|
3096
3143
|
] = None
|
|
3097
3144
|
|
|
3098
3145
|
|
|
3099
3146
|
class ForwardKinematicsRequest(BaseModel):
|
|
3100
3147
|
motion_group_model: MotionGroupModel
|
|
3101
|
-
joint_positions:
|
|
3148
|
+
joint_positions: list[DoubleArray]
|
|
3102
3149
|
"""
|
|
3103
3150
|
List of joint positions [rad] for which TCP poses are computed.
|
|
3104
3151
|
|
|
3105
3152
|
"""
|
|
3106
|
-
tcp_offset:
|
|
3107
|
-
mounting:
|
|
3153
|
+
tcp_offset: Pose | None = None
|
|
3154
|
+
mounting: Pose | None = None
|
|
3108
3155
|
"""
|
|
3109
3156
|
Offset from the world frame to the motion group base.
|
|
3110
3157
|
"""
|
|
3111
3158
|
|
|
3112
3159
|
|
|
3113
3160
|
class ForwardKinematicsResponse(BaseModel):
|
|
3114
|
-
tcp_poses:
|
|
3161
|
+
tcp_poses: list[Pose]
|
|
3115
3162
|
"""
|
|
3116
3163
|
List of computed TCP poses corresponding to the input joint positions.
|
|
3117
3164
|
|
|
@@ -3119,17 +3166,17 @@ class ForwardKinematicsResponse(BaseModel):
|
|
|
3119
3166
|
|
|
3120
3167
|
|
|
3121
3168
|
class ForwardKinematicsValidationError(ValidationError):
|
|
3122
|
-
data:
|
|
3169
|
+
data: ErrorInvalidJointCount | None = None
|
|
3123
3170
|
|
|
3124
3171
|
|
|
3125
3172
|
class ForwardKinematics422Response(BaseModel):
|
|
3126
3173
|
detail: Annotated[
|
|
3127
|
-
|
|
3174
|
+
list[ForwardKinematicsValidationError] | None, Field(title='Detail')
|
|
3128
3175
|
] = None
|
|
3129
3176
|
|
|
3130
3177
|
|
|
3131
3178
|
class ListTrajectoriesResponse(BaseModel):
|
|
3132
|
-
trajectories:
|
|
3179
|
+
trajectories: list[str] | None = None
|
|
3133
3180
|
"""
|
|
3134
3181
|
Identifiers of trajectories which are currently cached.
|
|
3135
3182
|
Use [addTrajectory](addTrajectory) to add a new trajectory. Adding trajectories is necessary to execute them.
|
|
@@ -3149,7 +3196,7 @@ class AddTrajectoryRequest(BaseModel):
|
|
|
3149
3196
|
an equal number of corresponding timestamps.
|
|
3150
3197
|
|
|
3151
3198
|
"""
|
|
3152
|
-
tcp:
|
|
3199
|
+
tcp: str | None = None
|
|
3153
3200
|
"""
|
|
3154
3201
|
Unique identifier of the tool the trajectory is planned for.
|
|
3155
3202
|
"""
|
|
@@ -3160,13 +3207,13 @@ class TcpRequiredError(BaseModel):
|
|
|
3160
3207
|
Requested motion group requires TCP to be defined.
|
|
3161
3208
|
"""
|
|
3162
3209
|
|
|
3163
|
-
tcp_missing:
|
|
3210
|
+
tcp_missing: dict[str, Any] | None = None
|
|
3164
3211
|
|
|
3165
3212
|
|
|
3166
3213
|
class InconsistentTrajectorySize(BaseModel):
|
|
3167
|
-
joint_position_size:
|
|
3168
|
-
times_size:
|
|
3169
|
-
locations_size:
|
|
3214
|
+
joint_position_size: int | None = None
|
|
3215
|
+
times_size: int | None = None
|
|
3216
|
+
locations_size: int | None = None
|
|
3170
3217
|
|
|
3171
3218
|
|
|
3172
3219
|
class InconsistentTrajectorySizeError(BaseModel):
|
|
@@ -3175,24 +3222,24 @@ class InconsistentTrajectorySizeError(BaseModel):
|
|
|
3175
3222
|
|
|
3176
3223
|
"""
|
|
3177
3224
|
|
|
3178
|
-
inconsistent_trajectory_size:
|
|
3225
|
+
inconsistent_trajectory_size: InconsistentTrajectorySize | None = None
|
|
3179
3226
|
|
|
3180
3227
|
|
|
3181
3228
|
class JointLimitExceededError(BaseModel):
|
|
3182
|
-
joint_limit_exceeded:
|
|
3229
|
+
joint_limit_exceeded: FeedbackJointLimitExceeded | None = None
|
|
3183
3230
|
|
|
3184
3231
|
|
|
3185
3232
|
class CollisionError(BaseModel):
|
|
3186
|
-
collision:
|
|
3233
|
+
collision: FeedbackCollision | None = None
|
|
3187
3234
|
|
|
3188
3235
|
|
|
3189
3236
|
class TorqueExceeded(BaseModel):
|
|
3190
|
-
torque_value:
|
|
3237
|
+
torque_value: float | None = None
|
|
3191
3238
|
"""
|
|
3192
3239
|
The torque value that was exceeded.
|
|
3193
3240
|
|
|
3194
3241
|
"""
|
|
3195
|
-
torque_limit:
|
|
3242
|
+
torque_limit: float | None = None
|
|
3196
3243
|
"""
|
|
3197
3244
|
The value of the torque limit that was exceeded.
|
|
3198
3245
|
|
|
@@ -3200,23 +3247,23 @@ class TorqueExceeded(BaseModel):
|
|
|
3200
3247
|
|
|
3201
3248
|
|
|
3202
3249
|
class TorqueExceededError(BaseModel):
|
|
3203
|
-
torque_exceeded:
|
|
3250
|
+
torque_exceeded: TorqueExceeded | None = None
|
|
3204
3251
|
|
|
3205
3252
|
|
|
3206
3253
|
class InvalidDof(BaseModel):
|
|
3207
|
-
valid_dof:
|
|
3254
|
+
valid_dof: int | None = None
|
|
3208
3255
|
"""
|
|
3209
3256
|
The valid degrees of freedom for the motion group.
|
|
3210
3257
|
|
|
3211
3258
|
"""
|
|
3212
|
-
joint_position:
|
|
3259
|
+
joint_position: list[float] | None = None
|
|
3213
3260
|
"""
|
|
3214
3261
|
The joint position that is out of its limits.
|
|
3215
3262
|
"""
|
|
3216
3263
|
|
|
3217
3264
|
|
|
3218
3265
|
class InvalidDofError(BaseModel):
|
|
3219
|
-
invalid_dof:
|
|
3266
|
+
invalid_dof: InvalidDof | None = None
|
|
3220
3267
|
|
|
3221
3268
|
|
|
3222
3269
|
class NanValue(BaseModel):
|
|
@@ -3224,33 +3271,32 @@ class NanValue(BaseModel):
|
|
|
3224
3271
|
Requested joint position contains NaN values.
|
|
3225
3272
|
"""
|
|
3226
3273
|
|
|
3227
|
-
joint_position:
|
|
3274
|
+
joint_position: list[float] | None = None
|
|
3228
3275
|
"""
|
|
3229
3276
|
The joint position that is out of its limits.
|
|
3230
3277
|
"""
|
|
3231
3278
|
|
|
3232
3279
|
|
|
3233
3280
|
class NanValueError(BaseModel):
|
|
3234
|
-
nan_value:
|
|
3281
|
+
nan_value: NanValue | None = None
|
|
3235
3282
|
"""
|
|
3236
3283
|
Requested joint position contains NaN values.
|
|
3237
3284
|
"""
|
|
3238
3285
|
|
|
3239
3286
|
|
|
3240
3287
|
class AddTrajectoryError(BaseModel):
|
|
3241
|
-
message:
|
|
3242
|
-
location:
|
|
3243
|
-
data:
|
|
3244
|
-
|
|
3245
|
-
|
|
3246
|
-
|
|
3247
|
-
|
|
3248
|
-
|
|
3249
|
-
|
|
3250
|
-
|
|
3251
|
-
|
|
3252
|
-
|
|
3253
|
-
] = None
|
|
3288
|
+
message: str | None = None
|
|
3289
|
+
location: Location | None = None
|
|
3290
|
+
data: (
|
|
3291
|
+
TcpRequiredError
|
|
3292
|
+
| InconsistentTrajectorySizeError
|
|
3293
|
+
| JointLimitExceededError
|
|
3294
|
+
| CollisionError
|
|
3295
|
+
| TorqueExceededError
|
|
3296
|
+
| InvalidDofError
|
|
3297
|
+
| NanValueError
|
|
3298
|
+
| None
|
|
3299
|
+
) = None
|
|
3254
3300
|
|
|
3255
3301
|
|
|
3256
3302
|
class AddTrajectoryResponse(BaseModel):
|
|
@@ -3265,12 +3311,12 @@ class AddTrajectoryResponse(BaseModel):
|
|
|
3265
3311
|
|
|
3266
3312
|
"""
|
|
3267
3313
|
|
|
3268
|
-
trajectory:
|
|
3314
|
+
trajectory: str | None = None
|
|
3269
3315
|
"""
|
|
3270
3316
|
The unique identifier of the trajectory. Use this identifier to execute the trajectory with the [executeTrajectory](executeTrajectory) endpoint.
|
|
3271
3317
|
|
|
3272
3318
|
"""
|
|
3273
|
-
error:
|
|
3319
|
+
error: AddTrajectoryError | None = None
|
|
3274
3320
|
"""
|
|
3275
3321
|
Always check this field first. If this field is present, the trajectory has an error and is only partially or not executable.
|
|
3276
3322
|
|
|
@@ -3313,7 +3359,7 @@ class TrajectoryData(BaseModel):
|
|
|
3313
3359
|
Type specifier for server, set automatically.
|
|
3314
3360
|
|
|
3315
3361
|
"""
|
|
3316
|
-
motion_group:
|
|
3362
|
+
motion_group: str | None = None
|
|
3317
3363
|
"""
|
|
3318
3364
|
Identifier of the motion-group.
|
|
3319
3365
|
"""
|
|
@@ -3323,7 +3369,7 @@ class TrajectoryData(BaseModel):
|
|
|
3323
3369
|
an equal number of corresponding timestamps.
|
|
3324
3370
|
|
|
3325
3371
|
"""
|
|
3326
|
-
tcp:
|
|
3372
|
+
tcp: str | None = None
|
|
3327
3373
|
"""
|
|
3328
3374
|
Unique identifier of the tool the trajectory is planned for.
|
|
3329
3375
|
"""
|
|
@@ -3343,14 +3389,14 @@ class InitializeMovementRequest(BaseModel):
|
|
|
3343
3389
|
|
|
3344
3390
|
"""
|
|
3345
3391
|
trajectory: Annotated[
|
|
3346
|
-
|
|
3392
|
+
TrajectoryId | TrajectoryData, Field(discriminator='message_type')
|
|
3347
3393
|
]
|
|
3348
3394
|
"""
|
|
3349
3395
|
The trajectory which should be executed and locked to the connection.
|
|
3350
3396
|
|
|
3351
3397
|
"""
|
|
3352
|
-
initial_location:
|
|
3353
|
-
response_coordinate_system:
|
|
3398
|
+
initial_location: Location | None = None
|
|
3399
|
+
response_coordinate_system: str | None = None
|
|
3354
3400
|
"""
|
|
3355
3401
|
Unique identifier addressing a coordinate system to which the responses are transformed.
|
|
3356
3402
|
If not set, world coordinate system is used.
|
|
@@ -3438,26 +3484,26 @@ class StartMovementRequest(BaseModel):
|
|
|
3438
3484
|
Type specifier for server, set automatically.
|
|
3439
3485
|
|
|
3440
3486
|
"""
|
|
3441
|
-
direction:
|
|
3442
|
-
target_location:
|
|
3487
|
+
direction: Direction | None = 'DIRECTION_FORWARD'
|
|
3488
|
+
target_location: Location | None = None
|
|
3443
3489
|
"""
|
|
3444
3490
|
The target location to which the motion group moves along the trajectory to.
|
|
3445
3491
|
If `direction` and `target_location` are both specified, target location takes precedence.
|
|
3446
3492
|
If neither is specified, the default is `DIRECTION_FORWARD`.
|
|
3447
3493
|
|
|
3448
3494
|
"""
|
|
3449
|
-
set_outputs:
|
|
3495
|
+
set_outputs: list[SetIO] | None = None
|
|
3450
3496
|
"""
|
|
3451
3497
|
Attaches a list of output commands to the trajectory. The outputs are set to the specified values right after the specified location was reached.
|
|
3452
3498
|
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.
|
|
3453
3499
|
|
|
3454
3500
|
"""
|
|
3455
|
-
start_on_io:
|
|
3501
|
+
start_on_io: StartOnIO | None = None
|
|
3456
3502
|
"""
|
|
3457
3503
|
Defines an input/output that is listened to before the movement. Execution starts if the defined comparator evaluates to `true`.
|
|
3458
3504
|
|
|
3459
3505
|
"""
|
|
3460
|
-
pause_on_io:
|
|
3506
|
+
pause_on_io: PauseOnIO | None = None
|
|
3461
3507
|
"""
|
|
3462
3508
|
Defines an input/output that is listened to during the movement. Execution pauses if the defined comparator evaluates to `true`.
|
|
3463
3509
|
|
|
@@ -3489,7 +3535,7 @@ class PlaybackSpeedRequest(BaseModel):
|
|
|
3489
3535
|
Type specifier for server, set automatically.
|
|
3490
3536
|
|
|
3491
3537
|
"""
|
|
3492
|
-
playback_speed_in_percent: int
|
|
3538
|
+
playback_speed_in_percent: Annotated[int, Field(ge=0, le=100)]
|
|
3493
3539
|
"""
|
|
3494
3540
|
Sets velocity for executed movements of the trajectory, in percent. 100% means that the motion group moves as
|
|
3495
3541
|
fast as possible without violating any planning and motion group limits. Setting this value does not affect the overall shape of the velocity profile.
|
|
@@ -3501,12 +3547,10 @@ class PlaybackSpeedRequest(BaseModel):
|
|
|
3501
3547
|
|
|
3502
3548
|
class ExecuteTrajectoryRequest(RootModel):
|
|
3503
3549
|
root: Annotated[
|
|
3504
|
-
|
|
3505
|
-
|
|
3506
|
-
|
|
3507
|
-
|
|
3508
|
-
PlaybackSpeedRequest,
|
|
3509
|
-
],
|
|
3550
|
+
InitializeMovementRequest
|
|
3551
|
+
| StartMovementRequest
|
|
3552
|
+
| PauseMovementRequest
|
|
3553
|
+
| PlaybackSpeedRequest,
|
|
3510
3554
|
Field(discriminator='message_type', title='ExecuteTrajectoryRequest'),
|
|
3511
3555
|
]
|
|
3512
3556
|
|
|
@@ -3517,11 +3561,11 @@ class InitializeMovementResponse(BaseModel):
|
|
|
3517
3561
|
|
|
3518
3562
|
"""
|
|
3519
3563
|
|
|
3520
|
-
message:
|
|
3564
|
+
message: str | None = None
|
|
3521
3565
|
"""
|
|
3522
3566
|
Error message in case of invalid InitializeMovementRequest.
|
|
3523
3567
|
"""
|
|
3524
|
-
add_trajectory_error:
|
|
3568
|
+
add_trajectory_error: AddTrajectoryError | None = None
|
|
3525
3569
|
"""
|
|
3526
3570
|
Error can occur if joint trajectory was added by [InitializeMovementRequest](InitializeMovementRequest) and the trajectory is invalid.
|
|
3527
3571
|
|
|
@@ -3537,7 +3581,7 @@ class StartMovementResponse(BaseModel):
|
|
|
3537
3581
|
|
|
3538
3582
|
"""
|
|
3539
3583
|
|
|
3540
|
-
message:
|
|
3584
|
+
message: str | None = None
|
|
3541
3585
|
"""
|
|
3542
3586
|
Error message in case of invalid StartMovementResquest.
|
|
3543
3587
|
"""
|
|
@@ -3552,7 +3596,7 @@ class PauseMovementResponse(BaseModel):
|
|
|
3552
3596
|
|
|
3553
3597
|
"""
|
|
3554
3598
|
|
|
3555
|
-
message:
|
|
3599
|
+
message: str | None = None
|
|
3556
3600
|
"""
|
|
3557
3601
|
Error message in case of invalid PauseMovementResquest.
|
|
3558
3602
|
"""
|
|
@@ -3565,7 +3609,7 @@ class PlaybackSpeedResponse(BaseModel):
|
|
|
3565
3609
|
|
|
3566
3610
|
"""
|
|
3567
3611
|
|
|
3568
|
-
message:
|
|
3612
|
+
message: str | None = None
|
|
3569
3613
|
"""
|
|
3570
3614
|
Error message in case of invalid PlaybackSpeedRequest.
|
|
3571
3615
|
"""
|
|
@@ -3587,13 +3631,11 @@ class MovementErrorResponse(BaseModel):
|
|
|
3587
3631
|
|
|
3588
3632
|
class ExecuteTrajectoryResponse(RootModel):
|
|
3589
3633
|
root: Annotated[
|
|
3590
|
-
|
|
3591
|
-
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
MovementErrorResponse,
|
|
3596
|
-
],
|
|
3634
|
+
InitializeMovementResponse
|
|
3635
|
+
| StartMovementResponse
|
|
3636
|
+
| PauseMovementResponse
|
|
3637
|
+
| PlaybackSpeedResponse
|
|
3638
|
+
| MovementErrorResponse,
|
|
3597
3639
|
Field(discriminator='kind', title='ExecuteTrajectoryResponse'),
|
|
3598
3640
|
]
|
|
3599
3641
|
|
|
@@ -3612,12 +3654,12 @@ class InitializeJoggingRequest(BaseModel):
|
|
|
3612
3654
|
"""
|
|
3613
3655
|
Identifier of the motion group.
|
|
3614
3656
|
"""
|
|
3615
|
-
tcp:
|
|
3657
|
+
tcp: str | None = None
|
|
3616
3658
|
"""
|
|
3617
3659
|
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.
|
|
3618
3660
|
|
|
3619
3661
|
"""
|
|
3620
|
-
response_coordinate_system:
|
|
3662
|
+
response_coordinate_system: str | None = None
|
|
3621
3663
|
"""
|
|
3622
3664
|
Unique identifier addressing a coordinate system to which the responses are transformed.
|
|
3623
3665
|
If not set, world coordinate system is used.
|
|
@@ -3655,7 +3697,7 @@ class TcpVelocityRequest(BaseModel):
|
|
|
3655
3697
|
"""
|
|
3656
3698
|
translation: Vector3d
|
|
3657
3699
|
rotation: Vector3d
|
|
3658
|
-
use_tool_coordinate_system:
|
|
3700
|
+
use_tool_coordinate_system: bool | None = False
|
|
3659
3701
|
"""
|
|
3660
3702
|
If true, TCP velocities are interpreted in the tool coordinate system, specified by the TCP.
|
|
3661
3703
|
If false, TCP velocities are interpreted in the world coordinate system.
|
|
@@ -3678,12 +3720,10 @@ class PauseJoggingRequest(BaseModel):
|
|
|
3678
3720
|
|
|
3679
3721
|
class ExecuteJoggingRequest(RootModel):
|
|
3680
3722
|
root: Annotated[
|
|
3681
|
-
|
|
3682
|
-
|
|
3683
|
-
|
|
3684
|
-
|
|
3685
|
-
PauseJoggingRequest,
|
|
3686
|
-
],
|
|
3723
|
+
InitializeJoggingRequest
|
|
3724
|
+
| JointVelocityRequest
|
|
3725
|
+
| TcpVelocityRequest
|
|
3726
|
+
| PauseJoggingRequest,
|
|
3687
3727
|
Field(discriminator='message_type', title='ExecuteJoggingRequest'),
|
|
3688
3728
|
]
|
|
3689
3729
|
|
|
@@ -3694,7 +3734,7 @@ class InitializeJoggingResponse(BaseModel):
|
|
|
3694
3734
|
|
|
3695
3735
|
"""
|
|
3696
3736
|
|
|
3697
|
-
message:
|
|
3737
|
+
message: str | None = None
|
|
3698
3738
|
"""
|
|
3699
3739
|
Error message in case of invalid InitializeJoggingRequest.
|
|
3700
3740
|
"""
|
|
@@ -3707,7 +3747,7 @@ class PauseJoggingResponse(BaseModel):
|
|
|
3707
3747
|
|
|
3708
3748
|
"""
|
|
3709
3749
|
|
|
3710
|
-
message:
|
|
3750
|
+
message: str | None = None
|
|
3711
3751
|
"""
|
|
3712
3752
|
Error message in case of invalid PauseJoggingRequest.
|
|
3713
3753
|
"""
|
|
@@ -3720,7 +3760,7 @@ class TcpVelocityResponse(BaseModel):
|
|
|
3720
3760
|
|
|
3721
3761
|
"""
|
|
3722
3762
|
|
|
3723
|
-
message:
|
|
3763
|
+
message: str | None = None
|
|
3724
3764
|
"""
|
|
3725
3765
|
Error message in case of invalid TcpVelocityRequest.
|
|
3726
3766
|
"""
|
|
@@ -3733,7 +3773,7 @@ class JointVelocityResponse(BaseModel):
|
|
|
3733
3773
|
|
|
3734
3774
|
"""
|
|
3735
3775
|
|
|
3736
|
-
message:
|
|
3776
|
+
message: str | None = None
|
|
3737
3777
|
"""
|
|
3738
3778
|
Error message in case of invalid JointVelocityRequest.
|
|
3739
3779
|
"""
|
|
@@ -3742,13 +3782,11 @@ class JointVelocityResponse(BaseModel):
|
|
|
3742
3782
|
|
|
3743
3783
|
class ExecuteJoggingResponse(RootModel):
|
|
3744
3784
|
root: Annotated[
|
|
3745
|
-
|
|
3746
|
-
|
|
3747
|
-
|
|
3748
|
-
|
|
3749
|
-
|
|
3750
|
-
MovementErrorResponse,
|
|
3751
|
-
],
|
|
3785
|
+
InitializeJoggingResponse
|
|
3786
|
+
| PauseJoggingResponse
|
|
3787
|
+
| TcpVelocityResponse
|
|
3788
|
+
| JointVelocityResponse
|
|
3789
|
+
| MovementErrorResponse,
|
|
3752
3790
|
Field(discriminator='kind', title='ExecuteJoggingResponse'),
|
|
3753
3791
|
]
|
|
3754
3792
|
|
|
@@ -3768,14 +3806,14 @@ class Program(BaseModel):
|
|
|
3768
3806
|
title='Unique program identifier',
|
|
3769
3807
|
),
|
|
3770
3808
|
]
|
|
3771
|
-
name: Annotated[
|
|
3772
|
-
description: Annotated[
|
|
3809
|
+
name: Annotated[str | None, Field(title='Program name')] = None
|
|
3810
|
+
description: Annotated[str | None, Field(title='Program description')] = None
|
|
3773
3811
|
app: Annotated[str, Field(title='The app containing the program.')]
|
|
3774
3812
|
input_schema: Annotated[
|
|
3775
|
-
|
|
3813
|
+
dict[str, Any] | None, Field(title='Program input json schema')
|
|
3776
3814
|
] = None
|
|
3777
3815
|
preconditions: Annotated[
|
|
3778
|
-
|
|
3816
|
+
dict[str, Any] | None,
|
|
3779
3817
|
Field(title='Preconditions before the program can be started'),
|
|
3780
3818
|
] = None
|
|
3781
3819
|
|
|
@@ -3785,7 +3823,7 @@ class ProgramStartRequest(BaseModel):
|
|
|
3785
3823
|
The state of a program run.
|
|
3786
3824
|
"""
|
|
3787
3825
|
|
|
3788
|
-
arguments:
|
|
3826
|
+
arguments: dict[str, Any]
|
|
3789
3827
|
"""
|
|
3790
3828
|
The arguments to pass to the program.
|
|
3791
3829
|
"""
|
|
@@ -3816,7 +3854,7 @@ class ProgramRun(BaseModel):
|
|
|
3816
3854
|
"""
|
|
3817
3855
|
Unique identifier of the program
|
|
3818
3856
|
"""
|
|
3819
|
-
app: Annotated[
|
|
3857
|
+
app: Annotated[str | None, Field(title='App Id')] = None
|
|
3820
3858
|
"""
|
|
3821
3859
|
Identifier of the app that produced the program run
|
|
3822
3860
|
"""
|
|
@@ -3824,35 +3862,35 @@ class ProgramRun(BaseModel):
|
|
|
3824
3862
|
"""
|
|
3825
3863
|
State of the program run
|
|
3826
3864
|
"""
|
|
3827
|
-
logs: Annotated[
|
|
3865
|
+
logs: Annotated[str | None, Field(title='Logs')] = None
|
|
3828
3866
|
"""
|
|
3829
3867
|
Logs of the program run
|
|
3830
3868
|
"""
|
|
3831
|
-
stdout: Annotated[
|
|
3869
|
+
stdout: Annotated[str | None, Field(title='Stdout')] = None
|
|
3832
3870
|
"""
|
|
3833
3871
|
Stdout of the program run
|
|
3834
3872
|
"""
|
|
3835
|
-
stderr: Annotated[
|
|
3873
|
+
stderr: Annotated[str | None, Field(title='Stderr')] = None
|
|
3836
3874
|
"""
|
|
3837
3875
|
Stderr of the program run
|
|
3838
3876
|
"""
|
|
3839
|
-
error: Annotated[
|
|
3877
|
+
error: Annotated[str | None, Field(title='Error')] = None
|
|
3840
3878
|
"""
|
|
3841
3879
|
Error message of the program run, if any
|
|
3842
3880
|
"""
|
|
3843
|
-
traceback: Annotated[
|
|
3881
|
+
traceback: Annotated[str | None, Field(title='Traceback')] = None
|
|
3844
3882
|
"""
|
|
3845
3883
|
Traceback of the program run, if any
|
|
3846
3884
|
"""
|
|
3847
|
-
start_time: Annotated[
|
|
3885
|
+
start_time: Annotated[AwareDatetime | None, Field(title='Start Time')] = None
|
|
3848
3886
|
"""
|
|
3849
3887
|
Start time of the program run in RFC3339 format
|
|
3850
3888
|
"""
|
|
3851
|
-
end_time: Annotated[
|
|
3889
|
+
end_time: Annotated[AwareDatetime | None, Field(title='End Time')] = None
|
|
3852
3890
|
"""
|
|
3853
3891
|
End time of the program run in RFC3339 format
|
|
3854
3892
|
"""
|
|
3855
|
-
input_data: Annotated[
|
|
3893
|
+
input_data: Annotated[dict[str, Any] | None, Field(title='Input Data')] = None
|
|
3856
3894
|
"""
|
|
3857
3895
|
Input data of the program run
|
|
3858
3896
|
"""
|
|
@@ -3863,13 +3901,13 @@ class ValidationError2(BaseModel):
|
|
|
3863
3901
|
A validation error of a program.
|
|
3864
3902
|
"""
|
|
3865
3903
|
|
|
3866
|
-
loc: Annotated[
|
|
3904
|
+
loc: Annotated[list[int], Field(title='Location')]
|
|
3867
3905
|
msg: Annotated[str, Field(title='Message')]
|
|
3868
3906
|
type: Annotated[str, Field(title='Error Type')]
|
|
3869
3907
|
|
|
3870
3908
|
|
|
3871
3909
|
class HTTPValidationError(BaseModel):
|
|
3872
|
-
detail: Annotated[
|
|
3910
|
+
detail: Annotated[list[ValidationError2] | None, Field(title='Detail')] = None
|
|
3873
3911
|
|
|
3874
3912
|
|
|
3875
3913
|
class MotionGroupInfo(BaseModel):
|
|
@@ -3883,7 +3921,7 @@ class MotionGroupInfo(BaseModel):
|
|
|
3883
3921
|
The name of the motion group for display purposes.
|
|
3884
3922
|
|
|
3885
3923
|
"""
|
|
3886
|
-
dof: int
|
|
3924
|
+
dof: Annotated[int, Field(ge=0, le=2147483647)]
|
|
3887
3925
|
"""
|
|
3888
3926
|
The number of joints aka degrees of freedom in the motion group.
|
|
3889
3927
|
|
|
@@ -3891,7 +3929,7 @@ class MotionGroupInfo(BaseModel):
|
|
|
3891
3929
|
|
|
3892
3930
|
|
|
3893
3931
|
class MotionGroupInfos(RootModel):
|
|
3894
|
-
root:
|
|
3932
|
+
root: list[MotionGroupInfo]
|
|
3895
3933
|
|
|
3896
3934
|
def __getitem__(self, index: int) -> MotionGroupInfo:
|
|
3897
3935
|
"""
|
|
@@ -3924,22 +3962,22 @@ class MotionGroupJoints(BaseModel):
|
|
|
3924
3962
|
Everything but positions is optional.
|
|
3925
3963
|
"""
|
|
3926
3964
|
|
|
3927
|
-
positions:
|
|
3965
|
+
positions: list[float]
|
|
3928
3966
|
"""
|
|
3929
3967
|
The joint positions of the motion group.
|
|
3930
3968
|
|
|
3931
3969
|
"""
|
|
3932
|
-
velocities:
|
|
3970
|
+
velocities: list[float] | None = None
|
|
3933
3971
|
"""
|
|
3934
3972
|
The joint velocities of the motion group.
|
|
3935
3973
|
|
|
3936
3974
|
"""
|
|
3937
|
-
accelerations:
|
|
3975
|
+
accelerations: list[float] | None = None
|
|
3938
3976
|
"""
|
|
3939
3977
|
The joint accelerations of the motion group.
|
|
3940
3978
|
|
|
3941
3979
|
"""
|
|
3942
|
-
torques:
|
|
3980
|
+
torques: list[float] | None = None
|
|
3943
3981
|
"""
|
|
3944
3982
|
The joint torques of the motion group.
|
|
3945
3983
|
|
|
@@ -3947,13 +3985,13 @@ class MotionGroupJoints(BaseModel):
|
|
|
3947
3985
|
|
|
3948
3986
|
|
|
3949
3987
|
class RobotTcpData(BaseModel):
|
|
3950
|
-
name:
|
|
3988
|
+
name: str | None = None
|
|
3951
3989
|
"""
|
|
3952
3990
|
A readable and changeable name for frontend visualization.
|
|
3953
3991
|
"""
|
|
3954
3992
|
position: Vector3d
|
|
3955
|
-
orientation:
|
|
3956
|
-
orientation_type:
|
|
3993
|
+
orientation: Orientation | None = None
|
|
3994
|
+
orientation_type: OrientationType | None = 'ROTATION_VECTOR'
|
|
3957
3995
|
|
|
3958
3996
|
|
|
3959
3997
|
class RobotTcp(RobotTcpData):
|
|
@@ -3965,7 +4003,7 @@ class RobotTcp(RobotTcpData):
|
|
|
3965
4003
|
|
|
3966
4004
|
class RobotTcps(RootModel):
|
|
3967
4005
|
root: Annotated[
|
|
3968
|
-
|
|
4006
|
+
list[RobotTcp],
|
|
3969
4007
|
Field(
|
|
3970
4008
|
examples=[
|
|
3971
4009
|
[
|
|
@@ -4030,7 +4068,7 @@ class OpMode(BaseModel):
|
|
|
4030
4068
|
|
|
4031
4069
|
|
|
4032
4070
|
class CycleTime(BaseModel):
|
|
4033
|
-
cycle_time_ms: int
|
|
4071
|
+
cycle_time_ms: Annotated[int, Field(ge=0, le=4294967295)]
|
|
4034
4072
|
"""
|
|
4035
4073
|
Cycle time of controller communication in [ms].
|
|
4036
4074
|
"""
|
|
@@ -4071,7 +4109,7 @@ class ExternalJointStreamDatapoint(BaseModel):
|
|
|
4071
4109
|
|
|
4072
4110
|
|
|
4073
4111
|
class ExternalJointStreamDatapoints(RootModel):
|
|
4074
|
-
root:
|
|
4112
|
+
root: list[ExternalJointStreamDatapoint]
|
|
4075
4113
|
|
|
4076
4114
|
def __getitem__(self, index: int) -> ExternalJointStreamDatapoint:
|
|
4077
4115
|
"""
|
|
@@ -4117,7 +4155,7 @@ class MetadataObject(RootModel):
|
|
|
4117
4155
|
A metadata object.
|
|
4118
4156
|
"""
|
|
4119
4157
|
|
|
4120
|
-
root:
|
|
4158
|
+
root: dict[str, str]
|
|
4121
4159
|
|
|
4122
4160
|
|
|
4123
4161
|
class BinaryObject(RootModel):
|
|
@@ -4140,13 +4178,13 @@ class BusIODescription(BaseModel):
|
|
|
4140
4178
|
"""
|
|
4141
4179
|
direction: IODirection
|
|
4142
4180
|
value_type: IOValueType
|
|
4143
|
-
unit:
|
|
4144
|
-
min:
|
|
4145
|
-
max:
|
|
4181
|
+
unit: UnitType | None = None
|
|
4182
|
+
min: IOBoundary | None = None
|
|
4183
|
+
max: IOBoundary | None = None
|
|
4146
4184
|
|
|
4147
4185
|
|
|
4148
4186
|
class ListBusIODescriptionsResponse(RootModel):
|
|
4149
|
-
root:
|
|
4187
|
+
root: list[BusIODescription]
|
|
4150
4188
|
|
|
4151
4189
|
def __getitem__(self, index: int) -> BusIODescription:
|
|
4152
4190
|
"""
|
|
@@ -4187,7 +4225,7 @@ class BusIOsStateEnum(Enum):
|
|
|
4187
4225
|
|
|
4188
4226
|
class BusIOsState(BaseModel):
|
|
4189
4227
|
state: BusIOsStateEnum
|
|
4190
|
-
message:
|
|
4228
|
+
message: str | None = None
|
|
4191
4229
|
"""
|
|
4192
4230
|
A message providing additional information on the input/output service, e.g., BUS service status, encountered errors.
|
|
4193
4231
|
May be empty if no additional information is available.
|
|
@@ -4196,17 +4234,17 @@ class BusIOsState(BaseModel):
|
|
|
4196
4234
|
|
|
4197
4235
|
|
|
4198
4236
|
class ProfinetSubSlotDescription(BaseModel):
|
|
4199
|
-
number: Annotated[int, Field(ge=0)]
|
|
4237
|
+
number: Annotated[int, Field(ge=0, le=2147483647)]
|
|
4200
4238
|
"""
|
|
4201
4239
|
The number/index of the PROFINET subslot.
|
|
4202
4240
|
|
|
4203
4241
|
"""
|
|
4204
|
-
input_length: Annotated[int, Field(ge=0)]
|
|
4242
|
+
input_length: Annotated[int, Field(ge=0, le=2147483647)]
|
|
4205
4243
|
"""
|
|
4206
4244
|
The amount of bytes allocated for the subslot in the input process image buffer.
|
|
4207
4245
|
|
|
4208
4246
|
"""
|
|
4209
|
-
output_length: Annotated[int, Field(ge=0)]
|
|
4247
|
+
output_length: Annotated[int, Field(ge=0, le=2147483647)]
|
|
4210
4248
|
"""
|
|
4211
4249
|
The amount of bytes allocated for the subslot in the output process image buffer.
|
|
4212
4250
|
|
|
@@ -4224,18 +4262,18 @@ class ProfinetSlotDescription(BaseModel):
|
|
|
4224
4262
|
|
|
4225
4263
|
"""
|
|
4226
4264
|
|
|
4227
|
-
number: Annotated[int, Field(ge=0)]
|
|
4265
|
+
number: Annotated[int, Field(ge=0, le=2147483647)]
|
|
4228
4266
|
"""
|
|
4229
4267
|
The number/index of the PROFINET slot. Per default, slot 0 is reserved for the device access point (DAP). Slots that are part of the cyclic input/output data exchange start at number 1.
|
|
4230
4268
|
|
|
4231
4269
|
"""
|
|
4232
|
-
api: Annotated[int, Field(ge=0)]
|
|
4270
|
+
api: Annotated[int, Field(ge=0, le=2147483647)]
|
|
4233
4271
|
"""
|
|
4234
4272
|
The application process identifier (API) number of the PROFINET input.
|
|
4235
4273
|
The API identifies the application relation (AR) that is using the slot.
|
|
4236
4274
|
|
|
4237
4275
|
"""
|
|
4238
|
-
subslots:
|
|
4276
|
+
subslots: list[ProfinetSubSlotDescription]
|
|
4239
4277
|
"""
|
|
4240
4278
|
An array of PROFINET subslots.
|
|
4241
4279
|
|
|
@@ -4253,14 +4291,14 @@ class ProfinetDescription(BaseModel):
|
|
|
4253
4291
|
The device identifier of the PROFINET device, identifying the specific device within the vendor's range.
|
|
4254
4292
|
|
|
4255
4293
|
"""
|
|
4256
|
-
slots:
|
|
4257
|
-
device_name: Annotated[
|
|
4294
|
+
slots: list[ProfinetSlotDescription] | None = None
|
|
4295
|
+
device_name: Annotated[str | None, Field(examples=['pnDevice'])] = None
|
|
4258
4296
|
"""
|
|
4259
4297
|
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.
|
|
4260
4298
|
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.
|
|
4261
4299
|
|
|
4262
4300
|
"""
|
|
4263
|
-
ip_config:
|
|
4301
|
+
ip_config: BusIOProfinetIpConfig | None = None
|
|
4264
4302
|
|
|
4265
4303
|
|
|
4266
4304
|
class ProfinetIOTypeEnum(Enum):
|
|
@@ -4309,7 +4347,7 @@ class ProfinetIOData(BaseModel):
|
|
|
4309
4347
|
The byte address is used to locate the specific input/output variable within the device's memory or data structure.
|
|
4310
4348
|
|
|
4311
4349
|
"""
|
|
4312
|
-
bit_address: Annotated[
|
|
4350
|
+
bit_address: Annotated[int | None, Field(ge=0, le=7)] = None
|
|
4313
4351
|
"""
|
|
4314
4352
|
The bit address of the input/output variable within the byte or word address.
|
|
4315
4353
|
The bit address is used to specify the exact bit within the byte or word that corresponds to the input/output variable.
|
|
@@ -4331,7 +4369,7 @@ class ProfinetIOs(RootModel):
|
|
|
4331
4369
|
Array of PROFINET input/output variable configurations.
|
|
4332
4370
|
"""
|
|
4333
4371
|
|
|
4334
|
-
root:
|
|
4372
|
+
root: list[ProfinetIO]
|
|
4335
4373
|
"""
|
|
4336
4374
|
Array of PROFINET input/output variable configurations.
|
|
4337
4375
|
"""
|
|
@@ -4375,11 +4413,11 @@ class ProfinetInputOutputConfig(BaseModel):
|
|
|
4375
4413
|
The XML File has to be embedded as a string by escaping quotes, line breaks and so forth.
|
|
4376
4414
|
|
|
4377
4415
|
"""
|
|
4378
|
-
input_offset: Annotated[int, Field(examples=[100], ge=0)]
|
|
4416
|
+
input_offset: Annotated[int, Field(examples=[100], ge=0, le=2147483647)]
|
|
4379
4417
|
"""
|
|
4380
4418
|
Offset in bytes for the address of the input (perspective of the controller) variables. The offset will be subtracted from to the byte addresses of the sent XML content.
|
|
4381
4419
|
"""
|
|
4382
|
-
output_offset: Annotated[int, Field(examples=[800], ge=0)]
|
|
4420
|
+
output_offset: Annotated[int, Field(examples=[800], ge=0, le=2147483647)]
|
|
4383
4421
|
"""
|
|
4384
4422
|
Offset in bytes for the address of the output (perspective of the controller) variables. The offset will be subtracted from to the byte addresses of the sent XML content.
|
|
4385
4423
|
"""
|
|
@@ -4462,7 +4500,7 @@ class ModbusIOs(RootModel):
|
|
|
4462
4500
|
Array of MODBUS input/output variable configurations.
|
|
4463
4501
|
"""
|
|
4464
4502
|
|
|
4465
|
-
root:
|
|
4503
|
+
root: list[ModbusIO]
|
|
4466
4504
|
"""
|
|
4467
4505
|
Array of MODBUS input/output variable configurations.
|
|
4468
4506
|
"""
|
|
@@ -4492,12 +4530,32 @@ class ModbusIOs(RootModel):
|
|
|
4492
4530
|
return iter(self.root)
|
|
4493
4531
|
|
|
4494
4532
|
|
|
4533
|
+
class ApiVersion(BaseModel):
|
|
4534
|
+
version: str
|
|
4535
|
+
"""
|
|
4536
|
+
The version of the API.
|
|
4537
|
+
"""
|
|
4538
|
+
|
|
4539
|
+
|
|
4540
|
+
class ConfigurationResource(BaseModel):
|
|
4541
|
+
"""
|
|
4542
|
+
Configuration resource object.
|
|
4543
|
+
"""
|
|
4544
|
+
|
|
4545
|
+
id: ConfigurationResourceId
|
|
4546
|
+
name: str
|
|
4547
|
+
"""
|
|
4548
|
+
Human-readable name of the configuration resource.
|
|
4549
|
+
"""
|
|
4550
|
+
children: ConfigurationResourceArray | None = None
|
|
4551
|
+
|
|
4552
|
+
|
|
4495
4553
|
class ConfigurationResourceArray(RootModel):
|
|
4496
4554
|
"""
|
|
4497
4555
|
Array of configuration resources.
|
|
4498
4556
|
"""
|
|
4499
4557
|
|
|
4500
|
-
root:
|
|
4558
|
+
root: list[ConfigurationResource]
|
|
4501
4559
|
"""
|
|
4502
4560
|
Array of configuration resources.
|
|
4503
4561
|
"""
|
|
@@ -4527,17 +4585,4 @@ class ConfigurationResourceArray(RootModel):
|
|
|
4527
4585
|
return iter(self.root)
|
|
4528
4586
|
|
|
4529
4587
|
|
|
4530
|
-
|
|
4531
|
-
"""
|
|
4532
|
-
Configuration resource object.
|
|
4533
|
-
"""
|
|
4534
|
-
|
|
4535
|
-
id: ConfigurationResourceId
|
|
4536
|
-
name: str
|
|
4537
|
-
"""
|
|
4538
|
-
Human-readable name of the configuration resource.
|
|
4539
|
-
"""
|
|
4540
|
-
children: Optional[ConfigurationResourceArray] = None
|
|
4541
|
-
|
|
4542
|
-
|
|
4543
|
-
ConfigurationResourceArray.model_rebuild()
|
|
4588
|
+
ConfigurationResource.model_rebuild()
|