Mobile robot and system for mobile robot

The mobile robot system addresses the communication burden by transmitting processed data to servers, enabling time-series reconstruction of position data, thereby reducing transmission frequency and maintaining accuracy.

WO2026095197A1PCT designated stage Publication Date: 2026-05-07BEAR ROBOTICS INC
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
BEAR ROBOTICS INC
Filing Date
2024-10-31
Publication Date
2026-05-07

AI Technical Summary

Technical Problem

Existing autonomous mobile robots face a communication burden on servers due to frequent transmission of location data, which is insufficiently addressed by existing methods that either compress data or manage robot movement in congested areas, without reducing overall communication demands.

Method used

A mobile robot system that minimizes communication burden by transmitting processed data including starting coordinates, target coordinates, and movement speed to a server, allowing the server to reconstruct the mobile robot's position in a time series, reducing the frequency of data transmission and maintaining data accuracy through updates for deviations.

Benefits of technology

Significantly reduces communication burden on servers by minimizing data transmission frequency while maintaining position change accuracy, allowing the server to reconstruct and update position data efficiently.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024096442_07052026_PF_FP_ABST
    Figure KR2024096442_07052026_PF_FP_ABST
Patent Text Reader

Abstract

A mobile robot and a system therefor are disclosed. A mobile robot, according to the present invention, comprises: a communication module connected to communicate with a server to transmit data; a processor generating first data including a starting coordinate, a target coordinate, and a moving speed of the mobile robot in response to a moving command in accordance with an allocated task; and a driving unit operating the mobile robot to drive toward the target coordinate. In this case, the processor transmits the first data to the server only once at the starting coordinate so that the server restores the first data in time series. In addition, when the mobile robot reaches the target coordinates according to the operation of the driving unit, second data including the current coordinate of the mobile robot is transmitted to the server. Accordingly, the communication load on the server is minimized.
Need to check novelty before this filing date? Find Prior Art

Description

Mobile robots and mobile robot systems

[0001] The present invention relates to a mobile robot and a system for a mobile robot, and more specifically, to a mobile robot and a system for a mobile robot connected to a server that manages the mobile robot so as to be able to communicate with the server.

[0002] Recently, autonomous mobile robots are being utilized for various purposes. For example, one or more mobile robots collaborate to perform assigned tasks.

[0003] To this end, the mobile robot communicates with a server managing the robot (e.g., robot management server / cloud / system) to transmit various information, such as location and status, necessary for controlling the mobile robot. For instance, while moving to perform an assigned task, the mobile robot transmits its location to the server at regular intervals.

[0004] On the other hand, when a large amount of data is frequently transmitted from a mobile robot to a server, the control precision of the mobile robot improves, but the resource consumption for data communication between the mobile robot and the server increases, leading to a greater communication burden on the server.

[0005] One solution to this problem is to compress and transmit data; however, since the position data of a mobile robot changes continuously over time, this is insufficient to resolve the communication burden on the server.

[0006] In this regard, Korean Published Patent No. 10-2021-7027848 (hereinafter referred to as 'Prior Art 1') discloses a method in which a robot monitoring server receives location information of a robot and, if it determines that the area is congested, transmits a command to move the robot to another location. However, Prior Art 1 is a solution for resolving congested situations and does not serve as a solution for reducing the communication burden with mobile robots.

[0007] In addition, Japanese published patent No. 2024-076514 (hereinafter referred to as "Prior Art 2") presents a method for continuing to execute a planned task even when communication between an autonomous driving robot and a management system is interrupted. However, Prior Art 2 does not present a method for reducing the communication burden even when communication is maintained smoothly.

[0008] In addition, Japanese published patent No. 2024-075163 (hereinafter referred to as "Prior Art 3") discloses a method for performing a robot monitoring function by transmitting the location information of a robot to a main server and managing the location information of the robots in an integrated manner. However, Prior Art 3 presents a method for efficiently utilizing the location information of multiple robots, and does not provide a solution for reducing the communication burden when a robot transmits location information to a server.

[0009] Accordingly, according to one embodiment of the present disclosure, a mobile robot and a system of the mobile robot are provided, which are implemented so as not to cause a communication burden to the server when transmitting location information to the server while the mobile robot is moving for an assigned task.

[0010] In addition, according to another embodiment of the present disclosure, a mobile robot and a system of the mobile robot are provided, which are implemented such that the mobile robot transmits data processed from the beginning, allowing the server to process the position change of the mobile robot over time in a time series.

[0011] In addition, according to another embodiment of the present disclosure, a mobile robot and a system of the mobile robot are provided, which are implemented to minimize the transmission frequency of data that the mobile robot must send to a server in addition to location information.

[0012] In addition, according to another embodiment of the present disclosure, a mobile robot and a system of the mobile robot are provided, which are implemented such that the communication burden associated with data transmission is reduced while the precision of the position change of the mobile robot over time is not reduced.

[0013] A mobile robot according to an embodiment of the present invention is implemented to minimize the burden of communication by including a target position in its current position information and transmitting it to a server at once, and allowing the server to process it in a time series.

[0014] Specifically, a mobile robot according to an embodiment of the present invention comprises: a communication module connected to a server to communicate and transmit data; a processor that generates first data including the starting coordinates, target coordinates, and movement speed of the mobile robot in response to a movement command according to an assigned task; and a driving unit that operates to drive the mobile robot toward the target coordinates. At this time, the processor may transmit the first data from the starting coordinates to the server so that the server can reconstruct the first data in a time series, and transmit second data including the current coordinates of the mobile robot to the server based on the fact that the mobile robot has reached the target coordinates according to the operation of the driving unit.

[0015] In addition, in an embodiment, the first data is generated in response to the movement command and includes the starting coordinates and the target coordinates extracted from the movement command, and may be generated with the addition of the movement speed so that a plurality of trajectory coordinates between the starting coordinates and the target coordinates can be calculated.

[0016] Additionally, in an embodiment, when the processor generates a stop command upon reaching the target coordinates, it can transmit the second data along with the stop command to the server, thereby enabling the server to compare the current coordinates of the second data with the target coordinates of the first data.

[0017] In addition, in an embodiment, the processor can detect the occurrence of an event related to a change that deviates from the time series analysis of the first data and transmit third data related to the detected event to the server.

[0018] Additionally, in an embodiment, the processor determines that the event has occurred in response to the cessation of movement of the mobile robot traveling toward the target coordinates, and can transmit third data including the current position of the mobile robot and elapsed time information to the server so that the server updates the time series analysis of the first data.

[0019] Additionally, in an embodiment, the processor determines that the event has occurred in response to the curve driving of the mobile robot driving toward the target coordinates, and can transmit third data including the center point coordinates of the curve driving to the server so that the server updates the time series analysis of the first data.

[0020] Additionally, in an embodiment, the processor may generate a bit signal at regular time intervals while the mobile robot is in a power-on state, determine that the event has occurred in response to the mobile robot switching from a power-off state to a power-on state, transmit third data including a bit start signal to the server, determine that the event has occurred in response to the mobile robot switching from a power-on state to a power-off state, and transmit updated third data including a bit end signal to the server.

[0021] In addition, in an embodiment, the mobile robot further includes a sensor that detects surrounding obstacles while the mobile robot is driving. In addition, the processor determines that the event has occurred when the mobile robot detects surrounding obstacles through the sensor while driving, and can transmit third data representing the current coordinates of the mobile robot to the server at regular time intervals.

[0022] Additionally, in an embodiment, if no surrounding obstacles are detected through the sensor, the processor may transmit updated third data, including the current coordinates of the mobile robot and delayed time information, to the server so that the server updates the time series restoration.

[0023] In addition, in an embodiment, the mobile robot further includes a memory in which spatial map data related to the assigned task is stored. In addition, the processor distinguishes a plurality of regions based on the spatial map data, determines that the event has occurred when the mobile robot moves to a different region within the plurality of regions after the transmission of the first data, and can generate updated third data based on the first data and transmit it to the server.

[0024] In addition, a system of a mobile robot according to another embodiment of the present invention includes a server; and a mobile robot connected to the server to communicate and transmit data. Here, the mobile robot may generate first data including the starting coordinates, target coordinates, and movement speed of the mobile robot in response to a movement command according to an assigned task, and transmit it from the starting coordinates to the server, and the server may determine the position and movement of the mobile robot by reconstructing the time series of the received first data. In addition, the mobile robot may transmit second data including the current coordinates of the mobile robot to the server based on the fact that it has traveled toward the target coordinates and reached the target coordinates, and compare this with the time series reconstruction of the first data.

[0025] In addition, in an embodiment, the server may perform the time series analysis by calculating a plurality of trajectory coordinates between the starting coordinates and the target coordinates based on the movement speed in response to the receipt of the first data.

