Skip to content

airo-ugent/airo-teleop

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IDLab-AIRO Teleop

This repo contains two packages to enable teleoperation of (a.o.) robot systems at IDLab-AIRO. The first, airo-teleop-devices, abstracts away driver code and gives "uninterpreted" output of the teleoperation systems. The second, airo-teleop-agents, makes use of airo-teleop-devices and provides common bindings between the outputs of the teleoperation systems and robot hardware used at IDLab-AIRO. Keeping the "uninterpreted" teleop systems in a separate package allows to deploy them quickly for purposes beyond common robot manipulation experiments.

Installation

The packages in this repo are not yet on pypi, to use them:

  • Clone the repo
  • In your environment, run pip install -e <path-to-repo-clone>/airo-teleop-devices (Analogous for airo-teleop-agents.)
  • In your environment, run pip install -r <path-to-repo-clone>/airo-teleop-devices/requirements.txt (Analogous for airo-teleop-agents.)

Everything below this is auto-generated from airo-teleop-agents/README.md and airo-teleop-devices/README.md. To update it, edit those files and run python scripts/generate_readme.py locally, or rely on the GitHub Action which will regenerate this README automatically on changes.


airo-teleop-devices (from airo-teleop-devices/README.md)

IDlab-AIRO teleop devices driver package

This package provides readout of multiple teleop systems. The philisophy of this package is to provide readout of the raw teleop dimensions, abstracting away the driver code. This way, the teleop systems can also be deployed for purposes beyond robot manipulators, without including the dependency on e.g. airo-mono. The package airo-teleop-agents uses airo-teleop-devices to define specialised, ready to use teleop agents, that additionally map the raw teleop readouts to usable robot actions.

Gello

Gello teleoperation arms are kinematic copies of the robot arms they are intended to control. This allows to copy over joint positions and hence control directly in joint space.

SpaceMouse

The SpaceMouse is a desktop device that captures 3D forces and torques, featuring also a set of buttons. This device is particularly suited for control in tool space.

Installation is described on this webpage. For Ubuntu:

sudo apt-get install libhidapi-dev`
echo 'KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0664", GROUP="plugdev"' | sudo tee /etc/udev/rules.d/99-hidraw-permissions.rules`
sudo usermod -aG plugdev $USER`
newgrp plugdev`

and restart your computer.

ValueError: Could not open SpaceMouse: Failed to open device is known to be solved by unplugging and replugging the spacemouse in the USB port, or by trying a different USB port and going back to the first.


airo-teleop-agents (from airo-teleop-agents/README.md)

IDlab-AIRO teleop agents package

This package provides common bindings between teleop devices (airo-teleop-devices) and manipulators (airo-robots). These are intended to be plug-and-play, e.g. for a teleoperation demo. For example: if you want to control any UR arm and parallel position gripper with a Gello teleoperation arm, you'd instantiate the Gello4UR_ParallelGripper class from gello_teleop_agents.py. See also the examples folder.

Executing the action that a TeleopAgent returns is done outside of the scope of the TeleopAgent class. This is because the user must be free to use different movement commands (e.g. high frequency servoing vs discrete, low frequency moves), to change the order of the UR and gripper move command, to decide whether to .wait() for a gripper and/or UR command, ... .

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%