NOTE: I'm not an expert at navigation systems.You take the Gyro, which is accurate for only short periods of time, and combine it with the Accelerometer, which is accurate over a long period of time, and you have yourself a complete system....
Actually, the microcontroller controls 100%, doing whatever it can to satisfy the operators commands. When you push the stick forward, the micro acknowledges this and does what it must to set the angle of the craft forward as well as maintain altitude. You never directly control the motors. It's not like it takes the input from the operator, the input from the micro, and "merges" or "adds" them. The micro takes into consideration the operator input, and it alone is used to control the motors.Do Not give the person (including yourself) flying the craft access to 100% power!
The reason is you want a little power in reserve, the control system may need to adjust one the motors upwards (power wise) a little, so if your flying flat out then the control system only has the option to decrease power on some motors. I am going to have 20% in reserve, but my craft is different, I would say you could go upto 90-95% for user control and leave the other 5-10% under micro control.
I would use a microcontroller that is compatible with the Arduino IDE, and program it without the Arduino bootloader using an ICSP programmer. At that point it's literally just a cheap ordinary microcontroller, yet it's still much easier to program, and has many libraries to use or learn from.There will be great temptation and many calls to go the Auduino route, please try and avoid this , there are much better micro's out there that are cheaper and can do more, they do require effort to learn but the payback is worth it. To me the the plug a arduino in route takes the fun away, you might as well just go out and buy a kit. With the type of project your doing you could in theory build one with no knowledge at all, all the modules and code are out there, add to that the 1,000,000's of tutorials and you you dont need to learn anything.
Its a waste! Do it from scratch and try to be different, I am no expert, I am just a kid, but I have done a huge amount of reading up. The best thing to do is post question's here on things you dont understand, but be prepared to do some legwork, I have alot of info on flight control system's as and when you need it.
Start basic, that means look into PID control for motors and PWM, start finding out about that kind of stuff. I will post more when I can
I would use a microcontroller that is compatible with the Arduino IDE, and program it without the Arduino bootloader using an ICSP programmer. At that point it's literally just a cheap ordinary microcontroller, yet it's still much easier to program, and has many libraries to use or learn from.
I know what you mean by limiting power now.Yeah no need to learn or do anything different then! Loads of arduino copters out there, just build a clone.
Eventually one day we will only have arduino's and beagle boards, a few people will supply everyone with all the stuff we will ever need.
Personally I hate them.
I didnt put what I meant about power very well, yes the micro controls all power, but what I was trying to say was, if you push the stick all the way forward, this should tell the micro to put everything at say 90% power, this gives it room to add some if say wind becomes a factor.
BTW I have been playing with matlab, there is a app that connects a smart phone senors to it and it graphs the data, when you use the phone accelerometer, what you see even with the phone flat and not being held, is the numbers constantly changing a little, so a accelerometer will alter its reading when moved even a tiny bit.
I didnt know that until I tried last night . But I am still going the inclnometer route as well, TI has a pdf on 9dof sensors and directional cosine matrix, well worth reading.
I hope he decides against the Arduino route, and hopefully uses something he has built and designed, I really hate these plug it in and be done boards! Takes all the fun out of building and troubleshooting, for me there is no feeling of achievement with them.
Range finding etc I would use both, the altimeter is good over about 50' (roughly) but with a added sonic sensors you can then map the ground contours, stick it on a servo (I am in mine), and you can detect obstacles like trees at low altitude.
ALL THE ABOVE IS ONLY MY OPINION
Feel free to totally disregard it, it may differ from your's.
I know what you mean by limiting power now.
I'm used to designing hovercrafts that use separate thrusters for controlling angle and controlling altitude. In this case, they're serving both purposes. If you were to climb as fast as possible (at 100% power), and the craft tilted to it's side, you wouldn't have any lee-way to apply thrust differential to correct it. However, I'm sure that a properly designed control system wouldn't need to do this. Instead of increasing thrust on the side that's lower, you could decrease thrust on the side that's higher. A simple conditional could accomplish this.
I just had a random thought for a project that could really kick ass.
A craft that can hover in any orientation. Unlike a quadcopter where Pitch and Roll force the craft Forwards/Backwards and Left/Right. I wonder what the best configuration to do this would be.
I also randomly thought about how sluggish response could affect the control system, beings that the props don't immediately respond to a change in their input due to their inertia.
Looks like things can get really complicated really fast...
That's odd, it shouldn't have mattered any. Perhaps there's some sort of bug in your code? Are you using PID? If you're trying to climb as fast as possible, two of the four motors should be driven at full power at all times. Assuming you're using a + configuration.I first modeled the scenario you said where the motor on the high side reduced power instead of increasing the other, it dosnt seem to work well, in reality what happens is a little of both, I found what sometimes happened when one side was reduced because the other was at full power, then the model would turn and be out of balance, in the end I decided to go with almost full power but like you I left some head room, for whatever reason it gave the best result. BUT please note I am really new at matlab and control systems!! So it could well be that I dont have it exactly right yet, but whatever the reason for now I have to go with what works best for me and my situation/skill level
Thread starter | Similar threads | Forum | Replies | Date |
---|---|---|---|---|
Detect birds flying inside a space | General Electronics Chat | 11 | ||
B | Control Line flying | Off-Topic | 16 | |
K | Planning to develop simple flying drone | General Electronics Chat | 29 | |
LM358 OP Amp with flying leads | General Electronics Chat | 3 | ||
Looking for Op amp circuit with flying Lead | General Electronics Chat | 4 |
by Aaron Carman
by Aaron Carman
by Jake Hertz
by Jake Hertz