Methods, devices, self-moving devices, and storage media for detecting motion status.

By obtaining speed deviation during the speed regulation phase in the self-moving device, the high cost and failure risk of mechanical contact switch detection in the prior art are solved, and fast and effective external force traction detection is achieved.

CN116430862BActive Publication Date: 2025-11-14ECOFLOW INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310358660.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-27
Publication Date
2025-11-14
Estimated Expiration
2043-03-27

AI Technical Summary

Technical Problem

Existing methods for detecting robot motion states rely on mechanical contact switches, which increases installation costs and carries the risk of detection failure, especially when the robot is moved manually or pulled by external force.

Method used

By controlling the self-moving device to enter the speed adjustment stage, the current speed and timing duration are obtained, and it is determined whether it is under external traction based on the preset speed deviation range. The speed deviation is used for detection.

Benefits of technology

It enables rapid and effective detection of the motion status of self-moving equipment, applicable to the determination of external traction in static or moving states, reducing detection costs and expanding the scope of application.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116430862B_ABST
    Figure CN116430862B_ABST
Patent Text Reader

Abstract

This application provides a method for detecting the motion state of a self-moving device, a device for detecting the motion state of a self-moving device, a self-moving device, and a computer-readable storage medium. The method includes: responding to a received control command, controlling the self-moving device to enter a speed adjustment phase and starting a timer until the self-moving device reaches a target state; the control command carries a target speed; during the speed adjustment phase, acquiring the current speed and current timer duration of the self-moving device; acquiring a corresponding preset speed deviation range based on the current timer duration; and confirming that the self-moving device is under external force traction when the speed deviation between the target speed and the current speed is not within the preset speed deviation range. The method proposed in this application aims to determine whether the self-moving device is under external force traction by judging whether the speed deviation of the self-moving device in the target state is within the preset speed deviation range, thereby realizing the detection of the motion state of the self-moving device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a method, apparatus, self-moving device, and computer-readable storage medium for detecting the motion state of a self-moving device. Background Technology

[0002] With the development of urban construction and the improvement of technology, the performance of self-moving devices such as robots has been continuously improved, and the application scope of robots has greatly expanded. They are widely used not only in industries such as manufacturing, agriculture, medicine, and services, but also in hazardous and dangerous situations such as urban security, national defense, and space exploration. However, robots with autonomous positioning and navigation capabilities are often at risk of being moved or pulled by external forces, which could lead to their malfunction.

[0003] Existing methods for detecting whether a robot is moved manually or pulled / lifted by external force typically rely on mechanical test contact switches. This not only increases installation costs but also requires a certain amount of installation space. Furthermore, if the robot is moved manually while the test contact switch remains in the raised state, the mechanical test contact switch will not be able to detect that the robot has been moved, thus this method also carries the risk of detection failure. Summary of the Invention

[0004] This application provides a method, apparatus, self-moving device, and computer-readable storage medium for detecting the motion state of a self-moving device, which can confirm whether the self-moving device is under external force traction, thereby realizing the detection of the motion state of the self-moving device.

[0005] In a first aspect, this application provides a method for detecting the motion state of a self-moving device, the method comprising:

[0006] In response to a received control command, the self-moving device is controlled to enter a speed adjustment phase and a timer is started until the self-moving device reaches the target state; the control command carries the target speed.

[0007] During the speed adjustment phase, the current speed and current timing duration of the self-moving device are obtained;

[0008] The corresponding preset speed deviation range is obtained based on the current timing duration;

[0009] When the speed deviation between the target speed and the current speed is not within the preset speed deviation range, it is confirmed that the self-moving device is under external force traction.

[0010] Secondly, this application provides a device for detecting the motion state of a self-moving device, the detection device comprising:

[0011] The control module is used to receive control commands, control the self-moving device to enter the speed adjustment stage and start timing until the self-moving device reaches the target state; the control commands carry the target speed.

[0012] The acquisition module is used to acquire the current speed and current timing duration of the self-moving device during the speed adjustment phase.

[0013] The corresponding preset speed deviation range is obtained based on the current timing duration;

[0014] The judgment module is used to confirm that the self-moving device is under external force traction when the speed deviation between the target speed and the current speed is not within the preset speed deviation range.

[0015] Thirdly, this application provides a self-moving device, the self-moving device comprising:

