MARIE is a cutting-edge design software specifically engineered for mobile and autonomous robot applications. It provides a comprehensive suite of tools to create efficient and effective solutions for robotics design.
In contrast to conventional application-to-application relationships, each application interacts with the MARIE communication system, which helps and supports distributed system creation. MARIE is essentially a toolbox suitable for creating robotics systems with development guidelines and APIs to support application-specific operations.
MARIE uses the mediator design pattern for distributed systems, enabling the management of different applications without the need for shared communication protocols. This centralized control unit (the mediator) interacts independently with each colleague (the applications) and coordinates global interactions between colleagues to achieve the desired system.
Application Adapters are responsible for sending service requests and communications from the centralized control unit to the applications, using an application proxy, while Communication Adapters translate information between different communication protocols and mechanisms. Communication Managers create and manage communication links between Application Adapters that need to be connected. Application Managers coordinate system states, achieve coherence and stability, and control and configure all components available in the system.
Ports & Communication Strategies are responsible for interconnections between MARIE’s components, with each component having one or more Ports that can act as tap points where communication links can be established. Each Port has its own Communication Strategy (CS) on how it handles incoming and outgoing data, which can implement or be based on a known protocol, such as TCP, UDP, or IPC, among others.
The latest release includes several upgrades, such as a build system based on Scons, simplified component creation, user-defined plugins for CFB, CS, and Data Factory (SerDes), project file description instead of start scripts, automatic socket port number management, a new console, and a GUI Application Manager. Additionally, a toolbox for RobotFlow, unit tests, new documentation, and a wiki-based website were added, along with the correction of code bugs and issues.
In sum, MARIE is an excellent software tool that facilitates fast and efficient development of robotics systems while providing development guidelines, APIs, and communication strategies to ensure transparency and reusability.
Version 0.5.0: N/A