Package Summary

A meta-Package containing the CHRIS ROS Modeling tool suite.

  • Maintainer Status: Alpha Release
  • Author: William R. Drumheller <william.drumheller.16 AT cnu DOT edu>,

    • David C. Conner <robotics AT cnu DOT edu>

  • Maintainer: David C. Conner <robotics AT cnu DOT edu>

  • License: BSD
  • Source: git https://github.com/CNURobotics/chris_ros_modeling.git

Overview

The CHRIS ROS Modeling tool suite consists of Python-based ROS modeling tools that can be used to capture software models of an existing ROS Workspace and running ROS Deployment.

The captured models can be loaded, manipulated, and exported for the purpose of documentation (e.g. Interface Control Documents (ICDs), Snapshots in time) or for use in Model-Integrated Computing (MIC) or Model-Driven Engineering (MDE). Future work will expand upon integrating this tool suite into a larger MIC environment.

The extracted models include the ROS Computation Graph in DOT format,

alt text

and YAML-based text files documenting various ROS entities such as Nodes, Services, Topics, and Actions. An example Action Node YAML for the RRBot demo is shown below. alt text

The CHRIS ROS Modeling tool suite consists of the following Packages:

  • chris_ros_modeling

    • ROS Specification and Entity metamodel classes and tools for marshalling / unmarshalling instances of these metamodels (model)
  • chris_package_modeler

    • tool to capture ROS Specification models of the user's existing ROS Workspace
  • chris_ros_snapshot

    • tool to capture ROS Entity models from currently running ROS Deployments
  • chris_haros_model_merger

    • tool to merge CHRIS Models with HAROS Models in an attempt to create unified and comprehensive models

  • chris_rrbot_modeling

Currently, the CHRIS ROS Modeling tool suite is being developed using Python 2.7 for compatibility with ROS 1.0.

Future work will convert to Python 3 and then focus on expanding the tool suite to support ROS 2.0.

William R. Drumheller and David C. Conner. Online system modeling and documentation using ROS Snapshot. Journal of Computing Sciences in Colleges. 36, 3 (October 2020), 128–141.

  • William R. Drumheller and David C. Conner, Documentation and Modeling of ROS Systems, IEEE Southeast Con 2021, Atlanta, GA, 2021, to appear.

Installation

The CHRIS ROS Modeling tool suite is available on GitHub and can be cloned into your existing ROS workspace by running the following commands:

roscd
git clone https://github.com/CNURobotics/chris_ros_modeling.git

For further installation and usage instructions, please follow the instructions available for the CHRIS ROS Modeling tool suite on GitHub.

Tutorials

The chris_rrbot_modeling Package will help the user to explore the functionality of the CHRIS ROS Modeling tool suite by providing a demonstration of the JointTrajectoryAction interface to the RRBot from Gazebo ROS Demos.

See the GitHub page for more details.

Report a Bug

Use GitHub to report bugs or submit feature requests. [View active issues]

Wiki: chris_ros_modeling (last edited 2021-02-28 01:59:07 by DavidConner)