[0026] In addition, in an embodiment, the mobile robot detects the occurrence of an event related to a change that deviates from the time series analysis of the first data and transmits third data related to the detected event to the server. In addition, the server can update the time series analysis of the first data based on the current coordinates and elapsed time information included in the third data.

[0027] In addition, in an embodiment, the server may sequentially output location coordinates corresponding to the time series analysis of the first data, and then output the current coordinates included in the second data received from the mobile robot.

[0028] In addition, in an embodiment, the server may, in response to a request from an external terminal, transmit the received first data to the external terminal so that a third party can perform time-series analysis of the data.

[0029] According to a mobile robot and its operation method according to some embodiments of the present invention, the communication burden can be significantly reduced or minimized by minimizing the frequency of location data transmitted to a server while the mobile robot is moving to perform an assigned task.

[0030] In addition, according to a mobile robot and its operation method according to some embodiments of the present invention, the mobile robot transmits data in a processed form that allows the server to restore the time series without compressing the data, thereby reducing the amount of data transmitted to the server and alleviating the communication burden.

[0031] In addition, according to a mobile robot and its operation method according to some embodiments of the present invention, when the mobile robot stops, travels in a curved shape, or travels while avoiding obstacles, updated position data is transmitted to update the time series reconstruction. Accordingly, the accuracy of the data can be maintained while reducing the communication burden.

[0032] FIG. 1 is a block diagram showing an example configuration of a mobile robot related to the present invention.

[0033] FIG. 2 is a representative flowchart for explaining the operation method of a mobile robot related to the present invention.

[0034] FIG. 3 is an example diagram illustrating the transmission of time-series reconstructible location data by a mobile robot related to the present invention to a linked server.

[0035] FIG. 4 is an example diagram illustrating the operation of a mobile robot related to the present invention to transmit position information with the minimum number of times.

[0036] FIG. 5 is an exemplary flowchart for explaining another method of operation of a mobile robot related to the present invention.

[0037] FIGS. 6, FIGS. 7, and FIGS. 8 are example drawings for explaining data transmission and updating for updating time-series restored position data when a mobile robot is stopped in relation to the present invention.

[0038] FIGS. 9a and 9b are exemplary drawings illustrating data transmission and updating for updating time-series restored position data during curve driving of a mobile robot related to the present invention.

[0039] FIGS. 10a and FIGS. 10b are exemplary drawings for explaining the operation of a mobile robot related to the present invention to transmit a power signal with the minimum number of times.

[0040] FIGS. 11 and FIGS. 12 are exemplary drawings illustrating the transmission of current location information to a linked server while a mobile robot related to the present invention is driving while avoiding obstacles.

[0041] FIGS. 13a and FIGS. 13b are exemplary drawings for explaining how a mobile robot related to the present invention divides a map into multiple regions and transmits current location information on a region-by-region basis.

[0042] FIG. 14 is an example diagram illustrating how a linked server transmits location data transmitted by a mobile robot related to the present invention to a third party to restore the time series.

[0043] Hereinafter, embodiments disclosed in this specification will be described in detail with reference to the attached drawings. Identical or similar components regardless of drawing symbols will be assigned the same reference number, and redundant descriptions thereof will be omitted. The suffixes "module" and "part" used for components in the following description are assigned or used interchangeably solely for the ease of drafting the specification and do not inherently possess distinct meanings or roles. Furthermore, in describing embodiments disclosed in this specification, if it is determined that a detailed description of related prior art could obscure the essence of the embodiments disclosed in this specification, such detailed description will be omitted. Additionally, the attached drawings are intended only to facilitate understanding of the embodiments disclosed in this specification; the technical concept disclosed in this specification is not limited by the attached drawings, and it should be understood that they include all modifications, equivalents, and substitutions that fall within the spirit and technical scope of the present invention.

[0044] Terms including ordinal numbers, such as first, second, etc., may be used to describe various components, but said components are not limited by said terms. These terms are used solely for the purpose of distinguishing one component from another.

[0045] When it is stated that one component is "connected" or "connected" to another component, it should be understood that while it may be directly connected or connected to that other component, there may also be other components in between. On the other hand, when it is stated that one component is "directly connected" or "directly connected" to another component, it should be understood that there are no other components in between.

[0046] A singular expression includes a plural expression unless the context clearly indicates otherwise.

[0047] In this application, terms such as “comprising” or “having” are intended to specify the existence of the features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, and should be understood as not precluding the existence or addition of one or more other features, numbers, steps, actions, components, parts, or combinations thereof.

[0048] Meanwhile, the term "mobile robot" disclosed in this specification refers to a machine capable of autonomous driving and performing assigned tasks or operations. Depending on the purpose or field of use, mobile robots may be classified into industrial, domestic, military, and medical types.

[0049] Tasks assigned to mobile robots may include cleaning, delivery, serving, logistics organization, guidance, and content provision. To perform these assigned tasks, mobile robots can execute various functions and movements. Additionally, to perform movements for autonomous driving, mobile robots include a drive unit comprising actuators, motors, brakes, etc.

[0050] FIG. 1 is a block diagram showing an example configuration of a mobile robot (100) related to the present invention.

[0051] Referring to FIG. 1, a mobile robot (100) according to the present invention may include a communication module (110), an input unit (120), a sensing unit (140), an output unit (150), a memory (160), a driving unit (170), a processor (180), and a power supply unit (190). Since the components illustrated in FIG. 1 are not essential for implementing the mobile robot, the mobile robot described herein may have more or fewer components than those listed above.

[0052] The communication module (110) may include one or more modules that enable wireless communication between the mobile robot (100) and an external server, for example, an artificial intelligence server or an external terminal. Additionally, the communication module (110) may include one or more modules that connect the mobile robot (100) to one or more networks. Additionally, the communication module (110) may include one or more modules for the mobile robot (100) to communicate with other mobile robots.

[0053] The communication module (110) can communicate with an artificial intelligence server, etc., using wireless internet communication technologies such as WLAN (Wireless LAN), Wi-Fi (Wireless-Fidelity), Wi-Fi (Wireless Fidelity) Direct, DLNA (Digita 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) can 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).

[0054] The input unit (120) may include a camera (121) or video input unit for inputting a video signal, an audio receiver (122) for inputting an audio signal, for example, a microphone, and a user input unit (not shown, for example, a touch key, a mechanical key, etc.) for receiving information from a user. Signal data, voice data, and image data collected by the input unit (120) may be analyzed and processed into control commands.

[0055] The camera (121) may be provided on one side of the main body of the mobile robot (100) or at multiple locations. In the latter case, one may be provided on the front of the main body and installed to face forward, and the other may be provided on the side or rear and installed to face sideways / rearward. Accordingly, a 360-degree field of view can be formed.

[0056] When multiple cameras (121) are provided, the first camera may include, for example, a 3D stereo camera. The 3D stereo camera can perform functions such as obstacle detection, user face recognition, and stereoscopic image acquisition. The mobile robot (100) can use the first camera to detect and avoid obstacles in its direction of movement and to recognize a user and perform various control operations. Additionally, the second camera may include, for example, a Simultaneous Localization and Mapping (SLAM) camera. The SLAM camera performs the function of tracking the current position of the camera through feature point matching and creating a 3D map based on this. The mobile robot (100) can determine its current position using the second camera. Furthermore, the camera (121) can recognize objects within the field of view and perform functions for taking photos and videos. In this regard, the camera (121) may include at least one of a camera sensor (e.g., CCD, CMOS, etc.), a photo sensor (or image sensor), and a laser sensor. A camera (121) and a laser sensor are combined to detect touch of a detection target on a three-dimensional stereoscopic image. The photo sensor can be stacked on a display element, and such a photo sensor is configured to scan the movement of a detection target that is close to the touch screen. More specifically, the photo sensor has Photo Diodes and TRs (Transistors) mounted in rows and columns, and scans the contents placed on the photo sensor using an electrical signal that changes according to the amount of light applied to the Photo Diode. That is, the photo sensor performs the calculation of the coordinates of the detection target according to the amount of light change, and through this, the position information of the detection target can be obtained.

[0057] The driving unit (170) performs movement and rotation of the main body of the mobile robot (100). To this end, the driving unit (170) may be formed by including a plurality of wheels and a driving motor. The driving of the driving unit (170) is controlled according to a control command received by the processor (180), and notifications may be provided through LEDs, etc., before and after driving.

[0058] The sensing unit (140) 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 sensing unit (140) may include at least one of a proximity sensor (141), 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 sensor, an ultrasonic sensor, an optical sensor (e.g., see camera (121)), 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 sensor, etc.).

[0059] Meanwhile, the mobile robot disclosed in this specification can utilize information sensed from at least two of these sensors in combination.

[0060] In addition, the sensing unit (140) may include a driving-related sensor that detects obstacles, floor conditions, etc.

