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

Ylo3-real-robot-controller-on-quad-sdk-noetic-ekf-hardware #338

Open
wants to merge 53 commits into
base: main
Choose a base branch
from

Conversation

elpimous
Copy link

Hello all,
Working on ylo2 robot real controller.
Torque mode ?!! with BLDC controllers.

Any help will be very appreciated !!!

@elpimous
Copy link
Author

Questions : I'm not certain to know what order the quad-sdk controller sends to motors controllers.
The send command is position, velocity and torque, or only torque(tau)?
The read command reads pos, vel, torque, correct?
Is there anywhere, the code for a real robot? I could learn it and adapt it to my robot.
Thanks friends.
Vincent

@ardalantj
Copy link
Contributor

Hi @elpimous. Thank you for contributing to quad-sdk. Perhaps we should add this in the documentation, but it would be great to write a specific summary of what features the PR is adding. Regarding your question, in hardware interface (part of robot driver package) we define the interface to hardware and send position/velocity set points, feedforward toques, and kp/kd feedback gains. Depending your specific hardware, you may have to change the specifics of the hardware interface. For our specific case (Spirit 40), commands are sent over mblink from tx2 to the mainboard. Let us know if you have any follow ups.

@elpimous
Copy link
Author

Hello @ologandavid I'm working on it now, i'll send working files pretty soon..
And I'll update this discussion file.

@elpimous
Copy link
Author

elpimous commented Jul 19, 2023

Hello @ologandavid, It builds without errors, now, and simulation is working.

However, I have some errors on catkin run_tests :
some fails with KinematicsTest, and local_planner ?! Perhaps could you help here ?

@ologandavid
Copy link
Collaborator

Hi @elpimous,
Yup, good to hear from you! I can take a look and see if I can debug the issue.

Best,
David Ologan

@elpimous
Copy link
Author

hi, @ologandavid
Do you have an idea of when I will be able to use a ready ekf version working on hardware too ?
Ready to test on my machine.
Impatient to hear from you, David
Vincent

@ologandavid
Copy link
Collaborator

ologandavid commented Jul 26, 2023

Hi @elpimous ,
We're currently planning on an End of Summer release for Quad-SDK with a bunch of new functionality. Just want to sure everything is tested before we pass it on to you. I'm also reviewing your pull request. Thanks for your patience!

Best,
David Ologan

@elpimous
Copy link
Author

Hello @ologandavid @jrenaf
Like you told me, Jiming, I tested to run real robot, removing the "/" on local_plan topics, but the problem persists !
Local plan doesn't work as expected, and rviz shows erratic arrows on foots.
Here is a video showing all working nodes, + t265 + internal imu.
In the end video, I lifted the robot in the air by hand, to check same moves in rviz.

capture02.mp4

Hope you'll be able to help.
Vincent

@elpimous
Copy link
Author

Hi @elpimous , We're currently planning on an End of Summer release for Quad-SDK with a bunch of new functionality. Just want to sure everything is tested before we pass it on to you. I'm also reviewing your pull request. Thanks for your patience!

Best, David Ologan

Very cool !! Thanks friends.

@elpimous
Copy link
Author

Hello @ologandavid
any news with a noetic working ekf hardware version.?
Impatient to test.
😅

@elpimous
Copy link
Author

Hi @ologandavid @ardalantj.
Any update soon, for a noetic on real robot ?

@ologandavid
Copy link
Collaborator

ologandavid commented Sep 13, 2023

Hi @elpimous,
Sorry for the inconvenience, we've been having trouble with the hardware platform we normally use to test in lab. It's not hardware tested so I can't guarantee it'll work on hardware, but feel free to checkout the noetic_devel_ekf_clean branch. It's an implementation of the EKF shown here and here. It currently works in simulation, but you'd have to tune the estimator noise parameters, and input the initialization pose of your robot.

Best,
David Ologan

@elpimous
Copy link
Author

Hi @ologandavid Happy to hear from you.
Thanks a lot, I'll test it on my hardware and i'll send feedback

@ologandavid
Copy link
Collaborator

@elpimous,
Any updates on this branch, I'm still getting build errors on my end.

-David

@elpimous
Copy link
Author

Sorry, it was paused ...
Ill modify it, with my next tests on Noetic ekf tests.
Ill keep you informed .

@elpimous elpimous changed the title Ylo2-real-robot-controller-on-quad-sdk Ylo3-real-robot-controller-on-quad-sdk-noetic-ekf-hardware Feb 20, 2024
@elpimous
Copy link
Author

elpimous commented Feb 20, 2024

@ologandavid Could you tell what packages to run to test in real ?
using :
roslaunch quad_utils remote_driver.launch robot_type:=spirit
roslaunch quad_utils robot_driver.launch robot_type:=spirit
(modified original spirit_interface to avoid external conflicts, for now)
(robot_driver.launch launches the imu node too)

rviz presents only spirit body, in white !
Capture d’écran de 2024-02-20 22-01-37

@ologandavid
Copy link
Collaborator

ologandavid commented Feb 21, 2024

The packages you're running are correct, but the visualization won't have a transform or state information if you don't specify the estimator you're using while launching robot driver. These should either be comp_filter (mocap) the default or ekf_filter (EKF estimator). That's the primary reason your visualization has difficulty loading in the robot. By the way, you shouldn't need to specify robot_type as spirit is the default.

@elpimous
Copy link
Author

elpimous commented Feb 22, 2024

Capture d’écran de 2024-02-22 14-39-24
I set : into robot_driver.launch.
same error.

I don't use heartbeat function.
?

Morever, in terminal, spin() seems to stop after a few second (3 to 6s) see pict
Capture d’écran de 2024-02-22 15-25-15

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.

5 participants