-
Notifications
You must be signed in to change notification settings - Fork 41
Release Notes
This file is a compilation of OceanWATERS release features, in reverse chronological order.
The following features are planned for Release 13, sometime in 2024.
They are currently available on the noetic-devel
branches of the
OceanWATERS repositories. While the noetic-devel
branch should be
usable, it is not assuredly stable since it has not been as rigorously
tested as the Release 12 based master
branch.
- TBD
**This release requires you to update your PLEXIL installations. Instructions are found here.
Simulator (ow_simulator)
- Improvements and refinements to many ROS action scripts.
- For pose commanding arm actions, the relative flag now interprets the pose as additive within the selected frame.
- Improved arm trajectory planning.
- Refactored arm trajectory planner.
- Improved trajectory and goal error reporting.
- Improved depth accuracy of dig commands.
- Improved digging fidelity.
- New Balovnev-based digging model.
- Increase in regolith collection.
- Various topic publication rates were corrected to be more consistent.
- Several improvements and fixes in graphics.
- Fixed dynamic terrain coordinate system mistakes, leading to terrain holes with incorrect poses.
- Expanded coverage of automated tests to nearly all lander commands.
- New power system faults
- Battery node disconnection, which disconnects some nodes of the battery pack and distributes power load across remainder.
- Artificial power faults, which force the predictions into states
that trigger their associated fault flags. Unrealistic behavior,
but important for testing.
- Low state-of-charge
- Instantaneous capacity loss
- Thermal failure
- Updated custom fault profile formatting for simplicity.
- Single-cell battery model upgraded to a multi-cell model.
- Maximum power draw significantly increased; power consumption is distributed across four 6S1P models.
- Battery lifetime is now much higher.
- Runtime configuration of many new aspects of the power system.
- Significant improvements to mechanical power application.
- Option to control the performance load of the power system, from increasing the number of simulated nodes to disabling the power system altogether.
Autonomy (ow_autonomy)
- ow_plexil package upgraded to use PLEXIL v6 (PLEXIL 4.6 will no longer work).
- Complete PLEXIL interface to JPL's OWLAT Simulator (actions, telemetry), with new and refactored test plans.
- Greatly refactored and reorganized PLEXIL adapter and plan directories.
- Fault dependencies framework and demonstration plan.
- System health monitor and demonstration plan.
- New PLEXIL commands for stochastically injecting and clearing faults.
- Many PLEXIL plan improvements.
- A new script ow-compile-plan for compiling a single PLEXIL plan.
- Much faster than catkin build and allows plan editing while running ow-plexil launches.
- Numerous bug fixes and small enhancements throughout system.
Release date: March 2023
The central theme of Release 11 was a lander operational interface (commands, telemetry) that is more unified with JPL's Ocean World Lander Autonomy Testbed (OWLAT), a physical testbed that compliments OceanWATERS. Release 11 implemented mainly the OceanWATERS side of the interface.
**This release required you to update your PLEXIL and GSAP installations. Instructions are found here.
- The ow_lander action servers and robotic arm interface were largely refactored:
- Most classes and methods were reworked as modules and moved into a Python package named ow_lander. Thus they can now be imported and used in other ROS packages.
- A framework for creating new ROS Actions that interface with the lander has been developed.
- The Python scripts that invoke each ROS action were renamed and modified for the updated actions. They also now have detailed help messages.
- ROS Action error handling and logging were rewritten and made more consistent across commands.
- Existing commands have been unified with OWLAT's interface:
- Unstow is replaced with ArmUnstow
- Stow is replaced with ArmStow
- Stop is replaced with ArmStop
- Deliver is replaced with TaskDeliverSample
- Discard is replaced with TaskDiscardSample
- DigCircular is replaced with TaskScoopCircular
- DigLinear is replaced with TaskScoopLinear
- AntennaPanTiltAction is replaced with PanTiltMoveJoints
- New commands have been added:
- ArmMoveCartesian - Moves the end-effector to the commanded pose.
- ArmMoveCartesianGuarded - Moves the end-effector to the commanded pose and stops when resistance is encountered.
- ArmMoveJointsGuarded - Sets position of all arm joints and stops when resistance is encountered.
- ArmFindSurface - Pokes the surface with the end-effector.
- CameraCapture - Captures images with both mast cameras.
- CameraSetExposure - Sets the mast camera exposure level.
- LightSetIntensity - Sets the intensity of either mast spotlights.
- PanTiltMoveCartesian - Pans and tilts the lander mast to point the stereo-cameras at a point in space.
- Pan - Changes only the pan position of the lander mast.
- Tilt - Changes only the tilt position of the lander mast.
- There are still OceanWATERS-only commands, and some have been
renamed:
- DockIngestSampleAction is now DockIngestSample
- Grind is now TaskGrind
- Existing telemetry has been unified with OWLAT's:
- /faults/system_faults_status is replaced with /system_faults_status
- /faults/arm_faults_status is replaced with /arm_faults_status
- /faults/cam_faults_status is replaced with /camera_faults_status
- /faults/power_faults_status is replaced with /power_faults_status
- /faults/pt_faults_status is replaced with /pan_tilt_faults_status
- /ft_sensor_dist_pitch is replaced with /arm_end_effector_force_torque
- /joint_states is supplemented with /arm_joint_positions, /arm_joint_velocities, /arm_joint_torques, and /pan_tilt_position
- /power_system_node/battery_temperature is replaced with /battery_temperature
- /power_system_node/state_of_charge is replaced with /battery_state_of_charge
- /power_system_node/remaining_useful_life is replaced with /battery_remaining_useful_life
- /StereoCamera/points2 is supplemented with /camera_point_cloud
- New telemetry added:
- /arm_tool - This topic exists to support OWLAT. When using OceanWATERS, the value will always be 4, which denotes the scoop end-effector.
- /arm_joint_accelerations - Angular accelerations of each arm joint.
- /arm_pose - Cartesian position of end-effector in the base_link frame.
- Improved camera fault detection.
- Refactored fault publishing code.
- Improved pan/tilt operation: angle limits are enforced, angles are better compared and normalized.
- A long-standing bug in which battery remaining useful life went to 0 within seconds of high power draw has been fixed by a newer version of GSAP (prognostics engine).
- Refactored ROS Action call methods for rostest python scripts into a module.
- Created a Python script that statistically computes ROS Action Result expected values.
Autonomy (ow_autonomy)
- PLEXIL now commands the lander entirely through its ROS action interface; interfaces were developed or modified for all new and changed ROS actions.
- Numerous bug fixes and small enhancements throughout system.
Older releases are are not described here, since this page was started with Release 12.