Skip to content

Add functionality to send MoveP and MoveC instructions to the robot #303

New issue

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

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

Already on GitHub? # to your account

Merged
merged 16 commits into from
Apr 16, 2025

Conversation

urfeex
Copy link
Member

@urfeex urfeex commented Apr 1, 2025

This PR aims at supporting to send MoveP and MoveC commands to the robot directly through the TrajectoryPointInterface and the InstructionExecutor.

Copy link

codecov bot commented Apr 1, 2025

Codecov Report

Attention: Patch coverage is 98.47328% with 2 lines in your changes missing coverage. Please review.

Project coverage is 76.02%. Comparing base (1632f6d) to head (7f2ec52).
Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
src/control/trajectory_point_interface.cpp 97.80% 0 Missing and 2 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #303      +/-   ##
==========================================
- Coverage   76.05%   76.02%   -0.03%     
==========================================
  Files          87       87              
  Lines        3684     3738      +54     
  Branches      416      414       -2     
==========================================
+ Hits         2802     2842      +40     
- Misses        665      679      +14     
  Partials      217      217              
Flag Coverage Δ
start_ursim 81.81% <ø> (-1.52%) ⬇️
ur20-latest 73.93% <98.47%> (+0.46%) ⬆️
ur5-3.14.3 74.49% <98.47%> (+0.36%) ⬆️
ur5e-10.7.0 68.63% <98.47%> (+0.45%) ⬆️
ur5e-5.9.4 74.35% <98.47%> (+0.33%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@urfeex urfeex force-pushed the movec_movep branch 2 times, most recently from cbb4b0d to cf2a8f6 Compare April 4, 2025 13:08
@urfeex urfeex marked this pull request as ready for review April 4, 2025 13:55
@urfeex urfeex requested a review from a team April 4, 2025 13:55
Copy link
Collaborator

@urmahp urmahp left a comment

Choose a reason for hiding this comment

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

Overall it looks good, I only have a couple of small suggestions and comments.


bool TrajectoryPointInterface::writeTrajectoryPoint(const vector6d_t* positions, const float acceleration,
Copy link
Collaborator

Choose a reason for hiding this comment

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

I guess this is kept for backwards compatibility, would it make sense to mark it as deprecated and then moving forward we want people to use writeMotionPrimitive?
Otherwise if we still want to keep writeTrajectoryPoint, then we should make it possible from the UrDriver to writeTrajectorypoints with moveC and MoveP as well, because currently it is only possible with MoveL and MoveJ.

Copy link
Member Author

Choose a reason for hiding this comment

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

I don't necessarily see a reason to mark this deprecated, but I would also not see the necessity to add MoveC and MoveP to the UrDriver, as this is handled inside the InstructionExecutor.

Maybe this would be an argument to deprecated those...

@urfeex urfeex requested a review from urmahp April 7, 2025 12:37
@urfeex
Copy link
Member Author

urfeex commented Apr 8, 2025

I will merge this after #307 and include the communication protocol changes in the migration notes.

@mathias31415
Copy link

Thank you for the integration of moveC! I just wanted to give quick feedback that I was able to use moveC via the instruction executer, both as a single command and within a motion sequence (with UR5e in URSim). I used it within my custom hardware interface: https://github.com/StoglRobotics-forks/Universal_Robots_ROS2_Driver_MotionPrimitive/blob/main/ur_robot_driver/src/motion_primitives_ur_driver.cpp

@urfeex urfeex merged commit 9635122 into UniversalRobots:master Apr 16, 2025
23 of 26 checks passed
@urfeex urfeex deleted the movec_movep branch April 16, 2025 03:29
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants