Control device, learning method for learning model, learning model, computer program, and storage medium

The control device optimizes ride comfort and efficiency in human-powered vehicles by using a learning model to automatically adjust components like the telescopic mechanism and suspension based on driving conditions, addressing the need for manual skill in controlling these mechanisms.

JP7792372B2Active Publication Date: 2025-12-25SHIMANO INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023080256
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-05-15
Publication Date
2025-12-25
Estimated Expiration
2039-01-31

AI Technical Summary

Technical Problem

Existing human-powered vehicles face challenges in optimizing ride comfort and efficiency due to vibrations in components like the seat post and suspension, requiring manual skill to control these mechanisms effectively.

Method used

A control device that automatically adjusts the telescopic mechanism, suspension, and seat post based on various driving conditions using a learning model and neural network to optimize comfort and efficiency.

Benefits of technology

The control device enhances ride comfort and efficiency by automatically adjusting components to match driving environments, reducing manual effort and improving user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007792372000001
    Figure 0007792372000001
  • Figure 0007792372000002
    Figure 0007792372000002
  • Figure 0007792372000003
    Figure 0007792372000003
Patent Text Reader

Abstract

To provide a component control device, a learning method of a learning model, a learning model, a computer program, and a storage medium which are configured to optimally and automatically control a component including an expansion / contraction mechanism.SOLUTION: A control device comprises a control unit for controlling an expansion / contraction mechanism on the basis of output information on the control of the expansion / contraction mechanism which is output by a learning model according to input information including at least one of a piece of travel information on a human-powered vehicle, related to the traveling of the human-powered vehicle, and a piece of travel environment information on the human-powered vehicle. The control unit calculates an evaluation value for evaluating the output information by using post-control input information which is the input information after the control of the expansion / contraction mechanism.SELECTED DRAWING: Figure 12
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a control device for controlling components of a human-powered vehicle, a learning method for a learning model, a learning model, a computer program, and a storage medium. [Background technology]

[0002] There are human-powered vehicles that use at least part of human power, including bicycles, electrically assisted bicycles, and electric bicycles known as e-bikes. Human-powered vehicles are equipped with multiple components, such as a transmission, a brake device, a seat post, and a suspension. A method has been proposed in which operation commands are sent by wireless communication signals to not only the transmission but also each of the multiple components (Patent Document 1). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 2018-089989 Summary of the Invention [Problem to be solved by the invention]

[0004] Among the multiple components, the seat post, including the telescopic mechanism, and the suspension are involved in vibrations that have a significant impact on the ride comfort of a human-powered vehicle. By suppressing vibrations in the seat post and suspension or controlling the spring coefficient to an appropriate coefficient, the ride comfort of a human-powered vehicle can be improved and efficient driving with less effort is possible. Skill is required for the rider to manually control the seat post and suspension appropriately while driving. It is hoped that optimal automatic control will be realized according to the driving conditions, road surface conditions, and purpose of the human-powered vehicle.

[0005] An object of the present invention is to provide a component control device that optimally and automatically controls a component including an extension / retraction mechanism, a learning method for a learning model, a learning model, a computer program, and a storage medium. [Means for solving the problem]

[0006] (1) A control device according to a first aspect of the present invention includes a control unit that controls the extension mechanism based on output information related to control of the extension mechanism output by a learning model in response to input information related to traveling of a human-powered vehicle. This allows automatic control of the telescopic mechanism to be achieved in accordance with various situations or driving environments based on a variety of input information regarding the driving of the human-powered vehicle.

[0007] (2) In the control device according to the second aspect of the present invention, the telescopic mechanism is a suspension of the human-powered vehicle, and the output information includes at least one of a stroke length, a lockout state, a spring force, and a damping rate. This allows for automatic control of the suspension of the human-powered vehicle to be achieved in accordance with various situations or driving environments based on a variety of input information related to the driving of the human-powered vehicle.

[0008] (3) In a control device according to a third aspect of the present invention, the suspension includes a first member and a second member movably mounted relative to the first member, and the input information includes a first acceleration output by a first acceleration sensor attached to the first member and a second acceleration output by a second acceleration sensor attached to the second member. Therefore, when a human-powered vehicle is traveling, automatic control of the suspension can be achieved in accordance with road surface conditions based on information about vibrations obtained from an acceleration sensor attached to the movable member.

[0009] (4) In the control device according to the fourth aspect of the present invention, the learning model outputs the output information so that the difference between the first acceleration and the second acceleration falls within a predetermined range. This allows automatic suspension control for human-powered vehicles to be achieved that adjusts to road conditions while absorbing vibrations within an appropriate range.

[0010] (5) In a control device according to a fifth aspect of the present invention, the telescopic mechanism is a seat post of the human-powered vehicle, and the output information includes at least one of seat height, seat inclination, fore-aft position, and left-right position. This allows automatic control of the seat post of the human-powered vehicle to be achieved in accordance with various situations or driving environments based on a variety of input information related to the driving of the human-powered vehicle.

[0011] (6) In a control device according to a sixth aspect of the present invention, the input information includes at least one of driving information of the human-powered vehicle and driving environment information of the human-powered vehicle. This allows for proper automatic control of the telescopic mechanism to suit the driving environment when driving a human-powered vehicle.

[0012] (7) In a control device according to a seventh aspect of the present invention, the driving information includes at least one of the driving speed of the human-powered vehicle, the acceleration of the human-powered vehicle, the attitude of the human-powered vehicle, the crank cadence of the human-powered vehicle, the driving force of the human-powered vehicle, the load balance of the human-powered vehicle, the gear ratio of the human-powered vehicle, the amount of brake operation of the human-powered vehicle, and physical information of the user. This allows automatic control of the telescopic mechanism to be achieved in accordance with various situations or driving environments based on a variety of input information regarding the driving of the human-powered vehicle.

[0013] (8) In a control device according to an eighth aspect of the present invention, the traveling environment information of the human-powered vehicle includes at least one of a wheel contact state, road surface conditions, position information, and weather. This allows automatic control of the telescopic mechanism to be achieved in accordance with various situations or driving environments based on a variety of input information regarding the driving of the human-powered vehicle.

[0014] (9) In a control device according to a ninth aspect of the present invention, the control unit outputs the control content of the extension / contraction mechanism to a notification unit that notifies a user. This allows the user to recognize the control content of the extension mechanism that is tailored to various situations or driving environments based on a variety of input information regarding the driving of the human-powered vehicle, thereby realizing automatic control that does not cause any discomfort to the user.

[0015] (10) A control device according to a tenth aspect of the present invention includes an evaluation unit that evaluates the output information, and updates the learning model based on the evaluation by the evaluation unit. This allows automatic control of the telescopic mechanism to be achieved that matches the driving characteristics and preferences of the user who rides the human-powered vehicle.

[0016] (11) In a control device according to an eleventh aspect of the present invention, the evaluation unit evaluates the output information based on post-control input information, which is the input information after the control unit controls the extension / contraction mechanism. This allows automatic control of the telescopic mechanism to be achieved that matches the driving characteristics and preferences of the user who rides the human-powered vehicle.

[0017] (12) A control device according to the twelfth aspect of the present invention includes an operation unit that accepts a specified operation regarding the output information, and evaluates the output information based on a comparison between the specified operation and post-control output information output from the learning model based on the post-control input information. This allows automatic control of the telescopic mechanism to be achieved that matches the operation based on the driving characteristics and preferences of the user who is the rider of the human-powered vehicle.

[0018] (13) In the control device according to the thirteenth aspect of the present invention, the learning model is prepared for each driving course on which the human-powered vehicle is driven, and the control unit accepts the selection of a driving course, and controls the extension / retraction mechanism based on the output information output by the learning model corresponding to the selected driving course in response to the input information. This allows automatic control of the extension / retraction mechanism to be realized in accordance with various situations or driving environments based on a variety of input information that is suited to the driving course of the human-powered vehicle.

[0019] (14) A method for generating a learning model according to a fourteenth aspect of the present invention uses a neural network that outputs output information related to the control of a telescopic mechanism, one of the components of a human-powered vehicle, when input information related to the driving of the human-powered vehicle is input, acquires the input information related to the driving of the human-powered vehicle, provides the acquired input information to the neural network to identify the output information output, and, when the telescopic mechanism is controlled based on the identified output information, learns parameters in the intermediate layer of the neural network by a computer so as to improve the evaluation of the driving state of the human-powered vehicle. For this reason, a learning model is generated to output output information for controlling the extension mechanism based on a variety of input information related to the driving of the human-powered vehicle, in accordance with various situations or driving environments. By using the output information output from the learning model, appropriate automatic control can be achieved according to the situation or driving environment.

