Giter VIP home page Giter VIP logo

ros_transitions's Introduction

title subtitle author urlcolor colorlinks
ROS2-Pytransitions State Machine Package
README
blue
true

This ROS2 package provides a mechanism for connecting pytransitions state machines to ROS2.

A state machine can be defined as follows:

[A]n abstract machine that can be in exactly one of a finite number of states at any given time. [A state machine] can change from one state to another in response to some inputs; the change from one state to another is called a transition. [A state machine] is defined by a list of its states, its initial state, and the inputs that trigger each transition.

The core functionality of this package is a wrapper that publishes information about state transitions and relevant inputs (i.e., triggering events) to the ROS2 graph. This information can then be used by other ROS2 nodes. In the context of a ROS2 application, this can be useful for coordinating multiple processes with the internal state of a system.

Getting started

This package can be added to any ROS2 workspace. Once the workspace has been built, the easiest way to get started is probably to review the introductory example.

Testing and benchmarks

Limited automated tests and performance benchmarks are included with this package.

License

Copyright 2022-2023 Neuromechatronics Lab, Carnegie Mellon University (a.whit)

Maintained by: a. whit. ([email protected])

This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/.

Please see LICENSE.txt.

ros_transitions's People

Contributors

ricmua avatar

Stargazers

Felipe Mendonça avatar Vladislav Plotnikov avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.