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

[Citadel] Add all features to tpeplugin #46

Merged
merged 92 commits into from
May 29, 2020

Conversation

claireyywang
Copy link
Contributor

@claireyywang claireyywang commented Apr 29, 2020

This PR add all the features to tpeplugin and enables testing with example worlds. This PR should be merged after #45 (adds needed functions to tpelib) and #32 (implements Base and EntityManagementFeatures).

A few things need to be addressed by follow-up PRs

  • Add collision detection
  • Add a VelocityCmd to ign-gazebo/src/systems/physics/Physics.cc to enable setting world velocity without applying force to joint

So far, any models without joint should be able to transform pose with TPE.

To test with ignition gazebo

cd src/ign-gazebo
git checkout chapulina/tpe
cd ~/citadel_ws
colcon build --cmake-args -DBUILD_TESTING=OFF --merge-install --packages-up-to ignition-gazebo3
. ~/citadel_ws/install/setup.bash
ign gazebo -v 2 shapes.sdf --physics-engine ignition-physics-tpe-plugin

Terminal output

[GUI] [Wrn] [Application.cc:649] [QT] file::/ComponentInspector/ComponentInspector.qml:161: ReferenceError: ComponentsModel is not defined
construct model ground_plane
construct model box
construct model cylinder
construct model sphere
construct link link
construct link box_link
construct link cylinder_link
construct link sphere_link
construct collision collision
construct collision box_collision
construct collision cylinder_collision
construct collision sphere_collision

The shapes no longer collapse to origin after the commit 344f7f4 , and warnings are fixed by commit 01bf3de
Shapes can be moved around by using transform tools after commit ad391b3

Demo
TPE_shapes_demo

I also tried with a couple other example worlds. See performance summary below:

  • actor.sdf: loads fine, actors move, warns missing joint entity, can't transform pose
  • apply_joint_force.sdf: loads fine, warns missing joint entity, can't transform pose
  • breadcrumbs.sdf: loads fine, warns missing joint, can't transform pose
  • camera_sensor.sdf: loads fine, sensor works, cube transforms pose, cone doesn’t and warns missing joint entity
  • contact_sensor: loads fine, transforms pose, sensor works
  • fuel.sdf: loads fine, warns missing joint entity, actor can move, can't transform pose
  • tunnel.sdf: loads fine, warns missing joint entity, car transforms pose

tpe/plugin/src/CustomFeatures.cc Outdated Show resolved Hide resolved
tpe/plugin/src/KinematicsFeatures.cc Outdated Show resolved Hide resolved
tpe/plugin/src/SDFFeatures.hh Outdated Show resolved Hide resolved
tpe/plugin/src/SDFFeatures.cc Outdated Show resolved Hide resolved
Signed-off-by: claireyywang <[email protected]>
Signed-off-by: claireyywang <[email protected]>
@claireyywang claireyywang requested a review from iche033 May 20, 2020 17:30
@claireyywang
Copy link
Contributor Author

I cleaned up the code a bit more. Ready for another round of review 🙇‍♀️

Signed-off-by: Ian Chen <[email protected]>
@iche033
Copy link
Contributor

iche033 commented May 21, 2020

I made some very minor changes in f952393. I think the PR is good to go. Approve once the homebrew issue is fixed.

@claireyywang
Copy link
Contributor Author

I made some very minor changes in f952393. I think the PR is good to go. Approve once the homebrew issue is fixed.

I think the homebrew issue was due to a Java bug on ultron.mojave. The CI was rebuilt on another machine and shows green now.

@claireyywang
Copy link
Contributor Author

@chapulina mind taking another look since there are requested changes from you blocking merge? Thanks!

Copy link
Contributor

@chapulina chapulina left a comment

Choose a reason for hiding this comment

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

Good job with the tests! I have some more comments below. Most are nitpicks, but I think it would be good to address others before merging.

tpe/plugin/src/KinematicsFeatures.cc Outdated Show resolved Hide resolved
tpe/plugin/src/KinematicsFeatures.cc Outdated Show resolved Hide resolved
tpe/plugin/src/SDFFeatures.cc Outdated Show resolved Hide resolved
tpe/plugin/src/SDFFeatures.cc Outdated Show resolved Hide resolved
tpe/plugin/src/SDFFeatures.hh Show resolved Hide resolved
tpe/plugin/src/SDFFeatures_TEST.cc Show resolved Hide resolved
tpe/plugin/src/SimulationFeatures.cc Show resolved Hide resolved
tpe/plugin/src/SimulationFeatures_TEST.cc Outdated Show resolved Hide resolved
tpe/plugin/src/SimulationFeatures_TEST.cc Show resolved Hide resolved
tpe/plugin/src/SimulationFeatures_TEST.cc Outdated Show resolved Hide resolved
Signed-off-by: claireyywang <[email protected]>
Signed-off-by: claireyywang <[email protected]>
Signed-off-by: claireyywang <[email protected]>
Signed-off-by: claireyywang <[email protected]>
Signed-off-by: claireyywang <[email protected]>
Signed-off-by: claireyywang <[email protected]>
@claireyywang claireyywang requested a review from chapulina May 27, 2020 02:20
Signed-off-by: claireyywang <[email protected]>
Signed-off-by: claireyywang <[email protected]>
chapulina
chapulina previously approved these changes May 28, 2020
@chapulina chapulina dismissed their stale review May 28, 2020 23:35

clicked by mistake 😅

Copy link
Contributor

@chapulina chapulina left a comment

Choose a reason for hiding this comment

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

🚢 it!

@claireyywang claireyywang merged commit c7f99de into ign-physics2 May 29, 2020
@claireyywang claireyywang deleted the claire/tpeplugin_features branch May 29, 2020 00:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🏰 citadel Ignition Citadel 🔮 dome Ignition Dome
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants