-
Understanding Dterm: how Dterm really works
I will be very honest: until very recently I did not really understood how PID controller's Dterm really works. Yes, something with dampening, something with "looking into future", bla bla bla. But the reason for not understanding was because I was overthinking it. There is no "magic" only simple mathematics and few basic concepts which I will now explain.
Setpoint
Setpoint is the value which we request from our system. In case of multirotors, PID setpoint will be a rotation speed around axis given in degrees per second [dps]. Setpoint
0
means we do not want to rotate (keep current attitude) and setpoint200
means we want to rotate at 200dpsMeasurement
Measurement the value that represents actual state of the system measured by some kind of sensor. In our case, it will be the gyroscope and rotation-around-axis speed measured in degrees per second
Error
Error the difference between Setpoint and Measurement computed as Error = Setpoint - Measurement. In our case, when Error is above
0
, that means drone is rotating too slow and should speed up. If Error is below0
, drone is rotating too fast and should slow down -
Hands on: E45-TTL-100 868MHz LoRa wireless modules
My quest for ultimate (?) DIY telemetry system for UAVs continues. Last year I was playing with HC-12 433MHz wireless modules with pretty decent results. After all, more than 1km of range for a few bucks is more than acceptable. Still, HC-12 has at least few problems:
- 433MHz band is very often polluted and used by other Rc systems/subsystems (LRS)
- 433MHz requires pretty big antennas
- No frequency hopping
- No easy way to build network of more than two HC-12
- 1-1.5km of range is nice, but one might want more
-
Very custom FPV quadcopter for my daughter
When few months ago my older daughter (10 years old) started to express interest in FPV quadcopters, I was both happy and concerned. Happy, since I would have someone to fly with. Concerned, since she has no idea how to fly, I do not have a quadcopter for her and there is a big chance she will get bored fast. So, instead of getting her a brand new, cheap, standard off-the-shelf drone, I checked my repository of "spare" parts and drones, purchased this and that and week later "Omlette du fromage" came to life...
-
Gyroscope and filtering video tutorial - Episode 4
In this episode of "Gyroscope and filtering" I show you how to configure notch filters using Betaflight Configurator and INAV Configurator software.
Previous episodes:
Read more... -
FS1000A and XY-MK-5V second range test
Two months ago, when I published first FS1000A and XY-MK-5V range test, I was little surprised that I was able to reach 315 meters of stable connection. And I was almost sure, that they can do more.
Having some free time during my summer vacation, I've left transmitter on a towel and took a walk with a receiver. In a surroundings just like that:
Results? 332 meters with a FS1000A powered with 7.4V and 1000bps over-the-air data speed.
For the second time, I'm sure I can pull more from this setup. This time, there were two problems:
- Transmitter was low on the ground
- Other people on the beach blocked line of sight much faster than I expected
So, expect third attempt...
-
How to connect APM Airspeed Sensor (Pitot Tube) to INAV
Recently released INAV 1.7.2 introduced new hardware support: analog airspeed sensors. I've written new but it is new only to INAV. Analog airspeed sensors aka APM Pitot Tubes aka Ardupilot Airspeed Meter and one the market for years. And they are cheap. By cheap, I mean below $30. And until recently they were usable only in APM world.
-
VL53L0X Lidar is... disappointing
I just finished first test flights with laser rangefinder VL53L0X and well, I'm disappointed. Before I will show any data, let's review test conditions:
- VL53L0X configured for Long range mode: 2m
- 8PM, obscured sky, no direct sunlight
- Over concrete
And it looks like this:
Solid readout ended at more less 80cm. Above that, valid readout appeared only from time to time. So I have to assume, that everything above 1m is absolutely not reliable and useful range is max. 75cm. Probably much less over different surfaces.
And that means it will have rather limited usefulness. Landing detection probably. Or low altitude flights with terrain following. I tried that too and it worked as long as quadcopter was not higher as 20 or 30cm above ground.
Oh well... I had high hopes for VL53L0X. Next attempts will be with hybrid approach: US-100 sonar and Sharp optical (IR) GP2Y0A710K0F (up to 5 meters) data fusion.
Read more... -
Project "Dropship glider" - introduction
When I saw this video from rctestflight I knew I will build something like that for myself. A voila, few months later it is done. Here is Dropship Glider.
It is 29cm long with 20cm wingspan. Weights 97g AUW and has 21g/dm^2 wing loading. So, in theory, should glide. Somehow... If I got center of gravity right. And did not made ailerons too big. Or...
Delta 6mm Depron "wing" is attached to 6mm carbon fiber rod and has some quite big dihedral: 15 degrees.
The biggest problem was radio link and mixer for ailerons. I could not use my Taranis: I need that for a carrier and only radio control link I had was EM-16 with PPM output only and no way to setup any kind of mixer. The radio just has no "features" like that...
So, took one Arduino Pro Mini and wrote short program that acts as PPM decoder and mixer for ailerons.
- power is supplied by 1S LiPo taken from my Tiny Whoop
- FPV AIO Eachine TX02 also taken from my Tine Whoop
- 5V is supplied from cheap, regulated, step-up converter
- 3rd servo is to release tether
First flight, or rather drop, tomorrow. There will be a video from the event of course...
Read more... -
GPS Racer: worklog #9 – double rangefinder setup
My GPS Racer is less and less fun project. For last few weeks it acts as sensor platform for my attempts to bring rangefinders and terrain following modes back to INAV. This time in a way that will work.
Two weeks ago it was carrying HC-SR04 sonar (crappy device). Week ago it was carrying US-100 (much better device). This week it is carrying both US-100 sonar and VL53L0X lidar!
DigitalEntity apparently had too much spare time and he finally wrote (ported) a driver for VL53L0X and starting from version 1.8 (probably) INAV will be able to use this cheap lidar.
Yes, VL53L0X is cheap and that means it's not state-of-the art device. First of all, it has limited range. 2m is all it can do in a room. No idea how it will behave in sunlight. Hard to guess, but I'm afraid that 1m will be all it will able to do in real life conditions... But we will see in a next few days.
Read more... -
Bye bye Naze, we will not miss you that much
I have a news for all INAV pilots using Naze32, Flip32 and other boards compatible with NAZE target. You might call it a bad news, but reality is that it is not that bad and was long anticipated. It is official: INAV 1.7.2 was the last INAV release with NAZE target. That means the following: INAV 1.8 will not be available for Naze32, Flip32 and other boards compatible with that target.
You might was "why?". Quite simple: not enought flash memory, no way for new features to fit in. There was even not enought flash memory for bugfixes. And to be honest, I do not remember last time when NAZE users really got a new feature. Almost all new things were disabled for them. For more than a year, compiling NAZE target after adding something new was quite a challenge.
Does that mean that you can not use Nazes any more? Absolutely not. They are good boards and INAV 1.7.2 works on them just fine. You only will not be able to upgrade to INAV 1.8. And trust me, it is really worth it to invest in something better like F3 board. They are not that expensive after all...
By the way, CC3D is the next thing to be removed. Not yet, it still fits flash. Barely, but fits...
Read more...
I'm Paweł Spychalski and I do things. Mainly software development, FPV drones and amateur cinematography. Here are my YouTube channels: