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

Receive and transport drink scenario #246

Merged
merged 16 commits into from
Dec 4, 2020

Conversation

alex-mitrevski
Copy link
Member

@alex-mitrevski alex-mitrevski commented Nov 19, 2020

Summary of changes

The PR defines a new scenario package mdr_receive_and_transport_drink under mdr_robocup_tasks. The package implements a scenario in which a robot looks for a person, receives a drink from them, and brings the drink to a kitchen counter. The implementation follows the scenario description in the METRICS rulebook.

In addition to the new package, the PR includes the following changes and enhancements:

  • The find_people action client was modified so that person recognition can optionally be performed (depending on an argument passed to the client) and previously detected people can be erased from the knowledge base (as in the perceive_plane action). The find_people behaviour under mdr_perception_behaviours was also modified so that it can receive an argument perform_recognition, which is then passed on to the action client.
  • A new receive_object behaviour was added under mdr_hri_behaviours, which extracts the posture of a person (with the same heuristic as in the mdr_context_aware_hand_over scenario) and then makes a call to the receive_object action so that the object can be received.

Notes

  • This PR adds a basic/nominal version of the scenario in which the person is in the view of the robot. To make this more general, a future PR should implement actual looking for the person. This will require using a topological map so that the robot doesn't look for the person in all rooms, but only where the person can actually be found.
  • In the tests we performed with the HSR, we had some troubles during placing because the robot was too close to the kitchen counter and was colliding with the counter. This issue is related to WIP: DMP Obstacle Avoidance #232, but a differently shaped DMP (which moves up first and then forward) would also be desired (NB: there is currently a bug in the DMP executor due to which we cannot execute new DMPs we record). Under the current version of the code, the problem can only be avoided by having the robot stand further from the counter before placing.

alex-mitrevski and others added 16 commits November 18, 2020 22:34
This behaviour
(i) estimates the posture of a person and
(ii) calls the 'receive_object' action for receiving an object
…s/mas_domestic_robotics into feature/metrics-transport-drink
@alex-mitrevski alex-mitrevski marked this pull request as ready for review December 4, 2020 11:10
@alex-mitrevski alex-mitrevski merged commit 9a9affe into devel Dec 4, 2020
@alex-mitrevski alex-mitrevski deleted the feature/metrics-transport-drink branch December 4, 2020 11:11
@alex-mitrevski alex-mitrevski changed the title WIP: Receive and transport drink scenario Receive and transport drink scenario Dec 9, 2020
This was referenced Dec 31, 2020
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