Mobile robot for serving and operating method thereof

The mobile robot uses load cells to detect and adjust for tray height and object tilt, ensuring stable food delivery by reducing speed and altering its path, effectively addressing the instability issues with serving robots and preventing food overflow.

WO2024257897A1PCT designated stage expired Publication Date: 2024-12-19BEAR ROBOTICS INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2023/008037
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-06-12
Publication Date
2024-12-19

AI Technical Summary

Technical Problem

Existing serving robots fail to prevent food from overflowing or falling when moving, especially with liquids like soup, due to instability and lack of adaptive movement adjustments based on tray height and object tilt.

Method used

A mobile robot equipped with load cells on trays to detect object weight and position, adjusting moving speed and serving path to maintain stability and prevent overflow, by reducing speed and altering route according to tray height and object tilt.

Benefits of technology

Ensures reliable delivery of food items by preventing overflow and deformation, enhancing operational efficiency and stability during serving operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2023008037_19122024_PF_FP_ABST
    Figure KR2023008037_19122024_PF_FP_ABST
Patent Text Reader

Abstract

Disclosed are a mobile robot for serving and an operating method thereof. The mobile robot for serving, according to embodiments of the present invention, comprises: at least one tray arranged in an accommodation space of a body of the mobile robot and on which an object to be served is placed; a plurality of load cells arranged in the at least one tray; a driving unit arranged at the bottom of the body to move the mobile robot; and a control unit connected to communicate with the plurality of load cells and the driving unit. The control unit may determine, on the basis of sensing values sensed by the plurality of load cells, whether the object being served is placed on the at least one tray, and may change, on the basis of the determination, the moving speed of the mobile robot. Accordingly, when the mobile robot serves, the contents of the object being served can be stably delivered to an ordered customer without overflowing.
Need to check novelty before this filing date? Find Prior Art

Description

Mobile robot for serving and its operating method

[0001] The present invention relates to a mobile robot for serving and an operating method thereof, and more specifically, to a mobile robot for serving and an operating method thereof capable of stably serving an object ordered by a customer.

[0002] Recently, the use of serving robots has been increasing in places like restaurants, cafes, and bakeries that offer in-person service. These robots act as in-store staff, delivering food orders to customers' tables and collecting empty dishes.

[0003] Various studies are being developed to provide more stable and convenient services using these serving robots.

[0004] For example, Korean Patent No. 10-2446843 (hereinafter referred to as “Prior Art. 1”) discloses a serving robot having a structure in which the horizontal support of the tray is adjustable in height and can be withdrawn.

[0005] Also, for example, Korean Patent No. 10-2465049 (hereinafter referred to as “Prior Document 2”) discloses a technology that facilitates serving and discarding food by having a serving robot recognize the height of a table and enable trays to be inserted or removed.

[0006] However, prior documents 1 and 2 are intended to resolve the inconvenience of customers having to move trays containing food to the table themselves, and do not resolve issues such as objects falling over or soup overflowing while a serving robot moves to serve food containing liquids such as soup.

[0007] The present invention aims to solve the above-mentioned problems and other problems.

[0008] According to some embodiments of the present disclosure, the purpose is to provide a mobile robot for serving and an operating method thereof, which can detect the position of a serving object placed on a tray by itself and perform serving without causing the contents of the serving object to spill or overflow.

[0009] In addition, according to some embodiments of the present disclosure, the purpose is to provide a mobile robot for serving and an operating method thereof that can detect by itself that a serving object is settled to one side and perform serving by considering the direction in which the center of gravity is tilted.

[0010] In addition, according to some embodiments of the present invention, the purpose is to provide a mobile robot for serving and an operating method thereof, which implements an algorithm to efficiently apply the algorithm according to the movement purpose of the serving object.

[0011] To this end, the mobile robot for serving according to the present invention can detect whether or not the serving object is placed on its own tray.

[0012] In addition, the mobile robot for serving can accurately recognize the position where the serving object is placed among multiple trays of different heights and change the corresponding appropriate movement speed to perform serving more stably.

[0013] Additionally, the mobile robot for serving can determine the weight of the serving object and whether it is off-center on the tray. If the serving object is determined to be off-center, the robot can perform the serving by considering the direction of the center of gravity.

[0014] Specifically, a mobile robot for serving according to an embodiment of the present invention includes: at least one tray, which is arranged in a receiving space of a body of the mobile robot, on which a serving object is placed; a plurality of load cells arranged on at least one tray; a driving unit arranged at a lower portion of the body to move the mobile robot; and a control unit communicatively connected to the plurality of load cells and the driving unit. In addition, the control unit can determine whether a serving object is placed on the at least one tray based on sensing values ​​detected by the plurality of load cells, and control the driving unit to change a moving speed of the mobile robot based on the determination.

[0015] According to an embodiment, the control unit reduces the movement speed of the mobile robot below a reference speed based on a determination that a serving object has been placed on the at least one tray, and the degree of reduction in the movement speed may vary depending on the height at which the at least one tray is installed.

[0016] According to an embodiment, the at least one tray includes a plurality of trays having different heights from the bottom frame of the body, and the plurality of load cells are arranged on the left and right sides of each of the plurality of trays. In this case, the control unit may determine the position of the tray on which the serving object is placed based on the sensing values ​​of the plurality of load cells arranged on each of the plurality of trays, and may change the degree of reduction in the moving speed based on the determined position of the tray.

[0017] According to an embodiment, the control unit may calculate the weight of an object placed on a tray based on the sum of the sensing values ​​of the first and second load cells arranged on the left and right of each of the plurality of trays, and may set the degree of reduction in the moving speed of the mobile robot differently based on the calculated weight and the determined position of the tray.

[0018] According to an embodiment, the control unit may increase the degree of reduction in the moving speed of the mobile robot as the position of the tray determined to have the calculated weight exceeding the reference value increases.

[0019] According to an embodiment, the control unit may determine whether a serving object placed on a tray is biased based on a difference in sensing values ​​of first and second load cells arranged on the left and right of each of the plurality of trays, and may set a serving path based on the determination.

[0020] According to an embodiment, the control unit may set a serving path with a left rotation priority based on a determination that the serving object placed on the tray is tilted to the left based on a difference in the sensing values ​​of the first and second load cells. In addition, the control unit may set a serving path with a right rotation priority based on a determination that the serving object placed on the tray is tilted to the right based on a difference in the sensing values ​​of the first and second load cells.

[0021] According to an embodiment, the mobile robot may further include an IMU sensor disposed on the body, and the control unit may detect an obstacle by combining the sensing values ​​of the IMU sensors based on a change of a reference value or more in the sensing values ​​detected by the plurality of load cells while performing serving at a changed moving speed according to a determination that the serving object has been placed on the tray, and update the map to display the location of the detected obstacle on the map.

[0022] According to an embodiment, the mobile robot may further include an input unit that receives a movement purpose of a serving object, and the control unit may determine whether the serving object is placed on at least one tray based on the input movement purpose and the sensing values ​​detected by the plurality of load cells.

[0023] According to an embodiment, the control unit determines whether a serving object is placed on the at least one tray based on sensing values ​​detected by the plurality of load cells in response to a movement purpose for serving being input through the input unit. In addition, the control unit may determine that a serving object is not placed on the at least one tray in response to a movement purpose for serving being input through the input unit.

[0024] In addition, the operating method of the mobile robot for serving according to an embodiment of the present invention may include the following steps. The operating method may include: a step of receiving a sensing value detected by a plurality of load cells disposed in a receiving space of a body of the mobile robot and disposed on at least one tray on which a serving object is placed; a step of determining whether a serving object is placed on the at least one tray based on the received sensing value; and a step of changing the moving speed of the mobile robot based on the determination.

[0025] The effects of the mobile robot for serving and its operating method according to the present invention are described as follows.