[0016] Memory and processor;

[0017] The memory is connected to the processor and is used to store programs;

[0018] The processor is used to implement the steps of the self-moving device motion state detection method as described in any of the above embodiments by running the program stored in the memory.

[0019] Fourthly, this application provides a computer-readable storage medium storing a computer program that, when executed by a processor, causes the processor to implement the steps of the method for detecting the motion state of a self-moving device as described in any of the above embodiments.

[0020] The method, apparatus, self-moving device, and computer-readable storage medium disclosed in this application for detecting the motion state of a self-moving device can respond to control commands, control the self-moving device to enter a speed adjustment phase and start timing until the self-moving device reaches a target state. During the speed adjustment phase, the current speed and current timing duration of the self-moving device are acquired, and a corresponding preset speed deviation range is obtained based on the current timing duration. Therefore, when the speed deviation between the target speed and the current speed is not within the preset speed deviation range, it can be confirmed that the self-moving device is under external force traction. Since the detection method provided in this application determines whether the speed deviation of the self-moving device is within the preset speed deviation range, and thus confirms whether the self-moving device is under external force traction, the self-moving device only needs to have real speed feedback capability, thus enabling relatively fast and efficient detection of the motion state of the self-moving device. Furthermore, it can determine whether the self-moving device is receiving external force traction whether it is in a stationary or moving state; therefore, the detection method proposed in this application has a wide range of applications.

[0021] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description

[0022] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0023] Figure 1 This is a schematic diagram illustrating the steps of a method for detecting the motion state of a self-moving device according to an embodiment of this application;

[0024] Figure 2 This is a schematic diagram illustrating the steps for generating a preset speed deviation range provided in an embodiment of this application;

[0025] Figure 3 This is a schematic diagram of the steps of another method for detecting the motion state of a self-moving device provided in an embodiment of this application;

[0026] Figure 4 This is a schematic diagram illustrating the steps for generating a preset distance threshold according to an embodiment of this application;

[0027] Figure 5 This is a schematic block diagram of a motion state detection device for a self-moving device provided in an embodiment of this application;

[0028] Figure 6 This is a schematic diagram of a self-moving device provided in an embodiment of this application;

[0029] Figure 7 This is a schematic diagram of the structure of the computer-readable storage medium provided in this application.

[0030] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Detailed Implementation

[0031] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0032] The flowchart shown in the attached diagram is for illustrative purposes only and does not necessarily include all content and operations / steps, nor does it necessarily have to be performed in the order described. For example, some operations / steps can be broken down, combined, or partially merged, so the actual execution order may change depending on the actual situation.

[0033] It should be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the scope of the application. As used in this specification and the appended claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms unless the context clearly indicates otherwise.

[0034] It should be understood that, in order to clearly describe the technical solutions of the embodiments of this application, the terms "first" and "second" are used in the embodiments of this application to distinguish identical or similar items with essentially the same function and effect. For example, the first identification model and the second identification model are only used to distinguish different callback functions and do not limit their order. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and the terms "first" and "second" do not necessarily mean they are different.

[0035] It should also be understood that the term "and / or" as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0036] To facilitate understanding of the embodiments of this application, some background technologies involved in the embodiments of this application will be briefly described below.

[0037] Self-moving devices are those that have a moving device, a working device, and a control device, enabling them to move autonomously and perform tasks within a certain range. Common self-moving devices include robotic vacuum cleaners, handling robots, food delivery robots, and self-moving gardening equipment.

[0038] Self-moving devices with autonomous positioning and navigation capabilities may malfunction if they are moved, lifted, or subjected to external forces. Therefore, it is necessary to detect the movement status of self-moving devices and issue timely warnings when they are subjected to external forces. This notifies the system decision-making level to stop movement control or prompts the user to restore the device to its initial state, ensuring its normal operation.

[0039] Existing detection methods typically employ mechanical test contact switches to detect the motion state of self-moving devices. Specifically, a mechanical test contact switch can be installed on the base of the self-moving device. When the self-moving device moves away from the mechanical test contact switch under external force, it can issue a warning message to indicate that the self-moving device is being pulled by an external force. However, this method requires the installation of a mechanical test contact switch, thus increasing detection costs and occupying installation space. Furthermore, if the mechanical test contact switch is manually kept in the open state while the self-moving device is being pulled by an external force, the pulling force cannot be detected. Therefore, there is a need to propose a method for detecting the motion state of self-moving devices that can solve the above technical problems and achieve the detection of the motion state of self-moving devices.

