Package Summary

Tags No category tags.
Version 0.7.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/utexas-bwi/concert_scheduling.git
VCS Type git
VCS Version master
Last Updated 2014-05-28
Dev Status DEVELOPED
Released RELEASED

Package Description

This ROS package provides a simple, experimental, resource scheduler for the Robotics in Concert project.

Additional Links

Maintainers

  • Jack O'Quin

Authors

  • Jack O'Quin

Overview

Because different systems require different scheduling policies, the Robotics in Concert (ROCON) framework allows multiple scheduler implementations. The scheduler is a ROS node running on same master as the ROCON Conductor, services and other Solution components.

This concert_simple_scheduler ROS package implements a scheduler node in Python. It uses some infrastructure packages that other scheduler implementations can also use or modify.

ROS interface

simple_scheduler node

This node provides a relatively simple fixed-priority scheduler which allocates resources within each priority on a first-come, first-served basis.

Subscribed topics

rocon_scheduler (scheduler_msgs/SchedulerRequests)

: Scheduler requests. Any ROCON service or application sending messages to the rocon_scheduler topic is called a requester.

concert_client_changes (concert_msgs/ConcertClients)

: ROCON clients known to the Conductor.

Published topics

rocon_scheduler_0123456789abcdef0123456789abcdef (scheduler_msgs/SchedulerRequests)

: Per-requester scheduler feedback. Each requester assigns itself a universally unique identifier and subscribes to a feedback topic using the hexadecimal string representation of its UUID.

resource_pool (scheduler_msgs/KnownResources)

: The status of all ROCON clients currently managed by this scheduler.

Parameters

~topic_name (string, default: rocon_scheduler)

: Common name prefix to use for the request and feedback topics. Since the feedback topic is generated dynamically, it would otherwise be difficult to remap.

Usage

\$ rosrun concert_simple_scheduler simple_scheduler

Protocol

Each scheduler_msgs/SchedulerRequests message describes all resources currently desired by that requester. The status of each resource request is passed back and forth between the requester and the scheduler via scheduler_msgs/Request elements contained in the allocation and feedback topics.

Handling these messages and managing the resource request states can be tricky, because state changes flow over the two topics simultaneously. Both schedulers and requesters should use the concert_scheduler_requests package to perform the appropriate state transitions for each request.

CHANGELOG

Change history

0.7.0 (2014-05-28)

  • Release to Indigo.
  • Example concert scheduler node written in Python.

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged concert_simple_scheduler at answers.ros.org

Package Summary

Tags No category tags.
Version 0.7.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/utexas-bwi/concert_scheduling.git
VCS Type git
VCS Version master
Last Updated 2014-05-28
Dev Status DEVELOPED
Released UNRELEASED

Package Description

This ROS package provides a simple, experimental, resource scheduler for the Robotics in Concert project.

Additional Links

Maintainers

  • Jack O'Quin

Authors

  • Jack O'Quin

Overview

Because different systems require different scheduling policies, the Robotics in Concert (ROCON) framework allows multiple scheduler implementations. The scheduler is a ROS node running on same master as the ROCON Conductor, services and other Solution components.

This concert_simple_scheduler ROS package implements a scheduler node in Python. It uses some infrastructure packages that other scheduler implementations can also use or modify.

ROS interface

simple_scheduler node

This node provides a relatively simple fixed-priority scheduler which allocates resources within each priority on a first-come, first-served basis.

Subscribed topics

rocon_scheduler (scheduler_msgs/SchedulerRequests)

: Scheduler requests. Any ROCON service or application sending messages to the rocon_scheduler topic is called a requester.

concert_client_changes (concert_msgs/ConcertClients)

: ROCON clients known to the Conductor.

Published topics

rocon_scheduler_0123456789abcdef0123456789abcdef (scheduler_msgs/SchedulerRequests)

: Per-requester scheduler feedback. Each requester assigns itself a universally unique identifier and subscribes to a feedback topic using the hexadecimal string representation of its UUID.

resource_pool (scheduler_msgs/KnownResources)

: The status of all ROCON clients currently managed by this scheduler.

Parameters

~topic_name (string, default: rocon_scheduler)

: Common name prefix to use for the request and feedback topics. Since the feedback topic is generated dynamically, it would otherwise be difficult to remap.

Usage

\$ rosrun concert_simple_scheduler simple_scheduler

Protocol

Each scheduler_msgs/SchedulerRequests message describes all resources currently desired by that requester. The status of each resource request is passed back and forth between the requester and the scheduler via scheduler_msgs/Request elements contained in the allocation and feedback topics.

Handling these messages and managing the resource request states can be tricky, because state changes flow over the two topics simultaneously. Both schedulers and requesters should use the concert_scheduler_requests package to perform the appropriate state transitions for each request.

CHANGELOG

Change history

0.7.0 (2014-05-28)

  • Release to Indigo.
  • Example concert scheduler node written in Python.

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged concert_simple_scheduler at answers.ros.org