[0026] According to a mobile robot for serving and an operating method thereof according to some embodiments of the present invention, the mobile robot for serving can detect the position of a serving object placed on a tray by itself, and can deliver the serving object to the ordering customer more stably by changing the moving speed or changing the serving path so that the contents of the serving object do not flow or overflow.

[0027] In addition, according to a mobile robot for serving and an operating method thereof according to some embodiments of the present invention, even if a serving object is settled to one side, it can detect this on its own and change the serving path to rotate in the direction in which the center of gravity is centered, thereby preventing deformation of the state of the serving object in advance.

[0028] Furthermore, according to some embodiments of the present invention, a mobile robot for serving and its operating method enable rapid movement during food disposal by distinguishing between inputs for serving and inputs for food disposal, thereby determining whether to implement an algorithm. This enables efficient operation.

[0029] FIG. 1 is an exemplary drawing of a mobile robot for serving according to an embodiment of the present invention.

[0030] FIG. 2 is an exemplary block diagram illustrating a detailed configuration of a mobile robot for serving according to an embodiment of the present invention and how the mobile robot communicates with a server and a customer tablet.

[0031] FIG. 3 is an exemplary drawing for explaining the stability of each tray during driving for serving, according to an embodiment of the present invention.

[0032] Figure 4 is a representative flowchart for explaining an operation method of a mobile robot for serving according to an embodiment of the present invention.

[0033] FIG. 5a, FIG. 5b, and FIG. 5c are exemplary drawings for explaining how to change the driving speed differently for each tray on which a serving object is placed, according to an embodiment of the present invention.

[0034] FIGS. 6a, 6b, 7, 8a, and 8b are exemplary drawings for explaining detecting the tilt of a serving object using a load cell and changing a serving path based on the same, according to an embodiment of the present invention.

[0035] FIG. 9 is a flowchart illustrating a method of applying obstacles detected using a load cell while driving along a serving path to a map according to an embodiment of the present invention.

[0036] FIG. 10 is another flowchart of a method for determining whether to change a driving speed or a serving path for serving, according to an embodiment of the present invention.

[0037] Hereinafter, embodiments disclosed in this specification will be described in detail with reference to the attached drawings. Regardless of the drawing numbers, identical or similar components will be given the same reference numbers, and redundant descriptions thereof will be omitted. The suffixes "module" and "part" used for components in the following description are assigned or used interchangeably only for the convenience of writing the specification, and do not in themselves have distinct meanings or roles. In addition, when describing the embodiments disclosed in this specification, if it is determined that a specific description of a related known technology may obscure the gist of the embodiments disclosed in this specification, a detailed description thereof will be omitted. In addition, the attached drawings are only intended to facilitate easy understanding of the embodiments disclosed in this specification, and the technical ideas disclosed in this specification are not limited by the attached drawings, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and technical scope of the present invention.

[0038] Terms that include ordinal numbers, such as first, second, etc., may be used to describe various components, but the components are not limited by these terms. These terms are used solely to distinguish one component from another.

[0039] When a component is referred to as being "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components intervening. Conversely, when a component is referred to as being "directly connected" or "connected" to another component, it should be understood that there are no other components intervening.

[0040] Singular expressions include plural expressions unless the context clearly indicates otherwise.

[0041] In this application, terms such as “include” or “have” are intended to specify the presence of a feature, number, step, operation, component, part or combination thereof described in the specification, but should be understood not to exclude in advance the possibility of the presence or addition of one or more other features, numbers, steps, operations, components, parts or combinations thereof.

[0042] The "mobile robot for serving" described herein refers to a machine capable of autonomously operating within a designated map space to serve or remove food items. The mobile robot for serving can perform one or more of the following tasks: picking items for serving, transporting them to their destination, or setting them on ordering tables. Furthermore, the term "serving robot" described herein is used interchangeably with the aforementioned mobile robot for serving.

[0043] Examples of "serving objects" described herein include food, with or without broth, considering serving and serving time. However, this is not necessarily limited to this. For example, serving objects may include various other items, including logistics, goods, plants, and animals, in addition to food.

[0044] FIG. 1 is an exemplary drawing of a mobile robot (100) for serving according to an embodiment of the present invention, for example, a serving robot for serving and removing food.

[0045] Referring to Fig. 1, a mobile robot (100) for serving is configured to include a head portion and a body portion (101). The head portion may include a touch-enabled display portion (150). The body portion (101) may include a storage portion that accommodates a tray (115) on which a serving object is placed, and a driving portion (140) for moving the mobile robot.

[0046] In addition, although not shown, the head or body (101) may further include one or more camera sensors (e.g., 3D stereo camera, SLAM camera) for determining its own location, a microphone for voice reception, an audio output means (e.g., speaker) for sound output, one or more obstacle sensors related to driving, etc.

[0047] Additionally, although not shown, a rechargeable battery and terminal for supplying power to the mobile robot (100) may be provided at the lower part of the body (101), for example, at the rear of the driving part (140).

[0048] In the upper module of the body part (101), one or more trays (115a, 115b, 115c) are arranged at different heights in the storage section. In the lower module of the body part (101), a drive part (140) that is mutually detachable and provides a drive function is arranged.

[0049] The driving unit (140) can move the mobile robot (100) by having the plurality of driving wheels rotate by receiving rotational force from the driving motor while the plurality of driving wheels and casters are in uniform contact with the ground.

[0050] The tray (115) may be configured to include a plurality of trays. A serving object may be placed on each of the trays (115a, 115b, 115c).

[0051] A material capable of preventing the serving object from falling or slipping may be deposited on the upper part of each tray (115a, 115b, 115c) or a cover may be placed.

[0052] Each of the trays (115a, 115b, 115c) can be introduced and withdrawn along guide rails provided on both the left and right sides.

[0053] Each of the trays (115a, 115b, 115c) may be equipped with a weight sensor such as a plurality of load cells to sense the load of the object being placed. Specifically, the plurality of load cells may be installed on the left and right bottom surfaces of each of the trays (115a, 115b, 115c) or installed adjacent to each guide rail.

[0054] When a sensing value corresponding to a load is received from a weight sensor, the mobile robot (100) can identify the position of the tray matching each weight sensor. Here, the position of the tray matching the received sensing value means the height (height) at which the tray is raised based on the bottom frame of the driving unit (140) or the bottom of the upper module of the body unit (101).

[0055] Each of the trays (115a, 115b, 115c) may be arranged to have different heights. For example, as illustrated in FIG. 1, the first tray (115a) may be positioned at a first height, the second tray (115b) may be positioned at a second height lower than the first height, and the third tray (115c) may be positioned at a second height lower than the first and second heights.

[0056] The vertical spacing between each of the trays (115a, 115b, 115c) may be the same as shown in Fig. 1, but is not limited thereto. For example, each of the trays (115a, 115b, 115c) may be arranged to have different vertical spacings to accommodate serving objects of various heights.

[0057] The mobile robot (100) can detect that an object is placed on each of the trays (115a, 115b, 115c) and output guidance information (e.g., voice guidance message) to guide the object to the center.

[0058] Additional monitoring means, for example, a camera, may be provided in the body (101) to visually check the object placed on the tray (115a, 115b, 115c).

[0059] The mobile robot (100) can perform a driving motion by controlling the driving unit (140) according to a serving / retirement command. For example, when a serving object is placed on one of the trays (115a, 115b, 115c) and a serving / retirement input is received, the mobile robot (100) can start driving along a set serving path.

[0060] The mobile robot (100) can determine the position, weight, and tilt of the serving object placed on the tray (115a, 115b, 115c) according to the embodiment of the present disclosure, and can change the moving speed for serving or the serving path in response to the determination.

[0061] FIG. 2 is an exemplary block diagram illustrating a detailed configuration of a mobile robot for serving according to an embodiment of the present invention and how the mobile robot communicates with a server and a customer tablet.

[0062] Referring to FIG. 2, a mobile robot (100) for serving can be connected to a server (200) and communicate with a customer tablet (300) through the server (200).