[0020] (15) A learning model according to the fifteenth aspect of the present invention comprises an input layer that receives input information related to the driving of a human-powered vehicle, an output layer that outputs output information related to the control of a part of a component of the human-powered vehicle that has an extension mechanism, and an intermediate layer that has parameters learned to improve the evaluation of the driving state of the human-powered vehicle when the part is controlled based on the output information output from the output layer.When the input information is input to the input layer, a calculation is performed in the intermediate layer, and output information related to the control of the part is output from the output layer. Therefore, appropriate automatic control is realized according to the situation or driving environment using a trained learning model that outputs output information for controlling the extension mechanism based on various input information regarding the driving of the human-powered vehicle.

[0021] (16) A computer program according to a sixteenth aspect of the present invention causes a computer to execute a process of acquiring input information related to the traveling of a human-powered vehicle using a neural network that outputs output information related to the control of a part of a component of the human-powered vehicle that has an extension mechanism when input information related to the traveling of the human-powered vehicle is input, acquiring the input information related to the traveling of the human-powered vehicle by providing the acquired input information to the neural network to identify output information to be output, and, when the part is controlled based on the identified output information, learning parameters in an intermediate layer of the neural network so as to improve an evaluation of the comfort of a passenger of the human-powered vehicle. For this reason, a learning model is generated so that the computer can output output information for controlling the extension mechanism based on a variety of input information related to the driving of the human-powered vehicle, in accordance with various situations or driving environments. By using the output information output from the learning model, appropriate automatic control can be achieved according to the situation or driving environment.

[0022] (17) A storage medium according to a seventeenth aspect of the present invention stores the computer program according to (16) above. Therefore, based on a computer program read by the computer from a storage medium, the computer can generate a learning model that outputs output information for controlling the extension mechanism based on various input information regarding the driving of the human-powered vehicle, in accordance with various situations or driving environments. [Effects of the Invention]

[0023] The data control device for controlling a human-powered vehicle according to the present invention can automatically control the extension mechanism in accordance with various situations or driving environments based on a variety of input information related to the driving of the human-powered vehicle. [Brief explanation of the drawings]

[0024] [Figure 1] FIG. 1 is a side view of a human-powered vehicle to which the control device is applied. [Figure 2]FIG. 2 is a block diagram showing the internal configuration of a control unit. [Figure 3] 10 is a flowchart illustrating an example of a method for generating a learning model. [Figure 4] 1 is a flowchart showing a first example method for generating a learning model. [Figure 5] FIG. 1 is a diagram illustrating an overview of a first example learning model. [Figure 6] 10 is a flowchart showing a second example method for generating a learning model. [Figure 7] FIG. 10 is a diagram illustrating an overview of a second example learning model. [Figure 8] 10 is a flowchart illustrating an example of a control procedure using a learning model by a control unit. [Figure 9] FIG. 10 is a block diagram showing the configuration of a control system according to a second embodiment. [Figure 10] FIG. 10 is a diagram showing an example of a screen displayed based on an application program. [Figure 11] FIG. 10 is a diagram showing an example of a screen displayed based on an application program. [Figure 12] 10 is a flowchart showing an example of a relearning procedure of a control unit in the second embodiment. [Figure 13] FIG. 10 is a block diagram showing the configuration of a control system according to a third embodiment. [Figure 14] 11 is a flowchart showing an example of a control procedure using a learning model by a terminal device 2 in the third embodiment. [Figure 15] FIG. 10 is a diagram showing an example of the contents of a selection screen. DETAILED DESCRIPTION OF THE INVENTION

[0025] The following description of each embodiment is an example of a form that the control device according to the present invention can take, and is not intended to limit the form. The control device, learning model generation method, learning model, computer program, and storage medium according to the present invention can take forms different from each embodiment, such as a modified version of each embodiment, or a form that combines at least two mutually consistent modified versions.

[0026] In the following description of each embodiment, terms expressing directions such as front, rear, forward, backward, left, right, side, up, and down are used based on the directions when the user is seated in the saddle of the human-powered vehicle.

[0027] (First embodiment) FIG. 1 is a side view of a human-powered vehicle A to which the control device of the first embodiment is applied. Human-powered vehicle A is a road bike that includes an assist mechanism C that uses electric energy to assist the propulsion of human-powered vehicle A. The configuration of human-powered vehicle A can be changed as desired. In a first example, human-powered vehicle A does not include an assist mechanism C. In a second example, human-powered vehicle A is a city bike, mountain bike, or cross bike. In a third example, human-powered vehicle A includes the features of the first and second examples.

[0028] The human-powered vehicle A includes a main body A1, handlebars A2, a front wheel A3, a rear wheel A4, a front fork A5, a seat A6, and a derailleur hanger A7. The human-powered vehicle A includes a drive mechanism B, an assist mechanism C, an operating device D, a transmission E, a seat post F, a suspension G, a battery unit H, and a control unit 100. The human-powered vehicle A includes a speed sensor S1, a cadence sensor S2, a torque sensor S3, an angle sensor S4, an acceleration sensor S5, an air pressure sensor S6, and an image sensor S7. The main body A1 includes a frame A12.

[0029] The drive mechanism B transmits the human-powered driving force to the rear wheel A4 by chain drive, belt drive, or shaft drive. Figure 1 shows an example of a chain-drive drive mechanism B. The drive mechanism B includes a crank B1, a first sprocket assembly B2, a second sprocket assembly B3, a chain B4, and a pair of pedals B5.

[0030] The crank B1 includes a crankshaft B11, a right crank B12, and a left crank B13. The crankshaft B11 is rotatably supported by an assist mechanism C provided on the frame A12. The right crank B12 and the left crank B13 are each connected to the crankshaft B11. One of a pair of pedals B5 is rotatably supported by the right crank B12. The other of the pair of pedals B5 is rotatably supported by the left crank B13.

[0031] The first sprocket assembly B2 has a first rotational axis and is connected to the crankshaft B11 so as to be rotatable together with the crankshaft B11. The first sprocket assembly B2 includes one or more sprockets B22. The rotational axis of the crankshaft B11 and the rotational axis of the first sprocket assembly B2 are coaxial.

[0032] The second sprocket assembly B3 has a second rotational center axis and is rotatably supported on a hub (not shown) of the rear wheel A4. The second sprocket assembly B3 includes one or more sprockets B31.

[0033] The chain B4 is wound around one of the sprockets B22 of the first sprocket assembly B2 and one of the sprockets B31 of the second sprocket assembly B3. When the crank B1 rotates forward due to manual driving force applied to a pair of pedals B5, the first sprocket assembly B2 rotates forward together with the crank B1, and the rotation of the first sprocket assembly B2 is transmitted to the second sprocket assembly B3 via the chain B4, causing the rear wheel A4 to rotate forward.

[0034] The assist mechanism C assists in the propulsion of the human-powered vehicle A. In one example, the assist mechanism C assists in the propulsion of the human-powered vehicle A by transmitting torque to the first sprocket assembly B2. The assist mechanism C includes an electric motor. The assist mechanism C may also include a reducer. The assist mechanism C runs a chain B4 that transmits driving force to the rear wheel A4 of the human-powered vehicle A. The assist mechanism C is part of a component that can be controlled by a signal control to assist the running of the chain B4.

[0035] The operation device D includes an operation unit D1 operated by a user. An example of the operation unit D1 is one or more buttons. The operation device D accepts, via the operation unit D1, instructions for controlling various components, such as instructions for operating the electric seat post F or the electric suspension G. Another example of the operation unit D1 may accept instructions for switching the mode of the assist mechanism C (energy saving mode, high power mode, etc.). The operation unit D1 is a brake lever. The operation device D outputs the amount of operation of the brake lever to the control unit 100. Each time the brake levers provided on the left and right handlebars are tilted to the left or right, the number of gears or the gear ratio of the transmission E can be changed. The operation device D is communicatively connected to the control unit 100 or each component so as to transmit and receive signals corresponding to the operation of the operation unit D1. In a first example, the operation device D is communicatively connected to the components via a communication line or an electric line capable of PLC (Power Line Communication). In a second example, the operation device D is communicatively connected to the components via a wireless communication unit capable of wireless communication.

[0036] The transmission E can take various forms. In a first example, the transmission E is an external transmission that changes the state of connection between the second sprocket assembly B3 and the chain B4. In a second example, the transmission E is an external transmission that changes the state of connection between the first sprocket assembly B2 and the chain B4. In a third example, the transmission E is an internal transmission. In the third example, the moving part of the transmission E includes at least one of a sleeve and a pawl of an internal transmission. In a fourth example, the transmission E is a continuously variable transmission. In the fourth example, the moving part of the transmission E includes a ball planetary (planetary rolling element) of a continuously variable transmission. The transmission E is part of a component that can be controlled by a signal control to change the number of gears.

