Dog Copter
Goal
The overall goal of DogCopter is to build a fully autonomous robot capable of seamlessly transitioning from a walking quadruped robot to a drone. This fusion of a drone and robotic dog was inspired by innovations in robotic dogs (Boston Dynamics' Spot), flying cars, and drones. A versatile robot like such can effortlessly traverse rocky land and take flight to climb objects otherwise insurmountable by a quadruped robot. This improves the battery life and close-search capabilities of a drone, while maintaining its ability to traverse any terrain.
System Overview
The DogCopter project aims to integrate various hardware and software systems across Electrical, Mechanical, and Aerospace components. Our objective is to balance weight and capabilities to optimize both flight and walking times. The propellers must be protected during "Dog mode," and the legs must have enough torque and structural integrity to support DogCopter when in "Drone mode."
DogCopter will operate autonomously and via remote control, featuring three main control modes: Drone, Dog, and Transition. In Drone mode, DogCopter functions like a standard drone, utilizing a Pixhawk connected to four thrust motors, along with a Raspberry Pi and 4D-Lidar for both remote and autonomous control. The Raspberry Pi will also send commands to the ODrives (another microcontroller for motor control), which are better suited for driving the BLDC motors. Dog Mode primarily relies on the Raspberry Pi, four ODrives, 4D-Lidar, and 12 motors (three per joint) to control walking movement. Transition mode involves a predefined animation for shifting between modes (refer to the references for the animation).
General Criteria and Constraints:
Drone Mode: Minimum flight time of 10 minutes.
Dog Mode: Minimum walking time of 20 minutes.
Normal Use Case: Battery life of at least 15 minutes.
Thrust-to-Weight Ratio: 1.5
Total Weight: Less than 20 pounds.
Hardware Criteria and Constraints:
Ensure propellers are protected when in Dog Mode.
Ensure seamless transition between Drone and Dog modes.
Ensure propellers are well-spaced for optimal control.
Ensure kinematics in Dog Mode can navigate rough terrain.
Software: Controls
Develop remote controls for both Drone and Dog modes.
Software: Path Planning
Develop pathfinding algorithms for both Drone and Dog modes.
Ensure compliance with airspace restrictions during flight.
Implement obstacle detection and avoidance (using computer vision).
Given the complexity of this project, DogCopter is divided into several subteams:
Aerospace
The Aerospace team is primarily responsible for designing the propellers and creating an aerodynamic body. From Spring 2022 to Spring 2023, the team accomplished the following:
Built a thrust stand.
Tested propellers.
Created CAD models of the ideal design.
Run an Ansys Simulation on a propeller.
Mechanical
Mechanical is in charge of the design of the robotic leg joints, and the chassis. They will work with various materials such as carbon fiber, metal, and PLA plastic to create robotic legs that are strong enough to support the weight of the robotic dog and the thrust of the drone motors attached to the legs. Mechanical will also work with stress testing software to ensure the robot is strong enough to support the weights and torque
From Spring 2022 till Spring 2023, we designed our mechanisms, and made a working mini robotic dog model to test the kinematics
Electrical
The Electrical team ensures that all internal components fit within DogCopter and that the electronics send proper signals throughout the body, providing the correct voltages to components. They work with various electrical components, such as lidar/vision-based sensors, Arduinos, batteries, BLDC motors, and motor drivers.
From 2022 to 2023, the team designed a circuit for DogCopter, ordered parts, and tested the BLDC motors.
Controls
DogCopter will need to devlop controls for the
The Controls team is responsible for developing the control systems for DogCopter. Before booting up, DogCopter will be in its folding position. Once activated, it will prop itself up and retract the skids if that design is chosen. The walking algorithm, navigation, and remote control, will activate to navigate ground terrains such as stairs and buildings. When switching to Flight mode, the skids will deploy, the arms will adjust to a T-pose, and the walking algorithms will be replaced with flight control, navigation algorithms, and flight controller UI. The controller UI will override both the flight and walking navigation systems, allowing the operator to take manual control.
Vision:
DogCopter's primary vision system will use a Unitree 4D Lidar. The data from the Lidar will be processed by the Raspberry Pi, which then sends commands like "move forward" to the Pixhawk/ODrives, which execute the movements. In Spring 2023, the team obtained the Lidar and conducted multiple tests with it.
Simulation
The Simulation team will test DogCopter in a virtual environment. The goal is to create a simulated environment to test in and to generate a map of that environment using our vision system. The exact simulation tools and environment are still being debated, but current options include:
Gazebo: Virtual physics environment.
Rviz: Vision system/data processing.
Moveit: Physics realism for DogCopter.
Webots: All-in-one simulation environment.
Simulink: For algorithms and controls.
ROS: Framework linking all components.
Joint State Publisher: To move joints in the virtual environment.
The simulation should be as realistic as possible, with the model in URDF format
Optimization
To help determine the ideal parts for fulfilling our requirements, we developed an optimization program similar to linear programming. This program was developed from Fall 2022 to Fall 2023.
Future work
The team has identified the following key objectives to advance towards the overall project goal:
Electrical Testing: Ensure all electrical components function as intended.
Leg Fabrication and Testing: Complete the construction of a DogCopter leg, and test its movements along with the transition animation from Drone mode to Dog mode.
Simulated Motion Testing: Evaluate the kinematics and obstacle detection capabilities in a simulated environment.
Fabrication of Additional Components: Manufacture additional legs and the main body of DogCopter.
Vision and Controls Integration: Seamlessly integrate the vision system with the control mechanisms.
Comprehensive Testing: Conduct a series of tests, including transition functionality, battery life during flight and walking, and various safety assessments.
Final Benchmark Test: Execute a final benchmark test to verify that all systems and components are fully operational and meet the project requirements.
Resources
Inspiration / Other Projects
Dogcopter But with wheels instead of legs Morphobot
Bipedal Walking/Flying robot LEONARDO
James Bruton OpenDog series
References
DogCopter folding animation - here
Fusion 360 Tutorial : here
Fusion 360 Playlist : here
Lidar + Rasberry PI : here
Setting up a Pixhawk : here
Our robot will have drone motors and propellers at the bottom of each of its legs. By rotating its legs outwards from the hip, it will transform from a quadruped to a drone. The walking and flying aspects will be controlled by semi-independent control systems. It will be equipped with a Lidar system and cameras which will be processed by computer vision code to enable autonomous navigation.
During Fall 2024, we will be working on finishing our small-scale quadruped robot, getting our electronics systems set up to communicate with motors and each other, and setting up our software systems to use data from the Lidar and camera and working on modeling a full-scale robot.
See the subpages to learn about what each subteam works on. Further onboarding and introduction will be done during the first few meetings.
Last updated