[0063] A mobile robot (100) may be configured to include a communication module (110), a sensor (120), a control unit (130), a driving unit (140), a display unit (150), and a memory (160). However, in some embodiments, the mobile robot (100) may include more or fewer components than those described herein.

[0064] The server (200) can receive order information input via a customer tablet (300) placed at each table within the store. Here, the customer tablet (300) can be replaced with a kiosk installed at a designated location within the store. The order information input can include the customer's table number and information about the ordered food (e.g., table number #2, ordered food: A, B, C, etc.).

[0065] The mobile robot (100) can receive order information input by communicating with the server (200) through the communication module (110).

[0066] The communication module (110) may include one or more modules that enable wireless communication between the mobile robot (100) and an external server (200), such as a control server or an external terminal. In addition, the communication module (110) may include one or more modules that connect the mobile robot (100) to one or more networks.

[0067] The communication module (110) may communicate with an artificial intelligence server, etc. using wireless Internet communication technologies such as, for example, WLAN (Wireless LAN), Wi-Fi (Wireless-Fidelity), Wi-Fi (Wireless Fidelity) Direct, DLNA (Digital Living Network Alliance), WiBro (Wireless Broadband), WiMAX (World Interoperability for Microwave Access), HSDPA (High Speed ​​Downlink Packet Access), HSUPA (High Speed ​​Uplink Packet Access), LTE (Long Term Evolution), and LTE-A (Long Term Evolution-Advanced). In addition, the communication module (110) may communicate with an external terminal, etc. using short-range communication technologies such as Bluetooth™, RFID (Radio Frequency Identification), Infrared Data Association (IrDA), UWB (Ultra Wideband), ZigBee, and NFC (Near Field Communication).

[0068] Data of one or more order information inputs received from the server (200) may be stored in the memory (160). At this time, the data of the order information inputs may be in the form of data in which a table number and an ordered food are paired.

[0069] In this case, after the ordered food is placed on the tray of the mobile robot (100) for serving after cooking, and a table number is entered, information about the ordered food matching the table number can be recognized. At this time, the recognized information about the ordered food can be compared with information on items requiring attention during serving stored in the memory (160).

[0070] If the comparison result determines that the information about the recognized ordered food is included in the information requiring attention during serving stored in the memory (160), the embodiments according to the present disclosure may be implemented to perform.

[0071] If it is determined as a result of the comparison that the information about the recognized ordered food is not included in the information requiring attention during serving stored in the memory (160), the embodiments according to the present disclosure may not be performed or may be operated to perform only some of the operations.

[0072] The sensor (120) is arranged adjacent to the tray and may include a weight sensor, for example, a plurality of load cells, that detects the load of the tray.

[0073] In addition to the aforementioned weight sensor, the sensor (120) may include one or more sensors for sensing at least one of information within the mobile robot, information about the surrounding environment surrounding the mobile robot, and user information. For example, the sensor (120) may include at least one of a proximity sensor, an illumination sensor, a touch sensor, an acceleration sensor, a magnetic sensor, a gravity sensor (G-sensor), a gyroscope sensor, a motion sensor, an RGB sensor, an infrared sensor (IR sensor), a fingerprint recognition sensor, an ultrasonic sensor, an optical sensor (e.g., a camera, a microphone, a battery gauge), an environmental sensor (e.g., a barometer, a hygrometer, a thermometer, a radiation detection sensor, a heat detection sensor, a gas detection sensor, etc.), and a chemical sensor (e.g., an electronic nose, a healthcare sensor, a biometric recognition sensor, etc.).

[0074] The control unit (130) of the mobile robot (100) can receive a sensing value from a sensor (120), for example, a load cell, and determine whether a serving object is placed on a corresponding tray.

[0075] The control unit (130) can control the driving unit (140) to drive by adjusting the moving speed or changing the serving path based on the above decision.

[0076] The driving unit (140) performs movement and rotation of the main body of the mobile robot (100). To this end, the driving unit (140) may include a plurality of driving wheels, a driving motor, and a plurality of casters. The driving of the driving unit (140) is controlled according to control commands received by the control unit (130), and notifications may be provided through an optical output means such as an LED before and after driving.

[0077] The control unit (130) can recognize the settling, settling position (e.g., tray number), weight, and tilt of the serving object based on the above decision and the sensing value of the load cell (120), and display visual information related to at least one of these on the display unit (150).

[0078] Map data corresponding to the space in which the mobile robot (100) moves may be stored in the memory (160). In addition, identification information of the load cell (120) and corresponding tray identification information / location information may be stored in the memory (160). In addition, information regarding the level of reduction in movement speed compared to the reference movement speed based on the above determination may be matched and stored for each tray in the memory (160).

[0079] The display unit (151) can be implemented in the form of a touch screen by forming a mutual layer structure with the touch sensor or forming an integral structure. Such a touch screen can function as a user input unit that provides an input interface between the mobile robot (100) and the user, and at the same time, provide an output interface.

[0080] The control unit (180) may include a learning processor (not shown) to perform operations related to the artificial intelligence technology of the mobile robot (100).

[0081] The learning processor can train one or more models composed of artificial neural networks using training data. The learning processor can be configured to receive, classify, store, and output information to be used for data mining, data analysis, intelligent decision-making, and machine learning algorithms and techniques. The learning processor can be integrated into the mobile robot or include memory.

[0082] The memory (160) may include, for example, at least one type of storage medium among a flash memory type, a hard disk type, an SSD (Solid State Disk type), an SDD (Silicon Disk Drive type), a multimedia card micro type, a card type memory (e.g., SD or XD memory, etc.), a random access memory (RAM), a static random access memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, and an optical disk.

[0083] In addition to the operations related to the above-mentioned application program, the control unit (130) typically controls the overall operation of the mobile robot (100). The control unit (130) processes signals, data, information, etc. input or output through the components discussed above, operates an application program stored in the memory (160), or controls the driving unit (140) to provide or process appropriate information or functions to the user.

[0084] At least some of the above components may cooperate with each other to implement the operation, control, or control method of the mobile robot (100) for serving according to various embodiments described below. In addition, the operation, control, or control method of the mobile robot (100) may be implemented on the mobile robot by driving at least one application program stored in the memory (160).

[0085] Additionally, the various embodiments disclosed below may be implemented in a recording medium readable by a computer or similar device, for example, using software, hardware, or a combination thereof.

[0086] A mobile robot (100) for serving according to an embodiment of the present invention can determine whether a serving object is placed on at least one tray based on sensing values ​​detected by a plurality of load cells arranged on at least one tray on which the serving object is placed. Based on the determination, the mobile robot (100) can control the driving unit (140) to change the moving speed of the mobile robot.

[0087] The control unit (130) can control the driving unit (140) to drive the mobile robot (100) at a reduced speed below a reference speed based on a determination that a serving object has been placed on at least one tray.

[0088] At this time, the degree of reduction in movement speed may vary depending on the height at which at least one tray is installed.

[0089] For example, if a serving object is placed on the first tray (115a) located highest from the floor frame, the moving speed may be changed to a first level (e.g., 70%) reduced from the reference value. If a serving object is placed on the second tray (115b) located between the third tray (115c) located lowest from the floor frame and the first tray (115a), the moving speed may be changed to a second level (e.g., 80%) reduced lower than the first level. At this time, the first level means that the reduction is greater than the second level. In addition, if a serving object is placed on the third tray (115c) located lowest from the floor frame, the moving speed may be changed to a third level (e.g., 90%) reduced lower than the second level. Here, the third level means that the reduction is smaller than the first and second levels, and can be said to have the smallest reduction in moving speed.

[0090] FIG. 3 is an exemplary drawing for explaining the stability of each tray during driving for serving, according to an embodiment of the present invention.

