Difference between revisions of "ROS"
(One intermediate revision by the same user not shown) | |||
Line 8: | Line 8: | ||
[https://doc.openrobotino.org/ROS robotino_rest_node] - Contains the robotino_rest_node. | [https://doc.openrobotino.org/ROS robotino_rest_node] - Contains the robotino_rest_node. | ||
|} | |} | ||
+ | |||
+ | ==Overview== | ||
+ | There are two nodes available for Robotino. | ||
+ | * robotino_node | ||
+ | * robotino_rest_node | ||
+ | robotino_node depends on the [[API2]] package. robotino_node is a C++ node and needs to be compiled. robotino_rest_node is connecting to Robotino's [[Rest_api|restapid]], which provides a [https://de.wikipedia.org/wiki/Representational_State_Transfer RESTful API]. robotino_rest_node is pure [https://www.python.org/ Python]. | ||
==Installation== | ==Installation== | ||
Your Robotino needs to be updated to at least image >= 4.0.0 from [https://doc.openrobotino.org/download/tinycore/robotino4image/ here]. Make sure you updated to the latest [https://doc.openrobotino.org/ChangeLog/daemons.txt robotino-daemons] package. You need to install python-requests package. | Your Robotino needs to be updated to at least image >= 4.0.0 from [https://doc.openrobotino.org/download/tinycore/robotino4image/ here]. Make sure you updated to the latest [https://doc.openrobotino.org/ChangeLog/daemons.txt robotino-daemons] package. You need to install python-requests package. | ||
− | Download the latest [https://doc.openrobotino.org/ROS | + | Download the latest [https://doc.openrobotino.org/ROS source] and integrate it into your catkin workspace. |
==Test== | ==Test== |
Latest revision as of 16:01, 8 March 2019
Contents
Introduction
The Robot Operating System ROS hosted and maintained by Willow Garage is a free meta operating system for mobile robots. This page describes the adaption of Robotino's REST-API to ROS. |
Package linksrobotino_rest_node - Contains the robotino_rest_node. |
---|
Overview
There are two nodes available for Robotino.
- robotino_node
- robotino_rest_node
robotino_node depends on the API2 package. robotino_node is a C++ node and needs to be compiled. robotino_rest_node is connecting to Robotino's restapid, which provides a RESTful API. robotino_rest_node is pure Python.
Installation
Your Robotino needs to be updated to at least image >= 4.0.0 from here. Make sure you updated to the latest robotino-daemons package. You need to install python-requests package.
Download the latest source and integrate it into your catkin workspace.
Test
Drive Robotino
Start the omnidrive script
rosrun robotino_rest_node omnidrive.py
The omnidrive script listens to the /cmd_vel topic. If no parameter is given the script sends received cmd_vel data to 127.0.0.1. If your ROS runs on a different machine than Robotino you need to specify Robotino's IP address.
rosrun robotino_rest_node omnidrive.py ROBOTINO_IP_ADDRESS
Publish to /cmd_vel to move Robotino forward with 0.1m/s. linear x,y is foward,sideward velocity and angular.z is rotational verlocity.
rostopic pub -r 10 /cmd_vel geometry_msgs/Twist '{linear: {x: 0.1, y: 0.0, z: 0.0}, angular: {x: 0.0,y: 0.0,z: 0.0}}'
Hardware
What you really need to use ROS in a meaningful way is a laser rangefinder for Robotino.
Documents
RWTH Aachen: Lab Course Model-Based Robotics Software Development Implementation Notes