multi rotor control board


I am looking at building a multi-rotor control board, and have decided that arduino would be a GREAT test platform. That being said, I have never used arduino before (although I do have electronics/programming experience). I am not sure what arduino board would work best for my application, so here are the sensors I need it to work with:

  • ultrasonic
  • gps
  • compass
  • barometer
  • gyroscopic
  • accelerometer

I also need it to be able to take at least 9 pwm inputs, and have at atleast 9 outputs capable of pwm.

Also, I need to be able to use an lcd display and have a few buttons for that (min 4, ideally 8)

Finally, I need it to be able to run off of the 5v supply that is standard for multirotor esc's.


What are you expecting to do with the PWM inputs?

What are you expecting to do with the PWM inputs?

Either pass them through to an output, or pass them through slightly modified.

Hi, where are the PWM inputs coming from, the arduino has the capacity to produce its own PWM outputs.
What are all the PWM outputs doing?
A list of input and output devices and what their format is will help us to suggest the correct model arduino board.

Hope to help.. Tom...... 8) (27DegC here and will be nice mid 20 tomorrow)

PWM into an input is pretty much useless. PWM is Pulse Width Modulation, and that consists of digital (0 or 1) states, within a 'frame'. The modulation part of that is the varying of the ON and OFF states, as a percentage of the frame. To pass it through, or to modify it, you would have to check the time between pulses, and check the length of either the ON or OFF states, and then generate a PWM output from that. If you are redeiving PWM, you should rethink the problem. You can, if you really have to receive PWM, use an RC (Resistor/Capacitor filter that will charge when the PWM pulse is HIGH, and discharge when it's LOW, choosing the R and C values according to the amount of smoothing necessary.

There are a vast number of MutiRotor projects on the net, both in progress and fully complete, and many of them are open-source, meaning that you just need to buy the parts and download the code. If you'd rather do it all yourself, the various forums (find them with Google) will yield a huge amount of information as to what to look for, what problems you will run into, and so on.

I'm not trying to discourage you. It's definitely well within the capabilities of anyone willing to do a lot of research and with a firm commitment to the project.

Hope to help.. Tom...... 8) (27DegC here and will be nice mid 20 tomorrow)

Just glanced at my weather station, and it reads an outside temperature of 30.5DegC. Of course, there's a minus sign in front of that. I sincerely hope it gets up to -20 tomorrow! :astonished:

Ok, so here is how I will be using the pwm:

I want to take the pwm input from an rc receiver, and then change it slightly based on the inputs from the sensors, and then output it to motors.

Is that possible???

Hi, so you want to be able to use the arduino as an autonomous controller keeping the platform level and stable.
Then use the GPS and other inputs to direct it to a location.
The inputs from the RC receiver would be used to manually control the platform with some auto stability to enable smooth controlled flight.

Tom.... 8)

Yes, do you think that would be possible??

If you look at the open-source flight control systems you will see that they use special-purpose Arduino-compatible controllers which have all the required sensors integrated onto the main board. The software to access the sensors, do the data fusion and analysis and generate the flight control signals will be very complicated and I suggest you should start with the working open-source implementation and get that working before you consider trying to write your own. Writing your own implementation from scratch would represent literally years of work, with lots of failures along the way. Nothing stopping you from doing it if you're determined, but it's an extremely advanced project IMO and certainly not sensible for a novice's first project.