[0091] As shown, a plurality of trays (115a, 115b, 115c) arranged at different heights can be placed on the body of the mobile robot (100). The mobile robot (100) initiates movement (M) for serving / discarding food when a serving object is placed on at least one of the plurality of trays (115a, 115b, 115c).

[0092] When the mobile robot (100) moves (M), each of the plurality of trays (115a, 115b, 115c) placed at different heights generates different centrifugal forces.

[0093] Specifically, the left and right centrifugal force (CF1(L), CF1(R)) of the first tray (115a) positioned at the highest position is generated the greatest. In addition, the left and right centrifugal force (CF2(L), CF2(R)) of the second tray (115b) and the left and right centrifugal force (CF3(L), ​​CF3(R)) of the third tray (115c) are generated in a magnitude corresponding to the height order of each tray.

[0094] That is, the higher the tray is placed, the greater the centrifugal force acts. This means that when a serving object is placed on a tray placed at a high position (aside from the ease of placing the serving object for serving / discarding), the stability of movement (M) is further reduced.

[0095] This means that, especially when the serving object placed on the tray contains soup, care must be taken to prevent soup from overflowing during movement (M) of the mobile robot (100).

[0096] FIG. 4 is a representative flowchart illustrating an operating method of a mobile robot for serving according to an embodiment of the present invention. Each process of the operating method illustrated in FIG. 4 is executed by the control unit (130) (or controller / processor) of the mobile robot (100) unless otherwise described.

[0097] Referring to FIG. 4, a mobile robot (100) for serving according to an embodiment of the present invention is configured to receive sensing values ​​detected by a plurality of load cells arranged on at least one tray on which a serving object is placed (410).

[0098] To this end, at least one tray for placing a serving object is accommodated in the storage space of the body of the mobile robot (100). In addition, a load cell capable of sensing a load is placed on both sides of at least one tray.

[0099] A load cell is a transducer for measuring force or load, and when subjected to a load, deformation occurs, such as compression or extension. This deformation of the load cell is detected as an electrical signal and transmitted to the control unit (130). The control unit (130) of the mobile robot (100) converts the detected electrical signal into a digital signal to recognize the load of the serving object, and can output this as a number as needed.

[0100] In the embodiments disclosed herein, it is assumed that multiple load cells are positioned on each side (i.e., left and right) of the tray, but this is not limited to this. For example, three or more load cells may be positioned on the tray to sense the load, or other weight sensors may be used instead of the load cells.

[0101] The mobile robot (100) can receive sensing values ​​from load cells for each of multiple trays, and can distinguish and recognize the left and right sensing values ​​of each tray. Accordingly, the mobile robot (100) can recognize the location of a tray matching the received sensing value, or more specifically, the location of a load cell placed on that tray.

[0102] Continuing, the mobile robot (100) can determine whether a serving object is placed on a tray based on the sensing values ​​of the received plurality of load cells (420). In an embodiment, if the mobile robot (100) is configured to include a plurality of trays and a load cell is arranged on each of the plurality of trays, it can determine whether a serving object is placed on each tray.

[0103] For example, when a serving object is placed on a tray, load cells placed on both sides of the tray receive a load and thus receive a sensing value corresponding to the deformation amount. On the other hand, when a serving object is not placed on the tray, a sensing value of '0' or similar to the deformation amount is received. Accordingly, the control unit of the mobile robot (100) can determine whether a serving object is placed on the basis of the sensing value and can recognize the position of the tray on which the serving object is placed.

[0104] According to an embodiment, when it is detected that a serving object has been placed, the control unit (130) of the mobile robot (100) can generate a serving start signal and perform an operation. For example, when an employee in the store simply places the food ordered by the customer on the tray of the mobile robot (100), the mobile robot (100) can automatically perform an operation of asking whether to start serving.

[0105] Next, the mobile robot (100) can adjust the moving speed of the mobile robot based on the determination of whether a serving object is placed on at least one tray (430).

[0106] Specifically, when it is determined that a serving object is placed on at least one tray based on the sensing value of the load cell, the moving speed of the mobile robot can be reduced based on the position of the tray on which the serving object is placed.

[0107] In some embodiments, the mobile robot (100) may increase the degree of decrease in movement speed as the position of the tray increases from the bottom frame of the mobile robot (100).

[0108] For example, let's say a mobile robot (100) includes multiple trays installed at different heights, and a serving object can be placed on any of these trays. In this case, the degree of reduction in movement speed can be increased to ensure stability as the serving object is placed on a tray at a higher position.

[0109] Additionally, in some embodiments, the heavier the serving object placed on the tray, the greater the reduction in moving speed. To this end, the weight of the object placed on the tray can be calculated based on the sum of the sensing values ​​of the first and second load cells positioned on the left and right of each of one or more trays of the mobile robot (100).

[0110] For example, if a 1000g load of food is placed on a tray at the same location and a 2000g load of food is placed on a tray at the same location, the latter may be adjusted to move at a more reduced speed.

[0111] Additionally, in some embodiments, the mobile robot (100) can set a different degree of reduction in the moving speed of the mobile robot based on a combination of the calculated weight and the position of the tray.

[0112] Additionally, in some embodiments, the serving object placed on the tray may increase the degree of reduction in movement speed based on its uniqueness. Here, the uniqueness of the serving object may mean, for example, that the serving object contains a predetermined stability-inducing element, such as a soup-containing container or a shape that is prone to tipping over (e.g., a narrow bottle, a bowl with a narrow bottom, etc.). This uniqueness of the serving object may be monitored, for example, through a sensor that can visually identify the serving object placed on the tray (e.g., a camera sensor, a lidar sensor, a distance sensor, etc.) or tagging.

[0113] According to an embodiment, the mobile robot (100) may vary the degree of reduction in its movement speed depending on the height at which the tray is installed, based on a determination that a serving object has been placed on at least one tray. This will be described in more detail below with reference to FIGS. 5A to 5C.

[0114] FIG. 5a, FIG. 5b, and FIG. 5c are exemplary drawings for explaining how to change the driving speed differently for each tray on which a serving object is placed, according to an embodiment of the present invention.

[0115] The storage space of the body of the mobile robot (100) accommodates one or more trays. Load cells are arranged on both sides of each of the one or more trays. The control unit (130) can monitor the load applied to each tray based on the sensing values ​​of the multiple load cells arranged on each of the multiple trays.

[0116] As the tray's position increases from the mobile robot's floor frame, its center of gravity increases, reducing stability during movement. Therefore, in an embodiment of the present invention, different movement speeds are set for each tray to ensure stability during movement of the mobile robot and prevent issues such as soup overflow.

[0117] Referring to Fig. 5a, a storage space is provided between the head portion (the portion where the display portion (150) is placed) of the mobile robot (100) and the driving portion (140) of the body portion to accommodate a plurality of trays (115).

[0118] The above plurality of trays (115) may be configured as a first tray (115a), a second tray (115b), and a third tray (115c) in the order of height from the bottom frame of the driving unit (140). The first to third trays (115a, 115b, 115c) illustrated are arranged at equal intervals, but are not limited thereto. For example, in order to stably accommodate serving objects of various heights, the intervals between the first to third trays (115a, 115b, 115c) may be configured to be different from each other.

[0119] A plurality of load cells (120a, 120b, 120c) may be arranged on the left and right bottoms of each of the first to third trays (115a, 115b, 115c).

[0120] For example, it may include a first load cell (120a(L)) arranged on the left bottom of the first tray (115a) with respect to the left, a second load cell (120b(L)) arranged on the left bottom of the second tray (115b), and a third load cell (120c(L)) arranged on the left bottom of the third tray (115c). In addition, for example, it may include a fourth load cell (120a(R)) arranged on the right bottom of the first tray (115a) with respect to the right, a fifth load cell (120b(R)) arranged on the right bottom of the second tray (115b), and a sixth load cell (120c(R)) arranged on the right bottom of the third tray (115c).

