(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024065128
(43)【公開日】2024-05-15
(54)【発明の名称】釣りシステム、釣りシステムの制御方法及びプログラム
(51)【国際特許分類】
G09B 9/00 20060101AFI20240508BHJP
A63F 13/818 20140101ALI20240508BHJP
G09B 19/24 20060101ALI20240508BHJP
A63F 13/285 20140101ALI20240508BHJP
G06F 3/01 20060101ALI20240508BHJP
G06Q 50/10 20120101ALI20240508BHJP
【FI】
G09B9/00 Z
A63F13/818
G09B19/24 Z
A63F13/285
G06F3/01 560
G06Q50/10
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2021041917
(22)【出願日】2021-03-15
(71)【出願人】
【識別番号】518069863
【氏名又は名称】株式会社Re-al
(74)【代理人】
【識別番号】100127384
【弁理士】
【氏名又は名称】坊野 康博
(72)【発明者】
【氏名】新明 脩平
(72)【発明者】
【氏名】町田 明春
(72)【発明者】
【氏名】永島 晃
【テーマコード(参考)】
5E555
5L049
5L050
【Fターム(参考)】
5E555AA08
5E555AA76
5E555BA20
5E555BB20
5E555BC04
5E555CA06
5E555DA27
5E555DC25
5E555DC83
5E555EA02
5E555EA19
5E555FA00
5L049CC11
5L050CC11
(57)【要約】
【課題】遠隔地あるいは仮想空間で釣りを体験できるシステムにおいて、実際の釣りよりも高い興趣性を実現する。
【解決手段】釣りの操作を入力可能な釣り操作装置と、釣り上げる動作を実行可能な釣り動作実行装置と、前記釣り操作装置と前記釣り動作実行装置との間における力触覚伝達のための制御を実行する制御装置とを含み、前記制御装置は、前記釣り操作装置に入力された操作と前記釣り動作実行装置に入力された外力とにおいて力触覚伝達のための制御を行う力触覚制御手段と、前記力触覚制御手段が制御を行った際の制御パラメータを釣り動作の履歴を表す釣歴データとして記憶する釣歴データ記憶手段と、前記力触覚制御手段は、前記釣歴データ記憶手段に記憶された前記釣歴データに基づいて、前記釣り操作装置における力触覚を制御する再生処理を実行可能である釣りシステム。
【選択図】
図6
【特許請求の範囲】
【請求項1】
釣りの操作を入力可能な釣り操作装置と、釣り上げる動作を実行可能な釣り動作実行装置と、前記釣り操作装置と前記釣り動作実行装置との間における力触覚伝達のための制御を実行する制御装置とを含む釣りシステムであって、
前記制御装置は、
前記釣り操作装置に入力された操作と前記釣り動作実行装置に入力された外力とにおいて力触覚伝達のための制御を行う力触覚制御手段と、
前記力触覚制御手段が制御を行った際の制御パラメータを釣り動作の履歴を表す釣歴データとして記憶する釣歴データ記憶手段と、
前記力触覚制御手段は、前記釣歴データ記憶手段に記憶された前記釣歴データに基づいて、前記釣り操作装置における力触覚を制御する再生処理を実行可能であることを特徴とする釣りシステム。
【請求項2】
前記制御パラメータは、前記釣り操作装置または前記釣り動作実行装置に入力された外力及びアクチュエータの移動子の位置に相当するデータを含み、前記釣り操作装置及び前記釣り動作実行装置間で、作用・反作用の法則を再現した外力のデータと、位置の追従を実現した位置のデータとを含むことを特徴とする請求項1に記載の釣りシステム。
【請求項3】
前記釣り操作装置または前記釣り動作実行装置に入力された外力及びアクチュエータの移動子の位置に相当するデータに対する拡大または縮小、切り取り、貼り付け、繰り返し、早送りまたはスロー再生の少なくともいずれかを実行することを特徴とする請求項1または2に記載の釣りシステム。
【請求項4】
前記釣り操作装置が、前記釣歴データに基づいて、トレーニングのための力触覚を出力し、ユーザの操作に対するアドバイスが報知されることを特徴とする請求項1から3のいずれか1項に記載の釣りシステム。
【請求項5】
前記釣歴データと、当該釣歴データにおいて釣られた魚の種類とを機械学習させた機械学習モデルに基づいて、魚の引きの動作から魚の種類を判別することを特徴とする請求項1から4のいずれか1項に記載の釣りシステム。
【請求項6】
前記釣歴データを分析し、動きの特定帯域の周波数成分または特定のパターンを抽出または強調することを特徴とする請求項1から5のいずれか1項に記載の釣りシステム。
【請求項7】
釣りの操作を入力可能な釣り操作装置と、釣り上げる動作を実行可能な釣り動作実行装置と、前記釣り操作装置と前記釣り動作実行装置との間における力触覚伝達のための制御を実行する制御装置とを含む釣りシステムの制御方法であって、
前記制御装置が、
前記釣り操作装置に入力された操作と前記釣り動作実行装置に入力された外力とにおいて力触覚伝達のための制御を行う力触覚制御ステップと、
前記力触覚制御ステップで制御が行われた際の制御パラメータを釣り動作の履歴を表す釣歴データとして記憶する釣歴データ記憶ステップと、
前記釣歴データ記憶ステップで記憶された前記釣歴データに基づいて、前記釣り操作装置における力触覚を制御する再生ステップと、
を含むことを特徴とする釣りシステムの制御方法。
【請求項8】
釣りの操作を入力可能な釣り操作装置と、釣り上げる動作を実行可能な釣り動作実行装置と、前記釣り操作装置と前記釣り動作実行装置との間における力触覚伝達のための制御を実行する制御装置とを含む釣りシステムを構成するコンピュータに、
前記釣り操作装置に入力された操作と前記釣り動作実行装置に入力された外力とにおいて力触覚伝達のための制御を行う力触覚制御機能と、
前記力触覚制御機能が制御を行った際の制御パラメータを釣り動作の履歴を表す釣歴データとして記憶する釣歴データ記憶機能と、
前記釣歴データ記憶機能によって記憶された前記釣歴データに基づいて、前記釣り操作装置における力触覚を制御する再生機能と、
を実現させることを特徴とする釣りシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、釣りシステム、釣りシステムの制御方法及びプログラムに関する。
【背景技術】
【0002】
近年、遠隔地あるいは仮想空間(ゲーム内の空間等)での釣りを体験可能なシステムが実現されている。
例えば、特許文献1には、遠隔の場におけるモーションスティックの操作を実際の釣りが行われる場に設置された釣り竿に伝達すると共に、釣り竿における釣り糸の張力等をモーションスティックにフィードバックするリアルゲームシステムが記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1に記載された技術を含め、遠隔地あるいは仮想空間での釣りを体験可能な従来の技術においては、実際に釣り竿で釣りを行う場合に比べ、ユーザが感じるリアリティが低下する等、実際の釣りよりも高い興趣性を実現できていない可能性がある。
本発明の課題は、遠隔地あるいは仮想空間で釣りを体験できるシステムにおいて、実際の釣りよりも高い興趣性を実現することである。
【課題を解決するための手段】
【0005】
上記課題を解決するため、本発明の一態様に係る釣りシステムは、
釣りの操作を入力可能な釣り操作装置と、釣り上げる動作を実行可能な釣り動作実行装置と、前記釣り操作装置と前記釣り動作実行装置との間における力触覚伝達のための制御を実行する制御装置とを含む釣りシステムであって、
前記制御装置は、
前記釣り操作装置に入力された操作と前記釣り動作実行装置に入力された外力とにおいて力触覚伝達のための制御を行う力触覚制御手段と、
前記力触覚制御手段が制御を行った際の制御パラメータを釣り動作の履歴を表す釣歴データとして記憶する釣歴データ記憶手段と、
前記力触覚制御手段は、前記釣歴データ記憶手段に記憶された前記釣歴データに基づいて、前記釣り操作装置における力触覚を制御する再生処理を実行可能であることを特徴とする。
【発明の効果】
【0006】
本発明によれば、遠隔地あるいは仮想空間で釣りを体験できるシステムにおいて、実際の釣りよりも高い興趣性を実現することができる。
【図面の簡単な説明】
【0007】
【
図1】本発明の一実施形態に係る釣りシステム1の構成を示す模式図である。
【
図2】制御装置30で実行される力触覚の伝達制御の基本的原理の概念を示す模式図である。
【
図3】機能別力・速度割当変換ブロックFTにおいて力触覚伝達機能が定義された場合の制御の概念を示す模式図である。
【
図4】釣りシステム1における制御系統のハードウェア構成を示すブロック図である。
【
図5】制御装置30を構成する情報処理装置のハードウェア構成を示す図である。
【
図6】釣りシステム1の機能的構成を示すブロック図である。
【
図7】釣りシステム1が実行するリアルタイム処理の流れを示すフローチャートである。
【
図8】釣りシステム1が実行する再生処理の流れを示すフローチャートである。
【
図9】釣りシステム1が実行する分析処理の流れを示すフローチャートである。
【
図10】釣りシステム1が実行する編集処理の流れを示すフローチャートである。
【
図11】釣りシステム1が実行するトレーニング処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0008】
以下、本発明の実施形態について、図面を参照して説明する。
【0009】
図1は、本発明の一実施形態に係る釣りシステム1の構成を示す模式図である。
図1に示すように、釣りシステム1は、釣り動作実行装置10と、釣り操作装置20と、制御装置30と、カメラCと、ディスプレイDと、を含んで構成され、制御装置30と、釣り動作実行装置10、釣り操作装置20、カメラC及びディスプレイDとは、インターネット等のネットワーク40を介して通信可能に構成されている。
【0010】
本実施形態における釣りシステム1は、遠隔地に設置された釣り動作実行装置10と、ユーザが操作する釣り操作装置20との間で、力触覚の伝達(バイラテラル制御)を行いながら、リアルタイムに遠隔的な釣りを行ったり、釣り操作装置20単体において、過去の釣りにおける力触覚を表すデータまたは編集等により生成された釣りの力触覚を表すデータに基づいて、釣りの疑似体験を行ったりすることができるシステムである。また、釣りシステム1においては、過去の釣りにおける力触覚を表すデータを分析し、属性毎に分類したり、過去の釣りにおける力触覚を表すデータをそのまま再現したり、過去の釣りにおける力触覚を表すデータを編集したデータを再現したりすることができる。なお、過去の釣りにおける力触覚を表すデータ及びこれに関連するデータ(釣り場の画像及び音、天候、気温、湿度、日時、月齢等の各種データ)を総称して、適宜「釣歴のデータ」と称する。釣歴のデータには、釣り上げる魚の逃げようとする運動の成分と、魚の運動を押さえ込もうとする釣り竿の操作者の運動の成分が含まれる。これらの運動成分は、主な周波数帯域の相違等、それぞれの運動に特徴的な性質を有している。さらに、魚の運動による成分は、魚の種類にも依存する。したがって、魚の逃げようとする運動に主眼を置いて特定帯域の周波数成分やパターンを抽出し、その成分を強調する等の編集を施すことで、具体的な魚をターゲットとした、より臨場感のある釣りの体感を実現することが可能となる。
【0011】
図1において、釣り動作実行装置10は、釣り竿によって釣りの動作を実際に行う装置であり、釣り操作装置20を操作するユーザのアバターとして機能する。具体的には、釣り動作実行装置10は、釣り竿11と、釣り竿設置部12と、支持部13と、リール14と、を備え、制御装置30の指示に従って、釣り竿設置部12を鉛直方向及び水平方向に回転させると共に、リール14により釣り糸を巻き取ったり、繰り出したりする。
【0012】
釣り操作装置20は、ユーザが釣りのための操作(釣り竿の上げ下げ、リールによる釣り糸の巻取り及び繰り出し等)を行う装置であり、釣り竿を模したコントローラとして構成される。具体的には、釣り操作装置20は、グリップ部21と、支持部22と、リール23と、を備え、制御装置30の指示に従って、ユーザがグリップ部21を鉛直方向及び水平方向に回転させる際に、反力を付与する。
【0013】
これら釣り動作実行装置10と釣り操作装置20とは、制御装置30の制御により、釣り操作装置20をマスタ装置、釣り動作実行装置10をスレーブ装置として、バイラテラル制御により、力触覚の伝達を行うことが可能である。
なお、釣り操作装置20は、釣りシステム1が過去の釣歴のデータを再生する場合には、釣り動作実行装置10をスレーブ装置として動作することなく、釣り操作装置20単体において力触覚の制御が行われる。
【0014】
制御装置30は、釣り動作実行装置10と釣り操作装置20とにおける力触覚の伝達を制御し、リアルタイムでの遠隔的な釣りのための制御を実行する。また、制御装置30は、リアルタイムでの遠隔的な釣りの動作における制御パラメータを時系列に保存し、釣歴のデータとして記録したり、釣歴のデータに基づいて、釣りの内容(釣りの動作や釣られた獲物等)を分析したり、釣歴のデータの編集を受け付け、仮想的な釣歴のデータを生成したりする。さらに、制御装置30は、過去の釣歴のデータを用いて、釣りの動作を再現する制御あるいは仮想的な釣りの動作を実現する制御等、釣り操作装置20単体における力触覚の制御を実行する。
【0015】
具体的には、制御装置30は、リアルタイムでの遠隔的な釣りのための制御を実行するリアルタイム処理と、リアルタイムの制御パラメータまたは釣歴のデータから釣りの内容(釣りの動作や獲物の種類等)を分析する分析処理と、リアルタイムの制御パラメータまたは釣歴のデータを編集(切り貼り、改変、生成等)する編集処理と、釣歴のデータ(編集されたデータあるいはオリジナルのデータ)を時系列に再生し、釣り操作装置20において釣りの動作の力触覚を出力する再生処理と、釣りのスキルを向上させるためのトレーニング処理を含む各種処理を実行する。なお、制御パラメータとしては、入力される位置、速度、加速度、力の他、後述する座標変換後の速度の領域及び力の領域のパラメータや、アクチュエータへの入力(指令値)等、力触覚を特定可能な種々の段階におけるパラメータを含めることができる。
【0016】
図2は、制御装置30で実行される力触覚の伝達制御の基本的原理の概念を示す模式図である。
図2に示す基本的原理は、人間の身体的行為を実現するために利用可能なアクチュエータの制御則を表しており、アクチュエータの現在位置を入力として、速度あるいは力の少なくとも一方の領域における演算を行うことにより、アクチュエータの動作を決定するものである。
即ち、本発明の基本的原理は、制御対象システムSと、機能別力・速度割当変換ブロックFTと、理想力源ブロックFCあるいは理想速度源ブロックPCの少なくとも1つと、逆変換ブロックIFTとを含む制御則として表される。
【0017】
制御対象システムSは、アクチュエータを備える釣り動作実行装置10あるいは釣り操作装置20であり、加速度等に基づいてアクチュエータの制御を行う。ここで、加速度、速度及び位置は、微積分によって相互に換算可能な物理量であるため、加速度、速度及び位置のいずれを用いて制御することとしてもよい。本実施形態においては、主として、位置から算出される速度を用いて制御則を表現するものとする。
【0018】
機能別力・速度割当変換ブロックFTは、制御対象システムSの機能に応じて設定される速度及び力の領域への制御エネルギーの変換を定義するブロックである。具体的には、機能別力・速度割当変換ブロックFTでは、制御対象システムSの機能の基準となる値(基準値)と、アクチュエータの現在位置とを入力とする座標変換が定義されている。この座標変換は、一般に、基準値及び現在速度を要素とする入力ベクトルを速度の制御目標値を算出するための速度からなる出力ベクトルに変換すると共に、基準値及び現在の力を要素とする入力ベクトルを力の制御目標値を算出するための力からなる出力ベクトルに変換するものである。具体的には、機能別力・速度割当変換ブロックFTにおける座標変換は、次式(1)及び(2)のように一般化して表される。
【0019】
【0020】
ただし、式(1)において、x’1~x’n(nは1以上の整数)は速度の状態値を導出するための速度ベクトルであり、x’a~x’m(mは1以上の整数)は、基準値及びアクチュエータの作用に基づく速度(アクチュエータの移動子の速度またはアクチュエータが移動させる対象物の速度)を要素とするベクトル、h1a~hnmは機能を表す変換行列の要素である。また、式(2)において、f’’1~f’’n(nは1以上の整数)は力の状態値を導出するための力ベクトルであり、f’’a~f’’m(mは1以上の整数)は、基準値及びアクチュエータの作用に基づく力(アクチュエータの移動子の力またはアクチュエータが移動させる対象物の力)を要素とするベクトルである。
【0021】
機能別力・速度割当変換ブロックFTにおける座標変換を、実現する機能に応じて設定することにより、各種行為を実現したり、スケーリングを伴う行為の再現を行ったりすることができる。
即ち、本発明の基本的原理では、機能別力・速度割当変換ブロックFTにおいて、アクチュエータ単体の変数(実空間上の変数)を、実現する機能を表現するシステム全体の変数群(仮想空間上の変数)に“変換”し、速度の制御エネルギーと力の制御エネルギーとに制御エネルギーを割り当てる。即ち、本発明の基本的原理では、速度と力とが互いに関連する座標空間から、速度と力とが互いに独立した座標空間に変換した上で、速度と及び力の制御に関する演算を行う。そのため、アクチュエータ単体の変数(実空間上の変数)のまま制御を行う場合と比較して、速度の制御エネルギーと力の制御エネルギーとを独立に与えることが可能となっている。
【0022】
理想力源ブロックFCは、機能別力・速度割当変換ブロックFTによって定義された座標変換に従って、力の領域における演算を行うブロックである。理想力源ブロックFCにおいては、機能別力・速度割当変換ブロックFTによって定義された座標変換に基づく演算を行う際の力に関する目標値が設定されている。この目標値は、実現される機能に応じて固定値または可変値として設定される。例えば、基準値が示す機能と同様の機能を実現する場合には、目標値としてゼロを設定したり、スケーリングを行う場合には、再現する機能を示す情報を拡大・縮小した値を設定したりできる。
【0023】
理想速度源ブロックPCは、機能別力・速度割当変換ブロックFTによって定義された座標変換に従って、速度の領域における演算を行うブロックである。理想速度源ブロックPCにおいては、機能別力・速度割当変換ブロックFTによって定義された座標変換に基づく演算を行う際の速度に関する目標値が設定されている。この目標値は、実現される機能に応じて固定値または可変値として設定される。例えば、基準値が示す機能と同様の機能を実現する場合には、目標値としてゼロを設定したり、スケーリングを行う場合には、再現する機能を示す情報を拡大・縮小した値を設定したりできる。
【0024】
逆変換ブロックIFTは、速度及び力の領域の値を制御対象システムSへの入力の領域の値(例えば電圧値または電流値等)に変換するブロックである。
このような基本的原理により、制御対象システムSのアクチュエータにおける位置の情報が機能別力・速度割当変換ブロックFTに入力されると、位置の情報に基づいて得られる速度及び力の情報を用いて、機能別力・速度割当変換ブロックFTにおいて、機能に応じた位置及び力の領域それぞれの制御則が適用される。そして、理想力源ブロックFCにおいて、機能に応じた力の演算が行われ、理想速度源ブロックPCにおいて、機能に応じた速度の演算が行われ、力及び速度それぞれに制御エネルギーが分配される。
【0025】
理想力源ブロックFC及び理想速度源ブロックPCにおける演算結果は、制御対象システムSの制御目標を示す情報となり、これらの演算結果が逆変換ブロックIFTにおいてアクチュエータの入力値とされて、制御対象システムSに入力される。
その結果、制御対象システムSのアクチュエータは、機能別力・速度割当変換ブロックFTによって定義された機能に従う動作を実行し、目的とする装置の動作が実現される。
【0026】
(定義される機能例)
次に、本実施形態において機能別力・速度割当変換ブロックFTによって定義される機能の具体例について説明する。
機能別力・速度割当変換ブロックFTでは、入力されたアクチュエータの現在位置に基づいて得られる速度及び力を対象とした座標変換(実現する機能に対応した実空間から仮想空間への変換)が定義されている。
【0027】
機能別力・速度割当変換ブロックFTでは、このような現在位置から速度及び力と、機能の基準値としての速度及び力とを入力として、速度及び力それぞれについての制御則が加速度次元において適用される。
即ち、アクチュエータにおける力は質量と加速度との積で表され、アクチュエータにおける速度(移動子等の速度)は加速度の積分によって表される。そのため、加速度の領域を介して、速度(または位置)及び力を制御することで、アクチュエータ(移動子等)の現在位置を取得して、目的とする機能(バイラテラル制御等)を実現することができる。
【0028】
以下、本発明で用いる機能の具体例を説明する。
(力触覚伝達機能)
図3は、機能別力・速度割当変換ブロックFTにおいて力触覚伝達機能が定義された場合の制御の概念を示す模式図である。
図3に示すように、機能別力・速度割当変換ブロックFTによって定義される機能として、マスタ装置の動作をスレーブ装置に伝達すると共に、スレーブ装置に対する物体からの反力の入力をマスタ装置にフィードバックする機能(バイラテラル制御機能)を実現することができる。
この場合、機能別力・速度割当変換ブロックFTにおける座標変換は、次式(3)及び(4)として表される。
【0029】
【0030】
ただし、式(3)において、x’pは速度の状態値を導出するための速度、x’fは力の状態値に関する速度である。また、x’mは基準値(マスタ装置からの入力)の速度(マスタ装置の現在位置の微分値)、x’sはスレーブ装置の現在の速度(現在位置の微分値)である。また、式(4)において、fpは速度の状態値に関する力、ffは力の状態値を導出するための力である。また、fmは基準値(マスタ装置からの入力)の力、fsはスレーブ装置の現在の力である。
【0031】
(ハードウェア構成)
次に、釣りシステム1における制御系統のハードウェア構成について説明する。
図4は、釣りシステム1における制御系統のハードウェア構成を示すブロック図である。
図4に示すように、釣りシステム1は、制御系統のハードウェア構成として、PC(Personal Computer)あるいはサーバコンピュータ等の情報処理装置によって構成される制御装置30と、釣り動作実行装置10の制御ユニット101と、通信ユニット102と、リール駆動用アクチュエータ103と、鉛直動作用アクチュエータ104と、水平動作用アクチュエータ105と、ロータリーエンコーダ106~108と、ドライバ109~111と、釣り操作装置20の制御ユニット201と、通信ユニット202と、リール駆動用アクチュエータ203と、鉛直動作用アクチュエータ204と、水平動作用アクチュエータ205と、ロータリーエンコーダ206~208と、ドライバ209~211と、カメラCと、ディスプレイDとを備えている。
【0032】
釣り動作実行装置10の制御ユニット101は、プロセッサ及びメモリ等を備えるマイクロコンピュータを備え、釣り動作実行装置10の動作を制御する。例えば、制御ユニット101は、制御装置30から送信される制御パラメータに従って、釣り動作実行装置10のリール駆動用アクチュエータ103、鉛直動作用アクチュエータ104及び水平動作用アクチュエータ105の駆動を制御する。
通信ユニット102は、ネットワーク40を介して釣り動作実行装置10が他の装置との間で行う通信を制御する。
【0033】
リール駆動用アクチュエータ103は、制御ユニット101の指示に従って、リール14を回転させ、釣り糸を巻き取ったり、繰り出したりする。
鉛直動作用アクチュエータ104は、釣り竿11及び釣り竿設置部12を鉛直方向に回転させ、釣り竿11を上下に移動させる。
水平動作用アクチュエータ105は、釣り竿11及び釣り竿設置部12を水平方向に回転させ、釣り竿11を左右に移動させる。
【0034】
ロータリーエンコーダ106は、リール駆動用アクチュエータ103の移動子の位置(回転角度)を検出する。
ロータリーエンコーダ107は、鉛直動作用アクチュエータ104の移動子の位置(回転角度)を検出する。
ロータリーエンコーダ108は、水平動作用アクチュエータ105の移動子の位置(回転角度)を検出する。
【0035】
ドライバ109は、制御ユニット101の指示に従って、リール駆動用アクチュエータ103に駆動電流を出力する。
ドライバ110は、制御ユニット101の指示に従って、鉛直動作用アクチュエータ104に駆動電流を出力する。
ドライバ111は、制御ユニット101の指示に従って、水平動作用アクチュエータ105に駆動電流を出力する。
【0036】
釣り操作装置20の制御ユニット201は、プロセッサ及びメモリ等を備えるマイクロコンピュータを備え、釣り操作装置20の動作を制御する。例えば、制御ユニット201は、制御装置30から送信される制御パラメータに従って、釣り操作装置20のリール駆動用アクチュエータ203、鉛直動作用アクチュエータ204及び水平動作用アクチュエータ205の駆動を制御する。
通信ユニット202は、ネットワーク40を介して釣り操作装置20が他の装置との間で行う通信を制御する。
【0037】
リール駆動用アクチュエータ203は、制御ユニット201の指示に従って、リール23を回転させ、ユーザの操作に対する反力を付与する。
鉛直動作用アクチュエータ204は、グリップ部21を鉛直方向に回転させ、ユーザの操作に対する反力を付与する。
水平動作用アクチュエータ105は、グリップ部21を水平方向に回転させ、ユーザの操作に対する反力を付与する。
【0038】
ロータリーエンコーダ206は、リール駆動用アクチュエータ203の移動子の位置(回転角度)を検出する。
ロータリーエンコーダ207は、鉛直動作用アクチュエータ204の移動子の位置(回転角度)を検出する。
ロータリーエンコーダ208は、水平動作用アクチュエータ205の移動子の位置(回転角度)を検出する。
【0039】
ドライバ209は、制御ユニット201の指示に従って、リール駆動用アクチュエータ103に駆動電流を出力する。
ドライバ210は、制御ユニット201の指示に従って、鉛直動作用アクチュエータ204に駆動電流を出力する。
ドライバ211は、制御ユニット201の指示に従って、水平動作用アクチュエータ205に駆動電流を出力する。
【0040】
カメラCは、釣り動作実行装置10と共に釣り場に設置され、釣り場の画像を撮影し、制御装置30に撮影した釣り場の画像を送信する。
ディスプレイDは、釣り操作装置20と共に、ユーザが画面を視認できる場所に設置され、制御装置30によって表示を指示された画像(カメラCによって撮影された釣り場の画像または記録されている釣り場の画像)を表示する。
【0041】
図5は、制御装置30を構成する情報処理装置のハードウェア構成を示す図である。
図5に示すように、制御装置30は、CPU(Central Processing Unit)811と、ROM(Read Only Memory)812と、RAM(Random Access Memory)813と、バス814と、入力部815と、出力部816と、記憶部817と、通信部318と、ドライブ319と、を備えている。
【0042】
CPU811は、ROM812に記録されているプログラム、または、記憶部817からRAM813にロードされたプログラムに従って各種の処理を実行する。
RAM813には、CPU811が各種の処理を実行する上において必要なデータ等も適宜記憶される。
【0043】
CPU811、ROM812及びRAM813は、バス814を介して相互に接続されている。バス814には、入力部815、出力部816、記憶部817、通信部318及びドライブ319が接続されている。
【0044】
入力部815は、各種ボタン等で構成され、指示操作に応じて各種情報を入力する。
出力部816は、ディスプレイやスピーカ等で構成され、画像や音声を出力する。
なお、制御装置300がスマートフォンやタブレット端末として構成される場合には、入力部815と出力部816のディスプレイとを重ねて配置し、タッチパネルを構成することとしてもよい。
記憶部817は、ハードディスクあるいはDRAM(Dynamic Random Access Memory)等で構成され、各サーバで管理される各種データを記憶する。
通信部318は、ネットワーク40を介して制御装置30が他の装置との間で行う通信を制御する。
【0045】
ドライブ319には、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリ等よりなる、リムーバブルメディア831が適宜装着される。ドライブ319によってリムーバブルメディア831から読み出されたプログラムは、必要に応じて記憶部817にインストールされる。
【0046】
[機能的構成]
次に、釣りシステム1の機能的構成について説明する。
図6は、釣りシステム1の機能的構成を示すブロック図である。
図6に示すように、釣りシステム1は、制御装置30が各種処理を実行することにより、CPU811において、UI制御部301と、センサ情報取得部302と、画像取得部303と、力触覚制御部304と、釣歴記録部305と、釣歴データ分析部306と、釣歴データ編集部307と、トレーニング制御部308と、が機能する。また、記憶部817には、釣歴データベース(釣歴DB)371が形成される。
【0047】
釣歴DB371には、釣歴のデータ(過去の釣りにおける力触覚を表すデータ及びこれに関連するデータ(釣り場の画像及び音、天候、気温、湿度、日時、月齢等の各種データ))が、釣りを行ったユーザと対応付けて記憶される。また、本実施形態において、釣歴DB371には、釣歴のデータを編集することによって生成された疑似的な釣歴のデータが併せて記憶される。ただし、編集されていない釣歴のデータと、編集によって生成された疑似的な釣歴のデータとを区別して、異なるデータベースに記憶することとしてもよい。
【0048】
UI制御部301は、釣りシステム1で実行される処理において、各種情報を入出力する各種入出力画面(以下、「UI画面」と称する。)の表示を制御する。例えば、UI制御部301は、リアルタイム処理あるいは再生処理において、ディスプレイDの画面表示を制御したり、分析処理、編集処理あるいはトレーニング処理において出力部816のディスプレイの画面表示を制御したりする。また、UI制御部301は、UI画面に対して、ユーザが行う各種操作を受け付ける。例えば、UI制御部301は、リアルタイム処理及び再生処理において、釣りの内容に対する条件の設定を受け付ける。具体的には、UI制御部301は、リアルタイム処理において、釣り動作実行装置10と釣り操作装置20との間で、単純なバイラテラル制御を実行するモード(ノーマルモード)とするか、制御パラメータに変更を加えて、釣りの特徴を付加するモード(モディファイドモード)とするかの条件設定を受け付ける。同様に、UI制御部301は、再生モードにおいて、釣歴のデータに対して加える変更の条件(変更を加えるか否か、加える場合の変更内容)を設定する。
【0049】
センサ情報取得部302は、釣り動作実行装置10及び釣り操作装置20に設置された各種センサによって検出された情報(センサ情報)を取得する。例えば、センサ情報取得部302は、ロータリーエンコーダ106~108,206~208によって検出された各アクチュエータの移動子の位置(回転角度)を示す情報を取得する。また、センサ情報取得部302は、取得したセンサ情報を釣歴のデータの一部として、釣歴DB371に記憶する。
画像取得部303は、カメラCによって撮影された釣り場の画像を取得し、釣歴のデータの一部として、釣歴DB371に記憶する。
【0050】
力触覚制御部304は、
図2及び
図3に示す制御アルゴリズムに従って、釣り動作実行装置10及び釣り操作装置20における力触覚の出力を制御する。例えば、力触覚制御部304は、リアルタイム処理においては、釣り動作実行装置10及び釣り操作装置20の対応する動作のためのアクチュエータ間で力触覚を伝達する制御を実行する。また、力触覚制御部304は、再生処理及びトレーニング処理においては、釣歴DB371に記憶された釣歴のデータに基づいて、釣り操作装置20のリール駆動用アクチュエータ203、鉛直動作用アクチュエータ204及び水平動作用アクチュエータ205における釣りの動作を再現する制御を実行する。
【0051】
釣歴記録部305は、リアルタイム処理において力触覚制御部304が釣り動作実行装置10及び釣り操作装置20を制御した場合の一連の制御パラメータを、時系列に釣歴DB371に記憶する。
釣歴データ分析部306は、リアルタイム処理において、力触覚制御部304が釣り動作実行装置10及び釣り操作装置20を制御する場合の制御パラメータに基づいて、釣りの内容(釣りの動作や獲物の種類等)を分析する。また、釣歴データ分析部306は、分析処理において、釣歴DB371に記憶された釣歴のデータに基づいて、釣りの内容(釣りの動作や獲物の種類等)を分析する。例えば、釣歴データ分析部306は、魚の引きのパターン及び強さ等の物理量に基づいて、魚種及び獲物の大きさ等の属性を分析する。また、釣歴データ分析部306は、ユーザの釣り竿の操作の仕方(移動のさせ方及び力の加え方等)に基づいて、ユーザの釣りのスキルを分析したり、より適切な釣り竿の操作方法を提案したりする。
【0052】
ここで、釣歴データ分析部306は、釣りの内容を分析する際に、AI(Artificial Intelligence)を用いることができる。例えば、魚の引きのパターン及び強さ等の物理量と、実際に釣れた魚の種類及び大きさとを機械学習させた機械学習モデルを用意しておき、リアルタイム処理または分析処理において、魚の引きのパターン及び強さに機械学習モデルを適用することで、魚の種類及び大きさを判別することができる。
【0053】
これにより、釣りの初心者であっても、魚がかかった直後あるいは所定時間後に、AIが魚種を判別するため、魚がかかっている際に、AIが釣り方を実時間でアシストすること等が可能となる。例えば、かかった魚が鯛であると判別された場合、釣り初心者に釣り竿を緩めることを教示したり、かかった魚がシマアジであると判別された場合、釣り糸のテンションを横方向に保つこと等を教示したりすることができる。さらに、AIを用いることで、魚の引きと、根掛かりやボトムクロール(ワーム等のルアーを水の底を這わせて釣る釣り方)の違い等も判別することができる。
【0054】
また、近年の釣り具は千差万別であり、一種類の魚種を釣るに当たっても、玄人の釣り人は釣竿の硬さに配慮している。
本実施形態の釣りシステム1では、仮想の釣竿の硬さを調整できるため、釣竿の硬さの違いによるシミュレートが可能である。
即ち、本実施形態の釣りシステム1では、仮想空間で釣竿の慣性、粘性係数、弾性係数を自在に与え、その感触を確認することができる。そのため、自分好みの釣竿を、実物を作製することなく疑似的に体感することができ、様々なパターンの釣り竿を試すことが容易となる。このように自分好みの釣り竿の特性(慣性、粘性係数、弾性係数等)が確認できた場合、その特性を基に実際の釣竿を製作すればよい。
【0055】
また、リールにはドラグ機能(魚が強く引いた場合には糸を逃す機構)が備えられている。ドラグ機能の特性は、一般に感覚に頼って設定されており、数値化されいないのが現状である。本実施形態の釣りシステム1では、AIによる魚種判別機能と組み合わせることで、魚種によってドラグの設定数値を決定することも可能となる。
なお、本実施形態の釣りシステム1においては、釣り操作装置20の設定を種々変更することが可能であるため、リールの巻き加減についても種々の特性を実現することができ、例えば、カリカリ音を出すパターン及び出さないパターンを選択することができる。
【0056】
釣歴データ編集部307は、編集処理において、UI制御部301が表示するUI画面を介して、釣歴のデータに対するカット、結合及び編集等の操作を受け付ける。
釣歴のデータがカットされる場合、例えば、獲物がかかるまでの変化の小さい釣歴のデータを削除したり、釣り竿に過度な力が加わったタイミングの釣歴のデータを削除したりすることができる。
また、釣歴のデータが結合される場合、例えば、感触が良かった引きの動きの釣歴のデータと、釣り上げた際の手応えが印象的であった釣り上げの動きの釣歴のデータとを結合して、ユーザの好みに適合する疑似的な釣歴のデータを生成することができる。
【0057】
また、釣歴のデータが編集される場合、例えば、魚の引きにおける力・速度・位置・加速度・動きの特定帯域の周波数等の物理量をスケーリング(拡大または縮小)し、実際に釣り上げた獲物の属性を改変すること等ができる。一例として、小魚を釣り上げた際の釣歴のデータにおいて、引きの強さ、速度及び位置を拡大すると共に、動きの特定帯域の周波数を縮小して、大型魚を釣り上げた際のデータを疑似的に生成することができる。反対に、大型魚を釣り上げた際の釣歴のデータにおいて、引きの強さ、速度及び位置を縮小すると共に、動きの特定帯域の周波数を拡大して、より小さい魚を釣り上げた際のデータを疑似的に生成することができる。
【0058】
ここで、一般に、針にかかった後に鯛は真下に逃げるのに対して、シマアジは横に逃げる等、魚種によって動きの特徴があることが知られている。また、当たりの良さを重視する釣りとしては、ヘラブナ釣りが好まれることも知られている。さらに、ダイナミックな釣りが楽しめる海釣りに対して、渓流では繊細な釣りを楽しむことができる。釣歴のデータが編集される場合、これらの特徴をユーザの嗜好に合わせてミックスする等して、多様な魚の引きの特徴を持った仮想魚を作成することも可能である。
仮想魚に実際の魚の引きの特徴を移植する際の具体的な手法としては、例えば、高周波成分のみ移植し、低周波成分は仮想魚のパターン(生成されたもの等)を使用するといったことが可能である。
【0059】
トレーニング制御部308は、トレーニング処理において、お手本とする釣りの動作を表す釣歴のデータを再生しながら、ユーザの操作における速度及び力と、再生されている釣歴のデータにおけるマスタ装置(釣り操作装置20)の速度及び力との差分を算出する。
また、トレーニング制御部308は、算出した差分が減少する方向(過不足分を調節する方向)にユーザが釣り操作装置20を操作するためのアドバイスを、ディスプレイDにおける画面表示あるいは音声出力等により、ユーザに報知する。例えば、トレーニング制御部308は、釣り竿の位置について、「もっと引いて」、「保持して」、「もっと緩めて」等のメッセージをユーザに報知する。また、トレーニング制御部308は、釣り竿に加える力について、「力が弱い」、「ちょうど良い」、「力が強い」等のメッセージをユーザに報知する。
【0060】
一例として、鯛は真下に潜る習性上、潜る瞬間に竿を引く力を緩めなければ糸を切られてしまう。また、シマアジは横に走る習性上、針が外れないようにある程度の張りを糸に与え続けなければならない。ヘラブナは当たりのあった瞬間に合わせが必要となり、鯉も類似した釣り方になると考えられる。トレーニング制御部308は、これらの魚種に合わせた釣り方をユーザに報知することができる。
【0061】
また、ルアーフィッシングでは、ルアーをリールで巻き取る速さによって、ルアーの水深が変わったり、ロッドの扱いによってルアーをよりリアルな餌に見えるように演出したりする。これらの動作にも繊細な力加減が必要であり、かつ、水中で繰り広げられる魚との駆け引きは、力触覚のみで操作していると言える。ワーム等のルアーを水の底を這わせて釣るボトムクロールという釣り方は、力触覚を頼りにワームを這わせることとなる。トレーニング制御部308は、このようなルアーフィッシングの技術を操作者に教示することもできるため、本実施形態の釣りシステム1は、ルアーフィッシングにも大いに有用なものである。
【0062】
また、海釣りで堤防や船釣りでしばしば行われるのが、重りを海底まで沈めて、着地したら海底より数メートル上げて、海底付近の魚を狙い、待つという釣り方である。このとき、海底に重りが落ちたことを確認する必要があるが、この確認は、専ら力触覚に頼ることになる。海底に重りが落ちたことの感覚は、これまで経験で学ぶしかなかったが、本実施形態の釣りシステム1では、海底に重りが落ちた際の実際の制御パラメータを用いて、前もって、トレーニングすることも可能となる。
【0063】
トレーニング処理が実行されることにより、これらの微妙な力加減、特徴を実際の魚の引きに合わせながら学ぶことが可能となる。
なお、再生処理及びトレーニング処理が実行される場合、釣歴のデータが示す釣り操作装置20に加えられた操作と、実際にユーザが入力する操作とが異なるため、力触覚制御部304は、釣歴のデータにおける制御パラメータとユーザが入力する操作との差を補正して、力触覚の再生を行うことができる。
これにより、釣歴のデータが示す釣り操作装置20に加えられた操作と、実際にユーザが入力する操作とが異なっても、制御上の不整合を抑制しながら、力触覚の再生を行うことができる。
【0064】
(動作)
次に、釣りシステム1が実行する処理について説明する。
(リアルタイム処理)
図7は、釣りシステム1が実行するリアルタイム処理の流れを示すフローチャートである。
リアルタイム処理は、制御装置30において、リアルタイム処理の実行が指示されることに対応して開始される。
【0065】
ステップS1において、UI制御部301は、ユーザの操作に応じて、制御パラメータに加える条件(ノーマルモードまたはモディファイドモード)を設定する。
ステップS2において、センサ情報取得部302は、釣り動作実行装置10及び釣り操作装置20に設置された各種センサによって検出された情報(センサ情報)を取得する。
ステップS3において、画像取得部303は、カメラCによって撮影された釣り場の画像を取得する。取得された画像は、釣歴のデータの一部として、釣歴DB371に記憶される。
【0066】
ステップS4において、力触覚制御部304は、モディファイドモードに設定されているか否かの判定を行う。
モディファイドモードに設定されていない場合、ステップS4においてNOと判定されて、処理はステップS6に移行する。
一方、モディファイドモードに設定されている場合、ステップS4においてYESと判定されて、処理はステップS5に移行する。
ステップS5において、力触覚制御部304は、釣り動作実行装置10において検出されたセンサ情報に対し、設定された条件に応じた変更を加え、座標変換の基準値とする。
【0067】
ステップS6において、力触覚制御部304は、センサ情報及び基準値を入力として、座標変換(式(3)、(4)参照)を行う。
ステップS7において、力触覚制御部304は、速度の領域及び力の領域での目標値に合わせるための制御量を算出する。
ステップS8において、力触覚制御部304は、速度の領域で算出された制御量及び位置の領域で算出された制御量を入力として、ステップS6における座標変換の逆変換を行う。
【0068】
ステップS9において、力触覚制御部304は、逆変換によって算出された制御量に基づいて、各アクチュエータを制御する。
ステップS10において、UI制御部301は、カメラCによって撮影された釣り場の画像を表示する。
ステップS11において、釣歴記録部305は、力触覚制御部304が制御において算出した制御パラメータ及びカメラCによって撮影された画像を記憶する。
【0069】
ステップS12において、UI制御部301は、制御パラメータに加える条件が変更されたか否かの判定を行う。
制御パラメータに加える条件が変更された場合、ステップS12においてYESと判定されて、処理はステップS1に移行する。
一方、制御パラメータに加える条件が変更されていない場合、ステップS12においてNOと判定されて、処理はステップS13に移行する。
【0070】
ステップS13において、UI制御部301は、リアルタイム処理の終了が指示されたか否かの判定を行う。
リアルタイム処理の終了が指示されていない場合、ステップS13においてNOと判定されて、処理はステップS2に移行する。
一方、リアルタイム処理の終了が指示された場合、ステップS14においてYESと判定されて、リアルタイム処理は終了する。
【0071】
(再生処理)
次に、再生処理について説明する。
図8は、釣りシステム1が実行する再生処理の流れを示すフローチャートである。
再生処理は、制御装置30において、再生処理の実行が指示されることに対応して開始される。
【0072】
ステップS21において、UI制御部301は、ユーザの操作に応じて、釣歴のデータに対して加える変更の条件(変更を加えるか否か、加える場合の変更内容)を設定する。
ステップS22において、力触覚制御部304は、ユーザによって選択された釣歴のデータを釣歴DB371から読み出す。
ステップS23において、センサ情報取得部302は、釣り操作装置20に設置された各種センサによって検出された情報(センサ情報)を取得する。
ステップS24において、力触覚制御部304は、釣歴のデータに対し、設定された条件に応じた変更を加え、座標変換の基準値とする。
【0073】
ステップS25において、力触覚制御部304は、釣り操作装置20から取得されたセンサ情報及び基準値を入力として、座標変換(式(3)、(4)参照)を行う。
ステップS26において、力触覚制御部304は、速度の領域及び力の領域での目標値に合わせるための制御量を算出する。
ステップS27において、力触覚制御部304は、速度の領域で算出された制御量及び位置の領域で算出された制御量を入力として、ステップS25における座標変換の逆変換を行う。
ステップS28において、力触覚制御部304は、逆変換によって算出された制御量に基づいて、各アクチュエータを制御する。
ステップS29において、UI制御部301は、釣歴のデータとして記憶されている釣り場の画像を表示する。
【0074】
ステップS30において、UI制御部301は、制御パラメータに加える条件が変更されたか否かの判定を行う。
制御パラメータに加える条件が変更された場合、ステップS30においてYESと判定されて、処理はステップS21に移行する。
一方、制御パラメータに加える条件が変更されていない場合、ステップS30においてNOと判定されて、処理はステップS31に移行する。
【0075】
ステップS31において、力触覚制御部304は、再生処理の終了が指示されたか否かの判定を行う。
再生処理の終了が指示されていない場合、ステップS31においてNOと判定されて、処理はステップS22に移行する。
一方、再生処理の終了が指示された場合、ステップS31においてYESと判定されて、再生処理は終了する。
【0076】
(分析処理)
次に、分析処理について説明する。
図9は、釣りシステム1が実行する分析処理の流れを示すフローチャートである。
再生処理は、制御装置30において、分析処理の実行が指示されることに対応して開始される。
【0077】
ステップS41において、釣歴データ分析部306は、釣歴DB371から分析対象となる釣歴のデータを読み出す。
ステップS42において、釣歴データ分析部306は、力・速度・位置・加速度・動きの特定帯域の周波数等の物理量から魚種及び獲物の大きさ等の属性を分析する。
ステップS43において、釣歴データ分析部306は、分析結果に基づいて、釣歴のデータの釣りの内容を分類する。
ステップS44において、釣歴データ分析部306は、釣歴のデータに分析結果を対応付けて、釣歴DB371に記憶する。
ステップS44の後、分析処理は終了する。
【0078】
(編集処理)
図10は、釣りシステム1が実行する編集処理の流れを示すフローチャートである。
編集処理は、制御装置30において、編集処理の実行が指示されることに対応して開始される。
【0079】
ステップS51において、釣歴データ編集部307は、ユーザによって選択された釣歴のデータを釣歴DB371から読み出す。
ステップS52において、釣歴データ編集部307は、釣歴のデータに対する属性の変更が選択されたか否かの判定を行う。
釣歴のデータに対する属性の変更が選択されていない場合、ステップS52においてNOと判定されて、処理はステップS55に移行する。
一方、釣歴のデータに対する属性の変更が選択された場合、ステップS52おいてYESと判定されて、処理はステップS53に移行する。
【0080】
ステップS53において、釣歴データ編集部307は、釣歴のデータに対する属性の変更を行うためのメニューを表示する。
ステップS54において、釣歴データ編集部307は、選択されたメニューを実行し、釣歴のデータに対する属性の変更を行う。
ステップS54の後、処理はステップS52に移行する。
【0081】
ステップS55において、釣歴データ編集部307は、釣歴のデータに対する切り貼り(カットまたは結合)が選択されたか否かの判定を行う。
釣歴のデータに対する切り貼り(カットまたは結合)が選択されていない場合、ステップS55においてNOと判定されて、処理はステップS57に移行する。
一方、釣歴のデータに対する切り貼り(カットまたは結合)が選択された場合、ステップS55おいてYESと判定されて、処理はステップS56に移行する。
ステップS56において、釣歴データ編集部307は、時系列の釣歴のデータの切り取りまたは貼り付けを実行する。
ステップS56の後、処理はステップS52に移行する。
【0082】
ステップS57において、釣歴データ編集部307は、その他の編集が選択されたか否かの判定を行う。
その他の編集が選択されていない場合、ステップS57においてNOと判定されて、処理はステップS59に移行する。
一方、その他の編集が選択された場合、ステップS57おいてYESと判定されて、処理はステップS58に移行する。
ステップS58において、釣歴データ編集部307は、選択された編集内容を実行する。
ステップS58の後、処理はステップS52に移行する。
【0083】
ステップS59において、釣歴データ編集部307は、編集処理の終了が指示されたか否かの判定を行う。
編集処理の終了が指示されていない場合、ステップS59においてNOと判定されて、処理はステップS52に移行する。
一方、編集処理の終了が指示された場合、ステップS59おいてYESと判定されて、処理はステップS60に移行する。
ステップS60において、釣歴データ編集部307は、編集結果の釣歴のデータを釣歴DB371に記憶する。
ステップS60の後、編集処理は終了する。
【0084】
(トレーニング処理)
図11は、釣りシステム1が実行するトレーニング処理の流れを示すフローチャートである。
トレーニング処理は、制御装置30において、トレーニング処理の実行が指示されることに対応して開始される。
【0085】
ステップS71において、UI制御部301は、ユーザによるトレーニング内容の設定を受け付ける。このとき、ユーザがお手本とする釣りの動作が記録された釣歴のデータを選択したり、ユーザが向上したいと考えている釣りの動作を選択したり、特定の魚種を釣るための練習動作を選択したりすることができる。
ステップS72において、トレーニング制御部308は、釣歴DB371から時系列に釣歴のデータを読み出す。
ステップS73において、トレーニング制御部308は、ユーザの操作における速度及び力と釣歴のデータにおけるマスタ装置(釣り操作装置20)の速度及び力との差分を算出する。
【0086】
ステップS74において、トレーニング制御部308は、ユーザへのアドバイスを報知する。これにより、ユーザは、算出した差分が減少する方向(過不足分を調節する方向)に釣り操作装置20を操作するための情報を得ることができる。
ステップS75において、トレーニング制御部58は、釣歴のデータにおけるマスタ装置(釣り操作装置20)の速度及び力と、ユーザの操作における速度及び力と差分を減少させる補正量を算出する。このとき、力触覚制御部304は、算出した補正量をユーザの操作に対するアシストとして各アクチュエータから出力する。
ステップS76において、力触覚制御部304は、ユーザが釣り操作装置20に入力した操作に対して補正量を加えた値を入力として、座標変換(式(3)、(4)参照)を行う。
【0087】
ステップS77において、力触覚制御部304は、速度の領域及び力の領域での目標値に合わせるための制御量の算出を行う。
ステップS78において、力触覚制御部304は、速度の領域で算出された制御量及び位置の領域で算出された制御量を入力として、ステップS76における座標変換の逆変換を行う。
ステップS79において、力触覚制御部304は、逆変換によって算出された制御量に基づいて、各アクチュエータの制御を行う。
ステップS80において、UI制御部301は、釣歴のデータとして記憶されている釣り場の画像を表示する。
【0088】
ステップS81において、トレーニング制御部58は、トレーニング処理の終了が指示されたか否かの判定を行う。
トレーニング処理の終了が指示されていない場合、ステップS81においてNOと判定されて、処理はステップS72に移行する。
一方、トレーニング処理の終了が指示された場合、ステップS81おいてYESと判定されて、トレーニング処理は終了する。
【0089】
以上のように、本実施形態に係る釣りシステム1によれば、遠隔地に設置された釣り動作実行装置10と、ユーザが操作する釣り操作装置20との間で、力触覚の伝達(バイラテラル制御)を行いながら、リアルタイムに遠隔的な釣りを行ったり、釣り操作装置20単体において、過去の釣りにおける力触覚を表すデータまたは編集等により生成された釣りの力触覚を表すデータに基づいて、釣りの疑似体験を行ったりすることができる。また、釣りシステム1においては、過去の釣りにおける力触覚を表すデータを分析し、属性毎に分類したり、過去の釣りにおける力触覚を表すデータをそのまま再現したり、過去の釣りにおける力触覚を表すデータを編集したデータを再現したりすることができる。
このように、釣りシステム1によれば、遠隔地あるいは仮想空間で釣りを体験できるシステムにおいて、実際の釣りよりも高い興趣性を実現することができる。
【0090】
(変形例1)
上述の実施形態において、再生処理が実行される場合に、釣歴のデータを早送りまたはスロー再生したり、繰り返し再生したりすることが可能である。
これにより、釣りの動作を短時間で体験したり、深く理解しながらゆっくりと体験したり、感覚を掴むために繰り返し体験したりすることが可能となる。
【0091】
なお、本発明は、本発明の効果を奏する範囲で変形、改良等を適宜行うことができ、上述の実施形態及び変形例に限定されない。
例えば、本発明は、上述の実施形態における釣りシステム1は、釣り動作実行装置10、釣り操作装置20あるいは制御装置30によって実現することの他、釣りシステム1において実行される各ステップによって構成される釣りシステムの制御方法、あるいは、釣りシステム1の機能を実現するためにプロセッサによって実行されるプログラムとして実現することができる。
また、上述の実施形態では、制御装置30を独立した装置として実現する構成を例に挙げて説明したが、制御装置30の機能を釣り動作実行装置10の制御ユニット101及び釣り操作装置20の制御ユニット201の一方に実装したり、これらの両方に分散して実装したりすることができる。
【0092】
また、上述の実施形態において、釣り動作実行装置10及び釣り操作装置20は、リール14,23を備えるものとしたが、これに限られない。即ち、リールを備えることなく、鉛直方向の回転及び水平方向の回転のみによって釣りの動作が行われる形態にも、本発明を適用することができる。さらに、鉛直方向の回転及び水平方向の回転のいずれか一方において、釣り動作実行装置10と釣り操作装置20とで力触覚を伝達することとしてもよい。
また、上述の実施形態において、移動子の位置(回転角度)等を検出する場合に、ロータリーエンコーダ等を用いる例について説明したが、これに限られない。例えば、ポテンショメータ、角度センサあるいはレーザー測距装置等の各種計測装置を用いたり、アクチュエータの動作から推測して位置を求めたりすることが可能である。
【0093】
なお、上記実施形態は、本発明を適用した一例を示しており、本発明の技術的範囲を限定するものではない。即ち、本発明は、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができ、上記実施形態以外の各種実施形態を取ることが可能である。本発明が取ることができる各種実施形態及びその変形は、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0094】
S 制御対象システム、FT 機能別力・速度割当変換ブロック、FC 理想力源ブロック、PC 理想速度源ブロック、IFT 逆変換ブロック、1 釣りシステム、10 釣り動作実行装置、11 釣り竿、12 釣り竿設置部、13,22 支持部、14,23 リール、20 釣り操作装置、21 グリップ部、30 制御装置、40 ネットワーク、C カメラ、D ディスプレイ、101,201 制御ユニット、102,202 通信ユニット、103,203 リール駆動用アクチュエータ、104,204 鉛直動作用アクチュエータ、105,205 水平動作用アクチュエータ、106~108,206~208 ロータリーエンコーダ、109~111,209~211 ドライバ、811 プロセッサ、812 ROM、813 RAM、814 バス、815 入力部、816 出力部、817 記憶部、818 通信部、819 ドライブ、831 リムーバブルメディア