Intelligent lithium battery lawn mower automatic obstacle avoidance method and system
Patent Information
- Application Number
- CN202611031962.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-13
- Publication Date
- 2026-09-29
AI Technical Summary
然而,现有技术缺乏从超声波回波中有效提取反映草叶高频微动信号的手段,未能将草叶扫动频率的变化规律与障碍物的存在及距离准确关联,导致检测灵敏度不足、距离估计缺失,难以满足实际作业对避障精度的要求
[0007]由此可知,通过对回波信号中高频杂波的分析间接感知草叶扫动状态,利用扫动频率的异常降低判断被覆盖障碍物的存在,并结合降低速率的起始时刻和实时行进速度实现连续距离估计,从而无需依赖直接障碍物回波即可完成隐蔽障碍物的检测与避让,有效提高了自动避障的准确性和可靠性。
Smart Images

Figure CN122837475A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of control technology, and in particular to an automatic obstacle avoidance method and system for an intelligent lithium-ion battery lawnmower. Background Technology
[0002] Intelligent lawnmowers are widely used in lawn maintenance, and their working environment often contains hard obstacles such as stones and tree roots that are covered by grass. These obstacles are low and partially hidden under the grass, making them difficult to detect directly using conventional visual or infrared sensors.
[0003] Existing ultrasonic obstacle avoidance technologies typically rely on the intensity or time-of-flight of echo signals to determine the presence of obstacles. However, when facing hard objects covered by grass blades, the reflected echoes from the grass blades themselves and the obstacle echoes suffer from severe overlap in both time and intensity, causing the target signal to be submerged and leading to missed detections or misjudgments. Because grass blades have a specific motion frequency when swinging freely, the sweeping motion of the grass blades is constrained when there is a hard obstruction below or in front of them, resulting in a decrease in the swaying frequency. However, current technologies lack effective means to extract high-frequency micro-motion signals from ultrasonic echoes, failing to accurately correlate the variation in grass blade sweeping frequency with the presence and distance of obstacles. This results in insufficient detection sensitivity and incomplete distance estimation, making it difficult to meet the accuracy requirements of obstacle avoidance in practical operations. Summary of the Invention
[0004] This application provides an automatic obstacle avoidance method and system for an intelligent lithium-ion battery lawnmower to improve the above-mentioned problems.
[0005] To achieve the above objectives, this application adopts the following technical solution:
[0006] In a first aspect, this application proposes an automatic obstacle avoidance method for an intelligent lithium-ion battery lawnmower, applied to an automatic obstacle avoidance system for an intelligent lithium-ion battery lawnmower. The system includes a lawnmower body, an ultrasonic sensor, and a control terminal. The method is executed by the control terminal and includes: determining high-frequency noise in the echo signal received by the ultrasonic sensor; determining the sweeping frequency of grass blades in front of the lawnmower body based on the amplitude variation frequency of the high-frequency noise; determining that there is a hard obstacle covered by grass blades in front of the lawnmower when the rate of decrease of the sweeping frequency within a preset forward travel time exceeds a preset rate threshold; determining the current distance between the hard obstacle and the lawnmower based on the starting time when the rate of decrease exceeds the preset rate threshold and the real-time travel speed of the lawnmower body; and controlling the lawnmower to perform an obstacle avoidance action based on the current distance.
[0007] Therefore, it can be seen that by analyzing the high-frequency clutter in the echo signal, the sweeping state of the grass blades can be indirectly perceived. The presence of covered obstacles can be judged by the abnormal decrease in the sweeping frequency. By combining the starting time of the rate reduction and the real-time travel speed, continuous distance estimation can be achieved. Thus, the detection and avoidance of hidden obstacles can be completed without relying on the direct obstacle echo, which effectively improves the accuracy and reliability of automatic obstacle avoidance.
[0008] In conjunction with the first aspect, the system may optionally also include a vibration sensor, which determines high-frequency noise in the echo signal received by the ultrasonic sensor, including: acquiring vibration characteristic signals during the operation of the lawnmower body based on the vibration sensor; determining vibration interference signals that change synchronously with the vibration characteristic signals from the echo signals based on the vibration characteristic signals and the echo signals; and determining the signal components with frequencies higher than the preset grass blade disturbance frequency in the remaining signals after removing the vibration interference signals from the echo signals, as high-frequency noise.
[0009] Therefore, by acquiring the vibration characteristics of the machine body through vibration sensors and removing synchronous vibration interference from the echo, the influence of the lawnmower's own vibration on the echo analysis can be effectively eliminated, the purity of high-frequency noise extraction can be improved, and the foundation can be laid for the accurate calculation of the subsequent grass blade sweeping frequency.
[0010] In conjunction with the first aspect, optionally, based on the vibration characteristic signal and the echo signal, the vibration interference signal that changes synchronously with the vibration characteristic signal is determined from the echo signal, including: dividing the vibration characteristic signal and the echo signal into multiple time segments; if in any time segment, the amplitude of the vibration characteristic signal exceeds a first limit and the amplitude fluctuation of the corresponding segment of the echo signal is more similar to the amplitude fluctuation of the vibration characteristic signal than a second limit, then the signal component within the time segment is removed from the echo signal.
[0011] Therefore, by segmenting the signal and accurately removing interfering segments under both vibration intensity and waveform similarity conditions, it is possible to remove vibration contamination while preserving undisturbed echoes to the greatest extent possible, avoiding undue damage to useful signals and ensuring the integrity of grass blade dynamic information in the remaining signals.
[0012] In conjunction with the first aspect, optionally, the sweeping frequency of the grass blades in front of the lawnmower body is determined based on the amplitude variation frequency of the high-frequency clutter, including: determining the target envelope trajectory based on the high-frequency clutter, wherein the target envelope trajectory is used to characterize amplitude fluctuations; and obtaining the original sweeping period based on the time interval between adjacent amplitude peaks in the target envelope trajectory.
[0013] Based on the real-time travel speed of the lawnmower, the cycle adjustment parameters are determined; based on the cycle adjustment parameters, the original sweeping cycle is adjusted to determine the compensated sweeping cycle; based on the compensated sweeping cycle, the sweeping frequency is determined.
[0014] Therefore, by extracting the original sweeping cycle through the envelope trajectory and using the travel speed for Doppler compensation, the influence of the lawnmower's own movement on the sweeping frequency measurement is eliminated, making the obtained sweeping frequency more accurately reflect the real physical swing state of the grass blades and improving the reliability of subsequent obstacle detection.
[0015] In conjunction with the first aspect, optionally, based on the starting moment when the rate of decrease exceeds a preset rate threshold and the real-time travel speed of the lawnmower body, the current distance between the hard obstacle and the lawnmower is determined, including: determining the moment when the rate of decrease of the sweeping frequency first exceeds the preset rate threshold as the initial moment; obtaining the decrease rate value and the travel speed value of the lawnmower body corresponding to the initial moment; searching in a pre-constructed obstacle distance lookup table based on the decrease rate value and the travel speed value to obtain the initial distance value; obtaining the duration from the initial moment to the current moment, and the record of the change in the travel speed of the lawnmower body during the duration; determining the amount of displacement that the lawnmower moves forward during the duration based on the duration and the record of the change in travel speed; and subtracting the displacement from the initial distance value to obtain the current distance.
[0016] Therefore, by obtaining the initial distance through a lookup table and updating the remaining distance in real time using velocity integration, continuous dynamic estimation of obstacle distance is achieved. This method does not rely on ultrasonic direct time-of-flight ranging and has good distance estimation stability and accuracy for hard obstacles covered by grass.
[0017] In conjunction with the first aspect, optionally, after determining that there is a hard obstacle covered by grass blades in front of the lawnmower, the method further includes: determining the outline features of the hard obstacle based on the decreasing rate change pattern of the sweeping frequency within a preset forward travel time period; and adjusting the action parameters of the avoidance action based on the outline features.
[0018] Therefore, by inferring the outline features of obstacles based on the rate reduction change pattern and adaptively adjusting the avoidance parameters, the lawnmower can adopt differentiated avoidance strategies according to the shape of the obstacle, reducing unnecessary detours while ensuring safety, thus improving the intelligence of obstacle avoidance and operational efficiency.
[0019] In conjunction with the first aspect, optionally, the contour features of the hard obstacle are determined based on the decreasing rate change pattern of the sweeping frequency within a preset forward travel time period, including: determining the acceleration features of the decreasing rate based on the trajectory of the decreasing rate change within the preset forward travel time period; and determining the surface inclination of the hard obstacle on the side facing the lawnmower body based on the acceleration features, as the contour feature.
[0020] Therefore, by quantifying the surface tilt of an obstacle using the acceleration characteristics of a decreasing rate, it is possible to identify its steepness without contacting the obstacle, providing a precise geometric basis for adjusting avoidance maneuvers and further improving the safety and accuracy of obstacle avoidance.
[0021] In conjunction with the first aspect, optionally, the preset rate threshold is dynamically determined by: obtaining the maximum natural rate of decrease of the sweeping frequency during normal operation of the lawnmower after startup and without detecting any hard obstacles; and determining the preset rate threshold based on the maximum natural rate of decrease and a preset safety margin.
[0022] Therefore, by dynamically setting the threshold by learning the maximum natural decay rate under normal operating conditions online and adding a safety margin, the detection standard can adapt to different lawns and operating conditions, effectively balancing detection sensitivity and false alarm rate, and reducing misjudgments and missed judgments caused by environmental factors.
[0023] A second aspect of this invention provides an intelligent lithium-ion battery-powered lawnmower automatic obstacle avoidance system. The system includes a lawnmower body, an ultrasonic sensor, and a control terminal, comprising:
[0024] The first determining module is used to determine high-frequency noise in the echo signal based on the echo signal received by the ultrasonic sensor.
[0025] The second determining module is used to determine the sweeping frequency of the grass blades in front of the lawnmower body based on the amplitude variation frequency of high-frequency clutter.
[0026] The third determining module is used to determine that there is a hard obstacle covered by grass blades in front of the lawnmower when the rate of decrease of the sweeping frequency during the preset forward travel time exceeds the preset rate threshold.
[0027] The fourth determining module is used to determine the current distance between the hard obstacle and the lawnmower based on the starting time when the rate of decrease exceeds the preset rate threshold and the real-time travel speed of the lawnmower body.
[0028] The control module is used to control the lawnmower to perform avoidance actions based on the current distance.
[0029] A third aspect of the present invention provides a processing apparatus, the processing apparatus comprising:
[0030] At least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method proposed in the first aspect of the present invention.
[0031] A fourth aspect of the present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method as described in the first aspect of the present invention. Attached Figure Description
[0032] Figure 1 This is a flowchart illustrating an automatic obstacle avoidance method for an intelligent lithium-ion battery lawnmower proposed in this application.
[0033] Figure 2 This is a schematic diagram of the structure of an intelligent lithium-ion battery lawnmower automatic obstacle avoidance system proposed in this application.
[0034] Figure 3 This is a schematic diagram of the structure of a processing device proposed in this application. Detailed Implementation
[0035] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0036] This embodiment provides an intelligent lithium-ion battery-powered lawnmower automatic obstacle avoidance system, including a lawnmower body, four ultrasonic sensors mounted on the lawnmower body (the sensors are horizontally and evenly arranged with a beam angle of 30°), a vibration sensor mounted on the main beam of the lawnmower chassis, a brushless DC motor and motor driver for driving the rear wheels and steering wheels, and a microcontroller system as the control terminal. The ultrasonic sensors are connected to the controller after signal amplification and analog-to-digital conversion; the vibration sensors communicate with the controller via an SPI interface; the driver receives PWM signals to control the motor speed and steering angle. Firmware is burned into the Flash memory of the control terminal, and when executed, this program implements the method of this invention.
[0037] This embodiment provides an automatic obstacle avoidance method for an intelligent lithium-ion battery-powered lawnmower. Please refer to [link / reference]. Figure 1 This includes the following steps:
[0038] S101: Based on the echo signal received by the ultrasonic sensor, determine the high-frequency noise in the echo signal.
[0039] Understandably, as the lawnmower moves, ultrasonic sensors mounted on the machine emit ultrasonic pulses forward and receive reflected echoes from objects in the area ahead. In addition to direct reflections from the ground and static obstacles, the grass blades experience minute, rapid vibrations due to airflow and machine movement. These vibrations modulate the reflected echoes, producing higher-frequency fluctuations in the echo signal compared to a stable background.
[0040] In this step, the echo signals received by the sensor are processed using methods such as frequency domain filtering or time domain analysis. For example, Fast Fourier Transform (FFT) can be used for spectral analysis, or specific frequency bands can be directly extracted using bandpass filters. Wavelet packet decomposition and other time-frequency analysis methods can also be used to separate the signal components with frequencies higher than the normal background reflection of the grass and mainly associated with the rapid movement of the grass blades. This part of the signal is defined as high-frequency clutter. High-frequency clutter contains real-time dynamic information of the grass blades in front and becomes the basis for subsequent analysis of the grass blade movement state. The relatively low-frequency signals mainly reflect the echoes of fixed ground or large obstacles. The two types of signals are effectively distinguished.
[0041] During operation, lawnmowers experience mechanical vibrations due to factors such as the operation of the drive motor, the cutting action of the blades, and uneven contact between the wheels and the ground. These vibrations are transmitted to ultrasonic sensors mounted on the machine, causing slight shifts or angular changes in the sensor's transmitting / receiving surfaces. This introduces amplitude and phase fluctuations synchronized with the vibrations when receiving echoes, creating interference. For example, as one implementation method, high-frequency noise can be identified by using vibration sensors combined with vibration characteristics.
[0042] S1011: Based on a vibration sensor, acquire vibration characteristic signals of the lawnmower body during operation.
[0043] Understandably, vibration characteristic signals record the instantaneous intensity, frequency components, and their changes over time of the machine's vibration in the form of time-domain waveforms. For example, a vibration sensor can collect the root mean square value of triaxial acceleration data as the vibration characteristic signal, with a sampling rate set to 1kHz to ensure the capture of mid-to-high frequency vibrations related to the machine's rotational speed.
[0044] S1012: Based on the vibration characteristic signal and the echo signal, determine the vibration interference signal that changes synchronously with the vibration characteristic signal from the echo signal.
[0045] The echo signals received by ultrasonic sensors contain both effective information reflected from objects in front, such as the ground, grass, and obstacles, and additional wave components introduced by the vibration of the machine body. Since vibration interference is directly caused by the movement of the machine body, its temporal fluctuations are highly synchronized and waveform-similar to the vibration characteristic signals.
[0046] Using the vibration characteristic signal as a reference template, it can be compared and analyzed with the echo signal. Specifically, based on time alignment, signal processing techniques such as correlation analysis, adaptive filtering, or coherent detection can be employed. For example, a Normalized Least Mean Square (NLMS) adaptive filter can be used, with the vibration signal as the reference input, to iteratively eliminate correlation interference in the echo. Alternatively, the coherence coefficient of the two signals can be calculated, and signal components that change synchronously with the vibration characteristic signal, i.e., whose amplitude fluctuations are consistent, can be selected from the echo signal and labeled as vibration interference signals. This process essentially identifies the vibration component in the echo signal and extracts or marks it from the complex mixed echo.
[0047] Specifically, the vibration characteristic signal and the echo signal can be divided into multiple time segments. If, in any time segment, the amplitude of the vibration characteristic signal exceeds a first limit and the amplitude fluctuation of the corresponding segment of the echo signal is more similar to the amplitude fluctuation of the vibration characteristic signal than a second limit, then the signal component within the time segment is removed from the echo signal.
[0048] Understandably, vibration characteristic signals and ultrasonic echo signals have a temporal correspondence, but their characteristics of change over time differ. To accurately determine the impact of vibration on the echo within a local area, the control terminal first divides both the vibration characteristic signal and the echo signal into multiple continuous time segments with the same start and end times and the same duration. The length of each segment can be preset according to the typical period and response speed of the mechanical vibration, ensuring relatively stable vibration characteristics within a single segment while also capturing richer details of the fluctuations.
[0049] Specifically, the first threshold is an empirical intensity threshold used to distinguish between minor background vibrations that do not cause substantial interference during normal operation and stronger vibrations that may cause significant echo distortion, such as impact vibrations caused by driving over potholes or sudden acceleration of a motor. For example, the first threshold can be set as 1.5 times the long-term average of the root mean square (RMS) value of the vibration signal. When the RMS value within a segment exceeds this threshold, it is considered a strong vibration. If the amplitude of the vibration characteristic signal within a segment does not exceed the first threshold, the vibration of the machine is considered weak, and its impact on the ultrasonic echo is negligible; the echo signal of that segment is directly retained. Only when the vibration amplitude of a segment exceeds the first threshold does it proceed to the next stage of similarity judgment. This step reduces unnecessary signal comparison calculations and avoids mistakenly removing normal grass blade echo variations as interference when the vibration is already very weak.
[0050] When the amplitude of the vibration characteristic signal exceeds a first threshold during a certain time segment, the control terminal further evaluates the similarity between the amplitude fluctuations of the echo signal and the amplitude fluctuations of the vibration characteristic signal within that segment. Amplitude fluctuation refers to the trajectory shape of the signal envelope or energy fluctuating over time; it does not consider absolute amplitude but only focuses on the waveform structure of the fluctuation. Similarity can be evaluated using correlation coefficients, such as normalizing the waveforms of the vibration characteristic signal and the echo signal to obtain the Pearson correlation coefficient; alternatively, dynamic time warping distance, coherence coefficient, or other waveform matching metrics can be used. These algorithms can quantify the shape consistency of two curves. For example, the Pearson correlation coefficient can be chosen as the similarity index, with a second threshold set to 0.8, meaning a correlation coefficient exceeding 0.8 is considered highly similar.
[0051] The preset second threshold serves as the similarity threshold. If the calculated similarity value exceeds the second threshold, it indicates that the fluctuation pattern of the echo signal within the current segment is highly consistent with the fluctuation pattern of the body vibration signal. This fluctuation in the echo is highly likely to originate from vibration interference, rather than reflection changes caused by the independent movement of the grass blades in front. Conversely, if the similarity is below the second threshold, it means that even if the vibration is strong, the fluctuation of the echo is not dominated by vibration, but may be caused by the sweeping characteristics of the grass blades themselves or other environmental factors. Such signal components should be preserved.
[0052] S1013: Based on the remaining signal after removing vibration interference signals from the echo signal, identify the signal component in the remaining signal with a frequency higher than the preset grass blade disturbance frequency, and use it as high-frequency noise.
[0053] After identifying the vibration interference signal, it is removed from the original echo signal, for example, through subtraction or notch filtering in the time / frequency domain. For the segments marked for removal, the sampling points within those segments can be set to zero, or linear interpolation can be performed using signals from adjacent undisturbed segments to maintain continuity, thus obtaining the remaining signal. At this point, the remaining signal essentially no longer contains spurious fluctuations caused by the organism's own vibrations, and mainly retains the true reflection information of ultrasound in the grassland environment, including stable ground background echoes, modulation fluctuations caused by grass sweeping, and possible reflection components from hard obstacles.
[0054] To specifically extract the signal components characterizing the high-frequency micro-motion of grass blades, the control terminal performs frequency domain separation on the remaining signal according to a preset frequency division standard. The preset grass blade disturbance frequency is an empirical limit used to distinguish between the relatively low-frequency natural disturbances of grass blades in a free-swinging state and the high-frequency vibrations generated when grass blades collide with hard objects. For example, the preset grass blade disturbance frequency can be obtained through statistical measurements on typical lawns, and is usually set between 10Hz and 20Hz, preferably 15Hz. The fundamental frequency and main harmonics of grass blades in free-swinging generally do not exceed 15Hz, while high-frequency vibrations above 20Hz are generated when obstructed by hard objects. Extracting the signal components with frequencies higher than this limit from the remaining signal constitutes the desired high-frequency clutter. This high-frequency clutter corresponds to the rapid vibration reflection characteristics generated when grass blades are obstructed by hard obstacles or undergo more abrupt deformation.
[0055] S102: Determine the sweeping frequency of the grass blades in front of the lawnmower body based on the amplitude variation frequency of high-frequency noise.
[0056] Because high-frequency clutter is not continuously stable, its amplitude increases and decreases periodically as the grass blades swing back and forth. When the grass blades bend towards the sensor, the reflective area and echo energy are relatively large, and the clutter amplitude increases; the opposite is true when the grass blades bounce back. Therefore, the frequency of the high-frequency clutter amplitude fluctuation over time directly corresponds to the frequency of the grass blades sweeping back and forth in physical space.
[0057] Specifically, by tracking the amplitude variation of high-frequency clutter, the periodic characteristics of this amplitude fluctuation are extracted, and the reciprocal of the obtained period is used as the sweeping frequency of the grass blades. To avoid instantaneous interference, the reciprocals of multiple consecutive periods can be averaged or filtered by median to obtain a stable sweeping frequency estimate. The magnitude of the sweeping frequency depends on factors such as the elasticity of the grass blades themselves, the wind force they are subjected to, and mechanical disturbances. When there is no rigid constraint in front of the lawnmower, the grass blades can swing freely, and the sweeping frequency varies randomly within a certain range; however, when the roots or middle of the grass blades are blocked by rigid obstacles, their swing range is limited, and the sweeping frequency will show a noticeable decrease.
[0058] For example, in this embodiment, step S102 may include the following steps:
[0059] S1021: Determine the target envelope trajectory based on high-frequency clutter, where the target envelope trajectory is used to characterize amplitude fluctuations.
[0060] High-frequency noise is a signal that fluctuates rapidly over time, with its instantaneous amplitude constantly changing. These amplitude changes are not random, but rather carry the pattern of periodic increase and decrease in reflected energy during the sweeping of grass blades.
[0061] Specifically, this can be achieved through envelope detection of the high-frequency clutter signal. For example, the absolute value of the high-frequency clutter signal can be taken first, and then a low-pass filter can be used to eliminate the rapid oscillation component of the signal itself, retaining the part with slowly changing amplitude. In this case, the cutoff frequency of the low-pass filter can be selected as 50Hz to retain the envelope change caused by the grass sweeping while filtering out the ripple near the ultrasonic carrier frequency; or the Hilbert transform can be used to obtain the magnitude of the analytic signal, directly obtaining the instantaneous amplitude curve. Regardless of the method used, the obtained target envelope trajectory is a curve that changes continuously with time, and the vertical coordinate value of each moment on the curve represents the magnitude of the high-frequency clutter at that moment. The peaks in this trajectory correspond to the moments when the grass reflection is strongest, and the troughs correspond to the moments when the reflection is weakest, and its fluctuation period directly reflects the physical rhythm of the grass sweeping back and forth.
[0062] S1022: The original sweeping period is obtained based on the time interval between adjacent amplitude peaks in the target envelope trajectory.
[0063] On the target envelope trajectory, the amplitude periodically reaches its maximum value, i.e., the amplitude peak. Each peak represents the position where the blade reaches the most favorable position for reflecting the echo during one swing, such as when the blade bends to its maximum extent towards the sensor. The time interval between two adjacent peaks is the time required for the blade to complete one complete back-and-forth swing, i.e., one original sweep cycle. In this step, a peak detection method is used to identify each peak point in the target envelope trajectory that meets certain height and interval conditions. For example, the minimum peak height threshold is set to 0.2 times the average value of the envelope, and the minimum peak interval is 10ms to eliminate false peaks. The time value corresponding to each peak point is recorded, and then the time difference between adjacent peaks is calculated sequentially. Since the swing of the blade is not absolutely uniform in the actual environment, the time interval between adjacent peaks may have slight differences. Therefore, the average value of multiple consecutive time intervals can be taken as the original sweep cycle at the current moment to improve stability and anti-interference ability.
[0064] This is the original sweeping cycle because the cycle value is taken directly from the echo signal and does not take into account the influence of the lawnmower's own movement on the sensing frequency. It reflects the apparent oscillation cycle observed from the sensor's perspective, rather than the actual physical oscillation cycle of the grass blades in a stationary reference frame.
[0065] S1023: Determine the periodic adjustment parameters based on the real-time travel speed of the lawnmower body.
[0066] Understandably, as the lawnmower moves forward continuously during operation, this motion causes the relative distance between the sensor and the grass blades in front to decrease. Due to the Doppler effect, when there is relative motion between the signal source and the observer, the frequency of change perceived by the observer will be shifted. Specifically, in this solution, the lawnmower's movement towards the grass blades causes the sensor to perceive a higher frequency of grass blade sweeping than the actual physical oscillation frequency of the grass blades, and correspondingly, the perceived sweeping cycle is shorter than the actual cycle.
[0067] To eliminate the perception bias caused by the movement of the lawnmower, a period adjustment parameter is calculated based on the real-time movement speed of the lawnmower itself. The magnitude of the adjustment parameter reflects the degree of influence of the current movement speed on the period measurement; that is, the higher the movement speed, the more significant the compression effect of the perceived period, and the larger the required adjustment range. A definite correspondence exists between the adjustment parameter and the real-time movement speed. This relationship can be derived through physical models, such as the Doppler formula based on the propagation speed of sound or mechanical waves in a medium, or a mapping can be established through pre-calibration experiments. For example, a simple linear Doppler compensation model can be used: defining the equivalent propagation speed c of grass blade waves in air, the period adjustment parameter k can be expressed as k = 1 + v / c, where v is the instantaneous movement speed of the lawnmower. This model is suitable for low-speed scenarios and can be replaced with a more accurate nonlinear model. The real-time movement speed can be obtained from the lawnmower's wheel speed sensor, motor encoder, or inertial navigation module.
[0068] S1024: Based on the period adjustment parameter, the original sweeping period is adjusted by stretching to determine the compensation sweeping period.
[0069] After obtaining the period adjustment parameter, it will be applied to the original sweeping period for scaling adjustment. That is, the original sweeping period is multiplied by or added to the correction factor corresponding to the adjustment parameter, thereby restoring the apparent period value from the sensor's perspective to the physical oscillation period of the grass blade in a stationary reference frame.
[0070] For example, if the period adjustment parameter is defined as a multiplicative factor greater than 1, then multiplying the original sweeping period by this factor yields a period value that is slightly longer than the original value, thereby compensating for the period compression effect caused by the travel speed. The adjusted period value is called the compensated sweeping period, which more accurately reflects the true oscillation rhythm of the grass blades themselves and eliminates the interference of the lawnmower's own movement on the measurement results.
[0071] S1025: Determine the sweeping frequency based on the compensated sweeping cycle.
[0072] Understandably, the compensated sweeping cycle is the actual time it takes for the grass blades to complete one full back-and-forth swing. Based on the fundamental physical relationship that frequency and cycle are reciprocals, this step directly takes the reciprocal of the compensated sweeping cycle to obtain the grass blade sweeping frequency. To avoid transient outliers, the frequency values calculated from multiple consecutive compensated cycles can be subjected to sliding median filtering or Kalman filtering to output a smooth sweeping frequency. When there is no hard constraint in front of the lawnmower, the grass blades swing freely, and the sweeping frequency is within a relatively high normal range. When the grass blades are physically obstructed by hard obstacles below or in front, their swing amplitude and speed are limited, and the sweeping frequency will show a detectable decrease. This is achieved through continuous monitoring of the sweeping frequency and its rate of change.
[0073] S103: When the rate at which the sweeping frequency decreases during a preset forward travel time exceeds a preset rate threshold, it is determined that there is a hard obstacle covered by grass blades in front of the lawnmower.
[0074] The lawnmower continuously monitors the dynamic changes in sweeping frequency while moving. The system sets a preset time window, i.e., a preset forward travel period, and calculates the rate at which the sweeping frequency decreases within this window; that is, how quickly the frequency decreases over time. This rate is called the reduction rate. Simultaneously, the system has a pre-determined and stored preset rate threshold, which represents the maximum possible rate of decrease in sweeping frequency under normal, unobstructed conditions on a lawn. For example, the preset forward travel period can be set to a 1-second time window. The reduction rate can be obtained by the absolute value of the linear regression slope of the sweeping frequency data points within this window; if the slope is negative, it is inverted.
[0075] For example, the preset rate threshold can be determined in the following way:
[0076] First, the maximum natural rate of decrease of the sweeping frequency is obtained during the normal working period after the lawnmower starts and no hard obstacles are detected. Then, based on the maximum natural rate of decrease and the preset safety margin, a preset rate threshold is determined.
[0077] Understandably, the initial period after a lawnmower starts typically lasts from the start of operation until the first encounter with a potential hard obstacle. During this time, the lawnmower travels in a normal grassy environment, with the grass blades moving freely without physical obstruction. Therefore, any decrease in sweeping frequency is a natural fluctuation, not caused by the constraint of a hard obstacle. This natural decrease can stem from various factors, such as localized thickening of grass blade density reducing airflow disturbance, slight undulations in the ground causing changes in the lawnmower's posture, or instantaneous changes in wind direction or speed. When there are no hard obstacles, the decrease in sweeping frequency is usually slow and limited in magnitude.
[0078] To capture the most drastic decay of the sweeping frequency under purely natural conditions, the control terminal continuously monitors changes in the sweeping frequency during normal operating hours and calculates the decay rate in real time for each moment using a specific calculation window. The calculation window can be the same as the aforementioned preset forward travel time period, such as a 1-second sliding window, updating the decay rate every 0.05 seconds, and then taking the maximum value over the entire time period. The maximum natural decay rate characterizes the maximum possible decrease in sweeping frequency under conditions without hard obstacles, and is a dynamic upper limit determined by both the overall lawn conditions and the current machine status.
[0079] Because the rate of decrease in sweeping frequency fluctuates randomly during actual operation, even without hard obstacles, the instantaneous rate of decrease may occasionally approach or even briefly reach the maximum natural rate of decrease in rare cases. If the maximum natural rate of decrease is directly set as the judgment threshold, the system may misjudge if it slightly exceeds this value due to random fluctuations, mistaking normal environmental changes for the presence of hard obstacles ahead, thus performing unnecessary avoidance actions and interfering with normal mowing operations.
[0080] To avoid such false triggers, this step introduces a preset safety margin. The safety margin is a positive constant, its value preset based on actual application requirements and tolerance. For example, the safety margin can be 0.5 Hz / s, and this value can be adjusted between 0.3 and 1.0 Hz / s to balance detection sensitivity and false alarm rate. The maximum natural descent rate obtained in the first step is added to the safety margin; the sum is the preset rate threshold. Only when the rate of decrease in the sweep frequency not only exceeds the historical highest value of normal natural fluctuations but also exceeds a manually set safety margin, does the system confirm that this descent cannot be explained by natural factors, thus determining that there is indeed a hard obstacle covered by grass ahead. To improve the reliability of the judgment, it can be required that the descent rate exceeds the threshold in multiple consecutive (e.g., 3) sliding windows before finally determining the existence of an obstacle, in order to eliminate instantaneous spike noise.
[0081] Optionally, after determining that there is a hard obstacle covered by grass blades in front of the lawnmower, the following steps may also be included:
[0082] S202: Determine the contour features of hard obstacles based on the decreasing rate change pattern of the sweeping frequency within a preset forward travel time period.
[0083] Understandably, the presence of a hard obstacle is determined by whether the rate of decrease in the sweeping frequency exceeds a preset threshold. Once its presence is confirmed, the control terminal no longer relies solely on the single value of the decrease rate, but further analyzes the overall trajectory of this decrease rate over a preset travel time period, i.e., the decrease rate change pattern. The decrease rate itself is a continuously changing quantity, recording the dynamic process of how quickly the sweeping frequency decays. As the lawnmower continues to move towards a hard object covered by grass, the constraint on the grass blades increases from weak to strong, and the decrease in sweeping frequency changes from slow to rapid, with the decrease rate exhibiting a specific growth curve over time. The shape of this curve is not fixed but is influenced by the surface shape of the obstacle.
[0084] For example, if the obstacle facing the lawnmower is a steep wall, the grass blades will be suddenly and forcefully blocked from their free state within a short distance, resulting in a very rapid increase in the descent rate over time, exhibiting a steep upward trend. If the obstacle is a gentle slope or a smooth protrusion, the constraint on the grass blades gradually strengthens, and the descent rate exhibits a slow climb or a pattern of initial slowness followed by rapid increase. When the obstacle surface has irregular bumps and depressions, the descent rate curve may show fluctuations or phased plateaus. In addition to the descent rate itself, the first and second time derivatives of the descent rate can be analyzed to more finely characterize the changes in the curve's shape.
[0085] For example, the acceleration characteristics of the rate of decrease can be determined based on the trajectory of the rate of decrease within a preset forward travel time. Then, based on the acceleration characteristics, the surface inclination of the hard obstacle facing the lawnmower body can be determined as a contour feature.
[0086] Understandably, after determining the presence of an obstacle, the control terminal does not only focus on the instantaneous value of the deceleration rate, but continuously records the complete trajectory of the deceleration rate over a preset forward travel time period. This trajectory depicts the evolution of the rate of decrease in the sweeping frequency over time. To extract dynamic information from this trajectory, the rate of change of the deceleration rate itself over time can be further calculated, i.e., the rate of change of the deceleration rate. Physically, if the deceleration rate is analogous to velocity, then this rate of change is acceleration. In practical implementation, the difference in deceleration rate between adjacent time points can be continuously calculated, or the deceleration rate curve can be differentiated once to obtain a time-varying acceleration feature sequence. For example, the first-order forward difference of the deceleration rate sequence can be calculated, and the result can be filtered using a moving average to obtain a smooth acceleration feature R(t). The sign of this acceleration feature reflects whether the deceleration rate is accelerating upwards or accelerating downwards, and its absolute value reflects the degree of abruptness of this change.
[0087] When a lawnmower travels towards a steep, hard obstacle, such as the edge of a rock vertically embedded in the turf, the grass blades suddenly encounter the hard, upright surface from a completely free state within a very short distance, and the space for swaying is instantly and drastically compressed. This sudden and forceful constraint causes the sweeping frequency to drop sharply within an extremely narrow window, which is reflected in the deceleration rate, which rises rapidly. The trajectory of the deceleration rate is extremely steep, and the corresponding acceleration characteristic shows a clear and continuous positive value. The larger the value, the closer the obstacle surface is to vertical.
[0088] Conversely, if the obstacle facing the lawnmower is a gently rising slope, such as tree roots gradually bulging up, the range of motion of the grass blades is gradually compressed, and the decrease in sweeping frequency continues over a longer distance. In this case, although the rate of decrease also gradually increases, the rate of increase is slow or even constant, and its acceleration characteristic is a small positive value or near zero. For obstacles with irregular surfaces or steep slopes, the acceleration characteristic may also show a transition from small to large. For example, the following mapping rule can be set: if R(t) > 0.8 Hz / s 2 If the surface tilt angle is greater than 60°, then -0.2 ≤ R(t) ≤ 0.8 Hz / s 2 The tilt angle is determined to be between 30° and 60°; if R(t) < -0.2Hz / s 2 The surface is judged to be smooth. The above thresholds can be adjusted according to the actual grass species and sensor characteristics.
[0089] S203: Adjust the motion parameters of the avoidance action based on the contour features.
[0090] If the contour features indicate that the obstacle's surface facing the lawnmower is relatively steep, the obstacle boundary is clear and the collision risk is high. The lawnmower needs to allow for a larger safety margin when maneuvering around it. Avoidance parameters can be adjusted by increasing the trigger steering distance threshold, increasing the steering angle to deviate from the obstacle earlier, or increasing the reverse distance during the reverse process to ensure the safety of the subsequent detour route. Conversely, if the contour features indicate that the obstacle surface is flat, perhaps a low mound or shallowly buried rocks, the lawnmower can maneuver around it more closely while maintaining a lower speed. In this case, the action parameters can be adjusted by reducing the steering angle, decreasing the detour radius, and appropriately increasing the travel speed to improve work efficiency while reducing missed areas caused by large detours.
[0091] Understandably, as the lawnmower approaches a hard obstacle covered in grass blades, the sweeping motion of the grass blades will be increasingly suppressed due to the physical obstruction, resulting in a significant and rapid decrease in the sweeping frequency. If the calculated rate of decrease exceeds a preset threshold, it indicates that the frequency attenuation cannot be explained by the natural disturbance of the grass, but rather by an obstacle that forces the grass blades to stop swinging freely. This confirms the presence of a hard obstacle covered in grass blades in front of the lawnmower.
[0092] S104: Based on the starting moment when the rate of decrease exceeds the preset rate threshold and the real-time travel speed of the lawnmower body, determine the current distance between the hard obstacle and the lawnmower.
[0093] Understandably, once an obstacle is detected, the system records the moment when the sweeping frequency reduction rate first exceeds a preset rate threshold as the start time. The start time represents the point at which, when the lawnmower reaches a specific position, the constraint effect of the obstacle on the grass blades begins to reach a level that can be stably detected. At this point, there is an initial distance between the lawnmower and the obstacle, which can be implicitly determined by the system state parameters at the start time.
[0094] After the initial moment, the lawnmower continues to move forward. This step uses the real-time speed of the lawnmower to calculate the displacement it has traveled from the initial moment to the current moment. Subtracting this displacement from the initial distance at the initial moment gives the remaining distance between the hard obstacle and the lawnmower at the current moment.
[0095] Specifically, in this embodiment, step S104 may include the following steps:
[0096] S1041: Determine the moment when the rate of decrease of the sweep frequency first exceeds the preset rate threshold, and use it as the initial moment.
[0097] Understandably, during the lawnmower's movement, the control terminal continuously monitors the rate of decrease in the sweeping frequency and compares the rate of decrease at each moment with a preset rate threshold. The rate of decrease is a continuous quantity that varies over time, and under normal, unobstructed conditions, its value usually remains below the threshold. As the lawnmower approaches a hard obstacle covered by grass blades, the grass blades are more constrained, the sweeping frequency begins to decrease more rapidly, and the rate of decrease increases accordingly. Once the rate of decrease changes from below the threshold to above the threshold, it indicates that the presence of the obstacle ahead has had a clearly detectable and significant impact on the grass sweeping.
[0098] Therefore, in this step, the time coordinate corresponding to the instant when the decreasing rate value first exceeds the preset rate threshold is recorded, and this is defined as the initial moment. This initial moment can be determined using a level-triggered method; that is, when the decreasing rate crosses the threshold from bottom to top, the current system timestamp t0 is recorded. To avoid repeated crossings caused by noise, a Schmitt trigger characteristic can be introduced, setting a hysteresis threshold. For example, the mower is considered to have exited only when the decreasing rate falls below the threshold by 0.2 Hz / s. The initial moment represents the lawnmower reaching a specific position where the inhibition of the grass blades by obstacles just exceeds the detection sensitivity, thus serving as a trigger for calculating the initial distance.
[0099] S1042: Obtain the initial deceleration rate and the lawnmower's travel speed.
[0100] After determining the initial moment, the control terminal synchronously retrieves two key instantaneous parameters for that moment from the signal processing module and the motion sensing module, including:
[0101] Decrease rate value: This refers to the specific magnitude of the rate at which the sweeping frequency decreases at the initial moment, reflecting the severity of the obstruction to the grass blade sweeping at that time. This value can be directly latched from the output value R0 at time t0 in the decrease rate calculation module.
[0102] Travel speed value: This refers to the instantaneous travel speed of the lawnmower at the initial moment, which reflects how quickly the lawnmower approaches an obstacle.
[0103] S1043: Based on the deceleration rate value and the travel speed value, retrieve the initial distance value from the pre-built obstacle distance lookup table.
[0104] The control terminal's memory stores a multi-dimensional obstacle distance reference table, which was established through prior field calibration experiments. For the specific calibration process, simulated hard obstacles can be placed at different known distances, and the lawnmower can move towards the obstacles at different speeds. The deceleration rate and travel speed values corresponding to the first time the deceleration rate exceeds a preset threshold in each trial are recorded, forming a set of data points. Through interpolation and surface fitting of a large number of data points, such as using thin-plate spline interpolation or bicubic spline interpolation methods, a continuous mapping table is generated, with the deceleration rate and travel speed values as inputs and the initial distance value as the output.
[0105] In actual online operation, the deceleration rate value and the travel speed value are used as lookup table keys to directly obtain the corresponding initial distance value by searching the lookup table.
[0106] S1044: Obtain the duration from the initial moment to the current moment, and record the change in the lawnmower's speed during the duration.
[0107] Understandably, from the initial moment, the system's internal timer begins accumulating time until the current moment; this period is the duration. Duration reflects the span of time the lawnmower has been moving forward since detecting an obstacle. Meanwhile, the lawnmower's speed is usually not constant and may fluctuate due to factors such as control commands, ground undulations, and motor response. Therefore, the system continuously records the lawnmower's instantaneous speed at a certain sampling frequency within the duration, forming a speed sequence arranged chronologically—a speed change record. This record meticulously depicts the lawnmower's actual movement within that time period.
[0108] S1045: Based on the time and speed change records, determine the amount of forward displacement of the lawnmower within the time period.
[0109] Understandably, according to kinematic principles, displacement is the integral of velocity over time. Therefore, by recording the duration and speed changes, the total forward displacement of the lawnmower from the initial moment to the current moment can be calculated. The specific calculation method depends on the format of the speed change data. Specifically, if the speed is sampled at a high frequency, numerical integration methods, such as trapezoidal integration or rectangular summation, can be used to accumulate the displacement within each small time interval to obtain the total displacement; if the speed change is gradual, the average speed over that duration can be approximated by multiplying the duration. The calculated result is the actual distance the lawnmower has moved closer to the obstacle since it was detected.
[0110] S1046: Subtract the displacement from the initial distance value to obtain the current distance.
[0111] The initial distance is the distance between the lawnmower and the obstacle at the initial moment, while the displacement is the distance the lawnmower has moved towards the obstacle since the initial moment. Because the lawnmower's forward movement continuously shortens the remaining distance, the actual distance at the current moment should equal the initial distance minus the displacement already traveled. The current distance is a dynamically changing value that decreases as the lawnmower continues to move forward, reflecting the remaining space between the obstacle and the lawnmower in real time.
[0112] S105: Based on the current distance, control the lawnmower to perform an avoidance maneuver.
[0113] After obtaining the current distance, the control terminal outputs corresponding commands to the lawnmower's drive and steering mechanisms based on preset obstacle avoidance strategies and distance thresholds. For example, when the calculated current distance is less than a certain safety threshold, the system controls the lawnmower to immediately decelerate, stop, and reverse to prevent a collision; if the current distance is still relatively far, the system can instruct the lawnmower to reduce its speed and make a small-angle turn to avoid the obstacle, minimizing missed areas while ensuring safety. Throughout the process, the current distance is continuously updated due to real-time movement, and the obstacle avoidance actions can be dynamically adjusted according to the actual proximity, achieving a complete control closed loop from obstacle perception to obstacle avoidance.
[0114] Based on the same inventive concept, please refer to Figure 2 This application also proposes an intelligent lithium-ion battery-powered lawnmower automatic obstacle avoidance system, which includes a lawnmower body, an ultrasonic sensor, and a control terminal, comprising:
[0115] The first determining module is used to determine high-frequency noise in the echo signal based on the echo signal received by the ultrasonic sensor.
[0116] The second determining module is used to determine the sweeping frequency of the grass blades in front of the lawnmower body based on the amplitude variation frequency of high-frequency clutter.
[0117] The third determining module is used to determine that there is a hard obstacle covered by grass blades in front of the lawnmower when the rate of decrease of the sweeping frequency during the preset forward travel time exceeds the preset rate threshold.
[0118] The fourth determining module is used to determine the current distance between the hard obstacle and the lawnmower based on the starting time when the rate of decrease exceeds the preset rate threshold and the real-time travel speed of the lawnmower body.
[0119] The control module is used to control the lawnmower to perform avoidance actions based on the current distance.
[0120] Based on the same inventive concept, embodiments of this application also propose a processing apparatus, which includes:
[0121] At least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, the instructions being executed by the at least one processor to enable the at least one processor to perform the automatic obstacle avoidance method for an intelligent lithium-ion battery lawnmower according to the embodiments of this application.
[0122] In addition, to achieve the above objectives, embodiments of this application also propose a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the automatic obstacle avoidance method for an intelligent lithium-ion battery lawnmower according to embodiments of this application.
[0123] The following is a detailed introduction to each component of the processing equipment:
[0124] The processor is the control center of the processing device. It can be a single processor or a collective term for multiple processing elements. For example, the processor can be one or more central processing units (CPUs), application-specific integrated circuits (ASICs), or one or more integrated circuits configured to implement embodiments of the present invention, such as one or more digital signal processors (DSPs), or one or more field-programmable gate arrays (FPGAs).
[0125] Alternatively, the processor can perform various functions of the processing device by running or executing software programs stored in memory and by calling data stored in memory.
[0126] The memory is used to store the software program that executes the solution of the present invention, and the execution is controlled by the processor. The specific implementation method can be referred to the above method embodiment, which will not be repeated here.
[0127] Optionally, the memory can be read-only memory (ROM) or other types of static storage devices capable of storing static information and instructions, random access memory (RAM) or other types of dynamic storage devices capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto. The memory can be integrated with the processor or exist independently and coupled to the processor through the interface circuit of the processing device; the embodiments of the present invention do not specifically limit this.
[0128] A transceiver is used to communicate with network devices or with terminal devices.
[0129] Optionally, the transceiver may include a receiver and a transmitter. The receiver is used to implement the receiving function, and the transmitter is used to implement the sending function.
[0130] Optionally, the transceiver can be integrated with the processor or exist independently and coupled to the processor through the router's interface circuit. This embodiment of the invention does not specifically limit this.
[0131] Figure 3 This is a schematic diagram of the structure of a processing device provided in an embodiment of the present invention. Exemplarily, this processing device may be a network device, or a chip (system) or other component or assembly that can be disposed in a network device. Figure 3 As shown, the processing device 300 may include a processor 301. Optionally, the processing device 300 may also include a memory 302 and / or a transceiver 303. The processor 301 is coupled to the memory 302 and the transceiver 303, for example, via a communication bus.
[0132] The following is combined Figure 3 A detailed description of each component of the processing equipment 300 is provided below:
[0133] The processor 301 is the control center of the processing device 300. It can be a single processor or a collective term for multiple processing elements. For example, the processor 301 can be one or more central processing units (CPUs), application-specific integrated circuits (ASICs), or one or more integrated circuits configured to implement embodiments of the present invention, such as one or more digital signal processors (DSPs), or one or more field-programmable gate arrays (FPGAs).
[0134] Alternatively, the processor 301 can perform various functions of the processing device 300 by running or executing software programs stored in the memory 302 and by calling data stored in the memory 302.
[0135] In a specific implementation, as one example, processor 301 may include one or more CPUs, for example... Figure 3 CPU0 and CPU1 are shown in the diagram.
[0136] In a specific implementation, as one embodiment, the processing device 300 may also include multiple processors. Each of these processors may be a single-core processor (single-CPU) or a multi-core processor (multi-CPU). Here, a processor may refer to one or more devices, circuits, and / or processing cores used for processing data (e.g., computer program instructions).
[0137] The memory 302 is used to store the software program that executes the solution of the present invention, and the processor 301 controls the execution. The specific implementation method can be referred to the above method embodiment, and will not be repeated here.
[0138] Optionally, the memory 302 may be a read-only memory (ROM) or other type of static storage device capable of storing static information and instructions, random access memory (RAM) or other type of dynamic storage device capable of storing information and instructions, or electrically erasable programmable read-only memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical discs, laser discs, optical discs, digital universal optical discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but not limited thereto. The memory 302 may be integrated with the processor 301 or exist independently, and may be connected via the interface circuit of the processing device 300. Figure 3 (Not shown in the image) is coupled to processor 301, and this embodiment of the invention does not specifically limit this.
[0139] Transceiver 303 is used for communication with other processing devices. For example, if processing device 300 is a terminal, transceiver 303 can be used to communicate with a network device or with another terminal device. As another example, if processing device 300 is a network device, transceiver 303 can be used to communicate with a terminal or with another network device.
[0140] Alternatively, transceiver 303 may include a receiver and a transmitter. Figure 3 (Not shown separately). The receiver is used to implement the receiving function, and the transmitter is used to implement the transmitting function.
[0141] Optionally, the transceiver 303 can be integrated with the processor 301, or it can exist independently and be connected via the interface circuit of the processing device 300. Figure 3(Not shown in the image) is coupled to processor 301, and this embodiment of the invention does not specifically limit this.
[0142] Understandable Figure 3 The structure of the processing device 300 shown does not constitute a limitation on the processing device. The actual processing device may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0143] Furthermore, the technical effects of the processing device 300 can be referred to the technical effects of the methods in the above-described method embodiments, and will not be repeated here.
[0144] It should be understood that the processor in the embodiments of the present invention can be a central processing unit (CPU), or it can 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. The general-purpose processor can be a microprocessor or any conventional processor.
[0145] It should also be understood that the memory in the embodiments of the present invention can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. The volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of random access memory (RAM) are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous linked dynamic random access memory (SLDRAM), and direct rambus RAM (DRRAM). The above embodiments can be implemented, in whole or in part, by software, hardware (such as circuitry), firmware, or any other combination thereof. When implemented in software, the above embodiments can be implemented, in whole or in part, as a computer program product. A computer program product includes one or more computer instructions or computer programs. When the computer instructions or computer programs are loaded or executed on a computer, all or part of the flow or function according to embodiments of the present invention is produced. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. Computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., infrared, wireless, microwave, etc.) means. A computer-readable storage medium can be any available medium that a computer can access, or a data storage device such as a server or data center that includes one or more sets of available media. Available media can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media. Semiconductor media can be solid-state drives (SSDs).
[0146] It should be understood that the term "and / or" in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. A and B can be singular or plural. Additionally, the character " / " in this article generally indicates an "or" relationship between the preceding and following related objects, but it can also represent an "and / or" relationship. Please refer to the context for a more accurate understanding.
[0147] In this invention, "at least one" refers to one or more items, and "more than one" refers to two or more items. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of a single item or a plurality of items. For example, at least one of a, b, or c can represent: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple. It should be understood that in various embodiments of this invention, the sequence number of the above processes does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this invention.
[0148] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
Claims
1. A method for automatic obstacle avoidance in an intelligent lithium-ion battery-powered lawnmower, characterized in that, An automatic obstacle avoidance system for an intelligent lithium-ion battery-powered lawnmower is provided. The system includes a lawnmower body, an ultrasonic sensor, and a control terminal. The method is executed by the control terminal and includes: Based on the echo signal received by the ultrasonic sensor, high-frequency noise in the echo signal is determined; Based on the amplitude variation frequency of the high-frequency noise, the sweeping frequency of the grass blades in front of the lawnmower body is determined. When the rate at which the sweeping frequency decreases during a preset forward travel time exceeds a preset rate threshold, it is determined that there is a hard obstacle covered by grass blades in front of the lawnmower. Based on the starting moment when the rate of decrease exceeds the preset rate threshold and the real-time travel speed of the lawnmower body, the current distance between the hard obstacle and the lawnmower is determined. Based on the current distance, control the lawnmower to perform an avoidance maneuver.
2. The automatic obstacle avoidance method for an intelligent lithium-ion battery-powered lawnmower according to claim 1, characterized in that, The system also includes a vibration sensor, which, based on the echo signal received by the ultrasonic sensor, determines high-frequency noise in the echo signal, including: Based on the vibration sensor, the vibration characteristic signals of the lawnmower body during operation are obtained; Based on the vibration characteristic signal and the echo signal, a vibration interference signal that changes synchronously with the vibration characteristic signal is determined from the echo signal; Based on the remaining signal after removing the vibration interference signal from the echo signal, the signal component with a frequency higher than the preset grass blade disturbance frequency in the remaining signal is identified as the high-frequency noise.
3. The automatic obstacle avoidance method for an intelligent lithium-ion battery-powered lawnmower according to claim 2, characterized in that, Based on the vibration characteristic signal and the echo signal, determine the vibration interference signal that changes synchronously with the vibration characteristic signal from the echo signal, including: The vibration characteristic signal and the echo signal are divided into multiple time segments; If, in any of the time segments, the amplitude of the vibration characteristic signal exceeds a first limit and the amplitude fluctuation of the corresponding segment of the echo signal is more similar to the amplitude fluctuation of the vibration characteristic signal than a second limit, then the signal component within the time segment is removed from the echo signal.
4. The automatic obstacle avoidance method for an intelligent lithium-ion battery-powered lawnmower according to claim 1, characterized in that, Determining the sweeping frequency of the grass blades in front of the lawnmower body based on the amplitude variation frequency of the high-frequency noise includes: Based on the high-frequency clutter, the target envelope trajectory is determined, wherein the target envelope trajectory is used to characterize amplitude fluctuations; The original sweeping period is obtained based on the time interval between adjacent amplitude peaks in the target envelope trajectory. Based on the real-time travel speed of the lawnmower body, the periodic adjustment parameters are determined; Based on the aforementioned period adjustment parameters, the original sweeping period is adjusted by stretching or contraction to determine the compensated sweeping period. The sweeping frequency is determined based on the compensated sweeping cycle.
5. The automatic obstacle avoidance method for an intelligent lithium-ion battery-powered lawnmower according to claim 1, characterized in that, Based on the starting moment when the rate of decrease exceeds the preset rate threshold and the real-time travel speed of the lawnmower body, the current distance between the hard obstacle and the lawnmower is determined, including: The moment when the rate of decrease of the sweeping frequency first exceeds the preset rate threshold is determined as the initial moment; Obtain the deceleration rate value and the travel speed value of the lawnmower body corresponding to the initial moment; Based on the decrease rate value and the travel speed value, the initial distance value is obtained by searching a pre-built obstacle distance lookup table; Acquire the duration from the initial moment to the current moment, and the record of the change in the travel speed of the lawnmower body during the duration; Based on the duration and the recorded changes in travel speed, the amount of forward displacement of the lawnmower within the duration is determined. The current distance is obtained by subtracting the displacement from the initial distance value.
6. The automatic obstacle avoidance method for an intelligent lithium-ion battery-powered lawnmower according to claim 1, characterized in that, After determining that there is a hard obstacle covered by grass blades in front of the lawnmower, the method further includes: Based on the decreasing rate change pattern of the sweeping frequency during the preset forward travel time period, the contour features of the hard obstacle are determined. Based on the contour features, the motion parameters of the avoidance action are adjusted.
7. The automatic obstacle avoidance method for an intelligent lithium-ion battery-powered lawnmower according to claim 6, characterized in that, Based on the decreasing rate change pattern of the sweeping frequency within the preset forward travel time period, the contour features of the rigid obstacle are determined, including: Based on the trajectory of the decrease rate change within the preset forward travel time period, the acceleration characteristics of the decrease rate are determined; Based on the acceleration characteristics, the surface inclination of the hard obstacle on the side facing the lawnmower body is determined as the contour feature.
8. The automatic obstacle avoidance method for an intelligent lithium-ion battery lawnmower according to claim 1, characterized in that, The preset rate threshold is dynamically determined in the following way: The maximum natural rate of decrease of the sweeping frequency was obtained during the normal working period of the lawnmower after it was started and no hard obstacles were detected. The preset rate threshold is determined based on the maximum natural descent rate and the preset safety margin.
9. An automatic obstacle avoidance system for an intelligent lithium-ion battery-powered lawnmower, characterized in that, The system includes a lawnmower body, ultrasonic sensors, and a control terminal, including: The first determining module is used to determine high-frequency noise in the echo signal based on the echo signal received by the ultrasonic sensor. The second determining module is used to determine the sweeping frequency of the grass blades in front of the lawnmower body based on the amplitude change frequency of the high-frequency noise. The third determining module is used to determine that there is a hard obstacle covered by grass blades in front of the lawnmower when the rate at which the sweeping frequency decreases during a preset forward travel time exceeds a preset rate threshold. The fourth determining module is used to determine the current distance between the hard obstacle and the lawnmower based on the starting time when the rate of decrease exceeds the preset rate threshold and the real-time travel speed of the lawnmower body. The control module is used to control the lawnmower to perform an avoidance action based on the current distance.
10. A processing apparatus, characterized in that, include: At least one processor; And, a memory communicatively connected to at least one of the processors; The memory stores instructions that can be executed by at least one of the processors, which are executed by at least one of the processors to enable at least one of the processors to perform an automatic obstacle avoidance method for an intelligent lithium-ion lawnmower as described in any one of claims 1-8.