[0061] Examples of proximity sensors (141) include a transmissive photoelectric sensor, a direct reflection photoelectric sensor, a mirror reflection photoelectric sensor, a high-frequency oscillating proximity sensor, a capacitive proximity sensor, a magnetic proximity sensor, and an infrared proximity sensor.

[0062] Additionally, the proximity sensor (141) may include at least one of a navigation camera, an ultrasonic sensor, a lidar, and a ToF sensor, and can recognize the approach and location of a detection target (e.g., a user).

[0063] The output unit (150) is intended to generate outputs related to sight, hearing, or touch, and may include at least one of a touch screen, an audio output unit, or an optical output unit. The touch screen can be implemented by forming a layered structure with a touch sensor or by being formed integrally. Such a touch screen functions as a user input unit that provides an input interface between the mobile robot (100) and the user, and at the same time can provide an output interface.

[0064] The sound output unit performs the function of informing the user of information to be provided via voice, and may be in the form of a speaker, for example. Specifically, a response or search result corresponding to the user's voice received through a microphone and a voice recognition unit (not shown) equipped in the mobile robot (100) is output as voice through the sound output unit.

[0065] In addition, the above-mentioned sound output unit can output voice information related to a screen displayed on the touchscreen (e.g., menu screen, advertisement screen, etc.). To this end, the microphone can perform the function of receiving the user's voice, etc. Furthermore, the microphone processes external sound signals into electrical voice data, and various noise removal algorithms can be implemented to remove noise generated during the process of receiving external sound signals.

[0066] The light output unit outputs a signal to indicate the occurrence of an event of the mobile robot (100) using light from a light source. For example, when a movement command is transmitted to the driving unit (170) of the mobile robot (100), a signal to indicate movement is output through the light output unit.

[0067] The processor (180) controls the overall operation of the mobile robot (100) and performs computation and data processing. Additionally, the processor (180) may be used with the same meaning as a processor or understood as a module including such a processor. The processor may include one or more of a central processing unit and an application / communication processor.

[0068] Additionally, the processor (180) can control the driving unit (170) for the movement and rotation of the mobile robot (100). Furthermore, the processor (180) may include a learning data unit (not shown) to perform operations related to artificial intelligence technology of the mobile robot. The learning data unit may 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 technologies. The learning data unit may include one or more memory units configured to store information received, detected, sensed, generated, or predefined through the mobile robot, or information output in a different way through the mobile robot, or to store data received, detected, sensed, generated, predefined, or output by other configurations, devices, and terminals.

[0069] In one embodiment, the learning data unit may be integrated into a mobile robot or may include memory. In one embodiment, the learning data unit may be implemented through memory (160). However, not limited thereto, the learning data unit may be implemented in external memory associated with the mobile robot (100) or through memory included in a server capable of communicating with the mobile robot (100). In another embodiment, the learning data unit may be implemented through memory maintained in a cloud computing environment or other remote memory accessible by the mobile robot via a communication method such as a network.

[0070] The learning data unit is configured to store said data in one or more databases for the purpose of identifying, indexing, classifying, manipulating, storing, retrieving, and outputting data for use in generally supervised or unsupervised learning, data mining, predictive analytics, or other machine learning techniques. The information stored in the learning data unit may be utilized by a plurality of control units (processors) included in a processor (180) or a mobile robot that uses at least one of different types of data analysis, machine learning algorithms, and machine learning techniques.

[0071] The processor (180) can determine or predict executable actions of a mobile robot based on information determined or generated using data analysis, machine learning algorithms, and machine learning techniques. To this end, the processor (180) can request, search, receive, or utilize data from the learning data unit. The processor (180) can perform various functions such as implementing a knowledge-based system, an inference system, and a knowledge acquisition system, and can perform various functions including a system for uncertain inference (e.g., a fuzzy logic system), an adaptive system, a machine learning system, an artificial neural network, etc.

[0072] Additionally, the processor (180) may include submodules that enable speech and natural language processing, such as an I / O processing module, an environment condition module, a speech-to-text (STT) processing module, a natural language processing module, a task flow processing module, and a service processing module. Each of the submodules may have access rights to one or more systems or data and models, or a subset or superset thereof, in the mobile robot. Here, the objects to which each of the submodules has access rights may include scheduling, vocabulary index, user data, task flow model, service model, and automatic speech recognition (ASR) system.

[0073] In some embodiments, the processor (180) may be configured to detect and sense what the user requests based on context conditions expressed as user input or natural language input or the user's intent based on data from the learning data unit. When the operation of the mobile robot is determined based on data analysis, machine learning algorithms, and machine learning techniques performed by the learning data unit, the processor (180) may control the components of the mobile robot to execute the determined operation. The processor (180) may execute the determined operation by controlling the mobile robot based on control commands.

[0074] The memory (160) stores data that supports various functions of the mobile robot (100). The memory (160) can store a number of applications (application programs or applications) running on the mobile robot (100), data for the operation of the mobile robot (100), and commands. Additionally, the memory (160) can store variable call words for performing voice conversation functions with a user.

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

[0076] In addition to operations related to the above application, the processor (180) typically controls the overall operation of the mobile robot (100). The processor (180) can provide or process appropriate information or functions to the user by processing signals, data, information, etc. that are input or output through the components described above, running an application stored in memory (160), or controlling the driving unit (170).

[0077] The power supply unit (190), under the control of the processor (180), receives external power and internal power and supplies power to each component included in the mobile robot (100). This power supply unit (190) may include a battery, and the battery may be an internal battery or a replaceable battery.

[0078] At least some of the above components may operate in cooperation with each other to implement the operation, control, or control method of the mobile robot according to various embodiments described below. Additionally, the operation, control, or control method of the mobile robot may be implemented on the mobile robot by running at least one application program stored in the memory (160).

[0079] In addition, 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.

[0080] Hereinafter, with reference to the attached drawings, various embodiments related to a method for a mobile robot (100) according to an embodiment of the present invention to transmit the number of transmissions to an interconnected server (200) to indicate its current location during driving, to the minimum or only as much as necessary, will be described.

[0081] The mobile robot according to the present invention does not transmit its current location information to the server as is, but transmits it as processed data that allows the server to reconstruct the time series. Furthermore, the mobile robot reduces the communication burden on the server by transmitting such processed data to the server with a minimum number of transmissions. In this case, the communication burden on the server can be significantly reduced, particularly when the server needs to acquire current location information from multiple mobile robots.

[0082] FIG. 2 is a representative flowchart for explaining the operation method of a mobile robot related to the present invention.

[0083] Referring to FIG. 2, the above operation method is disclosed in the step (10) of connecting the mobile robot to a server that manages it so that the robot can communicate with it.

[0084] To this end, the mobile robot can be connected to communicate with a server via a network. Examples of the above-mentioned network may include a Local Area Network (LAN), a Wide Area Network (WAN), the World Wide Web (WWW), wired and wireless data communication networks, telephone networks, wired and wireless television communication networks, etc. Alternatively, other examples of the above-mentioned network may include networks using wireless data communication networks such as 3G, 4G, 5G, 3GPP (3rd Generation Partnership Project), 5GPP (5th Generation Partnership Project), LTE (Long Term Evolution), WIMAX (World Interoperability for Microwave Access), Wi-Fi, the Internet, LAN (Local Area Network), Wireless LAN (Wireless Local Area Network), WAN (Wide Area Network), PAN (Personal Area Network), RF (Radio Frequency), Bluetooth networks, NFC (Near-Field Communication) networks, satellite broadcasting networks, analog broadcasting networks, and DMB (Digital Multimedia Broadcasting). However, it is not limited to these examples.

[0085] When the mobile robot and the server are connected to enable communication in this manner, the server can transmit task-related commands to the connected mobile robot. Additionally, the mobile robot can transmit its status, location, movements, and task execution results to the server. Furthermore, the server can transmit task-related map data to the mobile robot assigned the task.

[0086] In the present invention, the types of tasks assigned to a mobile robot are not particularly limited. For example, the assigned tasks may include guidance, delivery, transport, cleaning, monitoring, serving, etc., depending on the purpose of the mobile robot, and include movement commands to perform the tasks.

[0087] The mobile robot continues to generate first data including the mobile robot's starting coordinates, target coordinates, and movement speed in response to a movement command according to the assigned task (20).

[0088] To this end, the mobile robot extracts the starting coordinates and the target coordinates from the movement command, and processes them to generate the first data so as to calculate the trajectory coordinates between the starting coordinates and the target coordinates based on the movement speed.

[0089] The first data is processed to include a movement command for performing an assigned task, and the starting coordinates, target coordinates, and movement speed included in the movement command. In this case, the starting coordinates are the starting position where the assigned task begins, and the target coordinates are the ending position where the assigned task ends. Additionally, the movement speed enables the prediction of time-series changes from the time the mobile robot starts at the starting coordinates until it reaches the target coordinates.

[0090] Based on the first data, the following information can be predicted.

