¿Puede ROS ejecutarse en una Raspberry Pi?
ROS renunció a funcionar en una red de máquinas, con diferentes máquinas, incluso diferentes núcleos en la misma máquina que realizan diferentes trabajos. ¿Puede una de esas máquinas ser una Raspberry Pi?
Estoy considerando usar un R-Pi como maestro EtherCAT en un robot móvil, comunicándome con la PC principal a través de WiFi, usando un dongle.
- ¿Puede un R-Pi incluso ejecutar ROS?
- ¿Tendría un R-Pi suficiente potencia de procesamiento para realizar algunos servo de 1 kHz?
- ¿Sería posible ejecutar algunos servos en el host a través de la conexión WiFi?
fuente
La robótica es lo suficientemente difícil como cuando todas sus dependencias están funcionando. Lo último que necesita son problemas adicionales provenientes de componentes incompatibles o combinaciones no compatibles.
Lo miré un poco y aquí estaba mi progresión:
Raspberry Pi no es compatible con Ubuntu porque su CPU ARM usa un conjunto de instrucciones más antiguo (¿ARM v6, creo?) Y el equipo de Ubuntu dejó de admitirlo en 2009.
Beaglebone es similar a una Raspberry Pi en muchos aspectos y tiene un conjunto de instrucciones más nuevo para que ejecute Ubuntu. Sin embargo, la 'mejor' distribución de Ubuntu ARM está saliendo del proyecto Linaro y dejaron de admitir el Beaglebone algunas revisiones (la última fue Linaro 12.03) porque está usando un procesador TI OMAP 3 más antiguo (bienvenido al maravilloso mundo del teléfono inteligente rápido Progreso).
Mi siguiente paso fue mirar el TI Pandaboard que usa el nuevo procesador OMAP 4 que actualmente es compatible, pero cuesta más cerca del rango de $ 200.
Pero ahora Ubuntu se lanzó oficialmente para el Nexus 7. Con 200 dólares, el Nexus 7 te ofrece todo lo que ofrece una Raspberry Pi y mucho más. Tenga en cuenta que incluso con una Raspberry Pi, una vez que agrega el cargador, el adaptador wifi, la tarjeta de almacenamiento y los cables, se acerca cada vez más a 100 dólares que a 35 dólares, por lo que, en mi opinión, el Nexus 7 es una oferta mucho mejor.
Por último, no intente emitir una señal de 1 khz desde un sistema operativo en tiempo no real. Adjunte un microcontrolador barato como el PJRC Teensy (clon Arduino) y deje que se encargue de las tareas simples en tiempo real. De esta manera, dedica la CPU económica a estas simples tareas sensibles al tiempo. A 16 MHz con soporte para temporizadores múltiples, un pequeño AVR MCU puede manejar media docena de tareas como esta sin problemas.
fuente
ThomasH respondió bien a esta pregunta , pero además solo quiero sugerir la posibilidad de unir inalámbricamente el quadcopter a una computadora portátil. Es decir, simplemente escriba un protocolo de comunicación inalámbrico (wifi, bluetooth?) Agradable y rápido para el quadcopter, luego realice las tareas pesadas de la CPU en una computadora portátil, mientras transmite las instrucciones y consultas del sensor al R-PI. Probamos muchas implementaciones y nos decidimos por una configuración similar para todos nuestros pequeños robots. Además, casi todas las implementaciones de quadcopter asombrosas se configuran de esta manera. Facilita la vida y le permite usar las bibliotecas de gran éxito sin sacrificar la velocidad.
Seamos honestos, es muy probable que el quadcopter no salga del alcance inalámbrico de su computadora portátil de todos modos.
fuente
Sí , pero instalar ROS en Debian es factible, pero no trivial.
fuente
Se acaba de llenar un repositorio experimental con paquetes ROS Groovy para Raspbian (wheezy), las instrucciones para usarlo se pueden encontrar aquí:
http://www.ros.org/wiki/groovy/Installation/Raspbian
El repositorio tiene más de 350 paquetes y los paquetes principales de ROS se pueden instalar en cuestión de minutos en una nueva instalación de Raspbian.
fuente
Verificaría el proyecto rosserial . Básicamente, genera un código para Arduino para comunicarse en serie a un nodo ROS en la computadora. Apuesto a que puede convertirlo a la Raspberry Pi, para que pueda usar algún otro protocolo para comunicarse entre la Pi y la computadora host.
fuente
sí. Seguro. Hemos estado haciendo esto por mucho tiempo.
ROS no es un "SO" y no es grande. Es solo "middleware" que funciona bien en "raspbian".
Acabamos de grabar con el raspbian oficial (por lo que esperamos que pueda hacernos trabajar en un entorno "estable") y compilar el ROS con la fuente. aquí está el enlace paso a paso (para Kinetic):
http://wiki.ros.org/ROSberryPi/Installing%20ROS%20Kinetic%20on%20the%20Raspberry%20Pi
puedes probar ros_comm o escritorio.
Intenté ros_comm y luego agregué otros paquetes más tarde.
fuente
Hay un proyecto llamado ROSpberry Pi que puedes consultar. Y una compañía en Pasadena llamada Acrobotic ahora está vendiendo imágenes SD de ROSpberry preinstaladas.
fuente
A diferencia de lo que se ha dicho en las otras respuestas (en lugar obsoleta), he éxito probado ROS a ambos corriendo Raspbian o Ubuntu con un Frambuesa Pi Modelo B 2 .
Después de un poco de ida y vuelta, me quedaré con Ubuntu: aunque no logré acceder al módulo de cámara Raspberry con Ubuntu, veo grandes ventajas en su gestión de paquetes superior y compatibilidad con ROS. ¿Necesita alguna nueva característica extraña de ROS? Solo
sudo aptitude install
el paquete y ya está todo listo.fuente
Tengo experiencia instalando ROS en un Raspi usando Ubuntu Mate como sistema operativo. Es esencialmente un sistema operativo ubuntu regular, pero en un dispositivo de brazo. Puede instalar ROS a través de binarios preconstruidos. No requiere más configuración que una computadora portátil Ubuntu normal. Sé que hay una versión de Pi que no es oficialmente compatible (creo que es el 3B +, afortunadamente ha pasado un tiempo desde la instalación), pero alguien descubrió cómo solucionar ese problema en una publicación del foro que busqué en Google.
fuente
Puede probar este tutorial para ROS ejecutado en una Raspberry Pi, funciona http://www.instructables.com/id/Raspberry-Pi-and-ROS-Robotic-Operating-System/
fuente
sí,
encuentra la descarga aquí:
http://answers.ros.org/question/200504/raspbian-jessie-ros-indigo-download-image/
incluye controlador de framebuffer para pantalla C-Berry TFT
fuente