Avionics Project List

AV1: Antennas

Description

Antennas are devices that allow wireless communication when connected to a radio. Due to the dangerous nature of a rocket getting ready to launch, all the processes must be handled far away from the rocket. Also, to recover the rocket, GPS information must be transferred to the recovery team while the rocket is flying and landing. To achieve that, ground station antennas and rocket antennas communicate with each other to transfer commands to the rocket and get crucial information regarding the conditions of the rocket (altitude, air pressure, tank pressure, GPS coordinates, etc.)

Inside the antennas team, we design, simulate, prototype, test and repeat! You will also get to learn radio frequency (RF) circuit design, how to tune antennas, RF-related simulation software, printed circuit board (PCB) design, and how to use various tools such as vector network analyzers (or even 3D printers and machining tools) to make your antennas. Being an antenna member will allow you to learn how to find balance between interference, size, cost, and complexity.

Keywords

Antenna design, RF circuitry design, electricity and magnetism, electromagnetics, PCBs, electrical engineering, telecommunications, wireless, hardware, simulation

Timeline

Medium to long-term project (1-2+ years), continuous

Requirements

  • Being a good team player

  • Enjoying prototyping and testing

  • Enjoying researching and playing around with simulations

  • Familiarity with electricity and magnetism is a plus

  • Familiarity with circuits is a plus

Resources

Lots of resources on RF Theory: https://www.qsl.net/va3iul/ 

AV2: Radios

Description

The MRT Radios Project Team designs systems that allow the rocket to communicate to our team on the ground. This means sending data to the rocket while it’s on the launch pad, and also receiving sensor data (altitude, pressure, etc…) while the rocket is in the air. Where antennas handle the physical transmission and detection of radio wave signals, radios are responsible for modulating these radio waves, encoding them with binary data in order to establish wireless communication between two far away points.

As part of the Radios project, you will be exposed to all aspects of electrical engineering, including hardware and software design, electronics, RF theory, and many more subfields. You will be trained on tools such as LTSpice, Altium Designer, and SolidWorks. Our projects include but are not limited to:

  • SRADio: Designing and building the MRT’s first fully student researched and designed radio system

  • Bluetooth Ground Station: Upgrading our current Ground Station with Bluetooth technology in order to establish wireless communication between the operator and the ground station. 

  • Fintennas: In conjunction with the antennas team, we are developing rocket fins that have integrated antennas, allowing for more efficient use of resources

Keywords

Radios, wireless, telecommunications, electrical engineering, design, prototyping, hardware

Timeline

Medium to long-term project (1-2+ years), renewed yearly

Requirements

  • You want to learn about all things electrical engineering (hardware and software)

  • You want to simulate a real-world professional engineering experience

  • You are motivated to get your tasks done and complete interesting projects

Resources

Lots of resources on RF theory: https://www.qsl.net/va3iul/

AV3: Flight Computer Software

Description

The Avionics subteam is dedicated to equipping the rocket with telemetry recording, establishing reliable communication between the rocket and the team, and controlling critical events such as launch and parachute ejection. The Flight Computer Software project aims to design the logic governing the rocket's actions and ensure seamless interaction among different subsystems.

Our flight computers are entirely student-researched and developed (SRAD), utilizing a combination of C and C++ to program STM32 microcontrollers on custom PCBs. This approach grants us significant control over the capabilities of our computers.

As a member of the Flight Computer Software project, you'll have the opportunity to build upon our extensive codebase, developed by students like yourself. Collaborating with peers, you will navigate popular DevOps practices and tools like Git, Github, and Obsidian. The codebase involves interfacing with sensors through various communication protocols like SPI, I2C, and CAN, leveraging interrupts, threads, and concurrent programming, and mastering memory management and pointers. We prioritize efficiency and reliability, with maintainability and readability as close companions. Beyond code implementation, you'll actively participate in formulating and implementing validation procedures, ensuring the flight computer passes rigorous programming tests. Note that you’ll have the opportunity to work on code that will fly on the rocket next summer. More R&D oriented projects will take place on longer time spans. 

By joining this project, you'll delve into the exciting realm of rocketry avionics, gaining valuable experience, and contributing to the success of our rocket team.

Keywords

Embedded development, STM32, microcontrollers, drivers, C/C++, software

Timeline

Long-term project (2+ years), continuous

Requirements

  • Good autonomous learning skills

  • Good problem solving skills

  • You have a passion for programming

  • Familiarity with Git version control, C/C++ programming language, or experience with commercial microcontrollers is a plus

Resources

C basics: https://www.tutorialspoint.com/cprogramming/index.htm  

Getting started with STM32: https://www.youtube.com/watch?v=hyZS2p1tW-g 

Writing clean code: https://www.youtube.com/playlist?list=PLmmYSbUCWJ4x1GO839azG_BBw8rkh-zOj 

Git: https://learngitbranching.js.org/

AV4: Flight Computer Hardware

Description

