Overview

Flight Systems

image-left

Our flight system is extremely low latency, deterministic, and highly scalable. The core of our flight system is the Flight Control System (FCS), which consists of dual heterogeneous processors: a low level processor, called the Flight Management Unit (FMU), which conducts sensor and actuator operations, filtering, and maintains a hard real time environment; and a high level processor which uses the filtered sensor data to run control loops and compute actuator commands. This approach facilitates determinism, through providing a hard real time system, while maintaining a researcher-friendly development environment.

image-right

The same low level processor used for the Flight Management Unit is the core component of our sensor and actuator expansion nodes. These nodes feature numerous I/O options enabling expansion of the flight system and cleaner aircraft wiring. A unique bus architecture, called the BFS Bus, is used to connect these nodes to the FMU. The BFS Bus uses an overclocked I2C protocol along with two digital lines. The overclocked I2C protocol has an extremely high bandwidth and is capable of transmitting data at a rate of 245 kBytes/s. The digital lines are pulsed at the beginning of the data collection frame and at the actuator output frame. With this approach, data from all sensors on the network of FMU’s and nodes is collected simultaneously. Similarly, all actuator commands on that network are also sent simultaneously. This enables our flight system to be highly scalable, by adding additional nodes to the network, without impacting overall system latency.

We consider this capability critical for research and development environments, where: sensor requirements change often, large numbers of sensors are typically required and often spread throughout the vehicle, and sensing and actuation requirements often change dramatically from one research and development program, or vehicle, to the next. In all of these cases, enabling high levels of scalability with a minimum of effort and no impact on latency while using the same flight system environment, offers huge time and cost efficiencies.

As an example, a functional layout of our flight system on two University of Minnesota research platforms is demonstrated below.

The first platform is a modified Ultra Stick 25e. This research platform is small, hand-launchable, inexpensive, and used primarily to support courses and research involving navigation filters, flight control laws, and flight dynamics estimation.

image-center

The functional layout is relatively simple and, although an expansion node is not strictly needed since the FMU has enough of the required I/O, an expansion node is placed in the aircraft wing. This is done to facilitate much cleaner aircraft wiring and to enable completely swapable wings, in case one wing has a specialized sensor, for instance. Because processing occurs at the sensor and actuator node, these wings are truly swapable, receiving actuator commands in terms of angles and sending data in engineering units (pressures, speeds, altitudes for air data; inertial position and velocity for GPS, etc.)

The second platform is called mAEWing2 and it’s being used to conduct wing shape morphing and flutter suppression research. This research platform is large, about 14 ft wingspan and 40 lbs, and extremely complex. Each wing has six actuators and control surface position sensors. Additionally two IMU’s are located fore and aft at each wing tip and each wing mid-span. On the center body, there are two electric ducted fans, a five hole probe to gather wind angle data, two IMU’s located fore and aft, and a retractable landing gear. Finally, it was desired to collect servo rail voltage data, motor data, and to use a higher quality IMU. On top of the large sensing and actuation requirements was the need to maintain low latency for flutter suppression.

image-center

This system easily scales to meet the needs of a given research and development program or platform. It can accommodate relatively small and simple vehicles up to large and complex systems while maintaining low latency and determinism.

Back to top.

Development Environment

Arduino is used as a development environment for the Flight Management Unit (FMU) and expansion sensor and actuator nodes. Libraries are available for all Bolder Flight Systems supplied sensors and, due to the vibrant Teensy and Arduino communities, many additional sensors are already supported. These processors are extremely powerful and well supported by the community. Software is uploaded via USB and coding is standard C++. Our high level processor runs Linux, offering a very common development environment with packaged libraries and supporting many coding languages (C++, Python, Rust, etc).

This approach enables great performance from our system while maintaining a researcher friendly development environment.

Back to top.

Marmot Flight Control System

image-right

The core of our flight system consisting of dual heterogeneous processors: a low level processor, called the Flight Management Unit (FMU), which conducts sensor and actuator operations, filtering, and maintains a hard real time environment; and a high level processor which uses the filtered sensor data to run control loops and compute actuator commands. The Marmot Flight Control System (FCS) uses a BeagleBone Black as a high level processor and a cape developed around the Teensy 3.6 as the FMU. The Teensy 3.6 processor is a 240 MHz Cortex M4 with a single precision hardware floating point unit. In addition the Teensy 3.6, the FMU includes integrated:

  • Voltage regulation, +6.5V to +36V input voltage, up to 2A of +5V output capacity plus high accuracy measurement of input and regulated voltages
  • MPU-9250 nine axis inertial measurement unit
  • BME 280 pressure, temperature, and humidity sensor
  • SBUS input for measuring and using up to 16 channels of pilot commands from a RC receiver
  • SBUS output for actuating up to 16 channels of SBUS capable servos along with high accuracy measurement of the SBUS servo rail voltage
  • PWM output for actuating up to 8 channels of PWM capable servos along with high accuracy measurement of PWM servo rail voltage
  • One BFS Bus for connecting expansion servo and actuator nodes
  • One I2C and one SPI bus for connecting external sensors, such as the Swift Air Data Sensor
  • Four UARTS, two from the Teensy 3.6 and two from the BeagleBone Black for connecting external sensors such as GPS receivers or radio modems
  • Two GPIO’s, which can be configured for PWM output, digital I/O, or analog input

