Help - Controlling a helicopter using an Arduino to translate hand movements

I'm a total noob here, so please be gentle in your answers.

I basically want to control a helicopter using hand movements. I feel the way to do this is by wearing a glove fitted with flex sensors for the fingers, which transmit analog data into the Arduino (Uno, or any other which you suggest), followed by the Arduino sending signals using a PNP transmitter or so connected to the controller of said heli. This was inspired by various instructables (below).

Firstly, I need help as to the programming needed to achieve this. I also need info as to the circuits I need to create, both for the hand and the controller. I plan to use a single finger\thumb for lift, drop, left, right at least. If you could figure out a way for me to add forward and backward movement I would appreciate it. You are welcome to correct me regarding the many mistakes and lack of understanding I displayed above. If possible, I would appreciate it if as little requirements as possible are changed.

Also, I wanted to ask if I could adjust sensitivity of the flex sensors so that the heli doesn't over compensate, if you get what I mean.

Here are the sites I mentioned:

Thanking you in advance,
adityajaypal.

Umm this is kind of urgent, so please, HALP.

Yes, it's possible.

For me, I would find it much more intuitive to control the direction by pitching and rolling my whole hand. Put an accelerometer+gyro chip in the back of the glove. The MPU6050 is very good and very simple to interface to an Arduino. Then use one flex sensor for throttle/altitude.

You will need to do some filtering on those inputs. This is not a simple thing. Read up on infinite-impulse-response (IIR) filters and finite-impulse-response (FIR) filters. This is a subset of digital signal processing (DSP.)

MorganS:
Yes, it's possible.

For me, I would find it much more intuitive to control the direction by pitching and rolling my whole hand. Put an accelerometer+gyro chip in the back of the glove. The MPU6050 is very good and very simple to interface to an Arduino. Then use one flex sensor for throttle/altitude.

You will need to do some filtering on those inputs. This is not a simple thing. Read up on infinite-impulse-response (IIR) filters and finite-impulse-response (FIR) filters. This is a subset of digital signal processing (DSP.)

Thanks for the info, but man, the IIR and FIR are some serious stuff. If possible, could you walk me through their importance and applications {if any}?

Also, I don't know if this is already understood, but I want the Arduino to remain on the ground. I only want the heli to fly.

adityajaypal:
Thanks for the info, but man, the IIR and FIR are some serious stuff. If possible, could you walk me through their importance and applications {if any}?

Well, for Morgan to suggest you read up on them means he/she thinks that you're up for it ! :slight_smile:

They are simple once you have played with them a little bit - but the wikipedia pages just go straight into the DSP nerd/formulas/LaTeX approach, when perhaps a more intuitive description would suit most.

Think of them like - hrrrm, where shall I begin ... kind of like suspension in a car, suspension in a car averages out all the bumps in the road so it doesn't feel so bad huh ?

Well, imagine that noisy signals from your sensors are like road bumps - and the filter is like suspension.

It's not that much better than wikipedia but try:

http://interactive-matter.eu/blog/2009/12/18/filtering-sensor-data-with-a-kalman-filter/

A first order Kalman filter is an averaging filter as Morgan suggested - so don't worry too much there, maybe concentrate of the discussion regarding the plots

1:1:
Well, for Morgan to suggest you read up on them means he/she thinks that you're up for it ! :slight_smile:

They are simple once you have played with them a little bit - but the wikipedia pages just go straight into the DSP nerd/formulas/LaTeX approach, when perhaps a more intuitive description would suit most.

Think of them like - hrrrm, where shall I begin ... kind of like suspension in a car, suspension in a car averages out all the bumps in the road so it doesn't feel so bad huh ?

Well, imagine that noisy signals from your sensors are like road bumps - and the filter is like suspension.

It's not that much better than wikipedia but try:

http://interactive-matter.eu/blog/2009/12/18/filtering-sensor-data-with-a-kalman-filter/

A first order Kalman filter is an averaging filter as Morgan suggested - so don't worry too much there, maybe concentrate of the discussion regarding the plots

Thank you for believing in me, but the problem is I have little to no electronic know-how. I'm only 15 (Maybe I should've mentioned that earlier.).

In other words, I have absolutely NO idea about what I should be doing.

What I really need is also a bit too much to ask, because I basically want an answer describing, step-by-step, what I need to do for the whole project. All this is new to me, but I'm willing to try it out. So could you help an overwhelmed teen out, guys?

P.S: If I were to use an NPN transistor, what would the difference be? Would the resulting circuit just be inverted?

Well, welcome to arduino!

Ok, best for now just forget all the filter talk - we can deal with that later if need be - I think even the most grumpy users here will respect that :wink:

Lets break it down in parts - each little part will come together eventually.

hrrrm, just realised you don't actually have an arduino yet ! But I was going to suggest you wire up one analog sensor and get that working maybe send the variable to your PC over serial (we can help with that).

How many sensors- was it 4 ?

One valuable skill is to read technical specifications - so, I suggest reading up how many analog inputs each model arduino has - see which one you need. Engineers do this all the time, sometimes it's boring, sometimes it's like going toy shopping :grin:

Haha, thank you!

Well, I would need at least 2 analog pins, I would think. Taking Morgan's suggestion in mind, an MPU does sound like a good idea. And of course, I guess the max would be 5 or 6 if I decide to use only flex sensors, so I think an Uno R3 woud fit the bill :slight_smile:

Now, what exactly do you mean when you say plug just one analog input? Is it to test it?

Now, based on what I've seen on the internet, a LOT of resistors are used. Maybe you could help me out on that, once we get past the basics? :stuck_out_tongue:

Just saying - take it in steps, be methodical ... Once one is working, try two, then try all of them.

I post here between running automation cues on a show - unfortunately I only have brain space for general comments while doing so.

When I have time for specifics, well, that's when I do my projects :wink:

I'll try to help, but can't promise much time :-[

Hey, any help is better than none!

I don't want to compromise your project, so please, feel free to take your time. :slight_smile:

Umm, my project is kind of urgent, so please, HALP. :smiley:

It's due to be completed in September