(57)【要約】【課題】判定装置、制御システム、学習モデル、学習モデルの生成方法、コンピュータプログラム、および、記憶媒体の提供。【解決手段】人力駆動車のライダーに関するライダー情報に基づいて前記人力駆動車のコンポーネントの制御に関する前記ライダーの予備動作を判定する。【選択図】図４
2020138556.tif 000002
【特許請求の範囲】
【請求項１】
人力駆動車のライダーに関するライダー情報に基づいて前記人力駆動車のコンポーネントの制御に関する前記ライダーの予備動作を判定する、判定装置。
【請求項２】
前記予備動作は、前記ライダーの腕、手、手の指、脚、足、および足の指の動きのうちの少なくとも１つを含む、請求項１に記載の判定装置。
【請求項３】
前記ライダー情報は、前記人力駆動車のライダーに関する画像、前記ライダーの筋電に関する情報、および、前記ライダーの脳波に関する情報のうちの少なくとも１つを含む、請求項１または２に記載の判定装置。
【請求項４】
前記ライダー情報の入力に応じて前記予備動作についての識別結果を出力するように構成される学習モデルに、前記ライダー情報を入力し、前記学習モデルから出力される識別結果に基づいて前記予備動作を判定する、請求項１から３のいずれか一項に記載の判定装置。
【請求項５】
請求項４に記載の判定装置と、
前記判定装置の判定結果に基づいて前記コンポーネントが第１状態から前記第１状態とは異なる第２状態に遷移するための準備動作を実行するように、前記コンポーネントを制御する制御装置と、を備える制御システム。
【請求項６】
前記判定装置は、前記コンポーネントに対する操作に関する操作情報と、前記準備動作と、の対応関係に応じて、前記学習モデルを再学習させる、請求項５に記載の制御システム。
【請求項７】
前記ライダー情報、前記準備動作に関する準備動作情報、および、前記コンポーネントに対する操作に関する操作情報を、外部装置へ送信する送信装置をさらに備える、請求項５または６に記載の制御システム。
【請求項８】
前記コンポーネントは前記準備動作に応じて前記第１状態から前記第１状態および前記第２状態とは異なる中間状態に遷移し、
前記制御装置は、前記コンポーネントに対する操作に関する操作情報に応じて前記コンポーネントが、前記中間状態から前記第２状態に遷移するように、前記コンポーネントを制御する、請求項５から７のいずれか一項に記載の制御システム。
【請求項９】
前記コンポーネントは、変速装置を含み、
前記準備動作は、前記人力駆動車の変速比の変更に関し、
前記制御装置は、前記判定装置の判定結果に基づいて前記準備動作を実行するように前記変速装置を制御する、請求項５から８のいずれか一項に記載の制御システム。
【請求項１０】
前記コンポーネントは、サスペンション装置を含み、
前記準備動作は、前記サスペンション装置の動作状態の変更に関し、
前記制御装置は、前記判定装置の判定結果に基づいて前記準備動作を実行するように前記サスペンション装置を制御する、請求項５から９のいずれか一項に記載の制御システム。
【請求項１１】
前記コンポーネントは、アジャスタブルシートポストを含み、
前記準備動作は、前記人力駆動車のシートの高さを変更する動作に関し、
前記制御装置は、前記判定装置の判定結果に基づいて前記準備動作を実行するように前記アジャスタブルシートポストを制御する、請求項５から１０のいずれか一項に記載の制御システム。
【請求項１２】
前記コンポーネントは、前記ライダーのシューズと係合する係合機構を備えるペダルを含み、
前記準備動作は、前記シューズと前記係合機構との係合を解除する動作に関し、
前記制御装置は、前記判定装置の判定結果に基づいて前記準備動作を実行するように前記ペダルを制御する、請求項５から１１のいずれか一項に記載の制御システム。
【請求項１３】
人力駆動車に関する情報が入力されると人力駆動車のコンポーネントの制御状態についての識別結果を出力するように構成された学習モデルに、前記人力駆動車に関する情報を入力し、前記学習モデルから出力される識別結果に基づいて、前記人力駆動車のコンポーネントの制御状態を判定する判定装置と、
前記判定装置の判定結果に基づいて前記コンポーネントが第１状態から前記第１状態とは異なる第２状態へ遷移するように前記コンポーネントとは異なる別の人力駆動車コンポーネントを制御する制御装置と、を備える制御システム。
【請求項１４】
前記人力駆動車に関する情報は、前記人力駆動車に関する画像、速度、加速度、傾斜角度、地理的な位置、ケイデンス、パワー、および車輪の回転速度に関する情報のうちの少なくとも１つに関する情報を含む、請求項１３に記載の制御システム。
【請求項１５】
人力駆動車のライダーに関する画像、前記ライダーの筋電に関する情報、および、前記ライダーの脳波に関する情報のうちの少なくとも１つに基づいて前記人力駆動車のコンポーネントの操作に関する前記ライダーの動作を判定する判定装置。
【請求項１６】
請求項１５に記載の判定装置と、
前記判定装置の判定結果に基づいて、前記コンポーネントが第１状態から前記第１状態とは異なる第２状態へ遷移するように前記コンポーネントを制御する制御装置と、を備える制御システム。
【請求項１７】
人力駆動車のライダーに関するライダー情報が入力される入力層と、
前記人力駆動車のコンポーネントの操作に関する前記ライダーの予備動作についての識別結果を出力する出力層と、
前記ライダー情報、および、前記予備動作に関する情報を教師データに用いて、前記入力層に入力される情報と、前記出力層が出力する識別結果との間の関係を学習した中間層と、を備え、
前記入力層に前記ライダー情報が入力されると、前記中間層において演算し、前記ライダーの予備動作についての識別結果を前記出力層から出力するようコンピュータを機能させる、学習モデル。
【請求項１８】
人力駆動車のライダーに関するライダー情報と、前記人力駆動車のコンポーネントの状態を、第１状態から前記第１状態とは異なる第２状態へ遷移させるための操作に関する前記ライダーの予備動作に関する情報とを教師データに用いて、前記ライダー情報が入力されると、前記予備動作の識別結果を出力する学習モデルを、コンピュータを用いて生成する、学習モデルの生成方法。
【請求項１９】
前記ライダー情報、前記予備動作に関する情報、および、前記人力駆動車の操作装置に入力される操作に関する情報に応じて、コンピュータを用いて前記学習モデルを再学習させる、請求項１８に記載の学習モデルの生成方法。
【請求項２０】
人力駆動車のライダーに関するライダー情報に基づき、前記人力駆動車のコンポーネントの操作に関する前記ライダーの予備動作を判定する処理を、コンピュータに実行させるためのコンピュータプログラム。
【請求項２１】
請求項２０に記載のコンピュータプログラムが記憶される記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、判定装置、制御システム、学習モデル、学習モデルの生成方法、コンピュータプログラム、および、記憶媒体に関する。
【背景技術】
【０００２】
自転車に関する情報を収集するシステムが知られている。例えば、特許文献１には、搭載されたコンポーネントに関する情報を収集し、収集した情報をライダーに報知するシステムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１３１５３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
現在、収集した情報をコンポーネントの制御に活用することが求められている。
【０００５】
本発明は、コンポーネントの制御に関するライダーの予備動作を判定する判定装置、制御システム、学習モデル、学習モデルの生成方法、コンピュータプログラム、および、記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１側面に係る判定装置は、人力駆動車のライダーに関するライダー情報に基づいて前記人力駆動車のコンポーネントの制御に関する前記ライダーの予備動作を判定する。
【０００７】
この判定装置によれば、ライダー情報に基づき、コンポーネントの制御に関するライダーの予備動作を判定できる。ライダー情報は、人力駆動車のライダーに関する画像、ライダーの筋電に関する情報、および、ライダーの脳波に関する情報の少なくとも１つを含む。ライダーの予備動作は、例えば、ライダーがコンポーネントを制御する動作に至るまでの予備的な動作を表す。
【０００８】
本発明の第１側面に係る第２側面の判定装置は、前記予備動作は、前記ライダーの腕、手、手の指、脚、足、および足の指の動きのうちの少なくとも１つを含む。
【０００９】
この判定装置によれば、ライダーの腕、手、手の指、脚、足、および足の指の動きのうちの少なくとも１つに基づき、ライダーの予備動作を判定できる。
【００１０】
本発明の第１または第２側面に係る第３側面の判定装置は、前記ライダー情報は、前記人力駆動車のライダーに関する画像、前記ライダーの筋電に関する情報、および、前記ライダーの脳波に関する情報のうちの少なくとも１つを含む。
【００１１】
この判定装置によれば、人力駆動車のライダーに関する画像、ライダーの筋電に関する情報、および、ライダーの脳波に関する情報の少なくとも１つに基づき、ライダーの予備動作を判定できる。
【００１２】
本発明の第１から第３側面のいずれか１つに係る第４側面の判定装置は、前記ライダー情報の入力に応じて前記予備動作についての識別結果を出力するように構成される学習モデルに、前記ライダー情報を入力し、前記学習モデルから出力される識別結果に基づいて前記予備動作を判定する。
【００１３】
この判定装置によれば、ライダー情報の入力に応じて予備動作についての識別結果を出力する学習モデルを用いるので、効率良くライダーの予備動作を判定できる。
【００１４】
本発明の第５側面に係る制御システムは、第４側面に係る判定装置と、前記判定装置の判定結果に基づいて前記コンポーネントが第１状態から前記第１状態とは異なる第２状態に遷移するための準備動作を実行するように、前記コンポーネントを制御する制御装置と、を備える。
【００１５】
この制御システムによれば、例えば、ライダーが予備動作を行ったと判定した場合、準備動作を実行するようにコンポーネントを制御できる。よって、この制御システムでは、予備動作に続いてコンポーネントを制御する動作をライダーが行った場合、速やかに第２状態まで遷移できる。
【００１６】
本発明の第５側面に係る第６側面の制御システムは、前記判定装置は、前記コンポーネントに対する操作に関する操作情報と、前記準備動作と、の対応関係に応じて、前記学習モデルを再学習させる。
【００１７】
この制御システムによれば、ライダーの操作と学習モデルの出力に基づく準備動作とに基づき、学習モデルを再学習し、より判定精度を高めることができる。
【００１８】
本発明の第５または第６側面に係る第７側面の制御システムは、前記ライダー情報、前記準備動作に関する準備動作情報、および、前記コンポーネントに対する操作に関する操作情報を、外部装置へ送信する送信装置をさらに備える。
【００１９】
この制御システムによれば、学習に必要な情報を外部へ送信できる。
【００２０】
本発明の第５から第７側面のいずれか１つに係る第８側面の制御システムは、前記コンポーネントは前記準備動作に応じて前記第１状態から前記第１状態および前記第２状態とは異なる中間状態に遷移し、前記制御装置は、前記コンポーネントに対する操作に関する操作情報に応じて前記コンポーネントが、前記中間状態から前記第２状態に遷移するように、前記コンポーネントを制御する。
【００２１】
この制御システムによれば、例えば、準備動作に応じて中間状態まで遷移し、ライダーの操作に応じて、第２状態まで遷移する。よって、この制御システムでは、予備動作に続いてコンポーネントを制御する動作をライダーが行った場合、速やかに第２状態まで遷移できる。
【００２２】
本発明の第５から第８側面のいずれか１つに係る第９側面の制御システムは、前記コンポーネントは、変速装置を含み、前記準備動作は、前記人力駆動車の変速比の変更に関し、前記制御装置は、前記判定装置の判定結果に基づいて前記準備動作を実行するように前記変速装置を制御する。
【００２３】
この制御システムによれば、制御対象のコンポーネントは変速装置であり、判定装置の判定結果に応じて、変速比を変更する準備動作を実行できる。
【００２４】
本発明の第５から第９側面のいずれか１つに係る第１０側面の制御システムは、前記コンポーネントは、サスペンション装置を含み、前記準備動作は、前記サスペンション装置の動作状態の変更に関し、前記制御装置は、前記判定装置の判定結果に基づいて前記準備動作を実行するように前記サスペンション装置を制御する。
【００２５】
この制御システムによれば、制御対象のコンポーネントはサスペンション装置であり、判定装置の判定結果に応じて、サスペンション装置の動作状態を変更する準備動作を実行できる。
【００２６】
本発明の第５から第１０側面のいずれか１つに係る第１１側面の制御システムは、前記コンポーネントは、アジャスタブルシートポストを含み、前記準備動作は、前記人力駆動車のシートの高さを変更する動作に関し、前記制御装置は、前記判定装置の判定結果に基づいて前記準備動作を実行するように前記アジャスタブルシートポストを制御する。
【００２７】
この制御システムによれば、制御対象のコンポーネントはアジャスタブルシートポストであり、判定装置の判定結果に応じて、シートの高さを変更する準備動作を実行できる。
【００２８】
本発明の第５から第１１側面の何れか１つに係る第１２側面の制御システムは、前記コンポーネントは、前記ライダーのシューズと係合する係合機構を備えるペダルを含み、前記準備動作は、前記シューズと前記係合機構との係合を解除する動作に関し、前記制御装置は、前記判定装置の判定結果に基づいて前記準備動作を実行するように前記ペダルを制御する。
【００２９】
この制御システムによれば、制御対象のコンポーネントは係合機構を備えるペダルであり、判定装置の判定結果に応じて、シューズの係合を解除する準備動作を実行できる。
【００３０】
本発明の第１３側面に係る制御システムは、人力駆動車に関する情報が入力されると人力駆動車のコンポーネントの制御状態についての識別結果を出力するように構成された学習モデルに、前記人力駆動車に関する情報を入力し、前記学習モデルから出力される識別結果に基づいて、前記人力駆動車のコンポーネントの制御状態を判定する判定装置と、前記判定装置の判定結果に基づいて前記コンポーネントが第１状態から前記第１状態とは異なる第２状態へ遷移するように前記コンポーネントとは異なる別の人力駆動車コンポーネントを制御する制御装置と、を備える。
【００３１】
この制御システムが備える判定装置によれば、人力駆動車に関する情報の入力に対し、コンポーネントの制御状態についての識別結果を出力する学習モデルを用いるので、効率良くコンポーネントの制御状態を判定できる。制御装置は、判定装置の判定結果に応じて、コンポーネントの制御状態を遷移できる。
【００３２】
本発明の第１３側面に係る第１４側面の制御システムは、前記人力駆動車に関する情報は、前記人力駆動車に関する画像、速度、加速度、傾斜角度、地理的な位置、ケイデンス、パワー、および車輪の回転速度に関する情報のうちの少なくとも１つに関する情報を含む。
【００３３】
この制御システムによれば、人力駆動車に関する様々な情報に基づき、コンポーネントの制御状態を判定できる。
【００３４】
本発明の第１５側面に係る判定装置は、人力駆動車のライダーに関する画像、前記ライダーの筋電に関する情報、および、前記ライダーの脳波に関する情報のうちの少なくとも１つに基づいて前記人力駆動車のコンポーネントの操作に関する前記ライダーの動作を判定する。
【００３５】
この判定装置によれば、人力駆動車のライダーに関する画像、ライダーの筋電に関する情報、および、ライダーの脳波に関する情報の少なくとも１つに基づき、コンポーネントの操作に関するライダーの動作を判定できる。
【００３６】
本発明の第１６側面に係る制御システムは、第１５側面に係る判定装置と、前記判定装置の判定結果に基づいて、前記コンポーネントが第１状態から前記第１状態とは異なる第２状態へ遷移するように前記コンポーネントを制御する制御装置と、を備える。
【００３７】
この制御システムによれば、例えば、ライダーがコンポーネントの操作に関する動作を行ったと判定した場合、コンポーネントの状態を第２状態まで遷移できる。
【００３８】
本発明の第１７側面に係る学習モデルは、人力駆動車のライダーに関するライダー情報が入力される入力層と、前記人力駆動車のコンポーネントの操作に関する前記ライダーの予備動作についての識別結果を出力する出力層と、前記ライダー情報、および、前記予備動作に関する情報を教師データに用いて、前記入力層に入力される情報と、前記出力層が出力する識別結果との間の関係を学習した中間層と、を備え、前記入力層に前記ライダー情報が入力されると、前記中間層において演算し、前記ライダーの予備動作についての識別結果を前記出力層から出力するようコンピュータを機能させる。
【００３９】
この学習モデルによれば、ライダー情報に基づき人力駆動車のコンポーネントに関するライダーの予備動作についての識別結果を出力する実行環境を、コンピュータによって実現できる。
【００４０】
本発明の第１８側面に係る学習モデルの生成方法は、人力駆動車のライダーに関するライダー情報と、前記人力駆動車のコンポーネントの状態を、第１状態から前記第１状態とは異なる第２状態へ遷移させるための操作に関する前記ライダーの予備動作に関する情報とを教師データに用いて、前記ライダー情報が入力されると、前記予備動作の識別結果を出力する学習モデルを、コンピュータを用いて生成する。
【００４１】
この学習モデルの生成方法によれば、ライダー情報と、予備動作に関する情報とを収集することによって、ライダーの予備動作を判定するための学習モデルを生成できる。
【００４２】
本発明の第１８側面に係る第１９側面の学習モデルの生成方法は、前記ライダー情報、前記予備動作に関する情報、および、前記人力駆動車の操作装置に入力される操作に関する情報に応じて、コンピュータを用いて前記学習モデルを再学習させる。
【００４３】
この学習モデルの生成方法によれば、ライダー情報、予備動作に関する情報、および、操作に関する情報に基づき、学習モデルを再学習し、より判定精度を高めることができる。
【００４４】
本発明の第２０側面に係るコンピュータプログラムは、人力駆動車のライダーに関するライダー情報に基づき、前記人力駆動車のコンポーネントの操作に関する前記ライダーの予備動作を判定する処理を、コンピュータに実行させるためのコンピュータプログラムである。
【００４５】
このコンピュータプログラムによれば、ライダー情報に基づき人力駆動車のコンポーネントに関するライダーの予備動作を判定する実行環境を、コンピュータによって実現できる。
【００４６】
本発明の第２１側面に係る記録媒体は、第２０側面に係るコンピュータプログラムが記憶される。
【００４７】
この記憶媒体によれば、記憶媒体に記憶されているコンピュータプログラムをコンピュータにインストールすることによって、ライダー情報に基づき人力駆動車のコンポーネントに関するライダーの予備動作を判定する実行環境を、コンピュータによって実現できる。
【発明の効果】
【００４８】
本願によれば、コンポーネントの制御に関するライダーの予備動作を判定できる。
【図面の簡単な説明】
【００４９】
【図１】第１実施形態の判定装置が適用される人力駆動車の側面図である。
【図２】予備動作の一例を説明する説明図である。
【図３】第１実施形態に係る判定装置の内部構成を示すブロック図である。
【図４】学習モデルの実装例を示す模式図である。
【図５】第１実施形態における判定手順を説明するフローチャートである。
【図６】第２実施形態に係る制御システムを説明するブロック図である。
【図７】変速装置の制御状態を説明するタイミングチャートである。
【図８】第３実施形態に係る送信装置の内部構成を示すブロック図である。
【図９】サーバ装置の内部構成を示すブロック図である。
【図１０】学習モデルの生成手順を説明するフローチャートである。
【図１１】学習モデルの再学習手順を説明するフローチャートである。
【図１２】第６実施形態に係る制御システムを説明するブロック図である。
【図１３】変速装置の制御状態を説明するタイミングチャートである。
【図１４】第７実施形態に係る制御システムを説明するブロック図である。
【図１５】変速装置の制御状態を説明するタイミングチャートである。
【発明を実施するための形態】
【００５０】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
（第１実施形態）
図１は第１実施形態の判定装置１００が適用される人力駆動車１の側面図である。人力駆動車１は、走行のための原動力に関して、少なくとも部分的に人力を用いる車両である。内燃機関または電動機のみを原動力に用いる車両は、本実施形態の人力駆動車１から除外される。人力駆動車１は、例えば、ロードバイク、マウンテンバイク、クロスバイク、シティサイクル等を含む自転車である。人力駆動車１は、電気エネルギーを用いて人力駆動車１の推進をアシストする電動アシスト機構を備える電動アシスト自転車であってもよい。
【００５１】
人力駆動車１は、車両本体１０、前輪１２、後輪１４、ハンドルバー１６、シート１８、および、駆動機構２０を備える。以下の説明において、前後、左右、および、上下の各方向を表す用語は、ライダーが人力駆動車１のシート１８に着座した状態における方向を基準として用いられる。
【００５２】
車両本体１０は、フレーム１０Ａおよびフロントフォーク１０Ｂを備える。前輪１２は、フロントフォーク１０Ｂに回転可能に支持される。後輪１４は、フレーム１０Ａに回転可能に支持される。ハンドルバー１６は、前輪１２の進行方向を変更できるように、フレーム１０Ａに支持される。
【００５３】
駆動機構２０は、人力駆動力を後輪１４へ伝達する。駆動機構２０は、クランク２２、フロントスプロケットアセンブリ２４Ａ、リアスプロケットアセンブリ２４Ｂ、チェーン２６、および、一対のペダル２８，２８を含む。駆動機構２０は、更に、チェーン２６が外れることを抑制するためのチェーンデバイス２６Ａを備えてもよい。
【００５４】
クランク２２は、右クランク２２Ａ、左クランク２２Ｂ、および、クランク軸２２Ｃを含む。クランク軸２２Ｃは、フレーム１０Ａに回転可能に支持される。右クランク２２Ａおよび左クランク２２Ｂは、それぞれクランク軸２２Ｃに連結される。一対のペダル２８，２８の一方は右クランク２２Ａに回転可能に支持され、他方は左クランク２２Ｂに回転可能に支持される。ペダル２８は、ライダーのシューズと係合する係合機構２８Ａを備える。
【００５５】
フロントスプロケットアセンブリ２４Ａは、クランク軸２２Ｃに連結されており、クランク軸２２Ｃと一体的に回転する。フロントスプロケットアセンブリ２４Ａは、一例では、外径が異なる複数のフロントスプロケットを含む。複数のフロントスプロケットの外径は、クランク軸２２の回転軸心と平行な方向において、車両本体１０の中心面から外側に向かって大きくなる。
【００５６】
リアスプロケットアセンブリ２４Ｂは、後輪１４のハブ（図示略）に回転可能に支持される。リアスプロケットアセンブリ２４Ｂは、一例では、外径が異なる複数のリアスプロケットを含む。複数のリアスプロケットの外径は、ハブアセンブリの回転軸心と平行な方向において、車両本体１０の中心面から外側に向かって小さくなる。
【００５７】
チェーン２６は、フロントスプロケットアセンブリ２４Ａおよびリアスプロケットアセンブリ２４Ｂに巻き掛けられる。ペダル２８，２８に加えられる人力駆動力によってクランク２２が前転すると、フロントスプロケットアセンブリ２４Ａがクランク２２と共に前転する。フロントスプロケットアセンブリ２４Ａの回転は、チェーン２６を介してリアスプロケットアセンブリ２４Ｂに伝達し、後輪１４を回転させる。チェーン２６の代わりに、ベルトまたはシャフトを用いてもよい。
【００５８】
人力駆動車１は、更に、操作装置３０、変速装置３２および３３、アジャスタブルシートポスト３４、サスペンション装置３６、撮像装置３８、および、バッテリユニット４０を備える。
【００５９】
操作装置３０は、例えば、ハンドルバー１６に設けられ、ライダーの指によって操作される操作スイッチ３０Ａ，３０Ｂを備える。一例では、操作スイッチ３０Ａ，３０Ｂは、変速装置３２を制御するためのスイッチである。他の例では、操作スイッチ３０Ａ，３０Ｂは、アジャスタブルシートポスト３４、サスペンション装置３６、ペダル２８等の人力駆動車１が備える他のコンポーネントを制御するためのスイッチである。
【００６０】
本実施形態では、操作装置３０が２つの操作スイッチ３０Ａ，３０Ｂを備える構成としたが、１つまたは３つ以上の操作スイッチを備える構成であってもよい。操作装置３０は、操作レバーまたは操作ダイヤル等を備える構成であってもよい。
【００６１】
操作装置３０は、操作スイッチ３０Ａまたは操作スイッチ３０Ｂの操作に応じた制御信号を変速装置３２または他のコンポーネントへ送信できるように、各コンポーネントに接続される。一例では、操作装置３０は、通信線またはＰＬＣ（Power Line Communication）が可能な電線によって変速装置３２または他のコンポーネントに接続される。他の例では、操作装置３０は、無線通信が可能な無線通信ユニットによって変速装置３２および他のコンポーネントに接続される。操作装置３０の操作対象が変速装置３２である場合、操作装置３０の操作に応じて、変速比の変更を指示する制御信号を変速装置３２へ送信する。例えば、操作装置３０は、操作スイッチ３０Ａが操作された場合、シフトアップを指示する制御信号を変速装置３２へ送信し、操作スイッチ３０Ｂが操作された場合、シフトダウンを指示する操作信号を変速装置３２へ送信する。制御信号は、変更する変速比またはスプロケットの段数の情報を含んでもよい。制御信号は、変速装置３２を一度に２段以上変速する指示を含んでいてもよい。
【００６２】
変速装置３２は、操作装置３０から送信される制御信号に応じて動作が制御される人力駆動車１のコンポーネントの１つである。変速装置３２は、電動アクチュエータ３２Ａおよびチェーンガイド３２Ｂを備える。電動アクチュエータ３２Ａの一例は、電動モータである。変速装置３２は、電動アクチュエータ３２Ａを駆動し、チェーンガイド３２を動作させることによって、チェーン２６が巻き掛けられるリアスプロケットを変更し、人力駆動車１の変速比を切り替える。
【００６３】
変速装置３２の一例は外装変速機である。変速装置３２が外装変速機である場合、リアスプロケットアセンブリ２４Ｂは、外径が異なる複数のリアスプロケットを含む。変速装置３２は、シフトアップを指示する制御信号を操作装置３０から受信した場合、チェーン２６が巻き掛けられるリアスプロケットを、現在のリアスプロケットよりも外径が小さいリアスプロケットに変更するように、電動アクチュエータ３２Ａによってチェーンガイド３２Ｂを動作させる。変速装置３２は、シフトダウンを指示する制御信号を操作装置３０から受信した場合、チェーン２６が巻き掛けられるリアスプロケットを、現在のリアスプロケットよりも外径が大きいリアスプロケットに変更するように、電動アクチュエータ３２Ａによってチェーンガイド３２Ｂを動作させる。
【００６４】
変速装置３３は、操作装置３０から送信される制御信号に応じて動作が制御される人力駆動車１のコンポーネントの１つである。変速装置３３は、電動アクチュエータ３３Ａおよびチェーンガイド３３Ｂを備える。電動アクチュエータ３３Ａの一例は、電動モータである。変速装置３３は、電動アクチュエータ３３Ａの駆動によって、チェーンガイド３３Ｂを動作させることで、チェーン２６が巻き掛けられるフロントスプロケットを変更し、人力駆動車１の変速比を切り替える。
【００６５】
変速装置３３の一例は外装変速機である。変速装置３３が外装変速機である場合、フロントスプロケットアセンブリ２４Ａは、外径が異なる複数のフロントスプロケットを含む。本実施形態において、変速装置３３は、シフトアップを指示する制御信号を操作装置３０から受信した場合、チェーン２６が巻き掛けられるフロントスプロケットを、現在のスプロケットよりも外径が大きいスプロケットに変更するように電動アクチュエータ３３Ａによってチェーンガイド３３Ｂを動作させる。変速装置３３は、シフトダウンを指示する制御信号を操作装置３０から受信した場合、例えば、チェーン２６が巻き掛けられるフロントスプロケットを、現在のフロントスプロケットよりも外径が小さいフロントスプロケットに変更するように、電動アクチュエータ３３Ａによってチェーンガイド３３Ｂを動作させる。
【００６６】
変速装置３２および３３は内装変速機であってもよい。例えば、変速装置３２が内装変速機である場合、変速装置３２は例えば後輪１４のハブに設けられ、リアスプロケットアセンブリ２４Ｂに入力された回転を変速して後輪１４に伝達する。このとき、リアスプロケットアセンブリ２４Ｂに含まれるリアスプロケットは単一である。変速装置３２および３３の少なくとも１つは、無段変速機であってもよい。
【００６７】
アジャスタブルシートポスト３４は、フレーム１０Ａに取り付けられる。アジャスタブルシートポスト３４は、電動アクチュエータ３４Ａを含む。電動アクチュエータ３４Ａは、シート１８をフレーム１０Ａに対して上昇および下降させる。電動アクチュエータ３４Ａは例えば電動モータである。アジャスタブルシートポスト３４は、動作パラメータとして、フレーム１０Ａに対するシート１８の支持位置を設定することによって制御することが可能なコンポーネントの１つである。
【００６８】
サスペンション装置３６は、一例では、フロントフォーク１０Ｂに設けられ、前輪１２に加えられた衝撃を減衰するフロントサスペンションである。サスペンション装置３６は、電動アクチュエータ３６Ａを含む。電動アクチュエータ３６Ａは例えば電動モータである。サスペンション装置３６は、動作パラメータとして、例えば、減衰率、反発力、ストローク量、およびロックアウト状態を設定することによって制御することが可能なコンポーネントの１つである。サスペンション装置３６は、後輪１４に加えられた衝撃を減衰するリアサスペンションであってもよい。
【００６９】
撮像装置３８は、人力駆動車１のライダーを撮像する撮像センサを備え、撮像センサによって得られる画像データを判定装置１００へ出力する。撮像装置３８は、ライダーの腕、手、または、手の指の動きを観察するために、例えばフレーム１０Ａまたはハンドルバー１６の適宜箇所に設けられる。撮像装置３８は、ライダーの脚、足、または、足の指の動きを観察するために、フレーム１０Ａまたはハンドルバー１６の適宜箇所に設けられてもよい。撮像装置３８は、ライダーに装着されるウェアラブルカメラであってもよい。
【００７０】
バッテリユニット４０は、バッテリ４０Ａおよびバッテリホルダ４０Ｂを含む。バッテリ４０Ａは、１または複数のバッテリセルを含む蓄電池である。バッテリホルダ４０Ｂは、人力駆動車１のフレーム１０Ａに固定される。バッテリ４０Ａは、バッテリホルダ４０Ｂに、着脱可能に取り付けられる。バッテリ４０Ａは、変速装置３２、アジャスタブルシートポスト３４、サスペンション装置３６、撮像装置３８などにそれぞれ電気的に接続される。
【００７１】
人力駆動車１は、更に、車速センサＳ１、ケイデンスセンサＳ２、トルクセンサＳ３、傾斜センサＳ４、加速度センサＳ５、および、位置センサＳ６の少なくとも１つを備えてもよい。以下の説明において、それぞれを個別に説明する必要がない場合、センサＳ１〜Ｓ６とも記載する。
【００７２】
車速センサＳ１は、人力駆動車１の速度に応じた信号を出力するセンサである。車速センサＳ１は、フレーム１０Ａまたはフロントフォーク１０Ｂに取り付けられる。車速センサＳ１は、例えばホール素子を含み、前輪１２または後輪１４に設けられる磁石を検出することによって、前輪１２または後輪１４の回転速度を計測する。一例では、車速センサＳ１は、前輪１２または後輪１４の回転速度を示す信号を出力する。他の例では、車速センサＳ１は、計測した前輪１２または後輪１４の回転速度に基づき、人力駆動車１の速度を算出し、算出した速度を示す信号を出力する。
【００７３】
ケイデンスセンサＳ２は、ケイデンスを示す信号を出力するセンサである。ケイデンスセンサＳ２は、フレーム１０Ａに取り付けられる。ケイデンスセンサＳ２は、例えばホール素子を含み、右クランク２２Ａまたは左クランク２２Ｂに設けられる磁石を検出することによって、クランク軸２２Ｃの単位時間当たりの回転数を計測する。
【００７４】
トルクセンサＳ３は、クランク２２に加えられるトルクに応じた信号を出力するセンサである。トルクセンサＳ３は、右クランク２２Ａ、左クランク２２Ｂ、クランク軸２２Ｃ、フロントスプロケットアセンブリ２４Ａ、または、クランク軸２２Ｃからフロントスプロケットアセンブリ２４Ａまでの駆動経路の何れかに設けられる。トルクセンサＳ３は、歪みセンサ、磁歪センサ、光センサ、または、圧力センサ等を含み、クランク２２に加えられるトルクを検出する。
【００７５】
判定装置１００は、ケイデンスセンサＳ２によって検出されるクランク軸２２Ｃの単位時間当たりの回転数と、トルクセンサＳ３によって検出されるクランク２２に加えられるトルクと、に基づき、人力駆動車１００に加えられるパワーを算出することができる。
【００７６】
傾斜センサＳ４は、人力駆動車１の傾斜角度に応じた信号を出力するセンサである。傾斜センサＳ４が検出する傾斜角度は、例えば、人力駆動車１の左右方向に沿うピッチ軸まわりの回転角度である。傾斜センサＳ４は、一例として、ピッチ角度の角速度を検出するセンサを含み、ピッチ軸まわりの角速度を積分した値をピッチ角度として算出する。傾斜センサＳ４は、人力駆動車１の前後方向に沿うロール軸まわりの回転角度、および、人力駆動車１の上下方向に沿うヨー軸まわりの回転速度を併せて計測する構成であってもよい。
【００７７】
加速度センサＳ５は、人力駆動車１の前後方向の加速度に応じた信号を出力するセンサである。加速度センサＳ５は、例えば、フレーム１０Ａに設けられ、前後方向の加速度が加えられた場合における錘の変位を静電容量または抵抗値の変化として検出することによって加速度を計測する。加速度センサＳ５は、人力駆動車１の左右方向の加速度、および、人力駆動車１の上下方向の加速度を併せて計測するように構成されてもよい。また、加速度センサＳ５は、人力駆動車１のヨー軸、ロール軸、およびピッチ軸まわりの加速度を併せて計測するように構成されてもよい。
【００７８】
位置センサＳ６は、人力駆動車１の現在位置を示す信号を出力するセンサである。位置センサＳ６は、フレーム１０Ａまたはハンドルバー１６に取り付けられる。位置センサＳ６は、例えばＧＰＳ（Global Positioning System）通信機を含み、ＧＰＳ衛星からの電波を受信することによって、人力駆動車１の現在位置を測位する。位置センサＳ６は、測位した位置情報を逐次記録するメモリを備え、メモリに記録した位置情報に基づき、人力駆動車１が走行した走行路の情報を出力する構成であってもよい。
【００７９】
人力駆動車１のライダーには、筋電計Ｍ１および脳波計Ｍ２のうち少なくとも１つが装着されてもよい。筋電計Ｍ１および脳波計Ｍ２は、図３において図示される。
【００８０】
筋電計Ｍ１は、ライダーの筋肉における活動電位を計測する計測装置である。筋電計Ｍ１は、例えばライダーの腕、手、手の指、脚、足、または、足の指に装着される電極を備え、この電極によって計測したＥＭＧ（electromyogram）を出力する。
【００８１】
脳波計Ｍ２は、ライダーの脳波を計測する計測装置である。脳波計Ｍ２は、ライダーの頭部に装着され、脳内の神経細胞の電気活動に由来した電気現象をＥＥＧ（electroencephalogram）、ＭＥＧ（magnetoencephalogram）等の手法を用いて計測する。電気現象を計測する構成に代えて、神経細胞発火後の二次的な現象として起こる脳血流または代謝の変化をｆＭＲＩ（functional magnetic resonance imaging）、ＮＩＲＳ（Near Infrared Spectroscopy）等の手法を用いて計測してもよい。
【００８２】
人力駆動車１の判定装置１００は、撮像装置３８、筋電計Ｍ１、または、脳波計Ｍ２から、人力駆動車１のライダーに関するライダー情報を取得する。ライダー情報は、人力駆動車１のライダーの画像、ライダーの筋電に関する情報、および、ライダーの脳波に関する情報のうちの少なくとも１つを含む。他の例では、判定装置１００は、ライダーが携帯するスマートフォンなどの携帯端末、または、ライダーに装着されるウェアラブル端末等を用いて、ライダー情報を取得してもよい。この場合、判定装置１００は、有線通信または無線通信によって、ライダーの携帯端末またはウェアラブル端末から走行情報およびライダー情報を取得すればよい。
【００８３】
判定装置１００は、人力駆動車１のライダーに関するライダー情報に基づいて人力駆動車１のコンポーネントの制御に関するライダーの予備動作を判定する。ここで、人力駆動車１のコンポーネントを制御するライダーの直接的な動作を実動作とした場合、その実動作に至るまでのライダーの動作を予備動作という。予備動作は、ライダーの腕、手、手の指、脚、足、および、足の指の動きのうちの少なくとも１つを含む。
【００８４】
図２は予備動作の一例を説明する説明図である。操作装置３０が備える操作スイッチ３０Ａ，３０Ｂの操作によってコンポーネントを制御する場合について、ライダーの予備動作を説明する。操作装置３０の操作スイッチ３０Ａ，３０Ｂは、ハンドルバー１６の周面に離隔して設けられる。操作スイッチ３０Ａ，３０Ｂの間には、例えばスイッチガイド３０Ｃが設けられる。スイッチガイド３０Ｃは、ライダーの指によって操作スイッチ３０Ａ，３０Ｂの位置を探り当てるための突起である。操作スイッチ３０Ａ，３０Ｂを操作しない場合、ライダーの指は、例えばスイッチガイド３０Ｃ上に置かれる。
【００８５】
ライダーは、操作スイッチ３０Ａを操作する場合、スイッチガイド３０Ｃ上に置かれた指を操作スイッチ３０Ａ上まで移動させた後、操作スイッチ３０Ａを押し込む動作を行う。この例において、操作スイッチ３０Ａを押し込む動作が実動作であり、スイッチガイド３０Ｃ上から操作スイッチ３０Ａ上まで指を移動させる動作が予備動作である。ライダーが操作スイッチ３０Ｂを操作する場合についても同様である。すなわち、操作スイッチ３０Ｂを押し込む動作が実動作であり、スイッチガイド３０Ｃ上に置かれたライダーの指を操作スイッチ３０Ｂ上まで移動させる動作が予備動作である。
【００８６】
図２の例では、ライダーの指の動きによる実動作および予備動作を示したが、ライダーの腕、手、脚、足、または、足の指の動きに基づき、ライダーの予備動作を実動作から判別してもよい。
【００８７】
図３は第１実施形態に係る判定装置１００の内部構成を示すブロック図である。判定装置１００は、コンピュータの一種である。一例では、判定装置１００は、人力駆動車１に搭載されるサイクルコンピュータなどの専用端末である。他の例では、判定装置１００は、人力駆動車１のライダーが携帯するスマートフォン、タブレットなどの汎用端末である。判定装置１００は、入力部１０２、演算処理部１０４、記憶部１０６、および、出力部１０８を備える。
【００８８】
入力部１０２は、撮像装置３８を接続する接続インタフェースを備える。入力部１０２が備える接続インタフェースは、例えば有線のインタフェースである。撮像装置３８は、通信ケーブルを介して入力部１０２に接続される。撮像装置３８の画像データは記憶部１０６に一時的に記憶される。入力部１０２が備える接続インタフェースは、無線インタフェースであってもよい。無線インタフェースとして、Ｂｌｕｅｔｏｏｔｈ（登録商標） 、ＷｉＦｉ（登録商標）、ＺｉｇＢｅｅ（登録商標）、ＬＴＥ（Long Term Evolution）、および、その他の無線ＬＡＮ（Local Area Network）を含む通信規格に準じた通信インタフェースを用いることができる。
【００８９】
入力部１０２には、撮像装置３８の他に、筋電計Ｍ１が接続されてもよく、脳波計Ｍ２が接続されてもよい。
【００９０】
演算処理部１０４は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などを備える。演算処理部１０４が備えるＲＯＭには、判定装置１００が備えるハードウェア各部の動作を制御するためのコンピュータプログラム等が記憶される。演算処理部１０４内のＣＰＵは、ＲＯＭまたは記憶部１０６に記憶されるコンピュータプログラムを実行し、ハードウェア各部の動作を制御することによって、人力駆動車１のライダー情報に基づき人力駆動車１のコンポーネントの制御に関するライダーの予備動作を判定する処理を実現する。演算処理部１０４が備えるＲＡＭには、演算の実行中に利用されるデータが一時的に記憶される。
【００９１】
演算処理部１０４は、ＣＰＵ、ＲＯＭおよびＲＡＭを備える構成としたが、ＧＰＵ（Graphics Processing Unit）、ＦＰＧＡ（Field Programmable Gate Array）、ＤＳＰ（Digital Signal Processor）、量子プロセッサ、揮発性または不揮発性のメモリ等を備える１または複数の演算回路であってもよい。
【００９２】
記憶部１０６は、ＥＥＰＲＯＭ（Electronically Erasable Programmable Read Only Memory）、ＳＲＡＭ（Static Random Access Memory）などのメモリを備える。記憶部１０６は、演算処理部１０４によって実行される判定処理プログラム１１０を含む各種コンピュータプログラム、および、後述する学習モデル１２０等を記憶する。
【００９３】
判定処理プログラム１１０は、コンピュータに、人力駆動車１のライダー情報に基づいて、人力駆動車１のコンポーネントの制御に関するライダーの予備動作を判定する処理を実行させるためのコンピュータプログラムである。演算処理部１０４は、判定処理プログラム１１０を実行することによって、人力駆動車１のライダー情報に基づいて、人力駆動車１のコンポーネントの制御に関するライダーの予備動作を判定する。
【００９４】
判定処理プログラム１１０を含む各種コンピュータプログラムは、コンピュータプログラムが記憶される記憶媒体Ｍによって提供され得る。記憶媒体Ｍは、例えば、ＣＤ−ＲＯＭ、ＵＳＢメモリ、ＳＤ（Secure Digital）カード、マイクロＳＤカード、コンパクトフラッシュ（登録商標）などの可搬型メモリである。本実施形態において、記憶媒体Ｍは、判定処理プログラム１１０を含む各種コンピュータプログラムを読み取り可能に記憶する非一時的な記憶媒体である。演算処理部１０４は、読取装置を用いて記憶媒体Ｍから各種コンピュータプログラムを読み取り、読み取った各種コンピュータプログラムを記憶部１０６にインストールする。
【００９５】
記憶部１０６に記憶される学習モデル１２０は、その定義情報によって記述される。学習モデル１２０の定義情報は、学習モデル１２０の構造情報、学習モデル１２０で用いられるノード間の重みおよびバイアスなどの各種パラメータ等を含む。本実施形態では、人力駆動車１のライダー情報の入力に応じて、ライダーの予備動作の識別結果を出力するように構成された学習モデル１２０が記憶部１０６に記憶される。学習モデル１２０は、一例では、ＣＮＮ（Convolutional Neural Networks）を用いて構築される学習モデルである。学習モデル１２０は、ＣＮＮに限定されず、Ｒ−ＣＮＮ（Region-based CNN）、ＲＮＮ（Recurrent Neural Networks）、ＳＶＭ（Support Vector Machine）、ベイジアンネットワークなどを用いて構築される学習モデルであってもよい。
【００９６】
出力部１０８は、演算処理部１０４による判定結果を出力する出力インタフェースを備える。判定結果の出力形式は任意である。一例では、出力部１０８は、液晶ディスプレイ、有機ＥＬ（Electro-Luminescence）ディスプレイ等の表示デバイスを備える。この場合、出力部１０８は、ライダーの予備動作に関する判定結果を文字情報または画像情報として表示デバイスに表示してもよい。他の例では、出力部１０８は、スピーカ等の音声出力デバイスを備える。この場合、出力部１０８は、ライダーの予備動作に関する判定結果を音声出力デバイスから音声として出力してもよい。更に他の例では、出力部１０８は、通信インタフェースを備える。この場合、出力部１０８は、ライダーの予備動作に関する判定結果を通信インタフェースに接続された外部機器へ出力してもよい。
【００９７】
図４は学習モデル１２０の実装例を示す模式図である。学習モデル１２０は、ＣＮＮ（Convolutional Neural Networks）などによる学習モデルであり、例えば、入力層１２２、中間層１２４、および、出力層１２６を備える。学習モデル１２０は、ライダー情報の入力に対して、ライダーの予備動作に関する識別結果を出力するように予め学習される。
【００９８】
入力層１２２には人力駆動車１のライダーに関するライダー情報が入力される。ライダー情報の一例は、撮像装置３８によって得られるライダーの画像である。ライダー情報は、筋電計Ｍ１によって得られるライダーの筋電の情報、または、脳波計Ｍ２によって得られるライダーの脳波の情報であってもよい。
【００９９】
中間層１２４は、ライダー情報、および、予備動作に関する情報を教師データに用いて、入力層１２２に入力される情報と、出力層１２６が出力する識別結果との間の関係を学習している。中間層１２４は、例えば、畳み込み層１２４ａ、プーリング層１２４ｂ、および、全結合層１２４ｃにより構成される。畳み込み層１２４ａおよびプーリング層１２４ｂは交互に複数設けられてもよい。畳み込み層１２４ａおよびプーリング層１２４ｂは、各層のノードを用いた演算によって、入力層１２２を通じて入力されるライダーの画像、筋電の情報、または、脳波の情報から特徴量を抽出する。畳み込み層１２４ａおよびプーリング層１２４ｂによって抽出された特徴量は、全結合層１２４ｃを通じて出力層１２６へ出力される。
【０１００】
出力層１２６は、人力駆動車１のコンポーネントの操作に関するライダーの予備動作についての識別結果を出力する。出力層１２６は、１つ又は複数のノードを備える。出力層１２６は、全結合層１２４ｃから入力される特徴量に基づき、ライダーの予備動作に関する識別結果を各ノードから出力する。各ノードから出力される識別結果は、例えば、操作スイッチ３０Ａの操作に至る予備動作である確率、および、操作スイッチ３０Ｂの操作に至る予備動作である確率を含む。
【０１０１】
判定装置１００の演算処理部１０４は、学習モデル１２０の出力層１２６からライダーの予備動作に関する識別結果を取得する。演算処理部１０４は、取得した識別結果に基づき、ライダーの予備動作を判定することができる。
【０１０２】
図５は第１実施形態における判定手順を説明するフローチャートである。判定装置１００の演算処理部１０４は、ステップＳ１０１において、人力駆動車１のライダー情報を取得する。具体的には、演算処理部１０４は、入力部１０２を通じて、撮像装置３８によって得られるライダーの画像、筋電計Ｍ１によって得られるライダーの筋電の情報、および、脳波計Ｍ２によって得られるライダーの脳波に関する情報のうちの少なくとも１つを取得する。
【０１０３】
演算処理部１０４は、ステップＳ１０２において、入力部１０２から取得したライダー情報を学習モデル１２０の入力層１２２に入力することによって学習モデル１２０による演算を実行する。入力層１２２に入力されたライダー情報は中間層１２４に与えられる。中間層１２４における畳み込み層１２４ａおよびプーリング層１２４ｂでは、ノード間の重みおよびバイアスを含む活性化関数を用いた演算が行われ、演算結果が全結合層１２４ｃを通じて出力層１２６へ出力される。出力層１２６は、各ノードを通じて、ライダーの予備動作に関する識別結果を出力する。以上のように、学習モデル１２０は、入力層１２２にライダー情報が入力されると、中間層１２４において演算し、ライダーの予備動作についての識別結果を出力層１１６から出力するようコンピュータ、すなわち判定装置１００、を機能させる。
【０１０４】
演算処理部１０４は、ステップＳ１０３において、学習モデル１２０の演算結果として得られるライダーの予備動作に関する識別結果を出力層１２６から取得する。学習モデル１２０の出力層１２６から得られる識別結果は、例えば、操作スイッチ３０Ａの操作に至る予備動作である確率、および、操作スイッチ３０Ｂの操作に至る予備動作である確率を含む。
【０１０５】
演算処理部１０４は、ステップＳ１０４において、学習モデル１２０の出力層１２６から取得した識別結果に基づき、ライダーの予備動作を判定する。例えば、操作スイッチ３０Ａの操作に至る予備動作である確率がＸ１、操作スイッチ３０Ｂの操作に至る予備動作である確率がＸ２との識別結果が得られ、かつ、確率Ｘ１のみが閾値ＴＨを超える場合、演算処理部１０４は、操作スイッチ３０Ａの操作に至る予備動作と判定する。閾値ＴＨは適宜設定することができ、一例では９０％である。同様に、確率Ｘ１，Ｘ２のうち、確率Ｘ２のみが閾値を超える場合、演算処理部１０４は、操作スイッチ３０Ｂの操作に至る予備動作と判定する。確率Ｘ１，Ｘ２の何れも閾値ＴＨを超えない場合、演算処理部１０４は、予備動作が行われていないと判定する。演算処理部１０４は、判定結果を出力部１０８から出力してもよい。
【０１０６】
以上のように、第１実施形態における判定装置１００は、学習モデル１２０にライダー情報を入力し、学習モデル１２０から出力される識別結果に基づいて、ライダーの予備動作を判定する。
【０１０７】
本実施形態では、学習モデル１２０を用いてライダーの予備動作を判定する構成としたが、学習モデル１２０を用いずにライダーの予備動作を判定する構成としてもよい。例えば、予備動作の実行中におけるライダーの画像を予め用意しておき、撮像装置３８からライダーの画像が得られた場合、演算処理部１０４は、両者の差分画像を生成し、生成した差分画像に基づき予備動作を判定してもよい。予備動作の実行中における筋電または脳波のデータを予め用意しておき、筋電計Ｍ１または脳波計Ｍ２から得られる筋電または脳波のデータとの比較によって、予備動作を判定してもよい。
【０１０８】
（第２実施形態）
第２実施形態では、判定装置１００による判定結果に基づき、人力駆動車１のコンポーネントを制御する制御システムについて説明する。
【０１０９】
図６は第２実施形態に係る制御システムを説明するブロック図である。第２実施形態に係る制御システムは、判定装置１００と、判定装置１００による判定結果に基づき、人力駆動車１のコンポーネントを制御する制御装置２００とを備える。より具体的には、制御装置２００は、判定装置１００の判定結果に基づいて人力駆動車１のコンポーネントが第１状態から第１状態とは異なる第２状態に遷移するための準備動作を実行するように、コンポーネントを制御する。制御装置２００は、独立した装置として設けられてもよく、制御対象のコンポーネント内に設けられてもよい。図６に示した例では、判定装置１００と制御装置２００とを別体として記載したが、判定装置１００と制御装置２００とが一体となった構成であってもよい。
【０１１０】
制御装置２００は、制御部２０２、記憶部２０４、入力部２０６、および、出力部２０８を備える。制御部２０２は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備える。制御部２０２が備えるＲＯＭには、制御装置２００が備えるハードウェア各部の動作を制御するための制御プログラム等が記憶される。制御部２０２内のＣＰＵは、ＲＯＭに記憶された制御プログラム、および、記憶部２０４に記憶された各種プログラムを実行し、ハードウェア各部の動作を制御することによって、本願の制御装置を実現する。具体的には、制御部２０２は、入力部２０６を通じて入力される判定装置１００からの判定結果に基づき、人力駆動車１のコンポーネントを制御する制御信号を生成し、生成した制御信号を出力部２０８から出力する。
【０１１１】
制御部２０２は上述の構成に限定されない。制御部２０２は、シングルコアＣＰＵ、マルチコアＣＰＵ、ＦＰＧＡ、揮発性または不揮発性のメモリ等を含む１または複数の制御回路であればよい。また、制御部２０２は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【０１１２】
記憶部２０４は、ＥＥＰＲＯＭ、ＳＲＡＭなどのメモリを備える。記憶部２０４には、制御部２０２によって実行されるコンピュータプログラム、および、このコンピュータプログラムが用いるデータ等が記憶される。
【０１１３】
入力部２０６は、ケーブルを介して判定装置１００を接続するインタフェースを備える。入力部２０６には、判定装置１００から出力される判定結果が入力される。入力部２０６に入力される判定結果は、ライダーの身体的コンディションを示すデータである。入力部２０６は、入力された判定結果を制御部２０２へ出力する。本実施形態では、ケーブルを介して判定装置１００を接続する構成としたが、無線通信のインタフェースを介して、判定装置１００と制御装置２００との間でデータを送受信できるように構成してもよい。無線通信では、Ｂｌｕｅｔｏｏｔｈ 、ＷｉＦｉ、ＺｉｇＢｅｅ、ＬＴＥ、その他の無線ＬＡＮ等の通信規格に準じた無線通信方式が利用できる。
【０１１４】
出力部２０８は、ケーブルを介して制御対象のコンポーネントを接続するインタフェースを備える。出力部２０８は、制御部２０２から出力される制御信号を制御対象のコンポーネントへ出力する。本実施形態では、ケーブルを介して人力駆動車１のコンポーネントを接続する構成としたが、無線通信のインタフェースを介して、制御装置２００と人力駆動車１のコンポーネントとの間でデータを送受信できるように構成してもよい。無線通信では、上述した各種の通信規格に準拠した無線通信方式が利用できる。
【０１１５】
制御装置２００に接続されるコンポーネントの一例は変速装置３２である。すなわち、本実施形態では、コンポーネントは、変速装置３２を含む。以下では、判定装置１００の判定結果に基づき、制御装置２００が変速装置３２を制御する制御手順について説明する。
【０１１６】
図７は変速装置３２の制御状態を説明するタイミングチャートである。ステップＳ２０１において、制御装置２００の制御部２０２は、判定装置１００による判定結果を取得する。ステップＳ２０２において、制御部２０２は、判定装置１００から取得した判定結果に基づき、変速装置３２が第１状態から第１状態とは異なる第２状態に遷移するための準備動作を実行するように、変速装置３２を制御する。このとき、制御部２０２は、出力部２０８を通じて準備動作を指示する制御信号を変速装置３２へ出力する。ここで、第１状態は制御開始前の状態を表し、第２状態は制御完了後の状態を表す。本実施形態において、準備動作は、人力駆動車１の変速比の変更に関する。
【０１１７】
例えば、制御部２０２は、操作スイッチ３０Ａの操作に至る予備動作であるとの判定結果を判定装置１００から取得した場合、チェーン２６が巻き掛けられるリアスプロケットを、現在巻き掛けられているリアスプロケットよりも外径が小さいリアスプロケットに変更するために、電動アクチュエータ３２Ａの駆動開始を指示する。同様に、制御部２０２は、操作スイッチ３０Ｂの操作に至る予備動作であるとの判定結果を判定装置１００から取得した場合、チェーン２６が巻き掛けられるリアスプロケットを、現在巻き掛けられているリアスプロケットよりも外径が大きいリアスプロケットに変更するために、電動アクチュエータ３２Ａの駆動開始を指示する。
【０１１８】
ステップＳ２０３において、変速装置３２は、電動アクチュエータ３２Ａの駆動を開始させることによって準備動作を実行する。準備動作に応じて、コンポーネント、すなわち変速装置３２は、第１状態から第１状態および第２状態とは異なる中間状態に遷移する。判定装置１００の判定結果が操作スイッチ３０Ａの操作に至る予備動作であり、かつ、現在チェーンガイド３２Ｂが６番目に大きいリアスプロケットに対応する位置に配されている場合について説明する。例えば、第１状態が、チェーンガイド３２Ｂが６番目に大きいリアスプロケットに対応する位置に配されている状態であり、第２状態が、チェーンガイド３２Ｂが５番目に大きいリアスプロケットに対応する位置に配されている状態である場合、中間状態は、チェーンガイド３２Ｂが、６番目に大きいリアスプロケットに対応する位置と、第２状態においてチェーンガイド３２Ｂが５番目に大きいリアスプロケットに対応する位置との間に定義される中間位置に配される状態を意味する。変速装置３２は、準備動作として、電動アクチュエータ３２Ａを駆動し、チェーンガイド３２Ｂを中間位置に配する。
【０１１９】
ステップＳ２０４において、操作装置３０は、操作スイッチ３０Ａまたは操作スイッチ３０Ｂの操作を受付ける。ステップＳ２０５において、制御装置２００は、変速装置３２に対する操作に関する操作情報に応じて、変速装置３２が中間状態から第２状態に遷移するように、変速装置３２を制御する。すなわち、制御装置２００は、コンポーネントに対する操作に関する操作情報に応じて、コンポーネントが中間状態から第２状態に遷移するように、コンポーネントを制御する。
【０１２０】
ステップＳ２０６において、変速装置３２は、操作装置３０から送信される制御信号を受信した場合、制御信号に応じて電動アクチュエータ３２Ａを駆動し、中間状態から第２状態へ遷移させる。
【０１２１】
以上のように、第２実施形態では、ライダーの予備動作に応じて、変速装置３２が制御開始前の第１状態から中間状態へ遷移し、予備動作に続いて実際の操作が行われた場合、中間状態から第２状態へ遷移するので、ライダーが所望する制御状態に速やかに移行させることができる。
【０１２２】
第２実施形態では、制御対象のコンポーネントを変速装置３２としたが、制御対象のコンポーネントは変速装置３２に限定されず、変速装置３３、アジャスタブルシートポスト３４、サスペンション装置３６、または、ペダル２８であってもよい。
【０１２３】
第１変形例では、コンポーネントはアジャスタブルシートポスト３４を含む。第１変形例では、操作装置３０の操作によってアジャスタブルシートポスト３４を制御し、シート１８の高さを変更する。第１変形例において、準備動作は人力駆動車１のシートの高さを変更する動作に関する。判定装置１００は、前述と同様の手順によって、操作装置３０の操作に関するライダーの予備動作を判定する。制御装置２００は、判定装置１００の判定結果に基づいて準備動作を実行するように、アジャスタブルシートポスト３４を制御する。判定装置１００は、操作装置３０の操作に関する予備に限らず、ライダーの姿勢に基づく予備動作を判定してもよい。例えば、判定装置１００は、撮像装置３８によって得られるライダーの画像に基づき、ライダーの腰をシート１８から浮かせる動作等を予備動作として判定してもよい。
【０１２４】
第２変形例では、コンポーネントはよってサスペンション装置３６を含む。第２変形例では、操作装置３０の操作によってサスペンション装置３６を制御し、サスペンション装置３６の動作状態を変更する。第２変形例において、準備動作はサスペンション装置の動作状態の変更に関する。判定装置１００は、前述と同様の手順によって、操作装置３０の操作に関するライダーの予備動作を判定する。制御装置２００は、判定装置１００の判定結果に基づいてサスペンション装置３６の動作状態を変更する準備動作を実行するように、サスペンション装置３６を制御する。判定装置１００は、操作装置３０の操作に関する予備に限らず、ライダーの姿勢に基づく予備動作を判定してもよい。例えば、判定装置１００は、撮像装置３８によって得られるライダーの画像に基づき、ライダーの前かがみになる動作等を予備動作として判定してもよい。
【０１２５】
第３変形例では、コンポーネントはライダーのシューズと係合する係合機構２８Ａを備えるペダル２８を含む。第３実施形態では、ペダル２８の係合機構２８Ａを制御し、ライダーのシューズとの係合状態を変更する。第３変形例において、準備動作は、シューズと係合機構２８Ａとの係合を解除する動作に関する。判定装置１００は、例えばライダーの脚、足または足の指の動きに基づいてライダーの予備動作を判定する。具体的には、判定装置１００は、撮像装置３８によって得られるライダーの画像に基づき、ライダーの足首を外側へ捻る動作等を予備動作として判定する。制御装置２００は、判定装置１００の判定結果に基づいてシューズと係合機構２８Ａとの係合を解除する準備動作を実行するように、ペダル２８を制御する。
【０１２６】
（第３実施形態）
第３実施形態では、ライダー情報、準備動作に関する準備動作情報、および、コンポーネントに対する操作に関する操作情報を外部装置へ送信する送信装置を更に備える制御システムについて説明する。
【０１２７】
図８は第３実施形態に係る送信装置３００の内部構成を示すブロック図である。第３実施形態に係る通信システムは、判定装置１００および制御装置２００に加え、送信装置３００を備える。図８においては、判定装置１００および制御装置２００の図示を省略している。
【０１２８】
送信装置３００は、制御部３０２、記憶部３０４、入力部３０６、および、通信部３０８を備える。制御部３０２は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備える。制御部３０２が備えるＲＯＭには、送信装置３００が備えるハードウェア各部の動作を制御するための制御プログラム等が記憶される。制御部３０２内のＣＰＵは、ＲＯＭに記憶された制御プログラム、および、記憶部３０４に記憶された各種プログラムを実行し、ハードウェア各部の動作を制御することによって、本願の通信装置を実現する。具体的には、制御部３０２は、入力部３０６から入力されるライダー情報、準備動作情報、および、操作情報を、通信部３０８を通じて外部装置へ送信する。外部装置は、一例では、インターネット網などの通信ネットワークに接続されたサーバ装置４００である。
【０１２９】
制御部３０２は上述の構成に限定されない。制御部３０２は、シングルコアＣＰＵ、マルチコアＣＰＵ、ＦＰＧＡ、揮発性または不揮発性のメモリ等を含む１または複数の制御回路であればよい。また、制御部３０２は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【０１３０】
記憶部３０４は、ＥＥＰＲＯＭ、ＳＲＡＭなどのメモリを備える。記憶部３０４には、制御部３０２によって実行されるコンピュータプログラム、および、このコンピュータプログラムが用いるデータ等が記憶される。
【０１３１】
入力部３０６は、判定装置１００、制御装置２００、および、操作装置３０を接続する接続インタフェースを備える。接続インタフェースは、有線または無線のインタフェースを用いることができる。入力部３０６には、ライダー情報、準備動作に関する準備動作情報、および、コンポーネントに対する操作に関する操作情報が入力される。ライダー情報は、判定装置１００に入力される情報であり、ライダーの画像、筋電の情報、および、脳波の情報のうちの少なくとも１つを含む。送信装置３００は、判定装置１００からライダー情報を取得する。準備動作情報は、制御装置２００が制御対象のコンポーネントに実行させた準備動作に関する情報であり、制御装置２００または制御対象のコンポーネントによって生成される。送信装置３００は、制御装置２００または制御対象のコンポーネントから準備動作情報を取得する。操作情報は、操作装置３０の操作に応じて出力される操作信号に基づき生成される情報である。操作情報は、判定装置１００または制御装置２００によって生成されてもよく、送信装置３００の内部において生成されてもよい。
【０１３２】
通信部３０８は、通信インタフェースを備える。通信インタフェースには、例えば、ＷｉＦｉ、ＬＴＥ、その他の無線ＬＡＮ等の通信規格に準拠した通信インタフェースが利用される。送信装置３００は、入力部３０６を通じて入力されたライダー情報、準備動作情報、および、操作情報を、通信部３０８を通じて、サーバ装置４００へ送信する。
【０１３３】
第３実施形態では、送信装置３００を独立した装置として記載したが、判定装置１００または制御装置２００の内部に搭載されてもよい。
【０１３４】
以上のように、第３実施形態では、人力駆動車１において得られるライダー情報、準備動作情報、および、操作情報を外部装置へ送信できる。
【０１３５】
（第４実施形態）
第４実施形態では、学習モデル１２０の生成方法について説明する。
【０１３６】
人力駆動車１の判定装置１００において用いられる学習モデル１２０は、例えばサーバ装置４００において生成される。図９はサーバ装置４００の内部構成を示すブロック図である。サーバ装置４００は、制御部４０２、記憶部４０４、入力部４０６、および、通信部４０８を備える。
【０１３７】
制御部４０２は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭなどを備える。制御部４０２が備えるＲＯＭには、サーバ装置４００が備えるハードウェア各部の動作を制御するための制御プログラム等が記憶される。制御部４０２内のＣＰＵは、ＲＯＭに記憶された制御プログラム、および、記憶部４０４に記憶された各種プログラムを実行し、ハードウェア各部の動作を制御する。
【０１３８】
制御部４０２は上述の構成に限定されない。制御部４０２は、ＣＰＵ、ＲＯＭ、および、ＲＡＭを備えた構成に限定されない。制御部４０２は、例えば、ＧＰＵ、ＦＰＧＡ、ＤＳＰ、量子プロセッサ、揮発性または不揮発性のメモリ等を含む１または複数の制御回路または演算回路であってもよい。また、制御部４０２は、日時情報を出力するクロック、計測開始指示を与えてから計測終了指示を与えるまでの経過時間を計測するタイマ、数をカウントするカウンタ等の機能を備えていてもよい。
【０１３９】
記憶部４０４は、ハードディスクドライブなどの記憶装置を備える。記憶部４０４には、制御部４０２によって実行される各種コンピュータプログラム、サーバ装置４００が生成する学習モデル４１０等が記憶される。
【０１４０】
入力部４０６は、各種データまたはプログラムを記録した記録媒体から、データおよびプログラムを取得するための入力インタフェースを備える。入力部４０６を通じて入力された各種データおよびプログラムは記憶部４０４に記憶される。
【０１４１】
通信部４０８は通信インタフェースを備える。通信部４０８は、例えば、サーバ装置４００を宛先として送信装置３００から送信される情報を受信すると共に、送信装置３００へ送信すべき情報を送信する。
【０１４２】
以下、サーバ装置４００にて学習モデル４１０を生成する手順について説明する。
図１０は学習モデル４１０の生成手順を説明するフローチャートである。サーバ装置４００の制御部４０２は、ステップＳ４０１において、入力部４０６または通信部４０８を通じて、学習モデル４１０を学習するための教師データを取得する。教師データは、人力駆動車１のライダーに関するライダー情報と、人力駆動車１のコンポーネントの状態を、第１状態から第１状態とは異なる第２状態へ遷移させるための操作に関するライダーの予備動作に関する情報とを含む。学習モデル４１０を生成する初期段階では、教師データは、例えばサーバ装置４００の管理者等によって設定されてもよい。学習が進めば、学習モデル４１０による推定結果を用いて、教師データを設定する構成としてもよい。後者の場合、学習モデル４１０への入力と、推定結果として得られるラベルデータとを、教師データとして設定できる。
【０１４３】
制御部４０２は、ステップＳ４０２において、教師データとして含まれるライダー情報を学習モデル４１０へ入力する。学習が開始される前の段階では、学習モデル４１０を記述する定義情報には、初期設定値が与えられる。学習モデル４１０は、第１実施形態において説明した学習モデル１２０と同様に、入力層、中間層、および、出力層を備える。学習モデル４１０の入力層にはライダー情報が与えられる。入力層に与えられた情報は、隣接する中間層のノードへ出力される。中間層ではノード間の重みおよびバイアスを含む活性化関数を用いた演算が行われ、中間層による演算結果が出力層の各ノードへ出力される。制御部４０２は、ステップＳ４０３において、学習モデル４１０による演算結果を出力層の各ノードから取得する。
【０１４４】
制御部４０２は、ステップＳ４０４において、ステップＳ４０３にて得られた演算結果を評価し、ステップＳ４０５において、学習モデル４１０の学習が完了したか否かを判断する。具体的には、制御部４０２は、ステップＳ４０３において得られる演算結果と教師データとに基づく誤差関数を用いて演算結果を評価することができる。誤差関数は、目的関数、損失関数、または、コスト関数とも呼ばれる。制御部４０２は、最急降下法などの勾配降下法により誤差関数を最適化する過程で、誤差関数が閾値以下または閾値以上となった場合、学習モデル４１０の学習が完了したと判断する。制御部４０２は、過学習の問題を避けるために、交差検定、早期打ち切りなどの手法を取り入れ、適切なタイミングにて学習を終了させてもよい。
【０１４５】
ステップＳ４０５において学習が完了していないと判断した場合、制御部４０２は、ステップＳ４０６において、中間層で用いられるノード間の重みおよびバイアスを更新し、処理をステップＳ４０１へ戻す。制御部４０２は、出力層から入力層に向かって、ノード間の重みおよびバイアスを順次更新する誤差逆伝搬法を用いて、各ノード間の重みおよびバイアスを更新することができる。
【０１４６】
ステップＳ４０５において学習が完了したと判断した場合、制御部４０２は、ステップＳ４０７において、学習済みの学習モデル４１０として記憶部４０４に記憶させ、本フローチャートによる処理を終了する。
【０１４７】
以上のように、第４実施形態では、人力駆動車１のライダーに関するライダー情報と、人力駆動車１のコンポーネントの状態を、第１状態から第１状態とは異なる第２状態へ遷移させるための操作に関するライダーの予備動作に関する情報とを教師データに用いて、ライダー情報が入力されると、予備動作の識別結果を出力する学習モデル４１０をサーバ装置４００において生成できる。
【０１４８】
サーバ装置４００は、判定装置１００からの要求に応じて、学習済みの学習モデル４１０を判定装置１００へ送信してもよい。判定装置１００は、送信装置３００を介して、サーバ装置４００から送信される学習モデル４１０を取得し、記憶部１０６に記憶させる。記憶部１０６に記憶させた学習モデル４１０は、実施の形態１において説明した学習モデル１２０として機能し、ライダー情報の入力に対して、ライダーの予備動作に関する識別結果を出力するように構成される。
【０１４９】
サーバ装置４００は、学習モデル４１０を生成した後、ライダーの予備動作を判定してもよい。この場合、撮像装置３８から得られるライダーの画像、筋電計Ｍ１から得られる筋電の情報、および、脳波計Ｍ２から得られる脳波の情報の少なくとも１つを、送信装置３００を通じてサーバ装置４００へ送信する。サーバ装置４００は、ライダーの画像、筋電の情報、および、脳波の情報のうちの少なくとも１つを受信し、学習モデル４１０を用いて、ライダーの予備動作を判定する。判定結果は、送信装置３００を通じて、制御装置２００へ送信され、判定結果に応じた制御が実行される。
【０１５０】
（第５実施形態）
第５実施形態では、学習モデル１２０を再学習する構成について説明する。
【０１５１】
第５実施形態の判定装置１００には、入力部１０２を介して、操作装置３０が接続される。判定装置１００には、コンポーネントに対する操作に関する操作情報が入力部１０２から入力される。判定装置１００は、操作情報と準備動作との対応関係に応じて、学習モデル１２０を再学習する。すなわち、判定装置１００は、コンポーネントに実行させた準備動作と、ライダーの操作に基づくコンポーネントの動作との異同に応じて、教師データを設定し、設定した教師データを用いて学習モデル１２０の再学習を行う。
【０１５２】
図１１は学習モデル１２０の再学習手順を説明するフローチャートである。ステップＳ５０１において、判定装置１００の演算処理部１０４は、再学習用の教師データを設定する。演算処理部１０４は、予備動作の判定に用いたライダー情報、判定結果に基づきコンポーネントに実行させた準備動作の情報、および、ライダーの実際の操作を示す操作情報に基づき、再学習用の教師データを設定することができる。再学習用の教師データには、予備動作の判定に用いたライダー情報と、予備動作の識別結果を示すラベルデータとが含まれる。ラベルは、操作情報に基づくコンポーネントの動作と、準備動作との異同に応じて設定される。
【０１５３】
ステップＳ５０２において、演算処理部１０４は、教師データに含まれるライダー情報を学習モデル１２０へ入力する。学習モデル１２０の入力層１２２にはライダー情報が与えられる。入力層１２２に与えられたライダー情報は、隣接する中間層１２４のノードへ出力される。中間層１２４ではノード間の重みおよびバイアスを含む活性化関数を用いた演算が行われ、中間層１２４による演算結果が出力層１２６の各ノードへ出力される。
【０１５４】
ステップＳ５０３において、演算処理部１０４は、学習モデル１２０による演算結果を出力層１２６の各ノードから取得する。演算結果は、予備動作の識別結果を示す。
【０１５５】
ステップＳ５０４において、演算処理部１０４は、ステップＳ５０３にて得られた演算結果を評価する。ステップＳ５０５において、演算処理部１０４は、学習が完了したか否かを判断する。具体的には、演算処理部１０４は、ステップＳ５０３において得られる演算結果と教師データとに基づく誤差関数を用いて演算結果を評価することができる。誤差関数は、目的関数、損失関数、または、コスト関数とも呼ばれる。演算処理部１０４は、最急降下法などの勾配降下法により誤差関数を最適化する過程で、誤差関数が閾値以下または閾値以上となった場合、学習モデル１２０の学習が完了したと判断する。演算処理部１０４は、過学習の問題を避けるために、交差検定、早期打ち切りなどの手法を取り入れ、適切なタイミングにて学習を終了させてもよい。
【０１５６】
ステップＳ５０５において学習が完了していないと判断した場合、ステップＳ５０６において、演算処理部１０４は、中間層１２４で用いられるノード間の重みおよびバイアスを更新し、処理をステップＳ５０１へ戻す。制御部４０２は、出力層１２６から入力層１２２に向かって、ノード間の重みおよびバイアスを順次更新する誤差逆伝搬法を用いて、各ノード間の重みおよびバイアスを更新することができる。
【０１５７】
ステップＳ５０５において学習が完了したと判断した場合、制御部４０２は、本フローチャートによる処理を終了する。
【０１５８】
以上のように、第５実施形態では、判定装置１００において学習モデル１２０を再学習することができる。
【０１５９】
第５実施形態では、判定装置１００において学習モデル１２０を再学習する構成としたが、再学習に必要な教師データをサーバ装置４００へ送信し、サーバ装置４００にて学習モデル４１０を再学習してもよいことは勿論のことである。
【０１６０】
（第６実施形態）
第６実施形態では、人力駆動車１のライダーに関する画像、ライダーの筋電に関する情報、および、ライダーの脳波に関する情報のうちの少なくとも１つに基づいて人力駆動車１のコンポーネントの操作に関する前記ライダーの動作を判定する判定装置１００、および、判定装置１００と、判定装置１００の判定結果に基づいて、コンポーネントが第１状態から前記第１状態とは異なる第２状態へ遷移するようにコンポーネントを制御する制御装置２００と、を備える制御システムについて説明する。
【０１６１】
図１２は第６実施形態に係る制御システムを説明するブロック図である。第６実施形態に係る制御システムは、判定装置１００と、判定装置１００による判定結果に基づき、人力駆動車１のコンポーネントを制御する制御装置２００とを備える。判定装置１００および制御装置２００の内部構成は、第２実施形態と同様である。
【０１６２】
第６実施形態における判定装置１００は、ライダー情報の入力に対して、ライダーの操作に関する識別結果を出力するように予め学習された学習モデル１３０を備える。学習モデル１３０は、ＣＮＮなどにより構築される学習モデルであり、例えば入力層、中間層および出力層を備える。第６実施形態における学習モデル１３０は、ライダーの操作に関する識別結果を出力する点が第１実施形態における学習モデル１２０と相違する。
【０１６３】
判定装置１００は、学習モデル１３０を用いて、人力駆動車１が備えるコンポーネントの操作に関するライダーの動作を判定する。すなわち、第１実施形態ではライダーの予備動作を判定するのに対し、第６実施形態では人力駆動車１のコンポーネントを制御するライダーの直接的な動作を判定する。判定装置１００は、判定結果を制御装置２００へ出力する。
【０１６４】
制御装置２００は、判定装置１００から出力される判定結果に基づき、人力駆動車１のコンポーネントを制御する。このとき、制御装置２００は、コンポーネントが第１状態から第１状態とは異なる第２状態へ遷移するようにコンポーネントの制御を行う。ここで、第１状態は制御開始前の状態を表し、第２状態は制御完了後の状態を表す。
【０１６５】
制御装置２００に接続されるコンポーネントの一例は変速装置３２である。以下では、判定装置１００の判定結果に基づき、制御装置２００が変速装置３２を制御する制御手順について説明する。
【０１６６】
図１３は変速装置３２の制御状態を説明するタイミングチャートである。ステップＳ６０１において、制御装置２００の制御部２０２は、判定装置１００による判定結果を取得する。ステップＳ６０２において、制御部２０２は、判定装置１００から取得した判定結果に基づき、変速装置３２が第１状態から第１状態とは異なる第２状態に遷移するように、変速装置３２を制御する。このとき、制御部２０２は、出力部２０８を通じて第１状態から第２状態への遷移を指示する制御信号を変速装置３２へ出力する。
【０１６７】
例えば、制御部２０２は、変速装置３２のシフトアップに関する操作であるとの判定結果を判定装置１００から取得した場合、チェーン２６が巻き掛けられるリアスプロケットを、現在巻き掛けられているリアスプロケットよりも外径が小さいリアスプロケットに変更するために、電動アクチュエータ３２Ａの駆動を指示する。同様に、制御部２０２は、変速装置３２のシフトダウンに関する操作であるとの判定結果を判定装置１００から取得した場合、チェーン２６が巻き掛けられるリアスプロケットを、現在巻き掛けられているリアスプロケットよりも外径が大きいリアスプロケットに変更するために、電動アクチュエータ３２Ａの駆動を指示する。
【０１６８】
ステップＳ６０３において、変速装置３２は、電動アクチュエータ３２Ａの駆動し、第１状態から第２状態へ遷移させる。例えば、第１状態が、チェーンガイド３２Ｂが６番目に大きいリアスプロケットに対応する位置に配されている状態であり、第２状態が、チェーンガイド３２Ｂが５番目に大きいリアスプロケットに対応する位置に配されている状態である場合、変速装置３２は、チェーンガイド３２Ｂが５番目に大きいリアスプロケットに対応する位置に配されるように電動アクチュエータ３２Ａを駆動する。
【０１６９】
第６実施形態では、制御対象のコンポーネントを変速装置３２としたが、制御対象のコンポーネントは変速装置３２に限定されず、変速装置３３、アジャスタブルシートポスト３４、サスペンション装置３６、または、ペダル２８であってもよい。  
【０１７０】
以上のように、第６実施形態では、コンポーネントの操作に関するライダーの動作に応じて、コンポーネントを制御することができる。コンポーネントの操作に関するライダーの動作は、実際の動作である必要はないので、実際に機能する操作装置３０を設けていない場合であっても、ライダーの動作によってコンポーネントを制御することができる。
【０１７１】
（第７実施形態）
第７実施形態では、人力駆動車１が備えるコンポーネントの制御状態を判定し、判定結果に応じて、別のコンポーネントを制御する構成について説明する。
【０１７２】
図１４は第７実施形態に係る制御システムを説明するブロック図である。第７実施形態に係る制御システムは、人力駆動車１に関する情報が入力されると人力駆動車１のコンポーネントの制御状態についての識別結果を出力するように構成された学習モデル１４０に、人力駆動車１に関する情報を入力し、学習モデル１４０から出力される識別結果に基づいて、人力駆動車１のコンポーネントの制御状態を判定する判定装置１００と、判定装置１００による判定結果に基づいて人力駆動車１のコンポーネントが第１状態から第１状態とは異なる第２状態に遷移するように異なる別の人力駆動車１のコンポーネントを制御する制御装置２００と、を備える。判定装置１００および制御装置２００の内部構成は、第２実施形態と同様である。
【０１７３】
第７実施形態における判定装置１００の入力部１０２には、人力駆動車１に関する情報が入力される。人力駆動車１に関する情報は、人力駆動車１に関する画像、速度、加速度、傾斜角度、地理的な位置、ケイデンス、パワー、および車輪（前輪１２または後輪１４）の回転速度に関する情報のうちの少なくとも１つに関する情報を含む。これらの情報は、撮像装置３８、車速センサＳ１、ケイデンスセンサＳ２、トルクセンサＳ３、傾斜センサＳ４、加速度センサＳ５、および、位置センサＳ６により取得することが可能である。
【０１７４】
判定装置１００は、人力駆動車１に関する情報の入力に対して、人力駆動車１のコンポーネントの制御状態についての識別結果を出力するように予め学習された学習モデル１４０を備える。学習モデル１４０は、ＣＮＮなどにより構築される学習モデルであり、例えば入力層、中間層および出力層を備える。第７実施形態における学習モデル１４０は、人力駆動車１に関する情報を入力とし、コンポーネントの制御状態を示す識別結果を出力する点が第１実施形態における学習モデル１２０と相違する。
【０１７５】
判定装置１００は、学習モデル１４０を用いて、人力駆動車１が備えるコンポーネントの制御状態を判定する。判定装置１００は、判定結果を制御装置２００へ出力する。
【０１７６】
制御装置２００は、判定装置１００から出力される判定結果に基づき、人力駆動車１の別のコンポーネントを制御する。このとき、制御装置２００は、判定対象のコンポーネントが第１状態から第１状態とは異なる第２状態へ遷移するように別のコンポーネントの制御を行う。ここで、第１状態は制御開始前の状態を表し、第２状態は制御完了後の状態を表す。
【０１７７】
一例では、判定装置１００の判定対象であるコンポーネントは、チェーン２６であり、制御装置２００の制御対象であるコンポーネントは、チェーンデバイス２６Ａである。以下では、判定装置１００の判定結果に基づき、制御装置２００がチェーンデバイス２６Ａを制御する制御手順について説明する。
【０１７８】
図１５は変速装置３２の制御状態を説明するタイミングチャートである。ステップＳ７０１において、制御装置２００の制御部２０２は、判定装置１００による判定結果を取得する。判定装置１００から取得する判定結果は、チェーン２６の制御状態を表し、例えばチェーン２６の動作に異変が発生しているか否かを判定する。
【０１７９】
ステップＳ７０２において、制御部２０２は、判定装置１００から取得した判定結果に基づき、チェーンデバイス２６Ａが第１状態から第１状態とは異なる第２状態に遷移するように、チェーンデバイス２６Ａを制御する。このとき、制御部２０２は、出力部２０８を通じて第１状態から第２状態への遷移を指示する制御信号をチェーンデバイス２６Ａへ出力する。
【０１８０】
ステップＳ７０３において、チェーンデバイス２６Ａは、制御部２０２からの制御信号に基づき、第１状態から第２状態へ遷移する。第１状態から第２状態への遷移には、図に示していない電動アクチュエータが用いられる。チェーンデバイス２６Ａは、第１状態から第２状態への遷移により、チェーン２６の動作異変を抑える。
【０１８１】
第７実施形態では、判定対象のコンポーネントをチェーン２６、制御対象のコンポーネントをチェーンデバイス２６Ａとしたが、判定対象および制御対象のコンポーネントの組み合わせは、これらに限定されない。人力駆動車１が備える各種コンポーネントの組み合わせを用いて、人力駆動車１が備えるコンポーネントの制御状態を判定し、その判定結果に応じて別のコンポーネントを制御してもよい。  
【０１８２】
以上のように、第７実施形態では、人力駆動車１が備えるコンポーネントの制御状態の判定結果に応じて、別のコンポーネントを制御することができる。
【０１８３】
各実施形態は、少なくとも一部を任意に組み合わせてもよい。例えば、第２実施形態と第７実施形態とを組み合わせ、ライダーの予備動作に基づくコンポーネントの制御と、コンポーネントの制御状態に基づく制御とを併せ持つ制御システムを構築してもよい。
【０１８４】
今回開示された実施形態は、全ての点において例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【０１８５】
１…人力駆動車、３０…操作装置、３２，３３…変速装置、３４…アジャスタブルシートポスト、３６…サスペンション装置、３８…撮像装置、４０…バッテリユニット、１００…判定装置、１０２…入力部、１０４…演算処理部、１０６…記憶部、１０８…出力部、１１０…判定処理プログラム、１２０，１３０，１４０…学習モデル、２００…制御装置、２０２…制御部、２０４…記憶部、２０６…入力部、２０８…出力部、３００…送信装置、３０２…制御部、３０４…記憶部、３０６…入力部、３０８…通信部、４００…サーバ装置、４０２…制御部、４０４…記憶部、４０６…入力部、４０８…通信部、４１０…学習モデル
【図１】
2020138556.tif 000003
【図２】
2020138556.tif 000004
【図３】
2020138556.tif 000005
【図４】
2020138556.tif 000006
【図５】
2020138556.tif 000007
【図６】
2020138556.tif 000008
【図７】
2020138556.tif 000009
【図８】
2020138556.tif 000010
【図９】
2020138556.tif 000011
【図１０】
2020138556.tif 000012
【図１１】
2020138556.tif 000013
【図１２】
2020138556.tif 000014
【図１３】
2020138556.tif 000015
【図１４】
2020138556.tif 000016
【図１５】
2020138556.tif 000017