10

I was thinking of creating a surveillance mobile robot. And I am having a problem of choosing a PIC or a Arduino microcontroller. The surveillance mobile robot is controlled via wireless fidelity (Wi-Fi). If I choose PIC, is there a need for an Ethernet module?

I have searched that it need it for an Arduino board to connect to the Internet. I am a bit experienced with PIC, but some say Arduino is better for beginners. Which is better: using Arduino or PIC for the project? Or it should be done with both Arduino and PIC? And also I am thinking of using an Android phone as the controller for the robot.

What should I do?

5 Answers5

5

Really the question should be Arduino vs Launchpad (or another PIC development board) or AVR versus PIC. Arduino is simply a development board that includes an Atmel AVR processor and the necessary hardware to use it.

There there tons of custom shields available for the Arduino, including a wifi shield. Open-source wrapper libraries are already available for most of these shields, which will shield you from a lot of low-level bit twiddling. On the development side, you can simply use a GCC cross-compiler (avr-gcc) and the related cross-toolchain. This is not true for PICs, which are not supported by GCC.

If you don't mind the cost of an Arduino and the necessary shield(s), Arduino is likely the path of least resistance. The available libraries and support far trump any technical advantages of a PIC devboard unless you already have a lot of experience with microcontrollers.

m.Alin
  • 10,638
  • 19
  • 62
  • 89
Michael Koval
  • 304
  • 1
  • 3
  • 9
3

For a hobbyist Arduino is probably the best solution. Though you have to know, that Arduino is not a microcontroller - it's a design. It mostly comes with Atmel microcontrollers but you can also find Arduino with PIC (Microchip microcontroller).

If you decide to go with PIC (since you said you have some experience with this architecture) you should definetly take a look at MRF24WB0Mx module (MA is with internall antena, MB has U.FL connector).

Works well, can create AdHoc network or join an existing infrastructure one and you can get free library and examples at Microchip's site.

However, if you choose Arduino, you should consider using a WiFi shield with good support.

As for which is better (Atmel or PIC), Dave Jones has a video blog on this topic, if you can spare 24+ minutes. :) And don't expect a final answer since there is no.

If you only want to deal with programming - go with Arduino. If you don't mind also designing a PCB - then you'd be probably best of with a PIC (PIC24FJ256GB106 or GA106 are very often used nowdays) and MRF24WB...).

Rok Jarc
  • 451
  • 4
  • 8
1

Focus on what part of the project you are actually interested in.

Is it the microcontroller? Is the the analog design? Is it motor control? Is it the autonomous algorithms? Is it the embedded TCP stack?

Why not buy a robot kit that meets the project requirements then dive into the inner workings of the parts of the kit that you want to learn about.

spearson
  • 1,533
  • 8
  • 13
1

How about a combination...! As you already mentioned you have experience with PICs... Why don't you use PIC for Motor Controls, Sensor interfacing etc and Arduino for Ethernet Stack...

Though, Microchip also has its own TCP/IP Stack, its is not a good choice if you compare it with Arduino...

0

I don't know about PIC or anything, but I will definatly tell you arduino is a good choice. Arduino is great for using internet with the wifi shield, and there is the android ADK for arduino that is just booming. So if you are planning using android I would definatly look into arduino. Plus there is a huge community out there so if you have any trouble, i will promise someone will help.