Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

choosing the right microcontroller

Status
Not open for further replies.

galed

New Member
I've posted about this project once before: the autonomous quad-rotor UAV. I've refined some of the requirements since then:

1. We'll be using a real time operating system, considering this is a control system. :rolleyes: I was thinking about something like FreeRTOS and modifying it to our needs.

2. We need to do processing of jpeg images, each 1.3 megapixel, to produce a 3-d environment for our uav to a) avoid hitting things and b) find things/places it's looking for.

3. Updated at about 10Hz, we need values from a 3-axis accelerometer, 3-axis gyro, (possibly) a 3-axis tilt compensated magnetometer, and a barometric pressure sensor. Most all of these come in as analog signals and need to be converted.

This is beyond the capabilities of any micros I've worked with (low-end AVRs). What kind of processing power do we need here? Is this something an ARM7 or ARM9 could handle or should I start looking towards things like the Atom?
 
Why not an SBC? (Single Board Computer) Depends on how much lifting power you have available for the package. Any SBC type device you're going to find is going to be pretty close to 1ghz processor speed so you should have a decent amount of resources available if you use a RTOs. It really depends on your weight requirements.
 
we have a 200g max payload. we'd like to keep it lower than that to add more battery power to extend flight time if we can

and i'm thinking that 1.3megapixels per camera per frame is an excessive amount of data. Though we only need a couple frames per second
 
To put it into perspective that's 1024X1024 sized images 10 times a second, that's not excessive at least not by PC Standards, but it is if you're going to be processing it a lot.
 
well, we're talking about flying-computer standards here. I'm not really even aware of how much processing power this is gonna take

My worries with an sbc are weight and making it talk to the sensors. The sensors all need an ADC. Do sbc's generally have ADCs? I assume they have access to serial ports and the like.

That 200g limit is pretty firm too. We've only got so much horsepower
 
Yeah, they typically have a few serial/parllel ports, modern ones have the USB stuff shop around and look for yourself, some have direct onboard header based I/O access. This can be directly interfaced to a DAC or other external circuitry.
 
You may want to consider handing over different processes to different processors. There is a good thread (with links) here. It is a description of a small board with gyros, accelerometers and a GPS input that has the code to keep track of the aircrafts position, orientation and track. It manages to do everything at 50Hz and you just ask it for the position information with your main processor. Especially interesting is the discussion about the Direction Cosine Matrix.

You will also find lots of useful information in the forums on the sites above.

Edit, forgot to mention, it's open source.

Mike.
 
Last edited:
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top