[0040] The following detailed description of some embodiments of this application is provided in conjunction with the accompanying drawings. Unless otherwise specified, the following embodiments and features can be combined with each other.

[0041] Please see Figure 1 , Figure 1 This is a schematic diagram illustrating the steps of a method for detecting the motion state of a self-moving device according to an embodiment of this application. This method can be applied to self-moving devices to determine whether the device is under external traction, thereby achieving the detection of the self-moving device's motion state.

[0042] like Figure 1 As shown, the method for detecting the motion state of the self-moving device includes steps S11 to S14.

[0043] Step S11: In response to the received control command, control the self-moving device to enter the speed adjustment stage and start timing until the self-moving device reaches the target state.

[0044] Among them, the control command carries the target speed; the speed adjustment stage is the stage where the self-moving device adjusts its current speed; further, the target state is the state in which the self-moving device reaches the target speed.

[0045] Therefore, in response to received control commands, the self-moving device can be controlled to move from its current speed to the target speed so that it reaches the target state, and the process can be timed.

[0046] Step S12: During the speed adjustment phase, obtain the current speed and current timing duration of the self-moving device.

[0047] During the speed adjustment phase, the current speed of the mobile device and the current time taken for it to reach the target speed from the current speed can be directly obtained.

[0048] It should be noted that this application does not limit the current speed of the self-moving device; for example, the current speed can be 0 or not. Understandably, if the current speed of the self-moving device is 0, the self-moving device enters the speed adjustment phase from a stationary state; if the current speed of the self-moving device is not 0, the self-moving device enters the speed adjustment phase from a moving state.

[0049] Step S13: Obtain the corresponding preset speed deviation range based on the current timing duration.

[0050] This application does not limit the generation of the preset speed deviation range; for example, it can be generated based on data from a self-moving device in a state without external traction. Furthermore, the external force can be generated by a person, an animal, or other moving equipment, and this application does not limit this.

[0051] For example, when the self-moving device is in a state without external traction, multiple sets of speeds reached by the self-moving device from the aforementioned real-time speed within the current timing duration can be determined. Then, based on the maximum and minimum values ​​in the speed sets, the speed range to be reached can be determined, and the difference between this speed range and the real-time speed can be calculated to obtain a preset speed deviation range. Alternatively, the acceleration range of the self-moving device in a state without external traction can be obtained directly based on the nameplate information of the self-moving device. Then, based on the acceleration range, the aforementioned real-time speed, and the current timing duration, the preset speed deviation range can be determined.

[0052] Step S14: When the speed deviation between the target speed and the current speed is not within the preset speed deviation range, confirm that the self-moving device is under external force traction.

[0053] Understandably, the preset speed deviation range is based on the speed deviation range obtained when the self-moving device is in a state without external traction. Therefore, if the speed deviation between the target speed and the current speed is not within the preset speed deviation range, it can be determined that the self-moving device is in a state of external traction. Conversely, it can be determined that the self-moving device is in a state of no external traction.

[0054] In this embodiment, in response to a control command, the self-moving device can be controlled to enter a speed adjustment phase and start timing until it reaches the target state. During the speed adjustment phase, the current speed and current timing duration of the self-moving device are acquired, and a corresponding preset speed deviation range is obtained based on the current timing duration. Therefore, if the speed deviation between the target speed and the current speed is not within the preset speed deviation range, it can be confirmed that the self-moving device is under external traction. Since the speed deviation is based on the target speed and the current speed, the self-moving device only needs to have real speed feedback capability, thus enabling faster and more efficient detection of the self-moving device's motion state. Furthermore, the self-moving device can be 0 or not 0, meaning this application can also determine whether the self-moving device is receiving external traction whether it is in a stationary or moving state.

[0055] Optionally, please refer to Figure 2 , Figure 2 This is a schematic diagram illustrating a step for generating a preset speed deviation range according to an embodiment of this application. For example... Figure 2 As shown, a preset speed deviation range can be generated based on steps S21 to S24.

[0056] Step S21: Generate test instructions when the self-moving device is in a state of no external traction.

