¿Qué es mejor, Arduino o Raspberry Pi?

Muchas veces tanto principiantes como usuarios experimentados se hacen esta pregunta, la cual si bien puede ser un poco compleja de responder, se puede simplificar a un rotundo: depende. Depende de la naturaleza de tu proyecto y del enfoque que tengas al desarrollarlo, si bien es posible crear proyectos similares con ambas tarjetas de desarrollo, para algunos proyectos puede volverse muy complicado o para algunas aplicaciones pueden estar muy sobrados tecnológicamente.

Para hacer esta comparación tomaré como muestra las dos tarjetas más difundidas: la Arduino UNO y la Raspberry Pi Modelo 3B+. Si bien existen otros modelos, creo que para fines prácticos sirven muy bien.

Para empezar podemos mencionar algunos datos técnicos concretos y de ahí procederemos nuestra discusión. Las características más representativas de cada tarjeta son:

Arduino UNORaspberry Pi Modelo 3B+
Basada en el microcontrolador ATMEGA328P de 8-bits a 16MHzBasada en el microprocesador Broadcom BCM2837, quad-core ARM Cortex-A53 64 bits 1,4 GHz
Entradas/ Salidas digitales: 14 pines (6 PWM)
Entradas Analógicas: 6
Entradas/Salidas digitales: 40 pines
Entradas Analógicas: 0
Periféricos: Puerto USB para comunicar con el PC de forma serial. Extenso catálogo de módulos externos, como sensores, pantallas, motores, etc. (No incluidos en la tarjeta)Periféricos: Puertos 4xUSB Ethernet, wLAN 2.4GHz y 5GHz, HDMI, video/audio por conector de 3,5mm, HDMI, conector para cámara externa y display
Memoria:
Memoria Flash: 32 kB
SRAM: 2 KB
EEPROM 1kB
Memoria:
MicroSD de hasta 64GB
1GB RAM LPDDR2 SDRAM
S.O: Programas cargados a la memoria desde el Arduino IDES.O: Raspbian, Windows 10 IoT Core y otras distribuciones de Linux

Espero que la tabla anterior pueda dejar en claro dos cosas: la primera, que la Raspberry Pi, por sí sola, ofrece una diversidad de posibilidades bastante grande gracias a los diversos periféricos que incluye; y segundo, que no hay forma de comparar ambas tecnologías directamente. Sucede que las tarjetas de desarrollo, como la Arduino UNO, pertenecen a la familia de lo que denominamos “microcontroladores” y la Raspberry Pi, a las “microcomputadoras”.

Esto permite deducir que las aplicaciones a las que se enfocan cada una son diferentes; por ejemplo, a la tarjeta Arduino fácilmente se le puede colocar un módulo que maneje motores de corriente directa, unos cuantos sensores y ruedas, se le carga un programa y en escasos minutos se obtiene un robot sigue líneas. Se retiran esos módulos, se cambian por una pantalla LCD, se carga el programa adecuado y se obtiene un visualizador de mensajes promocionales. La característica principal de estas tarjetas es la versatilidad con la que podemos sustituir el hardware que lo acompaña y lo intuitivo que es escribir un programa para hacer funcionar dichos periféricos, sin olvidar la gran comunidad que siempre está activa desarrollando nuevos accesorios, probando cosas y añadiendo información a la vasta biblioteca que representa la información que acompaña al Arduino.

Por otro lado, la Raspberry Pi al utilizar un Sistema Operativo puede ejecutar programas más complejos escritos en distintos lenguajes de programación (comúnmente Python), a diferencia de Arduino, con Raspberry hay menos shields, que en este caso se llaman «HATs», pero no por ello son escasas. Existen muchos programas escritos específicamente para que corran en Raspbian (SO del Raspberry), lo que permite convertirlo en un servidor web, un emulador de consolas retro, un editor de texto portátil, entre otras aplicaciones interesantes. La comunidad que acompaña a Raspberry Pi es casi tan grande como la de Arduino, e incluso tan activa, lo que permite que el desarrollo de las aplicaciones sea constante. En síntesis, la Raspberry Pi es una computadora pequeña, se le pueden conectar monitor, teclado, ratón y utilizarla como una computadora de escritorio; usar el navegador, redactar documentos, reproducir archivos multimedia, etc.

Esta es una lista más desarrollada de los proyectos más representativos que se han implementado con ambas tarjetas:

Arduino

  • Herramientas del aprendizaje y la enseñanza
  • Proyectos de Robótica
  • Internet of Things
  • Automatización del Hogar
  • Impresoras 3D
  • Proyectos con Bluetooth
  • RFID y sistemas de identificación
  • Máquinas Expendedoras
  • Industria Biomédica
  • Sensores

Raspberry Pi

  • Servidores de Red
  • Reconocimiento facial
  • Sistemas de videovigilancia
  • Consolas portátiles de videojuegos
  • Computadoras portátiles
  • Estaciones meteorológicas
  • Sistemas satelitales y GPS
  • Robótica
  • Proyectos de Domótica
  • Entretenimiento multimedia
  • MIDI y otros proyectos musicales

Mencioné anteriormente las comunidades que acompañan a estas dos tarjetas, y es que es difícil hablar de ellas y pasarlas por alto. Sucede que Arduino fue creada para hacer más accesible el uso de microcontroladores tanto para estudiantes, artistas e ingenieros y facilitar el uso de esta tecnología y que fuera posible compartir los proyectos de forma libre para que otras personas pudieran mejorarlo o modificarlo a su gusto y necesidad. Así también, Raspberry Pi fue ideada para que las personas que quisieran experimentar con sistemas computacionales tuviesen una herramienta no sólo económica sino fácil de usar, y que las computadoras no fuesen una caja negra a la que solo pueden acceder por el monitor sino que también tuvieran acceso directo al hardware que lo acompaña. La filosofía de hacer accesibles esas tecnologías (exclusivas en principio a ingenieros y expertos en computación) al público en general, es lo que permitió que tuviesen tanto éxito y que la información abundara de una manera sin precedentes.

En conclusión, podemos resumir este análisis a estas observaciones:

  • La familia de tarjetas Arduino y Raspberry Pi no se pueden comparar directamente, son tarjetas diferentes que facilitan ciertos aspectos en el desarrollo de un proyecto dependiendo de cuál se elija.
  • Las tarjetas Arduino permiten trabajar fácilmente con mecanismos, sensores y otros dispositivos adicionales, no dejando de lado la programación que conlleva hacerlos funcionar.
  • Las tarjetas Raspberry Pi permiten desarrollar aplicaciones de software más complejas, que en algunos casos Arduino no puede hacer, pero no deja de lado la posibilidad de añadir hardware adicional que expanda las posibilidades de la misma.
  • Muchas aplicaciones que se pueden implementar con Arduino se pueden implementar con Raspberry Pi, con ciertas modificaciones y elementos adicionales.
  • Limitarse al uso de una sola tarjeta reduce nuestro horizonte de desarollo, el aprendizaje que se puede obtener de ambas se complementa y amplia nuestras capacidades.

Si deseas aprender más sobre alguna de estas tarjetas de desarrollo puedes consultar los cursos de Arduino y Raspberry Pi que tenemos en 330ohms.

Referencias:

https://readwrite.com/2014/05/07/arduino-vs-raspberry-pi-projects-diy-platform/#awesm=~oE5UgUlB3zjqcs


Comentarios