Poll: Which processor?

Oct 04, 2005 5 Replies

Later in my project, I will have to develop an inertial positioning system (aka dead reckoning). At my disposal, I have a devantech compass, gyros and accelerometers, as well as a wheel encoder.



I've been thinking and in my mind it doesn't make sense for my robot's "high level brain" (aka PC) to inquiry each one of those individual sensors and do the calculation for positioning. Instead, I wiser approach would be to have all of these sensors on one daughterboard providing data to a processor that will crunch numbers, recalibrate sensors as needed (I may provide GPS information to this board from time to time) and providing a higher level position information based on inertial and kinetic sensing.


If you were to design this module, which option would you choose as the main processor?



a) PIC 18F452 or similar b) ARM7 c) dsPIC d) any other dsp chip e) other



and why?


I'm leaning towards alternative b) or c). b) because I already have an evaluation board for a philips LPC2000, and d) because I'm familiar with PICs and I like microchip.



Your thoughts?


Hi,

Why not look at Atmel AVR? They have a large range of processors from 8pin Tiny series up to 64pin Mega's, all have the same instruction set.

And why? I like/know Atmel :)

Regards Ian Dobson

Home of the Atmel based UDP mobile web cam

formatting link
mails scanned with av-filter.pl (F-Prot / perl)

"ian dobson" wrote

I believe the Atmel would fall into the same category as the PICs, for 8-bit MCUs. Actually I'm more interested to know why would someone opt in favor for an 8-bit mcu, a 32-bit processor (like the ARM7) or for a DSP chip for "that specific application" (the inertial navigation unit).

OMG, This is a flamewar waiting to happen...

I would suggest looking at the math that you want/need to do. Look at Tramm Hudson's stuff for instance. Doubtless there will be a lot about Kalman filters etc. Then determine how much you want to unload onto a slave processor. It may well be that you can use one processor for all your sensor stuff, motor stuff etc, not just the inertial.

I always hate going with the whimpiest processor just because you know it. Focus on the problem at hand. If you are worth your salt, the task at hand will dictate what you use, unless you are on a strict time line.

Personally, I would go with the most processing power you can muster. You can write sloppy code, and still get the job done, then optimize later.

Depends what other features you need as well and how much space you have.

  1. If you already have an arm7 board go with that. If it can handle all the number crunching.
  2. If you want / need something with lots of pwm etc one of the plug apod or servo pod boards from newmicros
  3. For max processing power for the price blackfin stamp also gcc for dev tools and uclinux for os
    formatting link
    , 64MB ram

formatting link
formatting link
links to where to buy

Give it a try (free)

formatting link
Alex

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required