[0057] The test command includes the target speed; the state without external traction is the static or dynamic state of the self-moving device without being pulled by an external force, which is not limited in this application.

[0058] Step S22: Control the self-moving device to enter the speed adjustment stage and start timing according to the test command, and stop timing when the real-time speed of the self-moving device reaches the target speed.

[0059] Since the test command includes a target speed, the self-moving device can be controlled to enter the speed adjustment phase without external traction, thereby enabling the real-time speed of the self-moving device to reach the target speed. Furthermore, it is necessary to time the moment the real-time speed of the self-moving device reaches the target speed.

[0060] Step S23: Obtain the real-time speed and timing duration of the mobile device during the speed adjustment phase.

[0061] Since the above embodiments can control the self-moving device to enter the speed adjustment phase, so as to achieve the target speed in real time, the real-time speed and timing duration of the self-moving device during the speed adjustment phase can be directly obtained.

[0062] Step S24: Generate a preset speed deviation range corresponding to the timing duration based on the timing duration, real-time speed, and target speed.

[0063] The preset speed deviation range is obtained by subtracting the real-time speed from the target speed.

[0064] Understandably, when a self-moving device is in a state of no external traction, the range of its speed change during the aforementioned timing period is the preset speed deviation range.

[0065] Optionally, to make the preset speed deviation range more accurate, when the self-moving device enters the speed adjustment phase according to the test command, multiple sets of timing durations corresponding to the real-time speed of the self-moving device during the speed adjustment phase can be obtained. Based on the multiple sets of timing durations, the preset speed deviation range corresponding to each timing duration can be determined to obtain a set of preset speed deviation ranges. Furthermore, the mode of the preset speed deviation range set can be determined as the final preset speed deviation range, which can reduce the error in the testing process and thus obtain a more accurate preset speed deviation range.

[0066] In this embodiment, a self-moving device in a state of no external traction can be controlled to enter a speed adjustment phase and start timing according to a test command, until the real-time speed of the self-moving device reaches the target speed and then the timing stops. The real-time speed and timing duration of the self-moving device during the speed adjustment phase are obtained, thus enabling the determination of a preset speed deviation range corresponding to that timing duration.

[0067] Optionally, the above-mentioned generation of a preset speed deviation range corresponding to the timing duration based on the timing duration, real-time speed, and target speed includes: generating a speed curve based on the real-time speed and the corresponding timing duration; and determining the preset speed deviation range based on the speed curve and the target speed.

[0068] Specifically, to more intuitively determine the preset speed deviation range, a speed curve can be generated based on the real-time speed and the corresponding timing duration. Understandably, when the self-moving device is in a state of no external traction, it can follow the real-time speed of the speed curve.

[0069] Furthermore, the real-time speed in the speed curve, along with the corresponding timing duration and target speed, can be obtained. The difference between the real-time speed and the target speed can be calculated to obtain the preset speed deviation range corresponding to the timing duration.

[0070] Understandably, for other target speeds, the real-time speed and corresponding timing duration in the speed curve can also be obtained, and the difference between the real-time speed and other target speeds can be calculated to obtain the corresponding preset speed deviation range.

[0071] In this embodiment, a speed curve can be generated based on the real-time speed and the corresponding timing duration, and then a preset speed deviation range can be determined based on the speed curve and the target speed. The speed curve can also be used to detect the motion state of other target speeds of the self-moving device, improving the efficiency of motion state detection.

[0072] Optionally, before determining the preset speed deviation range based on the speed curve and the target speed, the method further includes: smoothing the speed curve to obtain a processed speed curve.

[0073] Specifically, in order to reduce the interference of noise such as abrupt changes, missing data or redundant data in the speed curve on the generation of the preset speed deviation range, the speed curve can also be smoothed to obtain the processed speed curve.

[0074] Optionally, the smoothing process includes mean filtering and median filtering; the velocity includes linear velocity and / or angular velocity.

[0075] Optionally, a preset speed deviation range can be determined based on the smoothed target speed curve and the target speed. This allows for a more accurate preset speed deviation range, thereby improving the accuracy of motion state detection for the self-moving device.

[0076] In this embodiment, the velocity curve can be smoothed to obtain a processed velocity curve, and a preset velocity deviation range can be determined based on the smoothed target velocity curve and the target velocity. This reduces the interference of noise in the velocity curve on the generation of the preset velocity deviation range, thereby improving the accuracy of motion state detection of the self-moving device.

