0
$\begingroup$

Rosanswers logo

I've got a Shimmer2R module from which I obtain 9 axis: Acceleration X, Y, and Z; Gyroscope X, Y, and Z; and Magnetometer X, Y, and Z.

I would like to transmit this data using standard ROS messages. I found the sensor_msgs/MagneticField messages for the magnetometer. I thought the sensor_msgs/Imu messages would be appropriate for the other data.

However, the Imu message seems to present the data in a different way than how I obtain it. I am unfamiliar with this representation and I'm looking for guidance on how to convert my data to the sensor_msgs/Imu representation. An internet search didn't provide me with any useful pointers.

On a side note, I have also read that to obtain a heading from the magnetometer, the data from the Gyroscope is also necessary. Is there any ROS node that does this calculation?


Originally posted by RafBerkvens on ROS Answers with karma: 386 on 2013-10-30

Post score: 3


Original comments

Comment by shivesh_sk on 2014-06-24:
Hi, I also want to interface Shimmer2R module in ROS groovy running on Ubuntu. But I don't know how to interface Shimmer2R module on linux. Any help would be more than appreciated.

Comment by RafBerkvens on 2014-06-24:
I've quickly thrown what I have on GitHub: https://github.com/RafBerkvens/shimmer. It supports a shimmer Bluetooth connection, but documentation is lacking and there a lot of work in progress. But you might find inspiration in the Python script accel_gyro_mag.py.

Comment by shivesh_sk on 2014-06-24:
Thanks a ton! I will check it out. :)

Comment by shivesh_sk on 2014-06-25:
I tried your executing your node but I am getting this error: ================================================================================REQUIRED process [shimmer/accel_gyro_mag-1] has died! process has died [pid 3166, exit code 1, cmd /home/shivesh/catkin_ws/src/shimmer-master/scripts/accel_gyro_mag.py __name:=accel_gyro_mag __log:=/home/shivesh/.ros/log/7e16bdb6-fc6a-11e3-9f41-001e65ca05f4/shimmer-accel_gyro_mag-1.log]. log file: /home/shivesh/.ros/log/7e16bdb6-fc6a-11e3-9f41-001e65ca05f4/shimmer-accel_gyro_mag-1*.log Initiating shutdown!

Shimmer2R modules are working normally on my linux. I am able to get the data in a CSV file through ShimmerConnect application for linux. Also, I didn't understand how your program will identify the shimmer we want to connect. For eg, I don't know where to put its rfcomm id for communication.

Comment by RafBerkvens on 2014-06-25:
Bluetooth settings are configured on lines 101 and 102. Admittedly, the code is undocumented. I believe that issues with this specific node are better handled on the GitHub website than using these comments.

Comment by shivesh_sk on 2014-06-25:
Hi I updated my bd_addr and port as directed. But still it throws an error. I have put the issue in the github. Kindly help.

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

The IMU data does map pretty well to your data: angular_velocity would be your gyro data and linear_acceleration the acceleration data.


Originally posted by dornhege with karma: 31395 on 2013-10-30

This answer was ACCEPTED on the original site

Post score: 2


Original comments

Comment by RafBerkvens on 2013-10-30:
Seems fair enough. Any idea what I could do with the orientation quaternion?

Comment by dornhege on 2013-11-14:
Depends on how far you want to go. The simplest is to just integrate the gyros. The better solution is to include the accells and filter all data.

Comment by kerollosghobrial on 2016-04-28:
but how can i integrate with the other sensors. do you can a code to give me the orientation Yaw, pitch and roll ?thanks in advance

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.