以下、本発明に係る自転車シミュレーション装置について実施の形態を挙げ、添付の図1〜図12を参照しながら説明する。
図1に示すように、本実施の形態に係る自転車シミュレーション装置10は模擬自転車12と、該模擬自転車12の運転に応じた情景を画面14aに表示するモニタ14と、模擬音や運転者に対する音声指示を与えるスピーカ15と、運転者が乗降する位置に設けられたマットスイッチ16と、自転車シミュレーション装置10の全体的な制御を行う主制御部18とを有する。主制御部18は模擬自転車12の前方に配置され、モニタ14及びスピーカ15は主制御部18の上部で模擬自転車12の運転者から視認性の良い位置に配置されている。主制御部18、モニタ14及びスピーカ15は4本の支柱21によって昇降可能に支持されており、運転者の体型に合わせて高さの調整が可能である。また、主制御部18は、画面14aにシミュレーションに対応した画像を表示する機能を有しており、画像処理処理コンピュータとしての機能も有する。
次に、模擬自転車12について説明する。以下、模擬自転車12において左右に1つずつ設けられた機構については、左のものの番号符号に「L」を付し、右のものの番号符号に「R」を付すことにより区別して説明する。
模擬自転車12は、フレーム20と、該フレーム20にシートピラーを介して接続されたサドル24と、フレーム20のヘッドチューブ20aを支軸として回動可能なハンドル28と、ヘッドチューブ20aを固定支持するスタンドとしての2本のフロントフォーク30R、30Lと、フレーム20のシートステー20b及びチェーンステー20cにより回転自在に支持された後輪32とを有する。フロントフォーク30R、30Lの先端には横方向に延在するパイプ31が設けられており、該パイプ31が床に接地している。ハンドル28のステム28aは、ヘッドチューブ20aの近傍に折り畳み機構28bを有し、折り畳み又は分解可能である。
フロントフォーク30R、30Lは、外観上は自転車(又は自動二輪車)のフロントフォークと形状が類似しているが、実際のフロントフォークのようにハンドル28に連動して回動されることはなく、また前輪も設けられてない。後輪32にはやや小径サイズのタイヤ32aが設けられており、該タイヤ32aが床に接地していることにより後部スタンドを兼ねている。このように、模擬自転車12はフロントフォーク30R、30Lと後輪32によって支持されて起立している。フロントフォーク30R及び30Lとパイプ31との間には、コントローラ46がブラケット33を介して固定されている。
また、模擬自転車12は、回転駆動機構部40と、速度検出機構部42と、制動機構部44と、コントローラ46と、ハンドル28の舵角を検出する舵角センサ50(図4参照)と、運転者の声を入力するためのマイクロホン52と、サドル24の後部に設けられた後退スイッチ54とを有する。後退スイッチ54は、運転者が降車して所定の模擬後退動作を行う際に操作するスイッチである。
回転駆動機構部40は、クランクチューブ20e内に設けられたクランク軸60の左右に連結された一対のクランク62L及び62Rと、該クランク62L及び62Rの先端に設けられたペダル64L及び64Rと、クランク62Rに設けられたフロントスプロケット66と、該フロントスプロケット66からチェーン68を介して回転駆動されるリアスプロケット70と、該リアスプロケット70からワンウェイクラッチ(フリーハブとも呼ばれる。)72を介して回転駆動される鉄製のフライホイール(回転体)74とを有する。フロントスプロケット66の歯数z1はリアスプロケット70の歯数z2より多く、例えばz1=52、z2=24であり、これら歯数の比であるギヤ比(回転比)Rは、R=52/24である。
フライホイール74は、シートチューブ20fと後輪32との間に設けられ、ワンウェイクラッチ72により軸支されている。ワンウェイクラッチ72及びフライホイール74は透明なカバー75により覆われており、該カバー75によりワンウェイクラッチ72が現実に発生するノッチ音はほぼ遮音される。ワンウェイクラッチ72には静音型のものを用いて現実のノッチ音の発生を抑制してもよい。
ワンウェイクラッチ72は、内部のラチェット機構により、リアスプロケット70の正方向の回転駆動力のみをフライホイール74に伝達する。従って、クランク軸60が逆方向に回転する場合、又はフライホイール74が正方向に回転している最中にクランク軸60の回転が停止した場合には、フライホイール74はクランク軸60と無関係にその時点の回転状態(正方向への回転又は停止)が維持される。
図2及び図3に示すように、速度検出機構部42はホイール回転検出部76と、クランク回転検出部78とを有する。ホイール回転検出部76は、右側におけるシートステー20bとチェーンステー20cとの間にわたって設けられた取付ブラケット80と、該取付ブラケット80に設けられた第1速度ピックアップ82とを有する。第1速度ピックアップ82は、フライホイール74の3本のスポーク74aに近接して対向する位置に配置されており、フライホイール74が回転する際、第1速度ピックアップ82はスポーク74aの存否を示す信号をコントローラ46に供給する。なお、内部機構を視認可能なように、図3においてはカバー75の図示を省略している。
クランク回転検出部78は、クランクチューブ20eに固定された取付ブラケット84と、該取付ブラケット84に設けられた第2速度ピックアップ86と、フロントスプロケット66の内側に固定された被検出ロータ88とを有する。被検出ロータ88は略90°の円弧形状の板であって、第2速度ピックアップ86に近接して対向する位置に配置されている。ペダル64L、64Rを漕ぐことによってクランク軸60及びフロントスプロケット66が回転する際、第2速度ピックアップ86は被検出ロータ88の存否を示す信号をコントローラ46に供給する。第2速度ピックアップ86と第1速度ピックアップ82は互換性がある。
図4に示すように、制動機構部44は、ハンドル28に設けられた2つのブレーキレバー100L及び100Rと、各ブレーキレバー100L及び100Rに接続されたブレーキワイヤ102及び104と、弾性的に回転可能なプーリ106L及び106Rと、回転センサ108L及び108Rと、フライホイール74を制動するドラムブレーキ110(図3参照)とを有する。
ブレーキワイヤ104は、途中の分岐機構111で二股に分岐し、一方のブレーキワイヤ104aはフロントフォーク30R、30Lの方向に延在しており、他方のブレーキワイヤ104bは、ドラムブレーキ110に接続されている。ブレーキワイヤ104の分岐部では、アウターワイヤ112の一部が剥がれてその端部がリング114により支持されるとともに露呈したインナーワイヤ116が圧着、かしめ又は溶接等により2本のインナワイヤが接続されており、一方がブレーキワイヤ104a、他方のブレーキワイヤ104bとなっている。したがって、ブレーキレバー100Rを操作することにより、2本のブレーキワイヤ104a及び104bが同時に引かれることになる。
ブレーキワイヤ104aとブレーキワイヤ102は途中でクロスし、下端部がプーリ106R、106Lに接続されている。ブレーキレバー100L及び100Rが引かれていないとき、プーリ106L及び106Rは凸部118L及び118Rが上方を向くようにスプリング(図示せず)により弾性付勢されている。このとき、ブレーキレバー100L、100Rは、プーリ106L及び106Rにより弾性付勢されて、ハンドル28から離間している。
ブレーキレバー100L、100Rをハンドル28の方向へ引くことによりプーリ106L、106Rは弾性的に回転し、凸部118L及び118Rは下方を向く。プーリ106L、106Rは、凸部118L、118Rがストッパ120L、120Rに当接するまで回転可能である。
プーリ106L、106Rの回転角度は回転センサ108L及び108Rにより検出可能であり、検出された角度信号はそれぞれコントローラ46へ供給される。コントローラ46では、検知されたプーリ106L及び106Rの回転角度信号、換言すればブレーキレバー100L及び100Rの操作の量に応じた信号を主制御部18に供給する。
図3に示すように、ドラムブレーキ110はフライホイール74と同心状に配置されており、アーム110aがブレーキワイヤ104bの端部と接続されている。ドラムブレーキ110は、内部のドラム体がフライホイール74と連結されて一体的に回転する。また、ブレーキレバー100Lを操作してブレーキワイヤ104bが引かれたときにはアーム110aが傾動して、内部のブレーキシューが外径方向に拡開してドラム体と接触して摩擦力を発生し、フライホイール74を制動する。
また、図4に示すように、舵角センサ50はヘッドチューブ20aの下端部に設けられており、ハンドル28を支持するステム28aの回動角度を検出する。マイクロホン52はハンドル28上に設けられており、運転者の顔に近いことから運転者の声が明瞭に入力される。舵角センサ50、マイクロホン52及び後退スイッチ54はコントローラ46に接続されており、舵角の角度信号、音声信号及びスイッチ操作信号を供給する。
図1に戻り、マットスイッチ16は、独立した左スイッチ150Lと右スイッチ150Rとからなり、運転者が降車したときにフレーム20のヘッドチューブ20aを跨いで両足で踏むことができる位置に配置されている。つまり、左足は左スイッチ150Lを踏み、右足は右スイッチ150Rを踏む。左スイッチ150L及び右スイッチ150Rは踏まれることによってオンとなり、該オンの信号をコントローラ46へ供給する。
左スイッチ150L及び右スイッチ150Rは、それぞれ薄いマット状であり、表面ゴムと裏面ゴムに対向するように貼られた格子状の縦電極線及び横電極線と、表面ゴムと裏面ゴムとの間に挿入された柔らかい絶縁材とを有する。縦電極線及び横電極線は2本の出力端子(図示せず)の一方に接続されている。表面ゴムは運転者が足で踏むことに絶縁材を圧縮させながら弾性変形し、縦電極線と横電極線がその交差部で接触する。これにより、2本の出力端子は導通し、オンとなる。また、足を放せば縦電極線と横電極線は離間して、オフとなる。なお、マットスイッチ16は左右独立型ではなく、2つのスイッチが一体型となったマットスイッチを用い、例えば模擬自転車12の左側に配置してもよい。このようなマットスイッチの配置により、運転者が左側に降車した後に、その場で足踏みをすることにより後述する歩行モードにおける押し歩きによる歩行動作が一層現実的に実現される。
図5に示すように、コントローラ46は、入力インタフェース部170と、CPU(Central Processing Unit)172と、第1通信部174とを有する。第1通信部174は主制御部18の第2通信部192と接続されており、主制御部18との間でリアルタイムの通信を行う。入力インタフェース部170は、舵角センサ50、マイクロホン52、第1速度ピックアップ82、第2速度ピックアップ86、回転センサ108L、108R、後退スイッチ54、左スイッチ150L、右スイッチ150Rと接続されており、アナログ信号及びデジタル信号の入力を行う。
CPU172は、上記の電気的構成要素の信号を処理又は変換して第1通信部174を介して主制御部18へ伝達する。例えば、CPU172では、第1速度ピックアップ82と第2速度ピックアップ86から供給された信号の周波数からフライホイール74の回転速度N1及びクランク軸60の回転速度N2を求めて、主制御部18に供給する。
主制御部18は、模擬運転の状況を設定する状況設定部180と、走行状況に応じた演算処理を行う演算処理部(周波数設定部)182と、モニタ14の表示制御を行う表示制御部184と、スピーカ15の音響出力を行う音響ドライバ(模擬音発生部)186と、運転者に対して所定の警告を行う警告部188と、マイクロホン52から入力された音声を認識する音声認識部190と、前記第1通信部174との通信制御を行う第2通信部192と、読み書き可能な記憶部194とを有する。
記憶部194には実際のワンウェイクラッチを回転させて発生するノッチ音を予めデジタル的に録音したノッチ音データ194aが記録されている。
音響ドライバ186は、走行状況に応じて発生する周囲の模擬音(風切り音、タイヤの路面音、クラクション等)を発生させる周囲音生成部186aと、警告や案内をする人の音声を発生させる音声生成部186bと、前記のノッチ音データ194aを読み込み保持するノッチ音生成部186cと、これらの各音の生成部から供給される音データを合成するミキサ186dと、合成により得られた信号を増幅してスピーカ15に供給するアンプ186eとを有する。また、音響ドライバ186は、ノッチ音生成部186cからミキサ186dにノッチ音を供給する間隔を演算処理部182から得られる周波数Tに基づいて設定するノッチ音供給制御部186fを有する。なお、図5においては、音響ドライバ186及びスピーカ15は1組のみ図示しているが、ステレオ形式に対応した構成としてもよい。ノッチ音はミキサ186dを介さずに独立的な別のスピーカから発生させるようにしてもよい。
実際上、主制御部18は制御主体のCPU(Central Processing Unit)、と記憶部としてのRAM(Random Access Memory)、ROM(Read Only Memory)、HD(Hard Disk)等を有しており、図5に示す主制御部18の各機能部は、CPUがHDに記録されたプログラムを読み込み、該プログラムをROM、RAM及び所定のハードウェアと協動しながら実行することにより実現される。
次に、このように構成される自転車シミュレーション装置10を用いて自転車走行のシミュレーションを行う方法について説明する。
図6のステップS1において、マットスイッチ16がオンとなったか否かを確認する。つまり、マットスイッチ16の左スイッチ150L又は右スイッチ150Rの少なくとも一方がオンとなったときにはステップS2へ移り、双方ともオフであるときにはステップS1で待機する。つまり、運転者がマットスイッチ16上に立つと、自動的にステップS2へ移ることとなり、それまでの間はステップS1で待機して所定の省電力モード(例えば、モニタ14をオフにする)にしておくことができる。
ステップS2において、模擬運転を開始し画面14a上に所定の開始画面を表示する。この開始画面では、停止した自転車の画像と該自転車の横に起立した運転者である人物の画像を表示する。また、この画面14aに、「模擬運転を開始します。サドルに座ってペダルを漕いでください。」という文字を画面14aに表示させ、又は同様の言葉の音声をスピーカ15から発する。
このように、マットスイッチ16を踏むことにより模擬運転を自動的に開始することができ、複雑な操作が不要であって違和感なく模擬運転を開始することができる。また、運転者は、画面14a又はスピーカ15から発せられる指示に従って操作を行えばよく、マニュアル等が不要で容易な操作が可能であり、児童でも模擬運転を行うことができる。
ステップS3において、マットスイッチ16がオフとなったか否かを確認する。つまり、左スイッチ150L又は右スイッチ150Rの双方がオフとなったときにはステップS4へ移り、少なくとも一方がオンであるときにはステップS3で待機する。
つまり、運転者がサドル24に跨って、マットスイッチ16から足を離すと、自動的にステップS4へ移って、模擬運転における実際の走行を開始することができる。このとき、前記の開始画面を終了するとともに、自転車の画像と該自転車に乗った人物の画像を表示する。
ステップS4において、所定の走行条件が成立しているか否かを確認する。走行条件が成立しているときにはステップS5の走行モードへ移り、走行条件が不成立であるときにはステップS6へ移る。走行モードは、運転者がサドル24に座りながらペダル64L及び64Rを漕ぐとともにハンドル28を操作して、模擬走行を行うためのモードである。この場合、第1速度ピックアップ82及び舵角センサ50に基づいて得られた模擬走行速度V及び舵角に基づいて変化する情景が画面14a上に表示される(図1参照)。走行モードにおいては、模擬走行速度Vが規定速度以上である場合、又は仮想自転車が仮想道路からはみ出た場合等に所定の警告を発するとよい。また、走行モードにおいては、前記演算処理部182で設定された周波数Tに基づいてノッチ音をスピーカ15から発生させる。このノッチ音を発生させる手順については後述する。
ステップS6において、模擬運転の状況が停止、一時停止又は信号が赤の状況であるか否かを確認する。停止、一時停止又は信号が赤である場合にはステップS7の足つきモードへ移り、それ以外の場合にはステップS8へ移る。足着きモードでは、運転者はブレーキレバー100L、100Rを操作して模擬走行速度Vを0とした後に降車し、マットスイッチ16を踏む。これにより、画面14a上には運転者及び自転車が赤信号で停止している情景が表示される。足着きモードは、模擬運転の状況上、信号が赤から青に変わったとき、又は、左右の安全確認が確実になされたときに解除される。
ステップS8において、模擬運転の状況が、横断歩道等の歩行者優先路又は歩道等の歩行者専用路を通過する場合であるか否かを確認する。歩行者優先路又は歩行者専用路を通過する場合には、ステップS9の歩行モードへ移り、それ以外の場合にはステップS10へ移る。歩行モードは、歩行者専用路等で自転車を押し歩くためのモードであり、例えば、他の歩行者等の迷惑とならないような押し歩きを習得するためのモードである。この場合、運転者は降車するとともに、マットスイッチ16上で足踏みをすることにより歩行状態が再現され、モニタ14の画面14a上に対応する情景が表示される。
ステップS10において、模擬運転の状況が自転車を後退させる状況であるか否かを確認する。後退させる場合にはステップS11の後退モードへ移り、それ以外の場合にはステップS12へ移る。後退モードは、降車した運転者が自転車を押しながら後退するモードである。この場合、運転者は降車するとともに、後退スイッチ54をオン操作しながらマットスイッチ16上で足踏みをすることにより後退状態が再現され、モニタ14の画面14a上に対応する情景が表示される。
ステップS12において、所定の終了条件が成立しているか否かを確認する。終了条件が成立している場合には模擬運転を終了し、条件が不成立である場合にはステップS4へ戻り模擬運転を続行する。また、ステップS5、S7、S9及びS11の処理の終了後においてもステップS4へ戻る。
模擬運転を終了する場合には、前記ステップS1と同様に、マットスイッチ16がオンとなったか否かを確認する。この場合、マットスイッチ16がオンとなったことにより、運転者が模擬自転車12から降車したことを検出することができ、これに基づいて模擬運転を終了し、所定の省電力モード等のスタンバイ状態に戻る。なお、前記ステップS2において、マットスイッチ16がオフとなった後の所定の期間に、模擬自転車12の操作が全くなされない場合には、運転者がマットスイッチ16を一旦踏んだが模擬自転車12に乗ることなく立ち去ったと考えられることから、この場合においてもスタンバイ状態に戻るとよい。
次に、走行モードにおいて演算処理部182で設定された周波数Tに基づいてノッチ音をスピーカ15から発生させる手順について図7〜図11を参照しながら説明する。図7に示す処理は、主制御部18において主に演算処理部182及び音響ドライバ186によって、所定の微小時間毎に繰り返し実行される。
先ず、ステップS101において、第1速度ピックアップ82から得られる信号に基づいてクランク軸60の回転速度N2を求めるとともにギア比Rを乗算してリアスプロケット回転数Pを、P←N2×Rとして求める。
ステップS102(模擬速度設定部)において、所定のサブルーチン処理(図8参照)に基づいて模擬走行速度Vを求める。この処理については後述する。
ステップS103において、模擬走行速度Vに基づいて仮想後輪の回転速度Nxを、Nx←V/A、として求める。ここで、定数Aは想定される実際の自転車の後輪径によって定められる値である。
ステップS104において、回転速度Nxからリアスプロケット回転数Pを減算して差回転数ΔNを、ΔN←Nx−P、として求める。
ステップS105において、差回転数ΔNの符号の正負を判断する。すなわち、ΔN>0である場合にはステップS106へ移り、ΔN≦0である場合にはステップS107へ移る。
ステップS106において、音響ドライバ186は、演算処理部182から供給された周波数Tに基づいてノッチ音生成部186cのノッチ音をスピーカ15から発生させる。周波数Tは、T←ΔN×Kc、として求められる。ここで、定数Kcは、実際の自転車において想定される後輪のワンウェイクラッチの1回転当たりのノッチ音の発生回数であり、例えば、12〜36のいずれか1つの値に設定される。このステップS106の後、ステップS108へ移る。
ワンウェイクラッチ72は、前記のとおりカバー75に覆われていることから、実際に発生するノッチ音は運転者にほとんど聞こえず、このステップS106で発生する周波数Tのノッチ音が聞こえることになる。
ステップS107においては、ノッチ音供給制御部186fに所定の制御信号を供給し、ノッチ音の発生を停止させる。
ステップS108において、模擬走行速度Vに基づいて、表示制御部184の作用下に画面14a上に変化する情景を表示する。表示される情景は模擬走行速度Vに応じて変化させ、模擬走行速度Vが速いほど高速で流れるように表示させる。このステップS108の後、図7に示す今回の処理を終了する。
次に、前記のステップS102における模擬走行速度Vを求める処理について図8を参照しながら説明する。
先ず、ステップS201において、第2速度ピックアップ86から得られる信号に基づいてフライホイール74の回転速度N1を求める。
ステップS202において、模擬走行速度Vを求めるための第1仮パラメータV1を、V1←N1×A+Kb、として求める。ここで、変数Kbは、ブレーキによる減速移動量(m/s)であり、回転センサ108L及び108Rによって求められる。
ステップS203において、第1仮パラメータV1が、V1<0であるか否かを確認し、V1<0であるときにはV1←0と設定し(ステップS204)、負値とならないように制限する。
ステップS205において、前回の模擬走行速度V0及び模擬環境を考慮して、模擬走行速度Vを求めるための第2仮パラメータV2を、V2←V0+K1+K2、として求める。ここで、変数K1は路面傾斜による加減移動量(m/s)であり、変数K2は風等の環境因子による加減移動量(m/s)である。
変数K1及びK2は、状況設定部180から現在の模擬運転の状況に関するデータとして取得、設定する。例えば、平地で無風走行時を基準として0に設定しておき、坂道であるときにはK1←K1+t×sとして設定する。ここで、変数tは坂道の走行時間である。変数sは坂の傾斜度合いに応じて絶対値が大きく設定され、その符号は下り坂のときには正値、登り坂のときには負値として設定される。
また、変数K2は、模擬運転上で想定される風に応じて、無風時には0として設定され、追い風のときには風速に応じて大きい正値として設定され、向かい風のときには風速に応じて絶対値の大きい負値として設定される。
ステップS206において、第2仮パラメータV2が、V2<0であるか否かを確認し、V2<0であるときにはステップS207へ移り、V2≧0であるときにはステップS208へ移る。
ステップS207においては、第2仮パラメータV2に対してブレーキ操作を考慮して、S2←S2+Kbと加算し、ステップS209へ移り、一方ステップS208においては、S2←S2−Kbと減算してステップS210へ移る。
ステップS209において、第2仮パラメータV2が、V2<0であるか否かを確認し、V2<0であるときにはV2←0と設定し(ステップS211)、負値とならないように制限する。V2≧0であるときにはステップS212へ移る。
ステップS210において、第2仮パラメータV2が、V2>0であるか否かを確認し、V2>0であるときにはV2←0と設定し(ステップS211)、正値とならないように制限する。V2≧0であるときにはステップS212へ移る。このステップS210における比較処理は、登坂や向かい風などの後退時を考慮した処理であり、V2>0であるときにV2←0と制限することは、後退要因負荷よりも大きいブレーキ操作によって前進するこをを除外するためである。
ステップS212においては、第1仮パラメータV1と第2仮パラメータV2とを比較し、S1≧S2であるときにはステップS213において、模擬走行速度Vを、V←S1と設定し、S1<S2であるときにはステップS214において、V←S2と設定する。すなわち、V<0の場合、ペダルの動きとの不整合が起きるため、正値のみを考慮する。
さらに、ステップS215において、更新された模擬走行速度Vを所定の記憶部に記憶し、次回処理時におけるステップS205における模擬走行速度V0としての利用に供する。
ところで、所定の模擬走行速度Vにおけるフライホイール74の回転数と、実際の自転車における同じ走行速度での後輪の回転数は必ずしも一致せず、ワンウェイクラッチ72のノッチ音の周波数は運転者にとって不自然に感じられることがある。これに対して、自転車シミュレーション装置10においては、差回転数ΔNに定数Kcを乗算することにより、運転者にとって違和感なく感じられる周波数Tが求められる。
さらに、変数K1、K2は模擬運転の状況に応じて変化する値であることから、該変数K1、K2を用いることによって、周波数Tは、ペダルに加える力以外の外力、つまり坂道における重力や風による風圧までも考慮されることになる。求められた周波数Tはノッチ音供給制御部186fに供給し、ノッチ音の発生処理を有効化する。
なお、図7及び図8に示す処理は走行モードにおいて実行されると述べたが、歩行モードにおいて同様の処理を行ってもよい。歩行モードにおいては、回転速度N1とは無関係にマットスイッチ16を運転者が足で踏む時間間隔を歩行速度とし、該歩行速度を模擬走行速度Vとみなせばよい(模擬速度設定部)。この場合、周波数Tは、T←V×Kc/Aとして求められ(周波数設定部)、音響ドライバ186に供給することにより運転者が押し歩きをしている際に発生する比較的低周波数のノッチ音をスピーカ15から発生させることができる。
次に、ノッチ音を発生させる処理の第1の変形処理について図9を参照しながら説明する。この処理は、前記の図7及び図8に示す処理に置き換え可能である。
図9に示すステップS301〜S307までの処理は、前記ステップS205〜S211までの処理と同様の処理である。
ステップS307の後、ステップS308において、仮想後輪の回転速度Nxを、Nx←V2/A、として求める。
ステップS309において、第2速度ピックアップ86から得られる信号に基づいてフライホイール74の回転速度N1を求める。
ステップS310において、フライホイール74の回転速度N1と仮想後輪の回転速度Nxとを比較し、N1<NxであるときにはステップS311へ移り、N1≧NxであるときにはステップS313へ移る。
ステップS311においては、差回転数ΔNを、ΔN←Nx−N1、として求めるとともに、周波数Tを、T←ΔN×Kcとして求める。この後ステップS312において、前記ステップS106と同様にノッチ音を発生させる。
一方、ステップS313においては、前記ステップS107と同様にノッチ音の発生を停止させる。
このような図9に示す処理によれば、クランク軸60の回転を検出する第2速度ピックアップ86が不要になり、構成が簡便になるとともに、制御の処理負荷が軽減される。
次に、ノッチ音を発生させる処理の第2の変形処理について図10及び図11を参照しながら説明する。この処理は、前記の図7及び図8に示す処理に置き換え可能である。
この第2の変形処理では、第2速度ピックアップ86に相当する2つのセンサ86a、86b(図11参照)を並列して設け、被検出ロータ88を検出する順によって、クランク軸60の正逆回転方向の認識を可能としておき、回転方向を考慮する制御を行う。2つのセンサ86a、86bにより検出される回転方向の符号付き回転速度を前記の符号無し回転速度N2と区別して、回転速度N2Sと表す。
図10におけるステップS401〜S408は、前記ステップS301〜308の処理と同様の処理である。
ステップS408の後、ステップS409において、センサ86a、86bからクランク軸60の回転速度N2Sを求める。
ステップS410において、回転速度N2Sとギア比Rとの乗算値N2S×Rと、回転速度Nxとを比較し、N2S×R<NxであるときにはステップS411へ移り、N2S×R≧NxであるときにはステップS413へ移る。
ステップS411においては、差回転数ΔNを、ΔN←Nx−N2S×R、として求めるとともに、周波数Tを、T←ΔN×Kcとして求める。この後ステップS412において、前記ステップS106と同様にノッチ音を発生させる。
一方、ステップS413においては、前記ステップS107と同様に、ノッチ音の発生を停止させる。
このような図10に示す処理によれば、クランク軸60の回転方向を考慮し、一層適切なノッチ音を発生させることができる。
上述したように、自転車シミュレーション装置10によれば、運転者は、ペダル64L、64Rに対する自らの操作、及び状況設定によって発生する重力や風圧等の外力により模擬自転車12があたかも実際に走行しているような感覚を視覚的に感じることができる。また、このときスピーカ15からは模擬走行速度Vとクランク軸60の回転に応じたノッチ音が発生することから、運転者は視覚的にも実際に走行している臨場感がえられる。すなわち、無風で平地を走行している際には、ペダル64R、64Lの操作速度、すなわちクランク軸60の回転速度N2と、フライホイール74の回転速度N1とに基づいてノッチ音が発生する。このノッチ音の周波数Tは、ワンウェイクラッチ72が発生する実際のノッチ音の周波数とは異なり、定数Kcを考慮することによりフライホイール74の回転速度N1でなく実際の自転車における同条件の後輪回転速度に基づく周波数となり、現実的な音として聞こえる。
この場合、ペダル64R、64Lを漕がなければ高周波で「カチカチカチ」という音が発生し、遅く漕ぐと低周波で「カッチ、カッチ、カッチ」という音となる。ペダル64R、64Lを速く漕ぎ、ΔN=0となったときにはワンウェイクラッチ72の内部でラチェット機構が係合して駆動力がフライホイール74(シミュレーションの想定上は後輪)に有効に伝達される状態となる。この場合は、前記ステップS109及びS110に相当し、実際の自転車の場合と同様にノッチ音の発生が停止し、一層臨場感が高まる。ペダル64L、64Rの操作を停止したままブレーキレバー100Lを操作した場合には、フライホイール74の回転数N1が低下するため、ノッチ音の発生する周波数Tは低下し、この場合も実際の自転車と同様となる。
また、坂道における重力や風圧等の外力により模擬走行速度Vが変化するように想定されている状況においては、変数K1、K2を考慮して周波数Tを求めることによりスピーカ15から発生するノッチ音は想定状況に応じた自然な音となる。したがって、画面14a上に表示される情景の変化速度が模擬走行速度Vに対応して変化することにより視覚的に感じられる速度と、スピーカ15から発生するノッチ音により聴覚的に感じられる速度が一致し、違和感がない。
なお、発生させるノッチ音は、スピーカ15から発生させる電子的手段に限らず、機械的に発生させてもよい。例えば、図12に示すように、主制御部18によって制御されるインバータ300及びモータ302と、該モータ302によって回転するワンウェイクラッチ304とを設け、インバータ300による回転数制御により、モータ302及びワンウェイクラッチ304を所定の速度で回転させるとよい。これにより、スピーカ15から発生させる電子的な手段と同様の効果が得られるとともに、実際のワンウェイクラッチ304が音を発生することにより一層現実的な感覚が得られる。また、音響ドライバ186の構成が簡便となる。この場合、インバータ300及びモータ302はカバー75等の内部に収納し、発生する音を遮音するとよい。この場合、ワンウェイクラッチ304が発生する音は現実のノッチ音であるが、本来の後輪から発生する音ではないことからシミュレーションにおいては模擬音である。
本発明に係る自転車シミュレーション装置は、上述の実施の形態に限らず、本発明の要旨を逸脱することなく、種々の構成を採り得ることはもちろんである。