CINXE.COM
Robot Command — Spot 4.1.0 documentation
<!DOCTYPE html> <html class="writer-html5" lang="en" > <head> <meta charset="utf-8" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Robot Command — Spot 4.1.0 documentation</title> <link rel="stylesheet" href="../../../../../_static/pygments.css" type="text/css" /> <link rel="stylesheet" href="../../../../../_static/style.css" type="text/css" /> <link rel="shortcut icon" href="../../../../../_static/bd-favicon.png"/> <link rel="canonical" href="https://dev.bostondynamics.com/python/bosdyn-client/src/bosdyn/client/robot_command.html" /> <!--[if lt IE 9]> <script src="../../../../../_static/js/html5shiv.min.js"></script> <![endif]--> <script src="../../../../../_static/jquery.js"></script> <script src="../../../../../_static/_sphinx_javascript_frameworks_compat.js"></script> <script data-url_root="../../../../../" id="documentation_options" src="../../../../../_static/documentation_options.js"></script> <script src="../../../../../_static/doctools.js"></script> <script src="../../../../../_static/sphinx_highlight.js"></script> <script src="../../../../../_static/js/theme.js"></script> <link rel="index" title="Index" href="../../../../../genindex.html" /> <link rel="search" title="Search" href="../../../../../search.html" /> <link rel="next" title="Robot Id" href="robot_id.html" /> <link rel="prev" title="Recording" href="recording.html" /> <!-- Global site tag (gtag.js) - Google Analytics --> <script async src="https://www.googletagmanager.com/gtag/js?id=UA-7602095-5"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'UA-7602095-5'); </script>X-Content-Type-Options: nosniff<script type="text/javascript" src="//script.crazyegg.com/pages/scripts/0096/9626.js" async="async"></script></head> <body class="wy-body-for-nav"> <div class="wy-grid-for-nav"> <nav data-toggle="wy-nav-shift" class="wy-nav-side"> <div class="wy-side-scroll"> <div class="wy-side-nav-search" > <a href='/readme'> <img src="../../../../../_static/bd-official-white.png" class="logo" alt="Logo"/> </a> <div class="version"> 4.1.0 </div> <div role="search"> <form id="rtd-search-form" class="wy-form" action="../../../../../search.html" method="get"> <input type="text" name="q" placeholder="Search docs" aria-label="Search docs" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> </div> </div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu"> <ul class="current"> <li class="toctree-l1"><a class='reference internal' href='/docs/concepts/readme'>Concepts</a><ul> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/about_spot'>About Spot</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/orbit/about_orbit'>About Orbit (formerly Scout)</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/orbit/orbit_api'>Orbit API</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/networking'>Networking</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/base_services'>Base services</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/geometry_and_frames'>Geometry and Frames</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/robot_services'>Robot services</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/estop_service'>E-Stop</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/keepalive_service'>KeepAlive (BETA)</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/lease_service'>Lease</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/developing_api_services'>Developing API Services</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/service_customization'>Service Customization</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/faults'>Faults</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/autonomy/readme'>Autonomy services</a><ul> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/graphnav_tech_summary'>Autonomy Technical Summary</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/autonomous_navigation_code_examples'>Autonomous navigation code examples</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/components_of_autonomous_navigation'>Components of autonomous navigation</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/docking'>Docking</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/typical_autonomous_navigation_use_case'>Typical autonomous navigation use case</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/autonomous_navigation_services'>Autonomous navigation services</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/graphnav_service'>GraphNav service</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/graphnav_map_structure'>GraphNav map structure</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/graphnav_area_callbacks'>GraphNav area callbacks</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/initialization'>Initialization</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/localization'>Localization</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/graphnav_and_robot_locomotion'>GraphNav and robot locomotion</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/missions_service'>Missions service</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/autowalk_service'>Autowalk service</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/network_compute_bridge'>Network compute bridge</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/auto_return'>AutoReturn service</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/directed_exploration'>Directed Exploration</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/autonomy/gps'>GPS</a></li> </ul> </li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/choreography/readme'>Choreography</a><ul> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/choreography_service'>Choreography Service</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/move_reference'>Move Reference Guide</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/custom_gait'>CustomGait Reference</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/choreographer_setup'>Choreographer Setup</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/choreographer'>Choreographer Overview</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/robot_controls_in_choreographer'>Robot Connections in Choreographer</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/animations_in_choreographer'>Animations in Choreography</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/animation_file_specification'>Animation File Format</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/choreography_in_tablet'>Tablet Choreography Mode</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/choreography/choreography_in_autowalk'>Choreography Actions in Autowalk</a></li> </ul> </li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/joint_control/readme'>Joint Control API</a><ul> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/joint_control/supplemental_data'>Supplemental Robot Information</a><ul> <li class="toctree-l4"><a class='reference internal' href='/docs/concepts/joint_control/knee_torque_limits'>Knee Torque Limits</a></li> </ul> </li> </ul> </li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/arm/readme'>Spot Arm</a><ul> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/arm/arm_specification'>Arm and Gripper Specification</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/arm/arm_concepts'>Concepts</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/arm/arm_services'>Services</a></li> </ul> </li> <li class="toctree-l2"><a class='reference internal' href='/docs/concepts/data'>Spot Data</a><ul> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/data_acquisition_overview'>Data Acquisition Overview</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/data_acquisition_output'>Data Acquisition Output</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/writing_services_for_data_acquisition'>Integrate Payloads with the API</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/data_buffer_overview'>Data Buffer Overview</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/bddf'>BDDF File Format</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/concepts/data_acquisition_thermal_raw'>Thermal Raw Data Format</a></li> </ul> </li> </ul> </li> <li class="toctree-l1 current"><a class='reference internal' href='/docs/python/readme'>Python</a><ul class="current"> <li class="toctree-l2"><a class='reference internal' href='/docs/python/quickstart'>Quickstart</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/python/understanding_spot_programming'>Understanding Spot Programming</a></li> <li class="toctree-l2"><a class='reference internal' href='/python/examples/readme'>Examples</a><ul> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/basic_service_examples'>Basic Service Examples</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/examples/hello_spot/readme'>Hello Spot</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/directory/readme'>Directory</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_robot_state/readme'>Get Robot State</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_robot_state_async/readme'>Get Robot State Async</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_image/readme'>Get Image</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_world_objects/readme'>Get World Objects</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_mission_state/readme'>Get Mission State</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/estop/readme'>E-Stop</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/time_sync/readme'>Time Sync</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/comms_test/readme'>Comms Test</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/disable_ir_emission/readme'>IR Enable/Disable</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/reset_safety_stop/readme'>Reset Safety Stop</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/robot_behavior_examples'>Robot Behavior and Commands Examples</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/examples/stance/readme'>Stance</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/frame_trajectory_command/readme'>Frame Trajectory</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/spot_light/readme'>Spot Light</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/upload_choreographed_sequence/readme'>Upload Choreographed Sequence</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/xbox_controller/readme'>Xbox Controller</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/wasd/readme'>WASD</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/docking/readme'>Docking</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/animation_recorder/readme'>Animation Recorder</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/auto_return/readme'>Auto Return</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/fan_command/readme'>Fan Commands</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_wasd/readme'>ARM WASD</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/arm_examples'>Arm Command Examples</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_simple/readme'>Simple Arm Motion</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_stow_unstow/readme'>Stow/unstow Arm</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_freeze/readme'>Arm Freeze</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_and_mobility_command/readme'>Arm and Mobility Command</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_with_body_follow/readme'>Arm Command with Body Following</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_constrained_manipulation/readme'>Arm Constrained Manipulation</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_trajectory/readme'>Arm Trajectory</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_trajectory/readme#long-trajectory'>Long Trajectory</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_joint_move/readme'>Arm Joint Move Command</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_force_control/readme'>Arm Force Control Command</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_grasp/readme'>Arm Grasp Command</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_grasp_carry_overrides/readme'>Arm Grasp and Carry Overrides</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_gaze/readme'>Arm Gaze Command</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_surface_contact/readme'>Arm Command with Surface Contact</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_door/readme'>Arm Door Opening Command</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_walk_to_object/readme'>Walk to And Pick Up Object</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_gcode/readme'>Writing Gcode</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/gripper_camera_params/readme'>Gripper Camera Parameters</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_impedance_control/readme'>Arm Impedance Control</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/inverse_kinematics/readme'>Inverse Kinematics</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/arm_wasd/readme'>Arm WASD</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/joint_control/readme'>Wiggle Arm</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/payloads_examples'>Payloads and Registration Examples</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/examples/payloads/readme'>Payloads</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/self_registration/readme'>Self Registration</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/service_faults/readme'>Faults</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/velodyne_client/readme'>Velodyne</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/core_io_gpio/readme'>CORE I/O GPIO</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/metrics_over_coreio/readme'>Overview</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/metrics_over_coreio/readme#usage'>Usage</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/metrics_over_coreio/readme#components'>Components</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/metrics_over_coreio/readme#recommended-debugging'>Recommended debugging</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/extensions/readme'>Extensions</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/perception_world_objects_examples'>Perception and World Objects Examples</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_image/readme'>Get Image</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_world_objects/readme'>Get World Objects</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/world_object_with_image_coordinates/readme'>World Object With Image Coordinates</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/world_object_mutations/readme'>World Object Mutations</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/visualizer/readme'>Visualizer</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/ricoh_theta/readme'>Ricoh Theta</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/gripper_camera_params/readme'>Gripper Camera Parameters</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/spot_cam/readme'>Spot CAM Services</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/spot_cam/readme#spot-cam-video-core-io-extension-example'>Spot Cam Video Core IO Extension Example</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/stitch_front_images/readme'>Stitch Front Images</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_depth_plus_visual_image/readme'>Project Depth Data on Visual Images</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/service_customization/custom_parameter_image_server/readme'>Custom Parameter Image Server</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/fiducial_follow/readme'>Fiducial Follow</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/spot_tensorflow_detector/readme'>Tensorflow Detector</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/service_customization/custom_parameter_ncb_worker/readme'>Custom Parameter Tensorflow Detector</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/network_compute_bridge/readme'>Machine Learning with the Network Compute Bridge</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/network_compute_bridge/fire_extinguisher_server/readme'>Fire Extinguisher Detector with the Network Compute Bridge</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/ray_cast/readme'>Ray Cast</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/user_nogo_regions/readme'>No-Go Regions</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/gps_service/readme'>GPS</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/logging_examples'>Logging Examples</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/examples/bddf_download/readme'>BDDF Download</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/data_buffer/readme'>Data Buffer</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/data_service/readme'>Data Service</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/logging/readme'>Logging</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/log_status/readme'>Log Status</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/data_acquisition_examples'>Data Acquisition Examples</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/examples/data_acquisition_service/readme'>Data Acquisition Service</a><ul> <li class="toctree-l5"><a class='reference internal' href='/python/examples/data_acquisition_service/signals_coreio_modem_plugin/readme'>Modem Signals</a></li> </ul> </li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/service_faults/readme'>Faults</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/ricoh_theta/readme'>Ricoh Theta</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/service_customization/custom_parameter_image_server/readme'>Custom Parameter Image Service</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/service_customization/custom_parameters_data_acquisition/readme'>Custom Parameter Data Acquisition Plugin</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_image/readme'>Test Image Service Implementation with Get Image</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/post_docking_callbacks/readme'>Post Docking Callbacks</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/cloud_upload/readme'>Cloud Upload</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/comms_mapping/readme'>Comms image service</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/comms_mapping/readme#how-to-use'>How to use</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/data_acquisition_service/signals_coreio_modem_plugin/readme'>CoreIO Modem Signals Plugin</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/tester_programs/readme'>Tester Programs</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/autonomy_and_missions_examples'>Autonomy and Missions Examples</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/examples/graph_nav_anchoring_optimization/readme'>Graph Nav Anchoring Optimization</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/graph_nav_command_line/readme'>GraphNav and Recording Service Command Line Interfaces</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/graph_nav_command_line/readme#example-programs'>Example Programs</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/graph_nav_extract_point_cloud/readme'>Graph Nav Extract Point Cloud</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/graph_nav_view_map/readme'>Graph Nav View Map</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/graph_nav_view_gps/readme'>Graph Nav View GPS Data</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/get_mission_state/readme'>Get Mission State</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/remote_mission_service/readme'>Remote Mission Service</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/mission_question_answerer/readme'>Mission Question Answerer</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/mission_recorder/readme'>Mission Recorder</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/replay_mission/readme'>Replay Mission</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/post_docking_callbacks/readme'>Post Docking Callbacks</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/area_callback/readme'>Area Callbacks</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/edit_autowalk/readme'>Edit Autowalk</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/record_autowalk/readme'>Record Autowalk</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/extract_images_from_walk/readme'>Extract Images from Autowalk</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/network_request_callback/readme'>Network Request Callback</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/network_request_callback/readme#id1'>Network Request Callback</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/joint_control_examples'>Joint Control API Examples</a></li> <li class="toctree-l3"><a class='reference internal' href='/python/examples/docs/orbit'>Orbit</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/hello_orbit/readme'>Hello Orbit</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/export_run_archives/readme'>Export Run Archives</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/export_site_walk_archives/readme'>Export Sitewalk Archives</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/anomalies/readme'>Anomalies</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/schedule_mission/readme'>Schedule Mission</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/runs_response/readme'>Runs Response</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/send_robot_back_to_dock/readme'>Return to Dock</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/toggle_mission_based_on_weather/readme'>Mission Toggle</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/webhook/readme'>Webhook</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/backups/readme'>Backups</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/webhook_integration/readme'>Webhook Integrations</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/examples/orbit/webhook_integration/readme#example-overview'>Example Overview</a></li> </ul> </li> </ul> </li> <li class="toctree-l2 current"><a class='reference internal' href='/python/readme'>Python Reference Guide</a><ul class="current"> <li class="toctree-l3 current"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/readme'>Client</a><ul class="current"> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/area_callback'>Area Callback</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/area_callback_region_handler_base'>Area Callback Region Handler</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/area_callback_service_runner'>Area Callback Service Runner</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/area_callback_service_servicer'>Area Callback Servicer</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/area_callback_service_utils'>Area Callback Service Utils</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/arm_surface_contact'>Arm Surface Contact</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/async_tasks'>Async Tasks</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/auth'>Auth</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/auto_return'>Auto Return</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/autowalk'>Autowalk</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/bddf'>BDDF</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/bddf_download'>BDDF Download</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/channel'>Channel</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/command_line'>Command</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/common'>Common</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/data_acquisition'>Data Acquisition</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/data_acquisition_helpers'>Data Acquisition Helpers</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/data_acquisition_plugin'>Data Acquisition Plugin</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/data_acquisition_plugin_service'>Data Acquisition Plugin Service</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/data_acquisition_store'>Data Acquisition Store</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/data_buffer'>Data Buffer</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/data_chunk'>Data Chunk</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/data_service'>Data Service</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/directory_registration'>Directory Registration</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/directory'>Directory</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/docking'>Docking</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/door'>Door</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/estop'>E-Stop</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions'>Exceptions</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/fault'>Fault</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/frame_helpers'>Frame Helpers</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/graph_nav'>Graph Nav</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/gripper_camera_param'>Gripper Camera Params</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/gps/readme'>GPS</a><ul> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/gps/aggregator_client'>Aggregator Client</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/gps/gps_listener'>GPS Listener</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/gps/nmeaparser'>NMEA Parser</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/gps/registration_client'>Registration Client</a></li> </ul> </li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/image'>Image</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/image_service_helpers'>Image Service Helpers</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/inverse_kinematics'>Inverse Kinematics</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/ir_enable_disable'>IR Enable/Disable</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/keepalive'>Keep Alive</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/lease'>Lease</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/lease_resource_hierarchy'>Lease Resource Hierarchy</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/lease_validator'>Lease Validator</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/license'>License</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/local_grid'>Local Grid</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/log_status'>Log Status</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/math_helpers'>Math Helpers</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/manipulation_api_client'>Manipulation API</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/map_processing'>Map Processing</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/metrics_logging'>Metrics Logging</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/network_compute_bridge_client'>Network Compute Bridge</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/payload_registration'>Payload Registration</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/payload'>Payload</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/point_cloud'>Point Cloud</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/power'>Power</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/processors'>Processors</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/ray_cast'>Ray casting</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/recording'>Recording</a></li> <li class="toctree-l4 current"><a class="current reference internal" href="#">Robot Command</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/robot_id'>Robot ID</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/robot'>Robot</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/robot_state'>Robot State</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/sdk'>SDK</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/server_util'>Server Util</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/service_customization_helpers'>Service Customization Helpers</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/signals_helpers'>Signals Helpers</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/readme'>Spot CAM</a><ul> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/audio'>Audio</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/compositor'>Compositor</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/health'>Health</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/lighting'>Lighting</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/lights_helper'>Lights Helper</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/media_log'>Media Log</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/network'>Network</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/power'>Power</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/ptz'>PTZ</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/streamquality'>Stream Quality</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_cam/version'>Version</a></li> </ul> </li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/spot_check'>Spot Check</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/time_sync'>Time Sync</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/token_cache'>Token Cache</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/token_manager'>Token Manager</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/units_helpers'>Units Helpers</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/util'>Util</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/world_object'>World Object</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/readme'>Core</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/readme'>BDDF</a><ul> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/base_data_reader'>Base Data Reader</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/block_writer'>Block Writer</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/bosdyn'>BDDF Conventions</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/common'>Common</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/data_reader'>Data Reader</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/data_writer'>Data Writer</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/file_indexer'>File Indexer</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/grpc_proto_reader'>GRPC Proto Reader</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/grpc_reader'>GRPC Reader</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/grpc_service_reader'>GRPC Service Reader</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/grpc_service_writer'>GRPC Service Writer</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/message_reader'>Message Reader</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/pod_series_reader'>POD Series Reader</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/pod_series_writer'>POD Series Writer</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/protobuf_channel_reader'>Protobuf Channel Reader</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/protobuf_reader'>Protobuf Reader</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/protobuf_series_writer'>Protobuf Series Writer</a></li> <li class="toctree-l5"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/bddf/stream_data_reader'>Stream Data Reader</a></li> </ul> </li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/geometry'>Geometry</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/util'>Util</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-core/src/bosdyn/deprecated'>Deprecated</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/bosdyn-mission/src/bosdyn/mission/readme'>Mission</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-mission/src/bosdyn/mission/client'>Client</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-mission/src/bosdyn/mission/constants'>Constants</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-mission/src/bosdyn/mission/exceptions'>Exceptions</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-mission/src/bosdyn/mission/remote_client'>Remote Client</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-mission/src/bosdyn/mission/server_util'>Server Util</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-mission/src/bosdyn/mission/util'>Util</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/bosdyn-choreography-client/src/bosdyn/choreography/client/readme'>Choreography</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-choreography-client/src/bosdyn/choreography/client/choreography'>Choreography</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-choreography-client/src/bosdyn/choreography/client/animation_file_to_proto'>Animation File to Proto</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-choreography-client/src/bosdyn/choreography/client/animation_file_conversion_helpers'>Animation File to Proto Helpers</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/bosdyn-orbit/src/bosdyn/orbit/readme'>Orbit (formerly Scout)</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-orbit/src/bosdyn/orbit/client'>Client</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-orbit/src/bosdyn/orbit/utils'>Utils</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-orbit/src/bosdyn/orbit/exceptions'>Exceptions</a></li> </ul> </li> <li class="toctree-l3"><a class='reference internal' href='/python/bosdyn-scout/src/bosdyn/scout/readme'>Scout (deprecated)</a><ul> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-scout/src/bosdyn/scout/client'>Client</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-scout/src/bosdyn/scout/utils'>Utils</a></li> <li class="toctree-l4"><a class='reference internal' href='/python/bosdyn-scout/src/bosdyn/scout/exceptions'>Exceptions</a></li> </ul> </li> </ul> </li> <li class="toctree-l2"><a class='reference internal' href='/docs/python/fetch_tutorial/fetch1'>Fetch Tutorial</a><ul> <li class="toctree-l3"><a class='reference internal' href='/docs/python/fetch_tutorial/fetch2'>Part 2: Training the Model</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/python/fetch_tutorial/fetch3'>Part 3: Evaluating the Model</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/python/fetch_tutorial/fetch4'>Part 4: Autonomous Pick Up</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/python/fetch_tutorial/fetch5'>Part 5: Detecting People and Playing Fetch</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/python/fetch_tutorial/fetch6'>Part 6: Running the model on Core IO</a></li> </ul> </li> <li class="toctree-l2"><a class='reference internal' href='/docs/python/daq_tutorial/daq1'>Data Collection Tutorial</a><ul> <li class="toctree-l3"><a class='reference internal' href='/docs/python/daq_tutorial/daq2'>Part 2: Capturing images</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/python/daq_tutorial/daq3'>Part 3: Capturing other data</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/python/daq_tutorial/daq4'>Part 4: Deploying to the CORE I/O</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/python/daq_tutorial/daq5'>Part 5: Collecting data</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/python/daq_tutorial/daq6'>Part 6: Processing collected data</a></li> </ul> </li> </ul> </li> <li class="toctree-l1"><a class='reference internal' href='/docs/payload/readme'>Payloads</a><ul> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/payload_configuration_requirements'>Payload configuration requirements</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/mechanical_interfaces'>Mechanical interfaces</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/robot_mounting_rails'>Robot mounting rails</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/guidelines_for_robust_payload_design'>Guidelines for robust payload design</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/robot_electrical_interface'>Robot electrical interface</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/coreio_documentation'>CORE I/O Documentation</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/coreio_openvpn_extension'>CORE I/O OpenVPN Extension</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/configuring_payload_software'>Configuring payload software</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/docker_containers'>Dockerize payload software</a></li> <li class="toctree-l2"><a class='reference internal' href='/docs/payload/spot_core_documentation'>Pre-3.2 Spot CORE Documentation</a><ul> <li class="toctree-l3"><a class='reference internal' href='/docs/payload/spot_core_portainer'>Configuring Docker containers in SpotCORE</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/payload/spot_core_cockpit'>Spot CORE system management tool: Cockpit</a></li> <li class="toctree-l3"><a class='reference internal' href='/docs/payload/spot_core_vnc'>Spot CORE VNC</a></li> </ul> </li> </ul> </li> <li class="toctree-l1"><a class='reference internal' href='/docs/protos/readme'>API Protocol</a><ul> <li class="toctree-l2"><a class='reference internal' href='/docs/protos/style_guide'>Style Guide</a></li> <li class="toctree-l2"><a class='reference internal' href='/protos/bosdyn/api/readme'>Proto Reference Guide</a><ul> <li class="toctree-l3"><a class='reference internal' href='/protos/bosdyn/api/proto_reference'>Protos</a></li> </ul> </li> </ul> </li> <li class="toctree-l1"><a class='reference internal' href='/docs/release_notes'>Release Notes</a></li> <li class="toctree-l1"><a class="reference external" href="https://github.com/boston-dynamics/spot-sdk">SDK Repository</a></li> </ul> </div> </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" > <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href='/readme'>Spot</a> </nav> <div class="wy-nav-content"> <div class="rst-content"> <div role="navigation" aria-label="Page navigation"> <ul class="wy-breadcrumbs"> <li><a aria-label='Home' class='icon icon-home' href='/readme'></a></li> <li class="breadcrumb-item"><a href='/docs/python/readme'>Python Library</a></li> <li class="breadcrumb-item"><a href='/python/readme'>Boston Dynamics Python Reference Guide</a></li> <li class="breadcrumb-item"><a href='/python/bosdyn-client/src/bosdyn/client/readme'>Python Client</a></li> <li class="breadcrumb-item active">Robot Command</li> <li class="wy-breadcrumbs-aside"> </li> </ul> <hr/> </div> <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article"> <div itemprop="articleBody"> <section id="module-bosdyn.client.robot_command"> <span id="robot-command"></span><h1>Robot Command<a class="headerlink" href="#module-bosdyn.client.robot_command" title="Permalink to this heading"></a></h1> <p>For clients to the robot command service.</p> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandResponseError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">RobotCommandResponseError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandResponseError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.ResponseError' title='bosdyn.client.exceptions.ResponseError'><code class="xref py py-class docutils literal notranslate"><span class="pre">ResponseError</span></code></a></p> <p>General class of errors for RobotCommand service.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.Error"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">Error</span></span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#Error'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.Error" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.Error' title='bosdyn.client.exceptions.Error'><code class="xref py py-class docutils literal notranslate"><span class="pre">Error</span></code></a></p> <p>Base class for non-response errors in this module.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.NoTimeSyncError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">NoTimeSyncError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#NoTimeSyncError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.NoTimeSyncError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="bosdyn.client.robot_command.RobotCommandResponseError"><code class="xref py py-class docutils literal notranslate"><span class="pre">RobotCommandResponseError</span></code></a></p> <p>Client has not done timesync with robot.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.ExpiredError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">ExpiredError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#ExpiredError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.ExpiredError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="bosdyn.client.robot_command.RobotCommandResponseError"><code class="xref py py-class docutils literal notranslate"><span class="pre">RobotCommandResponseError</span></code></a></p> <p>The command was received after its max_duration had already passed.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.TooDistantError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">TooDistantError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#TooDistantError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.TooDistantError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="bosdyn.client.robot_command.RobotCommandResponseError"><code class="xref py py-class docutils literal notranslate"><span class="pre">RobotCommandResponseError</span></code></a></p> <p>The command end time was too far in the future.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.NotPoweredOnError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">NotPoweredOnError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#NotPoweredOnError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.NotPoweredOnError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="bosdyn.client.robot_command.RobotCommandResponseError"><code class="xref py py-class docutils literal notranslate"><span class="pre">RobotCommandResponseError</span></code></a></p> <p>The robot must be powered on to accept a command.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.BehaviorFaultError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">BehaviorFaultError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#BehaviorFaultError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.BehaviorFaultError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="bosdyn.client.robot_command.RobotCommandResponseError"><code class="xref py py-class docutils literal notranslate"><span class="pre">RobotCommandResponseError</span></code></a></p> <p>The robot may not be commanded with uncleared behavior faults.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.DockedError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">DockedError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#DockedError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.DockedError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="bosdyn.client.robot_command.RobotCommandResponseError"><code class="xref py py-class docutils literal notranslate"><span class="pre">RobotCommandResponseError</span></code></a></p> <p>The command cannot be executed while the robot is docked.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.NotClearedError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">NotClearedError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#NotClearedError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.NotClearedError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="bosdyn.client.robot_command.RobotCommandResponseError"><code class="xref py py-class docutils literal notranslate"><span class="pre">RobotCommandResponseError</span></code></a></p> <p>Behavior fault could not be cleared.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.UnsupportedError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">UnsupportedError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#UnsupportedError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.UnsupportedError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="bosdyn.client.robot_command.RobotCommandResponseError"><code class="xref py py-class docutils literal notranslate"><span class="pre">RobotCommandResponseError</span></code></a></p> <p>The API supports this request, but the system does not support this request.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.CommandFailedError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">CommandFailedError</span></span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#CommandFailedError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.CommandFailedError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.Error" title="bosdyn.client.robot_command.Error"><code class="xref py py-class docutils literal notranslate"><span class="pre">Error</span></code></a></p> <p>Command indicated it failed in its feedback.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.CommandFailedErrorWithFeedback"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">CommandFailedErrorWithFeedback</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">message</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">feedback</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#CommandFailedErrorWithFeedback'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.CommandFailedErrorWithFeedback" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.CommandFailedError" title="bosdyn.client.robot_command.CommandFailedError"><code class="xref py py-class docutils literal notranslate"><span class="pre">CommandFailedError</span></code></a></p> <p>Command indicated it failed in its feedback. This subclass contains the feedback response causing the error.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.CommandTimedOutError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">CommandTimedOutError</span></span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#CommandTimedOutError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.CommandTimedOutError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.Error" title="bosdyn.client.robot_command.Error"><code class="xref py py-class docutils literal notranslate"><span class="pre">Error</span></code></a></p> <p>Timed out waiting for SUCCESS response from robot command.</p> </dd></dl> <dl class="py exception"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.UnknownFrameError"> <em class="property"><span class="pre">exception</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">UnknownFrameError</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">response</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">error_message</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#UnknownFrameError'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.UnknownFrameError" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandResponseError" title="bosdyn.client.robot_command.RobotCommandResponseError"><code class="xref py py-class docutils literal notranslate"><span class="pre">RobotCommandResponseError</span></code></a></p> <p>Robot does not know how to handle supplied frame.</p> </dd></dl> <dl class="py class"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient"> <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">RobotCommandClient</span></span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandClient'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/common#bosdyn.client.common.BaseClient' title='bosdyn.client.common.BaseClient'><code class="xref py py-class docutils literal notranslate"><span class="pre">BaseClient</span></code></a></p> <p>Client for calling RobotCommand services.</p> <dl class="py attribute"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.default_service_name"> <span class="sig-name descname"><span class="pre">default_service_name</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'robot-command'</span></em><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.default_service_name" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py attribute"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.service_type"> <span class="sig-name descname"><span class="pre">service_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'bosdyn.api.RobotCommandService'</span></em><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.service_type" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.update_from"> <span class="sig-name descname"><span class="pre">update_from</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandClient.update_from'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.update_from" title="Permalink to this definition"></a></dt> <dd><p>Update instance from another object.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><p><strong>other</strong> – The object where to copy from.</p> </dd> </dl> </dd></dl> <dl class="py property"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.timesync_endpoint"> <em class="property"><span class="pre">property</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">timesync_endpoint</span></span><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.timesync_endpoint" title="Permalink to this definition"></a></dt> <dd><p>Accessor for timesync-endpoint that was grabbed via ‘update_from()’.</p> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.robot_command"> <span class="sig-name descname"><span class="pre">robot_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">end_time_secs</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timesync_endpoint</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lease</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandClient.robot_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.robot_command" title="Permalink to this definition"></a></dt> <dd><p>Issue a command to the robot synchronously.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>command</strong> – Command to issue.</p></li> <li><p><strong>end_time_secs</strong> – End time for the command in seconds.</p></li> <li><p><strong>timesync_endpoint</strong> – Timesync endpoint.</p></li> <li><p><strong>lease</strong> – Lease object to use for the command.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>ID of the issued robot command.</p> </dd> <dt class="field-odd">Raises<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.RpcError' title='bosdyn.client.exceptions.RpcError'><strong>RpcError</strong></a> – Problem communicating with the robot.</p></li> <li><p><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.InvalidRequestError' title='bosdyn.client.exceptions.InvalidRequestError'><strong>bosdyn.client.exceptions.InvalidRequestError</strong></a> – Invalid request received by the robot.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.UnsupportedError" title="bosdyn.client.robot_command.UnsupportedError"><strong>UnsupportedError</strong></a> – The API supports this request, but the system does not support this request.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.NoTimeSyncError" title="bosdyn.client.robot_command.NoTimeSyncError"><strong>bosdyn.client.robot_command.NoTimeSyncError</strong></a> – Client has not done timesync with robot.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.ExpiredError" title="bosdyn.client.robot_command.ExpiredError"><strong>ExpiredError</strong></a> – The command was received after its max_duration had already passed.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.TooDistantError" title="bosdyn.client.robot_command.TooDistantError"><strong>bosdyn.client.robot_command.TooDistantError</strong></a> – The command end time was too far in the future.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.NotPoweredOnError" title="bosdyn.client.robot_command.NotPoweredOnError"><strong>NotPoweredOnError</strong></a> – The robot must be powered on to accept a command.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.BehaviorFaultError" title="bosdyn.client.robot_command.BehaviorFaultError"><strong>BehaviorFaultError</strong></a> – The robot is faulted and the fault must be cleared first.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.DockedError" title="bosdyn.client.robot_command.DockedError"><strong>DockedError</strong></a> – The command cannot be executed while the robot is docked.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.UnknownFrameError" title="bosdyn.client.robot_command.UnknownFrameError"><strong>bosdyn.client.robot_command.UnknownFrameError</strong></a> – Robot does not know how to handle supplied frame.</p></li> </ul> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.robot_command_async"> <span class="sig-name descname"><span class="pre">robot_command_async</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">end_time_secs</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timesync_endpoint</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lease</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandClient.robot_command_async'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.robot_command_async" title="Permalink to this definition"></a></dt> <dd><p>Async version of robot_command().</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>command</strong> – Command to issue.</p></li> <li><p><strong>end_time_secs</strong> – End time for the command in seconds.</p></li> <li><p><strong>timesync_endpoint</strong> – Timesync endpoint.</p></li> <li><p><strong>lease</strong> – Lease object to use for the command.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>ID of the issued robot command.</p> </dd> <dt class="field-odd">Raises<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.RpcError' title='bosdyn.client.exceptions.RpcError'><strong>RpcError</strong></a> – Problem communicating with the robot.</p></li> <li><p><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.InvalidRequestError' title='bosdyn.client.exceptions.InvalidRequestError'><strong>bosdyn.client.exceptions.InvalidRequestError</strong></a> – Invalid request received by the robot.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.UnsupportedError" title="bosdyn.client.robot_command.UnsupportedError"><strong>UnsupportedError</strong></a> – The API supports this request, but the system does not support this request.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.NoTimeSyncError" title="bosdyn.client.robot_command.NoTimeSyncError"><strong>bosdyn.client.robot_command.NoTimeSyncError</strong></a> – Client has not done timesync with robot.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.ExpiredError" title="bosdyn.client.robot_command.ExpiredError"><strong>ExpiredError</strong></a> – The command was received after its max_duration had already passed.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.TooDistantError" title="bosdyn.client.robot_command.TooDistantError"><strong>bosdyn.client.robot_command.TooDistantError</strong></a> – The command end time was too far in the future.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.NotPoweredOnError" title="bosdyn.client.robot_command.NotPoweredOnError"><strong>NotPoweredOnError</strong></a> – The robot must be powered on to accept a command.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.UnknownFrameError" title="bosdyn.client.robot_command.UnknownFrameError"><strong>bosdyn.client.robot_command.UnknownFrameError</strong></a> – Robot does not know how to handle supplied frame.</p></li> </ul> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.robot_command_feedback"> <span class="sig-name descname"><span class="pre">robot_command_feedback</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">robot_command_id</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandClient.robot_command_feedback'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.robot_command_feedback" title="Permalink to this definition"></a></dt> <dd><p>Get feedback from a previously issued command.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><p><strong>robot_command_id</strong> – ID of the robot command to get feedback on.</p> </dd> <dt class="field-even">Raises<span class="colon">:</span></dt> <dd class="field-even"><p><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.RpcError' title='bosdyn.client.exceptions.RpcError'><strong>RpcError</strong></a> – Problem communicating with the robot.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.robot_command_feedback_async"> <span class="sig-name descname"><span class="pre">robot_command_feedback_async</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">robot_command_id</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandClient.robot_command_feedback_async'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.robot_command_feedback_async" title="Permalink to this definition"></a></dt> <dd><p>Async version of robot_command_feedback().</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><p><strong>robot_command_id</strong> – ID of the robot command to get feedback on.</p> </dd> <dt class="field-even">Raises<span class="colon">:</span></dt> <dd class="field-even"><p><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.RpcError' title='bosdyn.client.exceptions.RpcError'><strong>RpcError</strong></a> – Problem communicating with the robot.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.clear_behavior_fault"> <span class="sig-name descname"><span class="pre">clear_behavior_fault</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">behavior_fault_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lease</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandClient.clear_behavior_fault'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.clear_behavior_fault" title="Permalink to this definition"></a></dt> <dd><p>Clear a behavior fault on the robot.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>behavior_fault_id</strong> – ID of the behavior fault.</p></li> <li><p><strong>lease</strong> – Lease information to use in the message.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>Boolean whether response status is STATUS_CLEARED.</p> </dd> <dt class="field-odd">Raises<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.RpcError' title='bosdyn.client.exceptions.RpcError'><strong>RpcError</strong></a> – Problem communicating with the robot.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.NotClearedError" title="bosdyn.client.robot_command.NotClearedError"><strong>NotClearedError</strong></a> – Behavior fault could not be cleared.</p></li> </ul> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandClient.clear_behavior_fault_async"> <span class="sig-name descname"><span class="pre">clear_behavior_fault_async</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">behavior_fault_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">lease</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandClient.clear_behavior_fault_async'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandClient.clear_behavior_fault_async" title="Permalink to this definition"></a></dt> <dd><p>Async version of clear_behavior_fault().</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>behavior_fault_id</strong> – </p></li> <li><p><strong>lease</strong> – </p></li> <li><p><strong>behavior_fault_id</strong> – ID of the behavior fault.</p></li> <li><p><strong>lease</strong> – Lease information to use in the message.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>Boolean whether response status is STATUS_CLEARED.</p> </dd> <dt class="field-odd">Raises<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/exceptions#bosdyn.client.exceptions.RpcError' title='bosdyn.client.exceptions.RpcError'><strong>RpcError</strong></a> – Problem communicating with the robot.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.NotClearedError" title="bosdyn.client.robot_command.NotClearedError"><strong>NotClearedError</strong></a> – Behavior fault could not be cleared.</p></li> </ul> </dd> </dl> </dd></dl> </dd></dl> <dl class="py class"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandStreamingClient"> <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">RobotCommandStreamingClient</span></span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandStreamingClient'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandStreamingClient" title="Permalink to this definition"></a></dt> <dd><p>Bases: <a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/common#bosdyn.client.common.BaseClient' title='bosdyn.client.common.BaseClient'><code class="xref py py-class docutils literal notranslate"><span class="pre">BaseClient</span></code></a></p> <p>Client for calling RobotCommand services.</p> <p>This client is in BETA and may undergo changes in future releases.</p> <dl class="py attribute"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandStreamingClient.default_service_name"> <span class="sig-name descname"><span class="pre">default_service_name</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'robot-command-streaming'</span></em><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandStreamingClient.default_service_name" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py attribute"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandStreamingClient.service_type"> <span class="sig-name descname"><span class="pre">service_type</span></span><em class="property"><span class="w"> </span><span class="p"><span class="pre">=</span></span><span class="w"> </span><span class="pre">'bosdyn.api.RobotCommandStreamingService'</span></em><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandStreamingClient.service_type" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandStreamingClient.send_joint_control_commands"> <span class="sig-name descname"><span class="pre">send_joint_control_commands</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command_iterator</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandStreamingClient.send_joint_control_commands'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandStreamingClient.send_joint_control_commands" title="Permalink to this definition"></a></dt> <dd></dd></dl> </dd></dl> <dl class="py class"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder"> <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">RobotCommandBuilder</span></span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder" title="Permalink to this definition"></a></dt> <dd><p>Bases: <code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></p> <p>This class contains a set of static helper functions to build and issue robot commands.</p> <p>This is not intended to cover every use case, but rather give developers a starting point for issuing commands to the robot.The robot command proto uses several advanced protobuf techniques, including the use of Any and OneOf.</p> <p>A RobotCommand is composed of one or more commands. The set of valid commands is robot / hardware specific. An armless spot only accepts one command at a time. Each command may or may not take a generic param object. These params are also robot / hardware dependent.</p> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.stop_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">stop_command</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.stop_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.stop_command" title="Permalink to this definition"></a></dt> <dd><p>Command to stop with minimal motion. If the robot is walking, it will transition to stand. If the robot is standing or sitting, it will do nothing.</p> <dl class="field-list simple"> <dt class="field-odd">Returns<span class="colon">:</span></dt> <dd class="field-odd"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.freeze_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">freeze_command</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.freeze_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.freeze_command" title="Permalink to this definition"></a></dt> <dd><p>Command to freeze all joints at their current positions (no balancing control)</p> <dl class="field-list simple"> <dt class="field-odd">Returns<span class="colon">:</span></dt> <dd class="field-odd"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.selfright_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">selfright_command</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.selfright_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.selfright_command" title="Permalink to this definition"></a></dt> <dd><p>Command to get the robot in a ready, sitting position. If the robot is on its back, it will attempt to flip over.</p> <dl class="field-list simple"> <dt class="field-odd">Returns<span class="colon">:</span></dt> <dd class="field-odd"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.battery_change_pose_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">battery_change_pose_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">dir_hint</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.battery_change_pose_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.battery_change_pose_command" title="Permalink to this definition"></a></dt> <dd><p>Command that will have the robot sit down (if not already sitting) and roll onto its side for easier battery access.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><p><strong>dir_hint</strong> – Direction to roll over: 1-right/2-left</p> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.payload_estimation_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">payload_estimation_command</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.payload_estimation_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.payload_estimation_command" title="Permalink to this definition"></a></dt> <dd><p>Command to get the robot estimate payload mass.</p> <p>Commands robot to stand and execute a routine to estimate the mass properties of an unregistered payload attached to the robot.</p> <dl class="field-list simple"> <dt class="field-odd">Returns<span class="colon">:</span></dt> <dd class="field-odd"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.safe_power_off_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">safe_power_off_command</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.safe_power_off_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.safe_power_off_command" title="Permalink to this definition"></a></dt> <dd><p>Command to get robot into a position where it is safe to power down, then power down. If the robot has fallen, it will power down directly. If the robot is not in a safe position, it will get to a safe position before powering down. The robot will not power down until it is in a safe state.</p> <dl class="field-list simple"> <dt class="field-odd">Returns<span class="colon">:</span></dt> <dd class="field-odd"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.constrained_manipulation_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">constrained_manipulation_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">task_type</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">init_wrench_direction_in_frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_limit</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">torque_limit</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">tangential_speed=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">rotational_speed=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">target_linear_position=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">target_angle=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">control_mode=2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">reset_estimator=value:</span> <span class="pre">true</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.constrained_manipulation_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.constrained_manipulation_command" title="Permalink to this definition"></a></dt> <dd><p>Command constrained manipulation.</p> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.joint_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">joint_command</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.joint_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.joint_command" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.synchro_se2_trajectory_point_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">synchro_se2_trajectory_point_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">goal_x</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">goal_y</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">goal_heading</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">params</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">body_height</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">locomotion_hint</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.synchro_se2_trajectory_point_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.synchro_se2_trajectory_point_command" title="Permalink to this definition"></a></dt> <dd><p>Command robot to move to pose along a 2D plane. Pose can be specified in the world (kinematic odometry) frame or the robot body frame. The arguments body_height and locomotion_hint are ignored if params argument is passed.</p> <p>A trajectory command requires an end time. End time is not set in this function, but rather is set externally before call to RobotCommandService.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>goal_x</strong> – Position X coordinate.</p></li> <li><p><strong>goal_y</strong> – Position Y coordinate.</p></li> <li><p><strong>goal_heading</strong> – Pose heading in radians.</p></li> <li><p><strong>frame_name</strong> – Name of the frame to use.</p></li> <li><p><strong>params</strong> (<em>spot.MobilityParams</em>) – Spot specific parameters for mobility commands. If not set, this will be constructed using other args.</p></li> <li><p><strong>body_height</strong> – Height, meters, relative to a nominal stand height.</p></li> <li><p><strong>locomotion_hint</strong> – Locomotion hint to use for the trajectory command.</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and gripper_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.synchro_se2_trajectory_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">synchro_se2_trajectory_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">goal_se2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">params</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">body_height</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">locomotion_hint</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.synchro_se2_trajectory_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.synchro_se2_trajectory_command" title="Permalink to this definition"></a></dt> <dd><p>Command robot to move to pose along a 2D plane. Pose can be specified in the world (kinematic odometry or vision world) frames. The arguments body_height and locomotion_hint are ignored if params argument is passed.</p> <p>A trajectory command requires an end time. End time is not set in this function, but rather is set externally before call to RobotCommandService.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>goal_se2</strong> – SE2Pose goal.</p></li> <li><p><strong>frame_name</strong> – Name of the frame to use.</p></li> <li><p><strong>params</strong> (<em>spot.MobilityParams</em>) – Spot specific parameters for mobility commands. If not set, this will be constructed using other args.</p></li> <li><p><strong>body_height</strong> – Height, meters, relative to a nominal stand height.</p></li> <li><p><strong>locomotion_hint</strong> – Locomotion hint to use for the trajectory command.</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and gripper_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.synchro_trajectory_command_in_body_frame"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">synchro_trajectory_command_in_body_frame</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">goal_x_rt_body</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">goal_y_rt_body</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">goal_heading_rt_body</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_tree_snapshot</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">params</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">body_height</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">locomotion_hint</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.synchro_trajectory_command_in_body_frame'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.synchro_trajectory_command_in_body_frame" title="Permalink to this definition"></a></dt> <dd><p>Command robot to move to pose described relative to the robots body along a 2D plane. For example, a command to move forward 2 meters at the same heading will have goal_x_rt_body=2.0, goal_y_rt_body=0.0, goal_heading_rt_body=0.0.</p> <p>The arguments body_height and locomotion_hint are ignored if params argument is passed. A trajectory command requires an end time. End time is not set in this function, but rather is set externally before call to RobotCommandService.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>goal_x_rt_body</strong> – Position X coordinate described relative to the body frame.</p></li> <li><p><strong>goal_y_rt_body</strong> – Position Y coordinate described relative to the body frame.</p></li> <li><p><strong>goal_heading_rt_body</strong> – Pose heading in radians described relative to the body frame.</p></li> <li><p><strong>frame_tree_snapshot</strong> – Dictionary representing the child_to_parent_edge_map describing different transforms. This can be acquired using the robot state client directly, or using the robot object’s helper function robot.get_frame_tree_snapshot().</p></li> <li><p><strong>params</strong> (<em>spot.MobilityParams</em>) – Spot specific parameters for mobility commands. If not set, this will be constructed using other args.</p></li> <li><p><strong>body_height</strong> – Height, meters, relative to a nominal stand height.</p></li> <li><p><strong>locomotion_hint</strong> – Locomotion hint to use for the trajectory command.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service. The go-to point will be converted to a non-moving world frame (odom frame) to be issued to the robot.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.synchro_velocity_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">synchro_velocity_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">v_x</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">v_y</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">v_rot</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">params</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">body_height</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">locomotion_hint</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_name</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'body'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.synchro_velocity_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.synchro_velocity_command" title="Permalink to this definition"></a></dt> <dd><p>Command robot to move along 2D plane. Velocity should be specified in the robot body frame. Other frames are currently not supported. The arguments body_height and locomotion_hint are ignored if params argument is passed.</p> <p>A velocity command requires an end time. End time is not set in this function, but rather is set externally before call to RobotCommandService.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>v_x</strong> – Velocity in X direction.</p></li> <li><p><strong>v_y</strong> – Velocity in Y direction.</p></li> <li><p><strong>v_rot</strong> – Velocity heading in radians.</p></li> <li><p><strong>params</strong> (<em>spot.MobilityParams</em>) – Spot specific parameters for mobility commands. If not set, this will be constructed using other args.</p></li> <li><p><strong>body_height</strong> – Height, meters, relative to a nominal stand height.</p></li> <li><p><strong>locomotion_hint</strong> – Locomotion hint to use for the velocity command.</p></li> <li><p><strong>frame_name</strong> – Name of the frame to use.</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and gripper_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.synchro_stand_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">synchro_stand_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">params=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">body_height=0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">footprint_R_body=<bosdyn.geometry.EulerZXY</span> <span class="pre">object></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command=None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.synchro_stand_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.synchro_stand_command" title="Permalink to this definition"></a></dt> <dd><p>Command robot to stand. If the robot is sitting, it will stand up. If the robot is moving, it will come to a stop. Params can specify a trajectory for the body to follow while standing. In the simplest case, this can be a specific position+orientation which the body will hold at. The arguments body_height and footprint_R_body are ignored if params argument is passed.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>params</strong> (<em>spot.MobilityParams</em>) – Spot specific parameters for mobility commands. If not set, this will be constructed using other args.</p></li> <li><p><strong>body_height</strong> (<em>float</em>) – Height, meters, to stand at relative to a nominal stand height.</p></li> <li><p><strong>footprint_R_body</strong> (<a class='reference internal' href='/python/bosdyn-core/src/bosdyn/geometry#bosdyn.geometry.EulerZXY' title='bosdyn.geometry.EulerZXY'><em>EulerZXY</em></a>) – The orientation of the body frame with respect to the footprint frame (gravity aligned framed with yaw computed from the stance feet)</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and gripper_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.synchro_sit_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">synchro_sit_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">params</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.synchro_sit_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.synchro_sit_command" title="Permalink to this definition"></a></dt> <dd><p>Command the robot to sit.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>params</strong> (<em>spot.MobilityParams</em>) – Spot specific parameters for mobility commands.</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and gripper_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.stance_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">stance_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">se2_frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">pos_fl_rt_frame</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">pos_fr_rt_frame</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">pos_hl_rt_frame</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">pos_hr_rt_frame</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">accuracy=0.05</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">params=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">body_height=0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">footprint_R_body=<bosdyn.geometry.EulerZXY</span> <span class="pre">object></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command=None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.stance_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.stance_command" title="Permalink to this definition"></a></dt> <dd><p>Command robot to stance with the feet at specified positions. This will cause the robot to reposition its feet. This is not intended to be a mobility command and will reject commands where the foot position is out of reach without locomoting. To stance at a far location, try using SE2TrajectoryCommand to safely put the robot at the correct location first.</p> <p>Params can specify a trajectory for the body to follow while stancing. In the simplest case, this can be a specific position+orientation which the body will hold at. The arguments body_height and footprint_R_body are ignored if params argument is passed.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>se2_frame_name</strong> (<em>string</em>) – The frame name which the desired foot_positions are described in.</p></li> <li><p><strong>pos_fl_rt_frame</strong> (<a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/math_helpers#bosdyn.client.math_helpers.Vec2' title='bosdyn.client.math_helpers.Vec2'><em>Vec2</em></a>) – Position of front left foot in specified frame.</p></li> <li><p><strong>pos_fr_rt_frame</strong> (<a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/math_helpers#bosdyn.client.math_helpers.Vec2' title='bosdyn.client.math_helpers.Vec2'><em>Vec2</em></a>) – Position of front right foot in specified frame.</p></li> <li><p><strong>pos_hl_rt_frame</strong> (<a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/math_helpers#bosdyn.client.math_helpers.Vec2' title='bosdyn.client.math_helpers.Vec2'><em>Vec2</em></a>) – Position of rear left foot in specified frame.</p></li> <li><p><strong>pos_hr_rt_frame</strong> (<a class='reference internal' href='/python/bosdyn-client/src/bosdyn/client/math_helpers#bosdyn.client.math_helpers.Vec2' title='bosdyn.client.math_helpers.Vec2'><em>Vec2</em></a>) – Position of rear right foot in specified frame.</p></li> <li><p><strong>accuracy</strong> (<em>float</em>) – Required foot positional accuracy in meters</p></li> <li><p><strong>params</strong> (<em>spot.MobilityParams</em>) – Spot specific parameters for mobility commands. If not set, this will be constructed using other args.</p></li> <li><p><strong>body_height</strong> (<em>float</em>) – Height, meters, to stand at relative to a nominal stand height.</p></li> <li><p><strong>footprint_R_body</strong> (<a class='reference internal' href='/python/bosdyn-core/src/bosdyn/geometry#bosdyn.geometry.EulerZXY' title='bosdyn.geometry.EulerZXY'><em>EulerZXY</em></a>) – The orientation of the body frame with respect to the footprint frame (gravity aligned framed with yaw computed from the stance feet)</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and gripper_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.follow_arm_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">follow_arm_command</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.follow_arm_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.follow_arm_command" title="Permalink to this definition"></a></dt> <dd><p>Command robot’s body to follow the arm around.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><p><strong>params</strong> (<em>spot.MobilityParams</em>) – Spot specific parameters for mobility commands.</p> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_stow_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_stow_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_stow_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_stow_command" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_ready_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_ready_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_ready_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_ready_command" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_carry_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_carry_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_carry_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_carry_command" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_gaze_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_gaze_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">x</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">y</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">z</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame2_tform_desired_hand</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame2_name</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_linear_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_angular_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_accel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_gaze_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_gaze_command" title="Permalink to this definition"></a></dt> <dd><p>Builds a Vec3Trajectory to tell the robot arm to gaze at a point in 3D space. :returns: RobotCommand, which can be issued to the robot command service</p> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_pose_command_from_pose"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_pose_command_from_pose</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">hand_pose</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">seconds</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_pose_command_from_pose'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_pose_command_from_pose" title="Permalink to this definition"></a></dt> <dd><p>Builds an SE3Trajectory Point to tell robot arm to move to a pose in space relative to the frame specified. Wraps it in SynchronizedCommand.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>hand_pose</strong> (<em>geometry_pb2.SE3Pose</em>) – Protobuf message specifying the desired pose of the hand.</p></li> <li><p><strong>frame_name</strong> (<em>string</em>) – Name of the frame relative to which <cite>hand_pose</cite> is expressed.</p></li> <li><p><strong>seconds</strong> (<em>float</em>) – Requested duration of the arm move.</p></li> <li><p><strong>build_on_command</strong> (<em>robot_command_pb2.RobotCommand</em>) – Optional RobotCommand (not containing a full_body_command). A mobility_command and gripper_command from <cite>build_on_command</cite> will be added to the RobotCommand returned by this function.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_pose_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_pose_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">x</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">y</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">z</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">qw</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">qx</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">qy</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">qz</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">seconds</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_pose_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_pose_command" title="Permalink to this definition"></a></dt> <dd><p>Builds an SE3Trajectory Point to tell robot arm to move to a pose in space relative to the frame specified. Wraps it in SynchronizedCommand.</p> <dl class="field-list simple"> <dt class="field-odd">Returns<span class="colon">:</span></dt> <dd class="field-odd"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_wrench_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_wrench_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">force_x</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_y</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">force_z</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">torque_x</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">torque_y</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">torque_z</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">seconds</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">5</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_wrench_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_wrench_command" title="Permalink to this definition"></a></dt> <dd><dl class="simple"> <dt>Builds a command to tell robot arm to exhibit a wrench.</dt><dd><p>Wraps it in a SynchronizedCommand.</p> </dd> </dl> <dl class="field-list simple"> <dt class="field-odd">Returns<span class="colon">:</span></dt> <dd class="field-odd"><p>RobotCommand, which can be issued to the robot command service.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_open_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">claw_gripper_open_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_acc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.claw_gripper_open_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_open_command" title="Permalink to this definition"></a></dt> <dd><p>Builds a command to open the gripper. Wraps it in SynchronizedCommand.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and mobility_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> <li><p><strong>max_acc</strong> – Optional maximum allowable gripper acceleration. Not setting this will lead to the robot using a relatively safe low default. If the user is sure their gripper trajectory is safe and achievable, this can be set to a large value so it doesn’t get in the way.</p></li> <li><p><strong>max_vel</strong> – Optional maximum allowable gripper velocity. Same thing about defaults as max_acc.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>robot_command_pb2.RobotCommand with a claw_gripper_command filled out.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_close_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">claw_gripper_close_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_acc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">disable_force_on_contact</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_torque</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.claw_gripper_close_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_close_command" title="Permalink to this definition"></a></dt> <dd><p>Builds a command to close the gripper. Wraps it in SynchronizedCommand.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and mobility_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> <li><p><strong>max_acc</strong> – Optional maximum allowable gripper acceleration. Not setting this will lead to the robot using a relatively safe low default. If the user is sure their gripper trajectory is safe and achievable, this can be set to a large value so it doesn’t get in the way.</p></li> <li><p><strong>max_vel</strong> – Optional maximum allowable gripper velocity. Same thing about defaults as max_acc.</p></li> <li><p><strong>disable_force_on_contact</strong> – Whether to switch the gripper to force control on contact detection.</p></li> <li><p><strong>max_torque</strong> – Optional Maximum torque applied if contact detected closing the gripper. If unspecified, a default value of 5.5 (Nm) will be used.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>robot_command_pb2.RobotCommand with a claw_gripper_command filled out.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_open_fraction_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">claw_gripper_open_fraction_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">open_fraction</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_acc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">disable_force_on_contact</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_torque</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.claw_gripper_open_fraction_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_open_fraction_command" title="Permalink to this definition"></a></dt> <dd><p>Builds a command to set the gripper using a fractional input. Wraps it in SynchronizedCommand.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>open_fraction</strong> – Percentage [0, 1] to open the gripper. 0 fully closed, 1 fully open.</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and mobility_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> <li><p><strong>max_acc</strong> – Optional maximum allowable gripper acceleration. Not setting this will lead to the robot using a relatively safe low default. If the user is sure their gripper trajectory is safe and achievable, this can be set to a large value so it doesn’t get in the way.</p></li> <li><p><strong>max_vel</strong> – Optional maximum allowable gripper velocity. Same thing about defaults as max_acc.</p></li> <li><p><strong>disable_force_on_contact</strong> – Whether to switch the gripper to force control on contact detection.</p></li> <li><p><strong>max_torque</strong> – Optional Maximum torque applied if contact detected closing the gripper. If unspecified, a default value of 5.5 (Nm) will be used.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>robot_command_pb2.RobotCommand with a claw_gripper_command filled out.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_open_angle_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">claw_gripper_open_angle_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">gripper_q</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_acc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">disable_force_on_contact</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_torque</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.claw_gripper_open_angle_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_open_angle_command" title="Permalink to this definition"></a></dt> <dd><p>Builds a command to set the gripper open angle. Wraps it in SynchronizedCommand.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>gripper_q</strong> – [-1.5708, 0] where -1.5708 is fully open and 0 is fully closed.</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and mobility_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> <li><p><strong>max_acc</strong> – Optional maximum allowable gripper acceleration. Not setting this will lead to the robot using a relatively safe low default. If the user is sure their gripper trajectory is safe and achievable, this can be set to a large value so it doesn’t get in the way.</p></li> <li><p><strong>max_vel</strong> – Optional maximum allowable gripper velocity. Same thing about defaults as max_acc.</p></li> <li><p><strong>disable_force_on_contact</strong> – Whether to switch the gripper to force control on contact detection.</p></li> <li><p><strong>max_torque</strong> – Optional Maximum torque applied if contact detected closing the gripper. If unspecified, a default value of 5.5 (Nm) will be used.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>robot_command_pb2.RobotCommand with a claw_gripper_command filled out.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.create_arm_joint_trajectory_point"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">create_arm_joint_trajectory_point</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">sh0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sh1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">el0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">el1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">wr0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">wr1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">time_since_reference_secs</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.create_arm_joint_trajectory_point'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.create_arm_joint_trajectory_point" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_joint_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_joint_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">sh0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">sh1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">el0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">el1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">wr0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">wr1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_accel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_joint_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_joint_command" title="Permalink to this definition"></a></dt> <dd></dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_joint_move_helper"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_joint_move_helper</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">joint_positions</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">times</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">joint_velocities</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ref_time</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_acc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_joint_move_helper'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_joint_move_helper" title="Permalink to this definition"></a></dt> <dd><p>Given a set of joint positions, times, and optional velocity, create a synchro command.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>joint_positions</strong> – A list of length N with joint positions at each knot point in our trajectory. Each knot joint position is represented as a list of length 6, representing the 6 joint angles [sh0, sh1, el0, el1, wr0, wr1]</p></li> <li><p><strong>times</strong> – A list of length N with the corresponding time_since_reference for each of our knots</p></li> <li><p><strong>joint_velocities</strong> – Optional joint velocities at each knot. Same structure as joint_positions</p></li> <li><p><strong>ref_time</strong> – Optional robot reference time. If unset, we’ll use the current synchronized robot time. Setting this is useful for getting a consistent trajectory over a long period of time when many ArmJointMoveRequest commands are chained together.</p></li> <li><p><strong>max_acc</strong> – Optional maximum allowable joint acceleration. Not setting this will lead to the robot using a relatively safe low default. If the user is sure their joint trajectory is safe and achievable, this can be set to a large value so it doesn’t get in the way.</p></li> <li><p><strong>max_vel</strong> – Optional maximum allowable joint velocity. Same thing about defaults as max_acc</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). A mobility_command and gripper_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>robot_command_pb2.RobotCommand with an arm_joint_move_command filled out.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_cartesian_move_helper"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_cartesian_move_helper</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">se3_poses</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">times</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">root_frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">wrist_tform_tool</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">root_tform_task</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">se3_velocities</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ref_time</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_acc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_linear_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_angular_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_cartesian_move_helper'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_cartesian_move_helper" title="Permalink to this definition"></a></dt> <dd><dl class="simple"> <dt>Given a set of SE3Poses, times, and optional velocities, create a synchro command</dt><dd><p>containing an arm_cartesian_command.</p> </dd> </dl> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>se3_poses</strong> (<em>geometry_pb2.SE3Pose</em>) – A list of length N with SE3 transforms at each knot point in our trajectory.</p></li> <li><p><strong>times</strong> – A list of length N with the corresponding time_since_reference for each of our knots.</p></li> <li><p><strong>root_frame_name</strong> – The name of the root frame. It must be a valid frame name in the frame_tree.</p></li> <li><p><strong>wrist_tform_tool</strong> (<em>geometry_pb2.SE3Pose</em>) – The optional tool pose to use during the move. If unset, defaults to a pose slightly in front of the gripper’s palm plate aligned with the wrist’s orientation.</p></li> <li><p><strong>root_tform_task</strong> (<em>geometry_pb2.SE3Pose</em>) – The SE3 transform between the root and the task frame. If unset, it will treat the root frame as the task frame.</p></li> <li><p><strong>se3_velocities</strong> (<em>geometry_pb2.SE3Velocity</em>) – An optional list of length N with SE3 velocities at each knot point in our trajectory.</p></li> <li><p><strong>ref_time</strong> – Optional reference time for the trajectory gotten from the computer. If unset, we’ll use the current robot-synchronized time</p></li> <li><p><strong>max_acc</strong> – Optional maximum allowable linear acceleration (m/s^2).</p></li> <li><p><strong>max_linear_vel</strong> – Optional maximum allowable linear velocity (m/s).</p></li> <li><p><strong>max_angular_vel</strong> – Optional maximum allowable angular velocity (rad/s).</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand for synchronous commands.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>robot_command_pb2.RobotCommand with an arm_cartesian_command filled out.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_command_helper"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">claw_gripper_command_helper</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">gripper_positions</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">times</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">gripper_velocities</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">ref_time</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_acc</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_vel</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">disable_force_on_contact</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_torque</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.claw_gripper_command_helper'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.claw_gripper_command_helper" title="Permalink to this definition"></a></dt> <dd><p>Given a set of gripper positions, times, and optional velocities, create a synchro command.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>gripper_positions</strong> – A list of length N with joint positions at each knot point in our trajectory.</p></li> <li><p><strong>times</strong> – A list of length N with the corresponding time_since_reference for each of our knots</p></li> <li><p><strong>gripper_velocities</strong> – Optional joint velocities at each knot. Same structure as gripper_positions.</p></li> <li><p><strong>ref_time</strong> – Optional robot reference time. If unset, we’ll use the current synchronized robot time. Setting this is useful for getting a consistent trajectory over a long period of time when many ClawGripperCommandRequest commands are chained together.</p></li> <li><p><strong>max_acc</strong> – Optional maximum allowable gripper acceleration. Not setting this will lead to the robot using a relatively safe low default. If the user is sure their gripper trajectory is safe and achievable, this can be set to a large value so it doesn’t get in the way.</p></li> <li><p><strong>max_vel</strong> – Optional maximum allowable gripper velocity. Same thing about defaults as max_acc.</p></li> <li><p><strong>disable_force_on_contact</strong> – Whether to switch the gripper to force control on contact detection.</p></li> <li><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and mobility_command from this incoming RobotCommand will be added to the returned RobotCommand.</p></li> <li><p><strong>max_torque</strong> – Optional Maximum torque applied if contact detected closing the gripper. If unspecified, a default value of 5.5 (Nm) will be used.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>robot_command_pb2.RobotCommand with a claw_gripper_command filled out.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.arm_joint_freeze_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">arm_joint_freeze_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">build_on_command</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.arm_joint_freeze_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.arm_joint_freeze_command" title="Permalink to this definition"></a></dt> <dd><p>Returns a RobotCommand with an ArmCommand that will freeze the arm’s joints in place.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><p><strong>build_on_command</strong> – Option to input a RobotCommand (not containing a full_body_command). An arm_command and mobility_command from this incoming RobotCommand will be added to the returned RobotCommand.</p> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>robot_command_pb2.RobotCommand</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.mobility_params"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">mobility_params</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">body_height=0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">footprint_R_body=<bosdyn.geometry.EulerZXY</span> <span class="pre">object></span></span></em>, <em class="sig-param"><span class="n"><span class="pre">locomotion_hint=1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">stair_hint=False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">external_force_params=None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">stairs_mode=None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.mobility_params'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.mobility_params" title="Permalink to this definition"></a></dt> <dd><p>Helper to create Mobility params for spot mobility commands. This function is designed to help get started issuing commands, but lots of options are not exposed via this interface. See spot.robot_command_pb2 for more details. If unset, good defaults will be chosen by the robot.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>body_height</strong> – Height, meters, relative to a nominal stand height.</p></li> <li><p><strong>footprint_R_body</strong> (<a class='reference internal' href='/python/bosdyn-core/src/bosdyn/geometry#bosdyn.geometry.EulerZXY' title='bosdyn.geometry.EulerZXY'><em>EulerZXY</em></a>) – The orientation of the body frame with respect to the footprint frame (gravity aligned framed with yaw computed from the stance feet)</p></li> <li><p><strong>locomotion_hint</strong> – Locomotion hint to use for the command.</p></li> <li><p><strong>stair_hint</strong> – Boolean to specify if stair mode should be used. Deprecated in favor of stairs_mode and ignored if stairs_mode set.</p></li> <li><p><strong>external_force_params</strong> (<em>spot.BodyExternalForceParams</em>) – Robot body external force parameters.</p></li> <li><p><strong>stairs_mode</strong> – StairsMode enum specifying stairs mode as On, Auto, or Off.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>spot.MobilityParams, params for spot mobility commands.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.body_pose"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">body_pose</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">frame_name</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">body_pose</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.body_pose'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.body_pose" title="Permalink to this definition"></a></dt> <dd><p>Helper to create a BodyControlParams.BodyPose from a single desired <cite>body_pose</cite> relative to <cite>frame_name</cite>.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>frame_name</strong> (<em>string</em>) – Name of the frame relative to which <cite>body_pose</cite> is expressed.</p></li> <li><p><strong>body_pose</strong> (<em>geometry_pb2.SE3Pose</em>) – Protobuf message specifying the desired pose of the body.</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>spot.BodyControlParams.BodyPose, specifies the desired body pose for a StandCommand</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.build_body_external_forces"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">build_body_external_forces</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">external_force_indicator</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">override_external_force_vec</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.build_body_external_forces'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.build_body_external_forces" title="Permalink to this definition"></a></dt> <dd><p>Helper to create Mobility params.</p> <p>This function allows the user to enable an external force estimator, or set a vector of forces (in the body frame) which override the estimator with constant external forces.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>external_force_indicator</strong> – Indicates if the external force estimator should be enabled/disabled or an override force should be used. Can be specified as one of three values: spot_command_pb2.BodyExternalForceParams.{ EXTERNAL_FORCE_NONE, EXTERNAL_FORCE_USE_ESTIMATE, EXTERNAL_FORCE_USE_OVERRIDE }</p></li> <li><p><strong>override_external_force_vec</strong> – x/y/z list of forces in the body frame. Only used when the indicator specifies EXTERNAL_FORCE_USE_OVERRIDE</p></li> </ul> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>spot.MobilityParams, params for spot mobility commands.</p> </dd> </dl> </dd></dl> <dl class="py method"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.RobotCommandBuilder.build_synchro_command"> <em class="property"><span class="pre">static</span><span class="w"> </span></em><span class="sig-name descname"><span class="pre">build_synchro_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#RobotCommandBuilder.build_synchro_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.RobotCommandBuilder.build_synchro_command" title="Permalink to this definition"></a></dt> <dd><p>Combines multiple commands into one command. There’s no intelligence here on duplicate commands.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><p><strong>commands</strong> (<em>RobotCommand containing only either mobility commands</em><em> or </em><em>synchro</em>) – </p> </dd> <dt class="field-even">Returns<span class="colon">:</span></dt> <dd class="field-even"><p>RobotCommand containing a synchro command</p> </dd> </dl> </dd></dl> </dd></dl> <dl class="py function"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.blocking_command"> <span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">blocking_command</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command_client</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">command</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">check_status_fn</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">end_time_secs</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timeout_sec</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">update_frequency</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#blocking_command'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.blocking_command" title="Permalink to this definition"></a></dt> <dd><p>Helper function which uses the RobotCommandService to execute the given command.</p> <p>Blocks until check_status_fn return true, or raises an exception if the command times out or fails. This helper checks the main full_body/synchronized command status (RobotCommandFeedbackStatus), but the caller should check the status of the specific commands (stand, stow, selfright, etc.) in the callback.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>command_client</strong> – RobotCommand client.</p></li> <li><p><strong>command</strong> – The robot command to issue to the robot.</p></li> <li><p><strong>check_status_fn</strong> – A callback that accepts RobotCommandFeedbackResponse and returns True when the correct statuses are achieved for the specific requested command and throws CommandFailedErrorWithFeedback if an error state occurs.</p></li> <li><p><strong>end_time_sec</strong> – The local end time of the command (will be converted to robot time)</p></li> <li><p><strong>timeout_sec</strong> – Timeout for the rpc in seconds.</p></li> <li><p><strong>update_frequency</strong> – Update frequency for the command in Hz.</p></li> </ul> </dd> <dt class="field-even">Raises<span class="colon">:</span></dt> <dd class="field-even"><ul class="simple"> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.CommandFailedErrorWithFeedback" title="bosdyn.client.robot_command.CommandFailedErrorWithFeedback"><strong>CommandFailedErrorWithFeedback</strong></a> – Command feedback from robot is not STATUS_PROCESSING.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.CommandTimedOutError" title="bosdyn.client.robot_command.CommandTimedOutError"><strong>bosdyn.client.robot_command.CommandTimedOutError</strong></a> – Command took longer than provided timeout.</p></li> </ul> </dd> </dl> </dd></dl> <dl class="py function"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.blocking_stand"> <span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">blocking_stand</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command_client</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timeout_sec</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">update_frequency</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">params</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#blocking_stand'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.blocking_stand" title="Permalink to this definition"></a></dt> <dd><p>Helper function which uses the RobotCommandService to stand.</p> <p>Blocks until robot is standing, or raises an exception if the command times out or fails.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>command_client</strong> – RobotCommand client.</p></li> <li><p><strong>timeout_sec</strong> – Timeout for the command in seconds.</p></li> <li><p><strong>update_frequency</strong> – Update frequency for the command in Hz.</p></li> <li><p><strong>params</strong> (<em>spot.MobilityParams</em>) – Spot specific parameters for mobility commands to optionally set say body_height</p></li> </ul> </dd> <dt class="field-even">Raises<span class="colon">:</span></dt> <dd class="field-even"><ul class="simple"> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.CommandFailedErrorWithFeedback" title="bosdyn.client.robot_command.CommandFailedErrorWithFeedback"><strong>CommandFailedErrorWithFeedback</strong></a> – Command feedback from robot is not STATUS_PROCESSING.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.CommandTimedOutError" title="bosdyn.client.robot_command.CommandTimedOutError"><strong>bosdyn.client.robot_command.CommandTimedOutError</strong></a> – Command took longer than provided timeout.</p></li> </ul> </dd> </dl> </dd></dl> <dl class="py function"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.blocking_sit"> <span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">blocking_sit</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command_client</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timeout_sec</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">update_frequency</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#blocking_sit'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.blocking_sit" title="Permalink to this definition"></a></dt> <dd><p>Helper function which uses the RobotCommandService to sit.</p> <p>Blocks until robot is sitting, or raises an exception if the command times out or fails.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>command_client</strong> – RobotCommand client.</p></li> <li><p><strong>timeout_sec</strong> – Timeout for the command in seconds.</p></li> <li><p><strong>update_frequency</strong> – Update frequency for the command in Hz.</p></li> </ul> </dd> <dt class="field-even">Raises<span class="colon">:</span></dt> <dd class="field-even"><ul class="simple"> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.CommandFailedErrorWithFeedback" title="bosdyn.client.robot_command.CommandFailedErrorWithFeedback"><strong>CommandFailedErrorWithFeedback</strong></a> – Command feedback from robot is not STATUS_PROCESSING.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.CommandTimedOutError" title="bosdyn.client.robot_command.CommandTimedOutError"><strong>bosdyn.client.robot_command.CommandTimedOutError</strong></a> – Command took longer than provided timeout.</p></li> </ul> </dd> </dl> </dd></dl> <dl class="py function"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.blocking_selfright"> <span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">blocking_selfright</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command_client</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timeout_sec</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">30</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">update_frequency</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#blocking_selfright'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.blocking_selfright" title="Permalink to this definition"></a></dt> <dd><p>Helper function which uses the RobotCommandService to self-right.</p> <p>Blocks until self-right has completed, or raises an exception if the command times out or fails.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>command_client</strong> – RobotCommand client.</p></li> <li><p><strong>timeout_sec</strong> – Timeout for the command in seconds.</p></li> <li><p><strong>update_frequency</strong> – Update frequency for the command in Hz.</p></li> </ul> </dd> <dt class="field-even">Raises<span class="colon">:</span></dt> <dd class="field-even"><ul class="simple"> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.CommandFailedErrorWithFeedback" title="bosdyn.client.robot_command.CommandFailedErrorWithFeedback"><strong>CommandFailedErrorWithFeedback</strong></a> – Command feedback from robot is not STATUS_PROCESSING.</p></li> <li><p><a class="reference internal" href="#bosdyn.client.robot_command.CommandTimedOutError" title="bosdyn.client.robot_command.CommandTimedOutError"><strong>bosdyn.client.robot_command.CommandTimedOutError</strong></a> – Command took longer than provided timeout.</p></li> </ul> </dd> </dl> </dd></dl> <dl class="py function"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.block_until_arm_arrives"> <span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">block_until_arm_arrives</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command_client</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cmd_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timeout_sec</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#block_until_arm_arrives'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.block_until_arm_arrives" title="Permalink to this definition"></a></dt> <dd><p>Helper that blocks until the arm achieves a finishing state for the specific arm command.</p> <p>This helper will block and check the feedback for ArmCartesianCommand, GazeCommand, ArmJointMoveCommand, NamedArmPositionsCommand, and ArmImpedanceCommand.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>command_client</strong> – robot command client, used to request feedback</p></li> <li><p><strong>cmd_id</strong> – command ID returned by the robot when the arm movement command was sent.</p></li> <li><p><strong>timeout_sec</strong> – optional number of seconds after which we’ll return no matter what the robot’s state is.</p></li> </ul> </dd> </dl> <dl class="simple"> <dt>Return values:</dt><dd><p>True if successfully got to the end of the trajectory, False if the arm stalled or the move was canceled (the arm failed to reach the goal). See the proto definitions in arm_command.proto for more information about why a trajectory would succeed or fail.</p> </dd> </dl> </dd></dl> <dl class="py function"> <dt class="sig sig-object py" id="bosdyn.client.robot_command.block_for_trajectory_cmd"> <span class="sig-prename descclassname"><span class="pre">bosdyn.client.robot_command.</span></span><span class="sig-name descname"><span class="pre">block_for_trajectory_cmd</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">command_client</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cmd_id</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">trajectory_end_statuses</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">(1,)</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">body_movement_statuses</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">feedback_interval_secs</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">timeout_sec</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">logger</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class='reference internal' href='/_modules/bosdyn/client/robot_command#block_for_trajectory_cmd'><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#bosdyn.client.robot_command.block_for_trajectory_cmd" title="Permalink to this definition"></a></dt> <dd><p>Helper that blocks until a trajectory command reaches a desired goal state or a timeout is reached.</p> <dl class="field-list simple"> <dt class="field-odd">Parameters<span class="colon">:</span></dt> <dd class="field-odd"><ul class="simple"> <li><p><strong>command_client</strong> (<a class="reference internal" href="#bosdyn.client.robot_command.RobotCommandClient" title="bosdyn.client.robot_command.RobotCommandClient"><em>RobotCommandClient</em></a>) – the client used to request feedback</p></li> <li><p><strong>cmd_id</strong> (<em>int</em>) – command ID returned by the robot when the trajectory command was sent</p></li> <li><p><strong>trajectory_end_statuses</strong> (<em>set</em><em> of </em><em>SE2TrajectoryCommand.Feedback.Status</em>) – the feedback must have a status which is included in this set of statuses to be considered successfully complete. By default, this includes only the “STATUS_STOPPED” end condition.</p></li> <li><p><strong>body_movement_statuses</strong> (<em>set</em><em> of </em><em>SE2TrajectoryCommand.Feedback.BodyMovementStatus</em>) – the body movement status must be one of these statuses to be considered successfully complete. By default, this is “None”, which means any body movement status will be accepted.</p></li> <li><p><strong>feedback_interval_secs</strong> (<em>float</em>) – The time (in seconds) to wait before each feedback request checking if the trajectory is complete. Defaults to checking at 10 Hz (requests every 0.1 seconds).</p></li> <li><p><strong>timeout_sec</strong> (<em>float</em>) – optional number of seconds after which we’ll return no matter what the robot’s state is.</p></li> <li><p><strong>logger</strong> (<em>logging.Logger</em>) – The logger print debug statements with. If none, no debug printouts will be sent.</p></li> </ul> </dd> </dl> <dl class="simple"> <dt>Return values:</dt><dd><p>True if reaches STATUS_STOPPED, False otherwise.</p> </dd> </dl> </dd></dl> </section> </div> </div> <footer> <hr/> <div role="contentinfo"> <p> © Copyright 2024 Boston Dynamics. All rights reserved. <a href="https://www.bostondynamics.com/privacy-policy">Privacy Policy</a> | <a href="https://www.bostondynamics.com/terms">Terms of Use</a> </p> </div> </footer> </div> </div> </section> </div> <script> jQuery(function () { SphinxRtdTheme.Navigation.enable(false); }); </script> <!-- Theme Analytics --> <script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXX-1"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'UA-XXXXXXX-1', { 'anonymize_ip': false, }); </script> <!-- Start of HubSpot Embed Code --> <script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/4845432.js"></script> <!-- End of HubSpot Embed Code --></body> </html>