Quadcopter Control System

(Coming soon!)

This blueprint system features a comprehensive physics based quadcopter control system. It includes 4 flight modes typical to real world quadcopter flight systems. Learn to fly a quadcopter!

This control system simulates quadcopter physics using PID Controllers connected to physics thrusters which permit access to the PID gain values allowing you to tune the quadcopter flight modes based on your personal preferences. This system mimics quadcopter controls. The 4 flight modes are:

Manual Mode: This flight mode uses no stabilization algorithms. It gives you direct control over the quadcopter. This is an expert flight mode.

Acrobatic Mode: This flight mode features complete stabilization of quadcopter attitude (Yaw, Pitch and Roll) But allows for 360 degrees of motion in each axis. This is an advanced flight mode.

Stabilized Mode: This flight mode keeps the quadcopter stable horizontally but leaves the throttle control free. This is an intermediate flight mode.

Stabilized Hover Mode: This flight mode keeps the quadcopter stable horizontally and controls the throttle to maintain the altitude of the quadcopter for a “hover” mode. This is a novice flight mode. Also, great for cinematography.

This system relies on gamepad control input.

 

 

 

 

DSLR Camera Gimbal

This DSLR camera gimbal is perfect for stabilizing video on drones or vehicles. The blueprint can easily be used by adding it to any pawn or actor you want.

In addition to stabilization, the camera gimbal can also be manually controlled allowing you to point the camera in any direction you want even while it is stabilized.

This three axis DSLR camera gimbal has two control modes.

Orientation locked: will always keep the camera horizontally stable while facing in the forward direction. It can also be manually controlled on all three axis of rotation, manual inputs are treated as an offset to the stabilization. Allowing you to control the camera and point it in the desired direction while maintaining its relative stabilization.

FPV: The camera will return to the forward facing orientation and will not perform any stabilization.

Action Camera Gimbal

This action camera gimbal is perfect for stabilizing video on drones, vehicles or sports helmets. The blueprint can easily be used by adding it to any pawn or actor you want.

In addition to stabilization, the camera gimbal can also be manually controlled allowing you to point the camera in any direction you want even while it is stabilized.

This three axis camera gimbal has two control modes.

Orientation locked: will always keep the camera horizontally stable while facing in the forward direction. It can also be manually controlled on all three axis of rotation, manual inputs are treated as an offset to the stabilization. Allowing you to control the camera and point it in the desired direction while maintaining its relative stabilization.

FPV: The camera will return to the forward facing orientation and will not perform any stabilization.

 

 

 

 

 

PID Controller

Unrea Engine Marketplace PID Controller

What is a PID Controller?

“A proportional–integral–derivative controller (PID controller) is a control loop feedback mechanism (controller) commonly used in industrial control systems. A PID Controller continuously calculates an error value as the difference between a desired setpoint and a measured process variable and applies a correction based on proportional, integral, and derivative terms” – (Wikipedia) PID Controller

Simply put, PID Controllers are used to reliably automate certain kinds of processes. For example, an aircraft may use PID Controllers in their stability assist systems to maintain orientation in flight. They do this by calculating an error value between a desired setpoint (the pilots commands) and a measured process (the attitude readings form the aircraft sensor data). The PID Controller then outputs the results of it’s calculations to the various control surfaces of the aircraft to reach the desired setpoint.

PID Controllers are also commonly used for stabilizing quadcopters. The PID Controller takes in the angular velocity of the quadcopter from the gyroscope, and stabilizes the flight using the speed of the propellers to control the angle of the quadcopter. The same effects can be achieved in a Blueprint by retreiving a PhysicsBody’s angular velocity and outputting the results of a PID Controller to PhysicsThrusters. PID Controllers are also useful in countless other possible applications!

How to use the PID Controller Actor Component

This PID Controller Blueprint is meant to be used as an Actor Component. You can add it to any actor or pawn that requires some form of simple process automation. Multiple automated processes can be managed in a Blueprint Actor. You must add one PID Controller Component for each process you want to automate.

The main function in the PID Controller Component is the PID function, it must be provided with the following variables:

  • P Gain : The Proportional Gain Term tells the PID Controller to output a value that is proportional to the error value.
  •  I Gain : The Integral Gain Term affects the output based on the magnitude and the duration of the error (the longer an error persists the bigger the output)
  •  D Gain : The Derivative Gain Term “predicts” the error over time by continually calculating the slope of the error. It behaves like a damping value.
  • Set Point is the desired state of your system. This could be mapped to a controller axis or any other variable that changes over time.
  • Measured Point is the current state of your system. This could be the angular velocity of a Physics Body, or the position or rotation of an Actor
  • Min and Max values clamp the output to a desired range.

Examples:

The PID Controller Actor Component addon for Unreal Engine 4 comes with 6 example pawns that all use PID controllers in a number of different ways.

  • The first example: The Balance Cone example demonstrates basic use of PID Controllers using player input as the set point, the rotation of an object as the Measured Point and Add Torque as the output. Two PID Controllers are needed, one for pitch and the other for roll. The result is similar to built in UE4 Physics Constraint, Angular Motor.
  • The second exmaple: The Flying Cube Example uses three PID Controllers, one for each axis of movement. Player input is used as the Set Point, Linear Velocity is used for the Measured Point and PhysicsThrusters are sent to the output.
  • The third example: The Rocket example demonstrates how two PID Controllers are used to keep a rocket ship upright using thrust vectoring, while a third PID Controller maintains the vertical velocity. The first two PID Controllers use the x and y rotation of the rocket ship body as the Measured Point, user input as the Set Point. The output of the PID Controller is sent to a Physics Constraint angular motor between the rocket ship body and the thruster nozzle to affect the target angle of the nozzle. The third PID Controller uses the linear velocity of the rocket ship body as a measured point, user input as the set point and the output is sent to a Physics Thruster.
  • Examples 4, 5 and 6: demonstrate how PID Controllers can be linked, allowing multiple simple automated processes to produce complex automated behaviors. This 3-part example shows, in increasing complexity, how to create a stabilized thruster platform that can easily be programmed to automatically navigate along pre-determined paths. All using physics and thrusters!