[0121] In some embodiments, the load cells may be configured to include more or fewer than those described above. In the former case, the additional load cells may be located at the center bottom of the tray. In the latter case, a single load cell may be located at the center bottom of each tray. However, in such cases, additional means may be required to calculate the left-right skewing of the serving object, as described below.

[0122] Referring to FIGS. 5a to 5c, the degree of reduction in the moving speed of the mobile robot is applied differently depending on the position (i.e., height) of the tray on which the serving object (e.g., food) (50) is placed.

[0123] In the example above, when food (50) is placed on the first tray (115a), the load change amount by the first and fourth load cells (120a) is detected, and it is determined that food (50) is placed on the first tray (115a). In this case, serving is performed by reducing the moving speed to about 70% of the standard moving speed.

[0124] When food (50) is placed on the second tray (115b), the load change amount by the second and fifth load cells (120b) is detected to determine that the food (50) is placed on the second tray (115b). In this case, the food is served by reducing the moving speed to about 80% of the standard moving speed.

[0125] When food (50) is placed on the third tray (115c), the load change amount by the third and sixth load cells (120c) is detected to determine that the food (50) is placed on the third tray (115c). In this case, the food is served by reducing the moving speed to approximately 90% of the standard moving speed.

[0126] For example, if the standard moving speed set for the mobile robot (100) is 1 m / s, when the serving object is placed on the first tray (115a), the speed is reduced to 0.7 m / s. Then, when the serving object is placed on the second tray (115b) and the third tray (115c), the speed is reduced to 0.8 m / s and 0.9 m / s, respectively, to serve.

[0127] The reason why the reduction level of the moving speed increases as the height of the tray on which the food (50) is placed increases is because the centrifugal force increases and stability decreases as the height increases from the bottom frame of the driving unit (140). However, each value of the aforementioned standard moving speed and the reduction level of the moving speed compared to the standard moving speed may change depending on the environment of the store where the mobile robot serves, the specifications of the mobile robot, user settings, etc.

[0128] The mobile robot (100) can calculate whether a serving object is placed on a matching tray and the weight of the placed serving object based on the sensing values ​​of multiple load cells (120).

[0129] Specifically, in the above embodiment, the weight of the serving object placed on the tray can be calculated based on the sum of the sensing values ​​of the plurality of load cells arranged on the left and right of each tray. For example, if the load change amount is received from each of the plurality of load cells (120a) arranged on both sides of the first tray (115a) and each corresponds to 450g and 550g, the weight of the serving object placed on the first tray (115a) is calculated as (450+550)g = 1000g. In some embodiments, the calculated weight of the serving object and the identification information (e.g., tray number) of the tray on which the serving object is placed can be displayed through the display unit (150) of the mobile robot (100).

[0130] In some embodiments, the level of reduction in the moving speed can be varied differently, taking into account both the load of the produced serving object and the position (i.e., height) of the settled tray.

[0131] In some embodiments, the control unit (130) of the mobile robot (100) can adjust the degree of change in the moving speed based on the weight of the serving object.

[0132] Specifically, when it is determined that the serving object is settled on the second tray (115b) and the moving speed is reduced to about 80% of the reference speed, the moving speed can be further reduced in proportion to the weight of the serving object. For example, if the weight of the food placed on the second tray (115b) is 1000g, the moving speed is reduced to 80% of the reference value, and if it exceeds this (e.g., 1500g), the moving speed can be reduced to (80-constant value)% of the reference value. At this time, the constant value increases in proportion to the weight of the serving object, but can be determined in consideration of the level when the serving object is settled on the first tray (e.g., constant value <= 5).

[0133] In some embodiments, the control unit (130) of the mobile robot (100) can increase the degree of decrease in the moving speed of the mobile robot (100) as the position of the tray where the weight of the serving object calculated based on the sum of the sensing values ​​of the load cell exceeds the reference value increases.

[0134] FIGS. 6a, 6b, 7, 8a, and 8b are exemplary drawings for explaining detecting the tilt of a serving object using a load cell and changing a serving path based on the same, according to an embodiment of the present invention.

[0135] According to an embodiment of the present invention, a mobile robot for serving comprises a plurality of trays, each of which has a load cell positioned on both sides. At this time, the weight applied to a tray containing a serving object among the plurality of trays is determined by the sum of the sensing values ​​of the load cells positioned on both sides of the tray, i.e., the first and second load cells (e.g., the left load cell and the right load cell).

[0136] Meanwhile, the serving object is guided to be placed in the center of the tray, but may be placed tilted to either the left or right side of the tray. If the serving object is tilted to one side while serving, the center of gravity of the mobile robot (100) will be tilted to one side, which may cause deformation of the contents, such as soup overflow, during operation.

[0137] Accordingly, in some embodiments of the present invention, the control unit (130) of the mobile robot (100) for serving can determine whether the serving object is tilted to one side based on the difference in each sensing value of a plurality of load cells arranged on both sides of the tray on which the serving object is placed.

[0138] The control unit (130) can determine left / right bias based on the difference in sensing values ​​of the load cells arranged on the left and right sides of the tray. For example, if the difference in sensing values ​​of the left and right load cells of the second tray is 100 g, it can be determined that there is left / right bias.

[0139] In addition, the control unit (130) can compare the size of each sensing value of a plurality of load cells arranged on both sides of the tray on which the serving object is placed to determine the direction in which the serving object is tilted (or the direction in which it is tilted).

[0140] Specifically, the control unit (130) can calculate the direction and degree of bias based on the magnitude of the sensing values ​​of each load cell arranged on the left and right sides of the tray. For example, if the sensing value of the left load cell of the second tray is 500 g and the difference in the sensing values ​​of the right load cell is 400 g, it can be calculated that there is a leftward bias and a difference of approximately 100 g has occurred.

[0141] In this case, the control unit (130) can set a different serving path based on the direction in which the serving object is tilted in order to serve the serving object more stably.

[0142] Specifically, the control unit (130) can determine that the serving object placed on the tray is tilted to the left based on the difference in sensing values ​​of a plurality of load cells arranged on both sides of the tray on which the serving object is placed, and set the serving path with left rotation priority.

[0143] Alternatively, the control unit (130) may determine that the serving object placed on the tray is tilted to the right based on the difference in sensing values ​​of a plurality of load cells arranged on both sides of the tray on which the serving object is placed, and may set the serving path with right rotation priority.

[0144] Accordingly, even if the mobile robot (100) moves while the serving object is placed on the tray with the food tilted to one side, issues such as the food rolling down or the soup overflowing can be prevented in advance.

[0145] Referring to FIGS. 6a and 6b, when a serving object, for example, food (50R) placed on the first tray (115a) of the mobile robot (100) is tilted to the right and settled, the right load cell among the plurality of load cells (120a) arranged on both sides of the first tray (115a) receives more load. For example, as shown in Fig. 6b, the load (604) corresponding to the sensing value of the left load cell (i.e., the first load cell (120a(L))) of the first tray (115a) is '547g', and the load (605) corresponding to the sensing value of the right load cell (i.e., the fourth load cell (120a(R))) is '579g'. The sum of these loads (604, 605) is represented as '1126g', which is the serving object load (603), and the difference indicates that the serving object has its load concentrated on one side, particularly on the right side.

[0146] In this case, the centrifugal force (CF1(L), CF1(R)) generated in the first tray (115a) when the mobile robot (100) is moving also differs. That is, the center of gravity is shifted to the right, so the right centrifugal force (CF1(R)) becomes larger. Accordingly, the mobile robot (100) sets the serving path to perform a right turn first (602).

[0147] Right turn priority (602) means that, when there are multiple directions that the mobile robot can choose to go to the serving table, the mobile robot (100) gives priority to choosing a path that turns to the right. However, when there are no multiple directions that can be chosen and the robot must turn to the right with its center of gravity tilted, the robot may operate to turn to the right at a speed slower than the reference rotation speed at the turning point.

