Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 

Repository files navigation

Introduction

This is the official repository for Fullerton College's Applied Engineering Club (AEC) UAV Project (2024). Welcome applied engineers!

What's the UAV Project?

The UAV Project is Fullerton College's entry into a design, simulation, and flight competition with other schools. AEC members have decided to submit a VTOL (vertical take off landing) Unmanned Aircraft Vehicle (UAV).

Why should I Participate?

Participating in clubs gives students the experience needed to build resumes and stand out from the competition when applying for universities or jobs. Additionally it builds lifelong skills and friends that are intrinsically valuable.

How do I Get More Involved?

Due to the public nature of the internet, this information is limited to Fullerton College students only. Team Leaders for the UAV Project should be contacted for details.

Where Can I Learn More?

The club discord and in person primarily. See answer above.

Getting Started

This section is designed to simplify onboarding. Please be aware of the structure of Project "Teams" as well, covered shortly.

Software Team

Working on the Software Team effectively requires extensive knowledge of multiple software stacks that have not entirley been listed, let alone documented. I will continue to update this documenation. Please refer to Discord for more up-to-date info.

Project Docs

Markdown is the file format of choice for UAV Project Docs because it's easy-to-learn and well-supported on Github. Please use pandoc docs/*.md -o README.md before submitting a pull request if it modifies any files in docs/. Links to high-quality resources are located throughout this document, including begineer resources such as the Github basics. Please use the links!

Dependencies

Most Linux distros running a desktop environment should work for beginning the UAV Project, however Fedora or Ubuntu will be assumed. On Windows installing virtualization software such as VMware or Virtualbox is necessary. WSL2 does not yet work with these instructions! 12GB RAM or more is highly recommended for virtualization. To reduce RAM requirements consider installing either Lubuntu or Xubuntu.

After installing a supported distro, you can install docker using these instructions for Fedora or the Ubuntu instructions here. On Fedora you must run sudo systemctl start docker after every reboot or instead just configure docker to start upon boot. This is unnecessary for Ubuntu.

3D acceleration is unsupported on Docker for the UAV Project. You will need to setup PX4 Autopilot to run Gazebo (Classic) under OpenGL by running Ubuntu 20.04 or higher natively. This is especially important for simulating Target Detection and Package Dropoff (Challenge). Documentation has not been created at this time. # Teams

This following sections more clearly define the UAV Project Teams and the overall internal project structure. We have been divided into 2 teams--Software and Mechanical. Be mindful of the Project organization and goals. In order to effectively manage this project we will want to be informed properly. Please stay in touch with your team leaders and try not to overload any single AEC member.

Software Team

In this section we begin to cover Intermediate topics of importance for Software Team members. All software team members and team leaders should be aware of what is documented here.

Python 3

Python 3 will likely be used throughout our project. Check out the official docs.

QGroundControl (QGC) Mission Planner

QGroundControl or simply QGC is a frontend for mission planning and partially visualizing simulations. AppImage installation is recommended for Ubuntu and Flatpak for Fedora.

Running PX4 Autopilot in Gazebo Classic Simulator

docker run -it --net=host -v ~/src/PX4-Autopilot:/src/PX4-Autopilot/:rw --name=sim px4io/px4-dev-simulation-focal:2023-06-26 bash
cd src/
git clone https://github.com/PX4/PX4-Autopilot.git
cd PX4-Autopilot/
HEADLESS=1 make px4_sitl gazebo-classic_standard_vtol

A Little More about Docker

Only the first command in the above codeblock is outside the container. Leave the container by running exit. Note that docker run creates a new container. To execute an existing container use docker exec. Also, stopped containers require running docker start. Combining these on Fedora (skip first command for Ubuntu/Debian) a workflow might look something more like this.

sudo systemctl start docker
docker start sim
docker exec -it sim bash
cd src/PX4-Autopilot/
HEADLESS=1 make px4_sitl gazebo-classic_standard_vtol
exit

Mechanical Team

The mechanical team works with the physical components, electronics, and 3D design of our VTOL UAV, etc.

Here's our current model

We may or may not be covering mission planning on this team.

This is our components list.

We will be running PX4 Autopilot on the Pixhawk (with missions uploaded at the least).

It will be connected to a Raspberry Pi running ROS with ROS nodes for Obstacle Avoidance and Target Detection using OpenCV as a companion computer.

Competition

The UAV competition is broken into 3 submissions/due dates.

Design

May 2024

Simulation

May 2024

Gazebo and Gazebo Classic are the 2 main simulators under consideration. Gazebo Classic runs on older Ubuntu (such as 20.04) and Gazebo on newer (22.04).

Flight

June 2024, both manned and unmanned (3 challenges).

Challenges

The UAV Competion has 3 challenges (1 - easiest to 3 - hardest)

  1. Waypoint Navigation
  2. Obstacle Avoidance
  3. Target Detection and Package Dropoff

We will need to complete these Unmanned and Manned.

Waypoint Navigation

This is relatively straightforward. Check out QGS.

Obstacle Avoidance

check out its github

We will need to figure out a way to commuicate a 3D Point Cloud (i.e. sensor_msgs::PointCloud2) with our sensors (Camera and perhaps an ultrasonic sensor) and ROS nodes. One idea is Rviz. Research nodes please!

Target Detection and Package Dropoff

This will require OpenCV from the rpi camera module (wide angle plus lens).

Offboard mode is under consideration.

This is a starting point

About

VTOL simulation for UAV project

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors