AnyKode Marilou

From Wikipedia, the free encyclopedia
Jump to: navigation, search
anyKode Marilou
Mariloueditor320.jpg
Marilou IDE screenshot
Developer(s) anyKode
Stable release
anyKode Marilou 2010 / February, 2013
Operating system Windows for the Physics editor. Windows, Ubuntu and Mint for the simulation part.
Type Robotics suite
License Trialware
Website www.anykode.com

anyKode Marilou is a modeling and simulation environment for mobile robots, humanoids, articulated arms and parallels robots operating in real-world conditions that respect the laws of physics. This robotics suite is used in research centers as well as industry for various projects like humanoid architectures, wheeled and multi legged vehicles and multi-robot systems (Multi-agents).

Marilou real-time engine uses the ODE (Open Dynamics Engine) for collisions detecting and dynamics management. Various 'real world' variables like forces, torques, masses, damping, friction and others can be adjusted directly to the objects surfaces.

Scenes modeling[edit]

Entities editor allows to design robots collision model by using any of the static or dynamic objects in the simulated world. CAD-style editing tools are entirely graphical.

Scenes, dynamics and robots properties can be changed from a view/document/properties IHM style. Also the editor takes in charge re-usable physicals entities as well as pure 3D models.

Marilou uses a hierarchical system to present entire objects at the highest level (the current world). This approach makes it possible to reuse members of a complex object as sub-parts of another object.

Key features[edit]

  • Graphical handling of robots and environments models (physics parts and 3D models)
  • Modeling helpers, Refactoring tools, several documents and viewpoints
  • Rigid bodies, n-axis constraints and springs
  • Mechanical constraints
  • Surface properties (reflection, shock, friction, incidence, rebound, behavior with infra-red or ultrasound ...)
  • Hierarchy and complex assemblies
  • Real-time or accelerated simulations (RT-Multiplier)
  • Multi-robots, multiple embedded applications, centralized or distributed
  • Acquisition/measurement cycles as low as 1 ms
  • Interactions with running simulation
  • 3D rendering using pixel and vertex shaders
  • Spot, Point, Ambient and Directional lights
  • Dynamic shadowing
  • Physics Editor for Windows, Exec (the simulator) for Windows, Ubuntu and Mint (BETA)

Devices[edit]

Marilou vacuum simulation sample

Marilou includes a complete set of user-modifiable virtual devices. The behavior of these devices may be overridden by the properties of real devices available in robotics. This feature allows the programmer to use a known device's parameters directly.

This is a list of supported devices types:

  • Embedded robotic components
  • Absolute Compass
  • Actuating cylinders / jack
  • Accelerometers/Gyro-meters/Gyroscope
  • Air pressure forces
  • Bumpers
  • Distance sensors (Ultrasonic, Infra Red and Laser)
  • Motors and servo motors
  • Emitters and receivers
  • Force and Torque sensors
  • GPS
  • Laser range finders
  • LED
  • LCD display
  • Light Sources
  • Lidar (3D-Scanner)
  • Odometers
  • Standard and panoramic spherical Cameras (Panoramic camera)
  • Touch area

Robots programming[edit]

MODA (Marilou Open Devices Access) is the Marilou generic SDK for handling simulated robots and their embedded devices, such as sensors and actuators. Depending on chosen language, MODA provides libraries (.lib / .a) or .Net assembly (.dll) for accessing simulation over the network. Synchronized to a simulated clock, algorithms can run on any computer in the network. Individual robots may run several programs. In addition, one MODA program can control several robots, whether or not they be in the same world. MODA TCP server can be embedded in real robot.

  • Languages: C/C++, C++ CLI, C#, J#, VB#
  • Compilers: Microsoft Visual Studio suites, DevC++, Borland C++ RAD Studio, G++ for Linux, CodeBlocks
  • MODA is Open-source and compatible Linux (Mac coming soon)

See also[edit]

References[edit]