A new MIRA release is available.


Important note 1

Starting with this release, the dependency checks between binary packages have changed. Instead of requiring a package by using Major.Minor.Patch.BuildID, now only the major and minor version are used. This causes some changes in mirapackage.

Therefore an update of /opt/MIRA (using mirapackage) will not work. We strongly recommend to re-install /opt/MIRA by using the provided installer scripts.


Important note 2

Additionally, this release contains some essential changes in the navigation system! For that reason the following configuration have changed:

If you have included(!) the standard configuration files in your project, nothing must changed. But if you have copied the files to your application, please update the files as follows:

      rename: MaxRotationVelocity -> MaxRotVelocity
      rename: MaxAcceleration -> MaxTransAcceleration
      rename: MaxDeceleration -> MaxTransDeceleration
      new:    MaxRotAcceleration
      new:    MaxRotDeceleration

      Furthermore, the values of the parameters AlphaRotRot, AlphaRotTrans,
      AlphaTransTrans, AlphaTransRot have changed. Please use the new values.

  Pilot.xml (in <Planner class="mira::pilot::DynamicWindow">):
      rename: Size -> TransSize
      new: RotSize

- fixed misleading error message in MIRA_REQUIRE_PACKAGE
- fixed invalid zip file creation for package 'external'
- Building ZIP packages: Reduced dependencies for binary packages to major and minor version number.

- made random generators copyable
- added formulae based color maps (e.g. pm3d, rainbow)
- updated doc on PropertyHints::enumeration

- added Authority constructor and initialize method that can take a fully qualified name including namespace and id
- ChannelRead and ChannelWrite can now provide the underlying Channel via the getChannel() method
- added option to pass recording settings to TapeRecorder via record()
- fixed bug in RemoteAuthority when reading properties from multiple authorities in the PropertyEditor
- removed ResourceUser.h and Resource.h which were unused

- moved TapePlayerWidget and TapeRecorderWidget from miracenter into GUIFramework
- PropertyHints::enumeration now also supports index=value separated pairs to allow negative values, strings and non continuously distributed enums
- enhanced doc on ScrollView class
- fixed compiler warnings

- fixed CMakefile

- fixed zoom functionality for qwt5

- added UnicycleBaseRobotModel as base class for all robot models that use translational and rotational velocities
- added ProbabilisticMotionModel as base class for all probabilistic motion models
- added acceleration and deceleration parameters for rotation and translation
- added class OdometryCorrectionDifferentialDrive

- initial release

- Moved TapePlayerWidget and TapeRecorderWidget to GUIFramework
- Integrated TapePlayer and TapeRecorder
- AuthorityView: fixed color code for subscribed channels in FrameworkStatusView to match the ones used
- AuthorityView: fixed crash in when removing published or subscribed channels

- Integrated TapePlayer into miracenter
- Removed dummy channel
- Fixed bug with (re)storing last played tape

- Integrated TapeRecorder into miracenter
- now using new RecordedChannelInfo class for storing settings

- Fixed bug in locating the log file of packages from a file based repository.
- Don't check mountdir for uninstall operations in InstallOverviewDialog.
- Reduced dependency checks for binary packages.

- moved VideoOutputPlugin base class to separate toolbox
- added option for changing typenames in tapes (removes meta data informations for this channel)

- the tape editor is now a standalone application called "mirataped"
- added export to video function to image renderer plugin
- added context menu entry to edit/change renderer
- renderer dialog now uses combobox to select renderer to match style of codec dialog
- width and height size of thumbnails can now be changed by resizing the height of the rows
- improved zooming using the scroll wheel

- adapted to changes in TapeRecorder

- added 2d visualization for occupancy grid maps
- removed NDTNd mapping

- added parsing of src attribute in script tags to include script sections from local files

- Using our own probabilistic motion model now, instead of the errornous model of the original AMCL
- Using frame id of map as reference frame instead of global frame
- Removed parameter for global and odometry frame

- implemented trajectory rollout
- DWA now prefers the action with the smallest velocity, if there are more than one "best" actions
- prepared interface for satisfaction voting
- refactored Path- and Direction-Objective (moved Heading part)
- HeadingObjective now only votes in target region if there is a position sub task
- added parameters to limit the translational and rotational acceleration
- added XTaskFailed exception
- docking objective added option to throw XTaskFailed when we passed the docking base line and missed the goal to prevent continue driving forever
- DynamicWindow now uses translation and rotation as dimensions instead of left and right wheel
- Pilot all objectives and are now working with unicycle based robot models (differential drive, tricylce, car) - removed dependency to DifferentialRobotModel
- DynamicWindow configuration is now written to channel if there is a subscriber
- Added 2D visualization for DynamicWindow that allows to show overall costs as well as costs for each objective

- removed dependency to DifferentialRobotModel

- Adapted to changes in Pilot

- Charger: added functions for getting a single persistent error or a range of errors
- Adapted to changes in RobotDataTypes - Old configs won't work any more
- Drive and MCU: added functionality for odometry correction
- removed link between odometry and global frame in config

Additional information