[0091] Specifically, based on the first data, the time it takes for the mobile robot to reach the target coordinates can be predicted. Also, based on the first data, the position of the mobile robot can be predicted when t seconds have passed since the mobile robot started from the starting coordinates. Also, based on the first data, it can be determined whether there is a change in the driving motion of the mobile robot that deviates from time series reconstruction.

[0092] Meanwhile, in another embodiment, the mobile robot may generate the first data by adding additional information other than the starting coordinates, target coordinates, and movement speed. For example, the first data may further include time information where the mobile robot is located at the starting coordinates. Also, for example, the first data may further include information on the remaining battery level of the mobile robot.

[0093] Next, the mobile robot transmits the generated first data to the server so that the server can restore the time series (30).

[0094] In other words, the mobile robot does not need to transmit its position data to the server every time; it only needs to transmit the first data to the server once from the starting coordinates. Then, the server reconstructs the mobile robot's position data in a time series by calculating the position coordinates of the mobile robot that change in a time series over time.

[0095] Therefore, once the mobile robot transmits the first data to the server, it is no longer necessary to notify the server of position changes due to movement every time, thereby reducing the communication burden on the server.

[0096] Meanwhile, the server that received the first data automatically reconstructs the position of the mobile robot in a time series based on the first data.

[0097] Specifically, the server can calculate the current position of the mobile robot at each point in time based on the movement speed included in the first data when the mobile robot travels from the starting coordinates included in the first data to the target coordinates, and output it at each point in time.

[0098] In this way, the server restoring the first data in a time series means converting the first data into multiple trajectory data.

[0099] For example, when a mobile robot generates first data including the starting coordinates (0,0), target coordinates (12,0), and the mobile robot's movement speed information included in the movement command and transmits it to a server, the server generates predicted position information (0,0) to (12,0) at each time point and outputs the mobile robot's predicted position information at the output time (Out Timing).

[0100] For example, the server will create and output the position coordinates of the mobile robot, (0, 0), (1, 0), (2, 0), (3, 0), (4, 0), (5, 0), (6, 0),.....(12, 0).

[0101] Continuing, when the mobile robot moves and reaches the target coordinates corresponding to the task, it transmits the second data containing the reached target coordinates, i.e., the current coordinates, to the server (40).

[0102] At this time, the second data may include a stop command for the mobile robot.

[0103] Additionally, the server that receives the second data can compare whether the position coordinates output according to the time series restoration of the first data match the current coordinates included in the second data.

[0104] If the mobile robot drove in the same manner as the path plan at the time the first data was transmitted, the position data resulting from the time-series reconstruction of the first data to be output at the time the second data is received will match the current coordinates of the second data.

[0105] However, if the current coordinates of the second data and the position data resulting from the time-series reconstruction of the first data are inconsistent, the server recognizes the current coordinates detected by the mobile robot's sensors—that is, the current coordinates included in the second data—as the actual position information of the mobile robot. Accordingly, the server can output the current coordinates included in the second data instead of the time-series reconstruction value of the first data.

[0106] In this regard, the mobile robot can continue to detect position changes due to movement and the current position through sensors even after transmitting the first data to the server. At this time, if the position change due to the actual movement of the mobile robot deviates beyond a threshold from the predicted data based on the time-series reconstruction of the first data, the mobile robot can transmit additional data to the server to update the first data.

[0107] In such cases, the server can update the first data based on the received additional data and update the time series restoration based on it. Specific situations in which the predicted data resulting from the time series restoration of the first data deviates beyond a threshold, and corresponding embodiments, will be examined in more detail below.

[0108] FIG. 3 is an example diagram illustrating the transmission of time-series reconstructible location data from a mobile robot (100) to a linked server (200).

[0109] And, FIG. 4 is an example drawing for explaining the operation of a mobile robot (100) to transmit position information in the minimum number of times.

[0110] Referring to FIG. 3, the mobile robot (100) is connected to the server (200) so as to be able to communicate with it through a communication module. Now, the server (200) can determine the location of the mobile robot based on the data received from the mobile robot (100).

[0111] When a task is assigned to a mobile robot (100), it can extract the starting coordinates and target coordinates corresponding to the movement commands included in the assigned task, and then combine the movement speeds to create a processed transformation block.

[0112] With the existing output, the mobile robot (100) can acquire position coordinates matching each point in time through a sensor as time progresses. In the present invention, the acquired position coordinates at each point in time are not continuously sent to the server, but a conversion block created including the starting coordinates, target coordinates, and movement speed is transmitted to the server (200).

[0113] For example, in FIG. 3, the mobile robot (100) transmits a processed conversion block, i.e., the first data (310), to the server (200) in response to a movement command according to the task, including a start signal (or, movement signal), e.g., S (start), start coordinates (0, 0), target coordinates (12, 0), and a movement speed, e.g., 1 (m / s).

[0114] At this time, the point in time when the first data (310) is transmitted to the server (200) is when the position of the mobile robot (100) is at the starting coordinates (0, 0), and the server (200) performs time series restoration for the first data from that point in time.

[0115] While the mobile robot (100) travels from the starting coordinates toward the target coordinates (12, 0), the server (200) calculates and outputs the position change of the mobile robot (100) based on the received first data (310).

[0116] Accordingly, the server (200) can determine the movement and position change of the mobile robot (100) even if it does not receive position information from the mobile robot (200) after the first data (310).

[0117] According to the time series restoration result (320) of the server (200), the position change of the mobile robot (100) can be calculated and output every second (s). The time series restoration result (320) includes the trajectory coordinates of the movement path from the starting coordinates (0, 0) to the target coordinates (12, 0).

[0118] For example, in FIG. 3, at the time point t=1 (t is seconds (s)), the position coordinates of the mobile robot (100) are restored to (1, 0) and output. Also, for example, at the time point t=4, the position coordinates of the mobile robot (100) are restored to (4, 0) and output. This time series restoration result (320) is repeated until the mobile robot (100) reaches the target coordinates (12, 0) included in the first data (310).

[0119] When the mobile robot (100) travels toward the target coordinates and reaches the actual target coordinates, the mobile robot (100) transmits second data including the current coordinates to the server (200). At this time, in response to a stop command upon reaching the target position, the second data (330) including a termination signal (or stop signal), for example E (arrival), and the current coordinates (12, 0) is transmitted to the server (200).

[0120] Specifically, when a stop command is generated upon reaching the target coordinates of the mobile robot (100), the processor (180) of the mobile robot (100) transmits the second data along with the stop command to the server (200), thereby causing the server (200) to compare the current coordinates of the received second data with the target coordinates of the first data (or the position coordinates based on the time series restoration of the first data).

[0121] As a result of the comparison, if the two coordinates match, it is acceptable to output either one.

[0122] As a result of comparison, if the two coordinates do not match, the position coordinates of the second data transmitted after the mobile robot (100) reaches the target coordinates are recognized as the position information of the mobile robot (100) and output.

[0123] In another embodiment, when the mobile robot (100) makes an emergency stop while driving toward target coordinates (meaning a situation where it does not start immediately), the second data, which includes processed data such as the position coordinates at the time of the emergency stop and time information elapsed from the starting coordinates along with a stop command, can be transmitted to the server. In this case, when the mobile robot (100) starts driving after overcoming the problematic situation, the first data updated at that time can be transmitted to the server (200) to perform the above processes again.

[0124] In this way, unless there are special circumstances, it is sufficient for the mobile robot (100) to transmit location information to the server (200) only at the time of starting movement for task execution and at the time of ending movement for task completion.

[0125] Referring to FIG. 4, the first data transmission is the point in time when the mobile robot (100) generates an initial conversion block, i.e., the first data, in response to a movement command.

[0126] The first data is position data modified to include S (start), starting coordinates (0, 0), target coordinates (12, 0), and movement speed (t (m / s)). The first data is transmitted from the mobile robot (100) to the server (200) from the starting position (P1), e.g. (0, 0).

[0127] After this, the second data transmission takes place at the time when the mobile robot (100) generates the conversion block, i.e., the second data, in response to the stop command.

[0128] The second data is position data modified to include E (arrival) and current coordinates (12, 0). The second data is transmitted to the server (200) when the mobile robot (100) reaches the arrival position (P2), e.g. (12, 0).

[0129] Meanwhile, the mobile robot (100) can determine whether the time-series position change of the mobile robot (100) predicted at the time of generating the initial first data (310) and the actual position of the mobile robot (100) at a specific point in time differ by more than a threshold.

[0130] For example, if the server (200) continues to restore and output the time series using the initial first data (310) even when the mobile robot (100) stops or moves out of the path plan, a problem arises where the precision of the data decreases.

[0131] Accordingly, in the present invention, if it is determined that the position of the mobile robot (100) at a specific actual point in time above has a difference exceeding a threshold, the processed third data can be additionally transmitted to the server (200) so that the time series restoration of the initial first data (310) can be updated and output.

