From c40d2f9463d0c488cddc0ab01a5d76c5af2b62c6 Mon Sep 17 00:00:00 2001 From: Hanzhe Teng Date: Wed, 4 Apr 2018 00:28:38 -0700 Subject: [PATCH] V1.4 release --- README.md | 100 ++++++++++++++++++++++++---------------------------- package.xml | 2 +- 2 files changed, 47 insertions(+), 55 deletions(-) diff --git a/README.md b/README.md index 63e7523..6ac6a14 100644 --- a/README.md +++ b/README.md @@ -1,30 +1,29 @@ # pioneer_mrs ## 1. Introduction -ROS package for Pioneer 3-AT Multi-Robot Systems. +A ROS package for Pioneer 3-AT Multi-Robot Systems. + +This is a flexible experimental platform for multi-robot systems (MRS). Should there be any problem, please feel free to contact maintainer [@hanzheteng](https://github.com/hanzheteng) or open a new issue in this repository. - + - +
  • Support scientific computing library (numpy, scipy, etc.) for your algorithms
  • +
  • Support two kinds of localization methods (odometry, VICON)
  • +
  • Support two kinds of robot-level simulators (MobileSim, Gazebo)
  • +
  • Visualization is under developing
  • -
    ROS package Description (Capabilities) Description (Features) Platform Maintainer
    pioneer_mrs
      -
    • Control by linear velocity of the handpoint of robots (a linear system, see demo)
    • -
    • Task 1: multi-robot trajectory tracking (circular shape, demo)
    • -
    • Task 2: distributed multi-robot formation control
    • -
    • Support both MobileSim and Gazebo simulators
    • -
    • Localization done by either simulators, odometry, or VICON motion capture system
    @hanzheteng
    @@ -124,56 +123,39 @@ Note: `robot#` represents any robot label from 1 to 5. /robot#/RosAria
    (rosaria package) /robot#/RosAria/cmd_vel - /robot#/RosAria/pose -
    /robot#/RosAria/... - receive velocity commands and execute + /robot#/RosAria/pose + SDK bridge to communicate with microcontrollers - /robot#/handpoint_node + /robot#/pioneer_server /robot#/cmd_vel_hp
    /robot#/RosAria/pose +
    /robot#/gazebo/odom
    /vicon/robot#/robot# /robot#/RosAria/cmd_vel
    /robot#/get_pose - translate hand-point commands - - - /robot#/trajectory_node - /robot#/mission_state -
    /robot#/trajectory -
    /robot#/RosAria/pose -
    /vicon/robot#/robot# - /robot#/cmd_vel_hp - receive trajectory commands and execute + pose server for pioneer robots /robot#/algorithm_node - /robot#/mission_state -
    /robot#/comm_state -
    /robot#/RosAria/pose -
    /vicon/robot#/robot# + /robot#/comm_state
    /robot#/get_pose - /robot#/cmd_vel_hp - execute designed algorithm + /robot#/cmd_vel_hp +
    /robot#/Formation + execute pre-designed algorithm /commander/teleop - --- + /robot#/Formation /robot#/mission_state
    /robot#/cmd_vel_hp commander & teleoperation node - - /commander/trajectory_cmd - --- - /robot#/trajectory - send designed trajectory info - /commander/comm_state_cmd --- /robot#/comm_state - create a communication graph between robots + publish communication graph info @@ -217,23 +199,6 @@ Note: `robot#` represents any robot label from 1 to 5. Vector3.msg only use 2D velocity (z=0) - - /robot#/trajectory - float64[] positions -
    float64[] velocities -
    float64[] accelerations -
    float64[] effort -
    duration time_from_start - JointTrajectoryPoint.msg - see wiki - - - /robot#/mission_state - bool trajectory -
    bool algorithm - MissionState.msg - set mission start or stop - /robot#/comm_state bool[5] state @@ -262,12 +227,39 @@ Note: `robot#` represents any robot label from 1 to 5. + +### 3.4 Action Definition + + + + + + + + + + + + + +
    Graph Resource Name Format Action File Name Description
    /robot#/Formation uint32 order +
    --- +
    string name +
    float32 x +
    float32 y +
    --- +
    string name +
    float32 x +
    float32 y
    Formation.action set a goal of total steps +
    get feedbacks of positions in each step
    + ## 4. Update Log - V1.0 (Jan 4, 2018) Basic multi-robot control framework - V1.1 (Jan 15, 2018) The MRS control framework works well with new features, but the algorithm node need to be updated. - V1.1.4 (Feb 5, 2018) The algorithm node works well on both MobileSim simulator and empirical experiments. The Gazebo simulator still has problems to be resolved. - V1.2 (Feb 18, 2018) The multi-robot system works well on MobileSim simulator, Gazebo simulator and empirical experiments (localization done by either odometry, Vicon system, or Gazebo simulator.) - V1.3 (Mar 17, 2018) Add offset adjestment to the existing formation based on optimal-point algorithm; Launch files may have some problems because of improper launch sequence. (Senior Design project done in this version) +- V1.4 (Apr 4, 2018) Make this framework more concise and efficient. (Rewrite communication mechanism by client-server RPC; rewrite algorithm node by python and support scientific computing library; apply actionlib for desired missions; add dynamic reconfigure) ## 5. Debug FAQ Most of the time, you can use `roswtf` command to diagnose your problem. diff --git a/package.xml b/package.xml index 2b4af7f..c3c1b76 100644 --- a/package.xml +++ b/package.xml @@ -1,7 +1,7 @@ pioneer_mrs - 1.3.0 + 1.4.0 The pioneer_mrs ROS package for Pioneer 3-AT Multi-Robot Systems