[0077] Please see Figure 3 , Figure 3 This is a schematic diagram illustrating the steps of another method for detecting the motion state of a self-moving device provided in an embodiment of this application. For example... Figure 3 As shown, the motion state of the self-moving device can also be detected through steps S31 to S33.

[0078] Step S31: Calculate the travel distance of the self-moving device based on its speed during the speed adjustment phase.

[0079] Specifically, the current speed, target speed, and time taken to reach the target speed from the current speed can be obtained during the speed adjustment phase of the self-moving device, and the moving distance of the self-moving device can be calculated based on the displacement formula.

[0080] The displacement formula is as follows:

[0081] Where x is the distance traveled by the self-moving device; v0 is the current speed; vt t represents the target speed; t represents the timing time.

[0082] Step S32: When the moving distance is greater than the preset distance threshold, confirm that the self-moving device is in motion.

[0083] Step S33: When the moving distance is not greater than the preset distance threshold, confirm that the self-moving device is stationary.

[0084] It should be noted that this application does not limit the generation of the preset distance threshold; for example, it can be generated based on data from the self-moving device in a state without external traction.

[0085] For example, when the self-moving device is in a state without external traction, the speed at which it arrives from a stationary state within the current time interval can be determined, and a preset distance threshold can be determined based on the arrival speed and the time interval. Alternatively, the acceleration range of the self-moving device in a state without external traction can be obtained directly from the nameplate information of the self-moving device, and then the preset distance threshold can be determined based on the acceleration range and the current time interval.

[0086] Understandably, since the preset distance threshold is based on the self-moving device being in a state without external traction, when the travel distance exceeds the preset distance threshold, it can be determined that the self-moving device is under external traction. Furthermore, since the preset distance threshold is based on the self-moving device being in a stationary state, when the travel distance exceeds the preset distance threshold, it can be determined that the initial velocity of the self-moving device is greater than 0, meaning the self-moving device is in motion. Conversely, when the travel distance is less than the preset distance threshold, it can be determined that the self-moving device is stationary.

[0087] In this embodiment, the travel distance of the self-moving device can be calculated based on its speed during the speed adjustment phase. Furthermore, the travel distance can be compared with a preset distance threshold to determine whether the self-moving device is in motion or stationary mode. Thus, while determining whether the self-moving device is under external force, it can also determine whether it is in motion or stationary mode, improving the detection range of the self-moving device's motion state.

[0088] Please see Figure 4 , Figure 4 This is a schematic diagram illustrating the steps for generating a preset distance threshold according to an embodiment of this application. Figure 4 As shown, the preset distance threshold can be generated through steps S41 to S43.

[0089] Step S41: When the self-moving device is in a state without external traction, control the self-moving device to enter the speed adjustment stage from a stationary state and start timing until the self-moving device reaches the target speed.

[0090] It can directly control the self-moving device to enter the speed regulation stage without external traction, and control it to reach the target speed from a stationary state. In addition, it is also necessary to time the self-moving device to reach the target speed from a stationary state.

[0091] Step S42: During the speed adjustment phase, obtain the target timing duration of the self-moving device.

[0092] Since the above embodiments can control the self-moving device to enter the speed adjustment phase, so as to achieve the target speed while the self-moving device is stationary, the target timing duration of the self-moving device during the speed adjustment phase can be directly obtained.

[0093] Step S43: Determine the preset distance threshold based on the target timing duration and target speed.

[0094] Specifically, the target timing duration and target speed can be input into the above displacement formula to obtain the preset distance threshold. To avoid repetition, this will not be elaborated here.

[0095] In this embodiment, when the self-moving device is in a state without external traction, it can be controlled to enter a speed adjustment phase from a stationary state and start timing until the self-moving device reaches the target speed. The target timing duration of the self-moving device is then acquired, allowing a preset distance threshold to be determined based on the target timing duration and target speed.

[0096] Please see Figure 5 , Figure 5 This is a schematic block diagram of a motion state detection device for a self-moving device provided in an embodiment of this application. The motion state detection device for a self-moving device can be configured in a server to execute the aforementioned motion state detection method for a self-moving device.

[0097] like Figure 5 As shown, the motion state detection device 200 of the self-moving device includes: a control module 201, an acquisition module 202, and a judgment module 203.