[0148] Meanwhile, although not shown, when a serving object placed on the first tray (115a) of the mobile robot (100) is tilted to the left and settled, the left load cell among the plurality of load cells (120a) placed on both sides of the first tray (115a) receives more load.

[0149] In this case, the centrifugal force (CF1(L), CF1(R)) generated in the first tray (115a) when the mobile robot (100) is moving also differs. That is, the center of gravity is shifted to the left, so the left centrifugal force (CF1(L)) becomes larger. Accordingly, the mobile robot (100) sets the serving path to perform a left rotation first.

[0150] A left turn priority path means that, when there are multiple directions that the mobile robot can choose to go to the serving table, the mobile robot (100) will give priority to choosing a path that turns left. However, when there are no multiple directions that can be chosen and the robot must turn left with its center of gravity tilted, the robot may operate to turn left at a speed slower than the reference rotation speed at the turning point.

[0151] Fig. 7 is an example of generating a left-turn priority path when it is determined that the center of gravity of the mobile robot (100) is tilted to the left. For example, let's assume that there are multiple paths from the starting position (710) to the destination (720), which is the order table. In this case, when there is no load, the shortest path is set (701) and the path can be changed to a left-turn priority path (702) when there is a load on the left side. The serving path in Fig. 7 is simply illustrated for explanation, but the map of the space that the actual mobile robot (100) serves may be more complex.

[0152] According to the embodiment, FIGS. 8a and 8b are intended to explain controlling both the moving speed and the moving path by considering both the position where the serving object is placed on the tray and the position (i.e., height) of the tray.

[0153] First, referring to FIG. 8a, when a serving object (50R) is placed with the third tray (115c) tilted to the right, the center of gravity shift (801) to the right is detected through the difference in sensing values ​​of a plurality of load cells (120c) arranged on both sides of the third tray (115c). The center of gravity shift to the right (801) causes a difference in the left and right centrifugal forces (CF3(L), ​​CF3(R)). In some examples, visual information may be displayed on the display unit (150) to notify the tilting of the serving object and induce re-settling.

[0154] In this case, the mobile robot (100) can generate a path with a right-direction priority rotation (811) based on the detected right-leaning, and control the driving unit (140) to drive along the changed path. At this time, the changed path is driven by reducing the moving speed to a level corresponding to the position of the third tray (115c), for example, to about 90% of the standard moving speed.

[0155] Referring to the following Figure 8b, when a serving object (50R) is placed with the third tray (115c) tilted to the left, the center of gravity shift (802) to the left is recognized through the difference in sensing values ​​of a plurality of load cells (120c) arranged on both sides of the third tray (115c). The center of gravity shift to the left (802) causes a difference in the left and right centrifugal forces (CF3(L), ​​CF3(R)). In some examples, visual information may be displayed on the display unit (150) to notify the tilting of the serving object and induce re-settling.

[0156] In this case, the mobile robot (100) can generate a path with a left-direction priority rotation (812) based on the perceived left-leaning, and control the driving unit (140) to drive along the changed path. At this time, the changed path is driven by reducing the moving speed to a level corresponding to the position of the third tray (115c), for example, to about 90% of the reference moving speed. Accordingly, both moving speed optimization and serving path optimization can be achieved simultaneously.

[0157] Additionally, although not shown, depending on the difficulty of the serving path, the serving object may be centered at the start of the serving process, but may shift to one side during the serving process. For example, if the floor is uneven or uneven, the serving object may shift while passing over it, resulting in a shift to one side during the serving process.

[0158] The mobile robot (100) receives changes in the sensing values ​​of multiple load cells arranged for each tray while driving for serving, and when the amount of change exceeds a reference value and a difference between multiple sensing values ​​occurs and is maintained for a certain period of time, the corresponding center of gravity tilt and tilt direction can be recognized.

[0159] In this case, when the center of gravity shifts during driving, if it is possible to change the path by turning in the direction of the shift, the serving path is changed again to ensure stable serving.

[0160] Meanwhile, in situations where it's difficult to change the serving path (e.g., within a certain distance from the serving table), the current movement speed can be reduced to a certain level to ensure stable serving. For example, if the serving object is settled on the first table and is moving at 70% of the standard movement speed, and a shift occurs, the system can be designed to move at a further reduced speed, such as 60%.

[0161] FIG. 9 is a flowchart illustrating a method of applying obstacles detected using a load cell while driving along a serving path to a map according to an embodiment of the present invention.

[0162] Each process of the operation flow diagram of FIG. 9 may be performed by the control unit (or controller / processor) of the mobile robot (100) for serving, or by the controller / processor of the server (200). In addition, although the map of the space in which the mobile robot (100) moves in FIG. 9 is described as being provided and updated through the server (200), it is not limited thereto. For example, the map may be learned by the control unit (130) of the mobile robot (100) and stored in the memory (160).

[0163] In an embodiment, the sensor (120) of the mobile robot (100) may include an IMU sensor placed on one side of the body.

[0164] An IMU (Inerial Measurement Unit) sensor is a sensor that accurately measures the angle at which an object is tilted, and may include, for example, a gyroscope, an acceleration sensor, and / or a geomagnetic sensor. If it consists only of a gyroscope, it is called a 6-axis sensor, and if it consists of all of a gyroscope, an acceleration sensor, and a geomagnetic sensor, it is called a 9-axis sensor. An IMU sensor can sense pitch, roll, and yaw rotations around the x-axis, y-axis, and z-axis, respectively. Here, through the IMU sensor of the mobile robot (100), it is possible to sense a change in the z-axis rotation value that occurs when passing over an uneven surface, a step, etc. on the floor.

[0165] While the mobile robot (100) is moving, the control unit (130) can detect rotational changes in each of the x, y, and z axes through the IMU sensor, thereby recognizing unevenness or steps on the floor.

[0166] The control unit (130) of the mobile robot (100) can detect a change in the sensing values ​​detected by multiple load cells that is greater than a reference value while moving at a changed moving speed based on a determination that a serving object has been placed on at least one tray. In addition, the control unit (130) can detect a rotational change greater than a reference value at least about the z-axis through the sensing values ​​of the IMU sensor.

[0167] In this case, the control unit (130) can detect a new obstacle on the movement path based on the fact that the sensing values ​​of the plurality of load cells (hereinafter, “first sensing values”) and the sensing values ​​of the IMU sensor (hereinafter, “second sensing values”) have changed by more than a reference value.

[0168] Here, detecting an obstacle means detecting the position of the mobile robot (100) when a change greater than the reference value of the first and second sensing values ​​is detected.

[0169] The above first and second sensing values ​​refer to multiple sensing values ​​collected in real time while the mobile robot (100) is moving. Accordingly, the first sensing value may refer to a set of first sensing values ​​and may refer to a set of second sensing values.

[0170] In some embodiments, a new obstacle on the moving path may be detected by additionally combining a set of sensing values ​​of another sensor (e.g., a geomagnetic sensor, etc.) among the sensors (120) of the mobile robot (100), for example, a third sensing value.

[0171] The control unit (130) can update the map to display the location of the detected obstacle by additionally combining the first and second sensing values ​​(or the third sensing value). This map update can be performed in real time.

[0172] In such a case, the control unit (130) may operate to create a detour route to the location while driving for serving, or to change the instantaneous movement speed (slow down to the minimum speed) at the location (or a nearby location).

[0173] For example, let's say that the control unit (130) changes the serving path to a rotation path that is given priority in that direction (i.e., the direction in which the serving object is tilted) by applying a weight to the direction in which the tray's weight is weighted. At this time, if an obstacle such as a new bump or step is detected while the mobile robot (100) is driving along the changed serving path considering the direction in which the serving object is tilted, this can also be changed and applied to the serving path in real time.

[0174] According to some embodiments of the present invention, by using the instantaneous change values ​​of a plurality of load cells arranged on a tray and the sensing values ​​of an IMU sensor, the step and requested location can be marked in real time while serving.

