(57)【要約】デバイスを制御するためのヒューマンマシンインタフェースシステムは、ハウジングと、人の指でアクティベート可能な物理的な要素と、前記要素と通信するプロセッサであって、前記要素からの入力を受信して処理するプロセッサと、前記プロセッサからの出力を通信するための通信部とを有し、前記出力は、前記デバイスに対するコマンドを含み、前記要素、前記プロセッサ、および前記通信部は全て、前記ハウジングの周囲または内部に配置されているか、またはそれらに接続されている。
2019533237.tif 000002
【特許請求の範囲】
【請求項１】
デバイスを制御するためのヒューマンマシンインタフェースシステムであって、
ハウジングと、
人の指でアクティベート可能な物理的な要素と、
前記要素と通信するプロセッサであって、前記要素からの入力を受信して処理するプロセッサと、
前記プロセッサからの出力を通信するための通信部とを有し、前記出力は、前記デバイスに対するコマンドを含み、
前記要素、前記プロセッサ、および前記通信部は全て、前記ハウジングの周囲または内部に配置されているか、またはそれらに接続されている、ことを特徴とするヒューマンマシンインタフェースシステム。
【請求項２】
前記要素、前記プロセッサ、および前記通信部は全て、前記ハウジングの周囲または内部に配置されていることを特徴とする請求項１に記載のヒューマンマシンインタフェースシステム。
【請求項３】
コンピュータで実行される、デバイスを制御するための方法であって、
人の指でアクティベート可能な要素から生じる入力を受信するステップと、
前記入力を処理して前記デバイスに対するコマンドを含む出力を決定する処理ステップと、
前記デバイスに前記出力を通信するステップと、を有し、
前記処理ステップは、
前記入力から１つ以上のサブ入力を識別するステップと、
各サブ入力に対して別々の値を決定するステップと、
各サブ入力を数学的に処理して出力値を決定するステップと、
前記出力値から出力コマンドを識別するステップと、
を含むことを特徴とする方法。
【請求項４】
各サブ入力に対する前記別々の値は、テーブルから決定されることを特徴とする請求項３に記載の方法。
【請求項５】
前記出力コマンドは、テーブルから決定されることを特徴とする請求項３に記載の方法。
【請求項６】
ｎ個のサブ入力に対する前記数学的な処理は、次式：
サブ入力１＋…＋サブ入力ｎ＝出力値
に従うものであることを特徴とする請求項３に記載の方法。
【請求項７】
時系列的に最初のサブ入力を処理して出力のサブセットを決定するステップと、
少なくとも１つの時系列的に後続するサブ入力を処理して出力値を決定するステップと、
を含むことを特徴とする請求項３に記載の方法。
【請求項８】
前記時系列的に後続するサブ入力は、所定の期間にわたって人の指でアクティベート可能な物理的要素のアクティベーションがないことを含むことを特徴とする請求項７に記載の方法。
【請求項９】
最初のサブ入力の時刻を記録するステップと、
前記最初のサブ入力から所定の経過時間値に達するまでの経過時間を監視するステップと、
前記所定の経過時間値の前に後続のサブ入力が受信されない場合、後続の入力がないことを所定の出力値として処理するステップと、
を有することを特徴とする請求項８に記載の方法。
【請求項１０】
前記所定の経過時間値は、約２秒未満、任意選択で約１．５秒未満、任意選択で約１秒未満、任意選択で約０．５から１秒、任意選択で約０．５秒である、ことを特徴とする請求項９に記載の方法。
【請求項１１】
前記第１の処理ステップは、制御する電子デバイスの選択を決定し、前記第２の処理ステップは、そのデバイスに対するコマンドを決定する、ことを特徴とする請求項７に記載の方法。
【請求項１２】
基部と、該基部から延びる突出部とを含み、前記突出部は、前記基部によって画定される軸に関して移動可能であり、少なくとも１つのガイドによって画定される方向に移動してガイド経路内の複数の制御点を接続することが可能であり、前記複数の制御点は、制御対象デバイスに対する１つ以上の制御命令に対応することが意図されていることを特徴とするヒューマンマシンインタフェース装置。
【請求項１３】
基部と、人の指を案内するように前記基部の周囲に配置された１つ以上のガイドとを含み、前記基部は、指で該基部の表面をスライド可能に係合することによって人の指に入力を行わせる導電性要素を含み、前記入力は、制御対象デバイスに対する命令を送信するために使用されうるものである、ことを特徴とするヒューマンマシンインタフェース装置。
【請求項１４】
隣と接触するよう近接配置された複数のアクティベート可能な要素を有し、所定の１つ以上の要素が押されると、制御可能なデバイスに対する命令に対応して入力が生成される、ことを特徴とするヒューマンマシンインタフェース装置。
【請求項１５】
デバイスコントローラに無線接続されたヒューマンマシンインタフェースを有し、前記デバイスコントローラは、無線トランシーバと、プロセッサに物理的に接続されたパッシブ動きセンサとを含み、動きが検出されると、前記デバイスコントローラがアクティブ状態に切り替わる、ことを特徴とするヒューマンマシンインタフェースシステム。
【請求項１６】
タイマを有し、動きがないまま所定時間が経過すると、前記デバイスコントローラは、自動的に非アクティブ状態に切り替わる、ことを特徴とする請求項１５に記載のシステム。
【請求項１７】
タイマを有し、動きがないまま所定時間が経過すると、前記デバイスコントローラは、前記ＨＭＩコントローラからの無線コマンドを介して非アクティブ状態に切り替わる、ことを特徴とする請求項１５に記載のシステム。
【請求項１８】
マイクロコントローラを有し、前記動きセンサは、前記マイクロコントローラの割り込み線とグラウンドとの間に電気的に接続されている、ことを特徴とする請求項１５に記載のシステム。
【請求項１９】
ハウジング内で転動することができ、それによって移動に伴って電気的接続を開閉することができる、１つ以上の球形導電性物品を任意選択で有するメカニカル動きセンサを含むことを特徴とする請求項１５に記載のシステム。
【請求項２０】
無線装置を含むヒューマンマシンインタフェースシステムの電力消費を低減させるための、コンピュータで実現される方法であって、
クロノロジカル装置からのデータ入力を受信するステップと、
所定のクロノロジカル期間が経過したことを示すデータを受信すると、前記無線装置のアクティブリスニングレートを所定のレベルまで下げるように無線チップセットに命令を送信するステップと、
動きの発生を示す、動き検知デバイスからのデータ入力を受信するステップと、
前記アクティブリスニングレートを所定のレベルまで上げるように前記無線チップセットに命令を送信するステップと、
を有することを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ヒューマンマシンインタフェースシステムに関する。
【背景技術】
【０００２】
緊急サービス、警察および軍関係者は通常、それぞれ異なるユーザインタフェースを有する、さまざまな電子デバイス、ガジェットおよび／または機器を携帯している。例としては、ラジオ、フラッシュライト、レーザー指示装置、熱兵器照準器（ＴＷＳ）、全地球測位システム（ＧＰＳ）、赤外線スコープ、コンピュータ端末などが挙げられる。とりわけ操作上の肉体的および認知的負荷が高い極端な状況（例えば戦闘または緊急インシデント）において、複数の異なるユーザインタフェースに熟達し操作する必要性は難しい問題である。特に、異なるユーザインタフェース間での切り替え中に、操作者の認知意識の喪失は致命的なリスクとなりうる。建設労働者、現場技術者、測量士、熟練工などを含む、他の分野の作業員も、簡単な操作を必要とする複数の電子デバイスを持ち運ぶようになっている。
【０００３】
前述の要件を満たすために、さまざまな異なるコントロールおよびインタフェースを１つの同種かつ一貫したインタフェースにまとめる方法および装置が必要である。さらに、少ない機能を制御することが必要でしかない場合には、適切で単純な少ない数の入力の組み合わせのインタフェースが利用され、一方、より多くの機能を制御する必要がある場合には、適切で単純な多い数の入力の組み合わせの高いバンド幅のインタフェースが提供されるように、インタフェースのバンド幅がスケーラブルである必要がある。
【０００４】
ユーザの入力を増やすだけでインタフェースのバンド幅を常に増やすことができるが、入力の数を増やすと、物理サイズ、操作に必要な指の数または操作に関連付けられている認知負荷、の少なくともいずれか１つの、インタフェースの特性に対応する増加が常に生じる。前述したように、戦闘や緊急事態で誘発される認知的負荷を減らすことは重要である。さらに、サービス兵器に装着される制御インタフェースのような用途に対しては、装着に利用可能なスペースおよび操作に利用可能な指の数の両方が非常に重要である。
【０００５】
無線プロトコルを使用して、特定の危険な環境または機密性の高い環境で機器を操作することには、以前から懸念があった。例えば、ミリタリーユーザは、装置の無線アクティベーションにより、装着者が敵によって検出されたり、即席爆発装置（ＩＥＤ）などの爆発装置を起動したり、または、敵によって妨害されたり制御されたりする可能性がある。他には、例えば既に大きな電磁放射負荷を有する可能性がある敏感な環境における無線制御の信頼性が懸念されてきた。さらに、無線通信ハードウェアは、制御対象デバイスがコントローラからの信号を定期的にチェックしなければならないので、物理的に接続されたハードウェアよりも多くの電力を消費する。その結果、そのような環境における装置の無線作動は、価値がない、困難すぎる、または危険すぎると考えられてきた。
【０００６】
したがって、操作に必要な指の数、電力消費、物理的サイズ、および操作に関連する認知的負荷などの重要な要素を損なうことなく、入力バンド幅を容易に拡大できる柔軟なユーザインタフェースが必要とされている。
【発明の概要】
【０００７】
本発明の第１の側面によれば、デバイスを制御するためのヒューマンマシンインタフェースシステムであって、ハウジングと、人の指でアクティベート可能な物理的な要素と、前記要素と通信するプロセッサであって、前記要素からの入力を受信して処理するプロセッサと、前記プロセッサからの出力を通信するための通信部とを有し、前記出力は、前記デバイスに対するコマンドを含み、前記要素、前記プロセッサ、および前記通信部は全て、前記ハウジングの周囲または内部に配置されているか、またはそれらに接続されている、ことを特徴とするヒューマンマシンインタフェースシステムが提供される。いくつかの好ましい実施形態では、前記要素、前記プロセッサ、および前記通信部は全て、前記ハウジングの周囲または内部に配置されている。いくつかの実施形態では、前記装置はハウジングに物理的に接続されているが、いくつかの実施形態では装置はそうではない。
【０００８】
本発明の別の態様においては、コンピュータで実行される、デバイスを制御するための方法であって、人の指でアクティベート可能な要素から生じる入力を受信するステップと、前記入力を処理して前記デバイスに対するコマンドを含む出力を決定する処理ステップと、前記デバイスに前記出力を通信するステップと、を有し、前記処理ステップは、前記入力から１つ以上のサブ入力を識別するステップと、各サブ入力に対して別々の値を決定するステップと、各サブ入力を数学的に処理して出力値を決定するステップと、前記出力値から出力コマンドを識別するステップと、を含むことを特徴とする方法が提供される。いくつかの好ましい実施形態では、各サブ入力に対する前記別々の値はテーブルから決定され、いくつかの好ましい実施形態では、前記出力コマンドはテーブルから決定される。
【０００９】
本発明による方法は、ｎ個のサブ入力に対する、次式：
サブ入力１＋…＋サブ入力ｎ＝出力値
に従う数学的な処理を含みうる。
【００１０】
いくつかの実施形態では、本発明の方法は、時系列的に最初のサブ入力を処理して出力のサブセットを決定するステップと、少なくとも１つの時系列的に後続するサブ入力を処理して出力値を決定するステップと、を含む。いくつかの好ましい実施形態では、前記時系列的に後続するサブ入力は、所定の期間にわたって人の指でアクティベート可能な物理的要素のアクティベーションがないことを含む。いくつかの実施形態では、本発明の方法は、最初のサブ入力の時刻を記録するステップと、前記最初のサブ入力から所定の経過時間値に達するまでの経過時間を監視するステップと、前記所定の経過時間値の前に後続のサブ入力が受信されない場合、後続の入力がないことを所定の出力値として処理するステップと、を有しうる。前記所定の経過時間値は、当面の目的のために実行可能な任意の適切な値であり得る。例えば、迅速な対応のために設計された実施形態（軍事要員用など）では、より短い時間、例えば約１秒以下、好ましくは０．５秒以下が必要とされ得る。通常、この実施形態による所定の出力値は、制御対象デバイスに対してデフォルト設定または最も一般的に使用される設定に対応し、通常、これはユーザにとって危険を引き起こさない設定である。例えば、全体の入力が中断されても最初の入力が１つの入力に対応するように、サブ入力を追加しているときにユーザがミスをしたり気を散らせたりした場合、その入力に対応する出力は安全である。例えば、軍関係者は、そのような入力ファンクションを通してトーチをオンにしないことを選ぶかもしれない。典型的には、そのような実施形態では、前記所定の経過時間値は、約２秒未満、任意選択で約１．５秒未満、任意選択で約１秒未満、任意選択で約０．５から１秒、任意選択で約０．５秒である。
【００１１】
本発明のこの実施形態のいくつかの実装形態では、前記第１の処理ステップは、制御する電子デバイスの選択を決定し、前記第２の処理ステップは、そのデバイスに対するコマンドを決定する。
【００１２】
本発明の別の態様においては、基部と、該基部から延びる突出部とを含み、前記突出部は、前記基部によって画定される軸に関して移動可能であり、少なくとも１つのガイドによって画定される方向に移動してガイド経路内の複数の制御点を接続することが可能であり、前記複数の制御点は、制御対象デバイスに対する１つ以上の制御命令に対応することが意図されていることを特徴とするヒューマンマシンインタフェース装置が提供される。
【００１３】
本発明の他の態様においては、基部と、人の指を案内するように前記基部の周囲に配置された１つ以上のガイドとを含み、前記基部は、指で該基部の表面をスライド可能に係合することによって人の指に入力を行わせる導電性要素を含み、前記入力は、制御対象デバイスに対する命令を送信するために使用されうるものである、ことを特徴とするヒューマンマシンインタフェース装置が提供される。
【００１４】
本発明はまた、隣と接触するよう近接配置された複数のアクティベート可能な要素を有し、所定の１つ以上の要素が押されると、制御可能なデバイスに対する命令に対応して入力が生成される、ことを特徴とするヒューマンマシンインタフェース装置を提供する。
【００１５】
別の態様においては、本発明は、デバイスコントローラに無線接続されたヒューマンマシンインタフェースを有し、前記デバイスコントローラは、無線トランシーバと、プロセッサに物理的に接続されたパッシブ動きセンサとを含み、動きが検出されると、前記デバイスコントローラがアクティブ状態に切り替わる、ことを特徴とするヒューマンマシンインタフェースシステムを提供する。いくつかの実施形態は、タイマを有し、前記デバイスコントローラは、動きがないまま所定時間が経過すると自動的に非アクティブ状態に切り替わる。いくつかの実施形態は、タイマを有し、動きがないまま所定時間が経過すると、前記デバイスコントローラは、前記ＨＭＩコントローラからの無線コマンドを介して非アクティブ状態に切り替わる。
【００１６】
本発明のこの態様のいくつかの実施形態では、マイクロコントローラを有し、前記動きセンサは、前記マイクロコントローラの割り込み線とグランドとの間に電子的に接続されているシステムが提供される。いくつかの実施形態は、ハウジング内で転動することができ、それによって移動に伴って電気的接続を開閉することができる、１つ以上の球形導電性物品を任意選択で有するメカニカル動きセンサを含む。
【００１７】
本発明の別の態様においては、無線装置を含むヒューマンマシンインタフェースシステムの電力消費を低減させるための、コンピュータで実現される方法であって、クロノロジカル装置からのデータ入力を受信するステップと、所定のクロノロジカル期間が経過したことを示すデータを受信すると、前記無線装置のアクティブリスニングレートを所定のレベルまで下げるように無線チップセットに命令を送信するステップと、動きの発生を示す、動き検知デバイスからのデータ入力を受信するステップと、前記アクティブリスニングレートを所定のレベルまで上げるように前記無線チップセットに命令を送信するステップと、を有することを特徴とする方法が提供される。
【図面の簡単な説明】
【００１８】
【図１】本発明によるヒューマンマシンインタフェースの一例の概略図である。
【図２】本明細書でスティックコントロールと呼ばれる、本発明による例示的なインタフェースの概略図である。
【図３】本明細書においてスライドコントロールと呼ばれる、本発明による例示的なインタフェースの概略図である。
【図４ａ】本明細書ではクワッドパッドと呼ばれる、本発明による例示のインタフェースの概略図である。
【図４ｂ】本明細書ではクワッドパッドと呼ばれる、本発明による例示のインタフェースの概略図である。
【図５】本明細書ではＥ５デバイスと呼ばれる、本発明による例示的なインタフェースの概略図である。
【図６】本明細書ではＥ６デバイスと呼ばれる、武器入力コントロールに関連する例示的な実施形態のレフトビューおよびライトビューを示す概略図である。
【図７】入力用の３つのスイッチ、Bluetooth BLE無線チップセットおよびマイクロプロセッサを含む、本発明による無線コントローラの例示的な実施形態の例示的な回路配線図である。
【図８】入力用の３つのスイッチと、RS232データバス・トランシーバと、マイクロプロセッサとを備える本発明によるケーブル接続コントローラの例示的な実施形態の例示的な回路配線図である。
【図９】本発明による３ボタンコントローラの一例の上面図である。
【図１０】入力スイッチ、マイクロプロセッサ、およびBLE無線トランシーバを備える、本発明によるコントローラ用の例示的なプリント回路基板アセンブリ（ＰＣＢＡ）を示す。
【図１１ａ】本発明の単一ボタンの実施形態およびそのような実施形態のためのＰＣＢＡの一例を示す。
【図１１ｂ】本発明の単一ボタンの実施形態およびそのような実施形態のためのＰＣＢＡの一例を示す。
【図１２】本発明に従って３ボタンコントローラのバンド幅をどのように拡張できるかを表す一連のフローチャートである。
【図１３】本発明に従ってワンボタンコントローラのバンド幅をどのように拡張できるかを表す一連のフローチャートである。
【発明を実施するための形態】
【００１９】
本明細書において特に好ましい実施形態に関して本発明を説明することは便利である。しかし、本発明は広範囲の状況に適用可能であり、他の構成および配置もまた本発明の範囲内にあるとみなされることを理解されたい。本明細書に記載された構成および配置に対するさまざまな修正、変更、変形および／または追加もまた、本発明の範囲および範囲内に含まれるとみなされる。
【００２０】
本発明によるインタフェースは、単純化された制御装置から操作されることが望まれる電子デバイスの任意の適切な制御機能と共に使用されうる。例えば、それは、フラッシュライト、無線機、追跡システム、緊急信号またはビーコン、照準装置、コンピュータ、無人車両、武器などを操作することができる。
【００２１】
本発明の一態様によれば、１つまたは複数のデータバス制御装置、導電体によって接続されていない装置、スイッチ負荷装置またはコンピュータのうちの１つまたは複数を任意選択で含む、電子デバイスの制御のためのＨＭＩが提供される。インタフェースの入力は、一本の指から複数の指の数に容易に拡張できる。
【００２２】
本発明の一態様によれば、電子デバイスを制御するための人の指で操作可能ヒューマンマシンインタフェース（ＨＭＩ）が提供され、インタフェースの入力は１ないし複数の人の指に対して容易にスケーラブルである。
【００２３】
電子デバイスは、簡略化された操作が望ましい任意の装置を任意に含み得る。いくつかの好ましい実施形態では、それは、データバス制御装置、導電体によって接続されていない装置、スイッチ負荷装置、またはコンピュータのうちの１つまたは複数を備える。本発明による装置を操作するために任意の適切な人の指を使用することができる。いくつかの実施形態では、本明細書で使用される「指（digit）」という用語は、任意の適切な人間の付属物、例えば、指、親指、手、肘、つま先、足、膝、頭または指、舌のうちの１つ以上を含み得る。
【００２４】
本発明によるインタフェースの入力バンド幅のスケーラビリティは、さまざまな方法で達成することができる。本発明によるＨＭＩは、１つまたは複数の電気スイッチまたは入力領域（本明細書では「入力（inputs）」、「要素（elements）」または「アクティベート可能な物理的要素（activatable physical elements）」と呼ばれる）のアクティベーションに基づいて１つまたは複数の電子デバイスの制御機能を実行するように構成可能なプロセッサを含み得る。制御機能を引き起こすコマンドに到達するために、このようにして生成された入力信号にプロセッサによってさまざまなアルゴリズム的なまたは他の動作が適用され得る。例えば、いくつかの好ましい実施形態は、複数の入力（複数のボタンまたはスライド可能な入力面、またはスティックコントロール（Stick Control）、またはスライドコントロール（Slide Control）、またはクワッドパッド（Quad Pad）など）と、各別々の入力を介したＨＭＩへのユーザ入力とを含む。そして、ユーザによって起動されたすべての入力の結合された数値（本明細書では「結合入力値（combined input value）」と呼ばれる）が、コマンドを生成するためにプロセッサによって独立して累積される。
【００２５】
いくつかの実施形態では、限られた数（例えば３つ）の入力しか提供されないが、これらの限られた入力のバンド幅は、どの電子デバイス（または電子デバイスのサブセット）を制御するかの選択である入力の第１アクティベーションおよびそのデバイス上でどの機能を制御するかの選択である入力の第２アクティベーションを処理することによって拡大される。そのような実施形態の例示的な処理フローは、以下の箇条書きで概説される。この同じ処理フローが図１２に記載されており、フローチャート１２０１、１２０２および１２０３はそれぞれ入力１、２および３で始まる入力シーケンスの論理フローを説明している。
【００２６】
●入力１がアクティベートされてからディアクティベートされた場合、以下のようにイルミネータ機能を制御：
○入力１がアクティベートされると、ディアクティベートされるまでフラッシュライトをオン。
○次に入力２がアクティベートされると、ディアクティベートされるまでフラッシュライトをオン/オフ点滅。
○その後入力３がアクティベートされると、ディアクティベートされるまでレーザをオン。
●入力２がアクティベートされてからディアクティベートされた場合は、次のようにＴＷＳ機能を制御：
○入力１がアクティベートされてからディアクティベートされると、熱兵器照準器のオン/オフを切り替え。
○その後入力２がアクティベートされてからディアクティベートされると、ブラックホット／ホワイトホット極性を切り替え。
○その後入力３がアクティベートされてからディアクティベートされると、ゲインを切り替え。
●入力３がアクティベートされてからディアクティベートされた場合は、次のようにハンズフリー無線機能を制御：
○入力１がアクティベートされると、ディアクティベートされるまでプッシュトーク（ＰＴＴ）をオン。
○次に入力２がアクティベートされてからディアクティベートされると、ボリュームを変更。
○その後入力３がアクティベートされてからディアクティベートされると、チャネルを変更。
【００２７】
コントローラのプロセッサの観点からは、これと同じ処理フローは、次のように記述される。
【００２８】
●コントローラプロセッサは、ユーザによる入力１のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、ユーザによる入力１のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力１の（再）アクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素（ＭＯＳＦＥＴまたはリレーなど）を制御する出力ラインを反転させ、それによって物理的に接続されたフラッシュライト電力回路を閉にしてフラッシュライトをオン。
○コントローラプロセッサは、ユーザによる入力１のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによってフラッシュライト電源回路を開にして、フラッシュライトをオフ。
○または：
○コントローラプロセッサは、ユーザによる入力２のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素（ＭＯＳＦＥＴまたはリレーなど）を制御する出力ラインの状態を連続的に反転させ、それによって物理的に接続されたフラッシュライト電力回路を開閉し、フラッシュライトを点滅させる。
○コントローラプロセッサは、ユーザによる入力２のディアクティベーションに対応する入力を受け取る。
○フラッシュライトの電源回路が現在開である場合、コントローラプロセッサは何もしない。
○フラッシュライトの電源回路が現在閉である場合、コントローラプロセッサはスイッチング要素を制御する出力ラインを反転させ、それによってフラッシュライトの電源回路を開にし、フラッシュライトをオフ。
○または：
○コントローラプロセッサは、ユーザによる入力３のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素（ＭＯＳＦＥＴまたはリレーなど）を制御する出力ラインを反転させ、それによって物理的に接続されたレーザパワー回路を閉にしてレーザをオン。
○コントローラプロセッサは、ユーザによる入力３のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによってレーザパワー回路を開にしてレーザをオフ。
●または：
●コントローラプロセッサは、ユーザによる入力２のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、ユーザによる入力２のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力１のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力１のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ローカル不揮発性メモリ（NVRAM）に格納されたＴＷＳ「オン／オフ切り替え」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のTWSの両方に物理的に接続されているデータバス・トランシーバ（例えばRS232）に書き込む。
○または：
○コントローラプロセッサは、ユーザによる入力２の（再）アクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザの入力２のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、NVRAMに格納されているＴＷＳ「極性切り替え」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のＴＷＳの両方に物理的に接続されているデータバス・トランシーバに書き込む。
○または：
○コントローラプロセッサは、ユーザによる入力３のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力３のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、NVRAMに格納されているＴＷＳ「ゲイン切り替え」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のＴＷＳの両方に物理的に接続されているデータバストランシーバに書き込む。
●または：
●コントローラプロセッサは、ユーザによる入力３のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、ユーザによる入力３のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力１のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ハンズフリー無線機のＰＴＴ回線に物理的に接続されている出力ラインを電気的なグラウンドに引き、それによって無線機のＰＴＴ機能をオン。
○コントローラプロセッサは、ユーザによる入力１のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ハンズフリー無線機のＰＴＴ回線に物理的に接続されている出力ラインを回路供給電圧（Vcc）に引き戻し、それによって無線機のＰＴＴ機能をオフ。
○または：
○コントローラプロセッサは、ユーザによる入力２のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力２のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、NVRAMに格納されているハンズフリー無線機の「ボリューム変更」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のハンズフリー無線機の両方に物理的に接続されたデータバス・トランシーバに書き込む。
○または：
○コントローラプロセッサは、ユーザによる入力３の（再）アクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力３のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、NVRAMに格納されているハンズフリー無線機の「チャネル変更」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のハンズフリー無線機の両方に物理的に接続されているデータバストランシーバに書き込む。
【００２９】
いくつかの実施形態では、単一の入力のみが提供され、該入力のアクティベーションの回数および／または持続時間によって、プロセッサによって生成されるコマンドが決定される。一例として、モールス符号と同様の符号を使用して、例えば、ドット（短期入力）とその直後に続くダッシュ（長期入力）でフラッシュライトの点灯、単独のダッシュでハンズフリー無線機のＰＴＴ機能の作動、とすることができる。この処理フローの概要を以下に示す。そのような実施形態の例示的な処理フローを、以下の箇条書きで概説する。これと同じ処理フローが図１３に記載されており、フローチャート１３０１および１３０２はそれぞれドットおよびダッシュで始まる入力シーケンスに対する論理フローを記載している。
【００３０】
●最初の入力がドットの場合：
○500ms以内にドットが続く場合は、フラッシュライトをオン。
○500ms以内にダッシュが続く場合は、フラッシュライトをオフ。
○入力がないまま500msが経過した場合、レーザをオン。
●最初の入力がダッシュの場合：
○500ms以内にドットが続く場合は、無線ボリュームを変更。
○500ms以内にダッシュが続く場合は、無線チャネルを変更。
○入力がないまま500msが経過した場合、レーザをオフ。
【００３１】
コントローラのプロセッサの観点からのこれと同じ処理フローは、以下のようになる。
【００３２】
フェーズ１：入力処理
●コントローラプロセッサは、ユーザによる入力のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、物理的に接続された水晶発振器またはセラミック共振器からの信号を用いて経過時間msの計時を開始。
●コントローラプロセッサは、ユーザによる入力のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、計時を停止し、経過時間値をローカルメモリの（例えば）「first_input_elapsed_time」と定義された変数に格納。
●コントローラプロセッサは、経過時間値を０にリセットし、経過時間msの計時を再開。
●コントローラプロセッサがユーザによる入力のアクティベーションに対応する入力を受け取る、あるいは、（現在の）経過時間値が500msに達する（どちらか先に発生した方）。
●経過時間値が500msに達する前にユーザによる入力のアクティベーションがあった場合：
○コントローラプロセッサは、計時を停止し、経過時間値をローカルメモリの（例えば）「elapsed_time_between_inputs」と定義された変数に格納。
○コントローラプロセッサは、経過時間値を０にリセットし、経過時間msの計時を再開。
○コントローラプロセッサは、ユーザによる入力のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、計時を停止し、新たな経過時間値をローカルメモリの（例えば）「second_input_elapsed_time」と定義された変数に格納。
○コントローラプロセッサは、経過時間値を０にリセット。
●そうではなく、入力の間の経過時間が500msに達した場合：
○コントローラプロセッサは、計時を停止し、経過時間値500msをローカルメモリの「elapsed_time_between_inputs」変数に格納。
○コントローラプロセッサは経過時間値を０にリセット。
【００３３】
フェーズ２：処理出力：
●コントローラプロセッサは、「first_input_elapsed_time」、「elapsed_time_between_inputs」、「second_input_elapsed_time」の値を、ローカルNVRAMに保存されている所定の値と比較（この例では、500msがすべての変数の比較値として使用される）。
●「first_input_elapsed_time」の値が500ms未満の場合：
○「elapsed_time_between_inputs」の値が500ms未満の場合：
■「second_input_elapsed_time」の値が500ms未満の場合、コントローラプロセッサは、スイッチング要素（MOSFETやリレーなど）を制御する出力ラインを反転させ、それによって物理的に接続されたフラッシュライトの電源回路を閉にしフラッシュライトをオン。
■そうではなく、「second_input_elapsed_time」の値が500msを超えている場合、コントローラプロセッサは、スイッチング要素（MOSFETやリレーなど）を制御する出力ラインを反転させ、それによってフラッシュライトの電源回路を開にし、フラッシュライトをオフ。
○そうではなく、「elapsed_time_between_inputs」の値が500msに等しい場合、コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによって物理的に接続されたレーザ電力回路を閉にし、レーザをオン。
●そうではなく、「first_input_elapsed_time」の値が500ms以上の場合：
○「elapsed_time_between_inputs」の値が500ms未満の場合：
■「second_input_elapsed_time」の値が500ms未満の場合、コントローラプロセッサは、NVRAMに格納されているハンズフリー無線機「change volume」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のハンズフリー無線機の両方に物理的に接続されているデータバス・トランシーバに書き込む。
■そうではなく、「second_input_elapsed_time」の値が500ms以上の場合、コントローラプロセッサは、NVRAMに保存されているハンズフリー無線機「change volume」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のハンズフリー無線機の両方に物理的に接続されているデータバス・トランシーバに書き込む。
○そうではなく、「elapsed_time_between_inputs」の値が500msに等しい場合、コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによって物理的に接続されているレーザパワー回路を開にし、レーザをオフ。
【００３４】
入力データのより複雑なアルゴリズム変換は、例えば、本発明による単純なインタフェースから操作可能なデバイスの数を大幅に蔵させるため、操作の安全性を高めるためなど、さまざまな理由で利用され得る。
【００３５】
入力信号の処理に加えて、インタフェースの入力バンド幅のスケーラビリティを達成するために修正され得る本発明の他の態様は、提供される入力の数または構成を変えることを含む。アプリケーション特有の制限がそれを妨げない場合、インタフェースは単に入力の数を変えることによってスケーリングすることができる。多かれ少なかれ全ての機能の制御を必要とするアプリケーションのために、多かれ少なかれ全ての入力をそれぞれ提供することができる。
【００３６】
入力を処理してコマンドを受信するために使用されるプロセッサは、物理的に任意の適切な位置に配置されうる。いくつかの実施形態では、それは１つまたは複数の入力デバイスの近くまたは内部に配置され、いくつかの実施形態では制御対象の１つまたは複数の電子デバイスの近くまたは内部に配置される。入力とプロセッサと電子デバイスとの間の通信は、任意の適切な方法で行われうる。いくつかの実施形態では、１つまたは複数のケーブルが１つまたは複数のハードウェアを物理的に接続し、通信はデータバスを介して行われる。
【００３７】
いくつかの実施形態では、通信は、例えばBluetooth（登録商標）または独自の無線周波数または磁気誘導リンクを使用した無線通信である。当業者であれば、ケーブルが本発明と共に使用される必要はないこと、および、そのスケーラビリティおよび使用の特徴はケーブルには依存しないことを理解するであろう。本発明の無線実装は、ケーブルが植生、建物、家具などの外部物体に絡み付くまたは引っ掛かる可能性が減るという利点を有する。いくつかの無線実装は軽量でもある。
【００３８】
図７は、入力用の３つのボタンと、Bluetooth BLE無線チップセットと、マイクロプロセッサとを備える、本発明によるコントローラの実施形態の一例を示す回路図である。一方、図８は、入力用の３つのボタンとマイクロプロセッサとを含む、本発明によるケーブル接続コントローラの実施形態の一例を示す回路図である。
【００３９】
本発明の無線実装には任意の適切な無線プロトコルを使用することができる。好ましくは、無線プロトコルは、低エネルギー消費および低レンジ用に設計されている。使用されうる無線プロトコルの例は以下を含む：
・Bluetooth  - 近距離無線通信用のグローバル2.4GHzパーソナルエリアネットワーク。
・BLE  -  Bluetoothの別バージョン。Classic Bluetoothよりも消費電力が大幅に少なくなるが、データ転送速度は遅くなる。
・ZigBee  -  2.4GHzメッシュローカルエリアネットワーク（LAN）プロトコル。
・Z-Wave  - サブGHzメッシュネットワークプロトコル。
・NFC（Near field communication） - 極近距離通信に使用されるネットワークプロトコル。
・RFID  - ほとんどのシステムでは、RFIDリンクの片側だけにネイティブ電源がある。受電側は、受信チップに電流を誘導するＲＦ電磁波を送信する。（ネイティブ電源を持たない）受信機内の誘導電流は、それに応答して無線コマンドを生成する、あるいは、低電力動作を実行するのに十分である。
・SigFox  - 一方向では差動バイナリ位相シフトキーイング（DBPSK）を使用し、他方向ではガウス周波数シフトキーイング（GFSK）を使用する。
・ANTまたはANT+  - BLEと同様 - 既存のハードウェアから便乗するネットワークを構築するために設計されている。
【００４０】
いくつかの無線の実施形態では、本発明の装置は、リモートに配置された無線トランシーバと、プロセッサと、制御対象デバイスと接続するための物理的コネクタとを更に含む。これらの実施形態では、（ボタンを押すことなどによる）ユーザによる入力の後、本発明によるコントローラは、無線トランシーバによって受信され、データストアにアクセスするプロセッサに渡される無線信号を送信し、その信号を、コネクタを介して制御対象デバイスに渡される第２信号に変換し、それによってデバイスにコントローラへの入力に関連するコマンドを実行させる。そのような実施形態は、本発明によるコントローラによって無線で制御される能力を現在の無線ではないデバイスに後付けすることを可能にすることにおいて特定の有用性を有することが理解されるであろう。いくつかの実施形態では、制御対象デバイス自体が無線トランシーバとプロセッサとを備え、それによってコマンドを受信し、変換し、実行することができる。
【００４１】
敵対的または危険な環境において特に有用である本発明のいくつかの好ましい実施形態では、デバイスのネイティブ制御は維持されており、コントローラに関連する無線または他の機能が無効にされるか、正しくは機能しなくとも関係するデバイスはユーザにより動作可能である。
【００４２】
典型的な無線ベースのシステムでは、１つのデバイスが「マスタ」（「セントラル」または「アクセスポイント」とも呼ばれる）として機能し、そこから無線信号が発せられ、「スレーブ」デバイス（「ペリフェラル」または「エンドポイント」とも呼ばれる（送信されたデータを検知している、またはアクセスポイントから制御されるデバイス））からデータを受信することができる。通常の動作では、本発明によるＨＭＩまたはコントローラはマスタとして動作し、各制御対象デバイス（ライト、カメラ、レーザー照準器等）はスレーブとして動作する。本発明による無線システムにおけるコントローラおよび制御対象デバイスのそれぞれは、コントローラと制御対象デバイスとの間の無線通信を初期化するいくつかの方法を提供する。制御が直接に行われるか、制御対象デバイスに物理的に接続されている無線トランシーバを介して行われるかどうかにかかわらず、同様に行われる。無線制御されるスレーブデバイスがマスタコントローラにリンクされる方法の処理フローの例を以下に示す。
【００４３】
●スレーブデバイスをペアリングモードにするために、ユーザが入力をアクティベートするかバッテリを挿入する。その後、スレーブデバイスはその存在を無線でアドバタイズし始め、接続先のマスタコントローラをサーチする。そのアドバタイズでは、スレーブデバイスはそれがどのタイプのデバイスであるかについての情報を、ユニークデバイスIDとともに送信する。
●ユーザが１つまたは一連の入力をアクティベートするかバッテリを挿入して、マスタコントローラをペアリングモードにする。その後、コントローラは接続先の新しいスレーブデバイスのスキャンを開始する。
●マスタコントローラは、スレーブデバイスからのペアリングアドバタイズを検出し、そのデバイスに互換性があるかどうかを評価する。事前定義されたスレーブデバイスタイプのみを接続および制御できる。
●スレーブデバイスタイプに互換性がある場合、マスタコントローラはデバイスタイプとユニークデバイスIDをNVRAMに保存し、無線接続が確立されたことを確認するメッセージをスレーブデバイスに返信する。このメッセージには、コントローラに関連付けられているユニークデバイスIDが含まれる。
●スレーブデバイスは無線接続確認メッセージを受信し、コントローラのユニークデバイスIDをNVRAMに保存する。
●これにより、マスタコントローラとスレーブデバイスとの間に無線接続が確立される。コントローラから発行される後続の無線コマンドには、コントローラと制御対象デバイス双方のユニークIDが含まれるため、制御対象のスレーブデバイスは、受信した無線コマンドがペアリング先のコントローラから発行されたことを確認できる。
【００４４】
以下、これと同じ処理フローを、コントローラのプロセッサの観点から説明する。
【００４５】
●コントローラプロセッサは、ユーザが１つまたは一連の入力をアクティベートしたことに対応する入力を受信して、コントローラを新しいスレーブデバイスモードのスキャンに切り替える。
●コントローラプロセッサは、物理的に接続されている無線トランシーバにコマンドを書き込み、接続するスレーブデバイスをスキャンするよう指示する。
●コントローラプロセッサは、物理的に接続されている無線トランシーバにコマンドを書き込み、接続するスレーブデバイスをスキャンするよう指示する。
●コントローラプロセッサは、無線トランシーバから、検出されたアドバタイズしているスレーブデバイスタイプのリストとそれらのユニークIDを含むデータを受信する。
●受信した各スレーブデバイスタイプについて、コントローラプロセッサは、ローカルNVRAMに保存されているルックアップテーブルを解析して、デバイスに互換性があるかどうかを判断する。
●検出された互換性のあるデバイスタイプごとに、コントローラプロセッサは、そのデバイスタイプをユニークIDとともにローカルNVRAMに保存し、このスレーブデバイスに接続するように指示するコマンドパケットを無線トランシーバに書き込む。コマンドパケットには、コントローラのユニークIDも含まれる。
【００４６】
本発明によれば、以下のステップで概説するように、ファームウェア構成を変更する目的で、コントローラが別のコンピュータまたはプロセッサとの接続中にスレーブとしても動作できることが好ましい。
【００４７】
フェーズ１：ユーザ定義されたコンフィグレーションがコンピューティングデバイスからコントローラに送信される
●ユーザは、スマートフォンやＰＣなどのコンピューティングデバイスのユーザインタフェースに、所望のコントローラ設定を入力する。
●ユーザは、コンピューティングデバイスをマスタとして動作させ接続するスレーブコントローラをスキャンするためのユーザインタフェースオプションを選択する。
●ユーザは、コントローラをスレーブモードに切り替えるために、１つまたは一連の入力をアクティベートする。
●コンピューティングデバイスは、（スレーブとして動作している）コントローラへの接続を確立し、コンフィグレーションデータを送信する。
●コントローラは、コンフィグレーションデータをローカルNVRAMに保存する。
【００４８】
フェーズ２：コンフィグレーションデータがコントローラから制御対象デバイスに送信される
●コントローラは、マスタモードに戻り、制御対象スレーブデバイスへの接続を確立する。
●コントローラは、コンフィグレーションデータを制御対象デバイスに送信する。
●これにより、コントローラおよび制御対象デバイスは、新たなコンフィグレーションに従って動作するようになる。
【００４９】
以下では、これと同じ、コントローラが一時的にその役割をスレーブモードに切り替える処理について、コントローラのプロセッサの観点から説明する。
【００５０】
フェーズ１：ユーザ定義されたコンフィグレーションがコンピューティングデバイスからコントローラに送信される
●コントローラプロセッサは、コントローラをスレーブモードに切り替えるために、ユーザが１つまたは一連の入力をアクティベートしたことに対応する入力を受け取る。
●コントローラプロセッサは、物理的に接続されている無線トランシーバにその存在のアドバタイズを開始するように指示し、接続先のマスタをサーチする。
●コントローラプロセッサは、それがマスタコンピューティングデバイスへの接続を確立したという通知を無線トランシーバから受信する。
●コントローラプロセッサは、無線トランシーバ（マスタコンピューティングデバイスへの無線接続を介してユーザ定義されたコンフィグレーションデータを以前に受信した無線トランシーバ）からこのコンフィグレーションデータを受信する。
●コントローラプロセッサは、このコンフィグレーションデータをローカルNVRAMに書き込む。
【００５１】
フェーズ２：コンフィグレーションデータがコントローラから制御対象デバイスに送信される
●コントローラプロセッサは、マスタモードに戻り、物理的に接続されている無線トランシーバに制御対象スレーブデバイスへの接続を再確立するように指示する。
●コントローラプロセッサは、無線トランシーバから、制御対象スレーブデバイスへの接続を再確立したという通知を受信する。
●コントローラプロセッサは、ローカルNVRAMからコンフィグレーションデータを読み取り、このデータを無線トランシーバに書き込み、そのデータを制御対象スレーブデバイスに送信するように指示する。
●これにより、コントローラおよび制御対象デバイスは、新たなコンフィグレーションに従って動作するようになる。
【００５２】
他の実施形態では、コントローラはマスタとしての役割を維持し、他のコンピューティングデバイスはスレーブとして動作するが、その後、以下のステップで概説されるように、コントローラ側でファームウェア再構成を実行できるようにデータを送信する。
【００５３】
フェーズ１：ユーザ定義されたコンフィグレーションがコンピューティングデバイスからコントローラに送信される
●ユーザは、スマートフォンまたはＰＣなどのコンピューティングデバイス上のユーザインタフェースに所望のコントローラコンフィグレーションを入力する。
●ユーザは、コンピューティングデバイスがスレーブデバイスとして見えるようにするためのユーザインタフェースオプションを選択する。
●ユーザが１つまたは一連の入力をアクティベートして、接続先のスレーブコンピューティングデバイスのコントローラースキャンを開始する。
●コントローラは、（スレーブとして動作している）コンピューティングデバイスへの接続を確立し、コンフィグレーションデータを送信する。
●コントローラは、コンフィグレーションデータをローカルNVRAMに保存する。
【００５４】
フェーズ２：コンフィグレーションデータがコントローラから制御対象デバイスに送信される
●コントローラは、制御対象スレーブデバイスへの接続を確立する。
●コントローラは、コンフィグレーションデータを制御対象デバイスに送信する。
●これにより、コントローラおよび制御対象デバイスは、新たなコンフィグレーションに従って動作するようになる。
【００５５】
以下では、コントローラがマスタとしての役割を維持しているこの同じ処理については、コントローラのプロセッサの観点から説明する。
【００５６】
フェーズ１：ユーザ定義されたコンフィグレーションがコンピューティングデバイスからコントローラに送信される
●コントローラプロセッサは、ユーザが１つまたは一連の入力をアクティベートしたことに対応する入力を受信して、スレーブコンピューティングデバイスをスキャンして接続し、そこからコンフィグレーションデータを受信するようにコントローラに指示する。
●コントローラプロセッサは、物理的に接続された無線トランシーバにスレーブコンピューティングデバイスからのアドバタイズのスキャンを開始するように指示する。
●コントローラプロセッサは、無線トランシーバから、スレーブコンピューティングデバイスへの接続を確立したという通知を受信する。
●コントローラプロセッサは、無線トランシーバ（スレーブコンピューティングデバイスへの無線接続を介してユーザ定義されたコンフィグレーションデータを以前に受信した無線トランシーバ）からこのコンフィグレーションデータを受信する。
●コントローラプロセッサは、このコンフィグレーションデータをローカルNVRAMに書き込む。
【００５７】
フェーズ２：コンフィグレーションデータがコントローラから制御対象デバイスに送信される
●コントローラプロセッサは、物理的に接続されている無線トランシーバに、制御対象スレーブデバイスへの接続を再確立するように指示する。
●コントローラプロセッサは、無線トランシーバから、制御対象スレーブデバイスへの接続を再確立したという通知を受信する。
●コントローラプロセッサは、ローカルNVRAMからコンフィグレーションデータを読み取り、このデータを無線トランシーバに書き込み、データを制御対象スレーブデバイスに送信するように指示する。
●これによりコントローラおよび制御対象デバイスは、新たなコンフィグレーションに従って動作するようになる。
【００５８】
電力およびエネルギー使用の管理は、本発明のいくつかの実装形態にとって重要であり得る。例えば、いくつかの実装形態は、コントローラおよび／または制御対象デバイスの電源が非常にまれに変更または再充電されることを必要とし得る。例えば、武器と共に使用するためのコントローラに関連するそれらの実施においては、兵士または警察官等は、電池交換に費やされる時間を最小にする必要があり、コントローラおよび制御対象デバイスに毎回予想通りに動作することが期待されている。同様に、遠隔地や電源の変更が不可能な状況にある実装では、慎重な電源管理が必要になる。
【００５９】
本発明の無線による実施は、前述したような利点を有するが、より多くのエネルギーが使用されうる - 例えば、コマンドを待っている間にコンポーネントをアクティブまたは「リスニング」状態に維持することにおいて。本発明のいくつかの実施形態では、無線プロトコルがエネルギー効率のために選択される。例えば、BLEは、非常に小さい範囲および低エネルギー要件のために特に好ましいプロトコルである。
【００６０】
他のプロトコル、例えばRFIDも使用され得る。これらの実施において、制御対象デバイスは、ネイティブ電源を必要とせず、コントローラから受信された信号に依存してそのタスクを引き受けるのに十分な動作をする。そのようなタスクは、例えばそれ自体を単に識別することであり得るが、例えばMOSFETの状態を反転させてフラッシュライト電力回路を閉にするまたは開にするために他の単純な低エネルギータスクもまた行われ得る。
【００６１】
本発明のいくつかの実施形態は、パッシブ動きセンサを利用する。パッシブ動きセンサは、例えばそのような動きセンサがマイクロコントローラの割り込み線とグラウンドとの間に接続されるときに、動きを検出し、それによって構成要素を非アクティブ状態からアクティブ状態に切り替える。電子式動きセンサ（加速度計またはジャイロスコープなど）は、運動を感知できるようにするためにそれ自体がエネルギーを必要とするため、そのようなタスクにはあまり好ましくはない。
【００６２】
感知されることが要求されるものは動きが生じたことだけであり、これは現在装置が使用の準備ができていることが必要であることを知らせるので、単純なメカニカル動きセンサが好ましい。いくつかの実施形態では、メカニカル動きセンサは、ケーシング内で転動し、それによって運動に伴って電気的接続を開閉する１つまたは複数の球形導電性物品を含む。図１０は、マイクロプロセッサと、BLEチップセットと、そのようなメカニカルセンサを含む、本発明によるコントローラ用の回路基板の例を示す。
【００６３】
一例として、兵士は、本発明によるコントローラとレーザー照準器のような装置を取り付けた銃を所持する。本発明のこの態様によるコントローラおよび無線コネクタがレーザ照準器と共に使用される場合、次のステップが起こり得る。
【００６４】
●野営地で兵士は休憩中に銃を下ろす - 無線コネクタ（BLEチップセット付きのBluetooth BLEドングルなど）のタイマは、事前設定された時間（例：20分）が経過したことを検出し、アクティブコンポーネントをスリープモードに切り替えてエネルギー消費を低減させる。
●兵士が銃を拾い上げ任務を再開する - 無線コネクタのメカニカル動きセンサの球状導体が動き、マイクロコントローラの割り込み線とグラウンドとの間の電気的接続を瞬間的に開閉する。
●その結果発生した割り込みによって無線コネクタのマイクロコントローラが起動し、それにより、コントローラからのコマンドの待機を再開するように指示される無線トランシーバを含む他のアクティブなコンポーネントが起動する。
【００６５】
したがって、本発明のいくつかの態様では、任意選択で本発明による無線コネクタと共に使用するための、無線装置を効果的に制御しながら電力消費をさらに低減するアルゴリズム方法であって、
クロノロジカル装置（chronological device）からのデータ入力を受信するステップと、
所定のクロノロジカル期間が経過したことを示すデータを受信すると、アクティブリスニングレート（active listening rate）を所定のレベルまで下げるように無線チップセットに命令を送信するステップと、
動きの発生を示す、動き検知デバイスからのデータ入力を受信するステップと、
前記アクティブリスニングレートを所定のレベルまで上げるように前記無線チップセットに命令を送信するステップと、
を有する方法が提供される。
【００６６】
本発明のこの態様のいくつかの実施形態では、リスニング装置（listening device）は、動きがないまま所定の期間が経過した後にオフにされ、動きが生じると再び完全にアクティブなリスニングのためにオンされる。この実施形態では、アクティブリスニングレートの低減は、ゼロまでの所定のレベルとすることができる。
【００６７】
いくつかの実施形態では、「スリープ」機能は、デバイス上で直接または本発明によるコントローラを介してオフにすることができる。これは、特定の実施形態、例えば、ユーザが長期間不動のままでいなければならないが即座に行動して装備品を使用する準備ができていなければならない見張りあるいはステルス活動において特に有用であり得る。
【００６８】
可変リスニングレートおよびパッシブ動きセンサの両方を組み込んだそのようなアルゴリズム方法の例は、以下のステップで概説される。本明細書における用語「待ち時間（latency period）」は、コントローラ上でアクティベートされている１つまたは一連の入力と、対応する機能を実行する制御対象デバイスとの間の経過時間を指す。
【００６９】
●システムコンポーネントが起動し、ペアリングが確立される - 無線コネクタ上の無線トランシーバは、デフォルトのレート10Hz（待ち時間の範囲50-150ms）でコントローラからのコマンドをアクティブにリッスンし始める。
●動きセンサから入力されたデータを受信しないまま20分が経過した場合、無線コネクタのマイクロコントローラは、無線トランシーバにアクティブリスニングレートを2Hz（待ち時間の範囲50-550ms）に減らすように指示する。
●動きセンサから入力されたデータを受信しないままさらに20分が経過すると、無線コネクタのマイクロコントローラは、無線トランシーバにスリープ状態（アクティブリスニングレート0Hz）に移行するように指示する。
●無線コネクタのマイクロコントローラが動きセンサからデータ入力を受信すると、経過時間カウンタが０にリセットされ、無線トランシーバはコントローラからのコマンドの受信をデフォルトのレート10Hzで再開するように指示される。
【００７０】
いくつかの装置はアクティブモードとスリープモードを有するが、スリープモードの間の待ち時間ははるかに長いので、それらは上記の方法ほど有効ではない。したがって、制御されているデバイス（上記の例ではレーザ照準器）は、より長い時間「ウェイクアップ」の指示を感知せず、そのため、アクティブリスニングを再開するのにより長い時間がかかり、ユーザを危険にさらし、あるいは、遅れによって他の有害な結果を引き起こすことにつながる。
【００７１】
本発明のこの態様のいくつかの実施形態では、コントローラ内に、無線リスニング装置内と同様に制御対象デバイスと無線でリンクされた別個の動きセンサがある。いくつかの実施形態では、制御されているデバイス自体が無線チップセットおよび動きセンサを含む。
【００７２】
いくつかの実施形態では、本発明によるプリセットボタンまたはコントローラ上の入力を単にアクティベートすることによって、デバイスを「ウェイクアップさせる」（すなわち、より高いアドバタイズレートまたはリスニングレートに切り替える）こともできる。いくつかの実施形態では、入力のそのような最初のアクティベーションによって全てのデバイスをウェイクアップさせて動作可能にしてもよい。
【００７３】
いくつかの実施形態では、動きがあったときに依然として直ぐにウェイクアップするように、（やはり手動またはコントローラを介して）デバイスをスリープモード（またはオフ）に切り替える手段も提供される。
【００７４】
本発明のそのような電力管理態様の特に有用な態様は、それがユーザのための電力を管理し、ヒューマンエラーの可能性を実質的に減少させることである。
【００７５】
他の実施例において、ユーザは、例えばＵＨＦ無線機に無線接続されているＰＴＴボタンとして使用される本発明によるコントローラの単一ボタンバージョンを有することができる。この実施形態では、コントローラ自体は、使用されていないときにはオフにするが、一旦ボタンがアクティベートされるとウェイクアップし、関連する信号を関連する無線機に送り、次にボタンを押すまで再びオフにする。
【００７６】
いくつかの実施形態では、待ち時間は電力消費よりも大きな関心事であるので、スリープ機能がなくてもよく、あるいは最小または縮小バージョンが使用されてもよい。
【００７７】
しかし、固定数の入力を考慮するときでさえ、適切に単純な入力の組み合わせによって制御可能な機能の数は、入力の構成を修正することによって変更することができる。例えば、５つの入力を提供する本発明によるＨＭＩを考える。認知的負荷を最小にすることが最も重要である用途のために、人間の手の５本の指のそれぞれが単一の入力に割り当てられてもよい。例えば手の各指の下に専用の入力を持つことで、ユーザの認知的な負担を最小限に抑え、使いやすさを最大限に高める。あるいは、指のような単一の数字のみが操作に利用可能であり、提示される取り付け面積が非常に限られている用途では、本発明によるＨＭＩは、（図２のスティック入力のように）上下左右への動きおよび中央位置における押し込みによって５つの入力を作動させる単一の親指制御アクチュエータを含み得る。
【００７８】
典型的には、本発明の任意の所与の用途に対して、ユーザがそれらおよび各デバイスコマンドに必要なユーザ入力に迅速に精通するように、入力の数および種類が設定される。これを行うことによって、新たに追加された電子デバイス上で一致する装置コマンドタイプを制御するための新たな入力方法を学ぶ必要性は些細なことになる。特に好ましい実施形態では、異なる実施形態であっても、同じ入力が各タイプの電子デバイスコマンドに対して予約されている。したがって例えば、「GPSをオンにして自分を追跡する」は常に（例えば）入力１および入力２を押すことにより行われる。したがって、作業者の組織がすべてのGPSユニットをアップグレードされたより複雑なモデルに交換する場合でも、操作者は新しいGPSユニットを操作するために新しいインタフェースを学習する必要はなく、本発明によって提供される現在のインタフェースを使用し続けることになる。物理的なインタフェースは変更する必要はなく、「GPSをオンにして自分を追跡する」ための出力制御信号の変更は、コントローラのファームウェアの再構成によって行われる。これは、すべての操作者を再訓練するよりもはるかに効率的に新しい機器をデプロイする方法であり、はるかに頻繁な最先端の機器デプロイを可能にする。いくつかの実施形態では、本発明によるコントローラは、例えば「GPSをオンにして自分を追跡する」ための新しい出力コマンド文字列を古いコマンドが記憶されていた場所に上書きすることができるNVRAMを含む。同じコントローラ上で実行されている同じファームウェアが、出力コマンドのために同じNVRAMストレージロケーションにアクセスするが、新しい出力コマンドにアクセスして送信される。
【００７９】
本発明は、電子デバイスを制御するためのＨＭＩを開示する。図１は、開示される発明の実施形態によるそのようなＨＭＩ１００の概略図である。このＨＭＩは、１つ以上の指を用いて電子デバイスを制御する能力をユーザに与えるように配置された複数の入力１０１をユーザに提供する。この特定の例では、２つの電子デバイス、すなわちRS232データバス１０２を介したデバイス１と、Bluetooth Low Energy 無線接続１０３を介したデバイス２とが制御される。
【００８０】
ＨＭＩへの各入力には一意の数値１０４が割り当てられ、任意の所与の時点でユーザによってアクティベートされた全ての入力の結合数値（結合入力値）は、プロセッサ１０５によって独立に累積される。アクティベートされた入力のそれぞれの固有の組み合わせが、プロセッサによって計算される固有の結合入力値になるように割り当てられる。例えば、この特定のＨＭＩ１００では、入力１と入力３の両方がアクティベートされると、プロセッサ１０５は１０４に列挙された関連する値を累積して１＋４＝５の結合入力値を計算する。
【００８１】
各入力または入力の組み合わせの値が、異なる入力または入力の組み合わせのアクティベーションを介して複製できない限り、各入力に関連付けられた値は任意である。したがって、各入力を２進数表示における固有のビットの値（例えば、１、２、４、８など）で表すことは、結合入力値を累積する最も適切な方法である。ただし、これが結合入力値を累積する唯一の方法ではない。非数値（または他の固有の数値）もまた実装され得る。例えば、ＨＭＩ１００を参照すると、入力１に値「ａ」を割り当て、入力２に「ｂ」を割り当て、入力３に「ｃ」を割り当てることができる。これらの入力値を用いて、入力１と入力３の両方が起動されると、プロセッサ１０５は結合入力値「ａ＋ｃ」を累積する。
【００８２】
上記プロセッサ蓄積は開始点および停止点を有する。開始点は、任意の入力の最初のアクティベーションによって通知され、停止点は、開始点以降に開始された任意の入力の最後のディアクティベーションによって通知される。どの時点でも、結合入力値はアクティベートされた入力の合計を表す。開始点と停止点との間に生成された結合入力値は、瞬時結合入力値といい、これら２つの点の間の任意の時点で到達される最大結合入力値は、停止最大入力値という。どのスイッチも作動していないときの結合入力値には、通常、値０が割り当てられる。
【００８３】
入力状態が変化すると、結合入力値は、定義された操作を表す値のルックアップテーブルと比較され、一致が見つかると、対応する結果（電子デバイスの制御）が実行される。場合によっては、対応する結果が実行される前に、特定の一連の結合入力値が必要になることがある。これを可能にするために、前の結合入力値（特に前の停止最大入力値）のリストがプロセッサによって維持されてもよい。
【００８４】
【表１】
2019533237.tif 000003
【００８５】
これらの「生じる結果」のそれぞれに到達するために必要なステップをリストした処理フローを以下に詳述する。
【００８６】
フラッシュライトのオン/オフ：
●ユーザが入力１をアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が１であると計算する（入力１アクティベートで＋１、入力２ディアクティベートで＋０、入力３ディアクティベートで＋０）。
●マイクロコントローラは、ローカルメモリに格納されているルックアップテーブルを解析し、「結合入力値＝１」のエントリを見つける。
●マイクロコントローラは、対応する結果「フラッシュライトオン」を実行する。
●マイクロコントローラは、現在の停止最大入力値の格納値を１に更新し、スリープモードに戻る。
●ユーザが入力１をディアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が０であると計算する（どの入力もアクティベートされていない）。
●マイクロコントローラは、記憶されたルックアップテーブルを解析し、「結合入力値＝１、結合入力値＝０」のエントリを見つける。
●マイクロコントローラ、対応する結果「フラッシュライトオフ」を実行する。
●マイクロコントローラは、前回の停止最大入力値を１に更新し、現在の停止最大入力値を０にリセットしてスリープモードに戻る。
【００８７】
無線機のボリュームの変更：
●ユーザが入力２および入力３をアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が６であると計算する（入力１ディアクティベートで＋０、入力２アクティベートで＋２、入力３アクティベートで＋４）。
●マイクロコントローラは、ローカルメモリに格納されているルックアップテーブルを解析し、「結合入力値＝６」のエントリがないと判断する。
●マイクロコントローラは、現在の停止最大入力値の格納値を６に更新し、スリープモードに戻る。
●ユーザが入力２および入力３をディアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは結合入力値０を計算する（どの入力もアクティベートされていない）。
●マイクロコントローラは、記憶されたルックアップテーブルを解析し、「結合入力値＝６、結合入力値＝０」のエントリを見つける。
●マイクロコントローラは、対応する結果「無線機ボリューム変更」を実行する。
●マイクロコントローラは、前回の停止最大入力値を６に更新し、現在の停止最大入力値を０にリセットしてスリープモードに戻る。
【００８８】
無線チャネルを変更：
●ユーザが入力２をアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が２であると計算する（入力１ディアクティベートで＋０、入力２アクティベートで＋２、入力３ディアクティベートで＋０）。
●マイクロコントローラは、ローカルメモリに格納されているルックアップテーブルを解析し、「結合入力値＝２」のエントリがないと判断する。
●マイクロコントローラは、現在の停止最大入力値の格納値を２に更新し、スリープモードに戻る。
●ユーザが入力２をディアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が０であると計算する（どの入力もアクティベートされていない）。
●マイクロコントローラは、保存されているルックアップテーブルを解析し、「結合入力値＝２、結合入力値＝０」のエントリを見つける。
●マイクロコントローラは、前回の停止最大入力値を２に更新し、現在の停止最大入力値を０にリセットしてスリープモードに戻る。
●ユーザが入力３をアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が４であると計算する（入力１ディアクティベートで＋０、入力２ディアクティベートで＋０、入力３アクティベートで＋４）。
●マイクロコントローラは、ローカルメモリに格納されているルックアップテーブルを解析し、「結合入力値＝２、結合入力値＝０、結合入力値＝４」のエントリがないと判断する。
●マイクロコントローラは、現在の停止最大入力値の格納値を４に更新し、スリープモードに戻る。
●ユーザが入力３をディアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が０であると計算する（どの入力もアクティベートされていない）。
●マイクロコントローラは、記憶されたルックアップテーブルを解析し、「結合入力値＝２、結合入力値＝０、結合入力値＝４、結合入力値＝０」のエントリを見つける。
●マイクロコントローラは、対応する結果「無線チャネル変更」を実行する。
●マイクロコントローラは、前回の停止最大入力値を４に更新し、現在の停止最大入力値を０にリセットしてスリープモードに戻る。
【００８９】
以下では、これと同じ処理フローを、コントローラのプロセッサの観点から説明する。
【００９０】
フラッシュライトのオン/オフ
●コントローラプロセッサは、ユーザによる入力１のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を１と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値＝１」に対応する結果（フラッシュライトオン）を見つける。
●コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによって物理的に接続されているフラッシュライトの電力回路を閉にしてフラッシュライトをオンさせる。
●コントローラプロセッサは、変数current_cessation_maximum_input_valueの値を１に更新する。
●コントローラプロセッサは、ユーザによる入力１のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を０と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値＝１、結合入力値＝０」に対応する結果（フラッシュライトオフ）を見つける。
●コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによって物理的に接続されているフラッシュライト電力回路を開にし、フラッシュライトをオフする。
●コントローラプロセッサは、変数previous_cessation_maximum_input_valueの値を１に更新し、変数current_cessation_maximum_input_valueの値を０にリセットする。
【００９１】
無線機のボリュームの変更：
●コントローラプロセッサは、ユーザによる入力２および３のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を６と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値＝６」に対応する結果を見つける（結果なし）。
●コントローラプロセッサは、変数current_cessation_maximum_input_valueの値を６に更新する。
●コントローラプロセッサは、ユーザによる入力２および３のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を０と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値＝６、結合入力値＝０」に対応する結果（無線機ボリュームの変更）を見つける。
●コントローラプロセッサは、NVRAMに格納されたハンズフリー無線機の「ボリューム変更」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象ハンズフリー無線機の両方に物理的に接続されたデータバス・トランシーバに書き込む。
●コントローラプロセッサは、変数previous_cessation_maximum_input_valueの値を６に更新し、変数current_cessation_maximum_input_valueの値を０にリセットする。
【００９２】
無線チャネルの変更：
●コントローラプロセッサは、ユーザによる入力２のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を２と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値＝２」に対応する結果を見つける（結果なし）。
●コントローラプロセッサは、変数current_cessation_maximum_input_valueの値を２に更新する。
●コントローラプロセッサは、ユーザによる入力２のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を０と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値＝２、結合入力値＝０」に対応する結果を見つける（結果なし）。
●コントローラプロセッサは、変数previous_cessation_maximum_input_valueの値を２に更新し、変数current_cessation_maximum_input_valueの値を０にリセットする。
●コントローラプロセッサは、ユーザによる入力３のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を４と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値＝２、結合入力値＝０、結合入力値＝４」に対応する結果を見つける（結果なし）。
●コントローラプロセッサは、変数current_cessation_maximum_input_valueの値を４に更新する。
●コントローラプロセッサは、ユーザによる入力３のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を０と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値＝２、結合入力値＝０、結合入力値＝４、結合入力値＝０」に対応する結果（無線チャネルの変更）を見つける。
●コントローラプロセッサは、NVRAMに格納されているハンズフリー無線の「チャネル変更」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象ハンズフリー無線の両方に物理的に接続されているデータバス・トランシーバに書き込む。
●コントローラプロセッサは、変数previous_cessation_maximum_input_valueの値を４に更新し、変数current_cessation_maximum_input_valueの値を０にリセットする。
【００９３】
本発明の異なる実施形態は、一本の指、例えば親指から、複数の指、例えば４本の指および親指、または複数の人の手までの範囲にわたる、さまざまな人間の入力に最適化されている。所与の用途にどの実施形態が最もよく利用されるかは、制御を必要とする機能の全セットのサイズを適切な入力数だけでなく適切な総入力指の数にも合わせることによって決定される。これらのそれぞれは、意図された用途に従って変わるであろう。５つの入力を１つの人の指で制御することは可能であるが、それらの同じ５つの入力（適切に配置されている場合）が一致する５つの人の指によって制御されるときに使いやすさおよび操作の単純さが最大になる。一本の指の数字で複数の異なる入力を操作できるよりもはるかに簡単に１つの入力（ボタンなど）を操作できる。
【００９４】
本発明の１つの好ましい実施形態はスティックコントロール（Stick Control）であり、これは一本の指での制御に最適化されている。図２は、例示的なスティックコントロール２００の概略図である。スティックコントロールは従来のジョイスティックと同じに見えるが、本発明によるスティックコントロールの動きは、ジョイスティックの場合に通常そうであるように、いかなる外部方向入力にも関連しない。スティックコントロール入力は図２に示すように配置され番号付けされており、それぞれのマークされた値はユーザによってアクティベートされることができる入力を表している。
【００９５】
したがって、いくつかの好ましい実施形態では、基部とそこから延びる突出部とを含むヒューマンマシンインタフェース装置が提供され、突出部は、基部によって画定される軸に関して移動可能であり、複数の制御点を接続するために少なくとも１つのガイドによって画定される方向に移動可能である。ガイド経路内では、制御点は、制御対象デバイスに対する１つ以上の制御命令との対応を意図している。いくつかの好ましい実施形態では、突出部は、押圧による制御命令のアクティベーションを可能にするために押圧可能である。突出部は、人の指で操作することができる任意の適切な種類のものであり得る。いくつかの好ましい実施形態では、それは任意選択的にスティック、または細長いボタン、または概してジョイスティック形状である。
【００９６】
スティックコントロールを直交軸上で動かすことによって、ユーザは４つの外部入力２０１、２０２のうちのいずれか１つをアクティベートすることができる。追加の入力がアクチュエータ２０３の底部の中央に設けられ、押し下げることによってアクティベートされる。この追加の中心入力は、いくつかの実施形態では、前述の蓄積開始点および停止点をプロセッサに通知するためにユーザによって利用され得る。プロセッサが入力値を合計する簡単な例では、開始点と停止点との間にアクティベートされる４つの外部入力のいずれも、それらによって割り当てられた数値がプロセッサによって累積され、したがって結果として得られる計算された結合入力値に寄与する。
【００９７】
ガイド２０４は、スティックコントロールの下側で使用されて、入力間の容易な動きを制限し促進することができる。ガイドは、アクチュエータの動きを１組の所定の経路に制限するためのガイドチャネルを含み得る。アクチュエータを所望の入力に動かすことによって、ユーザはどの入力を作動させたいかを指示することができる。
【００９８】
本発明の別の好ましい実施形態はスライドコントロール（Slide Control）であり、これはタッチ入力を提供し、また一本の指での制御に最適化されている。図３は、スライドコントロール３００の概略図である。スライドコントロール入力は３０１で示され、図示のように配置され番号付けされ、各マーク付き値の下の領域は、ユーザによってアクティベートできる入力を表す。スライドコントロールは、太線３０２で示すように、ＨＭＩの表面に指や親指などを簡単に合わせることができるように、３面の壁を提供する。
【００９９】
したがって、いくつかの好ましい実施形態では、基部と、基部の周囲に配置されて人の指を案内する１つまたは複数のガイドとを含むヒューマンマシンインタフェース装置が提供される。基部の表面を指でスライド可能に係合させることによって入力がなされ、入力は制御対象デバイスに命令を送るのに使用可能である。いくつかの好ましい実施形態では、ガイドは、操作中に人の指が基部と接触したままになるようにガイドされるように、基部を実質的に取り囲む。いくつかの好ましい実施形態では、基部の１つまたは複数の領域は、そのような領域に関連する入力動作に対応する１つまたは複数の制御命令をユーザが識別することを可能にするようにマークされる。そのようなマーキングは、例えば溝、記号、エンボス加工などの任意の適切な手段によってもよい。
【０１００】
スライドコントロールは、ユーザが自分の指をスライドさせることができる滑らかな表面も提供する。単一の操作を実行するために複数の入力をアクティベートするには、ユーザは自分の指を希望の入力の１つに置き、次に希望の操作を完了するのに必要な他の入力にスライドする必要がある。複数の入力がアクティベートされると、アクティベートされた各入力に割り当てられた数値がプロセッサによって累積され、計算された結合入力値に反映される。
【０１０１】
与えられた操作を実行するために必要なスライド動作は、指示ツールとして入力の表面に表示することもできる。例えば、「操作１」を完了するには、ユーザは入力１を指でタッチしてから３０３を解放する前に入力２にスライドする必要がある。テキストと矢印の両方の位置と方向は、ラベル付きの操作を実行するために必要なすべての情報をユーザに提供する。
【０１０２】
本発明の別の好ましい実施形態は、１本または２本の指で使用するために最適化されているクワッドパッド（Quad Pad）である。図４ａおよび図４ｂは、クワッドパッド４００ａおよび４００ｂの概略図である。スライドコントロールと同様に、クワッドパッド入力は、４０１ａおよび４０１ｂで示され、図示のように配置および番号付けされ、各マーク付き値の下の領域は、ユーザによってアクティベートされ得る入力を表す。しかし、ユーザが蓄積したい入力上をスライドするタッチセンシティブ面を使用するのではなく、４パッドの任意の組み合わせを１本または２本の指で同時に押すことができるように配置された電気スイッチを代わりに使用する。同時に押された全ての入力はプロセッサによって累積され、計算された結果として得られる結合入力値に寄与する。
【０１０３】
したがって、いくつかの好ましい実施形態では、互いに近接して接触して配置された４つの押し下げ可能要素を備えるヒューマンマシンインタフェース装置が提供される。それによれば、所定の１つ以上の要素の押し下げ時に、制御可能なデバイスに対する命令に対応して入力が生成される。要素は複数の方法で配置することができ、図４ａおよび４ｂは２つの例を示す。図４ｂに示す実施形態は、１つ、２つ、または３つのボタンの組み合わせを単一の人の指で押すことを可能にするので有利である。
【０１０４】
クワッドパッドはまた、指示ツールとして入力の表面上のラベル付けを利用してもよい。例えば、「ＰＴＴ１」４０２ａおよび４０２ｂの入力１命令は、操作ＰＴＴ１をアクティベートするためにユーザが入力１（のみ）を押さなければならないことを示す（プッシュトーク１）。入力「３」と「４」にまたがる命令「フラッシュライト」４０３ａと４０３ｂは、操作「フラッシュライト」をアクティベートするためにユーザが入力３と４を同時に押さなければならないことを示す。
【０１０５】
本発明の別の好ましい実施形態は、本明細書ではＥ５デバイスと呼ばれる。Ｅ５が最適化される指の数は、どの入力セットが使用されているかによって異なる。プロセッサとコアエレクトロニクスはコントロールボックス（ＣＢ）にあり、入力は入力スイッチアセンブリ（ＩＳＡ）を介して提供される。ＣＢとＩＳＡはケーブルで物理的に接続されている。入力スイッチアセンブリをリモートに配置することにより、ユーザが望む入力数、入力をアクティブにするために使用する指の数、および入力が配置される場所に関して高度な柔軟性をユーザに提供する。
【０１０６】
図５は、ＩＳＡ構成の特定の一実施形態を示すＥ５ ５００の概略図である。この場合、ＩＳＡは３本の指での使用に最適化されている。この実施形態では、ＣＢ５０１はケーブル５０３によってＩＳＡ５０２に接続されている。ＩＳＡのこの特定の実施形態は３本の指に最適化されているので、３つの入力５０４を供給する。同時に押されたＥ５入力はすべてプロセッサによって累積される。計算された結合入力値に寄与する。
【０１０７】
本発明の別の好ましい実施形態は、本明細書ではＥ６装置と呼ばれる。E6は、武器の前面に取り付けられるように設計されているので、ユーザは手の各指に１つずつ、合計５つのアクセスしやすい入力を持つことができる。この実施形態によって提供される入力数の増加は、より多くの機能の総数を容易に制御することを可能にする。
【０１０８】
図６は、Ｅ６の例示的な実装形態の左右の図を示す概略図である。これは、左手で使用するためのものであり、親指で入力１を操作する操作部６０１と、人差し指、中指、薬指、および小指でそれぞれ入力２、３、４および５を操作する操作部６０２を含む。本発明の前述の実施形態のいずれよりも多くの適切に単純な入力の組み合わせを提供する。開示された他の実施形態と同様に、同時に押されたすべての入力はプロセッサによって累積され、計算された結果として得られる結合入力値に寄与する。
【０１０９】
図７は、本発明による無線３ボタンコントローラの一例の配線図７００である。重要な構成要素は、マイクロプロセッサ７０１、入力スイッチ７０２、および無線トランシーバ７０３である。
【０１１０】
図８は、本発明による有線３ボタンコントローラの一例の配線図８００である。重要な構成要素は、マイクロプロセッサ８０１、入力スイッチ８０２、およびデータバス・トランシーバ８０３である。
【０１１１】
図９は、本発明による３ボタンコントローラハウジング９００の一例の上面図である。このハウジングは、図７または８に記載された回路のいずれかを収容するのに適している。入力スイッチ１、２および３は、それぞれボタン９０１、９０２および９０３を押すことによってアクティベートされる。
【０１１２】
図１０は、例示的な無線３ボタンコントローラ配線図７００のプリント回路基板アセンブリ（ＰＣＢＡ）１０００を示す。マイクロプロセッサ１００１は、図７に示すように無線トランシーバ１００２に物理的に接続されている。入力スイッチは、ＰＣＢＡの反対側にあるので、７００では見えていない。
【０１１３】
図１１ａは、本発明による一例の１ボタンコントローラハウジング１１００ａの上面図である。単一の入力ボタンが１１０１ａに示されている。図１１ｂは、１１００ａ内に収容するのに適した１ボタンコントローラＰＣＢＡ１１００ｂを示す。構成要素１１０１ｂは、本発明のこの特定の実施形態に適した統合プロセッサを備えた無線送受信機である。唯一の入力スイッチは、ＰＣＢＡの反対側にあるため、１１００ｂでは見えていない。
【０１１４】
図１２は、本発明による３ボタンコントローラの処理フローを説明する一連のフローチャート１２００であり、３つの入力のバンド幅は、制御する電子デバイス（または電子デバイスのサブセット）の選択として入力の最初のアクティベーションと、そのデバイスを制御する機能の選択としての第２の入力アクティベーションとを処理することによって拡大される。フローチャート１２０１、１２０２および１２０３はそれぞれ、アクティベートされた最初の入力が入力１、２および３であるときに行われる処理を示している。
【０１１５】
図１３は、本発明による１ボタンコントローラの処理フローを説明する一連のフローチャート１３００であり、単一入力のバンド幅は、入力アクティベーションの数および／または持続時間を使用してプロセッサによって生成されるコマンドを決定することによって拡張される。フローチャート１３０１および１３０２はそれぞれ、アクティベートされた最初の入力が短押し（「ドット」）および長押し（「ダッシュ」）であるときに行われる処理を示している。
【０１１６】
用語集：
本技術の開示の目的のために、本技術の特定の形態において、以下の定義のうちの１つ以上のものを適用しうる。本技術の他の形態では、他の定義を適用しうる。
・アクティベート可能な物理的要素（Activatable physical element）：入力（動詞）を生成するためにユーザによってアクティベートされることが可能な、電気スイッチ、表面、または物理的領域。
・結合入力値（Combined input value）：任意の時点でユーザによってアクティベートされたすべてのＨＭＩ入力の合計値。いくつかの実施形態では、出力を生成するために、結合入力値がＨＭＩのプロセッサによって累積される。
・制御対象デバイス（Controlled device）：本発明によるＨＭＩシステムによって制御される少なくとも１つの機能を有するデバイス。
・コントローラ（Controller）：本発明によるＨＭＩシステムの構成要素であって、アクティベート可能な物理的要素と、制御対象デバイス上で出力機能を実行または起動することが可能な電子デバイス等の構成要素とを含む。
・デバイスコントローラ（Device controller）：本発明によるＨＭＩシステムの構成要素であって、コントローラから無線コマンドを受信し、接続された制御対象デバイス上でその出力命令を実行することができる電子デバイス等の構成要素を含む。
・Ｅ５デバイス：本発明による例示的なインタフェース。
・Ｅ６デバイス：本発明による例示的なインタフェース。
・要素（Element）：アクティベート可能な物理的要素。
・ＨＭＩ：コントローラ。
・ＨＭＩコントローラ：コントローラ。
・入力（名詞）：アクティベート可能な物理的要素。
・入力（動詞）：プロセスまたはシステムに与えられ演算される信号。
・待ち時間（Latency period）：本発明によるＨＭＩコントローラ上でアクティベートされる入力または入力のシーケンスと、対応する機能を実行する制御対象デバイスとの間の経過時間。
・物理的に接続（Physically connected）：直接の物理的接触、または、ケーブル、プラグおよびソケット、導電体等の任意の数の中間手段を介した間接的な接触、を介して互いに物理的に接触している構成要素。
・クワッドパッド（Quad Pad）：本発明による例示的なインタフェース。
・スライド可能に（Slidably）：表面にスライド可能に係合すること、すなわち、滑らかで連続的な接触を維持しながら表面上に触れて移動すること。
・スライドコントロール（Slide Control）：本発明による例示的なインタフェース。
・サブ入力（Sub-input）：入力（動詞）の構成要素。
・スティックコントロール（Stick Control）：本発明による例示的なインタフェース。
・無線コネクタ（Wireless connector）：デバイスコントローラの一種。
・無線接続（Wirelessly connected）：物理的には接続されていなくても相互にデータを転送できる構成要素は、無線接続されている。
【図１】
2019533237.tif 000004
【図２】
2019533237.tif 000005
【図３】
2019533237.tif 000006
【図４ａ】
2019533237.tif 000007
【図４ｂ】
2019533237.tif 000008
【図５】
2019533237.tif 000009
【図６】
2019533237.tif 000010
【図７】
2019533237.tif 000011
【図８】
2019533237.tif 000012
【図９】
2019533237.tif 000013
【図１０】
2019533237.tif 000014
【図１１ａ】
2019533237.tif 000015
【図１１ｂ】
2019533237.tif 000016
【図１２】
2019533237.tif 000017
【図１３】
2019533237.tif 000018
【手続補正書】
【提出日】令和1年5月21日(2019.5.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
デバイスを制御するためのヒューマンマシンインタフェースシステムであって、
デバイスコントローラと、
ヒューマンマシンインタフェースと、を有し、
前記ヒューマンマシンインタフェースは、
ハウジングと、
人の指でアクティベート可能な物理的な要素と、
前記要素と通信するプロセッサであって、前記要素からの入力を受信して処理するプロセッサと、
前記プロセッサからの出力を通信するための通信部とを有し、前記出力は、前記デバイスに対するコマンドを含み、
前記システムは、動きが検出されると前記デバイスコントローラがアクティブ状態に移行するように、前記プロセッサと通信する動きセンサを含む、ことを特徴とするヒューマンマシンインタフェースシステム。
【請求項２】
前記デバイスコントローラが前記動きセンサを有することを特徴とする請求項１に記載のシステム。
【請求項３】
前記ヒューマンマシンインタフェースが前記動きセンサを有することを特徴とする請求項１に記載のシステム。
【請求項４】
前記動きセンサは、アクティブセンサであり、任意選択で加速度計またはジャイロスコープであることを特徴とする請求項１に記載のシステム。
【請求項５】
前記動きセンサは、パッシブセンサであることを特徴とする請求項１に記載のシステム。
【請求項６】
前記センサと前記プロセッサとの間の物理的接続を有することを特徴とする請求項１に記載のシステム。
【請求項７】
前記センサと前記プロセッサとの間の無線接続を有することを特徴とする請求項１に記載のシステム。
【請求項８】
前記制御対象のデバイスとの物理的接続を有することを特徴とする請求項１に記載のシステム。
【請求項９】
前記制御対象のデバイスとの無線接続を有することを特徴とする請求項１に記載のシステム。
【請求項１０】
タイマを有し、動きがないまま所定時間が経過すると、前記デバイスコントローラは、自動的に非アクティブ状態に切り替わる、ことを特徴とする請求項１に記載のシステム。
【請求項１１】
タイマを有し、動きがないまま所定時間が経過すると、前記デバイスコントローラは、前記ＨＭＩコントローラからの無線コマンドを介して非アクティブ状態に切り替わる、ことを特徴とする請求項１に記載のシステム。
【請求項１２】
マイクロコントローラを有し、前記動きセンサは、前記マイクロコントローラの割り込み線とグラウンドとの間に電気的に接続されている、ことを特徴とする請求項１に記載のシステム。
【請求項１３】
ハウジング内で転動することができ、それによって移動に伴って電気的接続を開閉することができる、１つ以上の球形導電性物品を任意選択で有するメカニカル動きセンサを含むことを特徴とする請求項５に記載のシステム。
【請求項１４】
デバイスを無線で制御するためのヒューマンマシンインタフェースシステムであって、
ハウジングと、
人の指でアクティベート可能な物理的な要素と、
前記要素と通信するプロセッサであって、前記要素からの入力を受信して処理するプロセッサと、
前記プロセッサからの出力を通信するための無線通信部とを有し、前記出力は、前記デバイスに対するコマンドを含み、
前記要素、前記プロセッサ、および前記通信部は全て、前記ハウジングの周囲または内部に配置されているか、またはそれらに接続されている、ことを特徴とするヒューマンマシンインタフェースシステム。
【請求項１５】
コンピュータで実行される、デバイスを無線で制御するための方法であって、
人の指でアクティベート可能な要素から生じる入力を受信するステップと、
前記入力を処理して前記デバイスに対するコマンドを含む出力を決定する処理ステップと、
前記デバイスに前記出力を無線で通信するステップと、を有し、
前記処理ステップは、
前記入力から１つ以上のサブ入力を識別するステップと、
各サブ入力に対して別々の値を決定するステップと、
各サブ入力を数学的に処理して出力値を決定するステップと、
前記出力値から出力コマンドを識別するステップと、
を含むことを特徴とする方法。
【請求項１６】
前記無線通信は、Bluetooth（登録商標）、BLE、Z-Wave、NFC、RFID、SigFox、ANTまたはANT+のうちの１つ以上におけるものであることを特徴とする請求項１、７、９、１４、１５のうちのいずれか１項に記載のシステム。
【請求項１７】
前記コマンドは、データなしコマンドであり、任意選択でＭＯＦＥＴまたはリレーであるスイッチング要素を制御することを任意選択で有することを特徴とする請求項１、１４、１５のうちのいずれか１項に記載のシステムまたは方法。
【請求項１８】
前記ＨＭＩインタフェースは、（ａ）前記デバイスコントローラを制御するマスタとして、および、（ｂ）任意選択でソフトウェアまたはファームウェア構成を変更する目的で他のコンピュータまたはプロセッサとの接続中にスレーブとして、動作できることを特徴とする請求項１６に記載のシステム。
【請求項１９】
前記無線通信はBLEにおけるものであることを特徴とする請求項１６に記載のシステム。
【請求項２０】
各サブ入力に対する前記別々の値は、テーブルから決定されることを特徴とする請求項１５に記載の方法。
【請求項２１】
前記出力コマンドは、テーブルから決定されることを特徴とする請求項１５に記載の方法。
【請求項２２】
ｎ個のサブ入力に対する前記数学的な処理は、次式：
サブ入力１＋…＋サブ入力ｎ＝出力値
に従うものであることを特徴とする請求項１５に記載の方法。
【請求項２３】
時系列的に最初のサブ入力を処理して出力のサブセットを決定するステップと、
少なくとも１つの時系列的に後続するサブ入力を処理して出力値を決定するステップと、
を含むことを特徴とする請求項１５に記載の方法。
【請求項２４】
前記時系列的に後続するサブ入力は、所定の期間にわたって人の指でアクティベート可能な物理的要素のアクティベーションがないことを含むことを特徴とする請求項２３に記載の方法。
【請求項２５】
最初のサブ入力の時刻を記録するステップと、
前記最初のサブ入力から所定の経過時間値に達するまでの経過時間を監視するステップと、
前記所定の経過時間値の前に後続のサブ入力が受信されない場合、後続の入力がないことを所定の出力値として処理するステップと、
を有することを特徴とする請求項２４に記載の方法。
【請求項２６】
前記所定の経過時間値は、約２秒未満、任意選択で約１．５秒未満、任意選択で約１秒未満、任意選択で約０．５から１秒、任意選択で約０．５秒である、ことを特徴とする請求項２５に記載の方法。
【請求項２７】
前記第１の処理ステップは、制御する電子デバイスの選択を決定し、前記第２の処理ステップは、そのデバイスに対するコマンドを決定する、ことを特徴とする請求項２３に記載の方法。
【請求項２８】
無線装置を含むヒューマンマシンインタフェースシステムの電力消費を低減させるための、コンピュータで実現される方法であって、
クロノロジカル装置からのデータ入力を受信するステップと、
所定のクロノロジカル期間が経過したことを示すデータを受信すると、前記無線装置のアクティブリスニングレートを所定のレベルまで下げるように無線チップセットに命令を送信するステップと、
動きの発生を示す、動き検知デバイスからのデータ入力を受信するステップと、
前記アクティブリスニングレートを所定のレベルまで上げるように前記無線チップセットに命令を送信するステップと、
を有することを特徴とする方法。
【国際調査報告】
2019533237.tif 000019
2019533237.tif 000020
2019533237.tif 000021
2019533237.tif 000022
2019533237.tif 000023