[0037] The seat post F is one of the telescopic mechanisms included in the human-powered vehicle A. The seat post F includes a post body F1 movably mounted relative to the frame A12 and a yoke F2 mounted on the upper end of the post body F1. The seat post F is part of a component that can be controlled by setting the seat height as an operating parameter. The seat post F includes an actuator F3 for the post body F1. In a first example, the seat post F is an electric seat post. The actuator F3 of the seat post F in the first example is an electric motor. The seat height can be set to one or more values. The seat post F raises and lowers the post body F1 relative to the frame A12 in accordance with the seat height setting value corresponding to a signal sent in response to an operation from the operating device D or a signal automatically sent from the control unit 100. The seat height of the seat A6 is adjusted by raising and lowering the post body F1. The seat post F uses a sensor that detects the protruding length of the post body F1 from the frame A12 and adjusts the protruding length to a value corresponding to the seat height setting value. The seat post F may be adjusted to a set seat height using a sensor that detects the relative linear movement between the first and second cylinders of the post F body F1. In a second example, the seat post F is a mechanical seat post. The seat post F of the second example includes a hydraulic seat post or a hydraulic and pneumatic seat post. The seat post F of the second example extends by at least one of spring and air force and retracts by manual force. In the seat post F of the second example, the actuator F3 is a solenoid valve that opens and closes the oil or air flow path. The seat post F of the second example opens the solenoid valve upon receiving a signal corresponding to opening from the operating device D or the control unit 100. When the solenoid valve is open, the seat post F attempts to extend by at least one of spring and air force. When the solenoid valve is closed, the protrusion length or linear movement of the post body F1 from the frame A12 remains unchanged. In the second example seat post F, when a signal corresponding to opening is received, the solenoid valve opens for a predetermined time, or until the next operation command is received.The seat post F of the second example may be configured to use a sensor that detects the length of projection or linear movement of the post body F1 from the frame A12, and to open the solenoid valve until the length of projection or linear movement reaches a value corresponding to the set seat height.In a third example, the seat post F may be a seat post equipped with an opening and closing mechanism that combines an electric motor with a hydraulic valve or a pneumatic valve.

[0038] The seat A6 is attached to the yoke F2 of the seat post F. The seat A6 includes a seating surface A61 and a rail A62 extending in the front-rear direction. The rail A62 of the seat A6 is fitted into a groove provided in the yoke F2 extending in the front-rear direction. The front-rear position of the seat A6 relative to the post body F2 is adjusted by the position of the yoke F2 relative to the rail A62. The seat post F includes an actuator F4. In a first example, the actuator F4 is an electric motor that rotates a gear provided on the yoke F2 so that the gear engages with the rail A62, which serves as a rack rail. The seat post F is part of a component that can be controlled by setting the front-rear position of the seat A6 as an operating parameter. The seat post F adjusts the position of the yoke F2 relative to the rail A62 of the seat A6 to a position corresponding to the set front-rear position. The seat post F may also be configured so that the left-right position can be controlled by providing a groove in the yoke F2 in the front-rear direction and providing a rail in the seat A6 extending in the front-rear direction.

[0039] The seatpost F's yoke F2 is attached to the post body F1 in a manner that allows for angle adjustment in the front-to-back or left-to-right directions. The seatpost F includes an actuator F5. The actuator F5 is an electric motor. The seatpost F is a component that can control, as an operating parameter, the inclination of the seating surface A61 of the seat A6 relative to the post body F1, i.e., the frame A12. The seatpost F adjusts the inclination of the seating surface A61 of the seat A6 relative to the post body F1 to a set angle.

[0040] The adjustment of the front-to-back position, left-to-right position, and tilt of the seat A6 may be achieved by other configurations. Alternatively, the rail A62 of the seat A6 may be clamped between the yaw frame F2 and a clamp rotatably attached to the yaw frame F2 and secured with bolts and nuts. In this configuration, the actuator F4 or the actuator F5 is an electric motor that controls the rotation angle and left-to-right or front-to-back position of the clamp, and an electric motor that tightens and loosens the bolts.

[0041] The suspension G is one of the telescopic mechanisms included in the human-powered vehicle A. The suspension G can take various forms. In a first example, the suspension G is a front suspension attached to the front fork A5 that damps impacts applied to the front wheel A3. The suspension G includes a first member G1 attached to the front wheel A3 and a second member G2 that is movable relative to the first member G1 via a spring or air spring. The second member G2 is fixed to the main body A1 or the rider's section of the handlebar A2. The suspension G includes an actuator G3. The suspension G is part of a component that can be controlled by setting operating parameters such as stroke length, lockout state, spring force, and damping rate. The operating parameters of the suspension G can be changed by driving the actuator G3, which is, for example, an electric motor. The suspension G may also be a rear suspension that damps impacts applied to the rear wheel A4. In the case of a rear suspension, the suspension G includes a first member attached to the rear wheel A4 and fixed to the seat stay or chain stay, and a second member fixed to the seat tube, top tube, or down tube of the frame A12. The second member G2 is movable relative to the first member via a spring or air spring. The suspension G may be attached to the seat post F. The suspension G may also be a front or rear suspension. The suspension G may be either a hydraulic or pneumatic-hydraulic hybrid suspension. The actuator G3 may be a valve that opens and closes an oil or air flow path. The suspension G switches between a locked state and a released state in response to a signal sent from the operating device D or a signal automatically sent from the control unit 100. The suspension G may include a pump and a valve that adjusts the air supply from the pump to the air spring, and the stroke length may be adjustable in multiple stages in response to the signal. To change the stroke length, the actuator G3 is an electromagnetic valve that opens and closes a valve.The suspension G may be capable of changing the spring force or damping rate in a plurality of stages in response to a signal by driving the actuator G3.

[0042] Here, the spring force refers to the strength of the suspension G as a spring, and is, for example, spring characteristics such as spring constant. If the suspension G is hydraulic or pneumatic, it may have nonlinear spring characteristics according to the hydraulic pressure or air pressure.

[0043] The battery unit H includes a battery H1 and a battery holder H2. The battery H1 is a storage battery including one or more battery cells. The battery holder H2 is fixed, for example, to the frame A12 of the human-powered vehicle A. The battery holder H2 may also be fixed to a bicycle part other than the frame A12. The battery H1 is detachable from the battery holder H2. When attached to the battery holder H2, the battery H1 is electrically connected to the assist mechanism C, the gear shifter E, the actuators F3, F4, and F5 of the seat post F, the actuator G1 of the suspension G, and the control unit 100.

[0044] The speed sensor S1 is fixed to the front fork A5. The speed sensor S1 is a sensor that outputs a signal indicating the traveling speed of the human-powered vehicle A. The speed sensor S1 includes, for example, a magnet provided on the front wheel A3 and a main body provided on the front fork A5 that detects the magnet, and measures the rotational speed.

[0045] The cadence sensor S2 is provided to measure the cadence of either the right crank B12 or the left crank B13. The cadence sensor S2 outputs a signal indicative of the measured cadence. The torque sensor S3 is provided to measure the torque applied to the right crank B12 and the left crank B13, respectively. The torque sensor S3 outputs a signal indicative of the torque measured at at least one of the right crank B12 and the left crank B13.

[0046] The angle sensor S4 is fixed to the frame A12. The angle sensor S4 is a sensor that outputs signals indicating the yaw, roll, and pitch of the human-powered vehicle A. The angle sensor S4 may output signals for at least one of the three axes, rather than for all three axes. In the first example, the angle sensor S4 is a gyro sensor. In the second example, the angle sensor S4 is a direction sensor that outputs a rotation angle.

[0047] The acceleration sensor S5 includes a first acceleration sensor S51 attached to the first member G1 of the suspension G and a second acceleration sensor S52 attached to the second member G2. The first acceleration sensor S51 and the second acceleration sensor S52 output signals indicative of acceleration.

[0048] The air pressure sensor S6 is provided on the front wheel A3 or the rear wheel A4, and outputs a signal indicating a value corresponding to the tire air pressure.

[0049] The image sensor S7 is mounted on the frame A12 facing forward. In a first example, it is mounted on the front fork A5 together with a light facing forward. In a second example, it is mounted on the handlebar A2. The image sensor S7 uses a camera module to output an image corresponding to the user's field of view. The image sensor S7 outputs a video signal capturing an image of an object present in the direction of travel. The image sensor S7 may be integrated with an image recognition unit that distinguishes and recognizes roads, buildings, and other traveling vehicles from the image, and may be a module that outputs the recognition results.

[0050] FIG. 2 is a block diagram showing the internal configuration of the control unit 100. The control unit 100 includes a control unit 10, a memory unit 12, and an input / output unit 14. The control unit 100 is installed somewhere on the frame A12. The control unit 100 may be installed between the handlebar A2 and the frame A12. In a first example, as shown in FIG. 1, the control unit 100 is installed between the first sprocket assembly B2 and the frame A12. In a second example, the control unit 100 is installed in the battery holder H2.