[0175] Referring to FIG. 9, a mobile robot for serving (hereinafter referred to as a "serving robot") (100) can receive map data for a space for serving within a store from a server (200) (901). Here, the map data may be, for example, map data created using SLAM, but is not limited thereto.

[0176] The serving robot (100) can determine its current location using the received map data and its own sensors.

[0177] The serving robot (100) determines whether a serving object is placed on each tray (115a, 115b, 115c) based on the sensing values ​​of a plurality of load cells arranged on one or more trays (115a, 115b, 115c) provided on the body (902). Specifically, the serving robot (100) can receive the sensing values ​​of the load cells arranged on both sides of each tray (115a, 115b, 115c) to determine the position of the tray on which the serving object is placed, the weight of the serving object, the tilting direction of the serving object, and the tilting direction.

[0178] Based on the above decision, the serving robot (100) changes its movement speed when moving for serving (903). At this time, the degree of change in movement speed varies depending on the position of the tray on which the serving object is placed.

[0179] For example, if the serving object is placed on the first tray located highest from the bottom frame of the serving robot (100), the moving speed can be reduced to about 70% of the standard moving speed. On the other hand, if the serving object is placed on the third tray located close to the bottom frame of the serving robot (100), the moving speed can be reduced to about 90% of the standard moving speed.

[0180] Additionally, the serving robot (100) can set a serving path with a rotational path that prioritizes the direction in which the serving object is tilted, taking into account the direction in which the object is tilted. For example, if it is determined that the serving object is tilted to the left based on the difference in left and right sensing values ​​of multiple load cells, the serving path can be changed to a left-first rotational path.

[0181] The serving robot (100) can simultaneously apply changes in movement speed according to the placement of the serving object and changes in path according to the tilt of the serving object. For example, if the serving object is placed on the first tray and tilted to the right based on the sensing values ​​of multiple load cells, the robot can reduce the movement speed to approximately 70% of the standard movement speed and drive along a right-first rotation path.

[0182] When driving for serving, the serving robot (100) monitors the sensing values ​​of the sensor (120) in real time. When a change in the load cell sensing value exceeding a reference value is detected, the serving robot (100) additionally combines the sensing values ​​of the IMU sensor to detect a new obstacle (904).

[0183] That is, the serving robot (100) can detect new obstacles that were not previously indicated by combining the instantaneous change values ​​of multiple load cells and the sensing values ​​of the IMU sensor. The serving robot (100) can mark the location corresponding to the detected obstacle on the map.

[0184] The serving robot (100) can then transmit location information corresponding to the detected obstacle to the server (200) via the communication module (110) to update the map (905). For example, the server (200) can update the SLAM (simultaneous localization and mapping) map to display location information corresponding to the received obstacle.

[0185] The server (200) can update the map based on location information corresponding to the received obstacle and provide the updated map to a serving robot (100), for example, another serving robot (906). Accordingly, the serving robot (100) can then generate a route while avoiding the location.

[0186] In some embodiments, if it is difficult to set a serving path that avoids marked locations (i.e., if a serving path is set that includes marked locations), the mobile robot may be controlled to travel at a speed slower than the reference speed when passing the marked location. Accordingly, it can safely pass at least the marked location without issues such as soup overflow.

[0187] FIG. 10 is another flowchart of a method for determining whether to change a driving speed or a serving path for serving, according to an embodiment of the present invention.

[0188] Each step of the operating method of Fig. 10 can be executed by the control unit (or controller / processor) of the mobile robot unless otherwise described. In addition, some of the steps of Fig. 10 can be optionally performed or omitted.

[0189] A mobile robot for serving according to an embodiment of the present invention may include an input unit for receiving the movement purpose of a serving object. The input unit is not limited to a specific input means, and may be implemented in the form of various input means such as a voice input means, a touch input means (e.g., software buttons, etc.), and a push input means (e.g., hardware buttons, etc.).

[0190] For example, if the display unit (150) of the mobile robot (100) is implemented as a touch screen, the mobile robot (100) can receive the movement purpose of the serving object through the display unit (150). Or, for example, the movement purpose of the serving object can be received by recognizing the user's voice received through the microphone (not shown) of the mobile robot (100).

[0191] In some embodiments, the control unit (130) of the mobile robot (100) can determine whether a serving object is placed on at least one tray (115a, 115b, 115c) based on the movement purpose input through the input unit and the sensing values ​​detected by the plurality of load cells (120).

[0192] Specifically, the control unit (130) can determine whether a serving object (e.g., food) is placed on a tray (115a, 115b, 115c) based on sensing values ​​detected by a plurality of load cells (120) in response to the movement purpose input through the input unit being “serving” to the order table.

[0193] The control unit (130) may determine that a serving object (e.g., food) is not placed on the trays (115a, 115b, 115c) in response to the movement purpose input through the input unit being for "retirement." In other words, the control unit may not perform the aforementioned algorithm regardless of (ignoring) the sensing values ​​detected by the plurality of load cells (120).

[0194] In some embodiments, if the control unit (130) determines that the serving object (e.g., food) is not seated on the tray (115a, 115b, 115c), a disposal algorithm for faster disposal may be applied.

[0195] Here, the retreat algorithm may include an algorithm / command that increases the movement speed of the mobile robot (100) for retreating to a reference value (i.e., the reference movement speed when the serving object has not been settled) or more. Alternatively, the retreat algorithm may include an algorithm / command that changes the movement path of the mobile robot (100) for retreating to a shortest path.

[0196] Referring to Figure 10, an in-store customer (350) can enter order information via a tablet on a table (1001). The order information entered via the tablet is transmitted to a server (200) (e.g., a control server) that manages order information. The order information may include the table number where the customer (350) is located and information regarding the food ordered.

[0197] The server (200) provides the received order information to a mobile robot (hereinafter referred to as “serving robot”) (100) for serving (1002).

[0198] Here, providing order information to the serving robot (100) includes the serving robot (100) communicating with the server (200) via the communication module (110) and directly receiving information about the table number and ordered food. In addition, providing order information to the serving robot (100) includes an implementation in which, when a table number is input by a store employee or the like, the robot recognizes the order information matching the table number.

[0199] Continuing, the serving robot (100) can detect that a serving object (e.g., food) has been placed on the serving robot (100) and a serving input has been received (1003).

[0200] Here, the serving input may be generated by an explicit input as described above (e.g., serving start input / customer (350) table number input, etc.), or the serving input may be generated based on the current position of the serving robot (100) when the serving object is placed. In the latter case, for example, when the serving robot (100) is positioned at a place where the serving object is delivered, the placement is detected based on the sensing values ​​of a plurality of load cells arranged on the tray, and the serving input may be automatically generated after a certain period of time has elapsed.

[0201] In response to receiving a serving input, the serving robot (100) performs an operation according to the algorithm described above (1004).

[0202] Specifically, the serving robot (100) can determine whether food is placed on at least one tray based on the sensing values ​​of the plurality of load cells (120), and can calculate the position and weight of the food placed thereon. In addition, the serving robot (100) can detect whether food is placed on the tray while being shifted to the left / right based on the sensing values ​​of the plurality of load cells (120). For example, the serving robot (100) can detect that food is placed on the second tray (i.e., the middle-height tray), and can recognize that the food is shifted to the left based on the difference in the sensing values ​​of the plurality of load cells (120b) arranged on the left and right of the second tray. In this case, the serving robot (100) can perform the serving operation by changing (decreasing) the moving speed corresponding to the position of the second tray where the food is placed according to the above algorithm. Additionally, the serving robot (100) can set a left rotation priority path with a center of gravity biased as the serving path according to the above algorithm.

[0203] Meanwhile, the serving robot (100) can detect that a serving object (hereinafter referred to as “leftover food”) (e.g., leftover food) has been placed on the serving robot (100) by a customer (350) or an employee in the store and a leftover food input has been received (1005).

