Go Down

Topic: Is there an Arduino/Other More Powerful? (Read 2 times) previous topic - next topic

mica.cooper

Hi,

I am interested in Arduino but it seems limited in its programming capacity. Is there another platform similar to Arduino but using a more capable processor?

I have looked at the Sun stuff but it is way more expensive.

I am interested in building a combo device with camera, gps, wifi, and servos, and a car battery that would be capable of autonomous movement and sending live video...thats my fun project  ;)

MC

bens

You could consider using a laptop, a palm pilot, or a 32-bit microcontroller/microprocessor (look into ARM7, ARM9, Cortex).

mica.cooper

Right,

The thing that attracts me to Arduino is the number of addons such as gps, camera, bluetooth, usb, servos, etc available. Do any of these ARM9, etc have a similar community?

If I can't find another platform, can I connect and control multiple Arduino's from a single computer like an ultraportable?

MC

dokumentamarble

Why not just use more than one arduino?

bens

Quote
The thing that attracts me to Arduino is the number of addons such as gps, camera, bluetooth, usb, servos, etc available. Do any of these ARM9, etc have a similar community?

You can connect all of these devices to 32-bit micros.  I'm not sure what kind of communties exist for them, but they all have datasheets.  Using an Arduino for a project like this seems analogous like using a pair of hedge clippers to trim your lawn because they have a better/simpler user's guide than lawn mowers.  I think in the end you're better off using the right tool for the job, even if the learning curve is steeper.

Quote
If I can't find another platform, can I connect and control multiple Arduino's from a single computer like an ultraportable?

You can do whatever you want, but you'll need to come up with the implementation.  I don't think you'll get much by using multiple Arduino's in parallel, though.

- Ben


Oracle

Quote

You can do whatever you want, but you'll need to come up with the implementation.  I don't think you'll get much by using multiple Arduino's in parallel, though.


At the very least, you get real multithreading which can make things easier for a beginner, let's say one Arduino to read analog sensors, and a second to process and display the information.  

But in practice, I'd say if an Arduino can't handle it try a cheap little laptop (like the eeePC), with something like an Arduino to handle hardware interfacing.

Getting started on an ARM processor would probably be very daunting for a novice.

bens

Quote
At the very least, you get real multithreading which can make things easier for a beginner, let's say one Arduino to read analog sensors, and a second to process and display the information.

Using multiple Arduinos can certainly help increase your processing power, but I think the added complexity of interfacing them together probably outweighs the benefit in a lot of situations, especially if you're a beginner (unless there are libraries out there for linking two or more Arduinos via serial/I2C/SPI?).  You'd need to come up with some robust protocol for communicating data back and forth, and the rates of communication will probably be relatively slow.

- Ben

mem

I have seen Oracle's suggestion used quite affectively on the arduino using i2c. One arduino for capturing data and another to format the data to drive an LCD display and interface to an external computer. In this case the high level protocol is one way which makes thing a little easier. But the current wire library supporting i2c does not handle errors like data overruns very well so I would also hesitate to recommend this approach to a beginner.

That said, I believe some work is being done in this area on the wire library for the next arduino release, so it may soon get easier.

kg4wsv

#9
Aug 07, 2008, 08:13 pm Last Edit: Aug 07, 2008, 08:13 pm by kg4wsv Reason: 1
Quote
unless there are libraries out there for linking two or more Arduinos via serial/I2C/SPI?

I threw together a trivial example of 2 arduinos talking via I2C (actually, one was talking and the other listening - like I said, trivial) using nothing more than Wire.h and looking at the examples at the Wiring web site.

As you say, you'll need to work out a protocol.

Networked arduinos would be easiest to implement and help the most if the various tasks are fairly independent and require relatively little interaction or data transfer.

mica.cooper

Thanks all!

I am ordering my Arduino's and connect them to my laptop to start. This should provide some good feedback. The level of programming does not bother me at all since that is what I do for a living...the hardware is the issue for me  ;D

Btw, how many devices can be attached to an Arduino at once?

MC


melka

As much as you have pins left. If you're using I2C devices (with each device having a different adress), you can link a whole bunch of them on 2 pins. The I2C protocols is made for 112 devices on 2 wires, but be careful with th cable length for noise, etc...

As you certainly know, the ATmega168 is not a processor that allows multi-tasking, so everything runs as a sequence, and with a huge lot of external devices, you might have some program loops that could take a lot of time. For instance, if you use 112 x I2C EEPROM chips, with each eeprom having a write-time of 3ms, it will take 336ms to write one byte on each eeprom... I know it's a dumb example unless you want to build a really huge memory card, but for the project you described on your first post, timing might (and certainly will) be an issue.

I don't even know if you can dump an image from a CMOS camera sensor at 25fps with the arduino, but if you can, I doubt the mega168 will have enough power to manage to do something else...

mica.cooper

Thank you,

This firms up my idea to have the laptop programming be the 'master'. The Arduino will serve nicely to pre-process data and control devices.

Can't wait,
MC


peter247

The Cortino looks o.k , but whats it like to program and does it have the community or support like the arduino for beginners like myself ?.

Go Up