[0051] The control unit 10 is a processor that uses a CPU (Central Processing Unit) or a GPU (Graphics Processing Unit), and uses built-in memories such as ROM (Read Only Memory) and RAM (Random Access Memory) to execute processing by controlling a learning algorithm (described later) and components provided in the human-powered vehicle A. The control unit 10 acquires time information at any timing using a built-in clock.

[0052] The storage unit 12 includes a non-volatile memory such as a flash memory. The storage unit 12 stores a learning program 1P and a control program 2P. The learning program 1P may be included in the control program 2P. The storage unit 12 stores a learning model 1M created by processing by the control unit 10. The learning program 1P may be obtained by reading out a learning program 8P stored in a recording medium 18 and copying it to the storage unit 12. The control program 2P may be obtained by reading out a control program 9P stored in a storage medium 19 and copying it to the storage unit 12.

[0053] The input / output unit 14 is connected to the sensors S1-S7 provided on the human-powered vehicle A, the operating device D, and the actuators F3, F4, and F5 of the seat post F to be controlled. The input / output unit 14 is also connected to the actuator G3 of the suspension G to be controlled. The control unit 10 acquires a signal indicating speed from the speed sensor S1 via the input / output unit 14. The control unit 10 acquires a signal indicating cadence from the cadence sensor S2 and a signal indicating torque from the torque sensor S3 via the input / output unit 14. The control unit 10 inputs a signal indicating the attitude of the human-powered vehicle A, specifically, yaw, roll, or pitch, from the angle sensor S4 via the input / output unit 14. The control unit 10 acquires signals indicating acceleration from the first acceleration sensor S51 and the second acceleration sensor 52 via the input / output unit 14. The control unit 10 acquires a signal indicating a value corresponding to tire air pressure from the air pressure sensor S6 via the input / output unit 14. The control unit 10 acquires a video signal or a recognition result based on the video signal from the image sensor S7 via the input / output unit 14. The control unit 10 processes the information obtained from these sensors S1-S7 as input information. The control unit 10 receives a signal from the operating device D via the input / output unit 14. In the block diagram of FIG. 2, the input / output unit 14 is connected to the actuators F3, F4, F5, and actuator G3, but does not need to be connected to actuators that are not to be controlled.

[0054] The control unit 10 provides input information regarding the driving of the human-powered vehicle acquired by the input / output unit 14 to the learning model 1M, and controls the telescopic mechanism based on output information regarding the control of the telescopic mechanism such as the seat post F or suspension G output by the learning model 1M.

[0055] The learning model 1M stored in the storage unit 12 is generated in advance in a driving test environment for the human-powered vehicle A as follows. In the first stage, the learning model 1M may be generated by running a simulation of a model of the human-powered vehicle A, rather than actually driving the human-powered vehicle A. Driving information and operation results of the human-powered vehicle A, in which the user can operate the seat post F and suspension G, may be collected when the human-powered vehicle A is actually driven, and learning may be performed based on the collected information. The learning model 1M may be generated separately for the seat post F and suspension G, which are the objects to be controlled, or may be generated to output control information for both.

[0056] FIG. 3 is a flowchart showing an example of a method for generating a learning model 1M. The control unit 10 executes the following method for generating a learning model 1M based on a learning program 1P. In this embodiment, the learning algorithm is reinforcement learning (deep Q-learning) using a neural network (hereinafter referred to as NN: Neural Network). The learning method may be a supervised learning algorithm or a recurrent neural network using time-series data.

[0057] The control unit 10 acquires input information relating to the running of the human-powered vehicle A via the input / output unit 14 (step S101).

[0058] The control unit 10 provides the input information acquired in step S101 to the NN (step S103), and identifies the output information output from the NN (step S105).

[0059] The control unit 10 calculates an evaluation value for the identified output information (step S111). In a first example, the evaluation value of the driving state is derived based on post-control input information that can be acquired after control based on the output information identified in step S105. In a second example, the evaluation value of the driving state is derived based on a comparison between the output information identified in step S105 and the user's actual specifying operation on the operating device D. Step S111 corresponds to the "evaluation unit" in the first embodiment.

[0060] The control unit 10 determines whether the evaluation value calculated in step S111 satisfies the condition (step S113), and if it is determined that the evaluation value does not satisfy the condition (S113: NO), the process proceeds to the next step S115.

[0061] The control unit 10 uses the evaluation value calculated in step S111 as, for example, a reward, and updates the parameters in the intermediate layer of the NN so as to improve the evaluation of the driving state based on the output control information, and proceeds with learning (step S115). As for the details of the learning method, it is advisable to select and use an appropriate method such as a known method in reinforcement learning, double deep Q learning, AC (Actor-Critic), A3C, etc. The control unit 10 returns the process to step S101 and continues learning.

[0062] If it is determined in step S113 that the evaluation value satisfies the condition (S113: YES), the control unit 10 ends the learning process.

[0063] When generating the learning model 1M using a supervised learning algorithm, the control unit 10 acquires input information obtainable from the group of sensors S1-S7 when a model user of the human-powered vehicle A drives the vehicle, and the operation details of the model user on the operation device D, and uses these as training data. The parameters in the NN are updated so that the output information output when the input information is given to the NN matches the actual operation details of the model user, and learning proceeds.

[0064] A method for generating the learning model 1M shown in the flowchart of Fig. 3 will be specifically described. Fig. 4 is a flowchart showing a first example of a method for generating the learning model 1M. In the first example, the control object is a suspension G. The processing procedure shown in the flowchart of Fig. 4 is a specific procedure that embodies the processing procedure shown in the flowchart of Fig. 3 for the purpose of controlling the suspension G.

[0065] The control unit 10 acquires at least the first acceleration from the first acceleration sensor S51 and the second acceleration from the second acceleration sensor S52 from the information that can be acquired from the sensor group S1-S7 using the input / output unit 14 (step S121). In step S121, the control unit 10 may acquire the traveling speed, cadence, power obtained from the cadence and torque, and attitude for each yaw, pitch, and roll that can be acquired from the sensor group S1-S7. In step S121, the control unit 10 may acquire the gear ratio obtained from the transmission E or the operating device D of the human-powered vehicle A. In step S121, the control unit 10 may acquire the operation amount of the brake lever of the human-powered vehicle A obtained from the operating device D.

[0066] The control unit 10 provides input information including at least the first acceleration and the second acceleration to the NN (step S123), and identifies output information including at least one of the stroke length, lockout state, spring force, and damping rate of the suspension G from the NN (step S125).

[0067] In the first example, the control unit 10 outputs a control signal based on the output information identified in step S125 to the actuator G3 of the suspension G to control it (step S127), and acquires post-control input information including the first acceleration and second acceleration after control (step S129). The control unit 10 calculates an evaluation value based on the post-control input information (step S131). In step S131, the control unit 10 calculates the difference between the first acceleration and the second acceleration acquired as the post-control input information as the evaluation value. The smaller the difference, the higher the evaluation. Since it is difficult to make the difference small, it is sufficient that the difference is within a predetermined range. In step S131, the control unit 10 may calculate the evaluation value so that a transfer function having the first acceleration as input and the second acceleration as output is minimized. In step S131, the control unit 10 may calculate the amplitude or power value of the second acceleration as the evaluation value. The smaller the amplitude or power value, the higher the evaluation. In some cases, such as when the road surface is unstable, the larger the amplitude, the higher the evaluation. The evaluation value may be calculated based on whether or not the difference between the first acceleration and the second acceleration and the transfer function are within a predetermined range.

[0068] The control unit 10 determines whether or not the condition that the difference calculated as the evaluation value is within a predetermined range is satisfied (step S133). In step S133, the control unit 10 determines whether or not the condition that the amplitude or power value of the second acceleration on the frame A12 side is less than a predetermined value is satisfied.

[0069] If it is determined in step S133 that the condition is not satisfied (S133: NO), the control unit 10 uses the evaluation value calculated in step S131 as a reward, updates the parameters in the intermediate layer of the NN so as to improve the evaluation of the running state, and proceeds with learning (step S135). In step S135, the control unit 10 updates the parameters so as to reduce the amplitude of the second acceleration, for example.

[0070] If it is determined in step S133 that the condition is met (S133: YES), the control unit 10 ends the learning process.

[0071] The procedure shown in the flowchart of FIG. 4 makes it possible to generate a learning model 1M that learns to control the suspension G so that vibrations of the frame A12 are absorbed and comfort is achieved.