Specifications

  • Voltage input: +6.5V to +36V
  • Current draw: 350 mA
  • Size: 55 mm x 89 mm x 30.5 mm
  • Weight: 75 g
  • Schematic

Back to top.

Raven Sensor and Actuator Node

image-right

The Raven Sensor and Actuator Node enables the easy expansion of the Bolder Flight Systems architecture to include many additional sensors and actuators as well as simplifying wiring. This node enables our system to easily scale to meet the needs of a given research and development program or platform. It can accommodate relatively small and simple vehicles up to large and complex systems while maintaining low latency and determinism. The Raven Node is designed around the Teensy 3.6 processor, a 240 MHz Cortex M4 with a single-precision hardware floating point unit. In addition the Teensy 3.6, the node includes integrated:

  • SBUS input for measuring and using up to 16 channels of pilot commands from a RC receiver
  • SBUS output for actuating up to 16 channels of SBUS capable servos along with high accuracy measurement of the SBUS servo rail voltage
  • PWM output for actuating up to 8 channels of PWM capable servos along with high accuracy measurement of PWM servo rail voltage
  • One BFS Bus for connecting to the Flight Management Unit or other expansion nodes
  • Two I2C buses for connecting external sensors, such as the Swift Air Data Sensor
  • Two UARTS from the Teensy 3.6 for connecting external sensors such as GPS receivers or radio modems
  • Eight analog inputs, broken out to convenient headers
  • Four digital I/O pins

In addition to adding capability, the Raven Node simplifies wiring, requiring only the BFS bus to run from the Marmot Flight Control System to the Raven Node. For example, with a Raven Node placed in the wing of a fixed-wing UAS, only the BFS Bus and servo power would need to be connected across the wing break.

Specifications

  • Voltage input: +3.6V to +6V
  • Current draw: 125 mA
  • Size: 45 mm x 70 mm x 8.5 mm
  • Weight: 20 g
  • Schematic

Back to top.

Swift Air Data

image-right

The Swift Air Data System provides high accuracy measurements of static and differential pressure in a convenient package that integrates easily with Bolder Flight Systems components.

  • Calibrated and temperature compensated static and differential pressure with digital output over I2C
  • Small overall error within a temperature range of -25C to +85C
  • 14 bit resolution
  • Libraries available to initialize the sensor and collect pressure data at rates of up to 2 kHz

Specifications

  • Voltage input: +3.32V to +6V
  • Current draw: 20 mA
  • Size: 28 mm x 40 mm x 18.5 mm
  • Weight: 10 g


Back to top.

Add On Modules

PWM, SBUS, and Analog

Add on modules are available to break out the PWM, SBUS, and analog signals from the JST GH connectors on the Marmot FCS and Raven Node to convenient 0.1” (2.54 mm) spaced headers, which fit standard servo connectors. These modules can be mounted on the Marmot FCS and Raven Node with 2-56 sized standoffs, which are provided with the module. The PWM and SBUS modules enable up to eight PWM or SBUS capable servos to be actuated. Additionally, the SBUS module includes two SBUS connectors, so a second SBUS module can be daisy chained to actuate up to sixteen SBUS capable servos. Both of these modules have integrated power and ground buses plus a screw terminal for power input. This feature means that servos can be powered from a BEC capable ESC can be connected to the servo headers or an external power supply connected to the screw terminal. These boards support up to +9.9V and 12A of supply for the servos. The Marmot FCS and Raven Node feature integrated servo rail voltage measurement.

The analog add on module breaks out the analog JST GH connector on the Raven Node to convenient 0.1” (2.54 mm) spaced headers, which fit standard servo connectors. This module features an integrated +3.3V and ground rail to facilitate easy integration of potentiometers (i.e. for control surface position or wind angle measurement). Up to eight channels of analog input are supported.

Specifications

PWM

  • Supports up to 8 servos
  • Voltage input: up to +9.9V
  • Current draw: up to 12A
  • Size: 22 mm x 30 mm x 12 mm
  • Weight: 4 g

SBUS

  • Supports up to 8 servos per module, up to 16 servos by daisy chaining two modules
  • Voltage input: up to +9.9V
  • Current draw: up to 12A
  • Size: 22 mm x 30 mm x 12 mm
  • Weight: 4 g

Analog

  • Supports up to 8 channels of analog input (+0V to +3.3V)
  • Voltage supply: +3.3V
  • Size: 22 mm x 30 mm x 12 mm
  • Weight: 2 g

Back to top.

VectorNav

VectorNav VN-100 and VN-200 inertial measurement units can be added on to the Marmot FCS for use cases where more accurate inertial data is desired. This module can be mounted on the Marmot FCS with 2-56 sized standoffs, which are provided. The VN-100 and VN-200 IMU’s are integrated with SPI for high speed data transfers and a low level sensor driver is available to setup the IMU’s and collect data.

Specifications

  • Supports VN-100 and VN-200 IMU’s
  • Size: 30 mm x 37 mm x 5 mm
  • Weight: 5 g


Back to top.