The Flight Computer Hardware project is responsible for the design of the hardware of the Flight Computer system (i.e. the brain of the rocket). The Flight Computer systems’ goal is to control and manage the different systems across the rocket, from the engine to the ejection system. This is done thanks to several printed-circuit boards (PCB), which are the green boards you find in everyday electronics devices. This is also done thanks to various sensors and diverse peripherals. Based on a series of STM32 microcontrollers, our Flight Computer system offers a compact telemetry and flight control solution that can perform a variety of tasks while having a low power consumption.

This year, our goal is to develop the 6th generation of the Flight Computer system, which features more functionality while having a compact size. This raises a challenge in designing circuits and PCB layout.

As part of the Flight Computer Hardware team, you will participate in developing the hardware for the flight computer through lots of prototyping and PCB design. These tasks will involve research & development, but no worries, you’ll have a good load of testing and iterating to balance between theory and practice. You will develop skills in circuit design, circuit simulation, soldering, and hardware debugging! In terms of future application, these skills will help you understand the very basics behind the physical aspect of most, if not every, electronic device you use everyday, from turning on a light to the basic hardware of your smart devices!

Keywords

Embedded development, STM32, microcontrollers, prototyping, PCBs, hardware

Timeline

Long-term project (2+ years), continuous

Requirements

  • Experience with commercial microcontrollers (eg. have worked with Arduinos)

  • Understanding of basic circuitry and common circuit components 

  • Classes (you have taken/are taking/want to take these classes): ECSE 324, ECSE 421, ECSE 444

AV5: Ground Station User Interface

Description

The ground station GUI allows the team to monitor and interact with the various sensors, valves and systems in the rocket. The GUI accomplishes this by parsing data received from transceivers (Radios project) into graphable data while also having the ability to transmit data to the rocket in order to actuate motors or open/close valves. 

As part of the GUI project, you will be exposed to important aspects of software development such as:

  • Version control tools (GitHub)

  • Opportunity to learn Java (important backend language)

  • Collaboration over a common code base 

  • Widely used IDEs (IntelliJ)

Keywords

Java, coding, user interface, UI, ground station, software

Timeline

Short-term project (1 year) with constant future refinements

Requirements

  • Basic programming knowledge

  • You want to learn Java and GUI design

  • You have the motivation to complete tasks and interesting projects

Resources

JavaFX getting started: https://openjfx.io/openjfx-docs/ 

Java tutorials: https://www.tutorialspoint.com/java/index.htm 

AV6: Flight Computer Simulator

Description

The team cannot afford any failures in our Flight Computers, as they are integral to the rocket's operation and any malfunction could have a critical impact on the entire mission. Being a large project for both hardware and software, it can be prone to errors and failures. We must therefore conduct extensive testing in order to prevent any issues from happening at critical times.

The Software and Hardware-in-the-Loop simulator will provide the Flight Computers with a realistic flight environment, providing them with simulated sensor data whilst interacting with the Flight Computers. This is the most effective testing that can be done on the Flight Computers without launching a rocket, and can be invaluable for catching issues that would otherwise go unnoticed.

We are also looking to provide the team with a Graphical User Interface (GUI) to use the simulator in a more intuitive manner, and turn this into an executable.

As part of this project, you will aid in the simulation of different sensors used on the flight computer, learn about and work with the code of the simulator, and/or help build features of the GUI.

Keywords

Simulations, testing, recovery, Python, coding, software

Timeline

Long-term project (1-3 years) with future refinements

Requirements

  • Problem-solving skills

  • A drive/desire to learn

  • Nice-to-haves: Python basics, Git version control basics

Resources

Python Programming Basics: https://pythonbasics.org/

Hardware-in-the-loop: https://www.mathworks.com/help/physmod/simscape/ug/what-is-hardware-in-the-loop-simulation.html

Software-in-the-loop: https://piketec.com/software-in-the-loop-testing/ 

AV7: Motorized Antenna at Ground Station (MAGS)

Description

To improve the performance of our radios/antennas systems, directional antennas are often used on the ground. These types of antennas improve signal reception but have to be pointed in the direction of the rocket. However at high altitude, the rocket is very hard to see and correctly pointing antennas by hand becomes a hard task. The goal of this project is to build a motorized mount for the antenna, which will point directional antennas at the rocket automatically, by calculating the direction of arrival (DOA) of radio waves.

This is a brand new project, and there is therefore a lot of R&D and design decisions to take. There are multiple aspects to this project: building a motorized mount (materials, choice of motors), writing software to control it (controlling the motors, dealing with DOA errors and variations), and direction finding of the rocket’s radio signal (digital signal processing, spatial signal processing).

Keywords

RF, direction finding, digital signal processing, control systems, software, hardware, antenna

Timeline

Medium term project (2 years), with future refinements

Requirements

  • Experience with different types of motors

  • Experience/interest in control systems

  • Experience/interest in RF

  • Experience/interest in digital signal processing

  • Experience in electronics project(Raspberry Pi, Arduino) is preferred

Resources