wandelbots-api-client 25.11.0.dev28__py3-none-any.whl → 26.1.0.dev53__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- wandelbots_api_client/__init__.py +2 -2
- wandelbots_api_client/api/application_api.py +1 -1
- wandelbots_api_client/api/cell_api.py +1 -1
- wandelbots_api_client/api/controller_api.py +1 -1
- wandelbots_api_client/api/controller_ios_api.py +1 -1
- wandelbots_api_client/api/coordinate_systems_api.py +1 -1
- wandelbots_api_client/api/device_configuration_api.py +1 -1
- wandelbots_api_client/api/library_program_api.py +1 -1
- wandelbots_api_client/api/library_program_metadata_api.py +1 -1
- wandelbots_api_client/api/library_recipe_api.py +1 -1
- wandelbots_api_client/api/library_recipe_metadata_api.py +1 -1
- wandelbots_api_client/api/license_api.py +1 -1
- wandelbots_api_client/api/motion_api.py +4 -4
- wandelbots_api_client/api/motion_group_api.py +1 -1
- wandelbots_api_client/api/motion_group_infos_api.py +1 -1
- wandelbots_api_client/api/motion_group_jogging_api.py +1 -1
- wandelbots_api_client/api/motion_group_kinematic_api.py +1 -1
- wandelbots_api_client/api/program_api.py +1 -1
- wandelbots_api_client/api/program_operator_api.py +1 -1
- wandelbots_api_client/api/program_values_api.py +1 -1
- wandelbots_api_client/api/store_collision_components_api.py +1 -1
- wandelbots_api_client/api/store_collision_scenes_api.py +1 -1
- wandelbots_api_client/api/store_object_api.py +1 -1
- wandelbots_api_client/api/system_api.py +1 -1
- wandelbots_api_client/api/version_api.py +1 -1
- wandelbots_api_client/api/virtual_robot_api.py +1 -1
- wandelbots_api_client/api/virtual_robot_behavior_api.py +1 -1
- wandelbots_api_client/api/virtual_robot_mode_api.py +1 -1
- wandelbots_api_client/api/virtual_robot_setup_api.py +1 -1
- wandelbots_api_client/api_client.py +2 -2
- wandelbots_api_client/configuration.py +3 -3
- wandelbots_api_client/exceptions.py +1 -1
- wandelbots_api_client/models/__init__.py +4 -2
- wandelbots_api_client/models/abb_controller.py +1 -1
- wandelbots_api_client/models/abb_controller_egm_server.py +1 -1
- wandelbots_api_client/models/activate_license_request.py +1 -1
- wandelbots_api_client/models/add_request.py +1 -1
- wandelbots_api_client/models/all_joint_positions_request.py +1 -1
- wandelbots_api_client/models/all_joint_positions_response.py +1 -1
- wandelbots_api_client/models/api_version.py +1 -1
- wandelbots_api_client/models/app.py +1 -1
- wandelbots_api_client/models/array_input.py +1 -1
- wandelbots_api_client/models/array_output.py +1 -1
- wandelbots_api_client/models/behavior.py +1 -1
- wandelbots_api_client/models/blending_auto.py +1 -1
- wandelbots_api_client/models/blending_position.py +1 -1
- wandelbots_api_client/models/box.py +1 -1
- wandelbots_api_client/models/box2.py +1 -1
- wandelbots_api_client/models/box3.py +1 -1
- wandelbots_api_client/models/capsule.py +1 -1
- wandelbots_api_client/models/capsule2.py +1 -1
- wandelbots_api_client/models/capsule3.py +1 -1
- wandelbots_api_client/models/capture.py +1 -1
- wandelbots_api_client/models/cell.py +1 -1
- wandelbots_api_client/models/circle.py +1 -1
- wandelbots_api_client/models/code_with_arguments.py +1 -1
- wandelbots_api_client/models/collection_value.py +1 -1
- wandelbots_api_client/models/collider.py +1 -1
- wandelbots_api_client/models/collider_input.py +1 -1
- wandelbots_api_client/models/collider_output.py +1 -1
- wandelbots_api_client/models/collider_output_shape.py +1 -1
- wandelbots_api_client/models/collider_shape.py +1 -1
- wandelbots_api_client/models/collision.py +1 -1
- wandelbots_api_client/models/collision_contact.py +1 -1
- wandelbots_api_client/models/collision_motion_group.py +1 -1
- wandelbots_api_client/models/collision_motion_group_assembly.py +1 -1
- wandelbots_api_client/models/collision_robot_configuration_input.py +1 -1
- wandelbots_api_client/models/collision_robot_configuration_output.py +1 -1
- wandelbots_api_client/models/collision_scene.py +1 -1
- wandelbots_api_client/models/collision_scene_assembly.py +1 -1
- wandelbots_api_client/models/command.py +1 -1
- wandelbots_api_client/models/command_settings.py +1 -1
- wandelbots_api_client/models/comparator.py +1 -1
- wandelbots_api_client/models/compound.py +1 -1
- wandelbots_api_client/models/container_environment_inner.py +1 -1
- wandelbots_api_client/models/container_image.py +1 -1
- wandelbots_api_client/models/container_image_secrets_inner.py +1 -1
- wandelbots_api_client/models/container_resources.py +1 -1
- wandelbots_api_client/models/container_storage.py +1 -1
- wandelbots_api_client/models/controller_capabilities.py +1 -1
- wandelbots_api_client/models/controller_instance.py +1 -1
- wandelbots_api_client/models/controller_instance_list.py +1 -1
- wandelbots_api_client/models/convex_hull.py +1 -1
- wandelbots_api_client/models/convex_hull2.py +1 -1
- wandelbots_api_client/models/convex_hull3.py +1 -1
- wandelbots_api_client/models/coordinate_system.py +1 -1
- wandelbots_api_client/models/coordinate_systems.py +1 -1
- wandelbots_api_client/models/create_device_request_inner.py +1 -1
- wandelbots_api_client/models/create_program_run200_response.py +1 -1
- wandelbots_api_client/models/create_program_run_request.py +1 -1
- wandelbots_api_client/models/create_trigger200_response.py +1 -1
- wandelbots_api_client/models/create_trigger_request.py +1 -1
- wandelbots_api_client/models/cubic_spline.py +1 -1
- wandelbots_api_client/models/cubic_spline_cubic_spline_parameter.py +1 -1
- wandelbots_api_client/models/cubic_spline_parameter.py +1 -1
- wandelbots_api_client/models/cycle_time.py +1 -1
- wandelbots_api_client/models/cylinder.py +1 -1
- wandelbots_api_client/models/cylinder2.py +1 -1
- wandelbots_api_client/models/cylinder3.py +1 -1
- wandelbots_api_client/models/dh_parameter.py +1 -1
- wandelbots_api_client/models/direction.py +1 -1
- wandelbots_api_client/models/direction_jogging_request.py +1 -1
- wandelbots_api_client/models/error.py +1 -1
- wandelbots_api_client/models/execute_trajectory_request.py +1 -1
- wandelbots_api_client/models/execute_trajectory_response.py +1 -1
- wandelbots_api_client/models/execution_result.py +1 -1
- wandelbots_api_client/models/external_joint_stream_datapoint.py +1 -1
- wandelbots_api_client/models/external_joint_stream_datapoint_value.py +1 -1
- wandelbots_api_client/models/fanuc_controller.py +1 -1
- wandelbots_api_client/models/feedback_collision.py +1 -1
- wandelbots_api_client/models/feedback_joint_limit_exceeded.py +1 -1
- wandelbots_api_client/models/feedback_out_of_workspace.py +1 -1
- wandelbots_api_client/models/feedback_singularity.py +1 -1
- wandelbots_api_client/models/flag.py +1 -1
- wandelbots_api_client/models/force_vector.py +1 -1
- wandelbots_api_client/models/geometry.py +1 -1
- wandelbots_api_client/models/get_all_program_runs200_response.py +1 -1
- wandelbots_api_client/models/get_all_triggers200_response.py +1 -1
- wandelbots_api_client/models/get_mode_response.py +1 -1
- wandelbots_api_client/models/get_trajectory_response.py +1 -1
- wandelbots_api_client/models/get_trajectory_sample_response.py +1 -1
- wandelbots_api_client/models/google_protobuf_any.py +1 -1
- wandelbots_api_client/models/http_exception_response.py +1 -1
- wandelbots_api_client/models/http_validation_error.py +1 -1
- wandelbots_api_client/models/http_validation_error2.py +1 -1
- wandelbots_api_client/models/image_credentials.py +1 -1
- wandelbots_api_client/models/info_service_capabilities.py +1 -1
- wandelbots_api_client/models/initialize_movement_request.py +1 -1
- wandelbots_api_client/models/initialize_movement_response.py +1 -1
- wandelbots_api_client/models/initialize_movement_response_init_response.py +1 -1
- wandelbots_api_client/models/io.py +1 -1
- wandelbots_api_client/models/io_description.py +1 -1
- wandelbots_api_client/models/io_value.py +1 -1
- wandelbots_api_client/models/ios.py +1 -1
- wandelbots_api_client/models/jogging_response.py +1 -1
- wandelbots_api_client/models/jogging_service_capabilities.py +1 -1
- wandelbots_api_client/models/joint_jogging_request.py +1 -1
- wandelbots_api_client/models/joint_limit.py +1 -1
- wandelbots_api_client/models/joint_limit_exceeded.py +1 -1
- wandelbots_api_client/models/joint_position_request.py +1 -1
- wandelbots_api_client/models/joint_trajectory.py +1 -1
- wandelbots_api_client/models/joints.py +1 -1
- wandelbots_api_client/models/kinematic_service_capabilities.py +1 -1
- wandelbots_api_client/models/kuka_controller.py +1 -1
- wandelbots_api_client/models/kuka_controller_rsi_server.py +1 -1
- wandelbots_api_client/models/license.py +1 -1
- wandelbots_api_client/models/license_status.py +1 -1
- wandelbots_api_client/models/license_status_enum.py +1 -1
- wandelbots_api_client/models/limit_settings.py +1 -1
- wandelbots_api_client/models/limits_override.py +1 -1
- wandelbots_api_client/models/list_devices200_response_inner.py +1 -1
- wandelbots_api_client/models/list_io_descriptions_response.py +1 -1
- wandelbots_api_client/models/list_io_values_response.py +1 -1
- wandelbots_api_client/models/list_payloads_response.py +1 -1
- wandelbots_api_client/models/list_program_metadata_response.py +1 -1
- wandelbots_api_client/models/list_recipe_metadata_response.py +1 -1
- wandelbots_api_client/models/list_response.py +1 -1
- wandelbots_api_client/models/list_tcps_response.py +1 -1
- wandelbots_api_client/models/manufacturer.py +1 -1
- wandelbots_api_client/models/mode_change_response.py +1 -1
- wandelbots_api_client/models/motion_command.py +1 -1
- wandelbots_api_client/models/motion_command_blending.py +1 -1
- wandelbots_api_client/models/motion_command_path.py +1 -1
- wandelbots_api_client/models/motion_group_behavior_getter.py +1 -1
- wandelbots_api_client/models/motion_group_info.py +1 -1
- wandelbots_api_client/models/motion_group_infos.py +1 -1
- wandelbots_api_client/models/motion_group_instance.py +1 -1
- wandelbots_api_client/models/motion_group_instance_list.py +1 -1
- wandelbots_api_client/models/motion_group_joints.py +1 -1
- wandelbots_api_client/models/motion_group_physical.py +1 -1
- wandelbots_api_client/models/motion_group_specification.py +1 -1
- wandelbots_api_client/models/motion_group_state.py +1 -1
- wandelbots_api_client/models/motion_group_state_joint_limit_reached.py +1 -1
- wandelbots_api_client/models/motion_group_state_response.py +1 -1
- wandelbots_api_client/models/motion_id.py +1 -1
- wandelbots_api_client/models/motion_ids_list_response.py +1 -1
- wandelbots_api_client/models/motion_vector.py +1 -1
- wandelbots_api_client/models/mounting.py +1 -1
- wandelbots_api_client/models/move_request.py +1 -1
- wandelbots_api_client/models/move_response.py +1 -1
- wandelbots_api_client/models/move_to_trajectory_via_joint_ptp_request.py +1 -1
- wandelbots_api_client/models/movement.py +1 -1
- wandelbots_api_client/models/movement_error.py +1 -1
- wandelbots_api_client/models/movement_error_error.py +1 -1
- wandelbots_api_client/models/movement_movement.py +1 -1
- wandelbots_api_client/models/op_mode.py +1 -1
- wandelbots_api_client/models/opcua_node_value_trigger_config.py +1 -1
- wandelbots_api_client/models/opcua_node_value_trigger_config_node_value.py +1 -1
- wandelbots_api_client/models/optimizer_setup.py +1 -1
- wandelbots_api_client/models/out_of_workspace.py +1 -1
- wandelbots_api_client/models/path.py +1 -1
- wandelbots_api_client/models/path_cartesian_ptp.py +1 -1
- wandelbots_api_client/models/path_circle.py +1 -1
- wandelbots_api_client/models/path_cubic_spline.py +1 -1
- wandelbots_api_client/models/path_joint_ptp.py +1 -1
- wandelbots_api_client/models/path_line.py +1 -1
- wandelbots_api_client/models/pause_movement_request.py +1 -1
- wandelbots_api_client/models/pause_movement_response.py +1 -1
- wandelbots_api_client/models/pause_movement_response_pause_response.py +1 -1
- wandelbots_api_client/models/pause_on_io.py +1 -1
- wandelbots_api_client/models/payload.py +1 -1
- wandelbots_api_client/models/plan_collision_free_ptp_request.py +1 -1
- wandelbots_api_client/models/plan_collision_free_ptp_request_target.py +1 -1
- wandelbots_api_client/models/plan_failed_on_trajectory_response.py +1 -1
- wandelbots_api_client/models/plan_failed_response.py +1 -1
- wandelbots_api_client/models/plan_request.py +1 -1
- wandelbots_api_client/models/plan_response.py +1 -1
- wandelbots_api_client/models/plan_successful_response.py +1 -1
- wandelbots_api_client/models/plan_trajectory_failed_response.py +1 -1
- wandelbots_api_client/models/plan_trajectory_failed_response_error_feedback.py +1 -1
- wandelbots_api_client/models/plan_trajectory_request.py +1 -1
- wandelbots_api_client/models/plan_trajectory_response.py +1 -1
- wandelbots_api_client/models/plan_trajectory_response_response.py +1 -1
- wandelbots_api_client/models/plane2.py +1 -1
- wandelbots_api_client/models/plane3.py +1 -1
- wandelbots_api_client/models/planned_motion.py +1 -1
- wandelbots_api_client/models/planner_pose.py +1 -1
- wandelbots_api_client/models/planning_limits.py +1 -1
- wandelbots_api_client/models/planning_limits_limit_range.py +1 -1
- wandelbots_api_client/models/playback_speed_request.py +1 -1
- wandelbots_api_client/models/playback_speed_response.py +1 -1
- wandelbots_api_client/models/playback_speed_response_playback_speed_response.py +1 -1
- wandelbots_api_client/models/point_cloud.py +1 -1
- wandelbots_api_client/models/pose.py +1 -1
- wandelbots_api_client/models/pose2.py +1 -1
- wandelbots_api_client/models/program_metadata.py +1 -1
- wandelbots_api_client/models/program_run.py +1 -1
- wandelbots_api_client/models/program_run_object.py +1 -1
- wandelbots_api_client/models/program_run_state.py +1 -1
- wandelbots_api_client/models/program_runner_reference.py +1 -1
- wandelbots_api_client/models/pyjectory_datatypes_core_pose.py +1 -1
- wandelbots_api_client/models/pyjectory_datatypes_serializer_orientation.py +1 -1
- wandelbots_api_client/models/pyjectory_datatypes_serializer_pose.py +1 -1
- wandelbots_api_client/models/pyjectory_datatypes_serializer_position.py +1 -1
- wandelbots_api_client/models/pyriphery_etcd_etcd_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_hardware_isaac_isaac_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_opcua_opcua_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_pyrae_controller_controller_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_pyrae_robot_robot_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_input.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_configurable_collision_scene_configurable_collision_scene_configuration_output.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_robotcell_timer_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_simulation_robot_with_view_open3d_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_io_configuration.py +1 -1
- wandelbots_api_client/models/pyriphery_robotics_simulation_simulated_opcua_configuration.py +1 -1
- wandelbots_api_client/models/quaternion.py +1 -1
- wandelbots_api_client/models/recipe_metadata.py +1 -1
- wandelbots_api_client/models/rectangle.py +1 -1
- wandelbots_api_client/models/rectangle2.py +1 -1
- wandelbots_api_client/models/rectangle3.py +1 -1
- wandelbots_api_client/models/rectangular_capsule.py +1 -1
- wandelbots_api_client/models/rectangular_capsule2.py +1 -1
- wandelbots_api_client/models/rectangular_capsule3.py +1 -1
- wandelbots_api_client/models/release_channel.py +1 -1
- wandelbots_api_client/models/request.py +1 -1
- wandelbots_api_client/models/request1.py +1 -1
- wandelbots_api_client/models/response_get_value_programs_values_key_get.py +1 -1
- wandelbots_api_client/models/response_get_values_programs_values_get_value.py +1 -1
- wandelbots_api_client/models/robot_controller.py +1 -1
- wandelbots_api_client/models/robot_controller_configuration.py +1 -1
- wandelbots_api_client/models/robot_controller_state.py +1 -1
- wandelbots_api_client/models/robot_link_geometry.py +1 -1
- wandelbots_api_client/models/robot_state.py +1 -1
- wandelbots_api_client/models/robot_system_mode.py +1 -1
- wandelbots_api_client/models/robot_tcp.py +1 -1
- wandelbots_api_client/models/robot_tcps.py +1 -1
- wandelbots_api_client/models/rotation_angle_types.py +1 -1
- wandelbots_api_client/models/rotation_angles.py +1 -1
- wandelbots_api_client/models/safety_configuration.py +1 -1
- wandelbots_api_client/models/safety_setup.py +1 -1
- wandelbots_api_client/models/safety_setup_safety_settings.py +1 -1
- wandelbots_api_client/models/safety_setup_safety_zone.py +1 -1
- wandelbots_api_client/models/safety_zone.py +1 -1
- wandelbots_api_client/models/safety_zone_limits.py +1 -1
- wandelbots_api_client/models/safety_zone_violation.py +1 -1
- wandelbots_api_client/models/service_status.py +1 -1
- wandelbots_api_client/models/service_status_phase.py +1 -1
- wandelbots_api_client/models/service_status_severity.py +1 -1
- wandelbots_api_client/models/service_status_status.py +1 -1
- wandelbots_api_client/models/set_io.py +1 -1
- wandelbots_api_client/models/set_playback_speed.py +1 -1
- wandelbots_api_client/models/single_joint_limit.py +1 -1
- wandelbots_api_client/models/singularity.py +1 -1
- wandelbots_api_client/models/singularity_type_enum.py +1 -1
- wandelbots_api_client/models/sphere.py +1 -1
- wandelbots_api_client/models/sphere2.py +1 -1
- wandelbots_api_client/models/sphere3.py +1 -1
- wandelbots_api_client/models/standstill.py +1 -1
- wandelbots_api_client/models/standstill_reason.py +1 -1
- wandelbots_api_client/models/standstill_standstill.py +1 -1
- wandelbots_api_client/models/start_movement_request.py +1 -1
- wandelbots_api_client/models/start_on_io.py +1 -1
- wandelbots_api_client/models/status.py +1 -1
- wandelbots_api_client/models/stop_response.py +1 -1
- wandelbots_api_client/models/store_value.py +1 -1
- wandelbots_api_client/models/stream_move_backward.py +1 -1
- wandelbots_api_client/models/stream_move_forward.py +1 -1
- wandelbots_api_client/models/stream_move_playback_speed.py +1 -1
- wandelbots_api_client/models/stream_move_request.py +1 -1
- wandelbots_api_client/models/stream_move_response.py +1 -1
- wandelbots_api_client/models/stream_move_to_trajectory.py +1 -1
- wandelbots_api_client/models/stream_stop.py +1 -1
- wandelbots_api_client/models/tcp_pose.py +1 -1
- wandelbots_api_client/models/tcp_pose_request.py +1 -1
- wandelbots_api_client/models/tool_geometry.py +1 -1
- wandelbots_api_client/models/trajectory_sample.py +1 -1
- wandelbots_api_client/models/trigger_object.py +1 -1
- wandelbots_api_client/models/trigger_type.py +1 -1
- wandelbots_api_client/models/universalrobots_controller.py +1 -1
- wandelbots_api_client/models/update_nova_version_request.py +1 -1
- wandelbots_api_client/models/update_program_metadata_request.py +1 -1
- wandelbots_api_client/models/update_recipe_metadata_request.py +1 -1
- wandelbots_api_client/models/update_trigger_request.py +1 -1
- wandelbots_api_client/models/validation_error.py +1 -1
- wandelbots_api_client/models/validation_error2.py +1 -1
- wandelbots_api_client/models/validation_error2_loc_inner.py +1 -1
- wandelbots_api_client/models/validation_error_loc_inner.py +1 -1
- wandelbots_api_client/models/value.py +1 -1
- wandelbots_api_client/models/vector3d.py +1 -1
- wandelbots_api_client/models/version_number.py +1 -1
- wandelbots_api_client/models/virtual_controller.py +1 -1
- wandelbots_api_client/models/virtual_controller_types.py +4 -4
- wandelbots_api_client/models/virtual_robot_configuration.py +1 -1
- wandelbots_api_client/models/yaskawa_controller.py +1 -1
- wandelbots_api_client/rest.py +1 -1
- wandelbots_api_client/v2/__init__.py +1 -1
- wandelbots_api_client/v2/api/__init__.py +2 -0
- wandelbots_api_client/v2/api/jogging_api.py +1 -1
- wandelbots_api_client/v2/api/motion_group_models_api.py +530 -2
- wandelbots_api_client/v2/api/robot_configurations_api.py +291 -0
- wandelbots_api_client/v2/api/trajectory_execution_api.py +1 -1
- wandelbots_api_client/v2/api_client.py +1 -1
- wandelbots_api_client/v2/configuration.py +1 -1
- wandelbots_api_client/v2/models/__init__.py +5 -3
- wandelbots_api_client/v2/models/blending_auto.py +1 -1
- wandelbots_api_client/v2/models/blending_position.py +15 -1
- wandelbots_api_client/v2/models/blending_space.py +37 -0
- wandelbots_api_client/v2/models/virtual_controller.py +1 -2
- wandelbots_api_client/v2/models/virtual_controller_types.py +1 -1
- wandelbots_api_client/v2_pydantic/__init__.py +1 -1
- wandelbots_api_client/v2_pydantic/api/__init__.py +2 -0
- wandelbots_api_client/v2_pydantic/api/jogging_api.py +1 -1
- wandelbots_api_client/v2_pydantic/api/motion_group_models_api.py +536 -2
- wandelbots_api_client/v2_pydantic/api/robot_configurations_api.py +294 -0
- wandelbots_api_client/v2_pydantic/api/trajectory_execution_api.py +1 -1
- wandelbots_api_client/v2_pydantic/api_client.py +1 -1
- wandelbots_api_client/v2_pydantic/configuration.py +1 -1
- wandelbots_api_client/v2_pydantic/models.py +423 -499
- wandelbots_api_client/v2_pydantic/virtual_controller_types.py +126 -0
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/METADATA +3 -3
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/RECORD +354 -350
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/WHEEL +0 -0
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/licenses/LICENSE +0 -0
- {wandelbots_api_client-25.11.0.dev28.dist-info → wandelbots_api_client-26.1.0.dev53.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Wandelbots NOVA API
|
|
5
|
+
|
|
6
|
+
Interact with robots in an easy and intuitive way.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 2.1.0 dev
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
from furl import furl
|
|
15
|
+
import json
|
|
16
|
+
import humps
|
|
17
|
+
import re
|
|
18
|
+
import warnings
|
|
19
|
+
import websockets
|
|
20
|
+
from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
|
|
21
|
+
from typing import Any, AsyncGenerator, Callable, Dict, List, Optional, Tuple, Union
|
|
22
|
+
from typing_extensions import Annotated
|
|
23
|
+
from urllib.parse import quote
|
|
24
|
+
|
|
25
|
+
from pydantic import StrictStr
|
|
26
|
+
from typing import List
|
|
27
|
+
|
|
28
|
+
from wandelbots_api_client.v2.api_client import ApiClient, RequestSerialized
|
|
29
|
+
from wandelbots_api_client.v2.api_response import ApiResponse
|
|
30
|
+
from wandelbots_api_client.v2.rest import RESTResponseType
|
|
31
|
+
|
|
32
|
+
class RobotConfigurationsApi:
|
|
33
|
+
"""NOTE: This class is auto generated by OpenAPI Generator
|
|
34
|
+
Ref: https://openapi-generator.tech
|
|
35
|
+
|
|
36
|
+
Do not edit the class manually.
|
|
37
|
+
"""
|
|
38
|
+
|
|
39
|
+
def __init__(self, api_client=None) -> None:
|
|
40
|
+
if api_client is None:
|
|
41
|
+
api_client = ApiClient.get_default()
|
|
42
|
+
self.api_client = api_client
|
|
43
|
+
|
|
44
|
+
@validate_call
|
|
45
|
+
async def get_robot_configurations(
|
|
46
|
+
self,
|
|
47
|
+
_request_timeout: Union[
|
|
48
|
+
None,
|
|
49
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
50
|
+
Tuple[
|
|
51
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
52
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
53
|
+
]
|
|
54
|
+
] = None,
|
|
55
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
56
|
+
_content_type: Optional[StrictStr] = None,
|
|
57
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
58
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
59
|
+
) -> List[str]:
|
|
60
|
+
"""List Robot Configurations
|
|
61
|
+
|
|
62
|
+
Returns the identifiers of available robot configurations. A robot configuration represents a robot controller with one or more attached motion groups.
|
|
63
|
+
|
|
64
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
65
|
+
number provided, it will be total request
|
|
66
|
+
timeout. It can also be a pair (tuple) of
|
|
67
|
+
(connection, read) timeouts.
|
|
68
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
69
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
70
|
+
request; this effectively ignores the
|
|
71
|
+
authentication in the spec for a single request.
|
|
72
|
+
:type _request_auth: dict, optional
|
|
73
|
+
:param _content_type: force content-type for the request.
|
|
74
|
+
:type _content_type: str, Optional
|
|
75
|
+
:param _headers: set to override the headers for a single
|
|
76
|
+
request; this effectively ignores the headers
|
|
77
|
+
in the spec for a single request.
|
|
78
|
+
:type _headers: dict, optional
|
|
79
|
+
:param _host_index: set to override the host_index for a single
|
|
80
|
+
request; this effectively ignores the host_index
|
|
81
|
+
in the spec for a single request.
|
|
82
|
+
:type _host_index: int, optional
|
|
83
|
+
:return: Returns the result object.
|
|
84
|
+
""" # noqa: E501
|
|
85
|
+
|
|
86
|
+
_param = self._get_robot_configurations_serialize(
|
|
87
|
+
_request_auth=_request_auth,
|
|
88
|
+
_content_type=_content_type,
|
|
89
|
+
_headers=_headers,
|
|
90
|
+
_host_index=_host_index
|
|
91
|
+
)
|
|
92
|
+
|
|
93
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
94
|
+
'200': "List[str]",
|
|
95
|
+
'404': None,
|
|
96
|
+
'500': None,
|
|
97
|
+
}
|
|
98
|
+
response_data = await self.api_client.call_api(
|
|
99
|
+
*_param,
|
|
100
|
+
_request_timeout=_request_timeout
|
|
101
|
+
)
|
|
102
|
+
await response_data.read()
|
|
103
|
+
return self.api_client.response_deserialize(
|
|
104
|
+
response_data=response_data,
|
|
105
|
+
response_types_map=_response_types_map,
|
|
106
|
+
).data
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
@validate_call
|
|
110
|
+
async def get_robot_configurations_with_http_info(
|
|
111
|
+
self,
|
|
112
|
+
_request_timeout: Union[
|
|
113
|
+
None,
|
|
114
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
115
|
+
Tuple[
|
|
116
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
117
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
118
|
+
]
|
|
119
|
+
] = None,
|
|
120
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
121
|
+
_content_type: Optional[StrictStr] = None,
|
|
122
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
123
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
124
|
+
) -> ApiResponse[List[str]]:
|
|
125
|
+
"""List Robot Configurations
|
|
126
|
+
|
|
127
|
+
Returns the identifiers of available robot configurations. A robot configuration represents a robot controller with one or more attached motion groups.
|
|
128
|
+
|
|
129
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
130
|
+
number provided, it will be total request
|
|
131
|
+
timeout. It can also be a pair (tuple) of
|
|
132
|
+
(connection, read) timeouts.
|
|
133
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
134
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
135
|
+
request; this effectively ignores the
|
|
136
|
+
authentication in the spec for a single request.
|
|
137
|
+
:type _request_auth: dict, optional
|
|
138
|
+
:param _content_type: force content-type for the request.
|
|
139
|
+
:type _content_type: str, Optional
|
|
140
|
+
:param _headers: set to override the headers for a single
|
|
141
|
+
request; this effectively ignores the headers
|
|
142
|
+
in the spec for a single request.
|
|
143
|
+
:type _headers: dict, optional
|
|
144
|
+
:param _host_index: set to override the host_index for a single
|
|
145
|
+
request; this effectively ignores the host_index
|
|
146
|
+
in the spec for a single request.
|
|
147
|
+
:type _host_index: int, optional
|
|
148
|
+
:return: Returns the result object.
|
|
149
|
+
""" # noqa: E501
|
|
150
|
+
|
|
151
|
+
_param = self._get_robot_configurations_serialize(
|
|
152
|
+
_request_auth=_request_auth,
|
|
153
|
+
_content_type=_content_type,
|
|
154
|
+
_headers=_headers,
|
|
155
|
+
_host_index=_host_index
|
|
156
|
+
)
|
|
157
|
+
|
|
158
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
159
|
+
'200': "List[str]",
|
|
160
|
+
'404': None,
|
|
161
|
+
'500': None,
|
|
162
|
+
}
|
|
163
|
+
response_data = await self.api_client.call_api(
|
|
164
|
+
*_param,
|
|
165
|
+
_request_timeout=_request_timeout
|
|
166
|
+
)
|
|
167
|
+
await response_data.read()
|
|
168
|
+
return self.api_client.response_deserialize(
|
|
169
|
+
response_data=response_data,
|
|
170
|
+
response_types_map=_response_types_map,
|
|
171
|
+
)
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
@validate_call
|
|
175
|
+
async def get_robot_configurations_without_preload_content(
|
|
176
|
+
self,
|
|
177
|
+
_request_timeout: Union[
|
|
178
|
+
None,
|
|
179
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
180
|
+
Tuple[
|
|
181
|
+
Annotated[StrictFloat, Field(gt=0)],
|
|
182
|
+
Annotated[StrictFloat, Field(gt=0)]
|
|
183
|
+
]
|
|
184
|
+
] = None,
|
|
185
|
+
_request_auth: Optional[Dict[StrictStr, Any]] = None,
|
|
186
|
+
_content_type: Optional[StrictStr] = None,
|
|
187
|
+
_headers: Optional[Dict[StrictStr, Any]] = None,
|
|
188
|
+
_host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
|
|
189
|
+
) -> RESTResponseType:
|
|
190
|
+
"""List Robot Configurations
|
|
191
|
+
|
|
192
|
+
Returns the identifiers of available robot configurations. A robot configuration represents a robot controller with one or more attached motion groups.
|
|
193
|
+
|
|
194
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
195
|
+
number provided, it will be total request
|
|
196
|
+
timeout. It can also be a pair (tuple) of
|
|
197
|
+
(connection, read) timeouts.
|
|
198
|
+
:type _request_timeout: int, tuple(int, int), optional
|
|
199
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
200
|
+
request; this effectively ignores the
|
|
201
|
+
authentication in the spec for a single request.
|
|
202
|
+
:type _request_auth: dict, optional
|
|
203
|
+
:param _content_type: force content-type for the request.
|
|
204
|
+
:type _content_type: str, Optional
|
|
205
|
+
:param _headers: set to override the headers for a single
|
|
206
|
+
request; this effectively ignores the headers
|
|
207
|
+
in the spec for a single request.
|
|
208
|
+
:type _headers: dict, optional
|
|
209
|
+
:param _host_index: set to override the host_index for a single
|
|
210
|
+
request; this effectively ignores the host_index
|
|
211
|
+
in the spec for a single request.
|
|
212
|
+
:type _host_index: int, optional
|
|
213
|
+
:return: Returns the result object.
|
|
214
|
+
""" # noqa: E501
|
|
215
|
+
|
|
216
|
+
_param = self._get_robot_configurations_serialize(
|
|
217
|
+
_request_auth=_request_auth,
|
|
218
|
+
_content_type=_content_type,
|
|
219
|
+
_headers=_headers,
|
|
220
|
+
_host_index=_host_index
|
|
221
|
+
)
|
|
222
|
+
|
|
223
|
+
_response_types_map: Dict[str, Optional[str]] = {
|
|
224
|
+
'200': "List[str]",
|
|
225
|
+
'404': None,
|
|
226
|
+
'500': None,
|
|
227
|
+
}
|
|
228
|
+
response_data = await self.api_client.call_api(
|
|
229
|
+
*_param,
|
|
230
|
+
_request_timeout=_request_timeout
|
|
231
|
+
)
|
|
232
|
+
return response_data.response
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
def _get_robot_configurations_serialize(
|
|
236
|
+
self,
|
|
237
|
+
_request_auth,
|
|
238
|
+
_content_type,
|
|
239
|
+
_headers,
|
|
240
|
+
_host_index,
|
|
241
|
+
) -> RequestSerialized:
|
|
242
|
+
|
|
243
|
+
_host = None
|
|
244
|
+
|
|
245
|
+
_collection_formats: Dict[str, str] = {
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
_path_params: Dict[str, str] = {}
|
|
249
|
+
_query_params: List[Tuple[str, str]] = []
|
|
250
|
+
_header_params: Dict[str, Optional[str]] = _headers or {}
|
|
251
|
+
_form_params: List[Tuple[str, str]] = []
|
|
252
|
+
_files: Dict[str, Union[str, bytes]] = {}
|
|
253
|
+
_body_params: Optional[bytes] = None
|
|
254
|
+
|
|
255
|
+
# process the path parameters
|
|
256
|
+
# process the query parameters
|
|
257
|
+
# process the header parameters
|
|
258
|
+
# process the form parameters
|
|
259
|
+
# process the body parameter
|
|
260
|
+
|
|
261
|
+
|
|
262
|
+
# set the HTTP header `Accept`
|
|
263
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
264
|
+
[
|
|
265
|
+
'application/json'
|
|
266
|
+
]
|
|
267
|
+
)
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
# authentication setting
|
|
271
|
+
_auth_settings: List[str] = [
|
|
272
|
+
'BasicAuth',
|
|
273
|
+
'BearerAuth'
|
|
274
|
+
]
|
|
275
|
+
|
|
276
|
+
return self.api_client.param_serialize(
|
|
277
|
+
method='GET',
|
|
278
|
+
resource_path='/robot-configurations',
|
|
279
|
+
path_params=_path_params,
|
|
280
|
+
query_params=_query_params,
|
|
281
|
+
header_params=_header_params,
|
|
282
|
+
body=_body_params,
|
|
283
|
+
post_params=_form_params,
|
|
284
|
+
files=_files,
|
|
285
|
+
auth_settings=_auth_settings,
|
|
286
|
+
collection_formats=_collection_formats,
|
|
287
|
+
_host=_host,
|
|
288
|
+
_request_auth=_request_auth
|
|
289
|
+
)
|
|
290
|
+
|
|
291
|
+
|
|
@@ -47,7 +47,7 @@ class TrajectoryExecutionApi:
|
|
|
47
47
|
async def execute_trajectory(self, cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")], controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")], client_request_generator: Callable[[AsyncGenerator[ExecuteTrajectoryResponse, None]], AsyncGenerator[ExecuteTrajectoryRequest, None]]) -> None: # noqa: E501
|
|
48
48
|
"""Execute Trajectory # noqa: E501
|
|
49
49
|
|
|
50
|
-
<!-- theme: success --> > Websocket endpoint Provides execution control over a previously [planned trajectory](planTrajectory). Enables the caller to attach input/output actions to the trajectory. ### Movement behavior | Virtual controller | Physical controller | |------------------|-------------------| | Desired joint configurations are commanded to each motion group and **applied immediately** | Move to desired **actual joint configuration**, **if possible** | ### Concept of location - The location or path parameter specifies the exact position along a trajectory. - The location is a scalar value that ranges from 0 to `n`, where `n` denotes the number of motion commands, or trajectory segments, e.g., line, p2p, etc. See [planTrajectory](planTrajectory). - Each integer value of the location corresponds to one motion command, e.g., 3.0 to 3.999 could be a line. ### Preconditions - The motion group's control mode is not claimed by any other endpoint. - The motion group's joint position are at start location specified with `InitializeMovementRequest`. - Use [executeToTrajectory](executeToTrajectory) to move the robot to the start location. ### Requests #### 1. Send `InitializeMovementRequest` to lock the trajectory to this connection The following actions are executed: - Sets robot controller mode to control mode, - Sets start location of the execution Keep in mind that only a single trajectory can be locked to a websocket connection at a time
|
|
50
|
+
<!-- theme: success --> > Websocket endpoint Provides execution control over a previously [planned trajectory](planTrajectory). Enables the caller to attach input/output actions to the trajectory. ### Movement behavior | Virtual controller | Physical controller | |------------------|-------------------| | Desired joint configurations are commanded to each motion group and **applied immediately** | Move to desired **actual joint configuration**, **if possible** | ### Concept of location - The location or path parameter specifies the exact position along a trajectory. - The location is a scalar value that ranges from 0 to `n`, where `n` denotes the number of motion commands, or trajectory segments, e.g., line, p2p, etc. See [planTrajectory](planTrajectory). - Each integer value of the location corresponds to one motion command, e.g., 3.0 to 3.999 could be a line. ### Preconditions - The motion group's control mode is not claimed by any other endpoint. - The motion group's joint position are at start location specified with `InitializeMovementRequest`. - Use [executeToTrajectory](executeToTrajectory) to move the robot to the start location. ### Requests #### 1. Send `InitializeMovementRequest` to lock the trajectory to this connection The following actions are executed: - Sets robot controller mode to control mode, - Sets start location of the execution Keep in mind that only a single trajectory can be locked to a websocket connection at a time. Pausing the current movement enables you to send another `InitializeMovementRequest` to execute another trajectory on the same connection. #### 2. Send `StartMovementRequest` to start the movement Sets direction of movement, default is forward. #### **Optional** - To pause, send `PauseMovementRequest` before the movement has reached its end location. - Change the movement's velocity with `PlaybackSpeedRequest` after initializing the movement with `InitializeMovementRequest`. ### Responses To monitor the state of the movement, listen to the [state stream](streamMotionGroupState). The state is published via nats as well. Field `execute` in the `MotionGroupState` indicates whether a movement is ongoing and carries execution details. Each request has a corresponding acknowledgment response. They signal success or failure of the request. Especially for `PauseMovementResponse`, it does not signal the end of the movement. Additionally, `MovementError` messages can be sent in case of unexpected errors during the execution, e.g., controller disconnects during movement. ### Tips and Tricks - A movement can be paused and resumed by sending `PauseMovementRequest` and `StartMovementRequest`. - Send `PlaybackSpeedRequest` before `StartMovementRequest` to reduce the velocity of the movement before it starts. - Send `PlaybackSpeedRequest` repeatedly to implement a slider. The velocity of the motion group can be adjusted with each controller step. Therefore, if your app needs a slider-like UI to alter the velocity of a currently running movement, you can send `PlaybackSpeedRequest` with different speed values repeatedly during the movement. - A closed trajectory (end and start joint position are equal) can be repeated by sending `StartMovementRequest` after the movement has finished. # noqa: E501
|
|
51
51
|
:param client_request_generator: An AsyncGenerator that yields request of type ExecuteTrajectoryRequest and takes an AsyncGenerator of ExecuteTrajectoryResponse as an input argument (required)
|
|
52
52
|
:info All responses from the server will be yielded to client_request_generator through the (AsyncGenerator[ExecuteTrajectoryResponse, None])
|
|
53
53
|
:type AsyncGenerator[ExecuteTrajectoryRequest, None]
|
|
@@ -91,7 +91,7 @@ class ApiClient:
|
|
|
91
91
|
self.default_headers[header_name] = header_value
|
|
92
92
|
self.cookie = cookie
|
|
93
93
|
# Set default User-Agent.
|
|
94
|
-
self.user_agent = 'Wandelbots-Nova-API-Python-Client/
|
|
94
|
+
self.user_agent = 'Wandelbots-Nova-API-Python-Client/26.1.0.dev53'
|
|
95
95
|
self.client_side_validation = configuration.client_side_validation
|
|
96
96
|
|
|
97
97
|
async def __aenter__(self):
|
|
@@ -535,7 +535,7 @@ conf = wandelbots_api_client.v2.Configuration(
|
|
|
535
535
|
"OS: {env}\n"\
|
|
536
536
|
"Python Version: {pyversion}\n"\
|
|
537
537
|
"Version of the API: 2.1.0 dev\n"\
|
|
538
|
-
"SDK Package Version:
|
|
538
|
+
"SDK Package Version: 26.1.0.dev53".\
|
|
539
539
|
format(env=sys.platform, pyversion=sys.version)
|
|
540
540
|
|
|
541
541
|
def get_host_settings(self) -> List[HostSetting]:
|
|
@@ -25,6 +25,7 @@ from .app import App
|
|
|
25
25
|
from .behavior import Behavior
|
|
26
26
|
from .blending_auto import BlendingAuto
|
|
27
27
|
from .blending_position import BlendingPosition
|
|
28
|
+
from .blending_space import BlendingSpace
|
|
28
29
|
from .boolean_value import BooleanValue
|
|
29
30
|
from .box import Box
|
|
30
31
|
from .bus_io_description import BusIODescription
|
|
@@ -253,10 +254,10 @@ from .validation_error import ValidationError
|
|
|
253
254
|
from .validation_error2 import ValidationError2
|
|
254
255
|
from .validation_error_loc_inner import ValidationErrorLocInner
|
|
255
256
|
from .virtual_controller import VirtualController
|
|
256
|
-
from .virtual_controller_types import VirtualControllerTypes
|
|
257
257
|
from .virtual_robot_configuration import VirtualRobotConfiguration
|
|
258
258
|
from .wait_for_io_event_request import WaitForIOEventRequest
|
|
259
259
|
from .yaskawa_controller import YaskawaController
|
|
260
|
+
from .virtual_controller_types import VirtualControllerTypes
|
|
260
261
|
|
|
261
262
|
__all__ = [
|
|
262
263
|
"AbbController",
|
|
@@ -271,6 +272,7 @@ __all__ = [
|
|
|
271
272
|
"Behavior",
|
|
272
273
|
"BlendingAuto",
|
|
273
274
|
"BlendingPosition",
|
|
275
|
+
"BlendingSpace",
|
|
274
276
|
"BooleanValue",
|
|
275
277
|
"Box",
|
|
276
278
|
"BusIODescription",
|
|
@@ -499,8 +501,8 @@ __all__ = [
|
|
|
499
501
|
"ValidationError2",
|
|
500
502
|
"ValidationErrorLocInner",
|
|
501
503
|
"VirtualController",
|
|
502
|
-
"VirtualControllerTypes",
|
|
503
504
|
"VirtualRobotConfiguration",
|
|
504
505
|
"WaitForIOEventRequest",
|
|
506
|
+
"VirtualControllerTypes",
|
|
505
507
|
"YaskawaController"
|
|
506
|
-
]
|
|
508
|
+
]
|
|
@@ -27,7 +27,7 @@ class BlendingAuto(BaseModel):
|
|
|
27
27
|
"""
|
|
28
28
|
BlendingAuto
|
|
29
29
|
""" # noqa: E501
|
|
30
|
-
min_velocity_in_percent: Optional[Annotated[int, Field(le=100, strict=True, ge=0)]] = Field(default=None, description="Auto-blending is used to keep a constant velocity when blending between two motion commands. It changes the TCP path around the target point of the motion command. The value represents the percentage of the original velocity. ")
|
|
30
|
+
min_velocity_in_percent: Optional[Annotated[int, Field(le=100, strict=True, ge=0)]] = Field(default=None, description="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. It changes the TCP path around the target point of the motion command. The value represents the percentage of the original velocity. Auto-blending is always performed in cartesian space. ")
|
|
31
31
|
blending_name: str = "BlendingAuto"
|
|
32
32
|
__properties: ClassVar[List[str]] = ["min_velocity_in_percent", "blending_name"]
|
|
33
33
|
|
|
@@ -19,6 +19,8 @@ import json
|
|
|
19
19
|
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, StrictStr, field_validator
|
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional, Union
|
|
22
|
+
from typing_extensions import Annotated
|
|
23
|
+
from wandelbots_api_client.v2.models.blending_space import BlendingSpace
|
|
22
24
|
from typing import Optional, Set
|
|
23
25
|
from typing_extensions import Self
|
|
24
26
|
|
|
@@ -27,8 +29,14 @@ class BlendingPosition(BaseModel):
|
|
|
27
29
|
BlendingPosition
|
|
28
30
|
""" # noqa: E501
|
|
29
31
|
position_zone_radius: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Specifies the maximum radius in [mm] around the motion command's target point where the TCP path can be altered to blend the motion command into the following one. If auto-blending blends too much of the resulting trajectory, use position-blending to restrict the blending zone radius. ")
|
|
32
|
+
position_zone_percentage: Optional[Union[Annotated[float, Field(le=100, strict=True, ge=0)], Annotated[int, Field(le=100, strict=True, ge=0)]]] = Field(default=None, description="Specifies the maximum blending percentage based on the trajectory length in position space around the motion command's target point. Percentage indicated in 0.0 - 100.0. ")
|
|
33
|
+
orientation_zone_radius: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Specifies the maximum radius in [rad] for orientation blending around the motion command's target orientation. At the target's orientation, the TCP orientation can be altered to blend into the following motion. ")
|
|
34
|
+
orientation_zone_percentage: Optional[Union[Annotated[float, Field(le=100, strict=True, ge=0)], Annotated[int, Field(le=100, strict=True, ge=0)]]] = Field(default=None, description="Specifies the maximum blending percentage for orientation blending based on the trajectory length in orientation space. Percentage indicated in 0.0 - 100.0. ")
|
|
35
|
+
joints_zone_radius: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Specifies the maximum radius in [rad] for joint space blending around the motion command's target joint configuration. At the target joint configuration, the joint path can be altered to blend into the following motion. ")
|
|
36
|
+
joints_zone_percentage: Optional[Union[Annotated[float, Field(le=100, strict=True, ge=0)], Annotated[int, Field(le=100, strict=True, ge=0)]]] = Field(default=None, description="Specifies the maximum blending percentage for joint space blending based on the trajectory length in joint space. Percentage indicated in 0.0 to 100.0. ")
|
|
37
|
+
space: Optional[BlendingSpace] = Field(default=None, description="Defines the space in which blending is performed. ")
|
|
30
38
|
blending_name: str = "BlendingPosition"
|
|
31
|
-
__properties: ClassVar[List[str]] = ["position_zone_radius", "blending_name"]
|
|
39
|
+
__properties: ClassVar[List[str]] = ["position_zone_radius", "position_zone_percentage", "orientation_zone_radius", "orientation_zone_percentage", "joints_zone_radius", "joints_zone_percentage", "space", "blending_name"]
|
|
32
40
|
|
|
33
41
|
@field_validator('blending_name')
|
|
34
42
|
def blending_name_validate_enum(cls, value):
|
|
@@ -93,6 +101,12 @@ class BlendingPosition(BaseModel):
|
|
|
93
101
|
|
|
94
102
|
_obj = cls.model_validate({
|
|
95
103
|
"position_zone_radius": obj.get("position_zone_radius"),
|
|
104
|
+
"position_zone_percentage": obj.get("position_zone_percentage"),
|
|
105
|
+
"orientation_zone_radius": obj.get("orientation_zone_radius"),
|
|
106
|
+
"orientation_zone_percentage": obj.get("orientation_zone_percentage"),
|
|
107
|
+
"joints_zone_radius": obj.get("joints_zone_radius"),
|
|
108
|
+
"joints_zone_percentage": obj.get("joints_zone_percentage"),
|
|
109
|
+
"space": obj.get("space"),
|
|
96
110
|
"blending_name": obj.get("blending_name")
|
|
97
111
|
})
|
|
98
112
|
return _obj
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Wandelbots NOVA API
|
|
5
|
+
|
|
6
|
+
Interact with robots in an easy and intuitive way.
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 2.1.0 dev
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import json
|
|
17
|
+
from enum import Enum
|
|
18
|
+
from typing_extensions import Self
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class BlendingSpace(str, Enum):
|
|
22
|
+
"""
|
|
23
|
+
Defines the space in which blending is performed. - `JOINT`: Zone blending is performed in joint space - `CARTESIAN`: Auto-blending is performed in cartesian space
|
|
24
|
+
"""
|
|
25
|
+
|
|
26
|
+
"""
|
|
27
|
+
allowed enum values
|
|
28
|
+
"""
|
|
29
|
+
JOINT = 'JOINT'
|
|
30
|
+
CARTESIAN = 'CARTESIAN'
|
|
31
|
+
|
|
32
|
+
@classmethod
|
|
33
|
+
def from_json(cls, json_str: str) -> Self:
|
|
34
|
+
"""Create an instance of BlendingSpace from a JSON string"""
|
|
35
|
+
return cls(json.loads(json_str))
|
|
36
|
+
|
|
37
|
+
|
|
@@ -20,7 +20,6 @@ import json
|
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
22
|
from wandelbots_api_client.v2.models.manufacturer import Manufacturer
|
|
23
|
-
from wandelbots_api_client.v2.models.virtual_controller_types import VirtualControllerTypes
|
|
24
23
|
from typing import Optional, Set
|
|
25
24
|
from typing_extensions import Self
|
|
26
25
|
|
|
@@ -30,7 +29,7 @@ class VirtualController(BaseModel):
|
|
|
30
29
|
""" # noqa: E501
|
|
31
30
|
kind: str = "VirtualController"
|
|
32
31
|
manufacturer: Manufacturer
|
|
33
|
-
type: Optional[
|
|
32
|
+
type: Optional[StrictStr] = Field(default=None, description="Preset type of the virtual robot controller. See [getRobotConfigurations](getRobotConfigurations) for supported types. ")
|
|
34
33
|
var_json: Optional[StrictStr] = Field(default=None, description="Complete JSON configuration of the virtual robot controller. Can be obtained from the physical controller's configuration via [getVirtualControllerConfiguration](getVirtualControllerConfiguration). If provided, the `type` field should not be used. ", alias="json")
|
|
35
34
|
initial_joint_position: Optional[StrictStr] = Field(default=None, description="Initial joint position of the first motion group from the virtual robot controller. Provide the joint position as a JSON array containing 7 float values, each representing a joint position in radians, e.g., \"[0, 0, 0, 0, 0, 0, 0]\". If the robot has fewer than 7 joints, use \"0\" for each remaining position to ensure the array has exactly 7 values. ")
|
|
36
35
|
__properties: ClassVar[List[str]] = ["kind", "manufacturer", "type", "json", "initial_joint_position"]
|
|
@@ -12,6 +12,7 @@ from .license_api import LicenseApi
|
|
|
12
12
|
from .motion_group_api import MotionGroupApi
|
|
13
13
|
from .motion_group_models_api import MotionGroupModelsApi
|
|
14
14
|
from .program_api import ProgramApi
|
|
15
|
+
from .robot_configurations_api import RobotConfigurationsApi
|
|
15
16
|
from .store_collision_components_api import StoreCollisionComponentsApi
|
|
16
17
|
from .store_collision_setups_api import StoreCollisionSetupsApi
|
|
17
18
|
from .store_object_api import StoreObjectApi
|
|
@@ -37,6 +38,7 @@ __all__ = [
|
|
|
37
38
|
"MotionGroupApi",
|
|
38
39
|
"MotionGroupModelsApi",
|
|
39
40
|
"ProgramApi",
|
|
41
|
+
"RobotConfigurationsApi",
|
|
40
42
|
"StoreCollisionComponentsApi",
|
|
41
43
|
"StoreCollisionSetupsApi",
|
|
42
44
|
"StoreObjectApi",
|
|
@@ -47,7 +47,7 @@ class JoggingApi:
|
|
|
47
47
|
async def execute_jogging(self, cell: Annotated[StrictStr, Field(description="Unique identifier addressing a cell in all API calls. ")], controller: Annotated[StrictStr, Field(description="Unique identifier to address a controller in the cell.")], client_request_generator: Callable[[AsyncGenerator[ExecuteJoggingResponse, None]], AsyncGenerator[ExecuteJoggingRequest, None]]) -> None: # noqa: E501
|
|
48
48
|
"""Execute Jogging # noqa: E501
|
|
49
49
|
|
|
50
|
-
<!-- theme: success --> > Websocket endpoint Provides execution control over a dynamically adaptable jogging motion for a motion group. Jogging describes controlling a motion group by sending real-time commands to move either its joints or the TCP. The commands contain target velocities that may change at any time during execution, so the resulting motion cannot be computed upfront. ### Preconditions The motion group is not moved by any other endpoint. ### Requests #### 1. Send `InitializeJoggingRequest` to configure the jogging. - Sets the robot controller mode to control mode. - Sets rate and coordinate system for the jogging response. #### 2. Send `JointVelocityRequest` or `TcpVelocityRequest` to start the jogging motion. #### 3. Change or stop the jogging motion - Change the jogging direction and/or velocity during the jogging motion with `JointVelocityRequest` or `TcpVelocityRequest`. - To stop the jogging motion, send zero velocities via either request. ### Responses - `InitializeJoggingResponse` is sent to signal the success or failure of the `InitializeJoggingRequest`. - Jogging responses are streamed continuously after an `InitializeJoggingRequest` is processed. Jogging responses contain the robot controller state and the state of the jogging control. - `JoggingErrorResponse` with error details is sent in case of an unexpected error, e.g., controller disconnects during jogging. ### Tips and Tricks - In the `JoggingResponse`, verify that the robot control is in the desired state, e.g., standstill, with JoggingState. - Ensure that the websocket connection remains open until the jogging motion is stopped to avoid unexpected stops. # noqa: E501
|
|
50
|
+
<!-- theme: success --> > Websocket endpoint Provides execution control over a dynamically adaptable jogging motion for a motion group. Jogging describes controlling a motion group by sending real-time commands to move either its joints or the TCP. The commands contain target velocities that may change at any time during execution, so the resulting motion cannot be computed upfront. ### Preconditions The motion group is not moved by any other endpoint. ### Requests #### 1. Send `InitializeJoggingRequest` to configure the jogging. - Sets the robot controller mode to control mode. - Sets rate and coordinate system for the jogging response. #### 2. Send `JointVelocityRequest` or `TcpVelocityRequest` to start the jogging motion. - Commands can only be processed in the cycle rate of the controller - Sending commands faster will not increase the responsiveness of the jogging motion, it will lead to dropped commands - It is recommended to couple sending commands with the (state stream)[streamMotionGroupState], which can be subscribed to via nats as well. #### 3. Change or stop the jogging motion - Change the jogging direction and/or velocity during the jogging motion with `JointVelocityRequest` or `TcpVelocityRequest`. - To stop the jogging motion, send zero velocities via either request. ### Responses - `InitializeJoggingResponse` is sent to signal the success or failure of the `InitializeJoggingRequest`. - Jogging responses are streamed continuously after an `InitializeJoggingRequest` is processed. Jogging responses contain the robot controller state and the state of the jogging control. - `JoggingErrorResponse` with error details is sent in case of an unexpected error, e.g., controller disconnects during jogging. ### Tips and Tricks - In the `JoggingResponse`, verify that the robot control is in the desired state, e.g., standstill, with JoggingState. - Ensure that the websocket connection remains open until the jogging motion is stopped to avoid unexpected stops. # noqa: E501
|
|
51
51
|
:param client_request_generator: An AsyncGenerator that yields request of type ExecuteJoggingRequest and takes an AsyncGenerator of ExecuteJoggingResponse as an input argument (required)
|
|
52
52
|
:info All responses from the server will be yielded to client_request_generator through the (AsyncGenerator[ExecuteJoggingResponse, None])
|
|
53
53
|
:type AsyncGenerator[ExecuteJoggingRequest, None]
|