We are using two ZED2i with ROS wrappers. They are connected to Xavier NX onboard ports and operated by zed_multicam_single_nodelet.launch.
We are using them in an offload environment. But the cameras continuously lost the IMU signal, and it’s random. Sometimes camera1 doesn’t give IMU topic, sometimes camera2, and sometimes both. This situation usually happens when the platform starts moving and the cameras vibrate.
Here’s our question:
Do you have any idea about this situation? How can the connection be stabilized in such a harsh environment?
I realized the IMU’s polling rate is very high (~450hz), and I think it might be helpful to drop the rate to a reasonable range (~100hz). How can I modify it?
Hi @heesup
if you are sending the IMU topics over the network maybe you are saturating the bandwidth. Furthermore, if you are connecting more than a camera to the same Xavier NX.
You could try to use the throttle tool to reduce the frequency of the transmitted topics: http://wiki.ros.org/topic_tools/throttle
The cameras were connected via USB ports, and I’ve checked that both cameras were connected and sent IMU and image data. But sometimes, one of IMU topics are no longer published after the 90s ~ 5mins.
The ROS throttle function seems a promising solution, and I’ll try it.
I also found const double mSensPubRate = 400.0 variable in the zed_nodelets/src/zed_nodelet/include/zed_wrapper_nodelet.hpp. Would it better to use ROS throttle function rather than edit the variable and recompile the library?