[0098] Control module 201 is used to receive control commands, control the self-moving device to enter the speed adjustment stage and start timing until the self-moving device reaches the target state; the control commands carry the target speed;

[0099] The acquisition module 202 is used to acquire the current speed and current timing duration of the self-moving device during the speed adjustment phase.

[0100] The judgment module 203 is used to confirm that the self-moving device is under external force traction when the speed deviation between the target speed and the current speed is not within the preset speed deviation range.

[0101] It should be noted that those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the above-described apparatus and its modules and units can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0102] The methods and apparatus of this application can be used in a wide variety of general-purpose or special-purpose computing system environments or configurations. For example: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer terminal devices, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, etc.

[0103] For example, the above-described method and apparatus can be implemented as a computer program, which can be used in, for example... Figure 6 It runs on the self-moving device shown.

[0104] Please see Figure 6 , Figure 6 This is a schematic diagram of a self-moving device provided in an embodiment of this application. The self-moving device may be a server.

[0105] like Figure 6 As shown, the self-moving device includes a processor, a memory, and a network interface connected via a system bus, wherein the memory may include volatile storage media, non-volatile storage media, and internal memory.

[0106] Non-volatile storage media can store an operating system and a computer program. The computer program includes program instructions that, when executed, cause a processor to perform steps of any method for detecting the motion state of a self-moving device.

[0107] The processor provides computing and control capabilities to support the operation of the entire self-moving device.

[0108] Internal memory provides an environment for the execution of computer programs in non-volatile storage media. When executed by a processor, the computer program enables the processor to perform the steps of any method for detecting the motion state of a self-moving device.

[0109] This network interface is used for network communication, such as sending assigned tasks. Those skilled in the art will understand that the structure of this computer device is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific self-moving devices may include more or fewer components than shown in the figure, or combine certain components, or have different component arrangements.

[0110] It should be understood that the processor can be a Central Processing Unit (CPU), but it can also be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Among these, a general-purpose processor can be a microprocessor or any conventional processor.

[0111] In some embodiments, the processor is used to run a computer program stored in a memory to perform the following steps: in response to a received control command, controlling the self-moving device to enter a speed adjustment phase and start timing until the self-moving device reaches a target state; the control command carries the target speed; in the speed adjustment phase, acquiring the current speed and current timing duration of the self-moving device; acquiring a corresponding preset speed deviation range based on the current timing duration; and confirming that the self-moving device is under external traction when the speed deviation between the target speed and the current speed is not within the preset speed deviation range.

[0112] In some embodiments, the processor is further configured to generate a test instruction when the self-moving device is in a state without external traction; the test instruction includes a target speed; control the self-moving device to enter a speed adjustment phase and start timing according to the test instruction, until the real-time speed of the self-moving device reaches the target speed and then stops timing; acquire the real-time speed of the self-moving device in the speed adjustment phase and the timing duration; and generate a preset speed deviation range corresponding to the timing duration based on the timing duration, the real-time speed, and the target speed.

[0113] In some embodiments, the processor is further configured to generate a speed curve based on the real-time speed and the corresponding timing; and to determine the preset speed deviation range based on the speed curve and the target speed.

[0114] In some embodiments, the processor is further configured to smooth the speed curve to obtain a processed speed curve; the step of determining the preset speed deviation range based on the speed curve and the target speed is: determining the preset speed deviation range based on the smoothed target speed curve and the target speed.

[0115] In some embodiments, the processor is further configured to calculate the moving distance of the self-moving device based on the speed of the self-moving device during the speed adjustment phase; when the moving distance is greater than a preset distance threshold, confirm that the self-moving device is in motion; and when the moving distance is not greater than the preset distance threshold, confirm that the self-moving device is in a stationary state.

[0116] In some embodiments, the processor is further configured to, when the self-moving device is in a state without external traction, control the self-moving device to enter a speed adjustment phase from a stationary state and start timing until the self-moving device reaches the target speed; in the speed adjustment phase, acquire the target timing duration of the self-moving device; and determine the preset distance threshold based on the target timing duration and the target speed.

