UW Rock - Outline of the work

General idea:

  • mix tutorial-like things (using a simulated system) and reference documentation

Open questions:

  • place of syskit vs. scripts
    • Alex:
      • Ideally syskit should be a super set of the current scripts removing the need to directly use orocos.rb
      • Syskit should be usable even if the system is not modeled (Having no plan is sometimes the best plan ;-))
      • The interface should be similar to the current scripts but a lot more powerful
        • web interface
          • upload action scripts
          • download log files
          • restart / kill
          • error messages
          • ..
        • define actions in case of failures
          • restart deployments
        • start same task network from log files
        • restart network n times with different configure files and collect results
        • display network
        • watchdog (auto restart in case of failure)
  • should we aim for a "setup assistant" a la MoveIt! ?

Setting up a new UW Rock system:

  1. What is UW Rock
    • What is Rock (outline, links to main Rock documentation)
    • What is the place of UW Rock in Rock ?
  1. Setting up UW Rock
    • Installation
      • should we create a package set with some metapackages ? Integrate them in the rock package set ?
    • Initial setup
      • creating a bundle and initial transformer configuration
    • Setting up simulation
      • gazebo
      • MARS
  1. Supported hardware
    • list of supported devices and the corresponding components
    • how to add them to the manifest, build them and make sure they work
      • NOTE: the "make sure they work" should probably be added to the of the relevant packages
  1. Setting up a new underwater system
    • Basic estimation of attitude + depth
      • Supported hardware (MEMS IMUs/FOGs plus depth sensor). Pros and cons of each type of device. Detail the different pressure sensor types (relative vs. absolute, calibration, ...)
      • depth sensor integration. Caveats (measures depth to the water surface, not absolute depth, is it influenced by waves ?). Filtering (?)
      • estimation using MEMS IMUs (builtin IMU filters e.g. Xsens / Rock software filters e.g. slam/quater_ukf -- See with Javier about documentation)
      • FOGs - (Mixing a one-axis FOG with a MEMS IMU in a Rock SW filter)
      • finding the north (caveats with magnetometers, north seeking filter)
    • control loop structure (control/orogen/auv_control)
      • NOTE: the basic attitude estimation is before because it is a really nice to have before tuning. One at least needs the depth sensor.
      • example instanciation for depth & attitude control
    • control loop integration
      • using the joint dispatcher to multiplex/demultiplex the thrusters
    • control loop tuning
      • depth
      • attitude (yaw/pitch/roll)
    • GUI for basic vehicle movement and/or using a joy(pad|stick)
  1. Localization
    • DVL
      • principle of the sensor
      • challenges (bottom lock, water lock)
      • diagnostics using the Rock component(s) (i.e. how to find whether there is a lock, lock quality, ...)
    • USBL (do we have drivers ?)
    • existing software filters
      • diagnostics
    • Phins support
      • will have to talk to MARUM, for now the driver is kept internally there because they've got the documentation through internal contacts.
  1. Trajectory following / Point-to-point navigation

Side subjects:

  • Mission control
  • Sonar
    • Principles: imaging vs. profiling, mechanical scanning vs. multibeam
    • Visualization
      • how to interpret what is displayed
  • Safety: ground avoidance
    • with altimeter
    • with sonar (?)
  • 3D reconstruction using only localization + profiling sonar
    • it's dumb, but it's what most AUVs do (!) and simply looks cool (hey ! you can reconstruct a bottom profile with Rock !)
  • Vision
    • underwater camera calibration
    • log file to images conversion
    • marker localization
Last modified 4 years ago Last modified on 12/11/14 15:23:55