PDA

View Full Version : Help! Need Advice for Senior Project, Computer Aided flight control


GenericRcGuy
Jun 11, 2009, 05:27 PM
Hey guys,

I'm new to the UAV section and was hoping to gain some advice from some of you. I'm a senior mechanical engineering student and want to do my senior project on control dynamics. What I hope to achieve is a tilt rotor aircraft that can be flown with minimal flight training and experience. I, along with my brother (also a ME student) built a dual contra tilt rotor aircraft a couple summers ago. (link, scroll near to the bottom and we have a single video of it after its latest modification, http://www.rcgroups.com/forums/showthread.php?t=724120&page=2&highlight=vtol+body+pitch+control )We want to make it semi-autonomous. By this I mean, the pilot will use a normal 6channel transmitter to control altitude and direction but an on board micro computer will be programmed to take out all the hard parts of flying. For example, I want it to be able to hold a hands off hover indefinitely or to just move forward when the pitch control is held forward then to come to a stop and hover again when the control is let go of.

What I hope you guys can help me with is the selection of micro processors, sensors and the means of tying in controls to these. I am already proficient in programming and will be able to learn any language necessary so I am not worried about that. I just, more or less, need some advice on the hardware aspect of this. What kind of sensors are needed, how to place them, and things of that sort.

Any help would be greatly appreciated.

Thanks,
Marc

BeefStake
Jun 12, 2009, 07:23 AM
Well for sensors you are going to need a 6DOF IMU.
You might want to research inertial measurement sensors indepth if you want to do something like this, seeing as they are an integral part of control dynamics.
For microprocessors you have a huge range available.. Microchip, Atmel, Freescale...
There is heaps that is something you are going to need to decide for yourself.
Most important elements for you to be looking for in a MCU are how powerful it is and the number of ADCs and if it has readily available PWM support.
Now for software and actual control theory...
For filtering of sensors you might want to looking into a Kalman filter, there are quiet a few variants but in essence they all do the same thing. This is one of the most important aspects and has to be done right, accuracy of your sensors basically determines the usefulness of your control system.
PID loops are the second family of algorithms you are going to need to look into, they are the core of your control system and you are going to need to get very familiar with them if you are going to build a system such as this.
You are going to need to decode either the servo outputs (PWM) from the receiver you are using or extract the PPM stream from the receivers shift register.
You need this to be able to interpret what the pilot is inputting.
Lastly you should take a look at the opensource quadcopter projects, they have done exactly what you want to do and if you don't want to develop your own hardware their boards would be essentially drop in for your purposes.
Goodluck!
Also you might want to try the expertise at DIYDrones, there is alot more UAV focused discussion going on over there.

BeefStake
Jun 14, 2009, 12:22 AM
Hmm after some further thought you might be better with a 9DOF IMU.
Aka 3 axis Gyro, 3 axis Accelerometers and 3 axis magnetometers.
The magnetometers will allow you to calculate your exact allignment inspace. Where as gyros can only tell rotational movement from a reference the magnetometers can determine the vehicles allignment relative to the earths magnetic field.
I don't think I am very good at explaining things so you might want to check out Bills Direction of Cosine matrix in DIYDrones.
This would be your best option for stabilization during VTOL.
Once again goodluck. :P
Joseph.

GenericRcGuy
Jun 15, 2009, 02:31 AM
Thank you very much Beefstake, I'll check that stuff out.

BeefStake
Jun 15, 2009, 09:02 AM
No problem, if you need any more pointers I will keep an eye on the thread. ;)