7.3.0
Major Features
Click Visualization Window to Get Pose
The ability to get a pose by clicking in the UI has been added via the GetPoseFromUser
Behavior. With this Behavior, you can prompt the user to click in the Visualization
pane in the UI, and return a PoseStamped
message which corresponds the location of the click in the world
frame. This Behavior can be used in conjunction with others, such as NavigateToPoseAction
to command the robot more interactively!
Enhanced Nav2 Support
-
The
ComputePathToPoseAction
Behavior was added which interfaces with Nav2. This Behavior is intended to call the/compute_path_to_pose
Nav2 action server so that anav_msgs/Path
is generated to some goal pose. -
The
FollowPath
Behavior was added which interfaces with Nav2. This Behavior is intended to call the/follow_path
Nav2 action server with anav_msgs/Path
message so that Nav2 can follow that path with the desired controller.
Enhancements
UI Changes
- The expand/collapse state of folders in the left-hand sidebar in the UI is now persisted between sessions.
- The "Clear Markers" button has been moved to the top of the marker dropdown list for easier access in a long list of visualizations.
- Adds a modal at startup for free trial users that specifies the remaining trial period and limitations of the free trial.
Reference Application Changes
- Improved ML model SAM2 example in lab_sim
- Added basic tool-changing example to fanuc_sim
- Removed the arm_on_rail_sim world in favor of lab_sim
Other New Behaviors
- Added a new MTC Behavior, called
SetupMTCBatchPoseIK
, to compute pose inverse kinematics on a given set of target poses and insert the solutions in the MTC pipeline. This can be used, for instance, for grasping, where the set of grasp poses is computed externally.
Behavior Changes
- Added a
keep_orientation_link_names
port to thePlanToJointGoal
andSetupMTCPlanToJointState
Behaviors. This port allows the user to specify the link names where the orientation constraint will be enforced. Multiple links can be constrained.
Documentation Improvements
- Added a new how-to guide that explains how to visualize the details of an MTC plan with MoveIt Pro or RViz2: Debug MTC Pipelines.
- Added a new how-to guide for saving, loading and executing a motion planning solution or robot trajectory: Save and Replay Trajectories.
- Updated "Tool Changing" docs to point to
fanuc_sim
example. - Added a new how-to configuration tutorial for gamepad controllers for teleoperation: Game Controllers and 6DoF Input Devices for Teleoperation.
Other Improvements
- Launch the servo_node in its own process so errors in the log due to MoveIt Servo will be reported under the
servo_node
process rather than the more ambiguouscomponent_container_mt
process. - Blackboard viewer: Add "__type" field for primitive types that are in the JSON published on the "/blackboard_contents" topic.
- Update the ros2 humble snapshot to 2025-01-21
- Added the concept of MOVEIT_PRO_IGNORE files, which tells MoveIt Pro not to show certain robot config in the user-presentd list if they are not intended to be launched/run.
Bug Fixes
- Fixed a bug that caused a Sequence that was converted to a SubTree to remain in the XML document erroneously.
- Fixed a bug where streaming video in Chrome caused extreme degradation of UI performance.
- Fixes an xml parsing issue leading to verbose console warnings such as "This search incorrectly ignores the root element, and will be fixed in a future version.".
- Fixed a bug where clicking outside of Keepout Zones in the UI was not deselecting them as intended.
- Fixed a bug where the first Marker published to the UI would cause the whole visualization to temporarily go blank and then reload.
- Fixed an issue where error messages that contained numbers with decimal points could have an extraneous line break added to the middle of them.
- Fixed a bug where subtree remap ports specified in a text editor would appear with a blank direction instead of assuming they are of direction IN/OUT.
- Fixes a bug in an internal function that could cause a crash on Behaviors taking a
RobotJointState
message, when there was a mismatch between the number of joint names and joint positions. - Fixed a bug where the Build tab would not always correctly fit the tree to the view when jumping directly to editing an objective from screens other than the home screen.
- Fixed a bug where prompts for user input were not being displayed in the UI.
- Fixed a bug where searching for latter portions of behavior names (for instance, "stampedpose" as part of "createstampedpose") would not return the expected results
- Fixed a graphical issue where hovered behaviors in the sidebar were the same color as the currently selected objective when editing.
- Fixed a bug in CropPointsInBox where TF lookup times out frequently for valid transforms.
- Fixed a bug where hidden folders were checked to find robot config packages.
- Fixed a bug where the Marker Dropdown was not scrollable, making it impossible to select newer markers.
- Folders in the left-hand sidebar no longer have inverted expand/collapsed state between different screens in the UI.