Robot device and operating method thereof for delivering object to target table
A robot device is provided. The robot includes a movement unit moving the robot device, a body unit coupled to an upper end of the movement unit and including a tray capable of accommodating an object and a support unit supporting the tray at a certain height, a memory, and a processor configured to receive an external input including information about a target table, control, based on the information about the target table, the movement unit to move to the target table, start to rotate the body unit independently of the movement unit as the movement unit is located at a first certain distance from the target table during movement thereto, and stop the rotation of the body unit when a side surface not covered by the support unit among side surfaces of the tray is parallel to a side surface of the target table.
1 . A robot device for delivering an object to a target table having a rectangular shape, the robot device comprising:
a sub-body with rollers configured to move the robot device;
a body coupled to an upper end of the sub-body with rollers and configured to rotate independently of the sub-body with rollers about a rotation axis, the body comprising:
a tray configured to accommodate the object and comprising a plurality of side surfaces; and
a tray support configured to support the tray being located at a certain height;
a memory configured to store at least one instruction; and
at least one processor configured to execute the at least one instruction,
wherein the plurality of side surfaces comprise a first side surface that is covered by the tray support and a second side surface that is not covered by the tray support,
wherein the at least one processor is further configured to execute the at least one instruction to:
receive an external input including information about the target table,
control, based on the information about the target table, the sub-body with rollers to move to the target table by:
turning, in response to the sub-body with rollers being located at a distance greater than a first certain distance from the target table, the body such that a direction perpendicular to the first side surface is parallel to a movement direction of the sub-body with rollers, and
turning, in response to the sub-body with rollers being located at the first certain distance or at a distance smaller than the first certain distance from the target table, the body such that a direction perpendicular to the first side surface and the movement direction of the sub-body with rollers are different, and
stopping rotation of the body in response to the second side surface being parallel to a side surface that is closest to the robot device among a plurality of side surfaces of the target table,
wherein the first certain distance is a distance at which the body starts to rotate independently of the sub-body with rollers, the first certain distance being obtained based on at least one of information about the target table, a movement path of the robot device, or a rotation speed of the body.
2 . The robot device of claim 1 , further comprising:
a head coupled to an upper end of the body, the head comprising a sensor configured to sense a peripheral object of the robot device,
wherein the at least one processor is further configured to execute the at least one instruction to:
start to rotate the head independently of the sub-body with rollers, as the sub-body with rollers is located at a second certain distance different from the first certain distance from the target table during movement thereto, and
stop the rotation of the head in response to a facing direction of the sensor being perpendicular to a side surface of the target table.
3 . The robot device of claim 2 , wherein the at least one processor is further configured to execute the at least one instruction to:
obtain information about a relative position of a user at the target table through the sensor, and
control, based on the information about the relative position of the user, the sub-body with rollers to move the sub-body with rollers to a point close to the user near the side surface of the target table.
4 . The robot device of claim 2 , wherein the at least one processor is further configured to execute the at least one instruction to:
control, after the sub-body with rollers arrives at the target table, the tray configured to accommodate the object to exit in a direction from the tray support toward the target table, and
control, in response to the object being removed from the tray, the tray to enter in a direction from the target table toward the tray support.
5 . The robot device of claim 4 , wherein the at least one processor is further configured to execute the at least one instruction to:
obtain information about a user approaching the target table through the sensor, and
control, based on the information about the user approaching the target table, the tray configured to accommodate the object to exit in a direction from the tray support toward the target table.
6 . The robot device of claim 4 , wherein the at least one processor is further configured to execute the at least one instruction to control, in response to information about a user approaching the target table not being obtained for a preset time or more through the sensor, the tray to enter in a direction from the target table toward the tray support.
7 . The robot device of claim 4 ,
wherein the body further comprises a weight sensor obtaining a weight corresponding to the tray configured to accommodate the object, and
wherein the at least one processor is further configured to execute the at least one instruction to control, in response to the weight corresponding to the tray obtained through the weight sensor being less than or equal to a preset weight, the tray to enter in a direction from the target table toward the tray support.
8 . The robot device of claim 4 ,
wherein the head further comprises a user interface receiving the external input, and
wherein the at least one processor is further configured to execute the at least one instruction to rotate, as information about a user approaching the target table is obtained through the sensor after the tray enters in a direction toward the tray support, the head to set the user interface to face the side surface of the target table.
9 . A method of operating a robot device comprising a body comprising a tray configured to accommodate an object and comprising a plurality of side surfaces and a tray support configured to support the tray being located at a certain height, and being coupled to an upper end of a sub-body with rollers and configured to rotate independently of the sub-body with rollers, wherein the plurality of side surfaces comprise a first side surface that is covered by the tray support and a second side surface that is not covered by the tray support, the method comprising:
receiving an external input including information about a target table having a rectangular shape;
controlling, based on the information about the target table, the sub-body with rollers to move to the target table by:
turning, in response to the sub-body with rollers being located at a distance greater than a first certain distance from the target table, the body such that a direction perpendicular to the first side surface is parallel to a movement direction of the sub-body with rollers, and
turning, in response to the sub-body with rollers being located at the first certain distance or at a distance smaller than the first certain distance from the target table, the body such that a direction perpendicular to the first side surface and the movement direction of the sub-body with rollers are different; and
controlling the body to stop rotation in response to the second side surface being parallel to a side surface that is closest to the robot device among a plurality of side surfaces of the target table,
wherein the first certain distance is a distance at which the body starts to rotate independently of the sub-body with rollers, the first certain distance being obtained based on at least one of information about the target table, a movement path of the robot device, or a rotation speed of the body.
10 . The method of claim 9 ,
wherein the robot device further comprises a head coupled to an upper end of the body, the head comprising a sensor sensing a peripheral object of the robot device, and
wherein the method further comprises:
controlling the head to start to rotate independently of the sub-body with rollers, as the sub-body with rollers is located at a second certain distance different from the first certain distance from the target table during movement thereto; and
controlling the head to stop the rotation in response to a facing direction of the sensor being perpendicular to a side surface of the target table.
11 . The method of claim 10 , further comprising:
controlling the sensor to obtain information about a relative position of a user at the target table; and
controlling, based on the information about the relative position of the user, the sub-body with rollers to move the sub-body with rollers to a point close to the user near the side surface of the target table.
12 . The method of claim 10 , further comprising:
controlling, after the sub-body with rollers arrives at the target table, the tray configured to accommodate the object to exit in a direction from the tray support toward the target table; and
controlling, in response to the object being removed from the tray, the tray to enter in a direction from the target table toward the tray support.
13 . The method of claim 12 , wherein the controlling of the tray configured to accommodate the object to exit in a direction from the tray support toward the target table comprises:
controlling the sensor to obtain information about a user approaching the target table; and
controlling, based on the information about the user approaching the target table, the tray being loaded with the object to exit in a direction from the tray support toward the target table.
14 . The method of claim 12 , wherein the controlling of the tray to enter in a direction from the target table toward the tray support comprises controlling, in response to information about a user approaching the target table not being obtained for a preset time or more, the tray to enter in a direction from the target table toward the tray support.
15 . The method of claim 12 , wherein the controlling of the tray to enter in a direction from the target table toward the tray support comprises:
obtaining a weight corresponding to the tray; and
controlling, in response to the obtained weight being less than or equal to a preset weight, the tray to enter in a direction from the target table toward the tray support.
16 . The method of claim 12 ,
wherein the head further comprises a user interface receiving the external input, and
wherein the method further comprises, after the controlling of the tray to enter in a direction from the target table toward the tray support, controlling the head to rotate, in response to information about a user approaching the target table being obtained through the sensor, the head to set the user interface to face the side surface of the target table.