Octomap / GPU Voxel / Franka / MoveIt / Collision Avoidance - Help
Hi folks,
I want to implement a collision Avoidance for a Franka Robot using two Intel D435i 3D Cameras, Octomap and Moveit.
First Problem: The Octomaps refresh very slowly, at least in rviz. I would say about 2 Seconds when i put an obstacle into the view of the 3D cameras. I tried to limit the octomap distances, bigger voxels, etc. It is still very slow. When i display the two original point cloud topic streams from both the camera nodes, they display flawlessly with 60 fps. Is it still to much data for octomap?
Second Problem: I thought about using GPU Voxels instead of Octomap. This uses CUDA, but libfranka needs an PREEMPT_RT linux kernel. But there are no nvidia drivers for RT Kernels. The nouveau drivers have still their performance problem and liqourix kernel which has realtime capabilities and support for nvidia drivers does not work with libfranka.
What can i do about it? Later i want to implement some ML algorithms for object detection for the panda robot. Do i have to run the visual part of ROS on a second machine and the libfranka part on another one? Or any other suggestions?
Thanks in advance Armin
I got some news from franka-community. At the franka_ros/franka_control node some can pass a realtime ignore Parameter to the Franka::Robot instance inside of the cpp program. The robot should then run even on a non realtime kernel. I tried it with a generic linux kernel and the liqourix kernel and started the nodes with launch-prefix"sudo -S -E nice -n -20" but only the gripper moves. The robot itself throws a controller. So still playing with the idea of two separate systems.