AUTinyDane

AUTinyDane: Small Robotic Dog Development Project

An open-source, affordable, and customizable 4-legged robotic dog. Originally developed as a 5th-semester project at the Department of Mechanical and Production Engineering at Aarhus University, this project covers the full development process from conceptual design to a finalized, functional quadruped. Click the image below to see the robot walking:

Watch the Dog in Action

System Overview

AUTinyDane is designed to be highly accessible, operating on a unified, single-board architecture that handles all high-level planning and low-level execution in an open-loop configuration.

System Diagram

Hardware Architecture

The robot operates entirely on a single-controller setup:

Software Architecture

The pure Python software stack manages everything from user inputs to gait generation and hardware interfacing:

Project Structure (Important Files)

AUTinyDane/
├── src/                    # Core robot operational code
│   ├── Kinematics.py       # Inverse kinematics calculations
│   ├── HardwareInterface.py# Serial/I2C communication to Servos
│   ├── Configuration.py    # Physical dimensions and robot parameters
│   └── PS4Controller/      # DualShock 4 input mapping
├── legacy/                 # Original planning modules
│   ├── GaitPlanner.py      # Locomotion state machine and timing
│   ├── StancePlanner.py    # Stance phase calculations
│   ├── SwingPlanner.py     # Foot swing trajectory generation
│   └── gait_simulator.py   # Visualizer for gaits before physical deployment
├── tools/                  # Utility and calibration scripts
│   ├── calibrate_servos.py # Servo offset and range tuning
│   └── ServoNeutral.py     # Script to hold servos at neutral position
├── tests/                  # Module testing
│   └── Test_kinematics.py  # Validation for IK models
├── run_robot.py            # Main execution script
└── requirements.txt        # Python package dependencies

Installation

  1. Clone the repository:
    git clone [https://github.com/jenslajordmunk/autinydane.git](https://github.com/jenslajordmunk/autinydane.git)
    cd autinydane
    
  2. Install the required Python dependencies (it is recommended to use a virtual environment):
    pip install -r requirements.txt
    

    Run The robot

    Remember to calibrate for the current assembly of the robot in ServoCalibration.py, then: Power on the Raspberry Pi system, connect the PS4 controller via Bluetooth, and execute the main loop:

    python run_robot.py
    

View CAD Model in Onshape

License

This project is licensed under the terms of the MIT License. See the LICENSE file for details.