Methods for controlling shifting of a bicycle
Abstract
A method for controlling shifting of a bicycle includes identifying a first gear shift command for a first shift having a first shift direction and identifying a second gear shift command for a second shift having a second shift direction. The method includes determining a time period between the identifying of the first gear shift command and the identifying of the second gear shift command, and comparing, by the processor, the determined time period to a predetermined time period. When, based on the comparing, the determined time period is less than the predetermined time period, the method further includes initiating a shift in a second shift direction when the second shift direction and the first shift direction are a same shift direction, and blocking, by the processor, the shift in the second shift direction when the second shift direction and the first shift direction are different shift directions.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method for controlling shifting of a bicycle, the method comprising:
identifying, by a processor, a first gear shift command, a source of the first gear shift command being a control device of the bicycle; determining, by the processor, a first shift direction based on the first gear shift command; initiating, by the processor, a first shift of the bicycle in the first shift direction based on the first gear shift command; identifying, by the processor, a second gear shift command, a source of the second gear shift command being the processor or another processor, the second gear shift command being after the first gear shift command; determining, by the processor, a second shift direction based on the second gear shift command; determining, by the processor, a time period between the identifying of the first gear shift command and the identifying of the second gear shift command; comparing, by the processor, the determined time period to a predetermined time period; when, based on the comparing, the determined time period is less than the predetermined time period:
initiating, by the processor, a shift of the bicycle in the second shift direction when the second shift direction and the first shift direction are a same shift direction; and
blocking, by the processor, the shift of the bicycle in the second shift direction when the second shift direction and the first shift direction are different shift directions.
2 . The method of claim 1 , wherein identifying the second gear shift command comprises generating, by the processor, the second gear shift command based on an automatic shifting algorithm.
3 . The method of claim 1 , wherein identifying the first gear shift command comprises receiving, by the processor, the first gear shift command from the control device of the bicycle in response to a user input at an input device of the control device of the bicycle.
4 . The method of claim 1 , further comprising starting a timer after the identifying of the first gear shift command,
wherein determining the time period comprises determining the time period based on the timer.
5 . The method of claim 4 , further comprising:
when, based on the comparing of the determined time period to the predetermined time period, the determined time period is less than the predetermined time period:
determining a cadence of a crank arm of the bicycle;
comparing the determined cadence of the crank arm to a cadence setpoint, the comparing of the determined cadence of the crank arm to the cadence setpoint comprising determining a difference between the determined cadence of the crank arm and the cadence setpoint;
comparing the determined difference to a predetermined threshold difference;
removing the blocking when, based on the comparing of the determined difference to the predetermined threshold difference, the determined difference is greater than the predetermined threshold difference, such that the shift of the bicycle in the second shift direction when the second shift direction and the first shift direction are different is allowed.
6 . A method for controlling shifting of a bicycle, the method comprising:
identifying, by a processor, wheel speed data for a wheel of the bicycle, the wheel speed data representing a speed of the wheel at a plurality of time points; calculating, by the processor, an acceleration of the bicycle based on the identified wheel speed data; identifying, by the processor, additional acceleration data for the bicycle; comparing, by the processor, the calculated acceleration of the bicycle to the identified additional acceleration data; and blocking or allowing a shift of the bicycle based on the comparing.
7 . The method of claim 6 , wherein identifying the additional acceleration data comprises identifying a predetermined maximum threshold acceleration value and a predetermined minimum threshold acceleration value, and
wherein comparing the calculated acceleration of the bicycle to the identified additional acceleration data comprises:
comparing the calculated acceleration of the bicycle to the predetermined maximum threshold acceleration value and the predetermined minimum threshold acceleration value, the predetermined minimum threshold acceleration value being a predetermined maximum threshold deceleration value, and
wherein blocking or allowing the shift of the bicycle based on the comparing comprises:
blocking the shift of the bicycle when, based on the comparing of the calculated acceleration of the bicycle to the predetermined maximum threshold acceleration value and the predetermined minimum threshold acceleration value, the calculated acceleration of the bicycle is greater than the predetermined maximum threshold acceleration value or the calculated acceleration of the bicycle is less than the predetermined minimum threshold acceleration value, and
wherein the blocking the shift of the bicycle comprises blocking the shift of the bicycle for a predetermined time period.
8 . A method for controlling shifting of a bicycle, the method comprising:
identifying, by a processor, a first gear shift command; determining, by the processor, a first shift direction based on the first gear shift command; initiating, by the processor, a first shift of the bicycle in the first shift direction based on the first gear shift command; identifying, by the processor, a second gear shift command before the first shift of the bicycle is complete; identifying, by the processor, a number of link pass by events between the initiating of the first shift of the bicycle and the identifying of the second gear shift command; comparing, by the processor, the identified number of link pass by events to at least one predetermined threshold number of link pass by events; and based on the comparing, initiating or delaying the initiating, by the processor, a second gear shift of the bicycle based on the second gear shift command.
9 . The method of claim 8 , further comprising identifying, by the processor, a second gear shift direction based on the second gear shift command,
wherein the comparing comprises:
when the identified second gear shift direction is a same direction as the identified first gear shift direction:
comparing, by the processor, the identified number of link pass by events to a first predetermined threshold number of link pass by events, the at least one predetermined threshold number of link pass by events including the first predetermined threshold number of link pass by events;
when the identified second gear shift direction is a different direction than the identified first gear shift direction:
comparing, by the processor, the identified number of link pass by events to a second predetermined threshold number of link pass by events, the at least one predetermined threshold number of link pass by events including the second predetermined threshold number of link pass by events, the second predetermined threshold number of link pass by events being greater than the first predetermined threshold number of link pass by events.
10 . The method of claim 9 , wherein initiating or delaying the initiating, by the processor, of the second gear shift of the bicycle based on the second gear shift command comprises:
when the identified second gear shift direction is the same direction as the identified first gear shift direction:
initiating the second gear shift of the bicycle when, based on the comparing, the identified number of link pass by events is greater than the first predetermined threshold number of link pass by events; and
delaying the second gear shift of the bicycle when, based on the comparing, the identified number of link pass by events is less than the first predetermined threshold number of link pass by events; and
when the identified second gear shift direction is a different direction than the identified first gear shift direction:
initiating the second gear shift of the bicycle when, based on the comparing, the identified number of link pass by events is greater than the second predetermined threshold number of link pass by events; and
delaying the second gear shift of the bicycle when, based on the comparing, the identified number of link pass by events is less than the second predetermined threshold number of link pass by events.
11 . The method of claim 10 , wherein when the second gear shift is delayed, the method further comprises:
incrementing, by the processor, a shift counter; and after the first gear shift is complete, for each shift identified by the shift counter:
repeating the identifying of the first gear shift command, with an oldest delayed gear shift command being the first gear shift command, the determining, the initiating of the first shift of the bicycle, identifying whether a new second gear shift command is received before the first shift of the bicycle is complete, and when the new second gear shift command is received, the identifying of the number of link pass by events, the comparing, and the initiating or delaying the initiating.
12 . The method of claim 8 , wherein the comparing comprises comparing, by the processor, the identified number of link pass by events to a predetermined threshold number of link pass by events of the at least one predetermined threshold number of link pass by events, the predetermined threshold number of link pass by events being zero link pass by events, and
wherein based on the comparing, the initiating or delaying the initiating comprises:
when, based on the comparing, the identified number of link pass by events is equal to zero, initiating the second gear shift of the bicycle based on the second gear shift command.
13 . A method for controlling shifting of a bicycle, the method comprising:
identifying, by a processor, a target cadence; identifying, by the processor, a static cadence offset based on a gear in which the bicycle is operated; determining, by the processor, a static cadence window based on the identified target cadence and the identified static cadence offset, the static cadence window having an upper limit and a lower limit; identifying, by the processor, a cadence at a crank arm of the bicycle; identifying, by the processor, a torque at the crank arm of the bicycle, a speed of the bicycle, an acceleration of the bicycle, or any combination thereof; identifying, by the processor, a riding scenario of the bicycle based on the identified torque, the identified cadence, the identified speed, the identified acceleration, or any combination thereof; comparing, by the processor, the identified cadence at the crank arm of the bicycle to the static cadence window; determining, by the processor, a dynamic offset based on the identified riding scenario; and adding, by the processor, the determined dynamic offset to the upper limit of the static cadence window when, based on the comparing, the identified cadence at the crank arm is equal to the upper limit of the static cadence window, such that an automatic shift otherwise initiated with an automatic shifting algorithm based on the static cadence window is avoided.
14 . The method of claim 13 , further comprising decaying, by the processor, the dynamic offset over time.
15 . The method of claim 13 , wherein when the riding scenario is identified as riding on a first type of terrain, determining the dynamic offset based on the identified riding scenario comprises determining a first dynamic offset,
wherein when the riding scenario is identified as riding on a second type of terrain, determining the dynamic offset based on the identified riding scenario comprises determining a second dynamic offset, and wherein the first type of terrain is technically more complex than the second type of terrain, and the first dynamic offset is greater than the second dynamic offset.
16 . The method of claim 13 , wherein identifying the torque at the crank arm of the bicycle, the speed of the bicycle, the acceleration of the bicycle, or any combination thereof comprises identifying, by the processor, the torque at the crank arm of the bicycle, and
wherein determining the target cadence comprises:
identifying, by the processor, a static target cadence;
determining, by the processor, a rider input based on the identified torque at the crank arm of the bicycle;
comparing, by the processor, the determining rider input to a predetermined threshold rider input; and
determining, by the processor, the target cadence based on the comparing of the determined rider input to the predetermined rider input, the determining of the target cadence comprising dynamically adjusting, by the processor, the identified static target cadence when, based on the comparing of the determined rider input to the predetermined threshold rider input, the determined rider input becomes greater than or less than the predetermined threshold rider input.
17 . A method for controlling an electric bicycle, the method comprising:
identifying, by a processor, a change in inclination of a surface on which the electric bicycle is being ridden, the change in inclination being from a decline to an incline; and instructing, by the processor, an assist motor of the electric bicycle to operate at an increased output power based on the identified change in inclination.
18 . The method of claim 17 , wherein identifying the change in inclination comprises:
receiving, by the processor, inclination data from an inclination sensor of the electric bicycle and identifying the change in inclination based on the received inclination data; or receiving, by the processor, distance data from a laser distance measurement sensor and identifying the change in inclination based on the received distance data, the laser distance measurement sensor being configured to measure a distance from the electric bicycle to a point in front of the electric bicycle.
19 . The method of claim 17 , wherein instructing the assist motor of the electric bicycle to increase the output power comprises:
instructing, by the processor, the assist motor of the electric bicycle to operate at the increased output power for a predetermined period of time; or identifying, by the processor, a current gear in which the electric bicycle is being operated, identifying, by the processor, a target gear identified by an automatic shifting algorithm, and instructing, by the processor, the assist motor of the electric bicycle to operate at the increased output power until the current gear matches the target gear.
20 . The method of claim 17 , further comprising:
identifying, by the processor, user input at the electric bicycle; stopping, by the processor, the instructing of the assist motor of the electric bicycle to operate at the increased output power based on the identified user input, and wherein the identified user input is depression of a brake control device of the electric bicycle or a manual shift override.Join the waitlist — get patent alerts
Track US2025108885A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.