[0072] In step S121, the control unit 10 may derive driving environment information, including any one of the wheel contact state, road surface conditions, and weather, from the video signal obtained from the image sensor S7 via the input / output unit 14, and use the derived driving environment information as input information. The road surface conditions may be, for example, the result of classifying the road surface based on the video signal, such as whether it is a smooth road surface, such as asphalt, or a highly uneven road surface, such as a mountain road. Alternatively, the road surface conditions may be the result of determining whether the road surface is slippery, such as wet or icy. The control unit 10 may acquire the types of the front wheels A3 and rear wheels A4 and identify the wheel contact state based on the air pressure obtained from the air pressure sensor S6, and use this as input information. Here, the types of the front wheels A3 and rear wheels A4 refer to types (product numbers) that differ depending on the size, material, thickness, and groove pattern. The type may also be a model number. The control unit 10 identifies the contact state for each type of front wheel A3 or rear wheel A4 based on the correspondence between air pressure and contact state pre-stored for each type of front wheel A3 or rear wheel A4. For example, the control unit 10 can determine the ground contact state differently for a thick, stiff front wheel A3 such as a mountain bike and a thin front wheel A3 for racing, even if the air pressures are similar.

[0073] FIG. 5 is a diagram showing an overview of a learning model 1M of a first example. In the specific example shown in FIG. 5, a learning model 1M that outputs output information related to the control of a suspension G is described. The learning model 1M includes an input layer 31 that receives input information related to the driving of human-powered vehicle A, an output layer 32 that outputs output information related to the control of the suspension G, which is one of the components of human-powered vehicle A and has an extension / retraction mechanism, and an intermediate layer 33 that has parameters trained to improve the evaluation of the driving state of human-powered vehicle A when the suspension G is controlled based on the output information output from the output layer 32. When input information related to driving is input to the input layer 31, calculations are performed in the intermediate layer 33 using the trained parameters, and output information related to the control of the suspension G is output from the output layer 32.

[0074] 5, at least a first acceleration obtained from a first acceleration sensor S51 and a second acceleration obtained from a second acceleration sensor S52 are provided to the input layer 31. A cadence obtained from a cadence sensor S2 may also be provided to the input layer 31. A power obtained by calculation using the torque and cadence may also be provided to the input layer 31.

[0075] Additionally, attitude data of human-powered vehicle A obtained from angle sensor S4 may be input to input layer 31. Attitude data is information indicating the tilt of human-powered vehicle A. The tilt is represented by a yaw component whose axis is the vertical direction, a roll component whose axis is the fore-and-aft direction of human-powered vehicle A, and a pitch component whose axis is the left-and-right direction.

[0076] The input layer 31 may be provided with the load balance of the human-powered vehicle A. The load balance may be a value calculated by the control unit 10 from the ratio of the pressures of the front wheels A3 and rear wheels A4 obtained from the air pressure sensor S6. The load balance may be calculated using a vector sensor or a strain gauge, or may be calculated by combining different types of sensors depending on the design. The load balance may also be determined in a driving test environment using piezoelectric sensors installed on the front wheels A3 and rear wheels A4, as well as on the seat A6 and handlebars A2 of the human-powered vehicle A, to determine whether the load balance is biased forward or backward.

[0077] A signal indicating the contact state of the front wheel A3 or rear wheel A4 with the road surface, obtained from the air pressure sensor S6, may be input to the input layer 31. The signal indicating the contact state is, in other words, driving environment information. The signal indicating the contact state corresponds to a numerical value indicating the size of the contact area, which becomes smaller as the air pressure increases. The signal indicating the contact state may also be a signal indicating the state of the contact area, which is large, medium, or small. Another example of driving environment information that may be input to the input layer 31 is a signal indicating the road surface conditions, which is obtained by image processing of the video signal obtained from the image sensor S7. The signal indicating the road surface conditions is, for example, a signal indicating the road surface conditions, such as the result of determining whether the road is off-road or paved, the result of determining whether it is up or down, and the presence or absence of slippage.

[0078] The output layer 32 outputs the spring force of the suspension G. Specifically, the output layer 32 outputs the action value of each of the spring forces classified into three levels, strong, medium, and weak, i.e., information indicating what spring force will improve the ride comfort. Based on the action value of the output information, the control unit 10 can select the spring force with the highest action value and output it to the suspension G. The spring force output from the output layer 32 that produces smaller vibrations measured at the second acceleration is evaluated higher.

[0079] As reinforcement learning progresses, learning model 1M obtains control information for suspension G to improve ride comfort according to the driving conditions, road surface conditions, etc. of human-powered vehicle A.

[0080] Fig. 6 is a flowchart showing a second example of a method for generating a learning model 1M. In the second example, the control object is seat post F. The processing procedure shown in the flowchart of Fig. 6 is a specific example of the processing procedure shown in the flowchart of Fig. 3, with the control of seat post F as the object.

[0081] Of the information obtainable from the sensors S1-S7 by the input / output unit 14, the control unit 10 obtains at least the traveling speed, cadence, and driving force obtained from the cadence and torque from the speed sensor S1 (step 141). In step S141, the control unit 10 may obtain the attitude of the human-powered vehicle A for each yaw, pitch, and roll. In step S141, the control unit 10 may obtain the gear ratio obtained from the transmission E or the operating device D of the human-powered vehicle A. In step S141, the control unit 10 may obtain the operation amount of the brake lever of the human-powered vehicle A obtained from the operating device D.

[0082] The control unit 10 provides input information including at least the running speed and cadence or driving force to the NN (step S143), and specifies output information including at least one of the seat height of the seat A6 on the seat post F, the inclination of the seat surface A61, the front-to-back position, and the left-to-right position of the seat A6 (step S145).

[0083] In the second example, the control unit 10 also outputs control signals based on the output information identified in step S145 to the actuators F3, F4, and F5 of the seat post F to control them (step S147), and after the control, acquires post-control input information including, for example, torque (step S149). The control unit 10 calculates an evaluation value based on the post-control input information (step S151). In step S151, the control unit 10 acquires torque as the post-control input information and calculates torque or driving force as the evaluation value. The lower the torque or driving force, the easier the user is pedaling, and the higher the evaluation.

[0084] The control unit 10 determines whether or not the condition that the torque or driving force calculated in step S151 is less than a predetermined value is met (step S153).

[0085] If it is determined in step S153 that the condition is not satisfied (S153: NO), the control unit 10 uses the evaluation value calculated in step S151 as a reward, updates the parameters in the intermediate layer of the NN so as to improve the evaluation of the driving state, and proceeds with learning (step S155). In step S155, the control unit 10 updates the parameters so as to reduce, for example, the torque or the driving force.

[0086] If it is determined in step S153 that the condition is met (S153: NO), the control unit 10 ends the learning process.

[0087] In the second example, in step S151, the control unit 10 may omit steps S147 and S149, and may calculate the degree of deviation as an evaluation value based on a comparison between the output information identified in step S145 and the user's actual specified operation on the operation device D. For example, when the user actually operates the operation device D to adjust the seat height, front-to-back position, and left-to-right position of the seat post F, learning may be carried out so that the output information output from the NN matches the actual control content. In this case, the operation content of the operation device D is teacher data, and learning is carried out by supervised learning.

[0088] In the second example, as learning progresses, learning model 1M obtains control information for seat post F to make pedaling easier for human-powered vehicle A. Through reinforcement learning based on information such as driving speed, image information, inclination, and power, the saddle position is automatically adjusted to the optimum position for the situation.

[0089] In the second example, the control unit 10 may also derive driving environment information including any one of the wheel contact state, road surface conditions, and weather from the video signal obtained from the image sensor S7 by the input / output unit 14 in step S141, and use the derived driving environment information as input information. The road surface conditions may be, for example, the result of classifying the road surface based on the video signal as being smooth, such as asphalt, or a highly uneven road surface, such as a mountain road. Alternatively, the road surface conditions may be the result of determining whether the road surface is wet, icy, or slippery. The control unit 10 may acquire the types of the front wheels A3 and rear wheels A4, and may also identify the wheel contact state based on the air pressure obtained from the air pressure sensor S6, and use this as input information.

[0090] FIG. 7 is a diagram showing an overview of a learning model 1M of a second example. In the specific example shown in FIG. 7, a learning model 1M that outputs output information related to the control of a seat post F will be described. The learning model 1M includes an input layer 31 that receives input information related to the traveling of the human-powered vehicle A, an output layer 32 that outputs output information related to the control of the seat post F, which has an extension mechanism, among the components of the human-powered vehicle A, and an intermediate layer 33 that has parameters trained to improve the evaluation of the traveling state of the human-powered vehicle A when the seat post F is controlled based on the output information output from the output layer 32. When input information related to the traveling is input to the input layer 31, calculations are performed in the intermediate layer 33 using the trained parameters, and output information related to the control of the seat post F is output from the output layer 32.

[0091] 7, the cadence obtained from the cadence sensor S2 and the torque obtained from the torque sensor S3 are provided to the input layer 31. The input layer 31 may also be provided with power obtained by calculation using the torque and the cadence.

[0092] The input layer 31 may be provided with a gear ratio obtained from the transmission E or the operating device D.

[0093] Attitude data of human-powered vehicle A obtained from angle sensor S4 may be input to input layer 31. Attitude data is information indicating the tilt of human-powered vehicle A. The tilt is expressed as a yaw component whose axis is the vertical direction, a roll component whose axis is the fore-and-aft direction of human-powered vehicle A, and a pitch component whose axis is the left-and-right direction. By inputting the attitude of human-powered vehicle A, it is expected that control of seat post F can be realized, such as lowering seat A6 on downhill slopes and raising seat A6 on uphill slopes.

[0094] The input layer 31 may receive input of the amount of brake operation obtained from an operating device D that includes a brake lever as an operating unit D1. When the amount of brake operation is large, the seat A6 is automatically lowered to make pedaling easier and to allow for safe stopping when stopping.

[0095] A video signal obtained from the image sensor S7 may be input to the input layer 31. Instead of inputting the video signal directly, a signal indicating the road surface conditions obtained by image processing of the video signal may be input to the input layer 31. The signal indicating the road surface conditions is, in other words, riding environment information. The signal indicating the road surface conditions is, for example, a signal indicating the road surface conditions such as the result of determining whether the road is off-road or paved, the result of determining whether it is up or down, and the presence or absence of slippage. By classifying the ups and downs of the road surface on which the vehicle will be traveling from a video signal corresponding to the scenery seen in the direction of travel, it becomes possible to determine whether the seat A6 should be raised or lowered and control the seat post F.

[0096] A signal indicating the traveling speed of the human-powered vehicle A obtained from the speed sensor S1 may also be input to the input layer 31. When the traveling speed is below a predetermined speed and the vehicle stops, it becomes possible to control the seat post F so that the seat A6 automatically lowers.

[0097] The output layer 32 outputs the height of the seat A6 on the seat post F. Specifically, the output layer 32 outputs information indicating the height of the seat A6, which is divided into three levels (high, medium, and low), i.e., the action value of each of the extension length or linear movement amount of the seat post F, i.e., the height that provides the best riding comfort. The height of the seat post F may not only be divided into three levels (high, medium, and low), but may also be controlled by the extension length or linear movement amount itself, which is continuously adjustable. A two-level adjustable product may also be used. Based on the action value of the output information, the height with the highest action value can be selected, and the extension length or linear movement amount corresponding to the selected height can be output to the seat post F. The height of the seat A6 output from the output layer 32 that results in less torque or power and less unnecessary force is highly evaluated. Based on the correspondence between the seat height and extension length, the linear movement amount corresponding to the selected height can also be output to the seat post F.

[0098] In another example, the output layer 32 may output an action value for each of a plurality of set positions for the front-rear or left-right position of the seat A6 on the seat post F. The output layer 32 may also output an action value for each inclination of the seat surface A61 of the seat A6.

[0099] As reinforcement learning progresses, learning model 1M obtains control information for seat post F to improve the riding comfort of human-powered vehicle A according to the driving conditions, road surface conditions, etc.

[0100] In the processing procedures shown in the flowcharts of Figures 3, 4, and 6, a reward is given every control period, and learning is promoted by immediate reward. However, this is not limited to this, and rewards may be given using the power, torque, or cadence of the second acceleration over a predetermined period. The information input to the learning model 1M or the pre-learning NN is numerical values ​​or information obtained from the sensor group S1-S7 every control period. However, numerical values ​​or information obtained from the sensor group S1-S7 over a predetermined period may also be provided to the input layer 31. In this case, an image graphing the output from the sensor group S1-S7 may be provided to the input layer 31.

[0101] The control unit 10 of the control unit 100 controls the components based on the control information output from the learning model 1M created as described above. FIG. 8 is a flowchart showing an example of a control procedure using the learning model 1M by the control unit 100. The control unit 10 repeatedly executes the processing procedure shown in the flowchart of FIG. 8. The processing may be executed at a predetermined control period (e.g., 30 milliseconds).

[0102] The control unit 10 acquires input information related to the traveling of the human-powered vehicle A via the input / output unit 14 (step S201). In step S201, the control unit 10 refers to the signal levels from the group of sensors S1-S7 input by the input / output unit 14 for each control period, and temporarily stores the signal levels in the internal memory of the control unit 10 or in a memory built into the input / output unit 14.

[0103] The control unit 10 provides the input information acquired in step S201 to the input layer 31 of the learning model 1M (step S203). In step S203, the control unit 10 selects and provides input information for the suspension G and input information for the seat post F.

[0104] The control unit 10 identifies output information related to the control of the component to be controlled, output from the learning model 1M (step S205). In step S205, the control unit 10 identifies, for example, the height of the seat A6 related to the seat post F, output from the learning model 1M, as the output information. In another example, the control unit 10 identifies the strength of the spring force of the suspension G, output from the learning model 1M, as the output information.

[0105] The control unit 10 refers to the state of the control target based on the identified output information (step S207). The control unit 10 determines whether or not it is necessary to output a control signal based on the relationship between the control content indicated by the identified output information and the referred state (step S209).

[0106] If it is determined in step S209 that it is necessary (S209: YES), the control unit 10 outputs a control signal to the component to be controlled based on the output information related to the identified control (step S211), and ends the control processing for one control cycle.

[0107] If it is determined in step S209 that the control is unnecessary (S209: NO), the control unit 10 ends the process without outputting a control signal based on the output information related to the identified control. The determination processes in steps S207 and S209 are not essential.

[0108] The control unit 10 may execute the process shown in the flowchart of FIG. 8 for each of the seat post F and the suspension G, or may execute step S201 in common and select and provide different information for each component in step S203.

[0109] When the suspension G or seat post F is automatically controlled, the control unit 100 may use a speaker as a notification unit to notify the rider of the control details, and the control unit 101 may output a buzzer sound or voice guidance to the speaker. To notify the user of the control details, the control unit 100 may be provided with a cycle computer having a display as a notification unit on the handlebar A2, and output the control details to the cycle computer. Notification of the control details allows the user to recognize the control details of the components related to the riding of the human-powered vehicle A, achieving automatic control that does not cause discomfort.

[0110] (Second embodiment) In the second embodiment, instead of the control unit 100, a user's terminal device creates a learning model 1M and executes a process of outputting control information for the component. FIG. 9 is a block diagram showing the configuration of a control system 200 of the second embodiment. The control system 200 includes a terminal device 2 and a control unit 100. The control unit 100 in the second embodiment includes a control unit 11, a storage unit 12, an input / output unit 14, and a communication unit 16. Of the components of the control unit 100 in the second embodiment, components common to the control unit 100 in the first embodiment are assigned the same reference numerals and detailed description thereof will be omitted.

[0111] The control unit 11 of the control unit 100 in the second embodiment is a processor using a CPU, and controls each component using built-in memories such as ROM and RAM to execute processing. The control unit 11 does not execute the learning process performed by the control unit 10 of the control unit 100 in the first embodiment. The control unit 11 receives signals output from the group of sensors S1-S7 provided in the human-powered vehicle A via the input / output unit 14 and transmits them to the terminal device 2 via the communication unit 16. The control unit 11 references the control state of the operating device D and the operation signal output from the operating device D and transmits the signals to the terminal device 2 via the communication unit 16. The control unit 11 provides a control signal to the seat post F or suspension G to be controlled, based on the operation signal output from the operating device D or based on an instruction from the terminal device 2.

[0112] The terminal device 2 is a small, portable communication terminal device used by the user. In a first example, the terminal device 2 is a cycle computer. In a second example, the terminal device 2 may be a communication terminal device known as a junction box that is connected to components of the human-powered vehicle A via wired or wireless connections. In a third example, the terminal device 2 is a smartphone. In a fourth example, the terminal device 2 is a wearable device such as a smart watch. If the terminal device is a cycle computer or smartphone, a holder for the cycle computer or smartphone may be attached to the handlebar A2 of the human-powered vehicle A, and the cycle computer or smartphone may be fitted into this holder (see FIG. 10).

[0113] The terminal device 2 includes a control unit 201 , a storage unit 203 , a display unit 205 , an operation unit 207 , a voice input / output unit 209 , a GPS receiving unit 211 , a first communication unit 213 , and a second communication unit 215 .

[0114] The control unit 201 includes a processor such as a CPU or GPU, a memory, etc. The control unit 201 may be configured as a single piece of hardware (SoC: System On a Chip) that integrates the processor, memory, storage unit 203, first communication unit 213, and second communication unit 215. Based on an application program 20P stored in the storage unit 203, the control unit 201 learns output information related to the control of human-powered vehicle A and performs component control based on the learning.

[0115] The storage unit 203 includes a non-volatile memory such as a flash memory. The storage unit 203 stores a learning program 10P and an application program 20P. The learning program 10P may be included in the application program 20P. The storage unit 203 stores a learning model 2M created by processing by the control unit 201. The storage unit 203 stores data referenced by the control unit 201. The learning program 10P may be obtained by reading out a learning program 40P stored in the recording medium 4 and copying it to the storage unit 21. The application program 20P may be obtained by reading out an application program 50P stored in the storage medium 5 and copying it to the storage unit 203.

[0116] The memory unit 203 stores map information. The map information includes information on whether the road is up or down, whether it is off-road or paved, etc. The control unit 201 can refer to the map information stored in the memory unit 203 from the position of the terminal device 2 obtained by the GPS receiving unit 211, i.e., the position of human-powered vehicle A, and identify whether the road is up or down, off-road, etc. as driving environment information for human-powered vehicle A that corresponds to the map information.

[0117] The display unit 205 includes a display device such as a liquid crystal panel or an organic EL display, etc. The display unit 205 is a notification unit that notifies the user of the control content for the seat post F or the suspension G.

[0118] The operation unit 207 is an interface that accepts user operations and includes physical buttons and a touch panel device built into the display. The operation unit 207 can accept operations on the screen displayed on the display unit 205 using the physical buttons or the touch panel.

[0119] The audio input / output unit 209 includes a speaker, a microphone, etc. The audio input / output unit 209 is equipped with a voice recognition unit 217 and is capable of recognizing operation details from input voice via the microphone and accepting the operation. The audio input / output unit 209 is an alarm unit that generates voice or beeps via the speaker to notify the user of the control details for the seat post F or the suspension G. The audio input / output unit 209 may have a function of outputting vibrations of a specific pattern to vibrate the entire terminal device 2 or the surface of the display unit 205.

[0120] The GPS receiver 211 is a communication unit that receives GPS (Global Positioning System) signals. The GPS receiver 211 is provided to obtain position information (longitude and latitude information) of the terminal device 2. The GPS receiver 211 may assist in calculating the position information using the reception strength of radio waves in wireless communication standards such as Wi-Fi and Bluetooth (registered trademark).

[0121] The first communication unit 213 is a communication module corresponding to the communication unit 16 of the control unit 100. In a first example, the first communication unit 213 is a USB communication port. In a second example, the first communication unit 213 is a short-range wireless module.

[0122] The second communication unit 215 is a wireless communication module that transmits and receives information to and from other communication devices (not shown) via a public communication network or using a predetermined mobile communication standard. The second communication unit 215 uses a network card, a wireless communication device, or a carrier communication module. The control unit 201 can obtain weather information from other communication devices using the second communication unit 215. The control unit 201 can obtain weather information as driving environment information for human-powered vehicle A based on the position of the terminal device 2 obtained by the GPS receiving unit 211, i.e., the position information of human-powered vehicle A.

[0123] In the second embodiment, the control unit 100 continuously acquires input information obtained from the sensors S1-S7 provided on the human-powered vehicle A by the input / output unit 14 and transmits it to the terminal device 2 via the communication unit 16.

[0124] The control unit 201 of the terminal device 2 operates in an automatic control mode using a pre-created learning model 2M, and a re-learning mode in which the learning model 2M is updated for the rider. In the automatic control mode, the control unit 201 controls the seat post F based on information relating to the control of the seat post F that is output by providing input information to the learning model 2M for the seat post F. In the automatic control mode, the control unit 201 controls the suspension G based on information relating to the control of the suspension G that is output by providing input information to the learning model 2M for the suspension G. The method for creating the pre-created learning model 2M is the same as the method for creating the learning model 1M for the seat post F or the method for creating the learning model 1M for the suspension G described in the first embodiment, and therefore a description thereof will be omitted.

[0125] The processing of the control unit 201 in the automatic control mode is similar to the processing content of the control unit 100 in the first embodiment shown in the flowchart of FIG. 8, and therefore a detailed description thereof will be omitted.

[0126] The following describes the relearning mode, in which the learning model 2M is updated based on an evaluation. FIGS. 10 and 11 are diagrams showing example screens displayed based on the application program 20P. In the example shown in FIG. 10, the terminal device 2 is a cycle computer attached to the handlebar A2 so that the user can view the display unit 205. FIG. 10 shows a main screen 250 displayed on the display unit 205 based on the application program 20P. The control unit 201 causes the display unit 205 to display the main screen 250 based on the application program 20P. The control unit 201 establishes a communication connection with the control unit 100 based on the application program 20P. The main screen 250 includes selection buttons 252 and 254 for the relearning mode and the automatic control mode. When the selection button 252 is selected, the control unit 201 starts operating in the relearning mode. When the selection button 254 is selected, the control unit 201 starts operating in the automatic control mode.

[0127] FIG. 11 shows an example of the content of a relearning mode screen 256 that is displayed when the relearning mode selection button 252 is selected. The relearning mode screen 256 is a notification section that displays a message indicating the control content when the control unit 201 controls a component having a telescopic mechanism, such as the seat post F or the suspension G. The relearning mode screen 256 includes a high rating button 258 and a low rating button 260. The high rating button 258 and the low rating button 260 correspond to a first example of an evaluation section. The control unit 201 recognizes that the high rating button 258 or the low rating button 260 has been selected via the operation unit 207 and accepts the evaluation. The high rating button 258 in the example of FIG. 11 is selected when control based on the learning model 2M is not comfortable. The control unit 201 recognizes whether the high rating button 258 or the low rating button 260 has been selected and recognizes the content of the accepted evaluation. Only the low rating button 260 may be displayed as the evaluation section.

[0128] The evaluation unit in the second example may be a physical button provided on the operation unit D1. A specific evaluation reception button may be provided on the operation unit D1. A separate button for receiving evaluations may be provided near the operation device D.

[0129] The evaluation unit in the third example is the voice recognition unit 217 of the voice input / output unit 209. The control unit 201 recognizes the user's voice with the voice recognition unit 217 and receives an evaluation. The control unit 201 determines whether the control was comfortable or not based on the recognized voice. If it is comfortable, it gives a high evaluation.

[0130] The evaluation unit of the fourth example identifies facial expressions from captured images of the rider's face obtained from a camera, determines whether the control was comfortable or not based on the facial expressions, and accepts an evaluation based on whether it was comfortable or not.

[0131] 12 is a flowchart showing an example of the re-learning processing procedure of the control unit 201 in the second embodiment. When the re-learning mode selection button 252 is selected, the control unit 201 executes the following processing at a predetermined control period (e.g., 30 milliseconds) until the automatic control mode is selected. The flowchart in FIG. 12 shows the procedure for controlling the seat post F.

[0132] The control unit 201 acquires input information related to the traveling of human-powered vehicle A obtained from the control unit 100 from the first communication unit 213 (step S301). In step S301, the control unit 201 acquires the signal levels from sensors S1-S7 that the control unit 10 of the control unit 100 references for each control cycle and that are temporarily stored in the internal memory of the control unit 10 or the memory built into the input / output unit 14.

[0133] The control unit 201 provides the input information acquired in step S301 to the learning model 2M (step S303), and identifies output information relating to the control of the component output from the learning model 2M (step S305).

[0134] The control unit 201 outputs a control instruction based on the output information identified in step S305 to the control unit 100 (step S307), and notifies the user of the control content by displaying it on the display unit 205 (step S309).

[0135] The control unit 201 accepts a user's evaluation within a predetermined time after the control process (step S311). In step S311, the control unit 201 accepts the evaluation using the high evaluation button 258 and the low evaluation button 260 on the re-learning mode screen 256, as shown in FIGS.

[0136] The control unit 201 acquires actual operation details using the operation unit D1 of the operation device D from the control unit 100 (step S313). The control unit 201 calculates an evaluation value based on a comparison between information related to the control of the component corresponding to the control details acquired in step S313 and the output information identified in step S305 (step S315). The control unit 201 calculates a higher evaluation value as the difference between the information acquired in step S311 and the output information identified in step S305 becomes smaller.

[0137] The control unit 201 uses the evaluation content received in step S311 and the evaluation value calculated in step S315 as a reward for the output information identified in step S305, updates the parameters in the intermediate layer of the learning model 2M to improve the evaluation from the user (step S317), and terminates the processing.

[0138] The processes in steps S313 and S315 may be performed only when the evaluation content received in step S311 is a low evaluation.

[0139] Control unit 201 ends the relearning mode when the user selects automatic control mode selection button 254, when the evaluations received in step S311 are high at a predetermined rate or more, or when the evaluation value calculated in step S315 falls within a predetermined range. Control unit 201 may execute the procedure shown in the flowchart of Fig. 12 for a predetermined time after relearning mode selection button 252 is selected.

[0140] Through the re-learning process described in the second embodiment, the terminal device 2 and the control unit 100 perform processing to realize automatic control of the telescopic mechanism that suits the driving characteristics and preferences of the user who is the rider of human-powered vehicle A.

[0141] (Third embodiment) The configuration of the control system 200 in the third embodiment is the same as that in the second embodiment, except that a learning model 2M is prepared for each traveling course on which the human-powered vehicle A travels. Of the configuration of the control system 200 in the third embodiment, components that are common to the configurations in the first or second embodiment are given the same reference numerals, and detailed explanations will be omitted.

[0142] FIG. 13 is a block diagram showing the configuration of a control system 200 according to a third embodiment. In the third embodiment, as shown in FIG. 13, multiple learning models 21M and 22M are stored in the storage unit 203 of the terminal device 2. The multiple learning models 21M and 22M are models created and prepared according to the processing procedures shown in the flowcharts of FIG. 3, FIG. 4, or FIG. 5 of the first embodiment under different driving test environments. In the first example, the different driving test environments are the driving courses on which the human-powered vehicle A travels. That is, the learning models 21M and 22M are prepared for different driving courses on which the human-powered vehicle A travels and are stored in the storage unit 203. A configuration may be adopted in which a model corresponding to a different driving environment, not limited to a driving course, can be selected. A user can use the terminal device 2 to select one of the learning models 2M from an external server, download it to the terminal device 2, and store it in the storage unit 203. The control unit 201 may accept a user operation to set a name corresponding to the stored learning model 2M.

[0143] The automatic control in which the learning models 21M and 22M for different driving courses are appropriately selected will be described below. Fig. 14 is a flowchart showing an example of a control procedure using the learning models 21M and 22M by the terminal device 2 in the third embodiment.

[0144] The control unit 201 displays a driving course selection screen on the display unit 205 (step S401) and accepts the selection of a driving course on the selection screen (step S403). FIG. 15 is a diagram showing an example of the contents of the selection screen. As shown in FIG. 15, the selection screen 262 includes a plurality of driving course selection buttons 264, 266. The control unit 201 can recognize which of the selection buttons 264, 266 has been selected using the operation unit 207. The control unit 201 selects a learning model corresponding to the driving course selected in step S403 as shown in FIG. 15 from a plurality of learning models 21M, 22M stored in the storage unit 203 (step S405).

[0145] The control unit 201 acquires information relating to the traveling of human-powered vehicle A obtained from the control unit 100 from the first communication unit 213 (step S407).

[0146] The control unit 201 provides the input information acquired in step S407 to the learning model 21M or learning model 22M selected in step S405 (step S409), and identifies output information regarding the control of the component output from the selected learning model 21M or learning model 22M (step S411).

[0147] The control unit 201 acquires the state of the control target based on the identified output information from the control unit 100 (step S413). The control unit 201 determines whether or not it is necessary to output a control signal based on the relationship between the control content indicated by the identified output information and the referenced state (step S415).

[0148] If it is determined in step S415 that the control is necessary (S415: YES), the control unit 201 transmits a control instruction based on the output information identified in step S411 to the control unit 100 (step S417). The control unit 201 notifies the user by displaying the control content on the display unit 205 (step S419), and ends the process.

[0149] If it is determined in step S415 that the control instruction is unnecessary (S415: NO), the control unit 201 ends the process without transmitting a control instruction based on the output information related to the identified control. The determination processes in steps S413 and S415 are not essential.

[0150] In this way, by learning the learning models 21M and 22M for different driving environments, automatic control of the extension / retraction mechanism according to various situations or driving environments based on a variety of input information suited to the driving course is realized.

[0151] The terminal device 2 in the third embodiment may re-learn the learning models 21M and 22M as shown in the second embodiment.

[0152] In this way, by using learning models 1M, 2M or 21M, 22M, control unit 100 does not need to make decisions based on comparing the numerical values ​​of the driving information obtained from the multiple sensors S1-S7 with thresholds. Control unit 100 is able to perform appropriate automatic control in accordance with human perception, taking into account the natural overall input information regarding the driving of human-powered vehicle A obtained from the multiple sensors S1-S7. [Explanation of symbols]

[0153] 100...control unit (control device), 10...control unit, 12...memory unit, 1M...learning model, 1P...learning program, 2P...control program, 2...terminal device (control device), 201...control unit, 203...memory unit, 2M, 21M, 22M...learning model, 10P...learning program, 20P...application program, A12...frame, A2...handlebar, A5...front fork, A6...seat, A61...seat surface, F...seat post, F1...post body, F2...yoke, F3, F4, F5...actuator, G...suspension, G1...first member, G2...second member, G3...actuator, S1...speed sensor, S2...cadence sensor, S3...torque sensor, S4...angle sensor, S5...acceleration sensor, S51...first acceleration sensor, S52...second acceleration sensor, S6...air pressure sensor, S7...image sensor.

Claims

1. a control device comprising: a control unit that controls the telescopic mechanism based on output information related to control of the telescopic mechanism that is output by a learning model in response to input information including at least one of driving information of the human-powered vehicle related to driving of the human-powered vehicle and driving environment information of the human-powered vehicle, an operation unit that receives a designation operation related to control of the telescopic mechanism from a user of the human-powered vehicle; the control unit controls the extension / contraction mechanism based on output information obtained by inputting the input information into the learning model; acquiring the specified operation for the extension / contraction mechanism after controlling the extension / contraction mechanism based on the output information; calculating an evaluation value for evaluating the output information based on a comparison between the output information and the specifying operation; Control device.

2. The control unit calculates a higher evaluation value as the difference between the output information and the specifying operation becomes smaller. The control device according to claim 1 .

3. 2. The control device according to claim 1, wherein the driving information includes at least one of a driving speed of the human-powered vehicle, an acceleration of the human-powered vehicle, an attitude of the human-powered vehicle, a crank cadence of the human-powered vehicle, a load balance of the human-powered vehicle, a gear ratio of the human-powered vehicle, an operation amount of a brake of the human-powered vehicle, and physical information of a user.

4. 2. The control device according to claim 1, wherein the driving environment information of the human-powered vehicle includes at least one of a wheel contact state, a road surface condition, and weather.

5. the telescoping mechanism is a suspension of the human-powered vehicle, 5. The control device according to claim 1, wherein the output information includes at least one of a stroke length, a lockout state, a spring force, and a damping rate.

6. the suspension includes a first member and a second member provided movably relative to the first member, 6. The control device according to claim 5, wherein the input information includes a first acceleration output by a first acceleration sensor attached to the first member and a second acceleration output by a second acceleration sensor attached to the second member.

7. The control device according to claim 6 , wherein the learning model outputs the output information so that a difference between the first acceleration and the second acceleration falls within a predetermined range.

8. the telescoping mechanism is a seat post of the human-powered vehicle, 5. The control device according to claim 1, wherein the output information includes at least one of a seat height, a seat inclination, a front-rear position, and a left-right position.

9. The learning model is prepared for each travel course on which the human-powered vehicle travels, Accept the selection of the driving course, The control device according to any one of claims 1 to 4, wherein the control unit controls the extension / retraction mechanism based on the output information output in response to the input information by the learning model corresponding to the selected driving course.

10. a neural network that outputs output information relating to control of a telescopic mechanism among components of the human-powered vehicle when input information including at least one of travel information of the human-powered vehicle relating to travel of the human-powered vehicle and travel environment information of the human-powered vehicle is input, Acquire the input information; Identifying output information output by providing the acquired input information to the neural network; controlling the extension / contraction mechanism based on the identified output information; receiving, from a user of the human-powered vehicle, a designation operation regarding control of the telescopic mechanism after controlling the telescopic mechanism based on the identified output information; learning, by a computer, parameters in an intermediate layer of the neural network so as to improve the user's evaluation of the running state of the human-powered vehicle when the extension and contraction mechanism is controlled based on the identified output information; calculating an evaluation value for evaluating the output information based on a comparison between the output information and the specifying operation; A learning method for a learning model, which uses the calculated evaluation value as a reward for the output information and learns the parameters in the intermediate layer so as to improve the evaluation from the user.

11. a neural network that outputs output information relating to control of a portion of a component of the human-powered vehicle that has an extension mechanism when input information including at least one of driving information of the human-powered vehicle relating to the driving of the human-powered vehicle and driving environment information of the human-powered vehicle is input, Acquire the input information; Identifying output information output by providing the acquired input information to the neural network; receiving, from a user of the human-powered vehicle, a designation operation regarding control of the telescopic mechanism after controlling the telescopic mechanism based on the identified output information; calculating an evaluation value for evaluating the output information based on a comparison between the output information and the specifying operation; A computer program that causes a computer to execute a process of learning parameters in an intermediate layer of the neural network, using the evaluation value as a reward for the output information, so as to improve a comfort evaluation from the user of the human-powered vehicle.

12. A storage medium on which the computer program according to claim 11 is stored.

Citation Information

Patent Citations

  • Active control unit

    JP1994202672A

  • Electronic device and control method in electronic device

    JP2018089989A

  • Electronically Controlled Suspension System, Method for Controlling a Suspension System and Computer Program

    US20150197308A1