Talos simulation requires many modified packages that comes along with the full ros installations like gazebo_ros, transmission_interface and many. So to minimize the conflict and to not to disturb the ros installation by removing several packages, you can use the docker as a solution. This docker contains ros-base along with the required simulation tool for the talos simulation. It also has some utility tools such as terminator, geany (text editor) and nautilus (file manager gui). If you follow this guide you will also be able to access the files from the host in the docker, mounted under /home/host/
I have also created 2 useful scripts to build and run this image.
sudo apt-get install xauth)$ docker pull 1at7/talos-simulation:v.1.4$ git clone https://github.com/aarsht7/docker-support-scripts-talos$ cd docker-support-scripts-talos$ chmod +x run.sh talos-simulation.sh$ ./run.shAnd whenever you want to start the container, it is advised to run following script, instead of the conventional one.
$ ./talos-simulation.shAfter starting the docker,
Cloning the required repo. (This is a private repo and not included with the docker due to the privacy reasons)
cd /home/talos_ws/src
git clone [email protected]:aarsht7/motion_converter_talos.git
cd /
After cloning the repo.
Launch the terminaotr terminator -u
Split the teminator window in the 5 parts using right click of mouse.
excecute cd /home/talos_ws/ && sa in 4 of them
in 5th terminal cd /home/talos_ws/ && sa && cd src/motion_converter_talos
Use underscores instead of spaces while namming the file,.
To convert any motion yaml file you generated, You will use the 5th terminal. To do so, use python3 convert.py <motion_file> <FPS>
New file will be generated with name <motion_file>_converted.yaml.
Now in terminal #1 excecute roslaunch talos_gazebo talos_gazebo.launch
In terminal #2 roslaunch talos_controller_configuration position_controllers.launch
In terminal #3
rosparam load src/motion_converter_talos/<motion_file>_converted.yaml
rosparam set /play_motion/disable_motion_planning true
rosrun play_motion play_motion
wait till all the controllers load up.
rostopic pub /play_motion/goal play_motion_msgs/PlayMotionActionGoal "header:
seq: 0
stamp:
secs: 0
nsecs: 0
frame_id: ''
goal_id:
stamp:
secs: 0
nsecs: 0
id: ''
goal:
motion_name: 'name_of_motion'
skip_planning: true
priority: 0"
Content type
Image
Digest
Size
1.2 GB
Last updated
over 4 years ago
docker pull 1at7/talos-simulation:v.1.4