Skip to content

escobrio/AveroRL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 

Repository files navigation

AveroRL

"Reinforcement Learning Controller for the Omnidirectional MAV Avero" Bachelor Thesis

Repository structure

  • src/GymEnvironment.py is the main file, it contains a gymnasium environment of the Avero MAV to simulate the MAV's dynamics and to train and evaluate a flying policy with the the PPO reinforcement learning algorithm from stable_baselines3.
  • src/ForwardKinematics.py is used to calculate thrustforce and torques depending on actuator inputs.
  • src/Quaternion.py implements Quaternion math from Robot Dynamics lecture. It also contains a function to compare the performance to SciPy's rotation object.
  • src/ExtractMotorMessages.py is a script to extract actuator commands (fanspeeds and nozzleangles) from a real in-flight rosbag.
  • data/ppo_mav_model.zip is the trained RL model.

The MAV

During the 1-year focus project AVERO in 2024 at the Autonomous Systems Lab at ETH Zürich, 8 Mechanical Engineering students developed an omnidirectional, safe-to-interact-with MAV. It has 9 actuators: 3 Electric Ducted Fans and 6 Servo Motors used to control Swivel Nozzles for thrust vectoring. Stable flight was acheived with a model-based PID Controller, as can be seen on the official Avero Website. This bachelor thesis wants to explore an alternative way to control this overactuated aerial robot using an Artificial Neural Network Policy trained with Reinforcement Learning algorithms in a simulated environment. The goal is to stably hover the MAV in all 6 DoF of space.

Avero_Rendering_76

Coordinate System Convention:

CoordinateSystemAvero

Weight and Inertia Tensor:

Inertia_MAV

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages