A bicycle assistance method and associated apparatus

CN117657349BActive Publication Date: 2026-08-07HUAWEI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-08
Publication Date
2026-08-07

AI Technical Summary

Technical Problem

[0004]在自行车起步时,所产生的脉冲信号数量较少,数据处理设备在某些时间窗口中可接收到脉冲信号,在另外的时间窗口中则没接收到脉冲信号,这样会导致电机无法对自行车进行连续的加速

Benefits of technology

[0039]In this embodiment, during the user's use of the bicycle, the data processing device of the bicycle assist system can determine the user's instantaneous pedaling frequency based on the acquisition time of the first pulse signal and the first moment, wherein the first pulse signal can be used to indicate the user's first pedaling action on the bicycle. Next, the data processing device can process the rotational speed of the bicycle assist system's motor at the first moment to obtain a first threshold. Then, the data processing device can detect whether the user's instantaneous pedaling frequency is greater than the first threshold. If the user's instantaneous pedaling frequency is greater than the first threshold, the data processing device can make a first adjustment to the motor's rotational speed at the first moment, so that the motor accelerates the bicycle or does not accelerate the bicycle. If the user's instantaneous pedaling frequency is less than or equal to the first threshold, the data processing device can make a second adjustment to the motor's rotational speed at the first moment, so that the motor does not accelerate the bicycle. In the aforementioned process, the data processing device can solve for the user's instantaneous pedaling frequency on the bicycle, that is, the pedaling frequency of the user on the bicycle in an instant, based on the acquisition time of the first pulse signal and the first moment. Therefore, the data processing device can determine the user's riding intention in real time based on the user's instantaneous pedal cadence, and control the motor to accelerate or decelerate the bicycle accordingly. Thus, regardless of whether the bicycle is in any of the following states—starting, riding, or preparing to stop—the data processing device can determine the user's riding intention in real time and immediately accelerate or decelerate the bicycle, effectively reducing the latency of starting and stopping the assist, thereby improving the user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117657349B_ABST
    Figure CN117657349B_ABST
Patent Text Reader

Abstract

The application discloses a bicycle assisting method and a related device, which can reduce the starting assisting time delay and the stopping assisting time delay, thereby improving the user experience. The method of the application comprises the following steps: during the use of the bicycle by the user, the data processing device determines the instantaneous pedaling frequency of the user on the bicycle based on the acquisition time of the first pulse signal and the first time, and the first pulse signal can be used to indicate the first pedaling behavior of the user on the bicycle. Then, the data processing device processes the rotating speed of the motor at the first time, thereby obtaining the first threshold value. Then, the data processing device detects whether the instantaneous pedaling frequency of the user on the bicycle is greater than the first threshold value, if the instantaneous pedaling frequency of the user on the bicycle is greater than the first threshold value, the data processing device controls the motor to accelerate the bicycle or does not accelerate the bicycle, and if the instantaneous pedaling frequency of the user on the bicycle is less than or equal to the first threshold value, the data processing device controls the motor to not accelerate the bicycle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of transportation technology, and in particular to a bicycle assistance method and related equipment. Background Technology

[0002] Bicycles, as a means of transportation that can both provide exercise and cover a certain commuting distance, are widely used in daily life. To improve the user's riding experience, a new type of bicycle (also known as an electric-assisted bicycle) has emerged. This type of bicycle is equipped with a bicycle assist system, which can adjust the bicycle's speed to adapt to the user's riding intentions.

[0003] Currently, bicycle assist systems typically include sensors, data processing equipment, and a motor. When a user is using a bicycle, the sensors mounted on the bicycle capture the user's pedaling behavior, thereby generating corresponding pulse signals. For any given time window out of multiple consecutive time windows, if the data processing equipment receives a pulse signal from the sensor within that window, it can control the motor to accelerate the bicycle, i.e., provide assistance.

[0004] When a bicycle starts, the number of pulse signals generated is relatively small. The data processing device can receive pulse signals in some time windows but not in others, which prevents the motor from continuously accelerating the bicycle. To address this, the size of the time window can be increased. However, if the data processing device only controls the motor at the end of the time window, it results in excessive delays in the activation or deactivation of the assist function when the bicycle starts or stops, degrading the user experience. Summary of the Invention

[0005] This application provides a bicycle assistance method and related equipment, which can effectively reduce the delay in starting and stopping assistance, thereby improving the user experience.

[0006] A first aspect of this application provides a bicycle assistance method, the method comprising:

[0007] Once a user begins using the bicycle, the data processing equipment of the bicycle assist system controls the system's sensors to capture the user's pedaling actions in real time. Suppose that within a certain time period before the initial moment, the user performs multiple pedaling actions. The sensors can capture these actions and generate multiple pulse signals accordingly, with each pedaling action corresponding to one of these pulse signals. It should be noted that each time a pulse signal is generated, it is immediately sent to the data processing equipment so that the equipment can promptly record the acquisition time of the pulse signal. In this way, the data processing equipment can record the acquisition times of all these pulse signals.

[0008] At the first moment (also known as the current moment), the data processing device can identify the pulse signal whose acquisition time is closest to the first moment from among these multiple pulse signals as the first pulse signal (the first pulse signal can be used to indicate the user's first pedaling action on the bicycle; it can be understood that the first pulse signal can be called the latest pulse signal, i.e. the most recent pulse signal, and the first pedaling action can also be called the latest pedaling action, i.e. the pedaling action closest to the first moment), and calculate the user's instantaneous pedaling frequency on the bicycle based on the acquisition time of the first pulse signal and the first moment. This instantaneous pedaling frequency can be used to indicate the frequency at which the user pedals the bicycle in an instant.

[0009] After obtaining the user's instantaneous cadence on the bicycle, the data processing device can calculate the rotational speed of the bicycle's power-assist system motor at that moment (also known as the motor's current rotational speed). This calculation yields a first threshold, which can be used to determine the user's riding intention at that moment. After obtaining the first threshold, the data processing device can detect whether the user's instantaneous cadence exceeds the first threshold to preliminarily determine whether the user intends to accelerate the bicycle at that moment.

[0010] If the user's instantaneous pedaling cadence exceeds a first threshold, the data processing device can initially determine that the user intends to accelerate the bicycle at that moment. Therefore, the data processing device can further determine the user's riding intention. If the data processing device ultimately determines that the user intends to accelerate the bicycle at that moment, it can make a third adjustment to the motor's speed at that moment to accelerate the bicycle. If the data processing device ultimately determines that the user does not intend to accelerate the bicycle at that moment, it can make a second adjustment to the motor's speed at that moment to prevent the motor from accelerating the bicycle. It is understood that the aforementioned first adjustment includes the second and third adjustments.

[0011] If the user's instantaneous pedal frequency is less than or equal to the first threshold, the data processing device can ultimately determine that the user does not want to accelerate the bicycle at the first moment. The data processing device can then make a second adjustment to the motor speed at the first moment so that the motor does not accelerate the bicycle.

[0012] As can be seen from the above method, during the user's use of the bicycle, the data processing device of the bicycle assist system can determine the user's instantaneous pedaling frequency based on the acquisition time of the first pulse signal and the first moment. The first pulse signal can be used to indicate the user's first pedaling action. Next, the data processing device can process the rotational speed of the bicycle assist system's motor at the first moment to obtain a first threshold. Then, the data processing device can detect whether the user's instantaneous pedaling frequency is greater than the first threshold. If the user's instantaneous pedaling frequency is greater than the first threshold, the data processing device can make a first adjustment to the motor's rotational speed at the first moment, so that the motor accelerates the bicycle or does not accelerate the bicycle. If the user's instantaneous pedaling frequency is less than or equal to the first threshold, the data processing device can make a second adjustment to the motor's rotational speed at the first moment, so that the motor does not accelerate the bicycle. In the aforementioned process, the data processing device can solve for the user's instantaneous pedaling frequency, i.e., the frequency of the user's pedaling on the bicycle in an instant, based on the acquisition time of the first pulse signal and the first moment. Therefore, the data processing device can determine the user's riding intention in real time based on the user's instantaneous pedal cadence, and control the motor to accelerate or decelerate the bicycle accordingly. Thus, regardless of whether the bicycle is in any of the following states—starting, riding, or preparing to stop—the data processing device can determine the user's riding intention in real time and immediately accelerate or decelerate the bicycle, effectively reducing the latency of starting and stopping the assist, thereby improving the user experience.

[0013] In one possible implementation, determining the user's instantaneous cadence on the bicycle based on the acquisition time of the first pulse signal and the first moment includes: if the difference between the acquisition time of the first pulse signal and the first moment is less than a second threshold, then the difference between the acquisition time of the first pulse signal and the first moment is calculated to obtain the user's instantaneous cadence on the bicycle; or, if the difference between the acquisition time of the first pulse signal and the first moment is greater than or equal to the second threshold, then zero is taken as the instantaneous cadence. In the aforementioned implementation, after determining the first pulse signal, the data processing device can first calculate the difference between the acquisition time of the first pulse signal and the first moment, and detect whether the difference between the acquisition time of the first pulse signal and the first moment is less than a preset second threshold, thereby detecting whether the user's instantaneous cadence on the bicycle is a valid cadence. If the difference between the acquisition time of the first pulse signal and the first moment is less than the second threshold, the data processing device can determine that the user's instantaneous cadence on the bicycle is a valid cadence, and the data processing device can take the reciprocal of the difference between the acquisition time of the first pulse signal and the first moment as the user's instantaneous cadence on the bicycle. If the difference between the acquisition time of the first pulse signal and the first moment is greater than or equal to the second threshold, the data processing device can determine that the user's instantaneous pedal frequency on the bicycle is an invalid pedal frequency. The data processing device then sets the user's instantaneous pedal frequency on the bicycle to zero, so that the instantaneous pedal frequency is less than or equal to the first threshold. Therefore, it can be seen that, with the cooperation of the first and second thresholds, the data processing device can ensure the continuity of the motor output.

[0014] In one possible implementation, determining the first threshold based on the motor's rotational speed at the first moment includes: determining the first threshold based on the motor's rotational speed at the first moment and the transmission ratio between the bicycle's sprocket and the motor. In the aforementioned implementation, the data processing device can acquire the motor's rotational speed at the first moment, a preset floating ratio, and a preset transmission ratio between the sprocket and the motor, and then multiply the motor's rotational speed at the first moment, the floating ratio, and the transmission ratio between the sprocket and the motor to accurately obtain the first threshold.

[0015] In one possible implementation, if the instantaneous cadence is greater than a first threshold, a first adjustment is made to the motor speed at the first moment to accelerate or not accelerate the bicycle. This includes: if the instantaneous cadence is greater than the first threshold and the motor speed at the first moment is less than a third threshold, a third adjustment is made to the motor speed at the first moment to accelerate the bicycle; or, if the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the user's average cadence on the bicycle is greater than the first threshold, a third adjustment is made to the motor speed at the first moment to accelerate the bicycle; or, if the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the average cadence is less than or equal to the first threshold, a second adjustment is made to the motor speed at the first moment to prevent the motor from accelerating the bicycle; wherein the average cadence is determined based on the acquisition time of the first pulse signal and the acquisition time of the second pulse signal, and the second pulse signal is used to indicate the user's second pedaling action on the bicycle. In the aforementioned implementation, after determining that the user's instantaneous pedaling frequency on the bicycle is greater than a first threshold, the data processing device can detect whether the motor's rotational speed at the first moment is less than a preset third threshold to determine whether the user has put the bicycle in a high-speed state. If the motor's rotational speed at the first moment is less than the third threshold, the data processing device can determine that the bicycle is not in a high-speed state, and therefore can ultimately determine that the user wants to accelerate the bicycle at the first moment. The data processing device can then make a third adjustment to the motor's rotational speed at the first moment to accelerate the bicycle. If the motor's rotational speed at the first moment is greater than or equal to the third threshold, the data processing device can determine that the bicycle is in a high-speed state. Therefore, the data processing device can acquire the acquisition time of the second pulse signal. The second pulse signal (also known as the previous pulse signal) can be used to indicate the user's second pedaling behavior on the bicycle (also known as the previous pedaling behavior). The acquisition time of the second pulse signal and the acquisition time of the first pulse signal are calculated to obtain the user's average pedaling frequency on the bicycle. This average pedaling frequency can be used to indicate the user's pedaling frequency on the bicycle over a period of time. After obtaining the user's average pedal frequency on the bicycle, the data processing device can detect whether the average pedal frequency is greater than a first threshold to determine whether the user has caused vibration to the bicycle while it is traveling at high speed. If the user's average pedal frequency is greater than the first threshold, the data processing device can determine that the user has not caused vibration to the bicycle while it is traveling at high speed, but rather has pedaled while it is traveling at high speed. Therefore, it can be ultimately determined that the user intends to accelerate the bicycle at the first moment, and the data processing device can make a third adjustment to the motor speed at the first moment to make the motor accelerate the bicycle.If the user's average pedal cadence is less than or equal to the first threshold, the data processing device can determine that the user has caused vibrations to the bicycle while it is traveling at high speed. Therefore, it can ultimately determine that the user does not intend to accelerate the bicycle at the first moment. The data processing device can then make a second adjustment to the motor speed at the first moment to prevent the motor from accelerating the bicycle. Thus, by combining the first, second, and third thresholds, the data processing device, after multiple judgments, can accurately identify the user's true riding intention—that is, whether the user truly wants to accelerate the bicycle—and thereby control the motor to accelerate or stop accelerating the bicycle.

[0016] In one possible implementation, the average cadence is calculated based on the difference between the acquisition time of the first pulse signal and the acquisition time of the second pulse signal. In the aforementioned implementation, after acquiring the second pulse signal, which can be used to indicate the user's second pedaling action on the bicycle, the data processing device can calculate the difference between the acquisition time of the second pulse signal and the acquisition time of the first pulse signal, and then use the reciprocal of the difference between the acquisition time of the second pulse signal and the acquisition time of the first pulse signal as the user's average cadence on the bicycle.

[0017] In one possible implementation, the third adjustment to the motor's rotational speed at the first moment to accelerate the bicycle includes: acquiring N rotational speed ranges, each corresponding to one of N levels of amplification processing, where N ≥ 2; after determining that the motor's rotational speed at the first moment falls within the i-th rotational speed range, the motor's rotational speed at the first moment is amplified by the i-th level, so that the rotational speed of the bicycle wheels is amplified by the i-th level, i = 1, ..., N. In the aforementioned implementation, after determining that the user wants to accelerate the bicycle at the first moment, the data processing device can first acquire the preset N rotational speed ranges, and each of the N rotational speed ranges corresponds one-to-one with the preset N levels of amplification processing. It should be noted that the N levels of amplification processing can be understood as N degrees of amplification processing. After determining that the motor's speed at the first moment falls within the i-th speed range, the data processing device can increase the motor's speed at the first moment by the i-th level. Since the bicycle wheel's speed increases with the motor's speed at the first moment, this is equivalent to the data processing device increasing the bicycle wheel's speed by the i-th level through the motor. In other words, the increased motor speed at the first moment is equivalent to the increased bicycle wheel speed. Therefore, when accelerating the bicycle using the motor, the data processing device can increase the motor's speed at the first moment to different degrees based on the motor's current speed. For example, a smaller increase can be given when the motor's speed is high at the first moment, and a larger increase can be given when the motor's speed is low, etc. This allows the motor to provide appropriate acceleration for the bicycle, providing a suitable experience for the user while ensuring user safety.

[0018] In one possible implementation, increasing the motor's rotational speed at the first moment by the i-th level includes: acquiring a smoothness parameter and increasing the motor's rotational speed at the first moment by the i-th level based on the smoothness parameter. In the aforementioned implementation, the data processing device can also receive a smoothness parameter input by the user. The smoothness parameter indicates the smoothness (speed) of the motor's rotational speed increase process. A larger smoothness parameter indicates that the user wants the motor's rotational speed to increase by the i-th level more quickly, while a smaller smoothness parameter indicates that the user wants the motor's rotational speed to increase by the i-th level more slowly. Therefore, the data processing device can increase the motor's rotational speed by the i-th level at the first moment according to the user's input.

[0019] In one possible implementation, a second adjustment to the motor's rotational speed at a first moment to prevent the motor from accelerating the bicycle includes: the data processing device shutting down the motor so that the motor does not accelerate the bicycle.

[0020] A second aspect of this application provides a bicycle assist device, comprising: a first determining module, configured to determine the instantaneous pedaling frequency of a user on a bicycle based on the acquisition time of a first pulse signal and a first moment, wherein the first pulse signal is used to indicate a first pedaling action of the user on the bicycle, and the first pedaling action is the pedaling action closest to the first moment; a second determining module, configured to determine a first threshold based on the rotational speed of a motor at the first moment; and a first adjusting module, configured to, if the instantaneous pedaling frequency is greater than the first threshold, perform a first adjustment to the rotational speed of the motor at the first moment, so that the motor accelerates the bicycle or does not accelerate the bicycle; or, a second adjusting module, configured to, if the instantaneous pedaling frequency is less than or equal to the first threshold, perform a second adjustment to the rotational speed of the motor at the first moment, so that the motor does not accelerate the bicycle.

[0021] As can be seen from the above device, during the user's use of the bicycle, the data processing device of the bicycle assist system can determine the user's instantaneous pedaling frequency based on the acquisition time of the first pulse signal and the first moment. The first pulse signal can be used to indicate the user's first pedaling action. Next, the data processing device can process the rotational speed of the bicycle assist system's motor at the first moment to obtain a first threshold. Then, the data processing device can detect whether the user's instantaneous pedaling frequency is greater than the first threshold. If the user's instantaneous pedaling frequency is greater than the first threshold, the data processing device can make a first adjustment to the motor's rotational speed at the first moment, so that the motor accelerates the bicycle or does not accelerate the bicycle. If the user's instantaneous pedaling frequency is less than or equal to the first threshold, the data processing device can make a second adjustment to the motor's rotational speed at the first moment, so that the motor does not accelerate the bicycle. In the aforementioned process, the data processing device can solve for the user's instantaneous pedaling frequency, i.e., the frequency of the user's pedaling on the bicycle in an instant, based on the acquisition time of the first pulse signal and the first moment. Therefore, the data processing device can determine the user's riding intention in real time based on the user's instantaneous pedal cadence, and control the motor to accelerate or decelerate the bicycle accordingly. Thus, regardless of whether the bicycle is in any of the following states—starting, riding, or preparing to stop—the data processing device can determine the user's riding intention in real time and immediately accelerate or decelerate the bicycle, effectively reducing the latency of starting and stopping the assist, thereby improving the user experience.

[0022] In one possible implementation, the first determining module is configured to: if the difference between the acquisition time of the first pulse signal and the first moment is less than a second threshold, calculate the difference between the acquisition time of the first pulse signal and the first moment to obtain the user's instantaneous pedal frequency on the bicycle; or, if the difference between the acquisition time of the first pulse signal and the first moment is greater than or equal to the second threshold, determine that the instantaneous pedal frequency is less than or equal to the first threshold.

[0023] In one possible implementation, the first determining module is used to determine the user's instantaneous pedal frequency on the bicycle as the reciprocal of the difference between the acquisition time of the first pulse signal and the first time.

[0024] In one possible implementation, the second determining module is used to determine the first threshold based on the rotational speed of the motor at a first moment and the transmission ratio between the bicycle's wheel and the motor.

[0025] In one possible implementation, the first adjustment module is configured to: if the instantaneous cadence is greater than a first threshold and the motor speed at the first moment is less than a third threshold, then perform a third adjustment to the motor speed at the first moment to accelerate the bicycle; or, if the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the user's average cadence on the bicycle is greater than the first threshold, then perform a third adjustment to the motor speed at the first moment to accelerate the bicycle; or, if the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the average cadence is less than or equal to the first threshold, then perform a second adjustment to the motor speed at the first moment to prevent the motor from accelerating the bicycle; wherein the average cadence is determined based on the acquisition time of the first pulse signal and the acquisition time of the second pulse signal, and the second pulse signal is used to indicate the user's second pedaling action on the bicycle.

[0026] In one possible implementation, the average cadence is calculated based on the difference between the acquisition time of the first pulse signal and the acquisition time of the second pulse signal.

[0027] In one possible implementation, the first adjustment module is used to: obtain N speed ranges, each of which corresponds one-to-one with an increase processing level of N, where N ≥ 2; after determining that the motor speed at the first moment is within the i-th speed range, increase the motor speed at the first moment by the i-th level, so that the motor increases the speed of the bicycle wheel by the i-th level, where i = 1, ..., N.

[0028] In one possible implementation, a first adjustment module is used to acquire a smoothness parameter and, based on the smoothness parameter, increase the motor speed at the first moment by the i-th level.

[0029] In one possible implementation, a first or second adjustment module is used to shut down the motor so that it does not accelerate the bicycle.

[0030] A third aspect of this application provides a bicycle assist device, which includes a memory and a processor; the memory stores code, and the processor is configured to execute the code. When the code is executed, the bicycle assist device performs the method described in the first aspect or any possible implementation of the first aspect.

[0031] A fourth aspect of this application provides a motor control system, characterized in that the system includes sensors and a bicycle assist device as described in the third aspect, the bicycle assist device being used to control the motor.

[0032] A fifth aspect of this application provides a bicycle assistance system, characterized in that the system includes a sensor, a motor, and a bicycle assistance device as described in the third aspect.

[0033] A sixth aspect of this application provides a bicycle that includes a frame, handlebars, seat, chainrings, wheels, pedals, and a bicycle assist system as described in the fifth aspect.

[0034] The seventh aspect of this application provides a chip system including a processor for calling a computer program or computer instructions stored in a memory, such that the processor performs the method as described in the first aspect or any possible implementation thereof.

[0035] In one possible implementation, the processor is coupled to the memory via an interface.

[0036] In one possible implementation, the chip system also includes a memory that stores computer programs or computer instructions.

[0037] An eighth aspect of this application provides a computer storage medium storing a computer program that, when executed by a computer, causes the computer to perform the method as described in the first aspect or any possible implementation of the first aspect.

[0038] A ninth aspect of this application provides a computer program product storing instructions that, when executed by a computer, cause the computer to perform the method as described in the first aspect or any possible implementation of the first aspect.

[0039] In this embodiment, during the user's use of the bicycle, the data processing device of the bicycle assist system can determine the user's instantaneous pedaling frequency based on the acquisition time of the first pulse signal and the first moment, wherein the first pulse signal can be used to indicate the user's first pedaling action on the bicycle. Next, the data processing device can process the rotational speed of the bicycle assist system's motor at the first moment to obtain a first threshold. Then, the data processing device can detect whether the user's instantaneous pedaling frequency is greater than the first threshold. If the user's instantaneous pedaling frequency is greater than the first threshold, the data processing device can make a first adjustment to the motor's rotational speed at the first moment, so that the motor accelerates the bicycle or does not accelerate the bicycle. If the user's instantaneous pedaling frequency is less than or equal to the first threshold, the data processing device can make a second adjustment to the motor's rotational speed at the first moment, so that the motor does not accelerate the bicycle. In the aforementioned process, the data processing device can solve for the user's instantaneous pedaling frequency on the bicycle, that is, the pedaling frequency of the user on the bicycle in an instant, based on the acquisition time of the first pulse signal and the first moment. Therefore, the data processing device can determine the user's riding intention in real time based on the user's instantaneous pedal cadence, and control the motor to accelerate or decelerate the bicycle accordingly. Thus, regardless of whether the bicycle is in any of the following states—starting, riding, or preparing to stop—the data processing device can determine the user's riding intention in real time and immediately accelerate or decelerate the bicycle, effectively reducing the latency of starting and stopping the assist, thereby improving the user experience. Attached Figure Description

[0040] Figure 1 A diagram illustrating the time window provided for related technologies;

[0041] Figure 2 Another illustration of the time window provided for related technologies;

[0042] Figure 3 A schematic diagram of a bicycle assist system provided in an embodiment of this application;

[0043] Figure 4 This is a schematic diagram of an application scenario of the bicycle assistance system provided in an embodiment of this application;

[0044] Figure 5 This is a schematic diagram illustrating another application scenario of the bicycle assistance system provided in the embodiments of this application;

[0045] Figure 6 A schematic diagram of the structure of the electronic device 600 provided in the embodiments of this application;

[0046] Figure 7A schematic flowchart of a bicycle assistance method provided in an embodiment of this application;

[0047] Figure 8 A schematic diagram of the first pulse signal provided in an embodiment of this application;

[0048] Figure 9 A schematic diagram of the transmission structure of a bicycle provided in an embodiment of this application;

[0049] Figure 10 A schematic diagram illustrating an application example of the bicycle assistance method provided in this application embodiment;

[0050] Figure 11 This is a schematic diagram of a bicycle assist device provided in an embodiment of this application. Detailed Implementation

[0051] This application provides a bicycle assistance method and related equipment, which can effectively reduce the delay in starting and stopping assistance, thereby improving the user experience.

[0052] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments described herein can be implemented in a sequence other than that illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or device that includes a series of steps or modules is not necessarily limited to those explicitly listed, but may include other steps or modules not explicitly listed or inherent to such processes, methods, products, or devices. The naming or numbering of steps appearing in this application does not imply that the steps in the method flow must be performed in the chronological / logical order indicated by the naming or numbering. The execution order of named or numbered process steps can be changed according to the desired technical purpose, as long as the same or similar technical effect is achieved. The division of units in this application is a logical division. In practical applications, there may be other division methods. For example, multiple units may be combined or integrated into another system, or some features may be ignored or not executed. In addition, the shown or discussed mutual coupling, direct coupling, or communication connection may be through some interface, and the indirect coupling or communication connection between units may be electrical or other similar forms, none of which are limited in this application. Furthermore, the units or sub-units described as separate components may or may not be physically separated, may or may not be physical units, or may be distributed among multiple circuit units. Some or all of the units can be selected to achieve the purpose of the solution in this application according to actual needs.

[0053] Bicycles, as a means of transportation that can both provide exercise and cover a certain commuting distance, are widely used in daily life. To improve the user's riding experience, a new type of bicycle (also known as an electric-assisted bicycle) has emerged. This type of bicycle is equipped with a bicycle assist system, which can adjust the bicycle's speed to adapt to the user's riding intentions.

[0054] Currently, bicycle power assist systems typically include sensors, data processing equipment, and a motor. For example... Figure 1 As shown ( Figure 1(A schematic diagram of a time window provided for related technologies) When a user is using a bicycle, if a sensor installed on the bicycle detects a pedaling action, it can generate a pulse signal accordingly. For any given time window among multiple consecutive time windows, if the data processing device receives a pulse signal from the sensor within that time window, it can control the motor to accelerate the bicycle, i.e., provide assistance. If no pulse signal is received from the sensor within that time window, it can control the motor not to accelerate the bicycle, i.e., stop providing assistance.

[0055] When a bicycle starts moving, the number of pulse signals generated is relatively small. The data processing equipment can receive these pulse signals in certain time windows, but not in others. This prevents the motor from continuously accelerating the bicycle. To address this, such as... Figure 2 As shown ( Figure 2 (Another schematic diagram of the time window provided for related technologies) The size of the time window can be increased. However, the data processing device only controls the motor at the end of the time window. This means that when the bicycle starts, even if the data processing device receives the first pulse signal within a certain time window, it still needs to wait until the end of that time window to control the motor to accelerate the bicycle. This results in an excessive delay in starting the assist. Similarly, when the bicycle is about to stop, even if the data processing device receives the last pulse signal within another time window, it still needs to wait until the end of the next time window to control the motor to stop accelerating the bicycle. This results in an excessive delay in stopping the assist, which degrades the user experience.

[0056] To address the aforementioned problems, this application provides a bicycle assistance method, which demonstrates a novel bicycle assistance mechanism. This method can be applied to, for example... Figure 3 The bicycle power assist system shown ( Figure 3 This is a schematic diagram of a bicycle assist system provided in an embodiment of this application. The bicycle assist system includes a sensor, a data processing device, and a motor. The data processing device is connected to the sensor and the motor, respectively. The sensor and motor are mounted on the bicycle, while the data processing device can be an electronic device mounted on the bicycle or a handheld or wearable electronic device. The following will describe two application scenarios of the bicycle assist system:

[0057] Figure 4 This is a schematic diagram of an application scenario for the bicycle assistance system provided in an embodiment of this application, such as... Figure 4As shown, the sensor of the bicycle assist system is installed on the bottom bracket of the bicycle. The motor of the bicycle assist system can also be installed in the bottom bracket of the bicycle and connected to the bicycle wheel. The data processing device of the bicycle assist system can also be installed in the bottom bracket of the bicycle, and the input end of the data processing device is connected to the sensor, and the output end of the data processing device is connected to the motor.

[0058] When a user starts using a bicycle, the data processing device automatically sends commands to the sensors via an interface without requiring the user to request the bicycle's power-assist system. This causes the sensors to capture the user's first pedal stroke, generate a corresponding first pulse signal, and send this signal to the data processing device. The data processing device then receives the first pulse signal from the sensor via the interface and records the moment of acquisition. Next, the data processing device processes the acquisition time and the first moment of acquisition using a memory and a processor, and controls the motor output (adjusting the motor speed at the first moment) based on the processing results. This allows the motor to either accelerate the bicycle or not. The memory in the data processing device can be a general term, including local storage and a database storing historical data. The database can reside on the data processing device or on another network server.

[0059] exist Figure 4 In the bicycle assist system shown, the data processing device can execute the bicycle assist method of the embodiments of this application.

[0060] Figure 5 This is a schematic diagram illustrating another application scenario of the bicycle assistance system provided in the embodiments of this application, such as... Figure 5 As shown, the sensor of the bicycle assist system is installed on the bottom bracket of the bicycle, and the motor of the bicycle assist system can also be installed in the bottom bracket of the bicycle and connected to the bicycle wheel. The data processing device of the bicycle assist system can also be worn on the user's body (e.g., the user's smartwatch, smart bracelet, etc.), and the input end of the data processing device is connected to the sensor, and the output end of the data processing device is connected to the motor.

[0061] When a user starts using a bicycle, they can send a request to the data processing device of the bicycle's power-assist system. This request allows the data processing device to send instructions to the sensors via an interface, causing the sensors to capture the user's first pedal stroke, generate a corresponding first pulse signal, and send this signal to the data processing device. The data processing device then receives the first pulse signal from the sensor via the interface and records the moment of acquisition. Next, the data processing device processes the acquisition time and the first moment of acquisition using a memory and a processor, and controls the motor output (adjusting the motor speed at the first moment) based on the processing results. This allows the motor to either accelerate the bicycle or not. The memory in the data processing device can be a general term, including local storage and a database storing historical data. The database can reside on the data processing device or on another network server.

[0062] exist Figure 5 In the bicycle assist system shown, the data processing device can execute the bicycle assist method of the embodiments of this application.

[0063] It should be noted that, for Figure 4 and Figure 5 In the system shown, a portion of the processor of the data processing device can be integrated on the sensor. This portion of the processor can acquire the first pulse signal at the first moment and process it, and send the processing result to another portion of the processor located on the data processing device, so that the other portion of the processor can control the output of the motor based on the processing result.

[0064] Furthermore, for Figure 4 and Figure 5 The data processing device in this context can be either an electronic device installed on a bicycle or a wearable electronic device (terminal device), such as a smartwatch or smart bracelet. To facilitate understanding of this electronic device, the following section will combine... Figure 6 Further introduction to electronic devices ( Figure 6 (A schematic diagram of the structure of the electronic device 600 provided in the embodiments of this application). Figure 6As shown, the electronic device 600 includes: an application processor 601, a microcontroller unit (MCU) 603, a memory 605, a modem 607, a radio frequency (RF) module 609, a Wireless-Fidelity (Wi-Fi) module 611, a Bluetooth module 613, a sensor 614, a positioning module 660, and input / output (I / O) devices 615, etc. These components can communicate via one or more communication buses or signal lines. Those skilled in the art will understand that... Figure 6 The hardware structure shown does not constitute a limitation on the electronic device. The electronic device 600 may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0065] The following is combined with Figure 6 A detailed introduction to each component of electronic device 600:

[0066] The application processor 601 is the control center of the electronic device 600, connecting various components of the electronic device 600 via various interfaces and buses. In some embodiments, the processor 601 may include one or more processing units.

[0067] The memory 605 stores computer programs, such as Figure 6 The diagram shows an operating system 661 and an application program 663. An application processor 601 is configured to execute computer programs stored in memory 605 to implement the functions defined by those programs. For example, the application processor 601 executes the operating system 661 to implement various functions of the operating system on the electronic device 600. Memory 605 also stores other data besides the computer programs, such as data generated during the operation of the operating system 661 and the application program 663. Memory 605 is a non-volatile storage medium, generally including main memory and secondary storage. Main memory includes, but is not limited to, Random Access Memory (RAM), Read-Only Memory (ROM), or cache. Secondary storage includes, but is not limited to, flash memory, hard disks, optical disks, and universal serial bus (USB) disks. Computer programs are typically stored on secondary storage, and the processor loads the program from secondary storage into main memory before executing it.

[0068] The memory 605 can be independent and connected to the application processor 601 via a bus; the memory 605 can also be integrated with the application processor 601 into a chip subsystem.

[0069] MCU 603 is a coprocessor used to acquire and process data from sensor 614. MCU 603 has lower processing power and power consumption than application processor 601, but features an "always-on" characteristic, allowing it to continuously collect and process sensor data while application processor 601 is in sleep mode, ensuring normal sensor operation with extremely low power consumption. In one embodiment, MCU 603 can be a sensor hub chip. Sensor 614 can include light sensors, motion sensors, etc. Specifically, light sensors can include ambient light sensors and proximity sensors. The ambient light sensor can adjust the brightness of display 651 according to the ambient light level, and the proximity sensor can turn off the power to the display when electronic device 600 is moved to the ear. As a type of motion sensor, an accelerometer can detect the magnitude of acceleration in various directions (generally three axes), and when stationary, it can detect the magnitude and direction of gravity. Sensor 614 can also include other sensors such as gyroscopes, magnetometers, barometers, hygrometers, thermometers, and infrared sensors, which will not be described in detail here. The MCU 603 and sensor 614 can be integrated onto the same chip or are separate components connected via a bus.

[0070] The Modem 607 and RF module 609 constitute the communication subsystem of the electronic device 600, used to implement the main functions of wireless communication standard protocols such as 3GPP and ETSI. The Modem 607 is used for encoding / decoding, signal modulation / demodulation, and equalization. The RF module 609 is used for receiving and transmitting wireless signals, and includes, but is not limited to, an antenna, at least one amplifier, a coupler, and a duplexer. The RF module 609 works with the Modem 607 to implement wireless communication functions. The Modem 607 can be a standalone chip or integrated with other chips or circuits to form a system-on-a-chip (SoC) or integrated circuit. These chips or integrated circuits can be used in all electronic devices that implement wireless communication functions, including: mobile phones, computers, laptops, tablets, routers, wearable devices, automobiles, and home appliances.

[0071] The electronic device 600 can also use a Wi-Fi module 611, a Bluetooth module 613, etc., for wireless communication. The Wi-Fi module 611 provides network access to the electronic device 600 in accordance with Wi-Fi related standard protocols. The electronic device 600 can access the Wi-Fi access point through the Wi-Fi module 611 and thus access the Internet. In some other embodiments, the Wi-Fi module 611 can also act as a Wi-Fi wireless access point, providing Wi-Fi network access to other electronic devices. The Bluetooth module 613 enables short-range communication between the electronic device 600 and other electronic devices (such as mobile phones, smartwatches, etc.). In the embodiments of this application, the Wi-Fi module 611 can be an integrated circuit or a Wi-Fi chip, and the Bluetooth module 613 can be an integrated circuit or a Bluetooth chip.

[0072] The positioning module 660 is used to determine the geographical location of the electronic device 600. It is understood that the positioning module 660 may specifically be a receiver for a global positioning system (GPS), such as the BeiDou Navigation Satellite System or the Russian GLONASS.

[0073] The Wi-Fi module 611, Bluetooth module 613, and positioning module 660 can each be a separate chip or integrated circuit, or they can be integrated together. For example, in one embodiment, the Wi-Fi module 611, Bluetooth module 613, and positioning module 660 can be integrated onto the same chip. In another embodiment, the Wi-Fi module 611, Bluetooth module 613, positioning module 660, and MCU 603 can also be integrated into the same chip.

[0074] Input / output devices 615 include, but are not limited to: display 651, touch screen 653, and audio circuitry 655, etc.

[0075] The touchscreen 653 can collect touch events from the user of the electronic device 600 on or near it (such as user actions on or near the touchscreen 653 using a finger, stylus, or any suitable object), and send the collected touch events to other devices (such as the application processor 601). User actions near the touchscreen 653 can be termed hover touch; through hover touch, the user can select, move, or drag targets (such as icons) without directly touching the touchscreen 653. Furthermore, the touchscreen 653 can be implemented using various types of touchscreens, including resistive, capacitive, infrared, and surface acoustic wave.

[0076] A display (also called a screen) 651 is used to display information input by the user or information shown to the user. The display can be configured using a liquid crystal display (LCD), an organic light-emitting diode (OLED), or other similar methods. A touchscreen 653 can be placed over the display 651. When the touchscreen 653 detects a touch event, it transmits the information to the application processor 601 to determine the type of touch event. The application processor 601 then provides corresponding visual output on the display 651 based on the type of touch event. Although... Figure 6 In this embodiment, the touchscreen 653 and the display 651 are two separate components that implement the input and output functions of the electronic device 600. However, in some embodiments, the touchscreen 653 and the display 651 can be integrated to implement the input and output functions of the mobile phone 600. Furthermore, the touchscreen 653 and the display 651 can be configured as a full-panel display on the front of the electronic device 600 to achieve a borderless structure.

[0077] Audio circuit 655, speaker 656, and microphone 657 provide an audio interface between the user and electronic device 600. Audio circuit 655 converts received audio data into electrical signals and transmits them to speaker 656, where speaker 656 converts them into sound signals for output. On the other hand, microphone 657 converts collected sound signals into electrical signals, which are received by audio circuit 655, converted into audio data, and then transmitted to, for example, another electronic device via modem 607 and radio frequency module 609, or output to memory 605 for further processing.

[0078] In addition, the electronic device 600 may also have fingerprint recognition functionality. For example, a fingerprint sensor can be configured on the back of the electronic device 600 (e.g., below the rear camera) or on the front of the electronic device 600 (e.g., below the touchscreen 653). Alternatively, the fingerprint sensor can be integrated into the touchscreen 653 to implement fingerprint recognition functionality; that is, the fingerprint sensor can be integrated with the touchscreen 653 to achieve fingerprint recognition for the electronic device 600. In this case, the fingerprint sensor is configured within the touchscreen 653, either as part of the touchscreen 653 or in other ways. The main component of the fingerprint sensor in this embodiment is a fingerprint sensor, which can employ any type of sensing technology, including but not limited to optical, capacitive, piezoelectric, or ultrasonic sensing technologies.

[0079] Furthermore, the operating system 661 mounted on the electronic device 600 can provide... The embodiments of this application do not impose any restrictions on RTOS or other operating systems.

[0080] With Taking the operating system of electronic device 600 as an example, such as Figure 6 As shown, the electronic device 600 can be logically divided into a hardware layer, an operating system 661, and an application layer. The hardware layer includes hardware resources such as the hardware processor 601, microcontroller unit 605, modem 607, Wi-Fi module 611, sensor 614, and positioning module 660, as described above. The application layer includes one or more applications, such as application 663, which can be any type of application, such as a social networking application, e-commerce application, or browser. The operating system 661, acting as software middleware between the hardware layer and the application layer, is a computer program that manages and controls hardware and software resources.

[0081] In one embodiment, the operating system 661 includes a kernel, a hardware abstraction layer (HAL), libraries and runtime, and a framework. The kernel provides low-level system components and services, such as power management, memory management, thread management, and hardware drivers. Hardware drivers include Wi-Fi drivers, sensor drivers, and positioning module drivers. The HAL encapsulates the kernel drivers, providing interfaces to the framework and shielding them from low-level implementation details. The HAL runs in user space, while the kernel drivers run in kernel space.

[0082] Libraries and runtimes, also known as runtime libraries, provide the necessary library files and execution environment for executable programs at runtime. In one embodiment, libraries and runtimes include the Android Runtime (ART), libraries, and scene package runtimes. ART is a virtual machine or virtual machine instance capable of converting application bytecode into machine code. Libraries are program libraries that provide support for executable programs at runtime, including browser engines (such as WebKit), script execution engines (such as JavaScript engines), and graphics processing engines. The scene package runtime is the runtime environment for scene packages, mainly including the page execution environment and the script execution environment. The page execution environment parses page code in HTML, CSS, and other formats by calling corresponding libraries, while the script execution environment parses and executes code or executable files implemented in scripting languages ​​such as JavaScript by calling corresponding function libraries.

[0083] The framework provides various basic public components and services for applications in the application layer, such as window management and location management. In one embodiment, the framework may include geofencing services, policy services, notification managers, and so on.

[0084] The functions of each component of the operating system 661 described above can be implemented by the application processor 601 executing the program stored in the memory 605.

[0085] To further understand the workflow of the bicycle assistance system provided in the embodiments of this application, the following is combined with... Figure 7 This workflow will be described. Figure 7 This is a flowchart illustrating a bicycle assistance method provided in an embodiment of this application. This method can be applied to bicycle assistance systems, such as... Figure 7 As shown, the method includes:

[0086] 701. Based on the acquisition time of the first pulse signal and the first moment, determine the user's instantaneous pedaling frequency on the bicycle. The first pulse signal is used to indicate the user's first pedaling action on the bicycle.

[0087] In this embodiment, after the user starts using the bicycle, the data processing device of the bicycle assist system can control the sensors of the bicycle assist system to capture the user's pedaling behavior on the bicycle in real time. Suppose that within a certain period before the first moment, the user performs multiple pedaling actions on the bicycle. The sensors can capture these multiple pedaling actions and generate multiple pulse signals accordingly. These multiple pedaling actions correspond one-to-one with these multiple pulse signals; that is, one pulse signal can be used to indicate one pedaling action performed by the user on the bicycle. It should be noted that each time the sensor generates a pulse signal, it immediately sends the pulse signal to the data processing device so that the data processing device can record the acquisition time of the pulse signal in a timely manner. In this way, the data processing device can record the acquisition times of these multiple pulse signals.

[0088] Based on this, at the first moment (also known as the current moment), the data processing device can determine the pulse signal closest to the first moment from among these multiple pulse signals as the first pulse signal (also known as the latest pulse signal, i.e., the most recent pulse signal). The first pulse signal can be used to indicate the user's first pedaling action on the bicycle (also known as the latest pedaling action, i.e., the user's most recent pedaling action on the bicycle). For example, as... Figure 8 As shown ( Figure 8(This is a schematic diagram of the first pulse signal provided in an embodiment of this application). Let the first time point be tm. During the time period outside of tm, the data processing device acquires the first pulse signal from the sensor at t1 (indicating that the user pedaled the bicycle for the first time, so t1 is the acquisition time of the first pulse signal), acquires the second pulse signal from the sensor at t2 (indicating that the user pedaled the bicycle for the second time, so t2 is the acquisition time of the second pulse signal), ..., acquires the (m-1)th pulse signal from the sensor at tm-1 (indicating that the user pedaled the bicycle for the (m-1)th time, so tm-1 is the acquisition time of the (m-1)th pulse signal). Since tm-1 is closest to tm, the data processing device can regard the (m-1)th pulse signal as the first pulse signal.

[0089] After the first pulse signal is determined, the data processing device can calculate the acquisition time of the first pulse signal and the first moment to obtain the user's instantaneous pedal frequency on the bicycle. This instantaneous pedal frequency can be used to indicate the user's pedaling frequency (number of pedaling strokes) on the bicycle in an instant.

[0090] Specifically, the data processing device can obtain the user's instantaneous cadence on the bicycle in the following ways:

[0091] (1) After determining the first pulse signal, the data processing device can first calculate the difference between the acquisition time of the first pulse signal and the first time, and detect whether the difference between the acquisition time of the first pulse signal and the first time is less than a preset second threshold (the second threshold can also be called the timeout time, and the size of the second threshold can be set according to actual needs, without restriction here), thereby detecting whether the user's first pedaling behavior on the bicycle is a valid pedaling behavior, that is, whether the user's instantaneous pedaling frequency on the bicycle is a valid pedaling frequency. As in the example above, the data processing device can calculate the difference Δt1 = tm - tm-1 between the acquisition time tm-1 of the (m-1)th pulse signal and the first time tm, and determine whether Δt1 is less than the preset timeout time Δtc.

[0092] (2) If the difference between the acquisition time of the first pulse signal and the first moment is less than the second threshold, the data processing device can determine that the user's first pedaling action on the bicycle is a valid pedaling action. At this time, the user's instantaneous pedaling frequency on the bicycle is a valid pedaling frequency. The data processing device can take the reciprocal of the difference between the acquisition time of the first pulse signal and the first moment as the user's instantaneous pedaling frequency on the bicycle. As in the example above, if Δt1 is less than Δtc, the data processing device can set the user's instantaneous pedaling frequency on the bicycle to f1 = 1 / Δt1.

[0093] (3) If the difference between the acquisition time of the first pulse signal and the first moment is greater than or equal to the second threshold, the data processing device can determine that the user's first pedaling action on the bicycle is an invalid pedaling action. At this time, the user's instantaneous pedaling frequency on the bicycle is an invalid pedaling frequency, and the data processing device will set the user's instantaneous pedaling frequency on the bicycle to zero. As in the example above, if Δt1 is greater than or equal to Δtc, the data processing device can set the user's instantaneous pedaling frequency on the bicycle to f1 = 0.

[0094] Therefore, during continuous cycling, once the data processing device receives a pulse signal, it immediately identifies it as the first pulse signal. At this point, the first moment is usually after the acquisition time of the pulse signal (though they could also be at the same time), and the difference between them is usually small (generally smaller than the second threshold), indicating that the user is still using the bicycle. In this case, the user's instantaneous cadence should not be zero. After the user stops cycling, the data processing device receives the last pulse signal, which will be identified as the first pulse signal within a certain period. If the difference between the first moment and the acquisition time of the last pulse signal is small (generally smaller than the second threshold), the user's instantaneous cadence should not be zero. As time passes, the first moment increases. If the difference between the first moment and the acquisition time of the last pulse signal becomes large (generally larger than or equal to the second threshold), it indicates that the user has stopped using the bicycle, and the user's instantaneous cadence should be zero.

[0095] 702. Determine the first threshold based on the motor's rotational speed at the first moment.

[0096] 703. Determine whether the user's instantaneous pedaling frequency on the bicycle is greater than the first threshold.

[0097] After obtaining the user's instantaneous cadence on the bicycle, the data processing device can calculate the rotational speed of the bicycle's power assist system motor at the first moment (also known as the motor's rotational speed at the current moment, i.e., the motor's current rotational speed) to obtain a first threshold. The first threshold can be used to determine the user's riding intention at the first moment.

[0098] Specifically, such as Figure 9 As shown ( Figure 9(This is a schematic diagram of the transmission structure of a bicycle provided in an embodiment of this application). When a user pedals the bicycle to propel it forward, the pedals drive the bicycle's sprocket to rotate. The sprocket, in turn, drives the bicycle wheel (via the freewheel). The motor of the bicycle power assist system is connected to the bicycle wheel. At this time, the ratio between the sprocket's rotational speed and the motor's rotational speed is a fixed value, which can be considered as the transmission ratio between the sprocket and the motor. Due to the structure of the bicycle's freewheel, if the user is not pedaling or is pedaling in the air, the ratio between the sprocket's rotational speed and the motor's rotational speed is less than the transmission ratio between the sprocket and the motor. Therefore, the transmission ratio between the sprocket and the motor, combined with the motor's rotational speed at the first moment, can be used to determine the user's riding intention.

[0099] The data processing device can then obtain the motor's rotational speed at the first moment, the preset floating ratio (e.g., 90% or 110%, etc., as the transmission ratio between the wheel and motor may have some error due to manufacturing processes), and the preset transmission ratio between the wheel and motor. It then multiplies the motor's rotational speed at the first moment, the floating ratio, and the transmission ratio between the wheel and motor to obtain the first threshold. As in the example above... Figure 10 As shown ( Figure 10 (This is a schematic diagram of an application example of the bicycle assist method provided in the embodiments of this application). Let the rotational speed of the motor at the first moment be v, the floating ratio be δ, and the transmission ratio between the wheel and the motor be k. Then, the data processing device can calculate the first threshold as vδk.

[0100] After obtaining the first threshold, the data processing device can detect whether the user's instantaneous pedal frequency on the bicycle is greater than the first threshold, so as to preliminarily determine whether the user wants to accelerate the bicycle at the first moment.

[0101] 704. If the user's instantaneous pedaling frequency on the bicycle exceeds the first threshold, the motor speed at the first moment will be adjusted to either accelerate the bicycle or not accelerate it.

[0102] If the user's instantaneous pedaling cadence exceeds a first threshold, the data processing device can initially determine that the user intends to accelerate the bicycle at that moment. Therefore, the data processing device can further determine the user's riding intention. If the data processing device ultimately determines that the user intends to accelerate the bicycle at that moment, it can make a third adjustment to the motor's speed at that moment to accelerate the bicycle. If the data processing device ultimately determines that the user does not intend to accelerate the bicycle at that moment, it can make a second adjustment to the motor's speed at that moment to prevent the motor from accelerating the bicycle. It is understood that the aforementioned first adjustment includes the second and third adjustments.

[0103] Specifically, the data processing device can perform further judgments in the following ways:

[0104] (1) After determining that the user's instantaneous pedaling frequency on the bicycle is greater than the first threshold, the data processing device can detect whether the motor's rotational speed at the first moment is less than a preset third threshold (the third threshold can also be called the rotational speed to prevent accidental high-speed touch) to determine whether the user has put the bicycle in a high-speed state. As in the example above, after determining that f1 is greater than vδk, the data processing device can detect whether v is less than the rotational speed vs to prevent accidental high-speed touch. It should be noted that the data processing device can also additionally determine whether f1 is greater than 0 here. Only if f1 is greater than 0 and f1 is greater than vδk will it continue to detect whether v is less than the rotational speed vs to prevent accidental high-speed touch. Because in some special scenarios with a very low probability of occurrence (for example, when the user pushes the bicycle backward), although the motor is in the off state, the motor is driven by the bicycle wheel to rotate in the opposite direction. Here, the rotational speed v of the motor at the first moment is negative. If f1 is equal to 0 at this time, f1 is still greater than vδk, which may accidentally trigger the data processor to start the motor to accelerate the bicycle. Therefore, the condition that f1 is greater than 0 can be additionally limited. In this special scenario, the data processor will not be accidentally triggered to start the motor to accelerate the bicycle.

[0105] (2) If the motor's rotational speed at the first moment is less than the third threshold, the data processing device can determine that the bicycle is not traveling at high speed. Therefore, it can ultimately determine that the user wants to accelerate the bicycle at the first moment, and the data processing device can make a third adjustment to the motor's rotational speed at the first moment so that the motor can accelerate the bicycle. Again, as in the example above, if v is less than vs, the data processing device can determine that the user wants to accelerate the bicycle, and therefore the data processing device can make the motor accelerate the bicycle.

[0106] (3) If the motor speed at the first moment is greater than or equal to the third threshold, the data processing device can determine that the bicycle is in a high-speed state. Therefore, the data processing device can obtain the acquisition time of the second pulse signal. The second pulse signal can be used to indicate the user's second pedaling behavior on the bicycle. Next, the data processing device can calculate the difference between the acquisition time of the second pulse signal and the acquisition time of the first pulse signal, and then use the reciprocal of the difference between the acquisition time of the second pulse signal and the acquisition time of the first pulse signal as the user's average pedaling frequency on the bicycle. This average pedaling frequency can be used to indicate the user's pedaling frequency (number of pedaling) on ​​the bicycle over a period of time. It can be understood that the second pulse signal is a pulse signal located before the first pulse signal (the second pulse signal can also be called the previous pulse signal, which is the first or second pulse signal located before the most recent pulse signal, etc.), and the second pedaling behavior is a pedaling behavior located before the first pedaling behavior (the second pedaling behavior can also be called the previous pedaling behavior, which is the first or second pedaling behavior located before the most recent pedaling behavior, etc.).

[0107] After obtaining the user's average pedal frequency on the bicycle, the data processing device can detect whether the average pedal frequency of the bicycle is greater than a first threshold in order to determine whether the user has caused vibration to the bicycle in a high-speed state (for example, when the bicycle is traveling at high speed, even if the user's foot is on the pedal but not pressing down (free pedaling), if the user's leg shakes, this behavior will be regarded as a pedaling behavior by the sensor, and a corresponding pulse signal will be generated, which will mistakenly trigger the data processing device to control the motor to accelerate the bicycle).

[0108] Continuing with the example above, if v is greater than or equal to vs, the data processing device can determine that the (m-2)th pulse signal is the second pulse signal, and calculate the difference Δt0 between the acquisition time tm-2 of the (m-2)th pulse signal and the acquisition time tm-1 of the (m-1)th pulse signal, and calculate the user's average pedaling frequency f0 = 1 / Δt0. Next, the data processing device can detect whether f0 is greater than vδk.

[0109] (4) If the user's average pedal frequency on the bicycle is greater than the first threshold, the data processing device can determine that the user did not vibrate the bicycle while it was traveling at high speed, but rather pedaled the bicycle while it was traveling at high speed. Therefore, it can be determined that the user wanted to accelerate the bicycle at the first moment, and the data processing device can make a third adjustment to the motor speed at the first moment to make the motor accelerate the bicycle. As in the example above, if f0 is greater than vδk, the data processing device can determine that the user wants to accelerate the bicycle, so the data processing device can make the motor accelerate the bicycle.

[0110] (5) If the user's average pedal frequency on the bicycle is less than or equal to the first threshold, the data processing device can determine that the user has caused vibration to the bicycle while it is traveling at high speed. Therefore, it can ultimately determine that the user does not want to accelerate the bicycle at the first moment. The data processing device can then make a second adjustment to the motor speed at the first moment so that the motor does not accelerate the bicycle. Again, as in the example above, if f0 is less than or equal to vδk, the data processing device can determine that the user does not want to accelerate the bicycle, so the data processing device can prevent the motor from accelerating the bicycle.

[0111] More specifically, the data processing device can perform the third adjustment in the following ways:

[0112] (1) After determining that the user wants to accelerate the bicycle at the first moment, the data processing device can first obtain N preset speed ranges, and the N speed ranges correspond one-to-one with the N preset levels of acceleration processing, where N is a positive integer greater than or equal to 2. It should be noted that the N levels of acceleration processing can be understood as N degrees of acceleration processing (also known as N different sizes of additional driving force, achieved by applying N different sizes of current to the motor), and these N degrees are all different. Continuing with the example above, suppose the motor's rotational speed at the first moment is v = 80 r / min (the rotational speed of the bicycle wheel is V = 80 r / min), and there are 3 speed ranges: the first speed range is 0 to 50 r / min, the second speed range is 51 to 100 r / min, and the third speed range is 101 to 150 r / min. The increase processing corresponding to the first speed range is an increase of 80 r / min, the increase processing corresponding to the second speed range is an increase of 40 r / min, and the increase processing corresponding to the third speed range is an increase of 20 r / min.

[0113] (2) After determining that the motor speed at the first moment is within the i-th speed range (i = 1, ..., N), the data processing device can increase the motor speed at the first moment by the i-th level. Since the speed of the bicycle wheel increases with the increase of the motor speed at the first moment, it is equivalent to the data processing device increasing the speed of the bicycle wheel by the i-th level through the motor. That is, the increased motor speed at the first moment is equivalent to the increased bicycle wheel speed. Continuing with the example above, since the motor speed v at the first moment is within the second speed range, the data processing device can increase the motor speed v at the first moment by 40 r / min, resulting in an increased motor speed v` = 120 r / min. At this time, the increased bicycle wheel speed V` = 120 r / min.

[0114] Furthermore, the data processing device can also acquire the smoothness parameter input by the user. The smoothness parameter represents the smoothness (speed) of the motor's speed increase process, which is the user's intention to assist. The larger the smoothness parameter, the faster the user wants the motor speed to reach the i-th level of increase; the smaller the smoothness parameter, the slower the user wants the motor speed to reach the i-th level of increase. Therefore, the data processing device can increase the motor speed to the i-th level at the first moment based on the smoothness parameter (the data processing device can achieve this process by low-pass filtering the current to be applied to the motor). Thus, the data processing device can make the motor speed at the first moment increase rapidly or slowly according to the user's intention to assist.

[0115] More specifically, the data processing device can perform the second adjustment in the following ways:

[0116] Once it is determined that the user does not want to accelerate the bicycle at the first moment, the data processing device can shut down the motor so that the motor does not accelerate the bicycle.

[0117] 705. If the user's instantaneous pedal frequency is less than or equal to the first threshold, the motor speed at the first moment is adjusted in the second way so that the motor does not accelerate the bicycle.

[0118] If the user's instantaneous pedaling frequency is less than or equal to a first threshold, the data processing device can ultimately determine that the user does not want to accelerate the bicycle at that moment. The data processing device can then make a second adjustment to the motor's speed at that moment to prevent the motor from accelerating the bicycle. Continuing with the example above, after determining that f1 is less than or equal to vδk, the data processing device can determine that the user does not want to accelerate the bicycle, and therefore the data processing device can prevent the motor from accelerating the bicycle.

[0119] At this point, the data processing equipment has completed the initial adjustment of the bicycle's speed (i.e., the rotational speed of the bicycle's wheels).

[0120] It should be understood that this embodiment is only used as an illustrative example where the motor's rotational speed at the first moment is usually equal to the rotational speed of the bicycle wheels, and does not constitute a limitation on the relationship between the two. In practical applications, there may be motors equipped with one-way mechanisms (ratchet mechanisms or clutch mechanisms, etc.), which may cause the motor's rotational speed at the first moment to be less than the rotational speed of the bicycle wheels. This situation will not affect the various auxiliary functions of the motor in the bicycle assistant system provided in this application embodiment for the bicycle (e.g., accelerating the bicycle or not accelerating the bicycle, etc.).

[0121] In this embodiment, during the user's use of the bicycle, the data processing device of the bicycle assist system can determine the user's instantaneous pedaling frequency based on the acquisition time of the first pulse signal and the first moment, wherein the first pulse signal can be used to indicate the user's first pedaling action on the bicycle. Next, the data processing device can process the rotational speed of the bicycle assist system's motor at the first moment to obtain a first threshold. Then, the data processing device can detect whether the user's instantaneous pedaling frequency is greater than the first threshold. If the user's instantaneous pedaling frequency is greater than the first threshold, the data processing device can make a first adjustment to the motor's rotational speed at the first moment, so that the motor accelerates the bicycle or does not accelerate the bicycle. If the user's instantaneous pedaling frequency is less than or equal to the first threshold, the data processing device can make a second adjustment to the motor's rotational speed at the first moment, so that the motor does not accelerate the bicycle. In the aforementioned process, the data processing device can solve for the user's instantaneous pedaling frequency on the bicycle, that is, the pedaling frequency of the user on the bicycle in an instant, based on the acquisition time of the first pulse signal and the first moment. Therefore, the data processing device can determine the user's riding intention in real time based on the user's instantaneous pedal cadence, and control the motor to accelerate or decelerate the bicycle accordingly. Thus, regardless of whether the bicycle is in any of the following states—starting, riding, or preparing to stop—the data processing device can determine the user's riding intention in real time and immediately accelerate or decelerate the bicycle, effectively reducing the latency of starting and stopping the assist, thereby improving the user experience.

[0122] Furthermore, in this embodiment of the application, with the cooperation of the first threshold (the product of the motor's speed, floating ratio, and transmission ratio at the first moment), the second threshold (timeout time), and the third threshold (speed to prevent accidental high-speed touch), the data processing device can not only ensure the continuity of the motor output, but also accurately identify the user's true riding intention after multiple judgments, that is, whether the user really wants to accelerate the bicycle, and then control the motor to accelerate or stop accelerating the bicycle.

[0123] Furthermore, in this embodiment of the application, when the data processing device accelerates the bicycle through the motor, it can increase the motor speed to different degrees based on the current speed of the motor at the first moment. For example, when the motor speed at the first moment is large, a small increase can be given, and when the motor speed at the first moment is small, a large increase can be given, etc., so that the motor can accelerate the bicycle appropriately, provide a suitable experience for the user, and ensure the user's safety.

[0124] The above is a detailed description of the bicycle assistance system and bicycle assistance method provided in the embodiments of this application. The following will introduce the bicycle assistance device provided in the embodiments of this application. Figure 11 A schematic diagram of the bicycle assist device provided in the embodiments of this application is shown below. Figure 11 As shown, the bicycle assist device can be deployed in the aforementioned data processing device, which includes:

[0125] The first determining module 1101 is used to determine the user's instantaneous pedaling frequency on the bicycle based on the acquisition time of the first pulse signal and the first moment. The first pulse signal is used to indicate the user's first pedaling behavior on the bicycle. The first pedaling behavior is the pedaling behavior closest to the first moment.

[0126] The second determining module 1102 is used to determine the first threshold based on the rotational speed of the motor at the first moment;

[0127] The first adjustment module 1103 is used to adjust the motor speed at a first moment if the instantaneous pedal frequency is greater than a first threshold, so that the motor accelerates the bicycle or does not accelerate the bicycle; or,

[0128] The second adjustment module 1104 is used to adjust the speed of the motor at the first moment if the instantaneous pedal frequency is less than or equal to the first threshold, so that the motor does not accelerate the bicycle.

[0129] In this embodiment, during the user's use of the bicycle, the data processing device of the bicycle assist system can determine the user's instantaneous pedaling frequency based on the acquisition time of the first pulse signal and the first moment, wherein the first pulse signal can be used to indicate the user's first pedaling action on the bicycle. Next, the data processing device can process the rotational speed of the bicycle assist system's motor at the first moment to obtain a first threshold. Then, the data processing device can detect whether the user's instantaneous pedaling frequency is greater than the first threshold. If the user's instantaneous pedaling frequency is greater than the first threshold, the data processing device can make a first adjustment to the motor's rotational speed at the first moment, so that the motor accelerates the bicycle or does not accelerate the bicycle. If the user's instantaneous pedaling frequency is less than or equal to the first threshold, the data processing device can make a second adjustment to the motor's rotational speed at the first moment, so that the motor does not accelerate the bicycle. In the aforementioned process, the data processing device can solve for the user's instantaneous pedaling frequency on the bicycle, that is, the pedaling frequency of the user on the bicycle in an instant, based on the acquisition time of the first pulse signal and the first moment. Therefore, the data processing device can determine the user's riding intention in real time based on the user's instantaneous pedal cadence, and control the motor to accelerate or decelerate the bicycle accordingly. Thus, regardless of whether the bicycle is in any of the following states—starting, riding, or preparing to stop—the data processing device can determine the user's riding intention in real time and immediately accelerate or decelerate the bicycle, effectively reducing the latency of starting and stopping the assist, thereby improving the user experience.

[0130] In one possible implementation, the first determining module 1101 is configured to: if the difference between the acquisition time of the first pulse signal and the first moment is less than a second threshold, calculate the difference between the acquisition time of the first pulse signal and the first moment to obtain the user's instantaneous pedal frequency on the bicycle; or, if the difference between the acquisition time of the first pulse signal and the first moment is greater than or equal to the second threshold, determine that the instantaneous pedal frequency is less than or equal to the first threshold.

[0131] In one possible implementation, the first determining module 1101 is used to determine the reciprocal of the difference between the acquisition time of the first pulse signal and the first time as the user's instantaneous pedal frequency on the bicycle.

[0132] In one possible implementation, the second determining module 1102 is used to determine the first threshold based on the rotational speed of the motor at a first moment and the transmission ratio between the bicycle's wheel and the motor.

[0133] In one possible implementation, the first adjustment module 1103 is configured to: if the instantaneous cadence is greater than a first threshold and the motor speed at the first moment is less than a third threshold, then perform a third adjustment to the motor speed at the first moment to accelerate the bicycle; or, if the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the user's average cadence on the bicycle is greater than the first threshold, then perform a third adjustment to the motor speed at the first moment to accelerate the bicycle; or, if the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the average cadence is less than or equal to the first threshold, then perform a second adjustment to the motor speed at the first moment to prevent the motor from accelerating the bicycle; wherein the average cadence is determined based on the acquisition time of the first pulse signal and the acquisition time of the second pulse signal, and the second pulse signal is used to indicate the user's second pedaling action on the bicycle.

[0134] In one possible implementation, the average cadence is calculated based on the difference between the acquisition time of the first pulse signal and the acquisition time of the second pulse signal.

[0135] In one possible implementation, the first adjustment module 1103 is used to: obtain N speed ranges, each of which corresponds one-to-one with an increase processing level of N, where N ≥ 2; after determining that the motor speed at the first moment is within the i-th speed range, increase the motor speed at the first moment by the i-th level, so that the motor increases the speed of the bicycle wheel by the i-th level, where i = 1, ..., N.

[0136] In one possible implementation, the first adjustment module 1103 is used to obtain the smoothness parameter and, based on the smoothness parameter, increase the speed of the motor at the first moment by the i-th level.

[0137] In one possible implementation, the first adjustment module 1103 or the second adjustment module 1104 is used to turn off the motor so that the motor does not accelerate the bicycle.

[0138] It should be noted that the information interaction and implementation process between the modules / units of the above-mentioned device are based on the same concept as the method embodiments of this application, and the resulting technical effects are the same as those of the method embodiments of this application. For details, please refer to the description in the method embodiments shown above in the embodiments of this application, and will not be repeated here.

[0139] This application also relates to a computer storage medium storing a program for signal processing, which, when run on a computer, causes the computer to perform actions such as... Figure 7 The steps are shown.

[0140] This application also relates to a computer program product that stores instructions that, when executed by a computer, cause the computer to perform actions such as... Figure 7 The method shown.

[0141] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0142] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection between apparatuses or units through some interfaces, and may be electrical, mechanical, or other forms.

[0143] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0144] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0145] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

Claims

1. A method for assisting bicycle movement, characterized in that, The method includes: Based on the acquisition time of the first pulse signal and the first moment, the instantaneous pedaling frequency of the user on the bicycle is determined. The first pulse signal is used to indicate the user's first pedaling behavior on the bicycle. The first pedaling behavior is the pedaling behavior closest to the first moment. A first threshold is determined based on the motor's rotational speed at the first moment; If the instantaneous pedal frequency is greater than the first threshold, then the motor speed at the first moment is adjusted to either accelerate the bicycle or not accelerate the bicycle; or, If the instantaneous cadence is less than or equal to the first threshold, then the rotational speed of the motor at the first moment is adjusted in the second way so that the motor does not accelerate the bicycle; The step of adjusting the motor speed at the first moment if the instantaneous pedal frequency is greater than the first threshold, so that the motor accelerates the bicycle or does not accelerate the bicycle, includes: If the instantaneous pedal frequency is greater than the first threshold, and the motor speed at the first moment is less than the third threshold, then the motor speed at the first moment is adjusted a third time to accelerate the bicycle; or, If the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the user's average cadence on the bicycle is greater than the first threshold, then a third adjustment is made to the motor speed at the first moment to accelerate the bicycle; or, If the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the average cadence is less than or equal to the first threshold, then the motor speed at the first moment is adjusted a second time so that the motor does not accelerate the bicycle. The average pedal frequency is determined based on the acquisition time of the first pulse signal and the acquisition time of the second pulse signal, wherein the second pulse signal is used to indicate the user's second pedaling action on the bicycle.

2. The method according to claim 1, characterized in that, The determination of the user's instantaneous pedal frequency on the bicycle based on the acquisition time of the first pulse signal and the first moment includes: If the difference between the acquisition time of the first pulse signal and the first moment is less than the second threshold, then the difference between the acquisition time of the first pulse signal and the first moment is calculated to obtain the user's instantaneous pedal frequency on the bicycle; or, If the difference between the acquisition time of the first pulse signal and the first time is greater than or equal to the second threshold, then the instantaneous tread frequency is determined to be less than or equal to the first threshold.

3. The method according to claim 2, characterized in that, The calculation of the difference between the acquisition time of the first pulse signal and the first moment to obtain the user's instantaneous pedal frequency on the bicycle includes: The reciprocal of the difference between the acquisition time of the first pulse signal and the first moment is determined as the user's instantaneous pedal frequency on the bicycle.

4. The method according to claim 3, characterized in that, Determining the first threshold based on the motor's rotational speed includes: A first threshold is determined based on the motor's rotational speed and the transmission ratio between the bicycle's sprocket and the motor.

5. The method according to claim 1, characterized in that, The average cadence is calculated based on the difference between the acquisition time of the first pulse signal and the acquisition time of the second pulse signal.

6. The method according to claim 5, characterized in that, The third adjustment to the rotational speed of the motor at the first moment, so that the motor accelerates the bicycle, includes: Obtain N rotational speed ranges, each of which corresponds one-to-one with N levels of increase processing, where N ≥ 2; After determining that the motor speed at the first moment is within the i-th speed range, the motor speed at the first moment is increased by the i-th level so that the motor increases the speed of the bicycle wheel by the i-th level, i=1,...,N.

7. The method according to claim 6, characterized in that, The process of increasing the speed of the motor at the first moment by the i-th level includes: Obtain the smoothness parameter, and based on the smoothness parameter, increase the speed of the motor at the first moment to the i-th level.

8. The method according to any one of claims 1 to 7, characterized in that, The second adjustment to the rotational speed of the motor at the first moment, so that the motor does not accelerate the bicycle, includes: The motor is turned off so that it does not accelerate the bicycle.

9. A bicycle assist device, characterized in that, The device includes: The first determining module is used to determine the user's instantaneous pedaling frequency on the bicycle based on the acquisition time of the first pulse signal and the first moment. The first pulse signal is used to indicate the user's first pedaling behavior on the bicycle, and the first pedaling behavior is the pedaling behavior closest to the first moment. The second determining module is used to determine the first threshold based on the motor speed; The first adjustment module is configured to, if the instantaneous pedal frequency is greater than the first threshold, perform a first adjustment to the motor speed at the first moment, so that the motor accelerates the bicycle or does not accelerate the bicycle; or, The second adjustment module is used to adjust the rotational speed of the motor at the first moment if the instantaneous pedal frequency is less than or equal to the first threshold, so that the motor does not accelerate the bicycle. The first adjustment module is used for: If the instantaneous pedal frequency is greater than the first threshold, and the motor speed at the first moment is less than the third threshold, then the motor speed at the first moment is adjusted a third time to accelerate the bicycle; or, If the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the user's average cadence on the bicycle is greater than the first threshold, then a third adjustment is made to the motor speed at the first moment to accelerate the bicycle; or, If the instantaneous cadence is greater than the first threshold, the motor speed at the first moment is greater than or equal to the third threshold, and the average cadence is less than or equal to the first threshold, then the motor speed at the first moment is adjusted a second time so that the motor does not accelerate the bicycle. The average pedal frequency is determined based on the acquisition time of the first pulse signal and the acquisition time of the second pulse signal, wherein the second pulse signal is used to indicate the user's second pedaling action on the bicycle.

10. The apparatus according to claim 9, characterized in that, The first determining module is used for: If the difference between the acquisition time of the first pulse signal and the first moment is less than the second threshold, then the difference between the acquisition time of the first pulse signal and the first moment is calculated to obtain the user's instantaneous pedal frequency on the bicycle; or, If the difference between the acquisition time of the first pulse signal and the first time is greater than or equal to the second threshold, then the instantaneous tread frequency is determined to be less than or equal to the first threshold.

11. The apparatus according to claim 10, characterized in that, The first determining module is used to determine the user's instantaneous pedal frequency on the bicycle as the reciprocal of the difference between the acquisition time of the first pulse signal and the first time.

12. The apparatus according to claim 11, characterized in that, The second determining module is used to determine a first threshold based on the rotational speed of the motor and the transmission ratio between the bicycle's wheel and the motor.

13. The apparatus according to claim 9, characterized in that, The average cadence is calculated based on the difference between the acquisition time of the first pulse signal and the acquisition time of the second pulse signal.

14. The apparatus according to claim 13, characterized in that, The first adjustment module is used for: Obtain N rotational speed ranges, each of which corresponds one-to-one with N levels of increase processing, where N ≥ 2; After determining that the motor speed at the first moment is within the i-th speed range, the motor speed at the first moment is increased by the i-th level so that the motor increases the speed of the bicycle wheel by the i-th level, i=1,...,N.

15. The apparatus according to claim 14, characterized in that, The first adjustment module is used to obtain a smoothness parameter and, based on the smoothness parameter, increase the speed of the motor at the first moment by the i-th level.

16. The apparatus according to any one of claims 9 to 15, characterized in that, The first adjustment module or the second adjustment module is used to turn off the motor so that the motor does not accelerate the bicycle.

17. A bicycle assist device, characterized in that, The bicycle assist device includes a memory and a processor; the memory stores code, and the processor is configured to execute the code, wherein when the code is executed, the bicycle assist device performs the method as described in any one of claims 1 to 8.

18. A bicycle power assist system, characterized in that, The system includes sensors, a motor, and a bicycle assist device as described in claim 17.

19. A bicycle, characterized in that, The bicycle includes a frame, handlebars, seat, sprockets, wheels, pedals, and a bicycle assist system as described in claim 18.

20. A computer storage medium, characterized in that, The computer storage medium stores a computer program that, when executed by the computer, causes the computer to perform the method described in any one of claims 1 to 8.

21. A computer program product, characterized in that, The computer program product stores instructions that, when executed by a computer, cause the computer to perform the method described in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Driving unit and battery-assisted bicycle

    CN103863124A

  • Motor for electric aided-bicycle and intelligent control system for motor

    CN105846596A