Shrediquette - the award-winning multirotors by William Thielicke
My micro air vehicles are a hobby project. Everything is designed from scratch (software, hardware, electronics, frames). They perform very well in aerobatics ("acro mode"), but it can also hover on their own ("hover mode").
This project was started in 2008. The goal was to learn something about programming, electronics and control loops. Because I always need a cool project to learn new things, it was clear that something that can fly had to be built.
The project started as a "tricopter-only" project, but as I wanted to build smaller vehicles with more payload capacity, I decided to make some quadrotor, hexacopter and Y6 hexacopter firmwares too. My main interest is to build very small MAVs that fly as good as larger ones (or even better) and that can be controlled by wireless video link. I also experimented with autonomous flight in GPS-denied areas (video), and with GPS assisted autonomous hover (video).
-- William
Contact: Shrediquette @ g m x . d e --- All content published under CC Attribution-Noncommercial-Share Alike 3.0 Germany
The project started as a "tricopter-only" project, but as I wanted to build smaller vehicles with more payload capacity, I decided to make some quadrotor, hexacopter and Y6 hexacopter firmwares too. My main interest is to build very small MAVs that fly as good as larger ones (or even better) and that can be controlled by wireless video link. I also experimented with autonomous flight in GPS-denied areas (video), and with GPS assisted autonomous hover (video).
-- William
Contact: Shrediquette @ g m x . d e --- All content published under CC Attribution-Noncommercial-Share Alike 3.0 Germany
My next FPV racing machine...
Here are some renderings of my latest frame concept. It has a very small frontal area and should reach high speeds. The diagonal motor distance is 210 mm and I will use 5.5 inch propellers (Graupner Raceprop or C-prop).
Explanation video: FPV camera tilt compensation
This is a follow up to the previous post on tilt compensation.
I made a video where I explain what FPV camera tilt compensation is needed for, how it works and how it looks like in flight:
https://youtu.be/gXeaINFpvow
In FPV camera tilt compensation, control inputs (RC transmitter --> FC) are transformed to the local frame of reference of the camera.
The control outputs (FC --> motors) may additionally be transformed to the local frame of reference of the propellers (if e.g. the props are tilted or the FC is mounted at an angle - use parameters like 'board align' for control output transforms).
I made a video where I explain what FPV camera tilt compensation is needed for, how it works and how it looks like in flight:
https://youtu.be/gXeaINFpvow
In FPV camera tilt compensation, control inputs (RC transmitter --> FC) are transformed to the local frame of reference of the camera.
The control outputs (FC --> motors) may additionally be transformed to the local frame of reference of the propellers (if e.g. the props are tilted or the FC is mounted at an angle - use parameters like 'board align' for control output transforms).
Some thoughts on FPV camera tilt compensation
Almost every 'serious' FPV racer is tilting the FPV camera up in order to have a better image during fast flight. Angles between 10 and 35 degrees seem to be common. E.g. I am using 25 degrees. But tilting the camera with respect to the multirotors horizontal plane has a side effect on the controls (maybe you never thought about it, because you are so used to flying with this side effect).
Just to make the effect easier to visualize: Imagine you drank a beer too much and now you suddenly think you are Charpu, Mr Steele or Mattystuntz. You mount your FPV camera with 90 degrees tilt (pointing up vertically) because your best friend told you that all the pros do it like this. In this case, your roll and yaw control will be interchanged: When you move your RC sticks to roll left, your copter will roll left, but looking through the FPV camera, it appears as if you are yawing to the left! And if you move your RC sticks to yaw left, your copter will of course yaw left, but the image from the FPV cam looks like you would roll to the right!
The strength of this effect is somewhat proportional to the camera tilt angle. But already at 25 degrees it can clearly be noticed. It doesn't really make sense to have control in the copters frame of reference when flying FPV. It does make more sense to shift the frame of reference to the FPV camera and to eliminate the effect of camera tilt: Moving the roll stick of the transmitter should roll the camera image only, it shouldn't add some undefined amount of yaw.
Luckily, it is easy to compensate these effects (you might even do this in your transmitter by adding some mixers). I however hardcoded this in my latest flightcontroller firmware. The code is like this:
'Roll_input' is the roll rate that you steer with your remote control.
'Yaw_input' is the yaw rate that you steer with your remote control.
'Roll_output' is the setpoint for the multicopters roll rate.
'Yaw_output' is the setpoint for the multicopters yaw rate.
I am not familiar with other flight controllers, but I guess this feature might have been implemented already in some of them. Otherwise it really should be implemented...!
Here is a video explaining the above:
http://shrediquette.blogspot.de/2016/01/explanation-video-fpv-camera-tilt.html
Just to make the effect easier to visualize: Imagine you drank a beer too much and now you suddenly think you are Charpu, Mr Steele or Mattystuntz. You mount your FPV camera with 90 degrees tilt (pointing up vertically) because your best friend told you that all the pros do it like this. In this case, your roll and yaw control will be interchanged: When you move your RC sticks to roll left, your copter will roll left, but looking through the FPV camera, it appears as if you are yawing to the left! And if you move your RC sticks to yaw left, your copter will of course yaw left, but the image from the FPV cam looks like you would roll to the right!
The strength of this effect is somewhat proportional to the camera tilt angle. But already at 25 degrees it can clearly be noticed. It doesn't really make sense to have control in the copters frame of reference when flying FPV. It does make more sense to shift the frame of reference to the FPV camera and to eliminate the effect of camera tilt: Moving the roll stick of the transmitter should roll the camera image only, it shouldn't add some undefined amount of yaw.
Luckily, it is easy to compensate these effects (you might even do this in your transmitter by adding some mixers). I however hardcoded this in my latest flightcontroller firmware. The code is like this:
Roll_output = cos(camera_tilt) * Roll_input - sin(camera_tilt) * Yaw_input'camera_tilt' is the angle (in radians) that your FPV camera is tilted up with respect to the propeller disks. It is a constant. I am using 25 degrees of camera tilt (= 0.436 radians).
Yaw_output = sin(camera_tilt) * Roll_input + cos(camera_tilt) * Yaw_input
'Roll_input' is the roll rate that you steer with your remote control.
'Yaw_input' is the yaw rate that you steer with your remote control.
'Roll_output' is the setpoint for the multicopters roll rate.
'Yaw_output' is the setpoint for the multicopters yaw rate.
I am not familiar with other flight controllers, but I guess this feature might have been implemented already in some of them. Otherwise it really should be implemented...!
Here is a video explaining the above:
http://shrediquette.blogspot.de/2016/01/explanation-video-fpv-camera-tilt.html
Labels:
circuit,
competition,
firmware,
flip,
fpv,
HowTo,
looping,
Manual,
motors,
Propellers,
quad rotor,
quadrocopter,
Racing,
scorpion,
Shrediquette,
source code,
Stability
Aerodynamics in racing multirotors! Part 2.
Introduction
In part 1 of this article on multirotor aerodynamics, some ideas on how to reduce the aerodynamic drag of racing multirotors was presented. I was also designing a tilted-body racing quadrotor called "Shrediquette DERBE". There were not yet any flow measurements of multirotors flying at high speeds. Therefore, I had to make quite a number of assumptions on the aerodynamics of a racing copter. This time, I am presenting some flow measurements, along with some potential optimizations for the next version of the "Shrediquette DERBE"Methods
Recently, I had the opportunity to do some flow visualizations in a large wind tunnel at the Bremen university of Applied Sciences / Dept. of biomimetics (which is the place where I worked one year ago). I brought the Shrediquette DERBE and mounted it inside the wind tunnel. Prior to the measurements, I did some tests to determine a realistic flight speed and the appropriate pitch angle.The measurements were performed at a pitch angle of 45 degrees with the motors running at full throttle (control loops are all turned off completely). Wind speed was set to 30 m/s. The Shrediquette DERBE was equipped with Graupner C-Prop 5.5x3", 4S 75C, Ultra 2806 2300 kV.
DERBE mounted inside the wind tunnel |
Particle image velocimetry: Setup consisting of high-power laser, high-speed camera and particles in the fluid. |
PIV measurement with a laser sheet |
I measured the flow at four different locations (labelled A/B/C/D):
Top view of a multirotor. The green lines show the locations where flow velocities were determined. |
This image sequence shows the laser sheet in position B. |
Results
The flow over the main frame is mostly horizontal - hence a tilted-body concept really makes sense. This concept aims to align the main frame parallel with the flow to reduce the frontal area and hence the aerodynamic drag (which is proportional to frontal area). The following image shows the flow velocities around the main frame (position A). The arrows indicate the direction, and the colors indicate the relative velocity magnitude:Warm colors: Flow > 30 m/s
Cool colors: Flow < 30 m/s
Dark red: shadows / no measurements possible
PIV measurement around the main frame (position A): The flow is mostly horizontal in this plane. |
The velocities in measurement position B are shown in the following image. Note the high flow acceleration (warm colors) behind the front propeller. Also note that the rear propeller does not accelerate the flow at this measurement position - it is almost passive.
Measurement position B: Only the blades that move forward through the plane (= the front propeller) generate thrust. |
Together with the results of the other measurement positions (not shown here), we can safely assume that only parts of the propeller (disk) generate thrust in high speed forward flight. This is very similar to the aerodynamics of large helicopters, where also the advancing and retreating blades experience very different flow velocities and generate different amounts of lift and drag). The importance of this effect (sometimes also called P-factor), is linked to the advance ratio of the propeller. Earlier, I actually thought that this effect might be negligible on multirotors, but this is clearly not true. A multirotor in fast forward flight only creates noteworthy lift in the green areas shown in the following image. In the centre of the red areas, the propellers might even create additional drag:
Conclusions
What does this mean for our racing multirotors? Tilted bodies make sense, as the flow is really horizontal at the main body. Vertical arms (as in the Shrediquette DERBE, see image below) are however problematic for two reasons:- The flow will only be parallel to the arms at the front propellers. Because only these propellers do really accelerate the flow in fast flight. Below the rear propellers (the flow is not accelerated here), the flow will actually hit the arms from the side - which causes a large drag penalty.
- Multirotors use their motors to rotate around the pitch / roll / yaw axes. The force (or better: the moment) to rotate around the roll and pitch axis is induced by generating differential thrust between opposing propellers. Very large forces can be generated around these axes. As an extreme example: If both front motors run at full throttle, and the rear motors are off, then the pitch moment (moment = radius * force) could be around M = 0.12 meters * 12 Newtons = 1.4 Nm. But the force around the yaw axis is much lower because it is induced only by the torque of the motors - not by the thrust. If we assume the propellers to have a lift-to-drag ratio of 10:1 and a diameter of 5 inch, then the moment around the yaw axis is about 20 times lower than the moment around roll or pitch axes. Due to their orientation, vertical arms can however generate large forces around the yaw axis which can not be compensated by the small torque of the motors. In order to have a better control around yaw, it makes more sense to not rotate the arms.
Do vertical arms make sense...? Not really... |
Shrediquette 0815, a standard racing quadrotor that I designed for training and to learn more about lightweight and rigid plastic construction. |
How to measure top speeds of multirotors
How fast can your multirotor fly? The simplest solution for this question would probably be to attach a GPS device (tracker / OSD) to your multirotor and to read out the maximum speed.
But hey, this is pretty imprecise...!
GPS devices suffer from measurement noise (e.g. through signal degradation), which becomes problematic on rapidly accelerating objects like our multirotors. More advanced GPS chipsets (e.g. u-blox LEAx) have the option to choose between different filtering modes (e.g. pedestrian, car, airborne), that make some assumptions on the maximum accelerations and movements of the sensor and filter the results accordingly. That will most likely improve the accuracy of the measurements, but still noise might remain. Here is an interesting article on GPS speed measurements, which states that the classical methods to calculate velocities in GPS receivers have an accuracy in the order of a few meters per second, due to significant noise.
I was recently attaching a pretty good GPS logger to a quadrotor (HUMs with Cobra 2204, 75C 4S 1300 mAh, C-prop 5x3). There seemed to be hardly any wind. The "Top Speed" value reported by the tracker was 113 km/h. But this value includes the influence of measurement noise and wind, and it is therefore not precise.
The only way that I know of how to deal with these problems and how to get the real (air)speed out of a GPS logger is to do the following:
The true airspeed of my copter was calculated to be 95 km/h, which is 16 % lower than the maximum speed reported by the logger. And I must add that this was a day where I felt hardly any wind. Still the wind velocity was about 10 km/h according to the GPS measurements. More wind will of course make the difference even bigger.
So if you hear people saying "Hey, my quadrotor is flying 150 km/h!", then be careful until you saw the measurements...
Today, I'll hopefully measure the top speed of my Shrediquette DERBE, let's see what comes out...!
I was recently attaching a pretty good GPS logger to a quadrotor (HUMs with Cobra 2204, 75C 4S 1300 mAh, C-prop 5x3). There seemed to be hardly any wind. The "Top Speed" value reported by the tracker was 113 km/h. But this value includes the influence of measurement noise and wind, and it is therefore not precise.
The only way that I know of how to deal with these problems and how to get the real (air)speed out of a GPS logger is to do the following:
- Fly full speed at a constant height, on a straight line and against the wind for at least 300 meters.
- Then, turn around and fly the same straight line but in the other direction.
- Download the data from the logger and calculate the average of each of these two straight line runs (this will remove or at least attenuate noise).
- Now, calculate the average of the two runs (this will remove the influence of wind and yield the true airspeed).
The true airspeed of my copter was calculated to be 95 km/h, which is 16 % lower than the maximum speed reported by the logger. And I must add that this was a day where I felt hardly any wind. Still the wind velocity was about 10 km/h according to the GPS measurements. More wind will of course make the difference even bigger.
So if you hear people saying "Hey, my quadrotor is flying 150 km/h!", then be careful until you saw the measurements...
Today, I'll hopefully measure the top speed of my Shrediquette DERBE, let's see what comes out...!
Shrediquette DERBE ... almost there...
Here are some images of my racing copter. Some soldering of the ESCs etc. still has to be done. I am also waiting for some resistors and capacitors for my flight controller to arrive... But I guess the maiden flight will be this weekend :-D.
Aerodynamics in racing multirotors!
Why future racing copters really should look different.
by Dr. William Thielicke aka Willa aka Shrediquette
ABSTRACT
In this article I try to demonstrate why FPV racing multirotors need to look different. Some small modifications to the frame would (in theory…!) result in 70 % higher top speed! All that needs to be done is to align the arms parallel to the propeller flow, and to tilt the main body of the copter by about 40 degrees. I am presenting a very simple and robust racing copter design that incorporates these ideas. Furthermore, I am calculating the aerodynamic drag of different copter concepts using basic equations. The aim of this article is to make you realize the importance of aerodynamics and to stimulate people to design more innovative racing frames.
INTRODUCTION
Until recently, multirotors were mainly used as a “hovering device” and the top speed of these copters did hardly matter. Now, multirotor racing has become popular and all competitors are seeking for very fast and agile multirotors.
Apparently, the aerodynamics of multirotors have been neglected in the past (with a very few exceptions), but aerodynamics actually become very important at increasing flight velocities. Just as a quick example with numbers that are realistic for copter racing: A quadrotor that weighs 0.7 kg and flies at a pitch angle (alpha) of 45 degrees has an aerodynamic drag that is also 0.7 kg (about 7 N) – which is clearly very significant. A large portion of the force that is generated by the motors is therefore just “wasted”! If this drag could be somehow reduced, then a racing copter could fly a lot faster (or it could fly longer at the same speed).
AERODYNAMICS OF A RACING COPTER
The real flow of the air around a full multirotor has not yet been measured to the best of my knowledge. But it is very likely, that the flow around the multirotor can be divided into two distinct parts: The flow around the arms, and the flow around the main body: Directly under the propellers, the flow is pretty fast (between 100 and 200 km/h in racing copters) and it is pretty much perpendicular to the propeller disks. Just as in this picture showing the flow of a large propeller:
Usually, the flow is perpendicular to the propeller disk. The faster a propeller turns in relation to the flight speed ("advance ratio"), the more constant is the angle of the flow. |
The flow that is hitting the main body or frame is mostly horizontal, as it is hardly influenced by the propellers: It is mainly exposed to the flow velocity that results from forward flight (I however really need to verify these assumptions in a windtunnel or with in-flight measurements, I'll do that asap and report the results here).
HOW TO ENHANCE AERODYNAMICS?
It would make a lot of sense to reduce the drag of the arms below the propellers, and to reduce the drag of the main body of the racing copter. My first and simple idea to achieve this was to tilt the motors forward, and to design an aerodynamic canopy. These ideas were implemented in the “Shrediquette Gemini” in 2013 (which was later produced by Team-Blacksheep).
Some force measurements in a wind tunnel revealed that these two features reduced the drag of the copter by 14 – 40% (depending on the pitch angle).
My next idea was to tilt the body instead of the propellers. The goal was to align the body with the oncoming, horizontal flow, which will significantly reduce the aerodynamic drag. If the arms are aligned parallel to the propeller flow (= perpendicular to the propeller disk), the drag will be further minimized. My HEXO+ design (which was used in a Kickstarter project too) realized the idea of a tilted body.
The tilted body concept was subsequently ported to my next frame, the “Shrediquette QRC5” FPV racing copter:
Recently, I realized that a frame like the QRC5 is not crashproof enough for everyday FPV racing. Therefore I recently finished a “classical” FPV racing copter design that incorporates the idea of a tilted body and arms that are aligned parallel to the propeller flow. The “Shrediquette DERBE” is probably as crashproof and light as conventional racing copters, but it has much less aerodynamic drag.
The following image nicely illustrates the two main sources of drag as introduced earlier, and how drag is minimized in the Shrediquette QRC5 and the Shrediquette DERBE. The idea is to minimize the frontal area of the copter at typical pitch angles (about 50 degrees in FPV racing), and to minimize the area under the propellers.
The main body of the Shrediquette DERBE is tilted by 40 degrees. |
The following image nicely illustrates the two main sources of drag as introduced earlier, and how drag is minimized in the Shrediquette QRC5 and the Shrediquette DERBE. The idea is to minimize the frontal area of the copter at typical pitch angles (about 50 degrees in FPV racing), and to minimize the area under the propellers.
Three different concepts: Comparison of frame area (green) and area of the arms under the propeller (blue). |
CALCULATING THE BENEFIT OF ENHANCED AERODYNAMICS
The aerodynamic effects and the performance of these different frame concepts can be approximated by applying some relatively basic equations. I did the calculations in Matlab (source code here) with a numerical, iterative method. I am sure there’s an analytical way to solve the equations, but rearranging these equations would take me much more time than just letting Matlab do all the work for me…
Here is how the aerodynamic drag, and the top speed of three different copters (standard, QRC5, DERBE, each with the same motors, propellers and weight) are calculated. The numbers that I am using a suitable for MN1806 2300kV motors with 4S and 5x4” propellers:
The most difficult part of the calculations is to approximate the thrust that is produced by the motors. Thrust decreases linearly with flight speed (if the rotational speed of the motors would be constant) until it goes down to zero at some flight speed. Thrust at different flight speeds is not so easy to measure, therefore I am using an equation that seems to fit experimental data from a wind tunnel reasonably well. I am however planning to do real windtunnel measurements of the propeller performance in forward flight very soon.
Furthermore, I am assuming the flow to be perpendicular to the propeller disk below the propellers. The main body of the copter experiences flow that is purely horizontal in this simplified calculation.
The copter is set to a pitch angle (alpha) of 1 degree and full power is applied to the motors. The horizontal drag of the main body is calculated from the dorsal and frontal area of the main body at alpha, together with a drag coefficient of 1 (which is a reasonable approximation for a classical racing copter frame) and a horizontal velocity.
Additionally, the drag of the arms needs to be calculated and subtracted from the available total thrust: The flow velocity in the jet of the propeller is (based on the equations already mentioned above) approximated to be about 150 km/h and independent of the flight speed. A drag coefficient of 1.5 is assumed. To give a number already: The drag that is created by the arms of the “standard racing copter” at full throttle is 6 Newtons (about 0.6 kg)! This is equal to the static thrust of one motor…!
With the remaining thrust, I am calculating the horizontal and the vertical force component at the current pitch angle of 1 degree.
Now, the horizontal velocity is increased step by step until the drag equals the horizontal force component. If this is the case, then the pitch angle is increased by one degree and the calculation starts from the beginning. At each increase of the pitch angle, I am checking whether the vertical force component is larger than the weight of the copter (as a side note: I am completely ignoring the vertical velocity of the copter as I am only interested in the final solution where drag equals horizontal force AND weight equals vertical force).
At a certain pitch angle, the vertical force is not larger than the weight anymore. At this point, the calculation stops and both the pitch angle and the velocity of the copter are printed.
Here are the results:
Standard racer | Shrediquette QRC5 | Shrediquette DERBE | |
Max. tilt angle [deg] | 38 | 29 | 34 |
Top speed [km/h] | 107 | 178 | 170 |
The numbers for the “standard racer” seem pretty realistic, although I am quite sure that the top speed is always overestimated. It is very likely that there are additional sources for drag on a copter that were ignored in my simplified assumptions, and that the hypotheses on thrust vs. flight speed could be improved. However, I am doing the same errors in the calculations of all three copters, therefore the above results represent the correct trend: Aerodynamic designs fly much faster and at lower pitch angles. These two factors a highly relevant in FV multirotor racing and in the future, more attention should be paid to designing simple aerodynamic copters like the Shrediquette DERBE. Furthermore, I will be experimenting with optional airbrakes in the first prototype. These will be deployed at very low throttle and when the throttle is quickly reduced (hence reacting to the derivative of throttle). In my imagination, this could really help on tight racetracks, as it enables the pilot to brake without having to change the pitch angle (which would take more time and also results in a camera that points to the sky).
A few renderings of the Shrediquette DERBE (more soon):
I just received all parts and really quickly snapped the parts together. Everything seems to fit really well :-D
Tilted body race quad update 2
All carbon parts are milled, the 3D printed parts are ordered, and motors + ESCs arrived. I can start to assemble soon :-D.
One thing that is new (except for the aerodynamic concept) are the airbrakes. I don't know yet how good they'll work and if they might introduce too much moments around some axis. But I think that they might be advantageous in racing tracks with a lot of tight turns. They'll be extended if the throttle is quickly reduced (hence reacting to the derivative of throttle).
Here are some renderings of the latest iteration:
One thing that is new (except for the aerodynamic concept) are the airbrakes. I don't know yet how good they'll work and if they might introduce too much moments around some axis. But I think that they might be advantageous in racing tracks with a lot of tight turns. They'll be extended if the throttle is quickly reduced (hence reacting to the derivative of throttle).
Here are some renderings of the latest iteration:
DERBE airbrakes |
Subscribe to:
Posts (Atom)