[0204] Here, the above-mentioned retirement input may be generated by an explicit input (e.g., input to start movement for retirement, etc.), or, the above-mentioned retirement input may be generated based on the current position of the serving robot (100) when the retirement food is settled. In the latter case, for example, when the serving robot (100) moves to the customer (350) table while the serving object is not settled and the settlement of the retirement food is detected based on the sensing values ​​of a plurality of load cells arranged on the tray at the corresponding position, the retirement input may be automatically generated after a certain period of time.

[0205] In response to receiving a withdrawal input, the serving robot (100) may decide not to apply the aforementioned algorithm (1006). Accordingly, even if the serving robot (100) detects the settling or misalignment of the serving object, it does not change its moving speed or travel path.

[0206] In some embodiments, the movement for the settling operation may proceed at a faster rate than when the serving object is not placed. In another example, the movement for the settling operation may proceed along a shorter path than when the serving object is not placed.

[0207] As described above, according to the mobile robot for serving and the operating method thereof according to the embodiment of the present invention, the mobile robot for serving can detect the position of the serving object placed on the tray, and can more reliably deliver the serving object to the customer by varying the moving speed or changing the serving path to prevent the contents of the serving object from flowing or overflowing. In addition, even if the serving object is placed to one side, the robot can detect this and change the serving path so that it rotates in the direction where the center of gravity is tilted, thereby preventing deformation of the state of the serving object in advance. Furthermore, in the case of food, etc., the robot distinguishes between the input for serving and the input for removing food and determines whether to implement an algorithm, thereby enabling rapid movement during the removing process. Accordingly, efficient operation is possible.

[0208] The present invention described above can be implemented as computer-readable code (or application or software) on a program-recorded medium. The above-described method for controlling an autonomous vehicle can be realized by code stored in memory or the like.

[0209] A computer-readable medium includes any type of recording device that stores data that can be read by a computer system. Examples of computer-readable media include hard disk drives (HDDs), solid-state disks (SSDs), silicon disk drives (SDDs), ROMs, RAMs, CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and also includes media implemented in the form of carrier waves (e.g., transmission via the Internet). In addition, the computer may include a processor or a control unit. Accordingly, the above detailed description should not be construed as limiting in all respects, but rather as illustrative. The scope of the present invention should be determined by a reasonable interpretation of the appended claims, and all changes coming within the equivalent scope of the present invention are intended to be included in the scope of the present invention.

Claims

1. In mobile robots for serving, At least one tray, which is placed in the receiving space of the body of the mobile robot, on which a serving object is placed; and A plurality of load cells arranged on at least one tray; A driving unit positioned at the lower part of the body to move the mobile robot; and It includes a control unit that is connected to the plurality of load cells and the driving unit so as to be communicatively connected, and the control unit is: Based on the sensing values ​​detected by the plurality of load cells, determining whether a serving object is placed on the at least one tray, and controlling the driving unit to change the moving speed of the mobile robot based on the determination. Mobile robot for serving.

2. In paragraph 1, The above control unit, Reducing the moving speed of the mobile robot below the reference speed based on a determination that a serving object has been placed on at least one of the trays; The degree of reduction in the above movement speed varies depending on the height at which at least one tray is installed. Mobile robot for serving.

3. In paragraph 2, The at least one tray includes a plurality of trays having different heights from the bottom frame of the body, The above plurality of load cells are arranged on the left and right sides of each of the above plurality of trays, The above control unit, Determine the position of the tray on which the serving object is placed based on the sensing values ​​of the plurality of load cells arranged on each of the plurality of trays, and change the degree of reduction in the moving speed based on the determined position of the tray. Mobile robot for serving.

4. In paragraph 3, The above control unit, The weight of the object placed on the tray is calculated based on the sum of the sensing values ​​of the first and second load cells arranged on the left and right of each of the plurality of trays, The degree of reduction in the moving speed of the mobile robot is set differently based on the calculated weight and the determined tray position. Mobile robot for serving.

5. In paragraph 4, The above control unit, The higher the position of the tray where the calculated weight is determined to exceed the reference value, the more the degree of decrease in the moving speed of the mobile robot increases. Mobile robot for serving.

6. In paragraph 3, The above control unit, Based on the difference in sensing values ​​of the first and second load cells arranged on the left and right of each of the plurality of trays, whether the serving object placed on the tray is biased is determined, Setting the serving path based on the above decision, Mobile robot for serving.

7. In paragraph 6, The above control unit, Based on the difference in the sensing values ​​of the first and second load cells, the serving path is set to give priority to left rotation based on the determination that the serving object placed on the tray is tilted to the left. Based on the difference in the sensing values ​​of the first and second load cells, the serving path is set to give priority to right rotation based on the determination that the serving object placed on the tray is tilted to the right. Mobile robot for serving.

8. In paragraph 1, Further comprising an IMU sensor placed on the body of the above mobile robot, The above control unit, While serving in a space on the map at a changed moving speed based on the above decision, if a change in the sensing values ​​detected by the plurality of load cells exceeds a reference value, the sensing values ​​of the IMU sensors are combined to detect an obstacle, and the map is updated to display a location corresponding to the detected obstacle. Mobile robot for serving.

9. In paragraph 1, It further includes an input section for receiving the purpose of movement of the serving object, The above control unit, Determining whether a serving object is placed on at least one tray based on the input movement purpose and the sensing values ​​detected by the plurality of load cells. Mobile robot for serving.

10. In paragraph 9, The above control unit, In response to the movement purpose for serving being entered through the input unit, it is determined whether the serving object is placed on at least one tray based on the sensing values ​​detected by the plurality of load cells, In response to the movement purpose for retirement being entered through the input unit, determining that the serving object is not settled on at least one tray, Mobile robot for serving.

11. As a method of operating a mobile robot for serving, A step of receiving a sensing value detected by a plurality of load cells arranged in a receiving space of the body of the mobile robot and arranged on at least one tray on which a serving object is placed; A step of determining whether a serving object is placed on at least one tray based on the received sensing value; and Including a step of changing the moving speed of the mobile robot based on the above decision, Method of operation of a mobile robot for serving.

12. In paragraph 11, The step of changing the movement speed of the above mobile robot is: A step of reducing the moving speed of the mobile robot below a reference speed based on a determination that a serving object has been placed on at least one tray, The degree of reduction in the above movement speed varies depending on the height at which at least one tray is installed. Method of operation of a mobile robot for serving.

13. In paragraph 12, The at least one tray includes a plurality of trays having different heights from the bottom frame of the body, and the plurality of load cells are arranged on the left and right of each of the plurality of trays. The above decision step is, A step of determining the position of a tray on which a serving object is placed based on the sensing values ​​of a plurality of load cells arranged on each of the plurality of trays, The step of changing the movement speed of the above mobile robot is: Including a step of changing the degree of reduction in the moving speed based on the position of the determined tray. Method of operation of a mobile robot for serving.

14. In paragraph 13, The above decision step is, A step of calculating the weight of an object placed on a tray based on the sum of the sensing values ​​of the first and second load cells arranged on the left and right of each of the plurality of trays, The step of changing the movement speed of the above mobile robot is: Including a step of differently setting the degree of reduction in the moving speed of the mobile robot based on the position of the tray determined based on the weight calculated above. Method of operation of a mobile robot for serving.

15. In paragraph 14, The step of changing the movement speed of the above mobile robot is: A step of increasing the degree of reduction in the moving speed of the mobile robot as the position of the tray determined to exceed the standard value is higher, Method of operation of a mobile robot for serving.

Citation Information

Patent Citations

  • Low noise pneumatic tire

    KR1020230036861A

  • Moving robot ha and method thereof

    KR102376299B1

  • Three dimensional printer

    KR102408340B1

  • Information display device for floor installation

    KR102578237B1

  • KR20230065898A