Skip to main content

A Python library for controlling AlphaDog robotic dogs

Project description

robodog

A Python library for controlling AlphaDog robotic dogs.

Features

  • Automated ROS connection management
  • Multiple control modes (standing, walking, dancing, etc.)
  • Real-time status monitoring
  • Dynamic parameter configuration
  • Elegant context manager support
  • Comprehensive error handling
  • Type annotation support

Installation

pip install robodog

Quick Start

  1. Ensure your computer is on the same network as the robotic dog
  2. Note the IP address of the robotic dog (default: 10.10.10.10)

Basic Example

from robodog import Dog
from robodog.config import UserMode
import time

# Connect to the dog using default IP
with Dog() as dog:
    # Switch to normal mode
    dog.set_user_mode(UserMode.NORMAL)
    
    # Adjust standing height
    dog.set_parameters({'body_height': 0.25})
    time.sleep(2)
    
    # Restore default height
    dog.set_parameters({'body_height': 0.23})

Core Features

  • Switch between user modes (normal, quiet, kids, etc.)
  • Adjust body posture (height, tilt, etc.)
  • Real-time status monitoring

Check the examples directory for more examples.

User Modes

Available user modes:

  • UserMode.NORMAL: Normal mode
  • UserMode.QUIET: Quiet mode
  • UserMode.KIDS: Kids mode
  • UserMode.EXTREME: Extreme mode
  • UserMode.DANCE: Dance mode
  • UserMode.MUTE: Mute mode
  • UserMode.LONG_ENDURANCE: Long endurance mode

Basic parameters:

  • body_height: Body height (default 0.23)
  • roll: Roll angle
  • pitch: Pitch angle
  • yaw: Yaw angle

Contributing

Issues and pull requests are welcome. For major changes, please open an issue first to discuss proposed changes.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For questions or suggestions:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

robodog-0.1.2.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

robodog-0.1.2-py3-none-any.whl (11.0 kB view details)

Uploaded Python 3

File details

Details for the file robodog-0.1.2.tar.gz.

File metadata

  • Download URL: robodog-0.1.2.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for robodog-0.1.2.tar.gz
Algorithm Hash digest
SHA256 25fc4769144ba6a0d6a8d738febd494807a199bee4ac63dcca5fbbb3bce6a621
MD5 402c49347c8da00a3379489c2fdeb8ed
BLAKE2b-256 2153b6c4128add8c1d063dd94b3596fbb0860fb7f5ba0d7f30844783adbed03b

See more details on using hashes here.

File details

Details for the file robodog-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: robodog-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 11.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.21

File hashes

Hashes for robodog-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 04307ec28317ebf52a7a30eadf4dfe9eb0ffccd154fc430c8feedf4f6841af7b
MD5 d14dedd48e46a5b1c0827d5fb724a5d0
BLAKE2b-256 52f77d662fbc9ea6aa9a7ffcbfc19e97de565221b55ca4894daf52c8caa6fbe7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page