[0117] Please see Figure 7 , Figure 7 This is a schematic diagram of the structure of the computer-readable storage medium provided in this application. The computer-readable storage medium 50 of this application stores a computer program 51 capable of implementing all the above-described methods for detecting the motion state of the self-moving device. The computer program 51 can be stored in the computer-readable storage medium 50 in the form of a software product, including several instructions to cause a computer device (which may be a personal computer, a server, or a network device, etc.) or a processor to execute all or part of the steps of the methods of the various embodiments of this application.

[0118] The computer-readable storage medium 50 may be an internal storage unit of the self-moving device 200 as described in any of the foregoing embodiments, such as a hard disk or memory of the self-moving device 200. Alternatively, the computer-readable storage medium 50 may be an external storage device of the self-moving device 200, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the self-moving device 200.

[0119] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A method for detecting the motion state of a self-moving device, characterized in that, The method includes: In response to a received control command, the self-moving device is controlled to enter a speed adjustment phase and a timer is started until the self-moving device reaches the target state; the control command carries the target speed. During the speed adjustment phase, the current speed and current timing duration of the self-moving device are obtained; The corresponding preset speed deviation range is obtained based on the current timing duration; When the speed deviation between the target speed and the current speed is not within the preset speed deviation range, it is confirmed that the self-moving device is under external traction. The preset speed deviation range is obtained in the following way: When the self-moving device is in a state of no external traction, a test command is generated; the test command includes a target speed. According to the test command, the self-moving device is controlled to enter the speed adjustment stage and start timing until the real-time speed of the self-moving device reaches the target speed and then the timing stops. Obtain the real-time speed of the self-moving device during the speed adjustment phase and the current timing duration; A speed curve is generated based on the real-time speed and the corresponding timing duration; The preset speed deviation range is determined based on the speed curve and the target speed.

2. The method according to claim 1, characterized in that, Before determining the preset speed deviation range based on the speed curve and the target speed, the method further includes: The velocity curve is smoothed to obtain a processed velocity curve; The preset speed deviation range is determined based on the speed curve and the target speed as follows: The preset speed deviation range is determined based on the smoothed target speed curve and the target speed.

3. The method according to claim 2, characterized in that, The smoothing process includes mean filtering and median filtering; the velocity includes linear velocity and / or angular velocity.

4. The method according to claim 1, characterized in that, The method further includes: The distance traveled by the self-moving device is calculated based on its speed during the speed adjustment phase. When the moving distance exceeds a preset distance threshold, the self-moving device is confirmed to be in motion. When the moving distance is less than or equal to the preset distance threshold, the self-moving device is confirmed to be stationary.

5. The method according to claim 4, characterized in that, The method further includes: When the self-moving device is in a state without external traction, the self-moving device is controlled to enter the speed adjustment stage from a stationary state and a timer is started until the self-moving device reaches the target speed. During the speed adjustment phase, the target timing duration of the self-moving device is obtained; The preset distance threshold is determined based on the target timing duration and the target speed.

6. A device for detecting the motion state of an automatic mobile device, characterized in that, The detection device includes: The control module is used to receive control commands, control the self-moving device to enter the speed adjustment stage and start timing until the self-moving device reaches the target state; the control commands carry the target speed. The acquisition module is used to acquire the current speed and current timing duration of the self-moving device during the speed adjustment phase. The corresponding preset speed deviation range is obtained based on the current timing duration; The judgment module is used to confirm that the self-moving device is under external force traction when the speed deviation between the target speed and the current speed is not within the preset speed deviation range; The preset speed deviation range is obtained in the following way: When the self-moving device is in a state of no external traction, a test command is generated; the test command includes a target speed. According to the test command, the self-moving device is controlled to enter the speed adjustment stage and start timing until the real-time speed of the self-moving device reaches the target speed and then the timing stops. Obtain the real-time speed of the self-moving device during the speed adjustment phase and the current timing duration; A speed curve is generated based on the real-time speed and the corresponding current timing duration; The preset speed deviation range is obtained by subtracting the real-time speed from the target speed in the speed curve.

7. A self-moving device, characterized in that, The self-moving device includes: Memory and processor; The memory is connected to the processor and is used to store programs; The processor is used to implement the steps of the method for detecting the motion state of a self-moving device as described in any one of claims 1-5 by running the program stored in the memory.

8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, causes the processor to implement the steps of the method for detecting the motion state of a self-moving device as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Track correcting control algorithm of mobile robot

    CN106863308A

  • Robot, control method of robot, and machining method of workpiece

    CN108858183A