Skip to main content
Version: FILS English

Fixed Wing RC Drone

A remote controled fixed wing drone

info

Description

The aim of this project is to build a reliable UAV system that includes:

  • The drone itself
  • A flight controller that actuates control surfaces and sends over telemetry
  • The ground station that is used to pilot the drone remotely

Motivation

Commercial RC drones and receiver/transmitter systems are often expensive. The goal is to develop a similar system on a smaller budget with some parts I already have lying around.

Architecture

System Architecture

Log

Weeks 5-6

Ordered necessary hardware components and started the development process of the drone, running simulations and making rough calculations to figure out optimal flight configuration.

Weeks 7-8

Finished 3d design of wing and tail structure.

Week 9

Hardware

The flight controller is designed around a Raspberry pi pico 2W microcontroller which controls the servo motors and brushlless(via PWM) motor responsible for actuating the control surfaces and providing thrust. The microcontroller is further responsible with collecting and sending telemetry data to the ground station via the NRF24L01+ RF module(via SPI). Telemetry data includes battery level and link quality. The battery level will be measured by reading the battery voltage from the balance pins with a voltage divider to protect the sensitive analog pins of the raspberry pi. Reverse polarity protection is added using a P-channel Mosfet.

The Ground Station is centered around a Raspberry pi Zero 2W, who's main purpose is to take input from an XBOX360 controller and transmit it over to the drone. It also displays some telemetry data on the OLED display.

Schematics

kicad_schematic kicad_schematic

Bill of materials

DeviceUsagePrice
Raspberry pi Zero 2Wground station computer_ RON
NRF24L01+ x2RF transmitter/recievers_ RON
OLED 128x64 pixels I2Cdisplay_ RON
raspberry pi pico 2Wmicrocontroller/ flight computer_ RON
servo motor sg90 x4turning control surfaces_ RON
Li-Po, 1100mAh, 11.1V, 60C, 3S1Pdrone power source_ RON
ESC Fly Pro 40Aelectronic speed controller_ RON
Brushless motor A2212/ 1000 KVprovides thrust_ RON
11 x 4.7 inch propellerpropeller_ RON

Software

LibraryDescriptionUsage
embassy-executorAsync task executor for embedded systemsRuns concurrent tasks
embassy-timeTime management and timersHandles scheduling, delays
embassy-rpHAL for RP2350 chipGPIO, SPI, I2C, UART, PWM
embassy-syncAsync synchronization primitivesSwitches between RF receive task and servo task
embedded-hal-asyncAsync hardware abstraction traitsCommon interface for SPI, I2C
embedded-nrf24l01nRF24L01+ radio driverReceiving/sending data
cortex-mLow level ARM Cortex-M supportRequired for Rust on RP2350
cortex-m-rtStartup and reset handlerEntry point for firmware
defmtlogging frameworkDebug output during development
panic-probePanic handlerReadable panic messages
  1. Embassy - Async Rust for Embedded
  2. [course lab]https://embedded-rust-101.wyliodrin.com/