Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adapt to V3 Interface #10

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Conversation

ivangr3
Copy link

@ivangr3 ivangr3 commented Sep 26, 2022

Adaptation of the ROS package for V3 gimbals. It would be great to have a different branch for this contribution as it is based on a different interface.

@ivangr3 ivangr3 closed this Sep 26, 2022
@ivangr3 ivangr3 reopened this Sep 26, 2022
@ivangr3 ivangr3 changed the title Initial commit Adapt to V3 Interface Sep 26, 2022
@Flova
Copy link
Owner

Flova commented Sep 30, 2022

Thank you for your contribution! I will probably put it on a different branch. The new SDK seems more limited regarding its feature set. Is this the case or are e.g. the IMU readout only missing from this PR?

Copy link
Owner

@Flova Flova left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few comments

@@ -1,3 +1,7 @@
[submodule "gremsy_base/src/gSDK_Linux"]
path = gremsy_base/src/gSDK_Linux
url = ../../Gremsy/gSDK.git
[submodule "gremsy_base/src/gSDK"]
path = gremsy_base/src/gSDK
url = https://github.com/Gremsy/gSDK.git
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use the ../../ instead of https://github.com/as it better compatible with repos that are cloned via ssh.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No problem, I'll change that.


The gimbal is connected via UART with a Linux host device running this node.
Devices such as the Raspberry Pi feature a build-in UART interface others like most PCs or Laptops need a cheap USB Adapter.
The used serial device, as well as many other gimbal specific parameters, can be configured in the `config.yaml` file.
The node publishes the gimbals encoder positions, imu measurements, and the camera mount orientation.
The node publishes the gimbals encoder positions.
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the IMU, etc not supported by the SDK or is it not implemented in the ROS interface?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've only been able to implement the publication of the gimbal encoders with the new SDK. In the case of the IMU, the method used to get the data returns without closing a mutex and the system blocks. I think that it's a bug in the SDK but might be due to an incorrect use of the method. Regarding the camera mount orientation, I don't find a method in the new SDK to read the data. However, I haven't studied the functionalities of the new interface thoroughly so I could have a look to ensure they can't be implemented.

mount_orientation.pitch,
mount_orientation.yaw)));
}
encoder_ros_msg.vector.x = ((float) encoder_values.roll);
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the SDK interface changed to radians now?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It works directly with degrees. There would be no problem to change it to radians if preferred.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants