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,
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.
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
a demo model based on the Gazebo ROS RRBot demos
includes a JointTrajectoryAction demo
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.
Related Publications
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]