AnyKode Marilou
Encyclopedia
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, 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.
The most complex objects can be made easily by assembling sub-parts. 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.
This is a list of supported devices types:
Simulation
Simulation is the imitation of some real thing available, state of affairs, or process. The act of simulating something generally entails representing certain key characteristics or behaviours of a selected physical or abstract system....
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
Open Dynamics Engine
The Open Dynamics Engine is a physics engine in C/C++. Its two main components are a rigid body dynamics simulation engine and a collision detection 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
Marilou's entities editor allows to design robots collision model using any of the static or dynamic objects in the simulated world. CAD-style editing tools are entirely graphical, easy to use, and allow to make changes and set-up new situations quickly.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.
The most complex objects can be made easily by assembling sub-parts. 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
- Totally 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 simulationSimulationSimulation is the imitation of some real thing available, state of affairs, or process. The act of simulating something generally entails representing certain key characteristics or behaviours of a selected physical or abstract system....
- High quality 3D rendering using pixel and vertex shaders
- Spot, Point, Ambient and Directional lights
- Dynamic shadowing
Devices
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/GyroscopeGyroscopeA gyroscope is a device for measuring or maintaining orientation, based on the principles of angular momentum. In essence, a mechanical gyroscope is a spinning wheel or disk whose axle is free to take any orientation...
- Air pressure forces
- BumperBumperAn automobile's bumper is the front-most or rear-most part, ostensibly designed to allow the car to sustain an impact without damage to the vehicle's safety systems...
s - Distance sensors (Ultrasonic, Infra Red and Laser)
- MotorsElectric motorAn electric motor converts electrical energy into mechanical energy.Most electric motors operate through the interaction of magnetic fields and current-carrying conductors to generate force...
and servo motors - Emitters and receivers
- Force and Torque sensors
- GPS
- LaserLaserA laser is a device that emits light through a process of optical amplification based on the stimulated emission of photons. The term "laser" originated as an acronym for Light Amplification by Stimulated Emission of Radiation...
range finders - LED
- LCD display
- Light Sources
- LidarLIDARLIDAR is an optical remote sensing technology that can measure the distance to, or other properties of a target by illuminating the target with light, often using pulses from a laser...
(3D-Scanner) - OdometerOdometerAn odometer or odograph is an instrument that indicates distance traveled by a vehicle, such as a bicycle or automobile. The device may be electronic, mechanical, or a combination of the two. The word derives from the Greek words hodós and métron...
s - Standard and panoramic spherical Cameras (Panoramic camera)
- Touch area
Robots programming
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++, BorlandBorlandBorland Software Corporation is a software company first headquartered in Scotts Valley, California, Cupertino, California and finally Austin, Texas. It is now a Micro Focus subsidiary. It was founded in 1983 by Niels Jensen, Ole Henriksen, Mogens Glad and Philippe Kahn.-The 1980s:...
C++ RAD Studio, G++ for Linux, CodeBlocks - MODA is Open-source and compatible Linux (Mac coming soon)
Compatibility systems
- Intempora RT-Maps
- Bonavision-iRSP
- Kineo-Kite Lab
- MatlabMATLABMATLAB is a numerical computing environment and fourth-generation programming language. Developed by MathWorks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages,...