lord-microstrain / microstrain_inertial_driver_common Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
Currently, the twist field in odometry is published as being in the same frame as the position. The message definition for nav_msgs/Odometry
notes that this should be in the child_frame_id
. https://github.com/ros2/common_interfaces/blob/f3cb4848560e91596e7688e8ac1816828fa460cb/nav_msgs/msg/Odometry.msg#L14-L15
Using the microstrain node with ROS Noetic produce many Warning: TF_REPEATED_DATA messages that flood the console. From the discussion at #467 from geometry2, the current solution is to make sure you don't publish the TF with the same timestamp. Looking at publishers.cpp|212, it seems like the only requirement to publish a new TF is that the filter_relative_odom_pub_ be updated.
However, handleFilterPositionLlhUncertainty does not update the timestamp for the Transform while updating the covariances, producing multiple TFs with the same data.
Two ways to tackle this:
Hi,
When setting use_enu_frame to true the heading in the topic /gx5/nav/heading is constantly zero.
Maybe this is on purpose because heading is usually wrt north (?) but if not, its missing.
-Yair
Hi,
I'm trying to set the imu_data_rate to 250 Hz in my parameter file and I keep getting the following error
'terminate called after throwing an instance of 'mscl::Error_Communication'. The IMU is capable of data rates up to 1kHz, so I'm not sure why there seems to be a 100Hz limit built into the ROS driver. Can anyone assist me with diagnosing this problem?
Thanks
roslaunch microstrain_inertial_rqt quickview.launch
...
RosPluginProvider.load(microstrain_inertial_rqt/Quickview) exception raised in __builtin__.__import__(microstrain_inertial_rqt.quickview, [Quickview]):
Traceback (most recent call last):
File "/opt/ros/noetic/lib/python3/dist-packages/rqt_gui/ros_plugin_provider.py", line 79, in load
module = __builtin__.__import__(
File "/opt/ros/noetic/lib/python3/dist-packages/microstrain_inertial_rqt/quickview.py", line 3, in <module>
from .utils.constants import _MICROSTRAIN_ROS_VERISON
ModuleNotFoundError: No module named 'microstrain_inertial_rqt.utils'
PluginManager._load_plugin() could not load plugin "microstrain_inertial_rqt/Quickview":
Traceback (most recent call last):
File "/opt/ros/noetic/lib/python3/dist-packages/qt_gui/plugin_handler.py", line 102, in load
self._load()
File "/opt/ros/noetic/lib/python3/dist-packages/qt_gui/plugin_handler_direct.py", line 55, in _load
self._plugin = self._plugin_provider.load(self._instance_id.plugin_id, self._context)
File "/opt/ros/noetic/lib/python3/dist-packages/qt_gui/composite_plugin_provider.py", line 72, in load
instance = plugin_provider.load(plugin_id, plugin_context)
File "/opt/ros/noetic/lib/python3/dist-packages/qt_gui/composite_plugin_provider.py", line 72, in load
instance = plugin_provider.load(plugin_id, plugin_context)
File "/opt/ros/noetic/lib/python3/dist-packages/rqt_gui_py/ros_py_plugin_provider.py", line 61, in load
return super(RosPyPluginProvider, self).load(plugin_id, plugin_context)
File "/opt/ros/noetic/lib/python3/dist-packages/qt_gui/composite_plugin_provider.py", line 72, in load
instance = plugin_provider.load(plugin_id, plugin_context)
File "/opt/ros/noetic/lib/python3/dist-packages/rqt_gui/ros_plugin_provider.py", line 90, in load
raise e
File "/opt/ros/noetic/lib/python3/dist-packages/rqt_gui/ros_plugin_provider.py", line 79, in load
module = __builtin__.__import__(
File "/opt/ros/noetic/lib/python3/dist-packages/microstrain_inertial_rqt/quickview.py", line 3, in <module>
from .utils.constants import _MICROSTRAIN_ROS_VERISON
ModuleNotFoundError: No module named 'microstrain_inertial_rqt.utils'
I did a source checkout and went back to 2.5.0
and that looks to work
These are the apt installed versions:
ii ros-noetic-microstrain-inertial-driver 3.0.1-1focal.20230216.003402 amd64 The ros_mscl package provides a driver for the LORD/Microstrain inertial products.
ii ros-noetic-microstrain-inertial-driver-dbgsym 3.0.1-1focal.20230216.003402 amd64 debug symbols for ros-noetic-microstrain-inertial-driver
ii ros-noetic-microstrain-inertial-examples 3.0.1-1focal.20230215.233316 amd64 Example listener for Parker LORD Sensing inertial device driver ros_mscl (C++).
ii ros-noetic-microstrain-inertial-examples-dbgsym 3.0.1-1focal.20230215.233316 amd64 debug symbols for ros-noetic-microstrain-inertial-examples
ii ros-noetic-microstrain-inertial-msgs 3.0.1-1focal.20230210.214240 amd64 A package that contains ROS message corresponding to microstrain message types.
ii ros-noetic-microstrain-inertial-rqt 3.0.1-1focal.20230215.234432 amd64 The microstrain_inertial_rqt package provides several RQT widgets to view the status of Microstrain devices
(and now that I look I see this is the wrong repo to report this, it should be https://github.com/LORD-MicroStrain/microstrain_inertial or microstrain_inertial_rqt_common)
Fairly simple issue (I hope)
Our team had been using version 2.6.0 of the Microstrain Inertial Driver to collect imu data. Our custom config file set the imu_data_rate field to 200.
The method of measuring the actual rate is by inspecting a rosbag where we bag all of the data on the topic /imu/data, count the messages received, and divide by the length of the rosbag.
Upon updating to version 3.0.0 (installed from apt) we cannot hit this rate using the same configuration file. We are seeing numbers in the range 150-190 now.
Has anyone else seen rate problems after updating the driver version?
Maintainers, please let me know what else is needed for an issue diagnosis...
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.