The simulator-sdk is aimed at roboticists who want to simulate Aldebaran Robotics robots in their own 3D simulator.
It provides libraries, data, assets and examples.
lib/ALRobotModel | a C++ lib which describes all the Aldebaran-Robotics models (initial geometry, kinematics & dynamics data, sensors and actuators initial positions). |
lib/ALNAOsim | a C++ lib which enables to link the sensors / actuators to NAOqi (via the Hardware Abstraction Layer). |
lib/ALSimUtils | a C++ lib which launches automatically one naoqi per robot. |
For further information, see: Simulator-SDK reference
share/alrobotmodel/meshes | OGRE 3D format meshes. |
share/alrobotmodel/meshes-src | Blender format meshes. |
share/alrobotmodel/models | xml files defining robots. They should be provided to the ALRobotModel lib. |
examples/dummysim | a small example which shows how to use those lib. |
examples/robot_description | a tool which generates the description of all the Aldebaran-Robotics model in text or URDF format. |
To use the simulator-sdk for your own simulator, you have to write a plugin that uses the libs of the simulator-sdk.
The following figure summarizes this, and explains in further details how the simulator-sdk works.
Step | Action |
---|---|
From the root of simulator-sdk, move to examples/dummysim/ cd examples/dummysim/
|
|
Create a build directory, and move into it mkdir build && cd build
|
|
Configure the build with cmake cmake -DCMAKE_TOOLCHAIN_FILE=../../../toolchain-pc.cmake ..
|
|
Compile make
|
|
Execution of dummysim. Do not forget to uncomment the dcm_hal in the file etc/naoqi/autoload.ini in the naoqi-sdk. Next, at the root of simulator-sdk: on Linux: bin/dummysim share/alrobotmodel/models/ROMEO.xml <naoqi_port> <naoqi_sdk>
on Mac: DYLD_LIBRARY_PATH=lib bin/dummysim share/alrobotmodel/models/ROMEO.xml <naoqi_port> <naoqi_sdk>
on Windows: launch bin/dummysim share/alrobotmodel/models/ROMEO.xml <naoqi_port> <naoqi_sdk>
Where: <naoqi_port> is the port on which NAOqi will be launched and <naoqi_sdk> is the sdk from which NAOqi will be launched. |
|
Check that everything works fine:
|
You can instantiate several robots on the same computer by defining a port for each.
Everything is in the Standard International.
In its current implementation, the video does not work without NAOqi running.
Use robot_description to generate urdf:
Step | Action |
---|---|
Install ros and rviz (see http://www.ros.org/wiki/) | |
Build robot_description (see How to build dummysim) | |
Use robot_description to generate the urdf file of the model you need. At the root of the simulator-sdk: bin/robot_description --urdf --mesh-path=share/alrobotmodel/meshes --model-file=share/alrobotmodel/models/<model_name>.xml > <model_name>.urdf
|
|
Visualize it with rviz (for more information, see http://www.ros.org/wiki/rviz): rosrun urdf check_urdf <model_name>.urdf
roslaunch urdf_tutorial display.launch model:=<model_name>.urdf
|