Hello people,
For my project I need a fully programmable RC quadcopter platform to test our own
control algorithm.
"Fully programmable" means that I need the drone to maintain upright position and
constant altitude, but I need to control how hard it tries to compensate to changes, via
some "sensitivity number" that I set. For example if sensitivty is set to zero, the vehicle
will not react at all when pushed; but if sensitivity is set to 100 and the vehicle is pushed
downwards it will return up as quickly as it can; if sensitivity is set to 50 and the vehicle
is pushed downwards, it will return up to the same position as before, but not as quickly.
I hope you understand what I am talking about.
I am a programmer and can program the algorithm if given the device and the documentation,
there is not problem there.
But is this kind of access supported by the autopilots of this site or any other device ?
Thanks alot
Dimitris,
Greece
Replies
Thomas thanks, great references for me to get started!
Im sorry for being a newbie and the first thing I did was to come here. Being a programmer I can roughly figure out how they work, but I have not had any hands-on experience on them, so choosing what hardware to buy is a problem because I do not know what is available there in the market. But you have certainly helped to put me on track.
Thanks, I will try to setup a small quadcopter or hexacopter model first. Then if it works I will transfer the guidance system to the big real thing. But lets make the model and program it first.
Thanks a lot guys
Be advised, it won't be as simple as just changing the P parameter in the PID controller. There are values that are stable and those that are unstable. Also, having zero correction means it won't hold it position at all without input from a pilot. This would be equivalent to stabilize mode. To get a quadcopter that can be pushed around and then hold its position is a more complicated problem. This would probably be some variation of loiter mode. All in all what you are wanting to do seems completely plausible.
"All in all what you are wanting to do seems completely plausible"
Thats what I was hoping for, thanks!
Do you think its better to go for a quadcopter or hexacopter configuration ?
Hexacopter = easier to lift a person because, well, there are more thrusters
Quadcopter = fewer parts and less things that can go wrong
Manned flight? Check this out:
https://www.youtube.com/watch?v=L75ESD9PBOw
I ve seen this since 2011 when it happened.
It has evolved into the Volocopter (look it up), which seems big and expensive.
My approach is much more portable (and I hope economic). Its a folding "wearable" device from which one person hangs.
Of course it will be stricly experimental, since any failure of the rotors at significant altitude will certainly result in pilot death. However it will prove that a very compact and portable flying device is possible.
The closest thing in what I want to do is this:
https://www.youtube.com/watch?v=OM7HHB51WX8
(but its IC)
....and this:
https://www.youtube.com/watch?v=1L9V9KD-Q34
(but it seems heavy)
The designs you mention have already demonstrated proof of concept. Maybe you can make it more compact but that does not mean it will be cheaper and by no means safer. To make slightly more survivable, you add motors (6+) and to avoid crowding you can put a couple on each arm in a 4x2. Still, choose your test pilots among people you really dislike.
High altitude failures are relatively safer. You at least get a chance to deploy a reserve parachute. Of course you 'll have a great big mess of props to get clear of and will probably be spinning and tumbling out of control, all of which can lethally complicate reserve deployment. Not to mention that you 'll also need to deploy fast before you hit high speed or the deployment can kill you unless the reserve is designed for free fall, in which case it will take its sweet time to open, which will make life interesting (and short) if you deploy at low altitude. The bright side is, no more taxes.
Hi Dimitris,
If you talk about push, then you're talking about small distances. GPS is a sensor that's not very precise, so internally in the control loops there's a lot of uncertainty, which leads to control loops that are by nature a bit slow. I think the APM already fuses the GPS sensor readings with the barometer, which improves the results significantly. I think the barometer has a precision of 10cm, so then displacements can be compensated faster.
Then you're looking at the "altitude hold" loop in an autopilot, which determines how it maintains the vertical position. As I said before, for this particular application you may need to look at sensors that have a lot of precision for your project to work well and then fuse those sensor readings with the alt hold algorithm.
The alt-hold control loop does have a specific control loop already for this purpose, but I'm not sure whether GPS and barometer settings are fused in the algorithm. I think the pixhawk may do this, because they utilize a kalman filter there.
Another project you may want to look at is paparazzi and purchase a Lisa/S or Lisa/M2 board from one of the (rare) hardware vendors. It is significantly harder though to get up to speed with that project, but the control algorithms in place are very sophisticated and once you understand how things work, the software is very modular and configurable for specific needs.
Thank you Gerard!
My project does not involve GPS (ie I dont care about coordinates). I only care about altitude and tilt. It need not return to where it was when pushed. But it must return to upright stance and same altitude.
From what you say, I will find what I need. I am optimistic. Havent had the time to look for Lisa yet, but will do promptly.
The project is a manned weight-shift quadcopter. That is, the pilot hangs from it, like a hang-glider, and uses the control bar to tilt the rotors above him. So the vehicle must be self-stabilized of course, but not too much so that the pilot's handling is smoothed but not completely cancelled.
So I need to program the thing to "stay upright, but dont try too hard", and "hold altitude, no matter how much you are tilted" and "add/subtract the RPM stick indication from all rotors" so that it can gain/lose altitutde.
The altitude will be adjusted by a specific stick (up -> ascend, down -> descend, neutral -> hold)