Skip to content
Juan Diego edited this page Jan 25, 2024 · 10 revisions

Nodes available from 2023

Preconditions and Effects

Carry My luggage

Node Name Precondition Effect
IsDetected(person) Person standing in front of the robot at the beginning of the test Person detected
IsDetected(2 bags) Two bags at maximum must be in front of the robot Bags detected
IsPointing Bags and a person detected Correct bag position known
MoveTo(correct_bag) Correct bag position known Robot close to the correct bag
MoveArmToPredefined(gripper_front_camera) Robot close to the correct bag Robot ready to let the person hang the bag on the gripper
LookTo(person_1) Person was detected & Robot near correct bag Person will notice robot is attending to them
Speak Robot near the correct bag Person know that has to hang out the bag in the robot`s gripper
LookTo(gripper) Person know it has to hang the bag
IsDetected(bag) Person know it has to hang the bag Robot knows the bag is on its gripper
MoveArmToPredefined(home) Robot knows the bag is on its gripper Bag is secured to prevent its fall
Speak Bag is secured Person know the robot is ready to follow him
FollowPerson (subtree) Person is detected & Moving We have arrived to the destination
MoveArmToPredefined(gripper_front_camera) We have arrived to the destination
LookAt(person) Person was detected & We have arrived to the destination Person knows the robot is asking for attention
Speak Person was detected Person is noticed that the robot is offering the bag
LookAt(gripper) Person was noticed
Not IsDetected(bag) Person was noticed Robot knows the person has the bag now
Speak Person has the bag Person is noticed the robot is going back
MoveTo(home) Bag was delivered Robot is at the beginning of the test

Receptionist

Node Name Precondition Effect
MoveTo(entrance) Robot is at entrance
Speak Robot is at entrance Guest is noticed, robot is ready to welcome them
IsDetected(person) Robot is at entrance & Guest noticed First Guest is detected
StoreDetection First Guest is detected (Optional) Possible extra characteristics could be inferred later
LookTo(person) Person was detected Robot looking at person
AskForSomething(name) Robot looking at person 1st Guest name is known
AskForSomething(favorite_drink) Robot looking at person 1st Guest favorite drink is known
Speak name and favorite drink are known Guest is following the robot
MoveTo(party) Guest is following the robot Robot and guest are at the party
IsDetected(person) Robot and guest are at the party Host is detected
LookAt(person) Person was detected Robot looking at host
Speak Robot looking at host Guest is introduced to host
IsSittable Guest is introduced A sittable spot is detected
LookTo(sittable_frame) A sittable spot is detected Robot is looking at chair
MoveArmTo(sittable_frame) Robot is looking at chair Robot is pointing at chair
Speak Robot is pointing to chair Guest knows where to sit

Serve Breakfast

Node Name Precondition Effect
MoveTo(kitchen) Robot is at kitchen
IsDetected(table) Robot is at kitchen Table is detected
MoveTo(table) Table is detected Robot is in front of the table
IsDetected(bowl) Robot is in front of the table Bowl is detected
LookAt(bowl) Bowl is detected Robot looking at bowl
PickObject(bowl) Robot looking at bowl Robot has the bowl
MoveTo(table_2) Robot has the bowl Robot is in front of the table_2
FindEmptyPlace(table_2) Robot is in front of the table_2 Empty place is found
PlaceObject(empty_place) Empty place is found Bowl is on the table
MoveTo(table_1) Bowl is on the table Robot is in front of table_1
IsDetected(cereal) Robot is in front of the table_1 Cereal is detected
LookAt(cereal) Cereal is detected Robot looking at Cereal
PickObject(cereal) Robot looking at Cereal Robot has the Cereal
MoveTo(table_2) Robot has the Cereal Robot is in front of the table_2
PourObject(bowl) Robot is in front of the table_2 Cereal is on bowl
FindEmptyPlace(table_2) Robot is in front of the table_2 Empty place is found
PlaceObject(empty_place) Empty place is found Cereal is on the table
MoveTo(table_1) Cereal is on the table Robot is in front of table_1
IsDetected(milk) Robot is in front of the table Milk is detected
LookAt(milk) Milk is detected Robot looking at milk
PickObject(milk) Robot looking at milk Robot has the milk
MoveTo(table_2) Robot has the milk Robot is in front of the table_2
PourObject(bowl) Robot is in front of the table_2 milk is on bowl
FindEmptyPlace(table_2) Robot is in front of the table_2 Empty place is found
PlaceObject(empty_place) Empty place is found Milk is on the table
MoveTo(table_1) Bowl is on the table Robot is at table_1
IsDetected(spoon) Robot is in front of the table Spoon is detected
LookAt(spoon) Spoon is detected Robot looking at spoon
PickObject(spoon) Robot looking at bowl Robot has the spoon
MoveTo(table_2) Robot has the spoon Robot is in front of the table_2
FindEmptyPlace(table_2) Robot is in front of the table_2 Empty place is found
PlaceObject(empty_place) Empty place is found Spoon is on the table

Serve Breakfast

Node Name Precondition Effect
MoveTo(kitchen) Robot is at kitchen
IsDetected(table) Robot is at kitchen Table is detected
MoveTo(table) Table is detected Robot is in front of the table
IsDetected(bowl) Robot is in front of the table Bowl is detected
LookAt(bowl) Bowl is detected Robot looking at bowl
PickObject(bowl) Robot looking at bowl Robot has the bowl
MoveTo(table_2) Robot has the bowl Robot is in front of the table_2
FindEmptyPlace(table_2) Robot is in front of the table_2 Empty place is found
PlaceObject(empty_place) Empty place is found Bowl is on the table
MoveTo(table_1) Bowl is on the table Robot is in front of table_1
IsDetected(cereal) Robot is in front of the table_1 Cereal is detected
LookAt(cereal) Cereal is detected Robot looking at Cereal
PickObject(cereal) Robot looking at Cereal Robot has the Cereal
MoveTo(table_2) Robot has the Cereal Robot is in front of the table_2
PourObject(bowl) Robot is in front of the table_2 Cereal is on bowl
FindEmptyPlace(table_2) Robot is in front of the table_2 Empty place is found
PlaceObject(empty_place) Empty place is found Cereal is on the table
MoveTo(table_1) Cereal is on the table Robot is in front of table_1
IsDetected(milk) Robot is in front of the table Milk is detected
LookAt(milk) Milk is detected Robot looking at milk
PickObject(milk) Robot looking at milk Robot has the milk
MoveTo(table_2) Robot has the milk Robot is in front of the table_2
PourObject(bowl) Robot is in front of the table_2 milk is on bowl
FindEmptyPlace(table_2) Robot is in front of the table_2 Empty place is found
PlaceObject(empty_place) Empty place is found Milk is on the table
MoveTo(table_1) Bowl is on the table Robot is at table_1
IsDetected(spoon) Robot is in front of the table Spoon is detected
LookAt(spoon) Spoon is detected Robot looking at spoon
PickObject(spoon) Robot looking at bowl Robot has the spoon
MoveTo(table_2) Robot has the spoon Robot is in front of the table_2
FindEmptyPlace(table_2) Robot is in front of the table_2 Empty place is found
PlaceObject(empty_place) Empty place is found Spoon is on the table

Storing Groceries

Node Name Precondition Effect
MoveTo(kitchen) Robot is at kitchen
IsDetected(table) Robot is at kitchen Table is detected
MoveTo(table) Table is detected Robot is in front of the table
LookAt(table) Robot is in front of the table Robot looking at the table
DetectNearestEntity Robot is in front of the table Nearest is detected
LookAt(nearest) Nearest is detected Robot looking at nearest
PickObject(nearest) Robot looking at nearest Robot has the nearest
MoveArmTo(camera_frame) Robot has the nearest Robot is looking at its gripper
IsDetected(nearest) Robot is looking at its gripper Nearest is confirmed it was picked
MoveArmToPredefined(home) Nearest is confirmed The object is secured
MoveTo(shelf) The object is secured Robot is in front of the shelf
IsDetected(shelf) Robot is in front of the shelf Shelf is detected again and confirmed
LookAt(shelf) Shelf is detected again and confirmed Robot looking at the shelf
DetermineObjectPosition(nearest) Robot looking at the shelf Place found
PlaceObject(to_place) Place found Nearest is in the shelf

Clone this wiki locally