edith-langer / squirrel_robotino

This repository holds packages for hardware launch files and configuration, as well as the simulation model for starting up the basic layer for operating Robotino

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Travis-CI: Build Status

squirrel_robotino

This repository holds packages for hardware launch files and configuration, as well as the simulation model for starting up the basic layer for operating Robotino

Technical Maintainer: ipa-nhg (Nadia Hammoudeh Garcia, Fraunhofer IPA) - nadia.hammoudeh.garcia@ipa.fraunhofer.de

Build status: [Travis Build Status] (https://magnum.travis-ci.com/squirrel-project/squirrel_robotino)

Contents

  1. Installation Requirements
  2. Execution
  3. Software architecture
  4. Dynamixel servos

1. Installation Requirements:

Debian packages

The robotino-api2 has to be installed to compile the robotino_driver package:

echo "deb http://doc.openrobotino.org/download/packages/amd64 ./" >> /etc/apt/sources.list
sudo apt-get update 
sudo apt-get install robotino-api2

Squirrel packages

This repository requires the repositories squirrel_common, and the private one squirrel_driver, in case you don't have access to our private repostitories you can clone squirrel_substitute

ROS packages

The ROS packages dependencies can be installed with the command:

rosdep install --from-path squirrel_robotino -i -y

2. Execution:

Real robot:

roslaunch robotino_bringup robot.launch robot:='robot_name'

Simulation:

roslaunch robotino_bringup_sim robot.launch robot:='robot_name'

Available robots:

  • alufr-robotino: robotino base + tilt axis
  • ipa-robotino: robotino base + tilt axis
  • robotino: robotino base + arm
  • tuw-robotino: robotino base + pan/tilt axis
  • tuw-robotino2: robotino base + pan/tilt axis + arm + hand
  • uibk-robotino: robotino base + pan/tilt axis
  • uibk-robotino2: robotino base + pan/tilt axis + arm + hand

3. Software architecture

robotino_node: robotino_node

robotino_simulation: robotino_simulation

4. Dynamixel servos

We are using Dynamixel servos in the pan/tilt unit. The ROS package for these is dynamixel_driver. To see if servos are connected, powered and generally ok, call info_dump with a specific baud rate (57142) and with the servo IDs, which should be 1 and 2. If you do not find the servos, you can try up to 254.

> rosrun dynamixel_driver info_dump.py -b 57142 1 2
Pinging motors:
1 ... done
    Motor 1 is connected:
        Freespin: False
        Model ------------------- MX-28 (firmware version: 36)
        Min Angle --------------- 0
        Max Angle --------------- 4095
        Current Position -------- 65
        Current Speed ----------- 0
        Current Temperature ----- 33°C
        Current Voltage --------- 11.7v
        Current Load ------------ 0
        Moving ------------------ False
...

If you get a new servo, its ID will be set to 1. Use change_id, e.g. to 2:

> rosrun dynamixel_driver change_id.py -b 57142 1 2
Changing motor id from 1 to 2...  done
Verifying new id... ERROR: The motor did not respond to a ping to its new id.

Never mind the error. Just call info_dump again to see that the servo now is set correctly.

top

About

This repository holds packages for hardware launch files and configuration, as well as the simulation model for starting up the basic layer for operating Robotino


Languages

Language:Python 55.0%Language:C++ 37.3%Language:CMake 7.4%Language:Shell 0.3%