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

Add ros_bt_py technology info + examples #41

Merged
merged 18 commits into from
Oct 15, 2024
Merged

Conversation

Oberacda
Copy link
Contributor

No description provided.

@Oberacda Oberacda requested a review from sea-bass September 16, 2024 10:02
@Oberacda Oberacda self-assigned this Sep 16, 2024
Copy link
Contributor

@sea-bass sea-bass left a comment

Choose a reason for hiding this comment

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

I could get this all running! Took me a while to figure out how to properly set a String constant and connect it, but it worked.

image


While things were building, I read through and found a few typos. Plus, maybe one thing to clarify in the code.

Also, you may need to run pre-commit still, as there are formatting errors.

.docker/entrypoint.sh Outdated Show resolved Hide resolved
technologies/ros_bt_py/README.md Outdated Show resolved Hide resolved
technologies/ros_bt_py/README.md Outdated Show resolved Hide resolved
technologies/ros_bt_py/README.md Outdated Show resolved Hide resolved
technologies/ros_bt_py/README.md Outdated Show resolved Hide resolved
technologies/ros_bt_py/README.md Outdated Show resolved Hide resolved
technologies/ros_bt_py/ros_bt_py_pyrobosim/setup.cfg Outdated Show resolved Hide resolved
dcconner pushed a commit that referenced this pull request Oct 3, 2024
@dcconner dcconner mentioned this pull request Oct 3, 2024
@ct2034 ct2034 changed the base branch from main_ARCHIVE to main October 7, 2024 14:55
@ct2034 ct2034 force-pushed the fb_ros_bt_py_readme branch from 25adda0 to cfcfed9 Compare October 7, 2024 20:15
@Oberacda Oberacda changed the title Draft: Add ros_bt_py technology info + examples Add ros_bt_py technology info + examples Oct 14, 2024
@Oberacda
Copy link
Contributor Author

@sea-bass As you are the only one I know that tried ros_bt_py, do you think the README is sufficient for people who have not worked with it before? Should I put the examples from the presentation in the readme as well?

@Oberacda
Copy link
Contributor Author

Otherwise, this is finished on my end.

Copy link
Contributor

@sea-bass sea-bass left a comment

Choose a reason for hiding this comment

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

The examples all ran for me -- just a few things.

README / Instructions

I think we need some instructions on how to load trees from the ros_bt_py_pyrobosim package. It took me a while to figure out.

Also, generally the UX of this is interesting. It seems like if I select the wrong tree by accident by single-clicking, I have to hit "Back"? Also I get no visual confirmation on which tree I have actually selected.

Problems

Problem 1

Worked well!

Problem 2

Worked well. Suggest renaming PlanToDump (and similar) to say Dumpster instead of Dump, as for English speakers this could... be funny naming.

Problem 3

Worked well. Question, is there a way to look inside the subtrees here while the trees are running? I couldn't figure out how to expand them.

Problem 4

I think you're navigating the robot to the kitchen room instead of one of the actual locations (fridge/pantry), so my robot got stuck trying to place the bread0 object over and over again because it was not in the right location. Please take a look at that.

I tried again and it seems it ran fine, but only partially. The bread and butter was brought to the table, but nothing was done with the waste/dumpster part of the objective. Maybe that is not implemented yet in this solution?

technologies/ros_bt_py/README.md Outdated Show resolved Hide resolved
@sea-bass
Copy link
Contributor

sea-bass commented Oct 14, 2024

I'm also still running somewhat frequently into the PyRoboSim display sync issue. I will take a look to see if I can improve this...

EDIT: This small change seems to help, will add it here sea-bass/pyrobosim#280

@sea-bass
Copy link
Contributor

Problem 4

I think you're navigating the robot to the kitchen room instead of one of the actual locations (fridge/pantry), so my robot got stuck trying to place the bread0 object over and over again because it was not in the right location. Please take a look at that.

I think this specifically happens when the robot is holding the bread0 or butter0 object and, on the way to place it on the table, it has to go to the charger due to low battery. There may be a subtle behavior bug there.

@Oberacda
Copy link
Contributor Author

Problem 4

I think you're navigating the robot to the kitchen room instead of one of the actual locations (fridge/pantry), so my robot got stuck trying to place the bread0 object over and over again because it was not in the right location. Please take a look at that.

I think this specifically happens when the robot is holding the bread0 or butter0 object and, on the way to place it on the table, it has to go to the charger due to low battery. There may be a subtle behavior bug there.

I briefly looked into this just now, and I think it is an issue with the interrupt during the execution of the path following. As far as I can see it flags the interrupted movement as successful and just continues with the placing after returning from the charger.

I will follow up on this tomorrow morning.

@sea-bass
Copy link
Contributor

sea-bass commented Oct 14, 2024

I briefly looked into this just now, and I think it is an issue with the interrupt during the execution of the path following. As far as I can see it flags the interrupted movement as successful and just continues with the placing after returning from the charger.

I will follow up on this tomorrow morning.

Are you officially canceling the original ROS action goal, or just sending a new one? If it's the second, then I could see how this happens.

Signed-off-by: David Oberacker <[email protected]>
@Oberacda
Copy link
Contributor Author

Oberacda commented Oct 15, 2024

The examples all ran for me -- just a few things.

README / Instructions

I think we need some instructions on how to load trees from the ros_bt_py_pyrobosim package. It took me a while to figure out.

I added a section about loading the example trees. Hopefully, this is more clear now.

Also, generally the UX of this is interesting. It seems like if I select the wrong tree by accident by single-clicking, I have to hit "Back"? Also I get no visual confirmation on which tree I have actually selected.

I am aware that the UX needs some polishing. I will try to find some time to look into it, but I am unsure if that will happen before ROSCon. I think we should merge this without the UX improvements sadly.

Problems

Problem 1

Worked well!

Problem 2

Worked well. Suggest renaming PlanToDump (and similar) to say Dumpster instead of Dump, as for English speakers this could... be funny naming.

I have renamed the nodes.

Problem 3

Worked well. Question, is there a way to look inside the subtrees here while the trees are running? I couldn't figure out how to expand them.

I added a section about this to the README. You need to check the PublishSubtree box in the topbar and then you can inspect them via the Tree Drop Down above the editor.

Problem 4

I think you're navigating the robot to the kitchen room instead of one of the actual locations (fridge/pantry), so my robot got stuck trying to place the bread0 object over and over again because it was not in the right location. Please take a look at that.

I tried again and it seems it ran fine, but only partially. The bread and butter was brought to the table, but nothing was done with the waste/dumpster part of the objective. Maybe that is not implemented yet in this solution?

I indeed forgot to implement the dumpster part in the previous version. I added it alongside a fix for the issues regarding the recharging being triggered while holding an object.

@Oberacda Oberacda requested a review from sea-bass October 15, 2024 13:30
Copy link
Contributor

@sea-bass sea-bass left a comment

Choose a reason for hiding this comment

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

Thanks! Let's merge it.

@sea-bass sea-bass merged commit 172b966 into main Oct 15, 2024
2 checks passed
@sea-bass sea-bass deleted the fb_ros_bt_py_readme branch October 15, 2024 15:38
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.

3 participants