Open
Description
Ingenuity Flight Simulator Feature
Overview
Implement a high-fidelity flight simulator for the Mars Ingenuity helicopter, incorporating realistic collective and cyclic control, accurate aerodynamic modeling, and Mars environmental conditions.
Features
-
Realistic Helicopter Simulation
- Implement collective pitch control for altitude adjustment
- Implement cyclic control for pitch and roll maneuvers
- Calculate lift and drag forces for each rotor blade individually
- Account for blade element theory in force calculations
- Consider Mars atmospheric conditions in aerodynamic modeling
-
Automatic Altitude Control
- Implement PID controller for collective input based on the desired altitude input from the user
-
Mars Environmental Factors
- Implement Martian gravity (about 3.711 m/s²)
- Simulate thin Martian atmosphere and its effect on aerodynamics
- Create realistic Mars environment mesh with rocks
- Implement Mars dust storm simulation
-
Sensor Support
- Altimeter for precise altitude measurements
- RGB Camera for visual feedback
- Inertial Measurement Unit (IMU) for attitude and acceleration data
-
Wind Simulation
- Implement realistic wind effects on the helicopter
- Allow for variable wind conditions
-
Telemetry and Visualization
- Provide real-time telemetry data (altitude, attitude, velocities)
- Provide a gz bridge to ROS 2 for the helicopter pose topic. Convert this to TF topic in ROS 2
- Integrate with RViz for 3D visualization of the helicopter's motion
Implementation considerations
-
Realistic Helicopter Simulation
- Implement as a Gazebo plugin. This should be used for different helicopter configuration. For example single rotor helicopters plus a tail rotor.
-
Automatic Altitude Control
- Implement as Gazebo plugin. Subscribe to the /desired_altitude topic from user and publish to the /angle_of_attack topic for the optimal control of the helicopter altitude.
- Tune the PID parameters to reach the best tracking performance