Control device for human-powered vehicles, method for creating a learning model, learning model, method for controlling human-powered vehicles, and computer program
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- SHIMANO INC
- Filing Date
- 2021-12-09
- Publication Date
- 2026-08-04
AI Technical Summary
【0068】 本開示によれば、人力駆動車における自動制御を、ライダ個々に最適化させることが可能になる。
Smart Images

Figure 0007900148000001 
Figure 0007900148000002 
Figure 0007900148000003
Abstract
Description
Technical Field
[0001] The present invention relates to a control device for a human-powered vehicle, a method for creating a learning model, a learning model, a control method for a human-powered vehicle, and a computer program.
Background Art
[0002] The electrification of human-powered vehicles has advanced, and automatic control of transmissions and assistance has been realized. In shift control, an automatic shift control system has been proposed that performs calculations on the outputs from sensors such as a speed sensor, a cadence sensor, and a chain tension sensor provided on a human-powered vehicle to automatically determine the gear ratio. For an automatic shift control system, there has also been proposed a method of performing deep learning using teacher data in which the shift results by the rider's operation are labeled for the outputs from the sensors, and performing control based on the data obtained from the learned model (Patent Document 1, etc.).
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Automatic control using a learned model is required to be optimized according to the physical characteristics, hobbies, or driving environment of the rider, especially in the case of a human-powered vehicle that is at least partially driven by human power. The learned model may be learned by deep learning or may be learned by an algorithm such as regression analysis.
[0005] An object of the present invention is to provide a control device for a human-powered vehicle, a method for creating a learning model, a learning model, a control method for a human-powered vehicle, and a computer program that optimize the control criteria by automatic control for each rider. [Means for solving the problem]
[0006] A control device for a human-powered vehicle according to a first aspect of the present invention comprises: an acquisition unit that acquires input information relating to the driving of the human-powered vehicle; a first control unit that determines control data for a device mounted on the human-powered vehicle using a predetermined control algorithm based on the acquired input information and automatically controls the device using the determined control data; an operation probability output model that outputs the probability that the rider will intervene in the automatic control of the device based on the input information; and a second control unit that changes the parameters for determining the control data if the probability output from the operation probability output model is greater than or equal to a predetermined value.
[0007] According to the control device for human-powered vehicles described in the first aspect above, data is obtained indicating the probability that the rider will manually operate the control system in response to the automatic control performed by the first control unit based on a predetermined control algorithm, i.e., the possibility that the rider will intervene in the automatic control. If the probability is greater than or equal to a predetermined value, it becomes possible to change the parameters in the control algorithm referenced by the first control unit and optimize it for the rider.
[0008] A control device for a human-powered vehicle according to the second aspect of the present invention includes, in the control device for a human-powered vehicle according to the first aspect, a learning unit that takes the input information as input and learns the operation probability output model using the presence or absence of intervention operations by the rider on the device after a predetermined time period in which the input information was acquired as an output label.
[0009] According to the control device for human-powered vehicles described in the second aspect above, the operation probability output model can be learned by reflecting the rider's habits, preferences, etc., based on the actual rider's operations.
[0010] A control device for a human-powered vehicle according to the third aspect of the present invention includes, in the control device for a human-powered vehicle according to the first aspect, a learning unit that takes the input information as input and learns the operation probability output model using a value corresponding to the rider's level of discomfort after a predetermined time since the input information was acquired as the output label.
[0011] According to the control device for human-powered vehicles described in the third aspect above, learning can be performed to take into account situations where the rider may feel uncomfortable with automatic control, even without actual rider operation.
[0012] A control device for a human-powered vehicle according to the fourth aspect of the present invention, in the control device for a human-powered vehicle according to the third aspect, the degree of discomfort is derived based on at least one of the cadence of the human-powered vehicle, the torque, the seating position of the rider, and the rider's biometric information.
[0013] According to the control device for human-powered vehicles described in the fourth aspect above, the degree of discomfort is quantified not only based on intervention operations on automatic control, but also based on cadence, torque, whether or not the rider is standing and pedaling, or the rider's biometric information.
[0014] In a control device for a human-powered vehicle according to the fifth aspect of the present invention, if it is determined that the error between the probability obtained by inputting the input information to the operation probability output model and the result of whether or not the rider performed an intervention operation after a predetermined time period matches within a predetermined matching rate, the second control unit performs the processing.
[0015] According to the control device for human-powered vehicles described in the fifth aspect above, the operation probability output model is used only after learning has progressed to the point where the output from the operation probability output model matches the operation of the rider.
[0016] A control device for a human-powered vehicle according to the sixth aspect of the present invention is a control device for a human-powered vehicle according to any one of the first to fifth aspects, wherein the control algorithm determines the control data of the device using different parameters for each driving state of the human-powered vehicle based on the input information, and the operation probability output model is learned for each driving state.
[0017] Whether or not the rider intervenes in automatic control may depend on different criteria such as uphill or downhill driving, paved roads, or off-road conditions. According to the control device for human-powered vehicles described in the sixth aspect above, the criteria that differ depending on the driving conditions can be individually optimized to align with the rider's intentions.
[0018] A control device for a human-powered vehicle according to a seventh aspect of the present invention comprises: an acquisition unit that acquires input information relating to the driving of a human-powered vehicle; a first control unit that determines control data for a device mounted on the human-powered vehicle using a predetermined control algorithm based on the acquired input information and automatically controls the device using the determined control data; an operation content prediction model that predicts the operation content of the device by a rider based on the input information; and a second control unit that changes the parameters for determining the control data if the degree of discrepancy between the operation content predicted by the operation content prediction model and the control data from the first control unit is greater than or equal to a predetermined value.
[0019] According to the control device for human-powered vehicles described in the seventh aspect above, the operation content prediction model can be learned by reflecting the rider's habits, preferences, etc., based on the actual rider's operations. Automatic control can be optimized so as not to deviate from the operations predicted by the operation content prediction model that has been learned to match the rider.
[0020] A control device for a human-powered vehicle according to the eighth aspect of the present invention includes, in the control device for a human-powered vehicle according to the seventh aspect, a learning unit that takes the input information as input and learns the operation content prediction model using the operation content of the rider to the device after a predetermined time has passed since the input information was acquired as an output label.
[0021] According to the control device for human-powered vehicles described in the eighth aspect above, the operation content prediction model can be learned by reflecting the rider's habits, preferences, etc., based on the actual rider's operations.
[0022] According to the control device for a human - powered vehicle according to the ninth aspect of the present invention, in the control device for a human - powered vehicle according to the eighth aspect, when it is determined that the error between the operation content obtained by inputting the input information into the operation content prediction model and the content operated by the rider after a predetermined time is within a predetermined matching rate, the process by the second control unit is executed.
[0023] According to the control device for a human - powered vehicle according to the ninth aspect, the operation content prediction model is used after learning has progressed until the output from the operation content prediction model matches the operation of the rider.
[0024] According to the control device for a human - powered vehicle according to the tenth aspect of the present invention, in any one of the control devices for a human - powered vehicle according to the seventh to ninth aspects, the control algorithm determines the control data of the device by different parameters according to the running state of the human - powered vehicle based on the input information, and the operation content prediction model is learned according to the running state.
[0025] According to the control device for a human - powered vehicle according to the tenth aspect, different criteria depending on the running state can also be optimized individually for the rider.
[0026] According to the control device for a human - powered vehicle according to the eleventh aspect of the present invention, in any one of the control devices for a human - powered vehicle according to the seventh to tenth aspects, when the degree of dissociation is a predetermined value or more, the second control unit changes parameters so that the control data corresponding to the operation content predicted by the operation content prediction model is easily determined by the first control unit.
[0027] According to the control device for a human - powered vehicle according to the eleventh aspect, the parameters of the automatic control are changed so as to follow the operation content predicted by the learned operation content prediction model according to the rider.
[0028] A control device for a human-powered vehicle according to the twelfth aspect of the present invention, in a control device for a human-powered vehicle according to any one of the first to eleventh aspects, the control algorithm includes a procedure for determining the control data by comparing the sensor value included in the input information with a predetermined threshold, and the second control unit performs at least one of changing the value of the threshold and changing the timing of the control by the first control unit.
[0029] According to the control device for human-powered vehicles described in the 12th aspect above, the parameters of the automatic control that are changed may be not only thresholds compared with input information, but also timing, thus enabling optimization of the automatic control.
[0030] A control device for a human-powered vehicle according to the 13th aspect of the present invention is a control device for a human-powered vehicle according to any one of the first to 11 aspects, wherein the control algorithm is a learning model that has been trained to output control data for the device based on the input information, The second control unit modifies the parameters of the learning model.
[0031] According to the control device for a human-powered vehicle described in the 13th aspect above, the control algorithm for automatic control may be a trained model that has been trained to output control data when input information is received, thereby optimizing automatic control.
[0032] A control device for a human-powered vehicle according to the 14th aspect of the present invention is a control device for a human-powered vehicle according to any one of the first to 12th aspects, wherein the device is a transmission for the human-powered vehicle, the input information includes the cadence of the crank of the drive mechanism of the human-powered vehicle, the first control unit controls the transmission to increase the gear ratio when the acquired cadence is greater than or equal to a predetermined first threshold, and controls the transmission to decrease the gear ratio when the acquired cadence is less than or equal to a second threshold lower than the first threshold, and the second control unit modifies at least one of the first threshold and the second threshold.
[0033] According to the control device for human-powered vehicles described in the 14th aspect above, when the transmission is automatically controlled by comparing the cadence during driving with predetermined first and second thresholds, the first and second thresholds are changed to match the rider's operating preferences and optimized for the rider.
[0034] A control device for a human-powered vehicle according to the 15th aspect of the present invention is a control device for a human-powered vehicle according to the 14th aspect, wherein the second control unit performs at least one of lowering the first threshold and raising the second threshold.
[0035] According to the control device for human-powered vehicles described in the 15th aspect above, the gear ratio is not changed in automatic control unless the cadence reaches the first or second threshold, but the automatic control can be adjusted to the rider's will if the rider feels the need to change it.
[0036] A control device for a human-powered vehicle according to the sixteenth aspect of the present invention is a control device for a human-powered vehicle according to any one of the first to twelfth aspects, wherein the device is a transmission for the human-powered vehicle, the input information includes the torque of the crank of the drive mechanism of the human-powered vehicle, the first control unit controls the transmission to decrease the gear ratio when the acquired torque is greater than or equal to a predetermined third threshold, and controls the transmission to increase the gear ratio when the acquired torque is less than or equal to a fourth threshold lower than the third threshold, and the second control unit changes at least one of the third threshold and the fourth threshold.
[0037] According to the control device for human-powered vehicles described in the 16th aspect above, when the transmission is automatically controlled by comparing the torque during driving with predetermined third and fourth thresholds, the third and fourth thresholds are changed to match the rider's operating preferences and are optimized for the rider.
[0038] A control device for a human-powered vehicle according to the 17th aspect of the present invention is a control device for a human-powered vehicle according to the 16th aspect, wherein the second control unit performs at least one of lowering the third threshold and raising the fourth threshold.
[0039] According to the control device for human-powered vehicles described in the 17th aspect above, the gear ratio will not be changed in automatic control mode unless the torque reaches the third threshold. However, if the rider wishes to change the gear ratio, they can lower the third threshold to adjust the automatic control to their will. Similarly, the gear ratio will not be changed unless the torque reaches the fourth threshold, so the rider can raise the fourth threshold to adjust the automatic control to their will.
[0040] A control device for a human-powered vehicle according to the 18th aspect of the present invention is a control device for a human-powered vehicle according to any one of the first to 12th aspects, wherein the device is a transmission for the human-powered vehicle, the input information includes the driving speed of the human-powered vehicle, the first control unit controls the transmission to increase the gear ratio when the acquired driving speed is greater than or equal to a predetermined fifth threshold, and controls the transmission to decrease the gear ratio when the acquired driving speed is less than or equal to a sixth threshold lower than the fifth threshold, and the second control unit changes at least one of the fifth threshold and the sixth threshold.
[0041] According to the control device for human-powered vehicles described in the 18th aspect above, when the transmission is automatically controlled by comparing the driving speed with predetermined fifth and sixth thresholds, the fifth and sixth thresholds are changed to match the rider's operating preferences and are optimized for the rider.
[0042] A control device for a human-powered vehicle according to the 19th aspect of the present invention, in the control device for a human-powered vehicle according to the 18th aspect, the second control unit performs at least one of lowering the fifth threshold and raising the sixth threshold.
[0043] According to the control device for human-powered vehicles described in the 19th aspect above, the gear ratio will not be changed in automatic control mode unless the driving speed reaches the 5th threshold. However, if the rider wishes to change the gear ratio, they can lower the 5th threshold to adjust the automatic control to their preference. Similarly, the gear ratio will not be changed unless the driving speed reaches the 6th threshold, so the rider can raise the 6th threshold to adjust the automatic control to their preference.
[0044] A control device for a human-powered vehicle according to the 20th aspect of the present invention is a control device for a human-powered vehicle according to any one of the first to twelfth aspects, wherein the device is an assist device for the human-powered vehicle, the input information includes the cadence of the crank of the drive mechanism of the human-powered vehicle, the first control unit controls the assist device to decrease the output of the assist device when the acquired cadence is greater than or equal to a predetermined seventh threshold, and controls the assist device to increase the output of the assist device when the acquired cadence is less than or equal to an eighth threshold lower than the seventh threshold, and the second control unit modifies at least one of the seventh threshold and the eighth threshold.
[0045] According to the control device for human-powered vehicles described in the 20th aspect above, when the output from the assist device is automatically controlled by comparing the cadence with predetermined 7th and 8th thresholds, the 7th and 8th thresholds are changed to match the rider's operating preferences and are optimized for the rider.
[0046] A control device for a human-powered vehicle according to the 21st aspect of the present invention is a control device for a human-powered vehicle according to the 20th aspect, wherein the second control unit performs at least one of lowering the 7th threshold and raising the 8th threshold.
[0047] According to the control device for human-powered vehicles described in the 21st aspect above, in automatic control, the output from the assist device is not changed unless the cadence reaches the 7th threshold. However, if the rider wants to change it, they can lower the 7th threshold to adjust the automatic control to their will. Similarly, the gear ratio is not changed unless the cadence reaches the 8th threshold, so the 8th threshold can be raised to adjust the automatic control to the rider's will.
[0048] A control device for a human-powered vehicle according to the 22nd aspect of the present invention is a control device for a human-powered vehicle according to any one of the first to 12th aspects, wherein the device is an assist device for the human-powered vehicle, the input information includes the torque of the crank of the drive mechanism of the human-powered vehicle, the first control unit controls the assist device to increase the output of the assist device when the acquired torque is greater than or equal to a predetermined 9th threshold, and controls the assist device to decrease the output of the assist device when the acquired torque is less than or equal to a 10th threshold lower than the 9th threshold, and the second control unit modifies at least one of the 9th threshold and the 10th threshold.
[0049] According to the control device for human-powered vehicles described in the 22nd aspect above, when the output from the assist device is automatically controlled by comparing the torque with predetermined 9th and 10th thresholds, the 9th and 10th thresholds are changed to match the rider's operating preferences and are optimized for the rider.
[0050] A control device for a human-powered vehicle according to the 23rd aspect of the present invention, in the control device for a human-powered vehicle according to the 22nd aspect, the second control unit performs at least one of lowering the 9th threshold and raising the 10th threshold.
[0051] According to the control device for human-powered vehicles described in the 23rd aspect above, in automatic control, the output from the assist device is not changed unless the torque reaches the 9th threshold. However, if the rider wants to change it, they can lower the 9th threshold to adjust the automatic control to their will. Similarly, the gear ratio is not changed unless the cadence reaches the 10th threshold, so the 10th threshold can be raised to adjust the automatic control to the rider's will.
[0052] A method for creating a learning model according to the 24th aspect of the present invention involves learning a learning model that outputs the probability of a rider intervening in a device mounted on a human-powered vehicle based on input information relating to the driving of the human-powered vehicle, using training data that takes the input information as input and includes as output labels whether or not the rider intervened in the device after a predetermined time has passed since the input information was acquired, while the human-powered vehicle is driving.
[0053] According to the method for creating the learning model described in the 24th aspect above, the operation probability output model can be trained to match the characteristics of an actual rider, such as their habits and preferences.
[0054] A method for creating a learning model according to the 25th aspect of the present invention involves learning a learning model, which outputs data indicating the operations that are expected to be performed by a rider on a device mounted on the human-powered vehicle, based on input information relating to the driving of the human-powered vehicle, using training data that takes the input information as input and includes the operations performed by the rider on the device at a predetermined time after the input information is acquired as output labels, while the human-powered vehicle is driving.
[0055] According to the method for creating the learning model described in Aspect 25 above, the operation prediction model can be trained to match the characteristics of actual riders, such as their habits and preferences.
[0056] A learning model according to the 26th aspect of the present invention comprises an input layer that inputs input information relating to the driving of a human-powered vehicle; an output layer that outputs the probability that a rider will intervene in a device mounted on the human-powered vehicle; and an intermediate layer that takes the input information as input and learns from training data that includes as an output label whether or not the rider intervenes in the device after a predetermined time has passed since the input information was acquired. The learning model is used in a process in which, while the human-powered vehicle is driving, the input information is provided to the input layer, calculations are performed based on the intermediate layer, and the probability that the rider intervenes in the device corresponding to the input information is output from the output layer.
[0057] According to the learning model described in Aspect 26 above, the operation probability output model can be trained to match the characteristics of an actual rider, such as their habits and preferences. By using the operation probability output model trained to match the rider, the criteria for automatic control of a human-powered vehicle can be optimized for the rider.
[0058] A learning model according to the 27th aspect of the present invention comprises an input layer that inputs input information relating to the driving of a human-powered vehicle; an output layer that outputs data indicating the operation content that is expected to be performed by a rider on a device mounted on the human-powered vehicle; and an intermediate layer that takes the input information as input and learns from training data that includes the operation content of the rider on the device after a predetermined time has passed since the input information was acquired as the output label. The learning model is used in a process in which, while the human-powered vehicle is driving, the input information is provided to the input layer, calculations are performed based on the intermediate layer, and data indicating the operation content of the rider on the device corresponding to the input information is output from the output layer.
[0059] According to the learning model described in Aspect 27 above, the operation prediction model can be trained to match the characteristics of an actual rider, such as their habits and preferences. By using the operation prediction model trained to match a rider, the criteria for automatic control of a human-powered vehicle can be optimized for the rider.
[0060] A control method for a human-powered vehicle according to the 28th aspect of the present invention involves acquiring input information relating to the driving of the human-powered vehicle, and using an operation probability output model that outputs the probability of a rider performing an intervention operation based on the input information to a control unit that automatically controls devices mounted on the human-powered vehicle using a predetermined control algorithm based on the acquired input information. If the probability output from the operation probability output model is greater than or equal to a predetermined value, the parameters for the automatic control are changed, and the control unit performs automatic control using the changed parameters.
[0061] According to the control method for a human-powered vehicle described in the 28th aspect above, automatic control based on a predetermined control algorithm can be individually optimized based on the rider's actual performance, including whether or not they have operated the vehicle.
[0062] A control method for a human-powered vehicle according to the 29th aspect of the present invention involves acquiring input information relating to the driving of the human-powered vehicle, determining control data for devices mounted on the human-powered vehicle using a predetermined control algorithm based on the acquired input information, and using an operation content prediction model to predict the operation content of the device by a rider. If the degree of discrepancy between the operation content predicted by the operation content prediction model and the control data determined by the control unit is greater than or equal to a predetermined value, the parameters for the automatic control are changed, and the control unit performs automatic control using the changed parameters.
[0063] According to the control method for a human-powered vehicle described in the 29th aspect above, automatic control based on a predetermined control algorithm can be individually optimized for the rider based on their actual operating experience.
[0064] A computer program according to the 30th aspect of the present invention causes the computer to acquire input information relating to the driving of a human-powered vehicle, and to use an operation probability output model that outputs the probability that a rider will intervene in a control unit that automatically controls devices mounted on the human-powered vehicle using a predetermined control algorithm based on the acquired input information, and to change the parameters for the automatic control if the probability output from the operation probability output model is greater than or equal to a predetermined value.
[0065] According to the computer program described in the 30th aspect above, automatic control based on a predetermined control algorithm can be individually optimized for the rider based on its operational history.
[0066] A computer program according to the 31st aspect of the present invention causes the computer to perform a process in which it obtains input information relating to the driving of a human-powered vehicle, and instructs a control unit that automatically controls a device mounted on the human-powered vehicle by determining control data based on a predetermined control algorithm based on the obtained input information, to use an operation content prediction model to predict the operation content of the device by a rider, and if the degree of discrepancy between the operation content predicted by the operation content prediction model and the control data from the control unit is greater than or equal to a predetermined value, it changes the parameters for the automatic control.
[0067] According to the computer program described in the 31st aspect above, automatic control based on a predetermined control algorithm can be individually optimized for the rider based on the actual operation content. [Effects of the Invention]
[0068] According to this disclosure, it becomes possible to optimize the automatic control in human-powered vehicles for each individual rider. [Brief explanation of the drawing]
[0069] [Figure 1] This is a side view of a human-powered vehicle to which the control device in the first embodiment is applied. [Figure 2] This is a block diagram illustrating the configuration of the control device. [Figure 3] This is a schematic diagram of the control algorithm for the transmission by the first control unit. [Figure 4] This is an overview diagram of the manipulated probability output model. [Figure 5] This flowchart shows an example of the training process for an operational probability output model. [Figure 6] This flowchart shows an example of the procedure for changing control parameters by the second control unit. [Figure 7] This graph shows the changes in cadence and threshold. [Figure 8] This is a schematic diagram of the operation probability output model of the second embodiment. [Figure 9]This flowchart shows an example of the learning process procedure for the operation probability output model of the second embodiment. [Figure 10] This is a block diagram illustrating the configuration of the control device according to the third embodiment. [Figure 11] This is a schematic diagram of the control algorithm for the transmission by the first control unit of the third embodiment. [Figure 12] This flowchart shows an example of the learning process procedure for the operation probability output model of the third embodiment. [Figure 13] This flowchart shows an example of the parameter change processing procedure by the second control unit of the third embodiment. [Figure 14] This is a block diagram illustrating the configuration of the control device according to the fourth embodiment. [Figure 15] This is an overview diagram of the operation content prediction model. [Figure 16] A flowchart illustrating an example of the training process for a model that predicts the content of an operation. [Figure 17] A flowchart illustrating an example of the training process for a model that predicts the content of an operation. [Figure 18] This flowchart shows an example of the procedure for changing control parameters by the second control unit in the fourth embodiment. [Figure 19] This is a block diagram illustrating the configuration of the control device according to the fifth embodiment. [Figure 20] This flowchart shows an example of the learning process procedure for the operation content prediction model of the fifth embodiment. [Figure 21] This flowchart shows an example of the learning process procedure for the operation content prediction model of the fifth embodiment. [Figure 22] This flowchart shows an example of a parameter change processing procedure by the second control unit of the fifth embodiment. [Figure 23] This is a block diagram illustrating the configuration of the control device according to the sixth embodiment. [Figure 24] This is a schematic diagram of the control learning model. [Figure 25] This flowchart shows an example of the procedure for changing control parameters by the second control unit of the sixth embodiment. [Figure 26] This is a schematic diagram of the control algorithm for the transmission in the seventh embodiment. [Figure 27] A flowchart illustrating an example of the procedure for changing control parameters by the second control unit in the seventh embodiment. [Figure 28] This is a schematic diagram of the control algorithm for the transmission in the eighth embodiment. [Figure 29] This flowchart shows an example of the procedure for changing control parameters by the second control unit of the eighth embodiment. [Figure 30] This is a schematic diagram of the control algorithm for the assist device in the ninth embodiment. [Figure 31] This flowchart shows an example of the procedure for changing control parameters by the second control unit of the ninth embodiment. [Figure 32] This is a schematic diagram of the control algorithm for the assist device in the 10th embodiment. [Figure 33] This flowchart shows an example of the procedure for changing control parameters by the second control unit of the tenth embodiment. [Modes for carrying out the invention]
[0070] The following descriptions of each embodiment are illustrative of possible forms of the control device for a human-powered vehicle according to the present invention, and are not intended to limit its form. The control device for a human-powered vehicle according to the present invention may take forms different from each embodiment, such as variations of each embodiment, and forms that combine at least two mutually non-contradictory variations.
[0071] In the following descriptions of each embodiment, terms indicating directions such as front, rear, forward, backward, left, right, side, up, and down are used with reference to the direction in which the rider is seated on the saddle of the human-powered vehicle.
[0072] (First Embodiment) Figure 1 is a side view of a human-powered vehicle 1 to which the control device 100 in the first embodiment is applied. The human-powered vehicle 1 is a vehicle that uses human power at least partially for propulsion. Vehicles that use only an internal combustion engine or an electric motor as their power source are excluded from the human-powered vehicle 1 of this embodiment. The human-powered vehicle 1 is a bicycle, including, for example, a mountain bike, road bike, cross bike, city bike, electric assist bike (e-bike), etc.
[0073] The human-powered vehicle 1 comprises a vehicle body 11, handlebars 12, front wheels 13, rear wheels 14, and a saddle 15. The human-powered vehicle 1 also comprises a drive mechanism 20, devices 30 (31-32), an operating device 33, a battery 40, and sensors 50 (51-56).
[0074] The control unit 110 of the control device 100 controls the device 30, including the transmission 31 and assist device 32, which are mounted on the human-powered vehicle 1. In one example, the control device 100 is mounted on the battery 40, cycle computer, drive unit, etc., of the human-powered vehicle 1.
[0075] The control device 100 is connected to the device 30, the operating device 33, and the battery 40. The connection configuration and details of the control device 100 will be described later.
[0076] The vehicle body 11 comprises a frame 11A and a front fork 11B. The front wheel 13 is rotatably supported by the front fork 11B. The rear wheel 14 is rotatably supported by the frame 11A. The handlebars 12 are supported by the frame 11A to allow the direction of travel of the front wheel 13 to be changed.
[0077] The drive mechanism 20 transmits human power to the rear wheel 14. The drive mechanism 20 includes a crank 21, a first sprocket assembly 22, a second sprocket assembly 23, a chain 24, and a pair of pedals 25.
[0078] The crank 21 includes a crank axle 21A, a right crank 21B, and a left crank 21C. The crank axle 21A is rotatably supported on the frame 11A. The right crank 21B and the left crank 21C are each connected to the crank axle 21A. One of a pair of pedals 25 is rotatably supported on the right crank 21B. The other of the pair of pedals 25 is rotatably supported on the left crank 21C.
[0079] The first sprocket assembly 22 is rotatably connected to the crankshaft 21A. The first sprocket assembly 22 includes one or more sprockets 22A. In one example, the first sprocket assembly 22 includes multiple sprockets 22A with different outer diameters.
[0080] The second sprocket assembly 23 is rotatably supported on the rear hub of the rear wheel 14. The second sprocket assembly 23 includes one or more sprockets 23A. In one example, the second sprocket assembly 23 includes multiple sprockets 23A with different outer diameters.
[0081] The chain 24 is wrapped around one of the sprockets 22A of the first sprocket assembly 22 and one of the sprockets 23A of the second sprocket assembly 23. When the crank 21 rotates forward due to the human-powered force applied to the pedal 25, the sprocket 23A rotates forward with the crank 21, and the rotation of the sprocket 23A is transmitted to the second sprocket assembly 23 via the chain 24, and this rotation rotates the rear wheel 14. A belt or shaft may be used instead of the chain 24.
[0082] The human-powered vehicle 1 is powered by electricity supplied from a battery 40 and includes a device 30 whose operation is controlled by a control device 100. The device 30 includes a transmission 31 and an assist device 32. The transmission 31 and the assist device 32 are basically operated by control of the control device 100 in accordance with the operation of the operating device 33.
[0083] The gear shifter 31 changes the ratio of the rotational speed of the rear wheel 14 to the rotational speed of the crank 21, that is, the gear ratio of the human-powered vehicle 1. The gear ratio is expressed by the ratio of the output rotational speed output by the gear shifter 31 to the input rotational speed input to the gear shifter 31. The gear ratio can be expressed by the formula: "Gear Ratio = Output Rotational Speed / Input Rotational Speed". In the first example, the gear shifter 31 is an external derailleur (rear derailleur) that changes the connection between the second sprocket assembly 23 and the chain 24. In the second example, the gear shifter 31 is an external derailleur (front derailleur) that changes the connection between the first sprocket assembly 22 and the chain 24. In the third example, it is an internal gear shifter provided in the hub of the rear wheel 14. The gear shifter 31 may also be a continuously variable transmission.
[0084] The assist device 32 is a device that assists the human-powered driving force of the human-powered vehicle 1. The assist device 32 includes, for example, a motor. In one example, the assist device 32 is interposed between the crankshaft 21A and the frame 11A and transmits torque to the first sprocket assembly 22 to assist the human-powered driving force of the human-powered vehicle 1. More specifically, the assist device 32 is located inside a drive unit (not shown) provided near the crankshaft 21A. The drive unit has a case, and the assist device 32 is located inside the case. The assist device 32 may also drive a chain 24 that transmits driving force to the rear wheel 14 of the human-powered vehicle 1.
[0085] The operating device 33 is provided on the handlebars 12. The operating device 33 includes, for example, an operating section 33A operated by the rider. An example of the operating section 33A is one or more buttons. Another example of the operating section 33A is a brake lever. The operating section 33A can be operated by tilting the brake bars, which are provided on the left and right handlebars, to the left or right. An information terminal device 7 held by the rider may be used as the operating section 33A. An operating button is displayed on the display panel included in the information terminal device 7, and when the information terminal device 7 detects that an operating button has been operated, it notifies the control device 100.
[0086] The operating device 33 includes a gear shift indicator 33B. The gear shift indicator 33B consists of multiple buttons included in the operating unit 33A. The gear shift indicator 33B is a device attached to the brake bar. Each time the rider tilts the brake bar relative to the gear shift indicator 33B or presses a button on the brake bar, manual operation of the gear shift 31 is possible, such as increasing or decreasing the gear ratio.
[0087] The operating device 33 includes an assist indicator device 33C. The assist indicator device 33C is, for example, a button included in the operating unit 33A. By pressing the assist indicator device 33C, the assist mode can be set to one of several levels (high / medium / low). The operating device 33 may also include a notification unit for notifying the operating status.
[0088] The operating device 33 is connected to the control device 100 via communication so that it can transmit signals to the control device 100 in response to the operation of the operating unit 33A, the gear shift indicator 33B, and the assist indicator 33C. The operating device 33 may also be connected to the gear shift 31 and the assist device 32 via communication so that it can transmit signals to the gear shift 31 or the assist device 32 in response to the operation of the operating unit 33A, the gear shift indicator 33B, and the assist indicator 33C. In the first example, the operating device 33 communicates with the control device 100 via a communication line or a wire capable of PLC (Power Line Communication). The operating device 33 may also communicate with the gear shift 31, the assist device 32, and the control device 100 via a communication line or a wire capable of PLC. In the second example, the operating device 33 communicates with the control device 100 via wireless communication. The operating device 33 may also communicate with the gear shift 31, the assist device 32, and the control device 100 via wireless communication.
[0089] The battery 40 includes a battery body 41 and a battery holder 42. The battery body 41 is a storage battery containing one or more battery cells. The battery holder 42 is fixed to the frame 11A of the human-powered vehicle 1. The battery body 41 is detachable from the battery holder 42. The battery 40 is electrically connected to the device 30, the operating device 33 and the control device 100 and supplies power as needed. Preferably, the battery 40 includes a control unit for communicating with the control device 100. Preferably, the control unit includes a processor using a CPU.
[0090] The human-powered vehicle 1 is equipped with sensors 50 at various locations to detect the rider's condition and the riding environment. The sensors 50 include a speed sensor 51, an acceleration sensor 52, a torque sensor 53, a cadence sensor 54, a gyro sensor 55, and a seating sensor 56.
[0091] The speed sensor 51 is installed, for example, on the front wheel 13 and transmits a signal corresponding to the number of rotations per unit time of the front wheel 13 to the control device 100. Based on the output of the speed sensor 51, the control device 100 can calculate the vehicle speed and distance traveled of the human-powered vehicle 1.
[0092] The acceleration sensor 52 is fixed to, for example, the frame 11A. The acceleration sensor 52 is a sensor that outputs vibrations of the human-powered vehicle 1 in three axes (front-rear direction, left-right direction, and up-down direction) with respect to the frame 11A, and is provided to detect the movement and vibration of the human-powered vehicle 1. The acceleration sensor 52 transmits signals corresponding to the magnitude of the movement and vibration to the control device 100.
[0093] The torque sensor 53 is provided, for example, to measure the torque applied to the right crank 21B and the left crank 21C, respectively. The torque sensor 53 transmits a signal corresponding to the torque measured in at least one of the right crank 21B and the left crank 21C to the control device 100.
[0094] The cadence sensor 54 is configured, for example, to measure the cadence of either the right crank 21B or the left crank 21C. The cadence sensor 54 transmits a signal corresponding to the measured cadence to the control device 100.
[0095] The gyro sensor 55 is fixed to, for example, the frame 11A. The gyro sensor 55 is provided to detect the yaw, roll, and pitch rotations of the human-powered vehicle 1. The gyro sensor 55 transmits signals corresponding to the amount of rotation of each of the three axes to the control device 100.
[0096] The seating sensor 56 is installed on the inner surface of the saddle 15 to measure whether or not a rider is seated on the saddle 15. The seating sensor 56 uses, for example, a piezoelectric sensor to transmit a signal to the control device 100 that corresponds to the weight applied to the saddle 15.
[0097] Figure 2 is a block diagram illustrating the configuration of the control device 100. The control device 100 comprises a control unit 110 and a storage unit 112.
[0098] The control unit 110 is a processor using a CPU. The control unit 110 uses built-in memory such as ROM (Read Only Memory) and RAM (Random Access Memory). The control unit 110 performs processing by dividing the functions between the first control unit 114 and the second control unit 116.
[0099] The first control unit 114 acquires input information related to the movement of the human-powered vehicle from the sensor 50. In accordance with the first control program P1, the first control unit 114 determines control data for the device 30 based on the acquired input information using a predetermined control algorithm. In accordance with the first control program P1, the first control unit 114 controls the operation of the controlled object mounted on the human-powered vehicle 1, the power supply to the controlled object, and communication with the controlled object based on the determined control data.
[0100] The second control unit 116 uses the operation probability output model M1 stored in the memory unit 112 to determine the probability that the rider will intervene in the automatic control of the device 30 by the first control unit 114. If the probability of intervention obtained using the operation probability output model M1 is greater than or equal to a predetermined value, the second control unit 116 executes a process to change the parameters for determining the control data in the first control unit 114 according to the second control program P2.
[0101] The storage unit 112 includes, for example, non-volatile memory such as flash memory. The storage unit 112 stores the first control program P1 and the second control program P2. The first control program P1 and the second control program P2 may be copies of the first control program P3 and the second control program P4 stored in the non-temporary storage medium 200, respectively, which are read by the control unit 110 and stored in the storage unit 112.
[0102] The memory unit 112 stores the operation probability output model M1. The operation probability output model M1 will be described in detail later. The operation probability output model M1 may also be a copy of the operation probability output model M2 stored in the non-temporary storage medium 200, which the control unit 110 reads and stores in the memory unit 112.
[0103] The control unit 110 (first control unit 114 and second control unit 116) communicates with the controlled object. In this case, the control unit 110 itself may have a communication unit (not shown) for the controlled object, or the control unit 110 may be connected to a communication unit for the controlled object provided inside the control device 100. It is preferable that the control unit 110 has a connection unit for communicating with the controlled object or the communication unit.
[0104] The control unit 110 preferably communicates with the controlled object by at least one of PLC and CAN communication. The communication between the control unit 110 and the controlled object is not limited to wired communication, but may also be wireless communication such as ANT®, ANT+®, Bluetooth®, WiFi®, ZigBee®, etc.
[0105] The control unit 110 is connected to the sensor 50 via a signal line. The control unit 110 acquires input information regarding the movement of the human-powered vehicle 1 from the signal output by the sensor 50 via the signal line.
[0106] The control unit 110 can communicate with the LiDAR information terminal device 7 via a wireless communication device 60 having an antenna. The wireless communication device 60 may be built into the control unit 100. The wireless communication device 60 is a device that enables communication via the so-called Internet. The wireless communication device 60 may be a wireless communication device such as ANT(registered trademark), ANT+(registered trademark), Bluetooth(registered trademark), WiFi(registered trademark), ZigBee(registered trademark), or LTE (Long Term Evolution). The wireless communication device 60 may conform to communication networks such as 3G, 4G, 5G, LTE (Long Term Evolution), WAN (Wide Area Network), LAN (Local Area Network), Internet line, dedicated line, or satellite line.
[0107] The control content of the control device 100 configured in this way will now be explained. The control unit 110 of the control device 100 determines control data for the device 30 based on input information acquired from the sensor 50 using a predetermined control algorithm, based on the functions of the first control unit 114, and automatically controls the device 30 according to the determined control data. In the first embodiment, the control unit 110 automatically controls the gear shifter 31 according to the magnitude of the cadence using the first control unit 114.
[0108] Figure 3 is a schematic diagram of the control algorithm for the gear shifter 31 by the first control unit 114. Figure 3 shows the reference for changing the gear ratio in relation to the cadence obtained from the cadence sensor 54. The vertical direction shows the magnitude of the cadence. The upper part of Figure 3 shows a larger cadence. The first control unit 114 controls the cadence in the crank 21 to remain near the reference cadence. The first control unit 114 includes a procedure for determining the gear ratio by comparing the cadence with a predetermined threshold. For example, if the cadence obtained from the cadence sensor 54 reaches a first threshold that is greater than the reference cadence, the first control unit 114 decides to change the gear ratio to a larger gear ratio side OW (Outward). In other words, the first control unit 114 decides to change the gear ratio to one or two steps larger than the current gear ratio. Conversely, if the cadence falls below the second threshold, which is lower than the first threshold and lower than the reference cadence, the first control unit 114 decides to change the gear ratio to a smaller gear ratio side IW (Inward). In other words, the first control unit 114 decides to change the gear ratio to one or two steps smaller than the current gear ratio. Even after changing the gear ratio, the first control unit 114 controls the cadence to remain near the reference cadence. The first control unit 114 may also change the timing of the control to change the gear ratio to be earlier or later.
[0109] The second control unit 116 modifies the parameters used in the control algorithm shown in Figure 3 as needed. To this end, the second control unit 116 learns an operation probability output model M1 that outputs the probability of whether the rider wants to operate the vehicle manually rather than using automatic control while the human-powered vehicle 1 is in motion. Once the operation probability output model M1 has been learned, the second control unit 116 inputs driving-related information to the operation probability output model M1 while the vehicle is in motion. If the probability output from the operation probability output model M1 is greater than or equal to a predetermined value, the second control unit 116 determines that it is necessary to change the control parameters of the first control unit 114. The second control unit 116 then modifies the first threshold and at least one of the second thresholds.
[0110] Figure 4 is an overview diagram of the operation probability output model M1. The operation probability output model M1 is a learning model that is trained by supervised deep learning using a neural network (hereinafter referred to as NN). The operation probability output model M1 may also be a model that is trained by a recurrent neural network. The operation probability output model M1 is trained to output the "probability that the rider will intervene after a few seconds" when input information regarding the driving of the human-powered vehicle 1 acquired by sensor 50 is input.
[0111] The operation probability output model M1 comprises an input layer M11 for inputting input information, an output layer M12 for outputting the probability that the rider will perform an intervention operation, and an intermediate layer M13 containing a group of nodes consisting of one or more layers. The intermediate layer M13, connected to the output layer M12, is a coupling layer that aggregates a large number of nodes to the number of nodes in the output layer M12. The output layer M12 has one node. Each node in the intermediate layer M13 has a parameter that includes at least one of weight and bias in relation to the nodes of the preceding layer. The operation probability output model M1 is learned using training data that includes input information obtained from sensors 50 such as cadence, torque, vehicle speed, acceleration, and tilt while the human-powered vehicle 1 is running, and output labels (0: none, 1: yes) indicating whether or not the rider performed an intervention operation on the gear shift 31 after a predetermined time has passed since the input information was obtained. The operational probability output model M1 learns by backpropagating the error between the numerical value output from the output layer M12 when input information from the training data is input to the input layer M11, and the label associated with the input information in the training data, to the hidden layer M13, thereby updating the parameters at the nodes of the hidden layer M13.
[0112] The operation probability output model M1 may not only receive input information obtained from sensors 50, such as cadence, torque, vehicle speed, acceleration, and tilt, directly into the input layer M11 at each point in time, but may also receive the amount of change over the most recent few seconds (for example, 2 seconds). The operation probability output model M1 may also be trained by an RNN to output operation probabilities while being influenced by previously input information.
[0113] Since the operation probability output model M1 needs to be learned for each rider, it is stored in the memory unit 112 in a partially learned state before the control device 100 is shipped. The second control unit 116, acting as the learning unit for the control device 100, learns the operation probability output model M1 as follows after the human-powered vehicle 1 is shipped and purchased.
[0114] Figure 5 is a flowchart showing an example of the learning process for the operation probability output model M1. The second control unit 116 functions as a learning unit that learns the operation probability output model M1 by executing the following processes based on the second control program P2 while automatic control is being performed by the first control unit 114.
[0115] The second control unit 116 acquires input information from the sensor 50 (step S101), waits for a predetermined time (for example, 1 to 3 seconds) (step S103), and determines whether or not the gear shift indicator 33B has been operated (step S105).
[0116] If it is determined that the gear shift indicator 33B has been operated (S105: YES), the second control unit 116 immediately determines (for example, within 2 seconds) whether the reverse operation of the operation in step S105 has been performed on the gear shift indicator 33B (step S107).
[0117] If it is determined that the reverse operation was not performed (S107: NO), the second control unit 116 confirms that the intervention operation was performed (operation occurred) (step S109).
[0118] In step S101, the second control unit 116 continuously buffers data in RAM corresponding to a predetermined period (e.g., 5 seconds) from the most recent input information such as cadence, torque, vehicle speed, acceleration, and tilt, which can be obtained from the sensor 50. The second control unit 116 may also obtain input information from a predetermined time prior when it determines in step S107 that the reverse operation was not performed.
[0119] The second control unit 116 inputs the input information acquired in step S101 to the input layer M11 of the operation probability output model M1 which is still being trained (step S111). The second control unit 116 acquires the operation probability output from the output layer M12 of the operation probability output model M1 according to the processing in step S111 (step S113). The second control unit 116 calculates the error between the output of the operation probability output model M1 in step S113 and the determination of whether or not an operation was performed using a predetermined error function (step S115).
[0120] The second control unit 116 determines whether the calculated error is less than or equal to a predetermined value, and whether the operation probability from the operation probability output model M1 matches within a predetermined matching rate in step 105 (step S117). In step S117, the second control unit 116 may determine whether they match based on whether the error has been less than or equal to a predetermined value for the most recent few steps. In step S117, the second control unit 116 may determine whether they match based on whether the average of the errors is within a predetermined value. Alternatively, the second control unit 116 may terminate the learning process based on whether the number of learning steps has reached a predetermined number.
[0121] If it is determined that there is no match (S117: NO), the second control unit 116 updates the parameters of the intermediate layer M13 based on the calculated error (step S119), and returns the process to step S101.
[0122] If a match is determined (S117: YES), the second control unit 116 terminates the learning process and starts processing using the learned operation probability output model M1.
[0123] If the second control unit 116 determines that the gear shift indicator 33B is not operated (S105: NO), it determines whether or not to make it a learning target (step S121). If the gear shift indicator 33B is not operated, the second control unit 116 randomly executes the determination process in step S121 to use the fact that it was not operated as training data. In step S121, the second control unit 116 determines to make it a learning target, for example, if a certain period of time has elapsed since the most recent operation of the gear shift indicator 33B or since it was most recently determined to be a learning target in step S121. The second control unit 116 also determines to make it a learning target, for example, if a certain number of input information has been acquired since the most recent operation of the gear shift indicator 33B or since it was most recently determined to be a learning target in step S121, that is, based on the number of data points.
[0124] If it is determined that the operation should be studied (S121: YES), the second control unit 116 proceeds to step S111 and performs learning with the label that no operation was performed (0: no operation) (S111 to S115).
[0125] If it is determined in step S121 that the data should not be used for learning (S121: NO), the second control unit 116 returns to step S101 and performs the next learning process.
[0126] If the second control unit 116 determines in step S107 that the reverse operation was performed (S107: YES), it proceeds to step S121. This is to avoid learning from incorrect operations.
[0127] As a result, the second control unit 116 can predict, using the operation probability output model M1, whether the rider will perform manual operation a few seconds later, based on input information corresponding to the driving state of the human-powered vehicle 1. During the period when the human-powered vehicle 1 is new and has just been shipped, the control by the first control unit 114 will not change the gear ratio unless the cadence reaches a first threshold, but the rider may want to change it. The operation probability output model M1 outputs a value that quantifies the probability that the rider will make a change.
[0128] Figure 6 is a flowchart showing an example of the procedure for changing control parameters by the second control unit 116. After determining that the learning of the operation probability output model M1 is complete according to the procedure shown in Figure 5, the second control unit 116 performs the following processing.
[0129] The second control unit 116 acquires input information from the sensor 50 (step S201) and inputs the acquired input information to the learned operation probability output model M1 (step S203). The second control unit 116 acquires the operation probability output from the operation probability output model M1 (step S205). The second control unit 116 determines whether the operation probability obtained from the operation probability output model M1 is greater than or equal to a predetermined value (step S207). If it is determined that the operation probability is greater than or equal to a predetermined value (S207: YES), the second control unit 116 determines whether the cadence is greater than or equal to a reference cadence (step S209). If it is determined that the cadence is greater than or equal to a reference cadence (S209: YES), the second control unit 116 lowers the first threshold for the first control unit 114 to determine the control data (step S211) and terminates the process.
[0130] If it is determined in step S209 that the cadence is below the reference cadence (S209: NO), the second control unit 116 increases the second threshold for the first control unit 114 to determine the control data (step S213), and terminates the process.
[0131] The second control unit 116 performs the decrease in the first threshold in step S211 and the increase in the second threshold in step S213 discretely, rather than continuously. If the first threshold is initially 90 rpm (Revolutions Per Minute), the second control unit 116 decreases it from "90" to "85". If the second threshold is initially 60 rpm, the second control unit 116 increases it from "60" to "65".
[0132] In step S209, the second control unit 116 may determine whether the cadence is increasing or not. If the second control unit 116 determines that the cadence is increasing, it lowers the first threshold; if it determines that the cadence is decreasing, it raises the second threshold. In step S209, the second control unit 116 may change the direction of the change depending on which range of the cadence range, delimited by the first threshold and the second threshold, the cadence acquired in step S201 is in. If the cadence is between the first and second thresholds or closer to the first threshold, the second control unit 116 may lower the first threshold; if it is closer to the second threshold, it may raise the second threshold.
[0133] Instead of changing the parameter (threshold) in step S211 or step S213, the second control unit 116 may change the timing of the gear ratio change to advance it.
[0134] The second control unit 116 executes the processes in steps S201-S213 such that the time from acquiring input information to changing control parameters is within the time difference (a predetermined time such as 1 to 3 seconds) between the input information in the training data of the operation probability output model M1 and the output label.
[0135] If it is determined in step S207 that the probability of operation is less than a predetermined value (S207: NO), the second control unit 116 terminates processing because the likelihood of intervention by the lidar is low.
[0136] The processing procedure shown in the flowchart of Figure 6 will be explained with a specific example. Figure 7 is a graph showing the change in cadence and the change in threshold. Figure 7 shows the movement of the human-powered vehicle 1 horizontally and graphs the change in cadence. While the human-powered vehicle 1 is traveling on a flat road, it maintains a cadence at the reference cadence. When the human-powered vehicle 1 starts to climb a slope, the cadence decreases. The first control unit 114 does not change the gear ratio even if the cadence decreases, as long as it does not reach the original second threshold. During this time, the second control unit 116 increases the second threshold based on input information other than cadence, such as the speed of the human-powered vehicle 1, acceleration, inclination, and torque applied to the crank 21. As a result, the first control unit 114 can change the gear ratio so that it becomes smaller, using a second threshold higher than the original second threshold as a reference, before the rider intervenes.
[0137] In this way, the operation probability output model M1 predicts the rider's intention to drive the human-powered vehicle 1 according to the situation, and the automatic control by the first control unit 114 is optimized to match the rider's intention.
[0138] (Second Embodiment) In the second embodiment, the operation probability output model M1 is trained using the rider's level of discomfort during riding as a label, rather than whether the rider actually performed an operation or not. The configuration of the control device 100 in the second embodiment is the same as in the first embodiment, except for the training process of the operation probability output model M1 which will be described later. Therefore, for the configuration of the control device 100 in the second embodiment that is common with the first embodiment, the same reference numerals are used and detailed explanations are omitted.
[0139] In the second embodiment, the second control unit 116, through its learning function, calculates the degree of discomfort of the rider, and sets the level of discomfort as a label corresponding to the likelihood of performing an intervention operation, because the rider may not actually perform an operation even if it feels uncomfortable with the automatic control by the first control unit 114. It then learns the operation probability output model M1.
[0140] Figure 8 is a schematic diagram of the operation probability output model M1 of the second embodiment. Similar to the first embodiment, the operation probability output model M1 is trained to output the "probability that the rider will intervene after a few seconds" when input information regarding the driving of the human-powered vehicle 1 acquired by the sensor 50 is input. The operation probability output model M1 in the second embodiment is trained using input information that can be acquired from the sensor 50, such as cadence, torque, vehicle speed, acceleration, and tilt, and training data that includes values (0 to 1) as labels corresponding to the rider's level of discomfort after a predetermined time has passed since the input information was acquired. The operation probability output model M1 is trained by updating the parameters at the nodes of the intermediate layer M13 by backpropagating the error between the numerical value (0 to 1) output from the output layer M12 when the input information from the training data is input to the input layer M11, and the label (0 to 1) of the level of discomfort corresponding to the input information in the training data, to the intermediate layer M13.
[0141] Figure 9 is a flowchart showing an example of the learning process procedure for the operation probability output model M1 of the second embodiment. The second control unit 116 of the second embodiment functions as a learning unit that learns the operation probability output model M1 by executing the following processes based on the second control program P2 while automatic control is being performed by the first control unit 114.
[0142] The second control unit 116 acquires input information from the sensor 50 (step S301), waits for a predetermined time (for example, 1 to 3 seconds) (step S303), and then acquires cadence, torque, rider seating status, and whether or not the gear shift indicator 33B has been operated from the sensor 50 again (step S305).
[0143] In step S305, the second control unit 116 may acquire the rider's biological information. The information terminal device 7 held by the rider acquires data from biological sensors such as a pulse sensor and a blood flow sensor and transmits it to the control unit 110, thereby enabling the second control unit 116 to acquire the rider's biological information. Alternatively, a camera may be installed on the handlebar 12 as one of the devices 30, and the camera may capture the rider's facial expression, allowing the second control unit 116 to acquire the captured result as biological information. Alternatively, a sweat sensor may be installed on the handlebar 12 as one of the devices 30, and the second control unit 116 may acquire the output from the sweat sensor as biological information.
[0144] In steps S301 and S305, the second control unit 116 continuously buffers data in RAM in chronological order, including input information obtained from the sensor 50 and whether or not the gear shift indicator 33B has been operated, for a predetermined period (e.g., 5 seconds) from the most recent data. The second control unit 116 may also acquire this information by reading information such as cadence and whether or not the gear shift indicator 33B has been operated, along with input information from several seconds prior, at regular intervals.
[0145] The second control unit 116 derives the degree of discomfort based on information such as cadence acquired in step S303 (step S307). In step S307, the degree of discomfort is derived based on at least one of the following: the magnitude of the cadence of the human-powered vehicle 1, the magnitude of the torque, the seating position of the rider, and the rider's biological information. In step S307, the second control unit 116 derives a higher degree of discomfort the greater the cadence, the greater the torque, and the higher the degree of discomfort if the rider is not seated. This is because if the rider is not seated, i.e., standing and pedaling, considerable force must be applied to continue pedaling the human-powered vehicle 1. The second control unit 116 may also derive a higher degree of discomfort the faster the pulse rate and the greater the blood flow. The second control unit 116 may also derive the degree of discomfort using a function that calculates the degree of discomfort using at least one of cadence, torque, seating position, and biological information as variables.
[0146] The second control unit 116 inputs the input information acquired in step S301 to the input layer M11 of the operation probability output model M1 which is still being learned (step S309). The second control unit 116 acquires the operation probability output from the output layer M12 of the operation probability output model M1 according to the processing in step S309 (step S311). The second control unit 116 calculates the error between the output of the operation probability output model M1 in step S309 and the discomfort level derived in step S307 using a predetermined error function (step S313).
[0147] The second control unit 116 determines whether the result obtained in step S305 (whether or not the operation was performed) and the operation probability obtained in step S311 match within a predetermined matching rate (step S315). If the second control unit 116 determines that they match (S315: YES), it terminates the learning process and starts processing using the learned operation probability output model M1.
[0148] If it is determined in step S315 that there is no match (S315: NO), the second control unit 116 updates the parameters of the intermediate layer M13 based on the error calculated in step S313 (step S317), and returns the process to step S301.
[0149] The second control unit 116 uses the operation probability output model M1, which has been learned using the learning method shown in the second embodiment, and, similar to the first embodiment, changes the threshold value in the control that determines the gear ratio by comparing the cadence with the threshold value.
[0150] (Third embodiment) The control of the transmission 31 by comparing input information (cadence) with a threshold in the first control unit 114 may differ depending on the driving conditions. Below, the control by the first control unit 114 for each driving condition and the operation probability output model M1 will be described.
[0151] The configuration of the control device 100 in the third embodiment is the same as in the first embodiment, except that multiple operation probability output models M1 are stored and the processing described below is performed. For components of the control device 100 in the third embodiment that are common to the first embodiment, the same reference numerals are used and detailed explanations are omitted.
[0152] Figure 10 is a block diagram illustrating the configuration of the control device 100 of the third embodiment. In the control device 100 of the third embodiment, a plurality of operation probability output models M1 are stored in the memory unit 112. The operation probability output models M1 are learned according to the driving state.
[0153] Figure 11 is a schematic diagram of the control algorithm for the transmission 31 by the first control unit 114 of the third embodiment. As shown in Figure 11, the first control unit 114 determines the driving state, for example, off-road, paved road, or bad weather, and determines the gear ratio in the transmission 31 using thresholds corresponding to the driving state. In the example in Figure 11, the first control unit 114 determines the gear ratio using different first and second thresholds for the driving state "paved road (flat)" and the driving state "off-road (uphill)". The first control unit 114 may determine the driving state from the driving speed acquired from the sensor 50 or from the tilt of the vehicle body, or it may determine it in response to the rider's operation of the mode selection button provided on the operation section 33A of the operation device 33.
[0154] Figure 12 is a flowchart showing an example of the learning process for the operation probability output model M1 of the third embodiment. Of the processing steps shown in the flowchart of Figure 12, steps that are common to the processing steps shown in the flowchart of Figure 5 of the first embodiment are given the same step numbers and detailed explanations are omitted.
[0155] After acquiring input information in step S101 (S101), the second control unit 116 waits for a predetermined time (S103) and then determines the driving state based on the input information (step S131). The driving state may be determined from the driving speed acquired from the sensor 50 or from the tilt of the vehicle body, as described above, or from the rider's operation of the mode selection button provided on the operation section 33A of the operating device 33.
[0156] After executing the processes from step S105 to step S109, the second control unit 116 selects a learning-in-probability output model M1 according to the driving state (step S133). The second control unit 116 inputs input information to the selected learning-in-probability output model M1 (step S135), and thereafter executes the processes from steps S113 to S119 on the selected learning-in-probability output model M1.
[0157] This allows multiple operation probability output models M1 to be trained and made available for different driving conditions.
[0158] Figure 13 is a flowchart showing an example of the parameter change processing procedure by the second control unit 116 of the third embodiment. Of the processing procedures shown in the flowchart of Figure 13, those procedures that are common with the processing procedures shown in the flowchart of Figure 6 of the first embodiment are given the same step numbers and detailed explanations are omitted.
[0159] In the third embodiment, the second control unit 116 acquires input information from the sensor 50 (S201) and determines the driving state based on the input information (step S221). The second control unit 116 selects a learned operation probability output model M1 according to the driving state (step S223). The second control unit 116 inputs the input information acquired in step S201 to the selected learned operation probability output model M1 (step S225) and executes the processing from step S205 onwards.
[0160] In the third embodiment, even when the control unit 110 performs precise automatic control based on thresholds (parameters) for each driving state, it is possible to optimize the automatic control to suit the individual rider's habits and preferences.
[0161] (Fourth Embodiment) The operation probability output model M1 used in the first to third embodiments was a model that was trained to output the probability that the lider would perform an operation for automatic control. In the fourth embodiment, the second control unit 116 uses an operation content prediction model M3 that predicts the content of the operation performed by the lider on the device 30, and modifies the parameters referenced by the first control unit 114.
[0162] Figure 14 is a block diagram illustrating the configuration of the control device 100 according to the fourth embodiment. In the following description, components of the control device 100 in the fourth embodiment that are common with those in the first embodiment are denoted by the same reference numerals and detailed descriptions are omitted.
[0163] The storage unit 112 of the control device 100 in the fourth embodiment stores the operation content prediction model M3. The operation content prediction model M3 may be a copy of the operation content prediction model M4 stored in the non-temporary storage medium 200, which is read by the control unit 110 and stored in the storage unit 112.
[0164] In the control device 100 of the fourth embodiment, the first control unit 114, similar to the first control unit 114 in the first to fourth embodiments, determines the gear ratio of the transmission 31 of the human-powered vehicle 1 using a predetermined control algorithm and automatically controls the transmission 31 based on the determined gear ratio. The first control unit 114 includes a procedure for determining the gear ratio by comparing the cadence with a predetermined threshold. In the control device 100 of the fourth embodiment, the second control unit 116 predicts how the rider would like to operate the human-powered vehicle 1 while it is running, rather than using automatic control, and uses an operation content prediction model M3 to predict the rider's operation on the transmission 31. In the fourth embodiment, the second control unit 116 uses the operation content prediction model M3 to predict whether the rider will change the transmission 31 to increase the gear ratio (OW), change it to decrease the gear ratio (IW), or not change the gear ratio (do not operate). If the operation prediction model M3 predicts that the gear ratio will be changed to an increased value, the second control unit 116 modifies the first threshold (parameter) so that the first control unit 114 is more likely to decide to change the gear ratio to an increased value. If the operation prediction model M3 predicts that the gear ratio will be changed to a decreased value, the second control unit 116 modifies the second threshold (parameter) so that the first control unit 114 is more likely to decide to change the gear ratio to a decreased value.
[0165] Figure 15 is an overview diagram of the operation content prediction model M3. The operation content prediction model M3 is a learning model that is trained by supervised deep learning using a neural network. The operation content prediction model M3 may also be a model that is trained by a recurrent neural network. When input information regarding the driving of the human-powered vehicle 1 acquired by the sensor 50 is input to the operation content prediction model M3, it is trained to output one of the following operations: the rider changes the gear ratio of the transmission 31 to increase, changes the gear ratio to decrease, or does not change the gear ratio (does not operate).
[0166] The operation content prediction model M3 comprises an input layer M31 for inputting input information, an output layer M32 for outputting predicted rider operations (OW / IW / none), and an intermediate layer M33 containing a group of nodes consisting of one or more layers. The intermediate layer M33, connected to the output layer M32, is a coupling layer that aggregates a large number of nodes to the number of nodes in the output layer M32. The output layer M32 has three nodes. Each node in the intermediate layer M33 has parameters that include at least one of weight and bias in relation to the nodes of the preceding layer. While the human-powered vehicle 1 is running, the operation content prediction model M3 is learned by the second control unit 116 as a learning unit using training data that includes input information obtained from sensors 50 such as cadence, torque, vehicle speed, acceleration, and tilt, and the rider's operations on the gear shift 31 after a predetermined time has passed since the input information was obtained, along with output labels (OW / IW / none). The operation prediction model M3 learns by backpropagating the error between the output output from the output layer M32 (when input information from the training data is input to the input layer M31) and the label associated with the input information in the training data to the hidden layer M33, thereby updating the parameters at the nodes of the hidden layer M33.
[0167] The second control unit 116 may not only input the input information obtained from the sensors 50, such as cadence, torque, vehicle speed, acceleration, and tilt, directly to the input layer M31 at each point in time, but may also input the amount of change over the most recent few seconds (for example, 2 seconds). The operation prediction model M3 may be trained by an RNN to output predictions of operation content while also being influenced by previously input information.
[0168] Since the operation content prediction model M3 needs to be learned for each rider, it is stored in the memory unit 112 in a partially learned state before the control device 100 is shipped. The second control unit 116, acting as the learning unit for the control device 100, learns the operation content prediction model M3 as follows after the human-powered vehicle 1 is shipped and purchased.
[0169] Figures 16 and 17 are flowcharts illustrating an example of the learning process for the operation content prediction model M3. The second control unit 116 functions as a learning unit that learns the operation content prediction model M3 by executing the following processes based on the second control program P2 while automatic control is being performed by the first control unit 114.
[0170] The second control unit 116 acquires input information from the sensor 50 (step S401), waits for a predetermined time (for example, 1 to 3 seconds) (step S403), and determines whether or not the gear shift indicator 33B has been operated (step S405).
[0171] If it is determined that the gear shift indicator 33B has been operated (S405: YES), the content of the operation on the gear shift indicator 33B is identified (step S407). The second control unit 116 then determines immediately (for example, within 2 seconds) whether the opposite operation to the operation in step S407 was performed on the gear shift indicator 33B (step S409).
[0172] If it is determined that the reverse operation was not performed (S409: NO), the second control unit 116 confirms the operation identified in step S407 (step S411).
[0173] The second control unit 116 inputs the input information acquired in step S401 to the input layer M31 of the operation content prediction model M3, which is still being learned (step S413). The second control unit 116 acquires the operation content output from the output layer M32 of the operation content prediction model M3 in accordance with the processing in step S413 (step S415). The second control unit 116 calculates the error between the output of the operation content prediction model M3 in step S415 and the operation content determined in step S407 using a predetermined error function (step S417).
[0174] The second control unit 116 determines whether the calculated error is less than or equal to a predetermined value, and whether the operation content from the operation content prediction model M3 matches the actual operation content by the Writer determined in step S411 within a predetermined matching rate (step S419). In step S419, the second control unit 116 may determine whether they match based on whether the error has been less than or equal to a predetermined value for the most recent few consecutive times. In step S419, the second control unit 116 may determine whether they match based on whether the average of the errors is within a predetermined value. Alternatively, the second control unit 116 may terminate the learning process based on whether the number of learning iterations has reached a predetermined number.
[0175] If it is determined that there is no match (S419: NO), the second control unit 116 updates the parameters of the intermediate layer M33 based on the calculated error (step S421), and returns the process to step S401.
[0176] If a match is determined (S419: YES), the second control unit 116 terminates the learning process and starts processing using the learned operation content prediction model M3.
[0177] If the second control unit 116 determines that the gear shift indicator 33B is not operated (S405: NO), it determines whether or not to make it a learning target (step S423). If the gear shift indicator 33B is not operated, the second control unit 116 randomly executes the determination process in step S423 to use the fact that it was not operated as training data. In step S423, the second control unit 116 determines to make it a learning target, for example, if a certain period of time has elapsed since the most recent operation of the gear shift indicator 33B or since it was most recently determined to be a learning target in step S423. The second control unit 116 also determines to make it a learning target, for example, if a certain number of input information has been acquired since the most recent operation of the gear shift indicator 33B or since it was most recently determined to be a learning target in step S423, that is, based on the number of data points.
[0178] If it is determined that the operation should be studied (S423: YES), the second control unit 116 proceeds to step S413 and performs learning with the label "no operation performed" (S413 to S421).
[0179] If it is determined in step S423 that the data should not be used for learning (S423: NO), the second control unit 116 returns to step S401 and performs the next learning process.
[0180] If the second control unit 116 determines in step S409 that the reverse operation was performed (S409: YES), it proceeds to step S423. This is to avoid learning from incorrect operations.
[0181] As a result, the second control unit 116 can predict the operation content (OW / IW / none) when the rider performs manual operation a few seconds later, based on input information corresponding to the driving state of the human-powered vehicle 1, using the operation content prediction model M3. During the period when the human-powered vehicle 1 is new and has just been shipped, the control by the first control unit 114 does not change the gear ratio unless the cadence reaches a first threshold, but the rider may want to change it. The operation content prediction model M3 outputs a prediction of the changes made by the rider.
[0182] Figure 18 is a flowchart showing an example of the procedure for changing control parameters by the second control unit 116 in the fourth embodiment. After determining that the learning of the operation content prediction model M3 is complete according to the processing procedures shown in Figures 16 and 17, the second control unit 116 executes the following processes.
[0183] The second control unit 116 acquires input information from the sensor 50 (step S501) and inputs the acquired input information to the learned operation content prediction model M3 (step S503). The second control unit 116 identifies the operation content to be output from the operation content prediction model M3 (step S505).
[0184] The second control unit 116 acquires control data for the transmission 31 from the first control unit 114 (step S507). In step S507, the second control unit 116 acquires the decision made by the first control unit 114 regarding whether to control the transmission 31 to increase the gear ratio, to control the transmission 31 to decrease the gear ratio, or not to change the gear ratio. The second control unit 116 may acquire both the input information for determining the gear ratio and the difference between the parameters for determination as control data.
[0185] The second control unit 116 determines the degree of dissociation between the operation content output from the operation content prediction model M3 and the control data acquired in step S507 (step S509). In step S509, the second control unit 116 determines the magnitude of the dissociation (degree of dissociation) as the difference between the value of the information that the first control unit 114 uses as a criterion for determining the gear ratio from the input information acquired in step S501 and the threshold value for which the first control unit 114 determines the operation content identified in step S505. Specifically, in step S509, if it is predicted in step S505 to change to OW, the second control unit 116 determines the degree of dissociation as the difference between the cadence acquired in step S501 and the first threshold value for changing to OW. If it is predicted in step S505 to change to IW, the second control unit 116 determines the degree of dissociation as the difference between the cadence acquired in step S501 and the second threshold value for changing to IW. If the second control unit 116 predicts no operation in step S505, it determines the difference between the cadence obtained in step S501 and the reference cadence as the degree of dissociation.
[0186] The second control unit 116 determines whether the degree of dissociation determined in step S509 is greater than or equal to a predetermined value (step S511). If it is determined that the degree of dissociation is greater than or equal to a predetermined value (S511: YES), the second control unit 116 changes the first threshold or the second threshold so that the first control unit 114 can more easily perform control similar to the operation content identified in step S505 (step S513).
[0187] In step S513, if a change to OW is predicted in step S505, the second control unit 116 lowers the first threshold from, for example, "90" to "85". Similarly, if a change to IW is predicted in step S505, the second control unit 116 raises the second threshold from, for example, "60" to "65".
[0188] If it is determined in step S511 that the degree of dissociation is less than a predetermined value (S511: NO), the second control unit 116 terminates the process because the operation performed by the lidar, or the absence of an operation, is the same as the control content by the first control unit 114.
[0189] In this way, the operation content prediction model M3 predicts the rider's intention to drive the human-powered vehicle 1 according to the situation, and the automatic control by the first control unit 114 is optimized so as not to deviate from the rider's intention.
[0190] (Fifth embodiment) The control using the operation content prediction model M3 shown in the fourth embodiment may also vary depending on the driving conditions. The configuration of the control device 100 in the fifth embodiment is the same as in the fourth and first embodiments, except that multiple operation content prediction models M3 are stored and the processing described below is also included. For components of the control device 100 in the fourth embodiment that are common with the first or fourth embodiment, the same reference numerals are used and detailed explanations are omitted.
[0191] Figure 19 is a block diagram illustrating the configuration of the control device 100 according to the fifth embodiment. In the control device 100 of the fifth embodiment, a plurality of operation content prediction models M3 are stored in the memory unit 112. The operation content prediction models M3 are learned according to the driving state.
[0192] The control algorithm for the transmission 31 according to the first embodiment 114 of the fifth embodiment is the same as the control algorithm for different driving conditions in the third embodiment (see Figure 11). The first control unit 114 determines the driving condition, for example, off-road, paved road, or bad weather, and determines the gear ratio in the transmission 31 based on a threshold value corresponding to the driving condition.
[0193] Figures 20 and 21 are flowcharts illustrating an example of the learning process for the operation content prediction model M3 of the fifth embodiment. For the processing steps shown in the flowcharts of Figures 20 and 21 that are common to the processing steps shown in the flowcharts of Figures 16 and 17 of the fourth embodiment, the same step numbers are used, and detailed explanations are omitted.
[0194] After acquiring input information in step S401 (S401), the second control unit 116 waits for a predetermined time (S403) and then determines the driving state based on the input information (step S431). The driving state may be determined from the driving speed acquired from the sensor 50, or from the tilt of the vehicle body, or from the rider's operation of the mode selection button provided on the operation section 33A of the operating device 33.
[0195] After executing the processes from step S405 to step S411, the second control unit 116 selects a learning operation content prediction model M3 according to the driving state (step S433). The second control unit 116 inputs input information to the selected learning operation content prediction model M3 (step S435), and thereafter executes the processes from steps S415 to S421 on the selected learning operation content prediction model M3.
[0196] This allows multiple operation prediction models M3 to be trained for different driving conditions and become available for use.
[0197] Figure 22 is a flowchart showing an example of the parameter change processing procedure by the second control unit 116 of the fifth embodiment. Of the processing procedures shown in the flowchart of Figure 22, those procedures that are common with the processing procedures shown in the flowchart of Figure 18 of the fourth embodiment are given the same step numbers and detailed explanations are omitted.
[0198] In the fifth embodiment, the second control unit 116 acquires input information from the sensor 50 (S501) and determines the driving state based on the input information (step S521). The second control unit 116 selects a learned operation content prediction model M3 according to the driving state (step S523). The second control unit 116 inputs the input information acquired in step S501 to the selected learned operation content prediction model M3 (step S525) and executes the processing from step S505 onwards.
[0199] In the fifth embodiment, even when the control unit 110 is performing precise automatic control based on thresholds (parameters) for each driving state, it is possible to optimize the automatic control to suit the individual rider's habits and preferences.
[0200] (Sixth Embodiment) In the first to fifth embodiments, the control unit 110 automatically controlled the device 30 (transmission 31) by a control algorithm based on a comparison between input information acquired from the sensor 50 and a threshold value, as performed by the first control unit 114. The control algorithm in the sixth embodiment is a control learning model M5 that has been trained to output control data for the device 30 based on the input information.
[0201] The configuration of the control device 100 in the sixth embodiment is the same as in the first embodiment, except for the control learning model M5 and the processing described below. For components of the control device 100 in the sixth embodiment that are common to the first embodiment, the same reference numerals are used, and detailed descriptions are omitted.
[0202] Figure 23 is a block diagram illustrating the configuration of the control device 100 according to the sixth embodiment. In the control device 100 of the sixth embodiment, the storage unit 112 stores the control learning model M5. The control learning model M5 may be a copy of the learned control learning model M6 stored in the non-temporary storage medium 200, which is read by the control unit 110 and stored in the storage unit 112.
[0203] Figure 24 is a schematic diagram of the control learning model M5. The learning model 5M is a learning model that is learned by supervised deep learning using a neural network (NN). The learning model 5M may also be learned by unsupervised deep learning, which evaluates the output from the operation probability output model M1, i.e., the presence or absence of an intervention operation. The learning model 5M may also be a model that is learned using an RNN, taking into account changes in input information. As shown in Figure 24, the learning model 5M is learned to output control data to determine the control content of device 30 a few seconds later when input information regarding the driving of the human-powered vehicle 1 acquired by sensor 50 is input. The input information is not limited to cadence, but includes at least one of torque, vehicle speed, acceleration, tilt, and presence or absence of seating. If device 30 is a transmission 31, the control data output from the learning model 5M is the gear ratio. If device 30 is an assist device 32, the control data output from the learning model 5M is a value indicating the output from the assist device 32.
[0204] The first control unit 114 inputs the acquired input information to the learned learning model 5M according to the first control program P1 of the sixth embodiment, and controls the operation of the device 30, power supply to the device 30, and communication with the device 30 based on the control data output from the learning model 5M.
[0205] In the sixth embodiment, the second control unit 116 uses the operation probability output model M1 shown in the first to third embodiments. Figure 25 is a flowchart showing an example of the procedure for changing control parameters by the second control unit 116 in the sixth embodiment. The second control unit 116 uses the learned operation probability output model M1 to perform the following processing.
[0206] The second control unit 116 acquires input information from the sensor 50 (step S601) and inputs the acquired input information to the trained operation probability output model M1 (step S603). The second control unit 116 acquires the operation probability output from the operation probability output model M1 (step S605). The second control unit 116 determines whether the operation probability obtained from the operation probability output model M1 is greater than or equal to a predetermined value (step S607). If it is determined that the operation probability is greater than or equal to a predetermined value (S607: YES), the second control unit 116 gives a low evaluation to the output from the control learning model M5 and causes it to retrain and change the parameters (step S609).
[0207] If the probability of operation is determined to be less than a predetermined value (S607: NO), the second control unit 116 terminates processing because the likelihood of intervention by the lidar is low.
[0208] In this way, even if the control algorithm is a control learning model M5 that has been trained based on deep learning, the parameters can be changed in the same manner, and the automatic control by the first control unit 114 can be optimized to suit the rider's habits and preferences.
[0209] In the sixth embodiment, the second control unit 116 changes the control parameters (control learning model M5) controlled by the first control unit 114 when the operation probability output from the operation probability output model M1 is greater than or equal to a predetermined value. Alternatively, the second control unit 116 may use the operation content prediction model M3. In this alternative example, the second control unit 116 changes the control parameters (control learning model M5) controlled by the first control unit 114 when the degree of dissociation between the operation content output from the operation content prediction model M3 and the control data output from the control learning model M5 is greater than or equal to a predetermined value.
[0210] The second control unit 116 may modify the parameters of the automatic control performed by the first control unit 114 based on the control learning model M5 described in the sixth embodiment, using the operation probability output model M1 learned by the level of discomfort described in the second embodiment. The second control unit 116 may use multiple operation probability output models M1 as shown in the third embodiment, or it may use an operation content prediction model M3 as shown in the fourth and fifth embodiments. When using the operation content prediction model M3, the second control unit 116 determines whether or not to change the control parameters based on whether or not the degree of dissociation is greater than or equal to a predetermined value.
[0211] (Seventh Embodiment) In the first to sixth embodiments, the control unit 110 was described as being configured to automatically control the gear shift 31 based on the cadence in the crank 21 by the first control unit 114. However, the automatic control by the first control unit 114 is not limited to the gear shift 31, and the reference used to automatically control the gear shift 31 is not limited to cadence.
[0212] The configuration of the control device 100 in the seventh embodiment is the same as that of the control device 100 in the first embodiment, except for the control method by the first control unit 114 and the modifications made by the second control unit 116. For components of the control device 100 in the seventh embodiment that are common to the first embodiment, the same reference numerals are used, and detailed explanations are omitted.
[0213] In the seventh embodiment, the control unit 110 automatically controls the transmission 31 based on the magnitude of the torque of the crank 21 output from the torque sensor 53, as determined by the first control unit 114. The torque-based automatic control of the first control unit 114, described below, is interchangeable with the cadence-based control of the transmission 31 in the first to sixth embodiments.
[0214] Figure 26 is a schematic diagram of the control algorithm for the transmission 31 in the seventh embodiment. Figure 26 shows the criteria for changing the gear ratio with respect to the torque obtained from the torque sensor 53. The upper part of Figure 26 represents a larger torque. The first control unit 114 controls the torque applied to the crank 21 so that it remains constant at the reference torque. The first control unit 114 performs a procedure to determine the gear ratio by comparing the torque obtained from the torque sensor 53 with a predetermined threshold. If the torque obtained from the torque sensor 53 reaches a third threshold or higher, which is greater than the reference torque, the first control unit 114 determines the gear ratio to be smaller than the current gear ratio. Conversely, if the torque reaches a fourth threshold or lower, which is less than the reference torque, the first control unit 114 determines the gear ratio to be larger than the current gear ratio.
[0215] In the seventh embodiment, the second control unit 116 modifies at least one of the third threshold and the fourth threshold used in the control algorithm shown in Figure 26 as needed. Figure 27 is a flowchart showing an example of the procedure for changing control parameters by the second control unit 116 in the seventh embodiment. Of the processing steps shown in the flowchart of Figure 27, steps that are common with the processing steps shown in the flowchart of Figure 6 of the first embodiment are given the same step numbers and detailed explanations are omitted.
[0216] If the second control unit 116 determines that the operation probability obtained from the operation probability output model M1 is greater than or equal to a predetermined value (S207: YES), it determines whether the torque is greater than or equal to the reference torque (step S231). If it determines that the torque is greater than or equal to the reference torque (S231: YES), the second control unit 116 lowers the third threshold used by the first control unit 114 to determine the control data (step S233), and terminates the process.
[0217] If it is determined in step S231 that the torque is less than the reference torque (S231: NO), the second control unit 116 increases the fourth threshold for the first control unit 114 to determine the control data (step S235), and terminates the process.
[0218] In step S231, the second control unit 116 may determine whether or not the torque is increasing. If the second control unit 116 determines that the torque is increasing, it may lower the third threshold value, and if it determines that the torque is decreasing, it may raise the fourth threshold value. Instead of changing the parameters (thresholds) in step S233 or step S235, the second control unit 116 may change the timing of the gear ratio change to be earlier.
[0219] The torque-based control by the first control unit 114 shown in the seventh embodiment may be performed according to criteria for different driving conditions, as described in the third and fifth embodiments. In the seventh embodiment, processing using the operation probability output model M1 was described, but processing using the operation content prediction model M3 of the fourth embodiment may also be applied.
[0220] (Eighth embodiment) In the eighth embodiment, the control unit 110 automatically controls the transmission 31 based on the travel speed of the human-powered vehicle 1, as controlled by the first control unit 114. The automatic control of the transmission 31 based on the travel speed by the first control unit 114 in the eighth embodiment, as described below, is interchangeable with the control of the transmission 31 based on cadence in the first to sixth embodiments.
[0221] The configuration of the control device 100 in the eighth embodiment is the same as that of the control device 100 in the first embodiment, except for the control method by the first control unit 114 and the modifications made by the second control unit 116. For components of the control device 100 in the eighth embodiment that are common to those in the first embodiment, the same reference numerals are used, and detailed explanations are omitted.
[0222] Figure 28 is a schematic diagram of the control algorithm for the transmission 31 in the eighth embodiment. Figure 28 shows the criteria for changing the gear ratio with respect to the speed obtained from the speed sensor 51. The upper part of Figure 28 represents faster speeds, and the lower part represents slower speeds. The first control unit 114 performs a procedure to determine the gear ratio by comparing the travel speed of the human-powered vehicle 1 obtained from the speed sensor 51 with a predetermined threshold. If the travel speed obtained from the speed sensor 51 reaches or exceeds the fifth threshold, the first control unit 114 determines that the gear ratio will be larger. Conversely, if the travel speed reaches or falls below the sixth threshold, the first control unit 114 determines that the gear ratio will be smaller. The first control unit 114 may also perform control to make the gear ratio larger or smaller by comparing the travel speed with other thresholds such as the fifth threshold and the sixth threshold.
[0223] In the eighth embodiment, the second control unit 116 modifies at least one of the fifth threshold and the sixth threshold used in the control algorithm shown in Figure 28 as needed. Figure 29 is a flowchart showing an example of the procedure for changing control parameters by the second control unit 116 in the eighth embodiment. Of the processing steps shown in the flowchart of Figure 29, steps that are common with the processing steps shown in the flowchart of Figure 6 of the first embodiment are given the same step numbers and detailed explanations are omitted.
[0224] If the second control unit 116 determines that the operation probability obtained from the operation probability output model M1 is greater than or equal to a predetermined value (S207: YES), it identifies which range of the travel speed is within the range of travel speeds demarcated by the fifth threshold and the sixth threshold (step S241). In step S241, the second control unit 116 identifies whether the travel speed is closer to the fifth threshold or closer to the sixth threshold. In step S241, the second control unit 116 may also identify whether the travel speed is increasing or decreasing.
[0225] The second control unit 116 determines in step S241 whether it has identified that the data is within the range of the fifth threshold (step S243). If it is determined that the data is within the range of the fifth threshold (S243: YES), the second control unit 116 lowers the fifth threshold used by the first control unit 114 to determine the control data (step S245), and terminates the process.
[0226] If, in step S243, it is determined that the driving speed is within the range of the sixth threshold (S243: NO), the second control unit 116 increases the sixth threshold for which the first control unit 114 determines the control data (step S237), and terminates the process.
[0227] The control by the first control unit 114 based on the driving speed shown in the eighth embodiment may be performed according to criteria for each driving state, as described in the third and fifth embodiments. In the eighth embodiment, processing using the operation probability output model M1 was described, but processing using the operation content prediction model M3 of the fourth embodiment may also be applied.
[0228] (Ninth Embodiment) In the ninth embodiment, the control unit 110 automatically controls the assist device 32 based on cadence using the first control unit 114. The cadence-based automatic control of the assist device 32 by the first control unit 114 in the ninth embodiment, as described below, is interchangeable with the cadence-based control of the gear shift device 31 in the first to sixth embodiments.
[0229] The configuration of the control device 100 in the ninth embodiment is the same as that of the control device 100 in the first embodiment, except for the control object and control method controlled by the first control unit 114 and the modification target controlled by the second control unit 116. For components of the control device 100 in the ninth embodiment that are common to those in the first embodiment, the same reference numerals are used, and detailed explanations are omitted.
[0230] Figure 30 is a schematic diagram of the control algorithm for the assist device 32 in the ninth embodiment. Figure 30 shows the criteria for changing the output of the assist device 32 in relation to the cadence obtained from the cadence sensor 54. The upper part of Figure 30 shows a larger cadence. The first control unit 114 controls the crank 21 so that it moves at a reference cadence. The first control unit 114 performs a procedure to determine the output from the assist device 32 by comparing the cadence obtained from the cadence sensor 54 with a predetermined threshold. If the cadence obtained from the cadence sensor 54 reaches the seventh threshold or higher, the first control unit 114 decides to decrease the output from the assist device 32. Conversely, if the cadence reaches the eighth threshold or lower, the first control unit 114 decides to increase the output from the assist device 32.
[0231] In the ninth embodiment, the second control unit 116 modifies at least one of the seventh threshold and the eighth threshold used in the control algorithm shown in Figure 30 as needed. Figure 31 is a flowchart showing an example of the procedure for changing control parameters by the second control unit 116 in the ninth embodiment. Of the processing steps shown in the flowchart of Figure 31, steps that are common with the processing steps shown in the flowchart of Figure 6 of the first embodiment are given the same step numbers and detailed explanations are omitted.
[0232] If the second control unit 116 determines that the operation probability obtained from the operation probability output model M1 is greater than or equal to a predetermined value (S207: YES), it determines whether the cadence is greater than or equal to the reference cadence (S209). If it determines that the cadence is greater than or equal to the reference cadence (S209: YES), the second control unit 116 lowers the seventh threshold used by the first control unit 114 to determine the output from the assist device 32 (step S251), and terminates the process.
[0233] If it is determined that the cadence is below the reference cadence (S209: NO), the second control unit 116 increases the eighth threshold for the first control unit 114 to determine the control data (step S253), and terminates the process.
[0234] The cadence-based control by the first control unit 114 shown in the ninth embodiment may be performed according to criteria for each driving state, as described in the third and fifth embodiments. In the ninth embodiment, processing using the operation probability output model M1 was described, but processing using the operation content prediction model M3 of the fourth embodiment may also be applied.
[0235] (Tenth embodiment) In the tenth embodiment, the control unit 110 automatically controls the assist device 32 based on the magnitude of the torque of the crank 21, as controlled by the first control unit 114. The torque-based automatic control of the assist device 32 by the first control unit 114 in the tenth embodiment, as described below, is interchangeable with the cadence-based control of the gear shift device 31 in the first to sixth embodiments.
[0236] The configuration of the control device 100 in the tenth embodiment is the same as that of the control device 100 in the first embodiment, except for the control object and control method controlled by the first control unit 114 and the modification target controlled by the second control unit 116. For components of the control device 100 in the tenth embodiment that are common to those in the first embodiment, the same reference numerals are used, and detailed explanations are omitted.
[0237] Figure 32 is a schematic diagram of the control algorithm for the assist device 32 in the tenth embodiment. Figure 32 shows the criteria for changing the output of the assist device 32 in relation to the torque obtained from the torque sensor 53. The upper part of Figure 32 represents a larger torque. The first control unit 114 controls the torque of the crank 21 so that it remains at a reference torque. The first control unit 114 performs a procedure to determine the output from the assist device 32 by comparing the torque obtained from the torque sensor 53 with a predetermined threshold. If the torque obtained from the torque sensor 53 reaches or exceeds the ninth threshold, the first control unit 114 decides to increase the output from the assist device 32. Conversely, if the torque reaches or falls below the tenth threshold, the first control unit 114 decides to decrease the output from the assist device 32.
[0238] In the tenth embodiment, the second control unit 116 modifies at least one of the ninth threshold and the tenth threshold used in the control algorithm shown in Figure 32 as necessary. Figure 33 is a flowchart showing an example of the procedure for changing control parameters by the second control unit 116 in the tenth embodiment. Of the processing steps shown in the flowchart of Figure 33, steps that are common with the processing steps shown in the flowchart of Figure 6 of the first embodiment are given the same step numbers and detailed explanations are omitted.
[0239] If the second control unit 116 determines that the operation probability obtained from the operation probability output model M1 is greater than or equal to a predetermined value (S207: YES), it determines whether the torque is greater than or equal to the reference torque (step S261). If it determines that the torque is greater than or equal to the reference torque (S261: YES), the second control unit 116 lowers the ninth threshold value used by the first control unit 114 to determine the control data (step S263), and terminates the process.
[0240] If it is determined in step S261 that the torque is less than the reference torque (S261: NO), the second control unit 116 increases the 10th threshold value for which the first control unit 114 determines the control data (step S265), and terminates the process.
[0241] In step S261, the second control unit 116 may determine whether or not the torque is increasing. If the second control unit 116 determines that the torque is increasing, it may lower the ninth threshold, and if it determines that the torque is decreasing, it may raise the tenth threshold. Instead of changing the parameters (thresholds) in step S263 or step S265, the second control unit 116 may change the timing of the change in the output from the assist device 32 to be earlier.
[0242] The torque-based control by the first control unit 114 shown in the tenth embodiment may be performed according to criteria for different driving conditions, as described in the third and fifth embodiments. In the tenth embodiment, processing using the operation probability output model M1 was described, but processing using the operation content prediction model M3 of the fourth embodiment may also be applied.
[0243] The embodiments disclosed above are illustrative in all respects and not restrictive. The scope of the present invention is indicated by the claims, and all modifications within the meaning and scope equivalent to the claims are included. [Explanation of symbols]
[0244] 1...Human-powered vehicle, 11...Vehicle body, 11A...Frame, 11B...Front fork, 11C...Light, 12...Handlebar, 13...Front wheel, 14...Rear wheel, 15...Saddle, 20...Drive mechanism, 21...Crank, 21A...Crank axle, 21B...Right crank, 21C...Left crank, 22...First sprocket assembly, 22A...Sprocket, 23...Second sprocket assembly, 23A...Sprocket, 24...Chain, 25...Pedal, 30...Device, 31...Gear shifter, 32...Assist device, 33...Operating device, 33A...Operating unit, 33B...Gear shift indicator, 33C...Assist indicator, 40...Battery, 41...Battery body, 42...B Battery holder, 50... Sensor, 51... Speed sensor, 52... Acceleration sensor, 53... Torque sensor, 54... Cadence sensor, 55... Gyro sensor, 56... Seating sensor, 60... Wireless communication device, 100... Control device, 110... Control unit, 112... Memory unit, 114... First control unit, 116... Second control unit, P1... First control program, P2... Second control program, M1... Operation probability output model, M3... Operation content prediction model, M5... Control learning model, 200... Non-temporary storage medium, P3... First control program, P4... Second control program, M2... Operation probability output model, M4... Operation content prediction model, M6... Control learning model, 7... Information terminal device
Claims
1. An acquisition unit that acquires input information related to the operation of a human-powered vehicle, A first control unit determines control data for a transmission or assist device mounted on the human-powered vehicle using a predetermined control algorithm based on acquired input information, and automatically controls the device using the determined control data. An operation probability output model that outputs the probability that the lidar will intervene in the automatic control of the device based on the input information, If the probability output from the operation probability output model is greater than or equal to a predetermined value, a second control unit changes the parameters for determining the control data. A control device for human-powered vehicles, equipped with the following features.
2. The system includes a learning unit that takes the aforementioned input information as input and learns the operation probability output model using the presence or absence of an intervention operation by the rider on the device after a predetermined time has elapsed since the input information was acquired as the output label. The control device for a human-powered vehicle according to claim 1.
3. The system includes a learning unit that takes the aforementioned input information as input and learns the operation probability output model using a value corresponding to the rider's level of discomfort after a predetermined time has elapsed since the input information was acquired as the output label. The control device for a human-powered vehicle according to claim 1.
4. The degree of discomfort is derived based on at least one of the following: the cadence of the human-powered vehicle, the torque, the rider's seating position, and the rider's biometric information. The control device for a human-powered vehicle according to claim 3.
5. If the error between the probability obtained by inputting the aforementioned input information into the operation probability output model and the result of whether or not the rider performed an intervention operation after a predetermined time is determined to match within a predetermined matching rate, the processing by the second control unit is executed. A control device for a human-powered vehicle according to any one of claims 2 to 4.
6. The control algorithm determines the control data for the device using different parameters based on the driving state of the human-powered vehicle, based on the input information. The aforementioned operation probability output model is learned according to the driving state. A control device for a human-powered vehicle according to any one of claims 1 to 5.
7. An acquisition unit that acquires input information related to the operation of a human-powered vehicle, A first control unit determines control data for a transmission or assist device mounted on the human-powered vehicle using a predetermined control algorithm based on acquired input information, and automatically controls the device using the determined control data. An operation content prediction model predicts the operation content performed by the writer on the device based on the input information, If the degree of discrepancy between the operation content predicted by the operation content prediction model and the control data from the first control unit is greater than or equal to a predetermined value, the second control unit changes the parameters for determining the control data. A control device for human-powered vehicles, equipped with the following features.
8. The system includes a learning unit that takes the aforementioned input information as input and learns the operation content prediction model using the operation content of the lidar on the device after a predetermined time has elapsed since the input information was acquired as output labels. The control device for a human-powered vehicle according to claim 7.
9. If the error between the operation content obtained by inputting the aforementioned input information into the operation content prediction model and the content operated by the rider after a predetermined time is determined to match within a predetermined matching rate, the processing by the second control unit is executed. The control device for a human-powered vehicle according to claim 8.
10. The control algorithm determines the control data for the device using different parameters based on the driving state of the human-powered vehicle, based on the input information. The operation prediction model is learned according to the driving conditions. A control device for a human-powered vehicle according to any one of claims 7 to 9.
11. If the degree of dissociation is greater than or equal to a predetermined value, the second control unit modifies the parameters so that the control data corresponding to the operation content predicted by the operation content prediction model can be more easily determined by the first control unit. A control device for a human-powered vehicle according to any one of claims 7 to 10.
12. The control algorithm includes a procedure for determining the control data by comparing the sensor value included in the input information with a predetermined threshold, The second control unit performs at least one of the following: changing the value of the threshold, and changing the timing of the control by the first control unit. A control device for a human-powered vehicle according to any one of claims 1 to 11.
13. The control algorithm is a learning model that has been trained to output control data for the device based on the input information, The second control unit modifies the parameters of the learning model. A control device for a human-powered vehicle according to any one of claims 1 to 11.
14. The device is a gearbox for the human-powered vehicle, and the input information includes the cadence of the crank of the drive mechanism of the human-powered vehicle. The first control unit controls the transmission to increase the gear ratio when the acquired cadence is greater than or equal to a predetermined first threshold, and controls the transmission to decrease the gear ratio when the acquired cadence is less than or equal to a second threshold lower than the first threshold. The second control unit modifies at least one of the first threshold and the second threshold. A control device for a human-powered vehicle according to any one of claims 1 to 12.
15. The second control unit performs at least one of the following: lowering the first threshold and raising the second threshold. The control device for a human-powered vehicle according to claim 14.
16. The device is a transmission for the human-powered vehicle, and the input information includes the torque of the crank of the drive mechanism of the human-powered vehicle. The first control unit controls the transmission to decrease the gear ratio when the acquired torque is greater than or equal to a predetermined third threshold, and controls the transmission to increase the gear ratio when the acquired torque is less than or equal to a fourth threshold lower than the third threshold. The second control unit modifies at least one of the third threshold and the fourth threshold. A control device for a human-powered vehicle according to any one of claims 1 to 12.
17. The second control unit performs at least one of the following: lowering the third threshold and raising the fourth threshold. The control device for a human-powered vehicle according to claim 16.
18. The device is a transmission for the human-powered vehicle, and the input information includes the driving speed of the human-powered vehicle. The first control unit controls the transmission to increase the gear ratio when the acquired driving speed is above a predetermined fifth threshold, and controls the transmission to decrease the gear ratio when the acquired driving speed is below a sixth threshold, which is lower than the fifth threshold. The second control unit modifies at least one of the fifth threshold and the sixth threshold. A control device for a human-powered vehicle according to any one of claims 1 to 12.
19. The second control unit performs at least one of the following: lowering the fifth threshold and raising the sixth threshold. The control device for a human-powered vehicle according to claim 18.
20. The device is an assist device for the human-powered vehicle, and the input information includes the cadence of the crank of the drive mechanism of the human-powered vehicle. The first control unit controls the assist device to reduce its output when the acquired cadence is greater than or equal to a predetermined seventh threshold, and controls the assist device to increase its output when the acquired cadence is less than or equal to an eighth threshold, which is lower than the seventh threshold. The second control unit modifies at least one of the seventh threshold and the eighth threshold. A control device for a human-powered vehicle according to any one of claims 1 to 12.
21. The second control unit performs at least one of the following: lowering the seventh threshold and raising the eighth threshold. The control device for a human-powered vehicle according to claim 20.
22. The device is an assist device for the human-powered vehicle, and the input information includes the torque of the crank of the drive mechanism of the human-powered vehicle. The first control unit controls the assist device so that the output of the assist device increases when the acquired torque is greater than or equal to a predetermined ninth threshold, and controls the assist device so that the output of the assist device decreases when the acquired torque is less than or equal to a tenth threshold, which is lower than the ninth threshold. The second control unit modifies at least one of the ninth threshold and the tenth threshold. A control device for a human-powered vehicle according to any one of claims 1 to 12.
23. The second control unit performs at least one of the following: lowering the ninth threshold and raising the tenth threshold. The control device for a human-powered vehicle according to claim 22.
24. We obtain input information regarding the operation of human-powered vehicles. A control unit that automatically controls a transmission or assist device mounted on the human-powered vehicle using a predetermined control algorithm based on acquired input information, is provided with an operation probability output model that outputs the probability of the rider performing an intervention operation based on the input information. If the probability output from the aforementioned operation probability output model is greater than or equal to a predetermined value, the parameters for automatic control are changed. The control unit performs automatic control based on the modified parameters. Control methods for human-powered vehicles.
25. Computers We obtain input information regarding the operation of human-powered vehicles. A control unit that determines and automatically controls the control data of a transmission or assist device mounted on the human-powered vehicle using a predetermined control algorithm based on acquired input information, employs an operation content prediction model that predicts the operation content of the rider on the device, If the degree of discrepancy between the operation content predicted by the operation content prediction model and the control data determined by the control unit is greater than or equal to a predetermined value, the parameters for automatic control are changed. The control unit performs automatic control based on the modified parameters. Control methods for human-powered vehicles.
26. On the computer, We obtain input information regarding the operation of human-powered vehicles. A control unit that automatically controls a transmission or assist device mounted on the human-powered vehicle using a predetermined control algorithm based on acquired input information, is provided with an operation probability output model that outputs the probability of the rider performing an intervention operation based on the input information. If the probability output from the aforementioned operation probability output model is greater than or equal to a predetermined value, the parameters for automatic control are changed. A computer program that executes a process.
27. On the computer, We obtain input information regarding the operation of human-powered vehicles. A control unit that determines and automatically controls the control data of a transmission or assist device mounted on the human-powered vehicle using a predetermined control algorithm based on acquired input information, employs an operation content prediction model that predicts the operation content of the rider on the device, If the degree of discrepancy between the operation content predicted by the operation content prediction model and the control data from the control unit is greater than or equal to a predetermined value, the parameters for automatic control are changed. A computer program that executes a process.