[0132] At this time, the third data may be generated to include information indicating that it is update request data, the current coordinates of the mobile robot, and time information elapsed since departure from the starting coordinates.

[0133] When the server (200) receives third data from the mobile robot (100), it updates the time series restoration of the initial first data based on the received third data. Accordingly, the number of times data is transmitted from the mobile robot (100) to the server (200) is drastically reduced, while the precision / accuracy of the data can be maintained.

[0134] FIG. 5 is an exemplary flowchart for explaining another method of operation of a mobile robot related to the present invention.

[0135] FIG. 5 presents a method for maintaining the precision of position data when a situation occurs in which a position change resulting from the restoration of the time series of the initial first data and a position change exceeding a threshold are detected while the mobile robot (100) is driving toward the target coordinates.

[0136] The method of FIG. 5 is initiated by the step (510) in which the robot transmits the first data modified as described above to the server while the mobile robot (100) is connected to communicate with the server (200).

[0137] After the mobile robot (100) transmits the first data to the server (200), the mobile robot (100) drives toward the target coordinates, and the server (200) restores the movement and position change of the mobile robot (100) in a time series based on the first data.

[0138] At this time, the mobile robot (100) can detect the occurrence of an event related to a change that deviates from the time series restoration of the first data in the mobile robot (100) after the transmission of the first data (520).

[0139] Specifically, when the mobile robot (100) transmits the first data to the server (200) and then drives toward the target coordinates, the mobile robot (100) may be determined to have performed an action that deviates from the time series restoration of the first data, such as a temporary stop of the mobile robot while driving, an evasive drive of the mobile robot, or driving outside the planned path, that the aforementioned event may have occurred.

[0140] To this end, the mobile robot (100) stores the initial first data in memory (160) and can compare the time-series position data of the stored first data with the actual position sensed at regular time intervals through a sensor.

[0141] Alternatively, the mobile robot (100) may pre-define an action of the mobile robot (100) corresponding to the above event, and determine that the above event has occurred when a pre-defined action occurs. At this time, the pre-defined action may include, for example, stopping driving (including emergency stopping), avoiding driving due to obstacle detection, decelerating driving, changing the driving method (or driving mode), etc., and may be stored in advance in memory (160), etc.

[0142] Here, a change that deviates from the time series reconstruction of the first data refers to a case where the degree of discrepancy (or distance between) between the current position detected by the mobile robot at a specific point in time and the position data resulting from the time series reconstruction of the initial first data exceeds a threshold.

[0143] Meanwhile, a change that deviates from the time series reconstruction of the first data may refer to a case where there is a discrepancy between the predicted position data and the actual (sensed) position data of the mobile robot. Alternatively, a change that deviates from the time series reconstruction of the first data may refer to a case where the degree of discrepancy between the predicted position data and the actual (sensed) position data of the mobile robot differs to an extent that exceeds a threshold.

[0144] For example, based on the time series reconstruction of the first data, the position of the mobile robot (100) at time t=4 is predicted to be (4, 0), but the actual mobile robot (100) is detected to be located at (3, 0) at time t=4. Alternatively, the position of the mobile robot (100) at time t=4 is predicted to be (4, 0), but the actual mobile robot (100) is detected to be located at (5, 0) at time t=4. That is, it includes not only cases where the change in movement is slower than predicted, but also cases where the change in movement is faster than predicted.

[0145] Also, the third data related to the detected event may vary depending on at least one of the type of event and the time of occurrence.

[0146] Additionally, the third data may be generated including the position coordinates of the mobile robot (100) at the time when the mobile robot (100) detects the occurrence of an event, and the time information of time elapsed since the mobile robot (100) started from the initial starting coordinates of the first data.

[0147] In response to the occurrence of an event related to a change that deviates from the time series restoration of such first data, the mobile robot (100) can generate third data related to the detected event and transmit it to the server (200) (530).

[0148] In other words, the mobile robot (100) transmits the first data at the beginning and the second data after the operation is finished, and additionally transmits the third data in between, thereby reducing the burden of communication while ensuring that the precision / accuracy of the data is not reduced.

[0149] When the server (200) receives third data from the mobile robot (100) while the server (200) is restoring (and outputting) the first data in a time series, the initial first data can be updated based on the third data. Then, the server (200) can perform an update of the time series restoration based on the updated first data (540).

[0150] For example, in the above example, if update data containing (3, 0) at time t=4 is transmitted as the third data, the server modifies the position of the mobile robot at time t=4 to (3, 0) and updates and outputs subsequent position changes based on this. Accordingly, the time series reconstruction is updated and output with the position coordinates as (4, 0) at time t=5 and as (5, 0) at time t=6. At this time, since the time series will be reconstructed as having arrived at the target coordinates (12, 0) at time t=13, the precision and accuracy of the position information recognized / output by the server are maintained.

[0151] Also, for example, in the above example, if update data containing (5, 0) at time t=4 is transmitted as the third data, the server modifies the position of the mobile robot at time t=4 to (5, 0) and updates and outputs subsequent position changes based on this. Accordingly, the time series reconstruction is updated and outputs the position coordinates as (6, 0) at time t=5 and the position coordinates as (7, 0) at time t=6. At this time, since the time series will be reconstructed as having arrived at the target coordinates (12, 0) at time t=11, the precision and accuracy of the position information recognized / outputted by the server are continuously maintained.

[0152] Below, we will specifically examine various embodiments related to the occurrence of events related to changes that deviate from time series restoration of the first data described with reference to FIG. 5, and embodiments for maintaining / improving the precision / accuracy of the data.

[0153] FIGS. 6, FIGS. 7, and FIGS. 8 are example drawings for explaining data transmission and updating for updating time-series restored position data when a mobile robot is stopped in relation to the present invention.

[0154] In the system, the mobile robot (100) and the server (200) are connected to communicate with each other, the mobile robot (100) transmits location information to the server (200), and the server (200) manages the mobile robot (100) based on this information.

[0155] Referring to FIG. 6, when the mobile robot (100) initially transmits the first data (610) to the server (200), the server (200) reconstructs the time series (620) based on S (start), starting coordinates (0, 0), target coordinates (12, 0), and movement speed (1 (m / s)) included in the first data (610).

[0156] For example, every second(s) elapses, (0, 0), (1, 0), (2, 0), (3, 0), (4, 0), (5, 0), (6, 0), ....., (12, 0) are restored and output as predicted position data of the mobile robot.

[0157] In this way, the time series restoration (620) by the server (200) matches the existing position information output sensed by the mobile robot (100). Also, the time series restoration (620) by the server (200) in this way matches the input of position information previously transmitted from the mobile robot (100) to the server (200) at each point in time.

[0158] Meanwhile, when the mobile robot (100) stops briefly while driving toward a target coordinate, e.g. (12, 0), in order to maintain precision, the mobile robot (100) may generate a third data (640) to update the time series restoration (620) of the initial first data (610).

[0159] The third data (640) can be generated and transmitted at the time when the mobile robot (100) resumes driving after stopping.

[0160] The mobile robot (100) operates so as not to report to the server (200) immediately after stopping movement in order to reduce the burden of communication. However, if a considerable amount of time has elapsed after the mobile robot (100) stops (e.g., 8 to 10 seconds), it may operate to transmit location data including a stop command to the server (200).

[0161] Additionally, if the mobile robot (100) temporarily stops while driving but starts immediately after stopping, it is considered not to be a change that deviates from the time series restoration by the server (200), and thus the third data for updating may not be generated.

[0162] The third data (640) may include U (update) representing update request data, current coordinates (4, 0), and time elapsed since driving from the starting coordinates (5s).

[0163] When the server (200) receives the third data (640) from the mobile robot (100), it updates the time series restoration (620) for the initial first data based on this.

[0164] For example, in FIG. 6, the position coordinates of the mobile robot are updated to (4, 0) at time t=5 (or 5s) when the third data (640) is received. Then, from then on, the position coordinates corresponding to the updated time series reconstruction are output at every time point (s). According to the update of the time series reconstruction, the position coordinates of the mobile robot (100) at time t=5 are modified to (4, 0), and from then on, the time series reconstruction is continued up to the target coordinates (12, 0) by applying the movement speed included in the first data (610).

[0165] Afterwards, when the mobile robot (100) reaches the target coordinates (12, 0), it transmits second data (630), including an arrival signal and current location coordinates, to the server (200) in response to a stop command. The second data (630) includes an arrival signal (E) corresponding to the stop command and current location coordinates (12, 0) at the arrival point.

[0166] The server (200) recognizes that the mobile robot (12, 0) reaches the target coordinates at the time t=13 according to the update of the time series restoration of the initial first data (610). Then, as the result of the time series restoration of the updated first data (610) matches the second data (630) transmitted from the mobile robot (100), the server outputs either of the two position data as the current position coordinates of the mobile robot.

