Remove astrobee-repo-version from publicly required packages list.
Fix decomputil debian, revert to older version.
This release fixes a bug where we attempted to build the smart dock even if DDS is not installed.
This release fixes a bug in the smart dock interacting with GDS.
This release includes improvements of map building and camera calibration, simulator performance and multi-robot support, new features for guest science, and many internal changes.
- Map building fixes.
- Multiple maps assembly pipeline optimized.
- Streamlined image cameras and depth cameras extrinsics relative to IMU
- Completed support for docking / un-docking.
- Default robot starts on-dock in the JEM.
- Synthetic generation of optical flow features.
- Support for launching a simulation without a robot.
- Support for controlling simulation speed.
- Substantially better runtime performance through simplified collision meshes.
- More complete ISS mesh; improved dock and freeflyer meshes.
- The system monitor now triggers heartbeat faults for all nodes in the system.
- Management of operational limits.
- Improved "mode" management including support for IDLE.
- A GS Manager stub was added so GS don’t have to use Android to test their applications.
- Guest Science Manager changed to create and pass the base data path to a GS APK.
- A new method was added to the guest science library that will provide the base data path to a GS APK.
- Better GS examples added.
- Mechanisms for local (robot) launch at startup.
- Support for freeflyer_avionics (firmware) improvements.
- Smarter management of propulsion modules.
- Support for Software/Firmware Upgrade, EMI and Network tests.
- Fixed linear / angular acceleration limits in holonomic mode.
- Fixed keep in and keep out zone checking.
- DDS hanging on exit.
- Granite simulation not functional.
- The GS Manager Stub does not support yet all Android functionalities
- Some performance limitations with multiple robots.
- Some performance trouble with mobility on one computer.
The previous hotfix updated the debians, but did not update the version numbers of which debians to install. This corrects that.
This hotifx fixes the build with ROS' new opencv release, which moved the opencv libraries from /opt/ros/kinetic/lib to /opt/ros/kinetic/lib/PLATFORM, breaking our RPATHs.
This release addresses several bugs identified by Guest Scientists, simulator improvements as well as many internal changes. The only API change is in the EkfState (removed augmented state).
- Stability improvements
- Better performance by optimized collision checking and new method for feature simulation
- More detailed CAD models and textures
- New mapper node builds an Octomap from the HazCam data
- Collision checking performed at runtime agains the Octomap
- Docking and undocking complete
- Angular velocities/acceleration in GDS not consistent with FSW (will be fixed in GDS)
- Keep in and keep out zones are not checked (during validation or execution)
- Simulated docking in a beta stage and should not be used
- Perching Arm motion (and dynamics) functional
- PerchCam and HazCam depth sensors enabled
- Improved performance
- Guest Science Manager implementation available on Android
- Guest Science library for communication between the manager and guest apps
- Executive can command Guest Science apps
- GN&C decomposed into three separate ROS nodes for easier customization / extension:
- EKF
- Control
- Force Allocation Module
- Management of FlightModes handled on all levels (Exec, Mobility, GN&C and Propulsion)
- Feature map much smaller
- Faster sparse mapping (3Hz on 2 cores only versus 2Hz on 4 cores)
- Visualization tool for localization features
- Calibration of depth cameras relative to IMU
- Fixed 6DoF face-forward bug with the trapezoidal path planner
- Asynchronous, state-based mobility and control pipeline with improved debugging output
- Multiple speed gains now supported by FAM, with a controlled ramp up/down
- Robot now starts in "off" flight mode by default
- Asychronous, state-based procedures for
- Arm control
- Docking and undocking
- Perching and unperching
- Changed to new motion system
- Flight mode propagation
- Picoflexx driver produces depth images in addition to point clouds
- Picoflexx internal core (Royale) driver bumped to v3.9.0 LTS
- PMC actuator now determines its state (ramping up/down, ready) based on telemetry feedback
- Use the same flight software stack that is run on the platform (but the HW drivers)
- Dynamics of the Astrobee using Gazebo at 1KHz
- One ISS module environment from Gazebo
- GNC control running at 62.5Hz (same as real platform)
- uses GNC Simulink blower propulsion module
- EKF inputs:
- IMU model (no noise in this release)
- Sparse mapping features (sampled from point cloud)
- Visual features from synthetic images for optical flow
- Camera models (from Gazebo with radial distortion)
- Flashlight and laser representation
- Can run with Gazebo 7 GUI and RViz or headless
- Supports muti-Astrobee simulation (no communication between them)
- Collision between Astrobee and ISS walls simulated
- No AR target tracking
- No Handrail detection
- Depthcam point cloud disabled (efficiency)
- Camera raytracing runs at 2Hz
- Conservative limit on angular velocity
- Arm simulation disabled
- No noise in the system
- JAVA API generated from XP-JSON command dictionary
- Commands can be send to the Executive using the API and provided ROS Java framework
- Android framework to support ROS Java in development
- No guest science manager (life cycle of Guest Science apps)
- Localize without external infrastructure (beacons, etc.)
- EKF works with following inputs:
- Sparse mapping with BRISK (regular nav), ~2Hz
- Optical flow ~15Hz
- AR targets (docking)
- Handrail detection (perching)
- Produce 62.5Hz output
- Localization manager allows switching safely between localization modes
- Tools to calibrate intrinsics and extrinsics (IMU to Camera)
- Tools to build maps from monocular vision (SURF + BRISK)
- Tools to test localization performance from rosbag
- Custom visualizer (gViz) for EFK inspection
- Sparse mapping runs only at 2Hz (vision processing + feature matching)
- High distortion limits the usable features
- Handrail localization needs improvements
- No extrinsics calibration between depthcam and IMU
- Better tuning for noise model and "lost" threshold required
- No incremental map building
- No tiling of large maps
- No perched localization (low power localization when perched)
- Provides 4 different motion types:
- IDLE (drifting)
- STOP (zeros velocity, hold position if not externally moved)
- MOVE (moves to given end pose)
- EXECUTE (follows a time/space trajectory)
- Provides 2 motion planners:
- trapezoidal (default)
- QP planner
- Move primitive are position based
- Validation of trajectories: stationary end-point, hard limits (velocity and acceleration) and control frequency
- Velocity control is not allowed
- On-board validation of trajectories against keep-in and keep-out not enabled
- Planner type cannot be changed from ground (DDS)
- Hazard detection not implemented
- Arbitrates commands regarding operating mode and current state
- Sequencer supports plan execution
- Supports essential commands (see list of currently supported commands)
- Plan
- Motion
- Camera management
- System management
- Full command dictionary is not implemented
- Guest Science management not supported yet
- Faults are managed in a spreadsheet, converted to a fault table read by the system
- Heart beat monitor for most nodes
- System monitor framework can trigger responses to published faults
- Very few faults are published
- Leverages ROS framework for on-board framework
- All software stack works on Ubuntu 16.04 on Intel and ArmHF (target platform)
- Dependencies packaged as Debian
- Software updates delivered as Debian
- Unify launch file system supports multiple scenarios, on-robot, simulator or processor in the loop configuration
- Leverages rViz and Gazebo 7 integration
- Improved HTC Vive tracker, calibration procedure and integration for ground truth
- Documentation is incomplete