The Arduino and Raspberry Pi platforms are very different in the way that they handle tasks, so how does the average diy'er know which one is right for them?
In this instructable I will go over the major differences and show you what the different boards are best at.
Step 1: A Quick Understanding of Both Boards
The Raspberry Pi is an amazing processing board made with a ARM 32 bit processor this thing was not intended to be used as a motor driver, it was Intended to be used as a full fledged computer and that's why they made raspian, a Linux based platform with a very nice, user friendly feel to it, however there are a lot more Linux based options which we will talk about later
The Arduino is an amazing platform to use when prototyping because of its great micro controllers and its integrated programming system, it would be fair to say that the Arduino is good at driving motors but it doesn't stop there the Arduino boards can receive and send data to or from pretty much any sensor or device.
Step 2: Understanding the Raspberry Pi
Like I said, the raspberry Pi can be used as a full fledged computer with the possibility to plug in a lot of external sensors or devices because of its:
4 USB ports
40 io headers
It also doesn't take someone with a master is computer science to understand it, in fact it's not that different to a computer (in terms of ports or GUI) featuring:
A Hdmi port
And a micro USB port to power the whole thing
When you buy the raspberry Pi alone you will find it it in a neat little box with no cables or add ons, not even a SD card with the os on it, so to get started you will have to get yourself a micro sd card, go to the raspberry Pi store and download one of the free Linux options that work best for your project.
Step 3: Understanding the Arduino
The Arduino boards all run off micro controllers like the atmega 328 or atmega 32u4 that means they don't have a lot of processing power however they are very good at something else, driving there io pins, the Arduinos best feature is that it is super strong at running io, what does this even mean? It means that with the Arduino you can control a robot that has 4 motors 8 sensors a wifi shield and ton of LEDs while hardly drawing any power.
there are many different Arduinos out there that do different things, some have lan ports for connecting to the internet others have tons of io pins, the best Arduino for your project is a whole different instructable.
Step 4: The Conclusion, Which Is Best for Your Project
So the Arduino has a easy to program platform that's universal to all their boards. There micro controllers typically have more io than the raspberry Pi and draw much less power they also have no operating systems so all code for the Arduino has to be written on a different computer then changed into machine language on that device and then it can be sent to the Arduino meaning there's no interpreter making this a really barebone board (which isn't always a bad thing)
The raspberry Pi has far more processing power with its ARM micro processor meaning it would be better for projects that may require a gui (graphical user interface) or a connection to the web (like a server) or even for learning about code on the machine that you are programming.
So for my final conclusion let's make two examples of times I might need one of these boards.
First: my school wants to put up a display screen that shows students a calendar with all the school events on it, I'm pretty sure the raspberry Pi wins this one because of its gui and its capability to run apps
Second: I want to make a Bluetooth controlled rc car, it will have four motors, five LEDs and a Bluetooth module that takes up a lot of pins, the Arduino is definitely perfect for this one because of its strong io being able to drive the motors and its many io pins making sure everything can connect and last its low power consumption making sure you can play for longer
Thanks for reading guys and as always if you have any questions please leave them in the comments and I'll try my best to get back to you.