[0167] In this way, the present invention can satisfy both position accuracy and reduction of communication burden by minimizing the number of transmissions when the mobile robot (100) informs the server (200) of its position, even when accuracy is guaranteed.

[0168] FIG. 7 illustrates the operation process of a mobile robot (100) that generates and transmits first to third data in a conversion block (700). FIG. 8 also illustrates the operation process of a server (200) that receives first to third data from the mobile robot and restores the time series in a conversion block (800).

[0169] Referring to FIG. 7, the mobile robot (100) receives / extracts initial data to create a conversion block (700) in response to a movement command corresponding to an assigned task.

[0170] For example, the data input unit (710) can receive the movement command, speed information, stop command, and position information (0, 0) to (12, 0) according to the path plan of the mobile robot (100) as initial data for creating a conversion block.

[0171] The initial data generation unit (720) extracts a start / start signal (S(start)), start coordinates (e.g., (0, 0)), and target coordinates (e.g., (12, 0)) from a movement command based on the initial data received from the data input unit (710), and combines this with the speed information of the mobile robot to output to the data output unit (750).

[0172] The update data generation unit (730) operates when the position predicted from the initial movement command for the mobile robot (100) and the current position of the (sensed) mobile robot change by more than a threshold. Based on the current position of the mobile robot (100) according to the movement command and the time elapsed since departure, the update data generation unit (730) generates data including an update request signal (U(update)), position coordinates (e.g., (5, 0)), and elapsed time (e.g., 6s), and transmits it to the data output unit (750).

[0173] The termination data generation unit (740) operates when the current position of the mobile robot reaches the target coordinates (e.g., (12, 0)) included in the initial movement command, or when the mobile robot (100) stops due to an emergency stop. In this case, the termination data generation unit (740) generates data including an arrival signal (E(arrival)) and current position coordinates (e.g., (12, 0)) based on the movement command, position information, and stop information, and transmits it to the data output unit (750).

[0174] The data output unit (750) outputs the data output from each generation unit (720, 730, 740) as a single data and transmits it to the server (200), etc.

