Skip to content

pib3

Inverse kinematics and trajectory generation for the PIB humanoid robot.

  • What is pib3?


    A Python library that enables the PIB robot to draw images using its arm. Convert any image to robot arm trajectories.

  • Quick & Easy


    Just three lines of code to convert an image to a trajectory and run it on your robot.

  • Multiple Backends


    Works with real robots and Webots simulation.

  • Intuitive Control


    Control joints using simple percentages (0-100%) instead of radians.

  • Audio System


    Play audio, record from microphones, and use text-to-speech on the robot.

Features

  • Image to Trajectory: Convert any image to robot drawing trajectories
  • Joint Enum: IDE tab completion for joint names (Joint.ELBOW_LEFT)
  • Percentage Control: Use 0-100% values that work across all backends
  • Real Robot Support: Connect via rosbridge websocket
  • Webots Integration: Full simulator support
  • Audio Playback & Recording: Play sounds, record from microphones, text-to-speech
  • Camera & AI: Stream camera images and run AI detection models

Quick Example

import pib3
from pib3 import Robot, Joint

# Convert image to trajectory
trajectory = pib3.generate_trajectory("drawing.png")

# Execute on robot with IDE tab completion
with Robot(host="172.26.34.149") as robot:
    robot.set_joint(Joint.ELBOW_LEFT, 50.0)  # Use Joint enum
    robot.run_trajectory(trajectory)

Installation

pip install "pib3 @ git+https://github.com/mamrehn/pib3.git"

See the Installation Guide for detailed instructions.

Getting Started

  • Installation


    Set up pib3 on Linux or Windows with virtual environments.

  • Quick Start


    Get up and running in 5 minutes with simple examples.

  • Calibration


    Calibrate joint limits for accurate percentage-based control.

Tutorials

Learn how to use pib3 effectively:

API Reference

License

MIT License - see LICENSE for details.