La arquitectura software es un componente crucial en cualquier sistema robótico autónomo, ya que define la estructura organizativa y las interacciones de los diferentes módulos que lo integran. Para que un sistema robótico pueda ejecutar de forma autónoma diversas tareas, se requieren procesos variados, como percibir el entorno, representar conocimientos, tomar decisiones y planificar movimientos. Si bien el desarrollo de cada uno de estos procesos es fundamental, su integración en una arquitectura funcional para su implementación también lo es. Esta integración tiene profundas implicaciones en la gestión de recursos, la adaptabilidad a diferentes entornos y tareas, la flexibilidad para modificar o expandir las funcionalidades y hacer frente a nuevos requerimientos, y la facilidad para el mantenimiento y la actualización del sistema. Por ello, en este artículo se presenta la arquitectura software diseñada para controlar, comunicar e integrar los distintos módulos que componen un bimanipulador móvil, destacando entre sus principales ventajas, la facilidad para depurar errores y llevar a cabo pruebas de nuevas aplicaciones sin el riesgo inherente de dañar el equipo físico. Para demostrar la viabilidad de la propuesta, la implementación de la arquitectura se valida mediante su aplicación al sistema robótico de manipulación dual HortiRobot, concebido para realizar varias de las tareas implicadas en el ciclo de vida de los cultivos agrícolas.