[0175] Meanwhile, referring to FIG. 8, the server (200) receives from the mobile robot (100) initial first data (e.g., (S(start), (0, 0), (12, 0), 1(m / s))), third data (e.g., (U(update), (5, 0), 6s)) according to an update request, and second data (e.g., (E(arrival), (12, 0)) according to a stop command through the data input unit (810).

[0176] The data input unit (810) transmits the above data received from the mobile robot (100), for example, the first to third data, to each generation unit (820, 830, 840).

[0177] The prediction data generation unit (820) generates the predicted position information (0,0) to (12,0) of the mobile robot over time based on the input starting point (e.g., (0,0)), ending point (e.g., (12,0)), and speed information of the mobile robot (100). Then, the predicted position information of the mobile robot is output to the data output unit (850) in accordance with the output timing.

[0178] When the prediction data generation unit (820) receives an update signal after generating the prediction position information, such as the updated position information of a mobile robot (e.g., (5,0)) and elapsed time information (e.g., 6s), it updates the predicted position information based on this and outputs it to the data output unit (850).

[0179] When the update signal generation unit (830) receives the third data received from the mobile robot through the data input unit (810), it creates position information (e.g., (5,0)) and elapsed time information (e.g., 6s) as an update signal and transmits it to the prediction data generation unit (820).

[0180] When the termination signal generation unit (840) receives the second data received from the mobile robot through the data input unit (810), it transmits a termination signal along with position information (e.g., (12, 0)) to the data output unit (850).

[0181] The data output unit (850) outputs data received from the prediction data generation unit (820) at each output timing. Additionally, when the data output unit (850) receives a termination signal from the termination signal generation unit (840), it compares the data with the last prediction location information sent by the prediction data generation unit (820), and if there is a difference as a result of the comparison, it outputs the location information of the termination signal.

[0182] Figures 9a and 9b below are example drawings for explaining data transmission and updating for updating time-series restored position data when a mobile robot (100) travels on a curve.

[0183] The embodiment disclosed in FIGS. 9a and 9b applies when curved driving of the mobile robot (100) is supported. For example, when the mobile robot (100) operates to perform curved driving instead of driving in a straight line from the starting coordinates to the target coordinates in the shortest distance, third data for updating the predicted position data over time can be transmitted to the server (200) to maintain data precision.

[0184] Specifically, in an embodiment, the processor (180) of the mobile robot (100) can determine that an event corresponding to a change that deviates from the time series restoration of the server (200) has occurred when the mobile robot (100) driving toward the target coordinates is capable of curved driving.

[0185] In this case, the mobile robot (100) can transmit third data including the center point coordinates of the curved drive to the server (200) so that the server (200) updates the time series analysis of the initial first data, and cause the server (200) to output a change in position coordinates corresponding to the curved drive.

[0186] In another embodiment, if it is determined that the mobile robot (100) performs curved driving from the beginning, the initial first data can be modified and input data can be transmitted to the server (200) so that position coordinates can be predicted according to the curved driving.

[0187] Referring to FIG. 9a, let the starting point (910) coordinates included in the movement command for the mobile robot (100) be (X1, Y1) and the destination point (920) coordinates be (X2, Y2). At this time, the center point (940) coordinates (X3, Y3) for the two points (910, 920) are calculated and transmitted to the server (200).

[0188] For example, the initial data generation unit (720) of the conversion block (700) illustrated in FIG. 7 can generate first data by adding "center point coordinates" to the movement command, start (start) signal, start coordinates, and target coordinates, and transmit this to the server (200).

[0189] Afterwards, the server (200) receives the first data transformed by the prediction data generation unit (820) of the transformation block (800) shown in FIG. 8, and can sequentially output predicted position information including curve driving based on this.

[0190] To this end, the mobile robot (100) can additionally transmit third data to the server (200) or modify and transmit the initial first data.

[0191] For example, referring to FIG. 9b, in addition to the first data (910) transmitted initially and the second data (920) transmitted after reaching the destination, and the third data (930) for the predicted position change per clock due to stopping while driving, etc., a modified data (3(C, curve start)) (940) for the predicted position change due to the curve driving of the mobile robot (100) can be additionally transmitted to the server (200).

[0192] When deformation data is generated and transmitted at an intermediate point during the movement of the mobile robot (100), the starting coordinates X1 and Y1 of FIG. 9b become the point (X1', Y1') where the curved movement begins, and the center point Y3 coordinate is generated with (X1', Y1') and (X2, Y2) as the tangent points of the circle. Also, the movement speed in the deformation data may refer to the movement speed while performing the curved movement.

[0193] Next, FIGS. 10a and FIGS. 10b are example drawings for explaining the operation of a mobile robot (100) to transmit a power signal a minimum number of times.

[0194] Conventional mobile robots generated beat signals corresponding to the power-on status at regular intervals (e.g., every second) while powered on and continuously transmitted them to their management server. Because this signal is continuously generated and transmitted, similar to a human heartbeat, it is also referred to as a heartbeat signal. Although this is performed separately from the transmission of the robot's location information, it increases the communication burden on the server due to the continuous transmission of data.

[0195] Accordingly, the present invention operates to reduce the burden of communication by notifying the server (200) of the power-on state of the mobile robot (100) only once, and then notifying the server (200) again when the power is switched to off.

[0196] In an embodiment, the processor (180) of the mobile robot (100) receives a bit signal generated at regular time intervals while the power is on.

[0197] In response to the mobile robot (100) switching from power off to power on (or, if it is detected that the power is on after the initial connection with the server (200)), the processor (180) reports that an event has occurred that deviates from the predicted position change according to the aforementioned time series restoration, and transmits third data including a "bit start signal" to the server (200).

[0198] Although it is not actually an event that goes beyond the location change, it can be included within the scope of the same system process for logic simplification.

[0199] Referring to FIG. 10a, data (1010) according to the bit start signal is generated at the time when the bit signal is turned on / at the time when the on is detected (HS (bit start notification), Heartbeat start) and is transmitted to the server (200) only once.

[0200] Subsequently, the processor (180) of the mobile robot (100) responds to the mobile robot (100) switching from a power-on state to a power-off state, reports that an event has occurred that deviates from the predicted position change according to the aforementioned time series restoration, and transmits updated third data including a "bit termination signal" to the server (200).

[0201] Referring to FIG. 10b, data (1020) according to the bit end signal is generated at the time when the bit signal is turned off / at the time when off is detected (HE (bit end notification), Heartbeat end) and is transmitted to the server (200) only once.

[0202] In this way, in the present invention, it is sufficient to transmit the bit start signal and the bit end signal to the server (200) only once each. In between, the system may be implemented so that the server (200) estimates the bit signal according to the power-on state of the mobile robot (100) or outputs the bit signal at every timing (e.g., every second (s)).

[0203] In the latter case, when a bit termination signal is received from the mobile robot (100), the server (200) stops outputting the bit signal that was output at every timing.

[0204] For example, referring to FIG. 10b, a heart beat signal (10) generated by a mobile robot (100) is initially transmitted to a server (200) only once as a third data (1010) corresponding to a 'heart start signal'. Then, from the moment the third data (1010) is received, the server (200) outputs a beat signal at every timing, just like a conventional input. Subsequently, when an updated third data (1020) corresponding to a 'heart end signal' is received by the server (200) from the mobile robot (100), the server (200) immediately stops outputting the beat signal and can recognize that the power of the mobile robot (100) has been switched to an off state.

[0205] Next, FIGS. 11 and 12 are example drawings for explaining how a mobile robot (100) transmits current location information to a linked server (200) when it encounters an obstacle while driving toward a target coordinate and drives to avoid the obstacle.

[0206] When the mobile robot (100) encounters an obstacle while driving toward a target coordinate, the sensor detects it and performs frequent driving changes to avoid the obstacle.

[0207] For example, referring to FIG. 11, while the mobile robot (100) is driving toward a target coordinate, it can stop temporarily by detecting an obstacle through a sensor (1101), perform avoidance driving by changing the existing path to avoid the obstacle (1102), or drive at a reduced speed (1103).

[0208] When the mobile robot (100) encounters an obstacle and stops (1101), a delay occurs after the mobile robot (100) starts from the starting coordinates, so the output timing of the position coordinates is out of sync when the server (200) restores the time series based on the initial first data.

[0209] Also, when the mobile robot (100) encounters an obstacle and changes its existing path (1102), the server (200) cannot predict at all how much it deviates from the predicted position coordinates restored in time series based on the initial first data.

[0210] In addition, when the mobile robot (100) encounters an obstacle and slows down (1103), the difference between the current position of the mobile robot (100) and the position coordinates output in a time series from the server (200) gradually increases as time passes.

[0211] Therefore, in either case, the precision of the time series prediction location coordinates is reduced or not maintained.

[0212] The mobile robot (100) according to the present invention detects surrounding obstacles through its sensors while driving. In this case, the processor (180) of the mobile robot (100) may determine that an event related to a change that deviates from the time series restoration of the aforementioned initial first data has occurred.

[0213] Accordingly, the processor (180) transmits third data representing the current coordinates of the mobile robot (100) to the server (200) at regular intervals. At this time, the transmitted location data may be transmitted in a compressed form to reduce the communication burden.

[0214] In this way, when the mobile robot (100) encounters an obstacle and performs avoidance driving such as stopping, changing path, or decelerating, it can be said that it switches from a first transmission mode in which only the initial first data is transmitted to a second transmission mode in which location information is continuously transmitted to the server (200) at regular intervals during avoidance driving.

[0215] When switched to the second transmission mode, the mobile robot (100) transmits its sensed current location as is to the server (200).

[0216] In an embodiment, if the processor (180) of the mobile robot (100) does not detect any surrounding obstacles through its sensors, it transmits updated third data, including the mobile robot's current coordinates and delayed time information, to the server (200). Then, it causes the server (200) to update the time series restoration.

[0217] Specifically, if no obstacles are detected in the surroundings again thereafter, the system switches back to the first transmission mode and transmits third data, including the current location and the time elapsed from the starting point, to the server (200) to update the time series restoration of the initial first data.

[0218] In this case, although there may be a temporary communication burden while driving to avoid obstacles, after driving to avoid them, only the third data for updating is transmitted once, and thereafter the server (200) automatically performs the updated time series restoration as described above. Accordingly, the minimization of communication burden and the maintenance of data precision can be balanced.

[0219] In some embodiments, the third data may include a changed movement speed. For example, if the mobile robot (200) decides to accelerate to reach the destination point more quickly by driving around obstacles, it may operate to update the time series restoration of the initial first data by including the changed movement speed in the third data.

[0220] Referring to FIG. 12, along with the first data (910) transmitted initially and the second data (920) transmitted after reaching the destination, the third data (930) related to the predicted position change per clock due to stopping while driving, and the deformation data (940) related to the curve driving of the mobile robot (100) are additionally transmitted to the server (200), along with deformation data (1010, 1020) corresponding to the bit start signal and bit end signal according to the power on / off of the mobile robot (100), and the current position coordinates (N, current position transmission) transmitted until the avoidance driving of the mobile robot (100) is completed are transmitted to the server (200).

[0221] In this way, while the mobile robot (100) is driving to avoid obstacles, it notifies the server (200) of position data resulting from repeated irregular driving movements at regular time intervals. Accordingly, the precision of the data can be increased. Then, when the driving movement is restored to a regular state, update request data for the initial first data is transmitted only once to reduce the communication burden. Even when operating in this manner, the amount of data transmitted to the server (200) and the number of transmissions are not large, so the communication burden is still reduced.

[0222] Hereinafter, FIGS. 13a and FIGS. 13b are example drawings for explaining how a mobile robot (100) divides a map into multiple regions and transmits current location information on a region-by-region basis.

[0223] The embodiment illustrated herein is a method for increasing the precision of the position data of the mobile robot (100) while reducing the communication burden of the server (200).

[0224] The mobile robot (100) can call map data related to the assigned task. The spatial map data related to the assigned task may be stored in advance in the memory (160) of the mobile robot (100) or may be transmitted together or separately when the server (200) assigns the task.

[0225] When the mobile robot (100) has a long movement path that matches the movement command according to the assigned task, or when only a small position error is allowed, the mobile robot (100) can transmit position data of the mobile robot (100) to the server (200) in order to minimize the position error in each area.

[0226] To this end, the mobile robot (100) can recognize the driving space of the mobile robot (100) by dividing it into multiple regions based on map data. At this time, at least some of the number, size, and size of the multiple regions divided may vary depending on the task assigned to the mobile robot (100).

[0227] The processor (180) of the mobile robot (100) can distinguish and recognize multiple regions based on stored / retrieved spatial map data.

[0228] After transmitting the first data to the server (200), the processor (180) of the mobile robot (100) determines that when the mobile robot (100) moves to a different area within a plurality of areas recognized by the mobile robot (100), an event related to a change that deviates from the time series restoration of the initial first data has occurred.

[0229] For example, in FIG. 13a, the mobile robot (100) passes through the boundary of four regions between the first data (910) transmitted from the starting point and the second data (920) to be transmitted from the destination point, and it can be determined that the aforementioned event occurred whenever it passes through such a boundary.

[0230] In this case, the processor (180) of the mobile robot (100) generates updated third data based on the initial first data whenever it passes the boundary of the area and transmits it to the server (200). For example, referring to FIG. 13a, the mobile robot (100) transmits the first data (910) at the starting point and transmits third data requesting an update of the first data whenever it reaches the boundary points (1, 2, 3, 4) between the multiple areas. Then, when it reaches the destination point, it transmits the second data (920) to the server.

[0231] In this way, whenever the mobile robot (100) passes the boundaries of the separated areas, it sends the position coordinates again so that the server (200) updates the time series reconstruction, thereby reducing the error in the data and increasing the precision.

[0232] At this time, the distinct regions are set to be longer than the time interval at which the existing mobile robot transmits position coordinates to the server (200) at regular intervals.

[0233] Additionally, the segmented areas may be divided into larger sections for simple planned paths (e.g., cases involving only forward movement) and smaller sections for areas with frequent direction changes. In this way, by determining the size of the segmented areas differently depending on the situation, an environment can be provided that reduces positional errors while minimizing the number of transmissions.

[0234] Additionally, while the mobile robot (100) is driving within the partitioned area, the position information of the mobile robot (100) is not transmitted, and the predicted position is output according to the time series restoration of the server (200), thereby reducing the communication burden of the server (200).

[0235] For example, referring to FIG. 13b, while the mobile robot (100) is moving within the partitioned areas (area 1, area 2, area 3, area 4), it does not transmit location information to the server (200).

[0236] In FIG. 13b, while the mobile robot (100) is traveling through Area 1, the server (200) restores the position coordinates in a time series based on the initial first data (910). Afterward, the first third data (1310) that updates the position at the point where the mobile robot (100) passes from Area 1 to Area 2 is transmitted to the server (200). At this time, the first third data (1310) includes the current position of the mobile robot (100) at the boundary of the first and second areas and time information elapsed from the starting point.

[0237] Next, while the mobile robot (100) travels through Area 2, the server (200) restores the time series of updated location coordinates based on the first third data (1310). Afterward, the mobile robot (100) transmits a second third data (1320) to the server (200) to update its position at the point where it passes from Area 2 to Area 3. At this time, the second third data (1320) includes the current position of the mobile robot (100) at the boundary of the second and third areas, and time information elapsed since the time the first third data (1310) was transmitted.

[0238] Next, while the mobile robot (100) is driving in Area 3, the server (200) restores the time series of updated location coordinates based on the second third data (1320). Afterward, the mobile robot (100) transmits the third third data (1330), which updates the location at the point where it passes from Area 3 to Area 4, to the server (200). At this time, the third third data (1330) includes the current location of the mobile robot (100) at the boundary of the third and fourth areas, and time information elapsed since the time the second third data (1320) was transmitted.

[0239] Subsequently, while the mobile robot (100) travels through area 4, the server (200) restores the time series of updated location coordinates based on the third data (1330). Subsequently, when the mobile robot (100) reaches the destination, it transmits the second data (920) corresponding to the termination signal.

[0240] In this way, if the position information of the mobile robot (100) is transmitted to the server (200) by dividing it into multiple regions to update the time series reconstruction, the number of transmissions increases slightly, but the data precision increases significantly. In addition, the reduction in communication burden can be continuously maintained compared to when position information is transmitted at regular intervals.

[0241] Next, FIG. 14 is an example diagram illustrating how a linked server (200) transmits location data transmitted by a mobile robot (100) back to a third party to restore the time series.

[0242] At this time, the third party may be another device / cloud / system connected to communicate with the server (200) or an assistance / application for providing location information of the mobile robot (100) as a service. For example, the third party may be an assistance (300) installed on a user terminal that communicates with the server (200) as shown in FIG. 14.

[0243] To this end, in a system in which a mobile robot (100) and a server (200) are connected to communicate, the server (200) can be connected to an external terminal (300) including an assistant (300).

[0244] In this case, the server (200) may transmit the aforementioned first to third data to the external terminal (300) in response to a request from the external terminal (300) so that a third party may perform a time-series analysis of the first data received from the mobile robot (100).

[0245] Accordingly, time series restoration based on the aforementioned first and third data is performed on an external terminal (300) on the server (200).

[0246] For example, referring to FIG. 14, the initial first data (1410) transmitted by the mobile robot (100) from the starting point to the server (200) is transmitted to the external terminal (300) through the server (200). Then, the external terminal (300) outputs the real-time position change of the mobile robot (100) as a result of time-series reconstruction based on the first data through a screen, etc. At this time, the output position change may be displayed in real-time in the form of a user interface screen on the external terminal (300). Also, when the mobile robot (100) reaches the destination point, if the mobile robot (100) transmits the second data (1440) to the server (200), the server (200) transmits the second data (1450) to the external terminal (300). When the external terminal (300) receives the second data (1450), it outputs that the mobile robot has reached the destination point.

[0247] Additionally, the external terminal (300) can inform the user of the current location of the mobile robot (100) as well as the estimated arrival time based on the first and second data (1420, 1450) transmitted from the server (200).

[0248] As described above, the mobile robot according to the embodiment of the present invention can significantly reduce or minimize the communication burden by minimizing the frequency of location data transmitted to the server while moving to perform an assigned task. Furthermore, the communication burden can be alleviated by reducing the amount of data transmitted to the server without compressing the data, and by transmitting the data in a processed form that allows the server to reconstruct the time series. Moreover, when the mobile robot stops, travels in a curved shape, or avoids obstacles, updated location data is transmitted to update the time series reconstruction. Accordingly, the precision of the data can be maintained while reducing the communication burden.

[0249] Further scopes of the applicability of the present invention will become apparent from the following detailed description. However, since various changes and modifications within the spirit and scope of the present invention are clearly understood by those skilled in the art, specific embodiments, such as the detailed description and preferred embodiments of the present invention, should be understood as being given merely as examples.

[0250] The features, structures, effects, etc. described in the embodiments above are included in at least one embodiment of the present invention and are not necessarily limited to only one embodiment. Furthermore, the features, structures, effects, etc. exemplified in each embodiment may be combined or modified and implemented in other embodiments by a person skilled in the art to which the embodiments belong. Therefore, details regarding such combinations and modifications should be interpreted as being included within the scope of the present invention.

[0251] Furthermore, although the invention has been described above with reference to embodiments, this is merely illustrative and does not limit the invention. Those skilled in the art will understand that various modifications and applications not exemplified above are possible within the scope of the essential characteristics of the embodiments. For example, each component specifically shown in the embodiments may be modified and implemented. Differences related to such modifications and applications should be interpreted as being included within the scope of the invention as defined in the appended claims.

Claims

A communication module connected to a server to transmit data; A processor that generates first data including the starting coordinates, target coordinates, and movement speed of a mobile robot in response to a movement command according to an assigned task; and The above mobile robot includes a driving unit that operates to drive toward the above target coordinates, The above processor is, Transmitting the first data from the above starting coordinates to the server so that the server restores the first data in a time series, and transmitting second data including the current coordinates of the mobile robot to the server based on the fact that the mobile robot has reached the target coordinates according to the operation of the driving unit. Mobile robot. In paragraph 1, The above first data is, It is generated in response to the above movement command and A movement speed added to generate a plurality of trajectory coordinates between the start coordinates and the target coordinates extracted from the movement command, wherein the movement speed is added to enable the calculation of a plurality of trajectory coordinates between the start coordinates and the target coordinates. Mobile robot. In paragraph 1, The above processor is, When a stop command is generated upon reaching the above target coordinates, the second data is transmitted to the server along with the stop command, so that the server compares the current coordinates of the second data with the target coordinates of the first data. Mobile robot. In paragraph 1, The above processor is, Detecting the occurrence of an event related to a change that deviates from the time series analysis of the first data, and transmitting third data related to the detected event to the server. Mobile robot. In paragraph 4, The above processor is, Determining that the event has occurred in response to the cessation of movement of the mobile robot traveling toward the above target coordinates, Transmitting third data, including the current position and elapsed time information of the mobile robot, to the server so that the server updates the time series analysis of the first data. Mobile robot. In paragraph 4, The above processor is, The mobile robot traveling toward the above target coordinates determines that the above event has occurred in response to curve driving, and Transmitting third data including the center point coordinates of the curved drive to the server so that the server updates the time series analysis of the first data, Mobile robot. In paragraph 4, The above processor is, While the power-on state of the above mobile robot, a beat signal is generated at regular time intervals, and In response to the mobile robot switching from power off to power on, it is determined that the event has occurred, and third data including a bit start signal is transmitted to the server. Determining that the event has occurred in response to the mobile robot switching from a power-on state to a power-off state, and transmitting updated third data including a bit termination signal to the server. Mobile robot. In paragraph 4, The above mobile robot further includes a sensor that detects surrounding obstacles while driving, and The above processor is, When the mobile robot is driving, if a surrounding obstacle is detected through the sensor, it is determined that the event has occurred, and third data representing the current coordinates of the mobile robot is transmitted to the server at regular time intervals. Mobile robot. In paragraph 8, The above processor is, If surrounding obstacles are not detected through the sensor, updated third data including the mobile robot's current coordinates and delayed time information is transmitted to the server so that the server updates the time series restoration. Mobile robot. In paragraph 4, It further includes memory storing spatial map data related to the above-mentioned assigned task, and The above processor is, Based on the spatial map data above, a plurality of regions are distinguished, and after the transmission of the first data, when the mobile robot moves to a different region within the plurality of regions, the event is determined to have occurred, and a third data updated based on the first data is generated and transmitted to the server. Mobile robot. Server; and It includes a mobile robot connected to communicate with the above-mentioned server to transmit data, and The above mobile robot is, In response to a movement command according to an assigned task, first data including the starting coordinates, target coordinates, and movement speed of the mobile robot is generated and transmitted from the starting coordinates to the server. The server above restores the received first data in a time series to determine the position and movement of the mobile robot, and The above mobile robot is, Transmitting second data including the current coordinates of the mobile robot to the server based on driving toward the above target coordinates and reaching the above target coordinates, Mobile robot system. In Paragraph 11, The above server is, In response to the receipt of the first data, a plurality of trajectory coordinates between the starting coordinates and the target coordinates are calculated based on the movement speed, and the time series reconstruction is performed. Mobile robot system. In Paragraph 11, The above mobile robot is, Detects the occurrence of an event related to a change that deviates from the time series analysis of the first data, and transmits third data related to the detected event to the server, The above server is, Updating the time series analysis of the first data based on the current coordinates and elapsed time information included in the third data, Mobile robot system. In Paragraph 11, The above server is, After sequentially outputting position coordinates corresponding to the time series analysis of the first data, outputting the current coordinates included in the second data received from the mobile robot. Mobile robot system. In Paragraph 11, The above server is, In response to a request from an external terminal, the data is transmitted to the external terminal so that a third party performs a time-series analysis of the received first data. Mobile robot system.

Citation Information

Patent Citations

  • Robot state monitoring system and robot state monitoring method

    JP2019209426A

  • Collaborative robotic control system

    KR1020150075639A

  • Cup holder for vehicle

    KR102827909B1

  • Positioning and navigation method for a robot, and computing device thereof

    US20200164521A1

  • KR20210091923A