IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ コードテック ピーティーワイ エルティーディーの特許一覧

特許7162396ヒューマンマシンインタフェースシステム
<>
  • 特許-ヒューマンマシンインタフェースシステム 図1
  • 特許-ヒューマンマシンインタフェースシステム 図2
  • 特許-ヒューマンマシンインタフェースシステム 図3
  • 特許-ヒューマンマシンインタフェースシステム 図4a
  • 特許-ヒューマンマシンインタフェースシステム 図4b
  • 特許-ヒューマンマシンインタフェースシステム 図5
  • 特許-ヒューマンマシンインタフェースシステム 図6
  • 特許-ヒューマンマシンインタフェースシステム 図7
  • 特許-ヒューマンマシンインタフェースシステム 図8
  • 特許-ヒューマンマシンインタフェースシステム 図9
  • 特許-ヒューマンマシンインタフェースシステム 図10
  • 特許-ヒューマンマシンインタフェースシステム 図11a
  • 特許-ヒューマンマシンインタフェースシステム 図11b
  • 特許-ヒューマンマシンインタフェースシステム 図12
  • 特許-ヒューマンマシンインタフェースシステム 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-10-20
(45)【発行日】2022-10-28
(54)【発明の名称】ヒューマンマシンインタフェースシステム
(51)【国際特許分類】
   G06F 3/02 20060101AFI20221021BHJP
【FI】
G06F3/02 Z
【請求項の数】 17
(21)【出願番号】P 2019515532
(86)(22)【出願日】2017-09-25
(65)【公表番号】
(43)【公表日】2019-11-14
(86)【国際出願番号】 AU2017051040
(87)【国際公開番号】W WO2018053599
(87)【国際公開日】2018-03-29
【審査請求日】2020-09-24
(31)【優先権主張番号】2016903879
(32)【優先日】2016-09-25
(33)【優先権主張国・地域又は機関】AU
【前置審査】
(73)【特許権者】
【識別番号】519039467
【氏名又は名称】コードテック ピーティーワイ エルティーディー
【氏名又は名称原語表記】KordTech Pty Ltd
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】マクドナルド, ブルース
(72)【発明者】
【氏名】ベッチャー, ウィリアム
【審査官】塩屋 雅弘
(56)【参考文献】
【文献】米国特許出願公開第2008/0126975(US,A1)
【文献】国際公開第2014/043758(WO,A1)
【文献】特開2006-311252(JP,A)
【文献】特開2015-228062(JP,A)
【文献】特開2010-015598(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F3/01-3/04895
(57)【特許請求の範囲】
【請求項1】
デバイスを無線で制御するためのヒューマンマシンインタフェースシステムであって、
それぞれに固有の入力値が割り当てられた、人の指によって押される複数の物理的なボタンと、
前記複数の物理的なボタンと通信するプロセッサであって、前記複数の物理的なボタンからの入力値を受信し処理するプロセッサと、
前記プロセッサに接続されたメモリと、
前記プロセッサから出力された前記デバイスに向けられたコマンドを通信する、コミュニケータと、
を有し、
前記プロセッサは、
(a)前記複数の物理的なボタンのうちの1つ以上のボタンがアクティベートまたはディアクティベートされた場合に、前記複数の物理的なボタンそれぞれの入力値の累積値である結合入力値を求め、
(b)結合入力値のシーケンスとコマンドとの予め定められた対応関係が記述されたルックアップテーブルから、前記合入力値マッチするエントリが見つけられた場合、該エントリに対応するコマンドを、前記対応関係に従って出力
(c)前記ルックアップテーブルに前記結合入力値にマッチするエントリがない場合、前記メモリにおける、前記ルックアップテーブルの全エントリのうちの結合入力値のシーケンスの要素数の最大値に応じた数の過去の結合入力値を順に記憶するために確保された領域に、前記結合入力値を開始点における結合入力値として格納し、
前記工程(c)の後、
(d)前記複数の物理的なボタンのうちの1つ以上のボタンがアクティベートまたはディアクティベートされた場合に、前記複数の物理的なボタンそれぞれの入力値の累積値である最新の結合入力値を求め、
(e)前記ルックアップテーブルに前記メモリの前記領域に格納されている前記開始点以降の結合入力値と前記最新の結合入力値とのシーケンスにマッチするエントリがない場合、前記メモリの前記領域に前記最新の結合入力値を過去の結合入力値として格納し、
(f)前記ルックアップテーブルから前記メモリの前記領域に格納されている前記開始点以降の結合入力値と最新の結合入力値とのシーケンスにマッチするエントリが見つけられるまで、前記工程(d)および(e)を繰り返し、前記ルックアップテーブルから前記メモリの前記領域に格納されている前記開始点以降の結合入力値と最新の結合入力値とのシーケンスにマッチするエントリが見つけられた場合、該エントリに対応するコマンドを出力する、ように構成されている、
ことを特徴とするヒューマンマシンインタフェースシステム。
【請求項2】
前記複数の物理的なボタン、前記プロセッサ、前記メモリ、および前記コミュニケータがすべて配置されるハウジングを更に有する、ことを特徴とする請求項1に記載のヒューマンマシンインタフェースシステム。
【請求項3】
前記コミュニケータは、無線で、または物理ケーブルを介して、通信する、ことを特徴とする請求項1に記載のヒューマンマシンインタフェースシステム。
【請求項4】
前記無線による通信は、Bluetooth(登録商標)、BLE、Z-Wave(登録商標)、NFC、RFID、SigFox(登録商標)、ANT(登録商標)またはANT+(登録商標)のうちの1つ以上を用いて行われ、前記コマンドは、MOSFETまたはリレーデバイスを備えるスイッチング構成要素を制御するための制御情報を含む非データコマンドである、ことを特徴とする請求項3に記載のヒューマンマシンインタフェースシステム。
【請求項5】
前記ヒューマンマシンインタフェースシステムは、(a)前記デバイスを制御するためのマスタ、および、(b)ソフトウェアまたはファームウェアコンフィグレーションを修正するための別のコンピュータまたはプロセッサへの接続中のスレーブとして動作する、ことを特徴とする請求項1に記載のヒューマンマシンインタフェースシステム。
【請求項6】
コンピュータによって実行される、デバイスを無線で制御する方法であって、
前記コンピュータのプロセッサが、
(a)それぞれに固有の入力値が割り当てられた、人の指によって押されることが可能な複数の物理的なボタンのうちの1つ以上のボタンがアクティベートまたはディアクティベートされた場合に、前記複数の物理的なボタンそれぞれの入力値の累積値である結合入力値を求めるステップと、
(b)結合入力値のシーケンスとコマンドとの予め定められた対応関係が記述されたルックアップテーブルから、前記合入力値マッチするエントリが見つけられた場合、該エントリに対応するコマンドを、前記対応関係に従って、コミュニケータを用いて前記デバイスに無線で通信するステップと、
(c)前記ルックアップテーブルに前記結合入力値にマッチするエントリがない場合、前記ルックアップテーブルの全エントリのうちの結合入力値のシーケンスの要素数の最大値に応じた数の過去の結合入力値を順に記憶するための領域が確保されたメモリに、前記結合入力値を開始点における結合入力値として格納するステップと、
前記ステップ(c)の後、
(d)前記複数の物理的なボタンのうちの1つ以上のボタンがアクティベートまたはディアクティベートされた場合に、前記複数の物理的なボタンそれぞれの入力値の累積値である最新の結合入力値を求めるステップと、
(e)前記ルックアップテーブルに前記メモリの前記領域に格納されている前記開始点以降の結合入力値と前記最新の結合入力値とのシーケンスにマッチするエントリがない場合、前記メモリの前記領域に前記最新の結合入力値を過去の結合入力値として格納し、
(f)前記ルックアップテーブルから前記メモリの前記領域に格納されている前記開始点以降の結合入力値と最新の結合入力値とのシーケンスにマッチするエントリが見つけられるまで、前記ステップ(d)および(f)を繰り返し、前記ルックアップテーブルから前記メモリの前記領域に格納されている前記開始点以降の結合入力値と最新の結合入力値とのシーケンスにマッチするエントリが見つけられた場合、該エントリに対応するコマンドを前記コミュニケータを用いて前記デバイスに無線で通信するステップと、
を有することを特徴とする方法。
【請求項7】
前記無線による通信は、Bluetooth(登録商標)、BLE、Z-Wave(登録商標)、NFC、RFID、SigFox(登録商標)、ANT(登録商標)またはANT+(登録商標)のうちの1つ以上を用いて行われ、前記コマンドは、MOSFETまたはリレーデバイスを備えるスイッチング構成要素を制御するための制御情報を含む非データコマンドである、ことを特徴とする請求項6に記載の方法。
【請求項8】
前記コミュニケータは、物理ケーブルを介して前記デバイスと通信する、ことを特徴とする請求項6に記載の方法。
【請求項9】
時系列的に連続する第1および第2の入力値を処理して、結合入力値のサブセットを決定するステップと、
少なくとも1つの時系列的に連続する入力値を処理して、後続する結合入力値を決定するステップと、
を更に有することを特徴とする請求項6に記載の方法。
【請求項10】
前記時系列的に連続する第1および第2の入力値は、前記複数の物理的なボタンのうちの1つの前記人の指による所定期間にわたるアクティベーションがないことを含む、ことを特徴とする請求項9に記載の方法。
【請求項11】
第1の処理ステップは、制御する電子デバイスの選択を決定し、第2の処理ステップは、該デバイスに対するコマンドを決定する、ことを特徴とする請求項9に記載の方法。
【請求項12】
第1のサブ入力の時間を記録するステップと、
前記第1のサブ入力から所定の経過時間値に達するまでの経過時間を監視するステップと、
前記所定の経過時間値より前に後続のサブ入力が受信されない場合、後続の入力がないことを所定の入力値として処理するステップと、
を更に有することを特徴とする請求項11に記載の方法。
【請求項13】
前記所定の経過時間値は、約2秒未満、約1.5秒未満、約1秒未満、任意選択で約0.5から1秒、または、約0.5秒である、ことを特徴とする請求項12に記載の方法。
【請求項14】
デバイスを制御するためのヒューマンマシンインタフェースシステムであって、
ヒューマンマシンインタフェースと、
前記ヒューマンマシンインタフェースと通信して前記デバイス上でコマンドを実行するデバイスコントローラと、を有し、
前記ヒューマンマシンインタフェースは、
ハウジングと、
それぞれに固有の入力値が割り当てられた、複数の押下可能な物理的なボタンと、
前記複数の押下可能な物理的なボタンと通信し、前記複数の押下可能な物理的なボタンらの入力を受信し処理するプロセッサと、
前記プロセッサに接続されたメモリと、
前記プロセッサからの出力を通信するように構成されたコミュニケータと、を含み、ここで、前記出力は、前記デバイスに向けられたコマンドを含み、
前記プロセッサは、
(a)前記複数の押下可能な物理的なボタンのうちの1つ以上のボタンがアクティベートまたはディアクティベートされた場合に、前記複数の押下可能な物理的なボタンそれぞれの入力値の累積値である結合入力値を求め、
(b)結合入力値のシーケンスとコマンドとの予め定められた対応関係が記述されたルックアップテーブルから、前記合入力値マッチするエントリが見つけられた場合、該エントリに対応するコマンドを、前記対応関係に従って出力
(c)前記ルックアップテーブルに前記結合入力値にマッチするエントリがない場合、前記メモリにおける、前記ルックアップテーブルの全エントリのうちの結合入力値のシーケンスの要素数の最大値に応じた数の過去の結合入力値を順に記憶するために確保された領域に、前記結合入力値を開始点における結合入力値として格納し、
前記工程(c)の後、
(d)前記複数の押下可能な物理的なボタンのうちの1つ以上のボタンがアクティベートまたはディアクティベートされた場合に、前記複数の押下可能な物理的なボタンそれぞれの入力値の累積値である最新の結合入力値を求め、
(e)前記ルックアップテーブルに前記メモリの前記領域に格納されている前記開始点以降の結合入力値と前記最新の結合入力値とのシーケンスにマッチするエントリがない場合、前記メモリの前記領域に前記最新の結合入力値を過去の結合入力値として格納し、
(f)前記ルックアップテーブルから前記メモリの前記領域に格納されている前記開始点以降の結合入力値と最新の結合入力値とのシーケンスにマッチするエントリが見つけられるまで、前記工程(d)および(e)を繰り返し、前記ルックアップテーブルから前記メモリの前記領域に格納されている前記開始点以降の結合入力値と最新の結合入力値とのシーケンスにマッチするエントリが見つけられた場合、該エントリに対応するコマンドを出力する、ように構成されている、
ことを特徴とするヒューマンマシンインタフェースシステム。
【請求項15】
前記複数の押下可能な物理的なボタンは、それぞれが人間の手の5本の指のうちの特定の指によって押下されるよう前記ハウジングに配置されている
ことを特徴とする請求項14に記載のヒューマンマシンインタフェースシステム。
【請求項16】
前記複数の押下可能な物理的なボタン、前記プロセッサ、前記メモリ、および前記コミュニケータはすべて、前記ハウジングの周りに配置されるか、前記ハウジングの内部に配置されるか、または、前記ハウジングに接続される、ことを特徴とする請求項14に記載のヒューマンマシンインタフェースシステム。
【請求項17】
前記コミュニケータは、無線で、または物理ケーブルを介して、通信する、ことを特徴とする請求項14に記載のヒューマンマシンインタフェースシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ヒューマンマシンインタフェースシステムに関する。
【背景技術】
【0002】
緊急サービス、警察および軍関係者は通常、それぞれ異なるユーザインタフェースを有する、さまざまな電子デバイス、ガジェットおよび/または機器を携帯している。例としては、ラジオ、フラッシュライト、レーザー指示装置、熱兵器照準器(TWS)、全地球測位システム(GPS)、赤外線スコープ、コンピュータ端末などが挙げられる。とりわけ操作上の肉体的および認知的負荷が高い極端な状況(例えば戦闘または緊急インシデント)において、複数の異なるユーザインタフェースに熟達し操作する必要性は難しい問題である。特に、異なるユーザインタフェース間での切り替え中に、操作者の認知意識の喪失は致命的なリスクとなりうる。建設労働者、現場技術者、測量士、熟練工などを含む、他の分野の作業員も、簡単な操作を必要とする複数の電子デバイスを持ち運ぶようになっている。
【0003】
前述の要件を満たすために、さまざまな異なるコントロールおよびインタフェースを1つの同種かつ一貫したインタフェースにまとめる方法および装置が必要である。さらに、少ない機能を制御することが必要でしかない場合には、適切で単純な少ない数の入力の組み合わせのインタフェースが利用され、一方、より多くの機能を制御する必要がある場合には、適切で単純な多い数の入力の組み合わせの高いバンド幅のインタフェースが提供されるように、インタフェースのバンド幅がスケーラブルである必要がある。
【0004】
ユーザの入力を増やすだけでインタフェースのバンド幅を常に増やすことができるが、入力の数を増やすと、物理サイズ、操作に必要な指の数または操作に関連付けられている認知負荷、の少なくともいずれか1つの、インタフェースの特性に対応する増加が常に生じる。前述したように、戦闘や緊急事態で誘発される認知的負荷を減らすことは重要である。さらに、サービス兵器に装着される制御インタフェースのような用途に対しては、装着に利用可能なスペースおよび操作に利用可能な指の数の両方が非常に重要である。
【0005】
無線プロトコルを使用して、特定の危険な環境または機密性の高い環境で機器を操作することには、以前から懸念があった。例えば、ミリタリーユーザは、装置の無線アクティベーションにより、装着者が敵によって検出されたり、即席爆発装置(IED)などの爆発装置を起動したり、または、敵によって妨害されたり制御されたりする可能性がある。他には、例えば既に大きな電磁放射負荷を有する可能性がある敏感な環境における無線制御の信頼性が懸念されてきた。さらに、無線通信ハードウェアは、制御対象デバイスがコントローラからの信号を定期的にチェックしなければならないので、物理的に接続されたハードウェアよりも多くの電力を消費する。その結果、そのような環境における装置の無線作動は、価値がない、困難すぎる、または危険すぎると考えられてきた。
【0006】
したがって、操作に必要な指の数、電力消費、物理的サイズ、および操作に関連する認知的負荷などの重要な要素を損なうことなく、入力バンド幅を容易に拡大できる柔軟なユーザインタフェースが必要とされている。
【発明の概要】
【0007】
本発明の第1の側面によれば、デバイスを制御するためのヒューマンマシンインタフェースシステムであって、ハウジングと、人の指でアクティベート可能な物理的な要素と、前記要素と通信するプロセッサであって、前記要素からの入力を受信して処理するプロセッサと、前記プロセッサからの出力を通信するための通信部とを有し、前記出力は、前記デバイスに対するコマンドを含み、前記要素、前記プロセッサ、および前記通信部は全て、前記ハウジングの周囲または内部に配置されているか、またはそれらに接続されている、ことを特徴とするヒューマンマシンインタフェースシステムが提供される。いくつかの好ましい実施形態では、前記要素、前記プロセッサ、および前記通信部は全て、前記ハウジングの周囲または内部に配置されている。いくつかの実施形態では、前記装置はハウジングに物理的に接続されているが、いくつかの実施形態では装置はそうではない。
【0008】
本発明の別の態様においては、コンピュータで実行される、デバイスを制御するための方法であって、人の指でアクティベート可能な要素から生じる入力を受信するステップと、前記入力を処理して前記デバイスに対するコマンドを含む出力を決定する処理ステップと、前記デバイスに前記出力を通信するステップと、を有し、前記処理ステップは、前記入力から1つ以上のサブ入力を識別するステップと、各サブ入力に対して別々の値を決定するステップと、各サブ入力を数学的に処理して出力値を決定するステップと、前記出力値から出力コマンドを識別するステップと、を含むことを特徴とする方法が提供される。いくつかの好ましい実施形態では、各サブ入力に対する前記別々の値はテーブルから決定され、いくつかの好ましい実施形態では、前記出力コマンドはテーブルから決定される。
【0009】
本発明による方法は、n個のサブ入力に対する、次式:
サブ入力1+…+サブ入力n=出力値
に従う数学的な処理を含みうる。
【0010】
いくつかの実施形態では、本発明の方法は、時系列的に最初のサブ入力を処理して出力のサブセットを決定するステップと、少なくとも1つの時系列的に後続するサブ入力を処理して出力値を決定するステップと、を含む。いくつかの好ましい実施形態では、前記時系列的に後続するサブ入力は、所定の期間にわたって人の指でアクティベート可能な物理的要素のアクティベーションがないことを含む。いくつかの実施形態では、本発明の方法は、最初のサブ入力の時刻を記録するステップと、前記最初のサブ入力から所定の経過時間値に達するまでの経過時間を監視するステップと、前記所定の経過時間値の前に後続のサブ入力が受信されない場合、後続の入力がないことを所定の出力値として処理するステップと、を有しうる。前記所定の経過時間値は、当面の目的のために実行可能な任意の適切な値であり得る。例えば、迅速な対応のために設計された実施形態(軍事要員用など)では、より短い時間、例えば約1秒以下、好ましくは0.5秒以下が必要とされ得る。通常、この実施形態による所定の出力値は、制御対象デバイスに対してデフォルト設定または最も一般的に使用される設定に対応し、通常、これはユーザにとって危険を引き起こさない設定である。例えば、全体の入力が中断されても最初の入力が1つの入力に対応するように、サブ入力を追加しているときにユーザがミスをしたり気を散らせたりした場合、その入力に対応する出力は安全である。例えば、軍関係者は、そのような入力ファンクションを通してトーチをオンにしないことを選ぶかもしれない。典型的には、そのような実施形態では、前記所定の経過時間値は、約2秒未満、任意選択で約1.5秒未満、任意選択で約1秒未満、任意選択で約0.5から1秒、任意選択で約0.5秒である。
【0011】
本発明のこの実施形態のいくつかの実装形態では、前記第1の処理ステップは、制御する電子デバイスの選択を決定し、前記第2の処理ステップは、そのデバイスに対するコマンドを決定する。
【0012】
本発明の別の態様においては、基部と、該基部から延びる突出部とを含み、前記突出部は、前記基部によって画定される軸に関して移動可能であり、少なくとも1つのガイドによって画定される方向に移動してガイド経路内の複数の制御点を接続することが可能であり、前記複数の制御点は、制御対象デバイスに対する1つ以上の制御命令に対応することが意図されていることを特徴とするヒューマンマシンインタフェース装置が提供される。
【0013】
本発明の他の態様においては、基部と、人の指を案内するように前記基部の周囲に配置された1つ以上のガイドとを含み、前記基部は、指で該基部の表面をスライド可能に係合することによって人の指に入力を行わせる導電性要素を含み、前記入力は、制御対象デバイスに対する命令を送信するために使用されうるものである、ことを特徴とするヒューマンマシンインタフェース装置が提供される。
【0014】
本発明はまた、隣と接触するよう近接配置された複数のアクティベート可能な要素を有し、所定の1つ以上の要素が押されると、制御可能なデバイスに対する命令に対応して入力が生成される、ことを特徴とするヒューマンマシンインタフェース装置を提供する。
【0015】
別の態様においては、本発明は、デバイスコントローラに無線接続されたヒューマンマシンインタフェースを有し、前記デバイスコントローラは、無線トランシーバと、プロセッサに物理的に接続されたパッシブ動きセンサとを含み、動きが検出されると、前記デバイスコントローラがアクティブ状態に切り替わる、ことを特徴とするヒューマンマシンインタフェースシステムを提供する。いくつかの実施形態は、タイマを有し、前記デバイスコントローラは、動きがないまま所定時間が経過すると自動的に非アクティブ状態に切り替わる。いくつかの実施形態は、タイマを有し、動きがないまま所定時間が経過すると、前記デバイスコントローラは、前記HMIコントローラからの無線コマンドを介して非アクティブ状態に切り替わる。
【0016】
本発明のこの態様のいくつかの実施形態では、マイクロコントローラを有し、前記動きセンサは、前記マイクロコントローラの割り込み線とグランドとの間に電子的に接続されているシステムが提供される。いくつかの実施形態は、ハウジング内で転動することができ、それによって移動に伴って電気的接続を開閉することができる、1つ以上の球形導電性物品を任意選択で有するメカニカル動きセンサを含む。
【0017】
本発明の別の態様においては、無線装置を含むヒューマンマシンインタフェースシステムの電力消費を低減させるための、コンピュータで実現される方法であって、クロノロジカル装置からのデータ入力を受信するステップと、所定のクロノロジカル期間が経過したことを示すデータを受信すると、前記無線装置のアクティブリスニングレートを所定のレベルまで下げるように無線チップセットに命令を送信するステップと、動きの発生を示す、動き検知デバイスからのデータ入力を受信するステップと、前記アクティブリスニングレートを所定のレベルまで上げるように前記無線チップセットに命令を送信するステップと、を有することを特徴とする方法が提供される。
【図面の簡単な説明】
【0018】
図1】本発明によるヒューマンマシンインタフェースの一例の概略図である。
図2】本明細書でスティックコントロールと呼ばれる、本発明による例示的なインタフェースの概略図である。
図3】本明細書においてスライドコントロールと呼ばれる、本発明による例示的なインタフェースの概略図である。
図4a】本明細書ではクワッドパッドと呼ばれる、本発明による例示のインタフェースの概略図である。
図4b】本明細書ではクワッドパッドと呼ばれる、本発明による例示のインタフェースの概略図である。
図5】本明細書ではE5デバイスと呼ばれる、本発明による例示的なインタフェースの概略図である。
図6】本明細書ではE6デバイスと呼ばれる、武器入力コントロールに関連する例示的な実施形態のレフトビューおよびライトビューを示す概略図である。
図7】入力用の3つのスイッチ、Bluetooth BLE無線チップセットおよびマイクロプロセッサを含む、本発明による無線コントローラの例示的な実施形態の例示的な回路配線図である。
図8】入力用の3つのスイッチと、RS232データバス・トランシーバと、マイクロプロセッサとを備える本発明によるケーブル接続コントローラの例示的な実施形態の例示的な回路配線図である。
図9】本発明による3ボタンコントローラの一例の上面図である。
図10】入力スイッチ、マイクロプロセッサ、およびBLE無線トランシーバを備える、本発明によるコントローラ用の例示的なプリント回路基板アセンブリ(PCBA)を示す。
図11a】本発明の単一ボタンの実施形態およびそのような実施形態のためのPCBAの一例を示す。
図11b】本発明の単一ボタンの実施形態およびそのような実施形態のためのPCBAの一例を示す。
図12】本発明に従って3ボタンコントローラのバンド幅をどのように拡張できるかを表す一連のフローチャートである。
図13】本発明に従ってワンボタンコントローラのバンド幅をどのように拡張できるかを表す一連のフローチャートである。
【発明を実施するための形態】
【0019】
本明細書において特に好ましい実施形態に関して本発明を説明することは便利である。しかし、本発明は広範囲の状況に適用可能であり、他の構成および配置もまた本発明の範囲内にあるとみなされることを理解されたい。本明細書に記載された構成および配置に対するさまざまな修正、変更、変形および/または追加もまた、本発明の範囲および範囲内に含まれるとみなされる。
【0020】
本発明によるインタフェースは、単純化された制御装置から操作されることが望まれる電子デバイスの任意の適切な制御機能と共に使用されうる。例えば、それは、フラッシュライト、無線機、追跡システム、緊急信号またはビーコン、照準装置、コンピュータ、無人車両、武器などを操作することができる。
【0021】
本発明の一態様によれば、1つまたは複数のデータバス制御装置、導電体によって接続されていない装置、スイッチ負荷装置またはコンピュータのうちの1つまたは複数を任意選択で含む、電子デバイスの制御のためのHMIが提供される。インタフェースの入力は、一本の指から複数の指の数に容易に拡張できる。
【0022】
本発明の一態様によれば、電子デバイスを制御するための人の指で操作可能ヒューマンマシンインタフェース(HMI)が提供され、インタフェースの入力は1ないし複数の人の指に対して容易にスケーラブルである。
【0023】
電子デバイスは、簡略化された操作が望ましい任意の装置を任意に含み得る。いくつかの好ましい実施形態では、それは、データバス制御装置、導電体によって接続されていない装置、スイッチ負荷装置、またはコンピュータのうちの1つまたは複数を備える。本発明による装置を操作するために任意の適切な人の指を使用することができる。いくつかの実施形態では、本明細書で使用される「指(digit)」という用語は、任意の適切な人間の付属物、例えば、指、親指、手、肘、つま先、足、膝、頭または指、舌のうちの1つ以上を含み得る。
【0024】
本発明によるインタフェースの入力バンド幅のスケーラビリティは、さまざまな方法で達成することができる。本発明によるHMIは、1つまたは複数の電気スイッチまたは入力領域(本明細書では「入力(inputs)」、「要素(elements)」または「アクティベート可能な物理的要素(activatable physical elements)」と呼ばれる)のアクティベーションに基づいて1つまたは複数の電子デバイスの制御機能を実行するように構成可能なプロセッサを含み得る。制御機能を引き起こすコマンドに到達するために、このようにして生成された入力信号にプロセッサによってさまざまなアルゴリズム的なまたは他の動作が適用され得る。例えば、いくつかの好ましい実施形態は、複数の入力(複数のボタンまたはスライド可能な入力面、またはスティックコントロール(Stick Control)、またはスライドコントロール(Slide Control)、またはクワッドパッド(Quad Pad)など)と、各別々の入力を介したHMIへのユーザ入力とを含む。そして、ユーザによって起動されたすべての入力の結合された数値(本明細書では「結合入力値(combined input value)」と呼ばれる)が、コマンドを生成するためにプロセッサによって独立して累積される。
【0025】
いくつかの実施形態では、限られた数(例えば3つ)の入力しか提供されないが、これらの限られた入力のバンド幅は、どの電子デバイス(または電子デバイスのサブセット)を制御するかの選択である入力の第1アクティベーションおよびそのデバイス上でどの機能を制御するかの選択である入力の第2アクティベーションを処理することによって拡大される。そのような実施形態の例示的な処理フローは、以下の箇条書きで概説される。この同じ処理フローが図12に記載されており、フローチャート1201、1202および1203はそれぞれ入力1、2および3で始まる入力シーケンスの論理フローを説明している。
【0026】
●入力1がアクティベートされてからディアクティベートされた場合、以下のようにイルミネータ機能を制御:
○入力1がアクティベートされると、ディアクティベートされるまでフラッシュライトをオン。
○次に入力2がアクティベートされると、ディアクティベートされるまでフラッシュライトをオン/オフ点滅。
○その後入力3がアクティベートされると、ディアクティベートされるまでレーザをオン。
●入力2がアクティベートされてからディアクティベートされた場合は、次のようにTWS機能を制御:
○入力1がアクティベートされてからディアクティベートされると、熱兵器照準器のオン/オフを切り替え。
○その後入力2がアクティベートされてからディアクティベートされると、ブラックホット/ホワイトホット極性を切り替え。
○その後入力3がアクティベートされてからディアクティベートされると、ゲインを切り替え。
●入力3がアクティベートされてからディアクティベートされた場合は、次のようにハンズフリー無線機能を制御:
○入力1がアクティベートされると、ディアクティベートされるまでプッシュトーク(PTT)をオン。
○次に入力2がアクティベートされてからディアクティベートされると、ボリュームを変更。
○その後入力3がアクティベートされてからディアクティベートされると、チャネルを変更。
【0027】
コントローラのプロセッサの観点からは、これと同じ処理フローは、次のように記述される。
【0028】
●コントローラプロセッサは、ユーザによる入力1のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、ユーザによる入力1のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力1の(再)アクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素(MOSFETまたはリレーなど)を制御する出力ラインを反転させ、それによって物理的に接続されたフラッシュライト電力回路を閉にしてフラッシュライトをオン。
○コントローラプロセッサは、ユーザによる入力1のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによってフラッシュライト電源回路を開にして、フラッシュライトをオフ。
○または:
○コントローラプロセッサは、ユーザによる入力2のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素(MOSFETまたはリレーなど)を制御する出力ラインの状態を連続的に反転させ、それによって物理的に接続されたフラッシュライト電力回路を開閉し、フラッシュライトを点滅させる。
○コントローラプロセッサは、ユーザによる入力2のディアクティベーションに対応する入力を受け取る。
○フラッシュライトの電源回路が現在開である場合、コントローラプロセッサは何もしない。
○フラッシュライトの電源回路が現在閉である場合、コントローラプロセッサはスイッチング要素を制御する出力ラインを反転させ、それによってフラッシュライトの電源回路を開にし、フラッシュライトをオフ。
○または:
○コントローラプロセッサは、ユーザによる入力3のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素(MOSFETまたはリレーなど)を制御する出力ラインを反転させ、それによって物理的に接続されたレーザパワー回路を閉にしてレーザをオン。
○コントローラプロセッサは、ユーザによる入力3のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによってレーザパワー回路を開にしてレーザをオフ。
●または:
●コントローラプロセッサは、ユーザによる入力2のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、ユーザによる入力2のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力1のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力1のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ローカル不揮発性メモリ(NVRAM)に格納されたTWS「オン/オフ切り替え」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のTWSの両方に物理的に接続されているデータバス・トランシーバ(例えばRS232)に書き込む。
○または:
○コントローラプロセッサは、ユーザによる入力2の(再)アクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザの入力2のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、NVRAMに格納されているTWS「極性切り替え」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のTWSの両方に物理的に接続されているデータバス・トランシーバに書き込む。
○または:
○コントローラプロセッサは、ユーザによる入力3のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力3のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、NVRAMに格納されているTWS「ゲイン切り替え」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のTWSの両方に物理的に接続されているデータバストランシーバに書き込む。
●または:
●コントローラプロセッサは、ユーザによる入力3のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、ユーザによる入力3のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力1のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ハンズフリー無線機のPTT回線に物理的に接続されている出力ラインを電気的なグラウンドに引き、それによって無線機のPTT機能をオン。
○コントローラプロセッサは、ユーザによる入力1のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ハンズフリー無線機のPTT回線に物理的に接続されている出力ラインを回路供給電圧(Vcc)に引き戻し、それによって無線機のPTT機能をオフ。
○または:
○コントローラプロセッサは、ユーザによる入力2のアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力2のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、NVRAMに格納されているハンズフリー無線機の「ボリューム変更」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のハンズフリー無線機の両方に物理的に接続されたデータバス・トランシーバに書き込む。
○または:
○コントローラプロセッサは、ユーザによる入力3の(再)アクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、ユーザによる入力3のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、NVRAMに格納されているハンズフリー無線機の「チャネル変更」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象のハンズフリー無線機の両方に物理的に接続されているデータバストランシーバに書き込む。
【0029】
いくつかの実施形態では、単一の入力のみが提供され、該入力のアクティベーションの回数および/または持続時間によって、プロセッサによって生成されるコマンドが決定される。一例として、モールス符号と同様の符号を使用して、例えば、ドット(短期入力)とその直後に続くダッシュ(長期入力)でフラッシュライトの点灯、単独のダッシュでハンズフリー無線機のPTT機能の作動、とすることができる。この処理フローの概要を以下に示す。そのような実施形態の例示的な処理フローを、以下の箇条書きで概説する。これと同じ処理フローが図13に記載されており、フローチャート1301および1302はそれぞれドットおよびダッシュで始まる入力シーケンスに対する論理フローを記載している。
【0030】
●最初の入力がドットの場合:
○500ms以内にドットが続く場合は、フラッシュライトをオン。
○500ms以内にダッシュが続く場合は、フラッシュライトをオフ。
○入力がないまま500msが経過した場合、レーザをオン。
●最初の入力がダッシュの場合:
○500ms以内にドットが続く場合は、無線ボリュームを変更。
○500ms以内にダッシュが続く場合は、無線チャネルを変更。
○入力がないまま500msが経過した場合、レーザをオフ。
【0031】
コントローラのプロセッサの観点からのこれと同じ処理フローは、以下のようになる。
【0032】
フェーズ1:入力処理
●コントローラプロセッサは、ユーザによる入力のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、物理的に接続された水晶発振器またはセラミック共振器からの信号を用いて経過時間msの計時を開始。
●コントローラプロセッサは、ユーザによる入力のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、計時を停止し、経過時間値をローカルメモリの(例えば)「first_input_elapsed_time」と定義された変数に格納。
●コントローラプロセッサは、経過時間値を0にリセットし、経過時間msの計時を再開。
●コントローラプロセッサがユーザによる入力のアクティベーションに対応する入力を受け取る、あるいは、(現在の)経過時間値が500msに達する(どちらか先に発生した方)。
●経過時間値が500msに達する前にユーザによる入力のアクティベーションがあった場合:
○コントローラプロセッサは、計時を停止し、経過時間値をローカルメモリの(例えば)「elapsed_time_between_inputs」と定義された変数に格納。
○コントローラプロセッサは、経過時間値を0にリセットし、経過時間msの計時を再開。
○コントローラプロセッサは、ユーザによる入力のディアクティベーションに対応する入力を受け取る。
○コントローラプロセッサは、計時を停止し、新たな経過時間値をローカルメモリの(例えば)「second_input_elapsed_time」と定義された変数に格納。
○コントローラプロセッサは、経過時間値を0にリセット。
●そうではなく、入力の間の経過時間が500msに達した場合:
○コントローラプロセッサは、計時を停止し、経過時間値500msをローカルメモリの「elapsed_time_between_inputs」変数に格納。
○コントローラプロセッサは経過時間値を0にリセット。
【0033】
フェーズ2:処理出力:
●コントローラプロセッサは、「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に等しい場合、コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによって物理的に接続されているレーザパワー回路を開にし、レーザをオフ。
【0034】
入力データのより複雑なアルゴリズム変換は、例えば、本発明による単純なインタフェースから操作可能なデバイスの数を大幅に蔵させるため、操作の安全性を高めるためなど、さまざまな理由で利用され得る。
【0035】
入力信号の処理に加えて、インタフェースの入力バンド幅のスケーラビリティを達成するために修正され得る本発明の他の態様は、提供される入力の数または構成を変えることを含む。アプリケーション特有の制限がそれを妨げない場合、インタフェースは単に入力の数を変えることによってスケーリングすることができる。多かれ少なかれ全ての機能の制御を必要とするアプリケーションのために、多かれ少なかれ全ての入力をそれぞれ提供することができる。
【0036】
入力を処理してコマンドを受信するために使用されるプロセッサは、物理的に任意の適切な位置に配置されうる。いくつかの実施形態では、それは1つまたは複数の入力デバイスの近くまたは内部に配置され、いくつかの実施形態では制御対象の1つまたは複数の電子デバイスの近くまたは内部に配置される。入力とプロセッサと電子デバイスとの間の通信は、任意の適切な方法で行われうる。いくつかの実施形態では、1つまたは複数のケーブルが1つまたは複数のハードウェアを物理的に接続し、通信はデータバスを介して行われる。
【0037】
いくつかの実施形態では、通信は、例えばBluetooth(登録商標)または独自の無線周波数または磁気誘導リンクを使用した無線通信である。当業者であれば、ケーブルが本発明と共に使用される必要はないこと、および、そのスケーラビリティおよび使用の特徴はケーブルには依存しないことを理解するであろう。本発明の無線実装は、ケーブルが植生、建物、家具などの外部物体に絡み付くまたは引っ掛かる可能性が減るという利点を有する。いくつかの無線実装は軽量でもある。
【0038】
図7は、入力用の3つのボタンと、Bluetooth BLE無線チップセットと、マイクロプロセッサとを備える、本発明によるコントローラの実施形態の一例を示す回路図である。一方、図8は、入力用の3つのボタンとマイクロプロセッサとを含む、本発明によるケーブル接続コントローラの実施形態の一例を示す回路図である。
【0039】
本発明の無線実装には任意の適切な無線プロトコルを使用することができる。好ましくは、無線プロトコルは、低エネルギー消費および低レンジ用に設計されている。使用されうる無線プロトコルの例は以下を含む:
・Bluetooth(登録商標) - 近距離無線通信用のグローバル2.4GHzパーソナルエリアネットワーク。
・BLE - Bluetoothの別バージョン。Classic Bluetoothよりも消費電力が大幅に少なくなるが、データ転送速度は遅くなる。
・ZigBee(登録商標) - 2.4GHzメッシュローカルエリアネットワーク(LAN)プロトコル。
・Z-Wave(登録商標) - サブGHzメッシュネットワークプロトコル。
・NFC(Near field communication) - 極近距離通信に使用されるネットワークプロトコル。
・RFID - ほとんどのシステムでは、RFIDリンクの片側だけにネイティブ電源がある。受電側は、受信チップに電流を誘導するRF電磁波を送信する。(ネイティブ電源を持たない)受信機内の誘導電流は、それに応答して無線コマンドを生成する、あるいは、低電力動作を実行するのに十分である。
・SigFox(登録商標) - 一方向では差動バイナリ位相シフトキーイング(DBPSK)を使用し、他方向ではガウス周波数シフトキーイング(GFSK)を使用する。
・ANT(登録商標)またはANT+(登録商標) - BLEと同様 - 既存のハードウェアから便乗するネットワークを構築するために設計されている。
【0040】
いくつかの無線の実施形態では、本発明の装置は、リモートに配置された無線トランシーバと、プロセッサと、制御対象デバイスと接続するための物理的コネクタとを更に含む。これらの実施形態では、(ボタンを押すことなどによる)ユーザによる入力の後、本発明によるコントローラは、無線トランシーバによって受信され、データストアにアクセスするプロセッサに渡される無線信号を送信し、その信号を、コネクタを介して制御対象デバイスに渡される第2信号に変換し、それによってデバイスにコントローラへの入力に関連するコマンドを実行させる。そのような実施形態は、本発明によるコントローラによって無線で制御される能力を現在の無線ではないデバイスに後付けすることを可能にすることにおいて特定の有用性を有することが理解されるであろう。いくつかの実施形態では、制御対象デバイス自体が無線トランシーバとプロセッサとを備え、それによってコマンドを受信し、変換し、実行することができる。
【0041】
敵対的または危険な環境において特に有用である本発明のいくつかの好ましい実施形態では、デバイスのネイティブ制御は維持されており、コントローラに関連する無線または他の機能が無効にされるか、正しくは機能しなくとも関係するデバイスはユーザにより動作可能である。
【0042】
典型的な無線ベースのシステムでは、1つのデバイスが「マスタ」(「セントラル」または「アクセスポイント」とも呼ばれる)として機能し、そこから無線信号が発せられ、「スレーブ」デバイス(「ペリフェラル」または「エンドポイント」とも呼ばれる(送信されたデータを検知している、またはアクセスポイントから制御されるデバイス))からデータを受信することができる。通常の動作では、本発明によるHMIまたはコントローラはマスタとして動作し、各制御対象デバイス(ライト、カメラ、レーザー照準器等)はスレーブとして動作する。本発明による無線システムにおけるコントローラおよび制御対象デバイスのそれぞれは、コントローラと制御対象デバイスとの間の無線通信を初期化するいくつかの方法を提供する。制御が直接に行われるか、制御対象デバイスに物理的に接続されている無線トランシーバを介して行われるかどうかにかかわらず、同様に行われる。無線制御されるスレーブデバイスがマスタコントローラにリンクされる方法の処理フローの例を以下に示す。
【0043】
●スレーブデバイスをペアリングモードにするために、ユーザが入力をアクティベートするかバッテリを挿入する。その後、スレーブデバイスはその存在を無線でアドバタイズし始め、接続先のマスタコントローラをサーチする。そのアドバタイズでは、スレーブデバイスはそれがどのタイプのデバイスであるかについての情報を、ユニークデバイスIDとともに送信する。
●ユーザが1つまたは一連の入力をアクティベートするかバッテリを挿入して、マスタコントローラをペアリングモードにする。その後、コントローラは接続先の新しいスレーブデバイスのスキャンを開始する。
●マスタコントローラは、スレーブデバイスからのペアリングアドバタイズを検出し、そのデバイスに互換性があるかどうかを評価する。事前定義されたスレーブデバイスタイプのみを接続および制御できる。
●スレーブデバイスタイプに互換性がある場合、マスタコントローラはデバイスタイプとユニークデバイスIDをNVRAMに保存し、無線接続が確立されたことを確認するメッセージをスレーブデバイスに返信する。このメッセージには、コントローラに関連付けられているユニークデバイスIDが含まれる。
●スレーブデバイスは無線接続確認メッセージを受信し、コントローラのユニークデバイスIDをNVRAMに保存する。
●これにより、マスタコントローラとスレーブデバイスとの間に無線接続が確立される。コントローラから発行される後続の無線コマンドには、コントローラと制御対象デバイス双方のユニークIDが含まれるため、制御対象のスレーブデバイスは、受信した無線コマンドがペアリング先のコントローラから発行されたことを確認できる。
【0044】
以下、これと同じ処理フローを、コントローラのプロセッサの観点から説明する。
【0045】
●コントローラプロセッサは、ユーザが1つまたは一連の入力をアクティベートしたことに対応する入力を受信して、コントローラを新しいスレーブデバイスモードのスキャンに切り替える。
●コントローラプロセッサは、物理的に接続されている無線トランシーバにコマンドを書き込み、接続するスレーブデバイスをスキャンするよう指示する。
●コントローラプロセッサは、物理的に接続されている無線トランシーバにコマンドを書き込み、接続するスレーブデバイスをスキャンするよう指示する。
●コントローラプロセッサは、無線トランシーバから、検出されたアドバタイズしているスレーブデバイスタイプのリストとそれらのユニークIDを含むデータを受信する。
●受信した各スレーブデバイスタイプについて、コントローラプロセッサは、ローカルNVRAMに保存されているルックアップテーブルを解析して、デバイスに互換性があるかどうかを判断する。
●検出された互換性のあるデバイスタイプごとに、コントローラプロセッサは、そのデバイスタイプをユニークIDとともにローカルNVRAMに保存し、このスレーブデバイスに接続するように指示するコマンドパケットを無線トランシーバに書き込む。コマンドパケットには、コントローラのユニークIDも含まれる。
【0046】
本発明によれば、以下のステップで概説するように、ファームウェア構成を変更する目的で、コントローラが別のコンピュータまたはプロセッサとの接続中にスレーブとしても動作できることが好ましい。
【0047】
フェーズ1:ユーザ定義されたコンフィグレーションがコンピューティングデバイスからコントローラに送信される
●ユーザは、スマートフォンやPCなどのコンピューティングデバイスのユーザインタフェースに、所望のコントローラ設定を入力する。
●ユーザは、コンピューティングデバイスをマスタとして動作させ接続するスレーブコントローラをスキャンするためのユーザインタフェースオプションを選択する。
●ユーザは、コントローラをスレーブモードに切り替えるために、1つまたは一連の入力をアクティベートする。
●コンピューティングデバイスは、(スレーブとして動作している)コントローラへの接続を確立し、コンフィグレーションデータを送信する。
●コントローラは、コンフィグレーションデータをローカルNVRAMに保存する。
【0048】
フェーズ2:コンフィグレーションデータがコントローラから制御対象デバイスに送信される
●コントローラは、マスタモードに戻り、制御対象スレーブデバイスへの接続を確立する。
●コントローラは、コンフィグレーションデータを制御対象デバイスに送信する。
●これにより、コントローラおよび制御対象デバイスは、新たなコンフィグレーションに従って動作するようになる。
【0049】
以下では、これと同じ、コントローラが一時的にその役割をスレーブモードに切り替える処理について、コントローラのプロセッサの観点から説明する。
【0050】
フェーズ1:ユーザ定義されたコンフィグレーションがコンピューティングデバイスからコントローラに送信される
●コントローラプロセッサは、コントローラをスレーブモードに切り替えるために、ユーザが1つまたは一連の入力をアクティベートしたことに対応する入力を受け取る。
●コントローラプロセッサは、物理的に接続されている無線トランシーバにその存在のアドバタイズを開始するように指示し、接続先のマスタをサーチする。
●コントローラプロセッサは、それがマスタコンピューティングデバイスへの接続を確立したという通知を無線トランシーバから受信する。
●コントローラプロセッサは、無線トランシーバ(マスタコンピューティングデバイスへの無線接続を介してユーザ定義されたコンフィグレーションデータを以前に受信した無線トランシーバ)からこのコンフィグレーションデータを受信する。
●コントローラプロセッサは、このコンフィグレーションデータをローカルNVRAMに書き込む。
【0051】
フェーズ2:コンフィグレーションデータがコントローラから制御対象デバイスに送信される
●コントローラプロセッサは、マスタモードに戻り、物理的に接続されている無線トランシーバに制御対象スレーブデバイスへの接続を再確立するように指示する。
●コントローラプロセッサは、無線トランシーバから、制御対象スレーブデバイスへの接続を再確立したという通知を受信する。
●コントローラプロセッサは、ローカルNVRAMからコンフィグレーションデータを読み取り、このデータを無線トランシーバに書き込み、そのデータを制御対象スレーブデバイスに送信するように指示する。
●これにより、コントローラおよび制御対象デバイスは、新たなコンフィグレーションに従って動作するようになる。
【0052】
他の実施形態では、コントローラはマスタとしての役割を維持し、他のコンピューティングデバイスはスレーブとして動作するが、その後、以下のステップで概説されるように、コントローラ側でファームウェア再構成を実行できるようにデータを送信する。
【0053】
フェーズ1:ユーザ定義されたコンフィグレーションがコンピューティングデバイスからコントローラに送信される
●ユーザは、スマートフォンまたはPCなどのコンピューティングデバイス上のユーザインタフェースに所望のコントローラコンフィグレーションを入力する。
●ユーザは、コンピューティングデバイスがスレーブデバイスとして見えるようにするためのユーザインタフェースオプションを選択する。
●ユーザが1つまたは一連の入力をアクティベートして、接続先のスレーブコンピューティングデバイスのコントローラースキャンを開始する。
●コントローラは、(スレーブとして動作している)コンピューティングデバイスへの接続を確立し、コンフィグレーションデータを送信する。
●コントローラは、コンフィグレーションデータをローカルNVRAMに保存する。
【0054】
フェーズ2:コンフィグレーションデータがコントローラから制御対象デバイスに送信される
●コントローラは、制御対象スレーブデバイスへの接続を確立する。
●コントローラは、コンフィグレーションデータを制御対象デバイスに送信する。
●これにより、コントローラおよび制御対象デバイスは、新たなコンフィグレーションに従って動作するようになる。
【0055】
以下では、コントローラがマスタとしての役割を維持しているこの同じ処理については、コントローラのプロセッサの観点から説明する。
【0056】
フェーズ1:ユーザ定義されたコンフィグレーションがコンピューティングデバイスからコントローラに送信される
●コントローラプロセッサは、ユーザが1つまたは一連の入力をアクティベートしたことに対応する入力を受信して、スレーブコンピューティングデバイスをスキャンして接続し、そこからコンフィグレーションデータを受信するようにコントローラに指示する。
●コントローラプロセッサは、物理的に接続された無線トランシーバにスレーブコンピューティングデバイスからのアドバタイズのスキャンを開始するように指示する。
●コントローラプロセッサは、無線トランシーバから、スレーブコンピューティングデバイスへの接続を確立したという通知を受信する。
●コントローラプロセッサは、無線トランシーバ(スレーブコンピューティングデバイスへの無線接続を介してユーザ定義されたコンフィグレーションデータを以前に受信した無線トランシーバ)からこのコンフィグレーションデータを受信する。
●コントローラプロセッサは、このコンフィグレーションデータをローカルNVRAMに書き込む。
【0057】
フェーズ2:コンフィグレーションデータがコントローラから制御対象デバイスに送信される
●コントローラプロセッサは、物理的に接続されている無線トランシーバに、制御対象スレーブデバイスへの接続を再確立するように指示する。
●コントローラプロセッサは、無線トランシーバから、制御対象スレーブデバイスへの接続を再確立したという通知を受信する。
●コントローラプロセッサは、ローカルNVRAMからコンフィグレーションデータを読み取り、このデータを無線トランシーバに書き込み、データを制御対象スレーブデバイスに送信するように指示する。
●これによりコントローラおよび制御対象デバイスは、新たなコンフィグレーションに従って動作するようになる。
【0058】
電力およびエネルギー使用の管理は、本発明のいくつかの実装形態にとって重要であり得る。例えば、いくつかの実装形態は、コントローラおよび/または制御対象デバイスの電源が非常にまれに変更または再充電されることを必要とし得る。例えば、武器と共に使用するためのコントローラに関連するそれらの実施においては、兵士または警察官等は、電池交換に費やされる時間を最小にする必要があり、コントローラおよび制御対象デバイスに毎回予想通りに動作することが期待されている。同様に、遠隔地や電源の変更が不可能な状況にある実装では、慎重な電源管理が必要になる。
【0059】
本発明の無線による実施は、前述したような利点を有するが、より多くのエネルギーが使用されうる - 例えば、コマンドを待っている間にコンポーネントをアクティブまたは「リスニング」状態に維持することにおいて。本発明のいくつかの実施形態では、無線プロトコルがエネルギー効率のために選択される。例えば、BLEは、非常に小さい範囲および低エネルギー要件のために特に好ましいプロトコルである。
【0060】
他のプロトコル、例えばRFIDも使用され得る。これらの実施において、制御対象デバイスは、ネイティブ電源を必要とせず、コントローラから受信された信号に依存してそのタスクを引き受けるのに十分な動作をする。そのようなタスクは、例えばそれ自体を単に識別することであり得るが、例えばMOSFETの状態を反転させてフラッシュライト電力回路を閉にするまたは開にするために他の単純な低エネルギータスクもまた行われ得る。
【0061】
本発明のいくつかの実施形態は、パッシブ動きセンサを利用する。パッシブ動きセンサは、例えばそのような動きセンサがマイクロコントローラの割り込み線とグラウンドとの間に接続されるときに、動きを検出し、それによって構成要素を非アクティブ状態からアクティブ状態に切り替える。電子式動きセンサ(加速度計またはジャイロスコープなど)は、運動を感知できるようにするためにそれ自体がエネルギーを必要とするため、そのようなタスクにはあまり好ましくはない。
【0062】
感知されることが要求されるものは動きが生じたことだけであり、これは現在装置が使用の準備ができていることが必要であることを知らせるので、単純なメカニカル動きセンサが好ましい。いくつかの実施形態では、メカニカル動きセンサは、ケーシング内で転動し、それによって運動に伴って電気的接続を開閉する1つまたは複数の球形導電性物品を含む。図10は、マイクロプロセッサと、BLEチップセットと、そのようなメカニカルセンサを含む、本発明によるコントローラ用の回路基板の例を示す。
【0063】
一例として、兵士は、本発明によるコントローラとレーザー照準器のような装置を取り付けた銃を所持する。本発明のこの態様によるコントローラおよび無線コネクタがレーザ照準器と共に使用される場合、次のステップが起こり得る。
【0064】
●野営地で兵士は休憩中に銃を下ろす - 無線コネクタ(BLEチップセット付きのBluetooth BLEドングルなど)のタイマは、事前設定された時間(例:20分)が経過したことを検出し、アクティブコンポーネントをスリープモードに切り替えてエネルギー消費を低減させる。
●兵士が銃を拾い上げ任務を再開する - 無線コネクタのメカニカル動きセンサの球状導体が動き、マイクロコントローラの割り込み線とグラウンドとの間の電気的接続を瞬間的に開閉する。
●その結果発生した割り込みによって無線コネクタのマイクロコントローラが起動し、それにより、コントローラからのコマンドの待機を再開するように指示される無線トランシーバを含む他のアクティブなコンポーネントが起動する。
【0065】
したがって、本発明のいくつかの態様では、任意選択で本発明による無線コネクタと共に使用するための、無線装置を効果的に制御しながら電力消費をさらに低減するアルゴリズム方法であって、
クロノロジカル装置(chronological device)からのデータ入力を受信するステップと、
所定のクロノロジカル期間が経過したことを示すデータを受信すると、アクティブリスニングレート(active listening rate)を所定のレベルまで下げるように無線チップセットに命令を送信するステップと、
動きの発生を示す、動き検知デバイスからのデータ入力を受信するステップと、
前記アクティブリスニングレートを所定のレベルまで上げるように前記無線チップセットに命令を送信するステップと、
を有する方法が提供される。
【0066】
本発明のこの態様のいくつかの実施形態では、リスニング装置(listening device)は、動きがないまま所定の期間が経過した後にオフにされ、動きが生じると再び完全にアクティブなリスニングのためにオンされる。この実施形態では、アクティブリスニングレートの低減は、ゼロまでの所定のレベルとすることができる。
【0067】
いくつかの実施形態では、「スリープ」機能は、デバイス上で直接または本発明によるコントローラを介してオフにすることができる。これは、特定の実施形態、例えば、ユーザが長期間不動のままでいなければならないが即座に行動して装備品を使用する準備ができていなければならない見張りあるいはステルス活動において特に有用であり得る。
【0068】
可変リスニングレートおよびパッシブ動きセンサの両方を組み込んだそのようなアルゴリズム方法の例は、以下のステップで概説される。本明細書における用語「待ち時間(latency period)」は、コントローラ上でアクティベートされている1つまたは一連の入力と、対応する機能を実行する制御対象デバイスとの間の経過時間を指す。
【0069】
●システムコンポーネントが起動し、ペアリングが確立される - 無線コネクタ上の無線トランシーバは、デフォルトのレート10Hz(待ち時間の範囲50-150ms)でコントローラからのコマンドをアクティブにリッスンし始める。
●動きセンサから入力されたデータを受信しないまま20分が経過した場合、無線コネクタのマイクロコントローラは、無線トランシーバにアクティブリスニングレートを2Hz(待ち時間の範囲50-550ms)に減らすように指示する。
●動きセンサから入力されたデータを受信しないままさらに20分が経過すると、無線コネクタのマイクロコントローラは、無線トランシーバにスリープ状態(アクティブリスニングレート0Hz)に移行するように指示する。
●無線コネクタのマイクロコントローラが動きセンサからデータ入力を受信すると、経過時間カウンタが0にリセットされ、無線トランシーバはコントローラからのコマンドの受信をデフォルトのレート10Hzで再開するように指示される。
【0070】
いくつかの装置はアクティブモードとスリープモードを有するが、スリープモードの間の待ち時間ははるかに長いので、それらは上記の方法ほど有効ではない。したがって、制御されているデバイス(上記の例ではレーザ照準器)は、より長い時間「ウェイクアップ」の指示を感知せず、そのため、アクティブリスニングを再開するのにより長い時間がかかり、ユーザを危険にさらし、あるいは、遅れによって他の有害な結果を引き起こすことにつながる。
【0071】
本発明のこの態様のいくつかの実施形態では、コントローラ内に、無線リスニング装置内と同様に制御対象デバイスと無線でリンクされた別個の動きセンサがある。いくつかの実施形態では、制御されているデバイス自体が無線チップセットおよび動きセンサを含む。
【0072】
いくつかの実施形態では、本発明によるプリセットボタンまたはコントローラ上の入力を単にアクティベートすることによって、デバイスを「ウェイクアップさせる」(すなわち、より高いアドバタイズレートまたはリスニングレートに切り替える)こともできる。いくつかの実施形態では、入力のそのような最初のアクティベーションによって全てのデバイスをウェイクアップさせて動作可能にしてもよい。
【0073】
いくつかの実施形態では、動きがあったときに依然として直ぐにウェイクアップするように、(やはり手動またはコントローラを介して)デバイスをスリープモード(またはオフ)に切り替える手段も提供される。
【0074】
本発明のそのような電力管理態様の特に有用な態様は、それがユーザのための電力を管理し、ヒューマンエラーの可能性を実質的に減少させることである。
【0075】
他の実施例において、ユーザは、例えばUHF無線機に無線接続されているPTTボタンとして使用される本発明によるコントローラの単一ボタンバージョンを有することができる。この実施形態では、コントローラ自体は、使用されていないときにはオフにするが、一旦ボタンがアクティベートされるとウェイクアップし、関連する信号を関連する無線機に送り、次にボタンを押すまで再びオフにする。
【0076】
いくつかの実施形態では、待ち時間は電力消費よりも大きな関心事であるので、スリープ機能がなくてもよく、あるいは最小または縮小バージョンが使用されてもよい。
【0077】
しかし、固定数の入力を考慮するときでさえ、適切に単純な入力の組み合わせによって制御可能な機能の数は、入力の構成を修正することによって変更することができる。例えば、5つの入力を提供する本発明によるHMIを考える。認知的負荷を最小にすることが最も重要である用途のために、人間の手の5本の指のそれぞれが単一の入力に割り当てられてもよい。例えば手の各指の下に専用の入力を持つことで、ユーザの認知的な負担を最小限に抑え、使いやすさを最大限に高める。あるいは、指のような単一の数字のみが操作に利用可能であり、提示される取り付け面積が非常に限られている用途では、本発明によるHMIは、(図2のスティック入力のように)上下左右への動きおよび中央位置における押し込みによって5つの入力を作動させる単一の親指制御アクチュエータを含み得る。
【0078】
典型的には、本発明の任意の所与の用途に対して、ユーザがそれらおよび各デバイスコマンドに必要なユーザ入力に迅速に精通するように、入力の数および種類が設定される。これを行うことによって、新たに追加された電子デバイス上で一致する装置コマンドタイプを制御するための新たな入力方法を学ぶ必要性は些細なことになる。特に好ましい実施形態では、異なる実施形態であっても、同じ入力が各タイプの電子デバイスコマンドに対して予約されている。したがって例えば、「GPSをオンにして自分を追跡する」は常に(例えば)入力1および入力2を押すことにより行われる。したがって、作業者の組織がすべてのGPSユニットをアップグレードされたより複雑なモデルに交換する場合でも、操作者は新しいGPSユニットを操作するために新しいインタフェースを学習する必要はなく、本発明によって提供される現在のインタフェースを使用し続けることになる。物理的なインタフェースは変更する必要はなく、「GPSをオンにして自分を追跡する」ための出力制御信号の変更は、コントローラのファームウェアの再構成によって行われる。これは、すべての操作者を再訓練するよりもはるかに効率的に新しい機器をデプロイする方法であり、はるかに頻繁な最先端の機器デプロイを可能にする。いくつかの実施形態では、本発明によるコントローラは、例えば「GPSをオンにして自分を追跡する」ための新しい出力コマンド文字列を古いコマンドが記憶されていた場所に上書きすることができるNVRAMを含む。同じコントローラ上で実行されている同じファームウェアが、出力コマンドのために同じNVRAMストレージロケーションにアクセスするが、新しい出力コマンドにアクセスして送信される。
【0079】
本発明は、電子デバイスを制御するためのHMIを開示する。図1は、開示される発明の実施形態によるそのようなHMI100の概略図である。このHMIは、1つ以上の指を用いて電子デバイスを制御する能力をユーザに与えるように配置された複数の入力101をユーザに提供する。この特定の例では、2つの電子デバイス、すなわちRS232データバス102を介したデバイス1と、Bluetooth Low Energy 無線接続103を介したデバイス2とが制御される。
【0080】
HMIへの各入力には一意の数値104が割り当てられ、任意の所与の時点でユーザによってアクティベートされた全ての入力の結合数値(結合入力値)は、プロセッサ105によって独立に累積される。アクティベートされた入力のそれぞれの固有の組み合わせが、プロセッサによって計算される固有の結合入力値になるように割り当てられる。例えば、この特定のHMI100では、入力1と入力3の両方がアクティベートされると、プロセッサ105は104に列挙された関連する値を累積して1+4=5の結合入力値を計算する。
【0081】
各入力または入力の組み合わせの値が、異なる入力または入力の組み合わせのアクティベーションを介して複製できない限り、各入力に関連付けられた値は任意である。したがって、各入力を2進数表示における固有のビットの値(例えば、1、2、4、8など)で表すことは、結合入力値を累積する最も適切な方法である。ただし、これが結合入力値を累積する唯一の方法ではない。非数値(または他の固有の数値)もまた実装され得る。例えば、HMI100を参照すると、入力1に値「a」を割り当て、入力2に「b」を割り当て、入力3に「c」を割り当てることができる。これらの入力値を用いて、入力1と入力3の両方が起動されると、プロセッサ105は結合入力値「a+c」を累積する。
【0082】
上記プロセッサ蓄積は開始点および停止点を有する。開始点は、任意の入力の最初のアクティベーションによって通知され、停止点は、開始点以降に開始された任意の入力の最後のディアクティベーションによって通知される。どの時点でも、結合入力値はアクティベートされた入力の合計を表す。開始点と停止点との間に生成された結合入力値は、瞬時結合入力値といい、これら2つの点の間の任意の時点で到達される最大結合入力値は、停止最大入力値という。どのスイッチも作動していないときの結合入力値には、通常、値0が割り当てられる。
【0083】
入力状態が変化すると、結合入力値は、定義された操作を表す値のルックアップテーブルと比較され、一致が見つかると、対応する結果(電子デバイスの制御)が実行される。場合によっては、対応する結果が実行される前に、特定の一連の結合入力値が必要になることがある。これを可能にするために、前の結合入力値(特に前の停止最大入力値)のリストがプロセッサによって維持されてもよい。
【0084】
【表1】
【0085】
これらの「生じる結果」のそれぞれに到達するために必要なステップをリストした処理フローを以下に詳述する。
【0086】
フラッシュライトのオン/オフ:
●ユーザが入力1をアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が1であると計算する(入力1アクティベートで+1、入力2ディアクティベートで+0、入力3ディアクティベートで+0)。
●マイクロコントローラは、ローカルメモリに格納されているルックアップテーブルを解析し、「結合入力値=1」のエントリを見つける。
●マイクロコントローラは、対応する結果「フラッシュライトオン」を実行する。
●マイクロコントローラは、現在の停止最大入力値の格納値を1に更新し、スリープモードに戻る。
●ユーザが入力1をディアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が0であると計算する(どの入力もアクティベートされていない)。
●マイクロコントローラは、記憶されたルックアップテーブルを解析し、「結合入力値=1、結合入力値=0」のエントリを見つける。
●マイクロコントローラ、対応する結果「フラッシュライトオフ」を実行する。
●マイクロコントローラは、前回の停止最大入力値を1に更新し、現在の停止最大入力値を0にリセットしてスリープモードに戻る。
【0087】
無線機のボリュームの変更:
●ユーザが入力2および入力3をアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が6であると計算する(入力1ディアクティベートで+0、入力2アクティベートで+2、入力3アクティベートで+4)。
●マイクロコントローラは、ローカルメモリに格納されているルックアップテーブルを解析し、「結合入力値=6」のエントリがないと判断する。
●マイクロコントローラは、現在の停止最大入力値の格納値を6に更新し、スリープモードに戻る。
●ユーザが入力2および入力3をディアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは結合入力値0を計算する(どの入力もアクティベートされていない)。
●マイクロコントローラは、記憶されたルックアップテーブルを解析し、「結合入力値=6、結合入力値=0」のエントリを見つける。
●マイクロコントローラは、対応する結果「無線機ボリューム変更」を実行する。
●マイクロコントローラは、前回の停止最大入力値を6に更新し、現在の停止最大入力値を0にリセットしてスリープモードに戻る。
【0088】
無線チャネルを変更:
●ユーザが入力2をアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が2であると計算する(入力1ディアクティベートで+0、入力2アクティベートで+2、入力3ディアクティベートで+0)。
●マイクロコントローラは、ローカルメモリに格納されているルックアップテーブルを解析し、「結合入力値=2」のエントリがないと判断する。
●マイクロコントローラは、現在の停止最大入力値の格納値を2に更新し、スリープモードに戻る。
●ユーザが入力2をディアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が0であると計算する(どの入力もアクティベートされていない)。
●マイクロコントローラは、保存されているルックアップテーブルを解析し、「結合入力値=2、結合入力値=0」のエントリを見つける。
●マイクロコントローラは、前回の停止最大入力値を2に更新し、現在の停止最大入力値を0にリセットしてスリープモードに戻る。
●ユーザが入力3をアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が4であると計算する(入力1ディアクティベートで+0、入力2ディアクティベートで+0、入力3アクティベートで+4)。
●マイクロコントローラは、ローカルメモリに格納されているルックアップテーブルを解析し、「結合入力値=2、結合入力値=0、結合入力値=4」のエントリがないと判断する。
●マイクロコントローラは、現在の停止最大入力値の格納値を4に更新し、スリープモードに戻る。
●ユーザが入力3をディアクティベートする。
●入力状態が変化すると、マイクロコントローラハードウェア割り込みが生成され、スリープモードから復帰する。
●マイクロコントローラは、結合入力値が0であると計算する(どの入力もアクティベートされていない)。
●マイクロコントローラは、記憶されたルックアップテーブルを解析し、「結合入力値=2、結合入力値=0、結合入力値=4、結合入力値=0」のエントリを見つける。
●マイクロコントローラは、対応する結果「無線チャネル変更」を実行する。
●マイクロコントローラは、前回の停止最大入力値を4に更新し、現在の停止最大入力値を0にリセットしてスリープモードに戻る。
【0089】
以下では、これと同じ処理フローを、コントローラのプロセッサの観点から説明する。
【0090】
フラッシュライトのオン/オフ
●コントローラプロセッサは、ユーザによる入力1のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を1と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値=1」に対応する結果(フラッシュライトオン)を見つける。
●コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによって物理的に接続されているフラッシュライトの電力回路を閉にしてフラッシュライトをオンさせる。
●コントローラプロセッサは、変数current_cessation_maximum_input_valueの値を1に更新する。
●コントローラプロセッサは、ユーザによる入力1のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を0と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値=1、結合入力値=0」に対応する結果(フラッシュライトオフ)を見つける。
●コントローラプロセッサは、スイッチング要素を制御する出力ラインを反転させ、それによって物理的に接続されているフラッシュライト電力回路を開にし、フラッシュライトをオフする。
●コントローラプロセッサは、変数previous_cessation_maximum_input_valueの値を1に更新し、変数current_cessation_maximum_input_valueの値を0にリセットする。
【0091】
無線機のボリュームの変更:
●コントローラプロセッサは、ユーザによる入力2および3のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を6と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値=6」に対応する結果を見つける(結果なし)。
●コントローラプロセッサは、変数current_cessation_maximum_input_valueの値を6に更新する。
●コントローラプロセッサは、ユーザによる入力2および3のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を0と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値=6、結合入力値=0」に対応する結果(無線機ボリュームの変更)を見つける。
●コントローラプロセッサは、NVRAMに格納されたハンズフリー無線機の「ボリューム変更」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象ハンズフリー無線機の両方に物理的に接続されたデータバス・トランシーバに書き込む。
●コントローラプロセッサは、変数previous_cessation_maximum_input_valueの値を6に更新し、変数current_cessation_maximum_input_valueの値を0にリセットする。
【0092】
無線チャネルの変更:
●コントローラプロセッサは、ユーザによる入力2のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を2と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値=2」に対応する結果を見つける(結果なし)。
●コントローラプロセッサは、変数current_cessation_maximum_input_valueの値を2に更新する。
●コントローラプロセッサは、ユーザによる入力2のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を0と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値=2、結合入力値=0」に対応する結果を見つける(結果なし)。
●コントローラプロセッサは、変数previous_cessation_maximum_input_valueの値を2に更新し、変数current_cessation_maximum_input_valueの値を0にリセットする。
●コントローラプロセッサは、ユーザによる入力3のアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を4と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値=2、結合入力値=0、結合入力値=4」に対応する結果を見つける(結果なし)。
●コントローラプロセッサは、変数current_cessation_maximum_input_valueの値を4に更新する。
●コントローラプロセッサは、ユーザによる入力3のディアクティベーションに対応する入力を受け取る。
●コントローラプロセッサは、累積アルゴリズムを実行して結合入力値を0と計算する。
●コントローラプロセッサは、ローカルメモリを読み取り、「結合入力値=2、結合入力値=0、結合入力値=4、結合入力値=0」に対応する結果(無線チャネルの変更)を見つける。
●コントローラプロセッサは、NVRAMに格納されているハンズフリー無線の「チャネル変更」コマンド文字列を読み取り、このコマンド文字列を、コントローラプロセッサと制御対象ハンズフリー無線の両方に物理的に接続されているデータバス・トランシーバに書き込む。
●コントローラプロセッサは、変数previous_cessation_maximum_input_valueの値を4に更新し、変数current_cessation_maximum_input_valueの値を0にリセットする。
【0093】
本発明の異なる実施形態は、一本の指、例えば親指から、複数の指、例えば4本の指および親指、または複数の人の手までの範囲にわたる、さまざまな人間の入力に最適化されている。所与の用途にどの実施形態が最もよく利用されるかは、制御を必要とする機能の全セットのサイズを適切な入力数だけでなく適切な総入力指の数にも合わせることによって決定される。これらのそれぞれは、意図された用途に従って変わるであろう。5つの入力を1つの人の指で制御することは可能であるが、それらの同じ5つの入力(適切に配置されている場合)が一致する5つの人の指によって制御されるときに使いやすさおよび操作の単純さが最大になる。一本の指の数字で複数の異なる入力を操作できるよりもはるかに簡単に1つの入力(ボタンなど)を操作できる。
【0094】
本発明の1つの好ましい実施形態はスティックコントロール(Stick Control)であり、これは一本の指での制御に最適化されている。図2は、例示的なスティックコントロール200の概略図である。スティックコントロールは従来のジョイスティックと同じに見えるが、本発明によるスティックコントロールの動きは、ジョイスティックの場合に通常そうであるように、いかなる外部方向入力にも関連しない。スティックコントロール入力は図2に示すように配置され番号付けされており、それぞれのマークされた値はユーザによってアクティベートされることができる入力を表している。
【0095】
したがって、いくつかの好ましい実施形態では、基部とそこから延びる突出部とを含むヒューマンマシンインタフェース装置が提供され、突出部は、基部によって画定される軸に関して移動可能であり、複数の制御点を接続するために少なくとも1つのガイドによって画定される方向に移動可能である。ガイド経路内では、制御点は、制御対象デバイスに対する1つ以上の制御命令との対応を意図している。いくつかの好ましい実施形態では、突出部は、押圧による制御命令のアクティベーションを可能にするために押圧可能である。突出部は、人の指で操作することができる任意の適切な種類のものであり得る。いくつかの好ましい実施形態では、それは任意選択的にスティック、または細長いボタン、または概してジョイスティック形状である。
【0096】
スティックコントロールを直交軸上で動かすことによって、ユーザは4つの外部入力201、202のうちのいずれか1つをアクティベートすることができる。追加の入力がアクチュエータ203の底部の中央に設けられ、押し下げることによってアクティベートされる。この追加の中心入力は、いくつかの実施形態では、前述の蓄積開始点および停止点をプロセッサに通知するためにユーザによって利用され得る。プロセッサが入力値を合計する簡単な例では、開始点と停止点との間にアクティベートされる4つの外部入力のいずれも、それらによって割り当てられた数値がプロセッサによって累積され、したがって結果として得られる計算された結合入力値に寄与する。
【0097】
ガイド204は、スティックコントロールの下側で使用されて、入力間の容易な動きを制限し促進することができる。ガイドは、アクチュエータの動きを1組の所定の経路に制限するためのガイドチャネルを含み得る。アクチュエータを所望の入力に動かすことによって、ユーザはどの入力を作動させたいかを指示することができる。
【0098】
本発明の別の好ましい実施形態はスライドコントロール(Slide Control)であり、これはタッチ入力を提供し、また一本の指での制御に最適化されている。図3は、スライドコントロール300の概略図である。スライドコントロール入力は301で示され、図示のように配置され番号付けされ、各マーク付き値の下の領域は、ユーザによってアクティベートできる入力を表す。スライドコントロールは、太線302で示すように、HMIの表面に指や親指などを簡単に合わせることができるように、3面の壁を提供する。
【0099】
したがって、いくつかの好ましい実施形態では、基部と、基部の周囲に配置されて人の指を案内する1つまたは複数のガイドとを含むヒューマンマシンインタフェース装置が提供される。基部の表面を指でスライド可能に係合させることによって入力がなされ、入力は制御対象デバイスに命令を送るのに使用可能である。いくつかの好ましい実施形態では、ガイドは、操作中に人の指が基部と接触したままになるようにガイドされるように、基部を実質的に取り囲む。いくつかの好ましい実施形態では、基部の1つまたは複数の領域は、そのような領域に関連する入力動作に対応する1つまたは複数の制御命令をユーザが識別することを可能にするようにマークされる。そのようなマーキングは、例えば溝、記号、エンボス加工などの任意の適切な手段によってもよい。
【0100】
スライドコントロールは、ユーザが自分の指をスライドさせることができる滑らかな表面も提供する。単一の操作を実行するために複数の入力をアクティベートするには、ユーザは自分の指を希望の入力の1つに置き、次に希望の操作を完了するのに必要な他の入力にスライドする必要がある。複数の入力がアクティベートされると、アクティベートされた各入力に割り当てられた数値がプロセッサによって累積され、計算された結合入力値に反映される。
【0101】
与えられた操作を実行するために必要なスライド動作は、指示ツールとして入力の表面に表示することもできる。例えば、「操作1」を完了するには、ユーザは入力1を指でタッチしてから303を解放する前に入力2にスライドする必要がある。テキストと矢印の両方の位置と方向は、ラベル付きの操作を実行するために必要なすべての情報をユーザに提供する。
【0102】
本発明の別の好ましい実施形態は、1本または2本の指で使用するために最適化されているクワッドパッド(Quad Pad)である。図4aおよび図4bは、クワッドパッド400aおよび400bの概略図である。スライドコントロールと同様に、クワッドパッド入力は、401aおよび401bで示され、図示のように配置および番号付けされ、各マーク付き値の下の領域は、ユーザによってアクティベートされ得る入力を表す。しかし、ユーザが蓄積したい入力上をスライドするタッチセンシティブ面を使用するのではなく、4パッドの任意の組み合わせを1本または2本の指で同時に押すことができるように配置された電気スイッチを代わりに使用する。同時に押された全ての入力はプロセッサによって累積され、計算された結果として得られる結合入力値に寄与する。
【0103】
したがって、いくつかの好ましい実施形態では、互いに近接して接触して配置された4つの押し下げ可能要素を備えるヒューマンマシンインタフェース装置が提供される。それによれば、所定の1つ以上の要素の押し下げ時に、制御可能なデバイスに対する命令に対応して入力が生成される。要素は複数の方法で配置することができ、図4aおよび4bは2つの例を示す。図4bに示す実施形態は、1つ、2つ、または3つのボタンの組み合わせを単一の人の指で押すことを可能にするので有利である。
【0104】
クワッドパッドはまた、指示ツールとして入力の表面上のラベル付けを利用してもよい。例えば、「PTT1」402aおよび402bの入力1命令は、操作PTT1をアクティベートするためにユーザが入力1(のみ)を押さなければならないことを示す(プッシュトーク1)。入力「3」と「4」にまたがる命令「フラッシュライト」403aと403bは、操作「フラッシュライト」をアクティベートするためにユーザが入力3と4を同時に押さなければならないことを示す。
【0105】
本発明の別の好ましい実施形態は、本明細書ではE5デバイスと呼ばれる。E5が最適化される指の数は、どの入力セットが使用されているかによって異なる。プロセッサとコアエレクトロニクスはコントロールボックス(CB)にあり、入力は入力スイッチアセンブリ(ISA)を介して提供される。CBとISAはケーブルで物理的に接続されている。入力スイッチアセンブリをリモートに配置することにより、ユーザが望む入力数、入力をアクティブにするために使用する指の数、および入力が配置される場所に関して高度な柔軟性をユーザに提供する。
【0106】
図5は、ISA構成の特定の一実施形態を示すE5 500の概略図である。この場合、ISAは3本の指での使用に最適化されている。この実施形態では、CB501はケーブル503によってISA502に接続されている。ISAのこの特定の実施形態は3本の指に最適化されているので、3つの入力504を供給する。同時に押されたE5入力はすべてプロセッサによって累積される。計算された結合入力値に寄与する。
【0107】
本発明の別の好ましい実施形態は、本明細書ではE6装置と呼ばれる。E6は、武器の前面に取り付けられるように設計されているので、ユーザは手の各指に1つずつ、合計5つのアクセスしやすい入力を持つことができる。この実施形態によって提供される入力数の増加は、より多くの機能の総数を容易に制御することを可能にする。
【0108】
図6は、E6の例示的な実装形態の左右の図を示す概略図である。これは、左手で使用するためのものであり、親指で入力1を操作する操作部601と、人差し指、中指、薬指、および小指でそれぞれ入力2、3、4および5を操作する操作部602を含む。本発明の前述の実施形態のいずれよりも多くの適切に単純な入力の組み合わせを提供する。開示された他の実施形態と同様に、同時に押されたすべての入力はプロセッサによって累積され、計算された結果として得られる結合入力値に寄与する。
【0109】
図7は、本発明による無線3ボタンコントローラの一例の配線図700である。重要な構成要素は、マイクロプロセッサ701、入力スイッチ702、および無線トランシーバ703である。
【0110】
図8は、本発明による有線3ボタンコントローラの一例の配線図800である。重要な構成要素は、マイクロプロセッサ801、入力スイッチ802、およびデータバス・トランシーバ803である。
【0111】
図9は、本発明による3ボタンコントローラハウジング900の一例の上面図である。このハウジングは、図7または8に記載された回路のいずれかを収容するのに適している。入力スイッチ1、2および3は、それぞれボタン901、902および903を押すことによってアクティベートされる。
【0112】
図10は、例示的な無線3ボタンコントローラ配線図700のプリント回路基板アセンブリ(PCBA)1000を示す。マイクロプロセッサ1001は、図7に示すように無線トランシーバ1002に物理的に接続されている。入力スイッチは、PCBAの反対側にあるので、700では見えていない。
【0113】
図11aは、本発明による一例の1ボタンコントローラハウジング1100aの上面図である。単一の入力ボタンが1101aに示されている。図11bは、1100a内に収容するのに適した1ボタンコントローラPCBA1100bを示す。構成要素1101bは、本発明のこの特定の実施形態に適した統合プロセッサを備えた無線送受信機である。唯一の入力スイッチは、PCBAの反対側にあるため、1100bでは見えていない。
【0114】
図12は、本発明による3ボタンコントローラの処理フローを説明する一連のフローチャート1200であり、3つの入力のバンド幅は、制御する電子デバイス(または電子デバイスのサブセット)の選択として入力の最初のアクティベーションと、そのデバイスを制御する機能の選択としての第2の入力アクティベーションとを処理することによって拡大される。フローチャート1201、1202および1203はそれぞれ、アクティベートされた最初の入力が入力1、2および3であるときに行われる処理を示している。
【0115】
図13は、本発明による1ボタンコントローラの処理フローを説明する一連のフローチャート1300であり、単一入力のバンド幅は、入力アクティベーションの数および/または持続時間を使用してプロセッサによって生成されるコマンドを決定することによって拡張される。フローチャート1301および1302はそれぞれ、アクティベートされた最初の入力が短押し(「ドット」)および長押し(「ダッシュ」)であるときに行われる処理を示している。
【0116】
用語集:
本技術の開示の目的のために、本技術の特定の形態において、以下の定義のうちの1つ以上のものを適用しうる。本技術の他の形態では、他の定義を適用しうる。
・アクティベート可能な物理的要素(Activatable physical element):入力(動詞)を生成するためにユーザによってアクティベートされることが可能な、電気スイッチ、表面、または物理的領域。
・結合入力値(Combined input value):任意の時点でユーザによってアクティベートされたすべてのHMI入力の合計値。いくつかの実施形態では、出力を生成するために、結合入力値がHMIのプロセッサによって累積される。
・制御対象デバイス(Controlled device):本発明によるHMIシステムによって制御される少なくとも1つの機能を有するデバイス。
・コントローラ(Controller):本発明によるHMIシステムの構成要素であって、アクティベート可能な物理的要素と、制御対象デバイス上で出力機能を実行または起動することが可能な電子デバイス等の構成要素とを含む。
・デバイスコントローラ(Device controller):本発明によるHMIシステムの構成要素であって、コントローラから無線コマンドを受信し、接続された制御対象デバイス上でその出力命令を実行することができる電子デバイス等の構成要素を含む。
・E5デバイス:本発明による例示的なインタフェース。
・E6デバイス:本発明による例示的なインタフェース。
・要素(Element):アクティベート可能な物理的要素。
・HMI:コントローラ。
・HMIコントローラ:コントローラ。
・入力(名詞):アクティベート可能な物理的要素。
・入力(動詞):プロセスまたはシステムに与えられ演算される信号。
・待ち時間(Latency period):本発明によるHMIコントローラ上でアクティベートされる入力または入力のシーケンスと、対応する機能を実行する制御対象デバイスとの間の経過時間。
・物理的に接続(Physically connected):直接の物理的接触、または、ケーブル、プラグおよびソケット、導電体等の任意の数の中間手段を介した間接的な接触、を介して互いに物理的に接触している構成要素。
・クワッドパッド(Quad Pad):本発明による例示的なインタフェース。
・スライド可能に(Slidably):表面にスライド可能に係合すること、すなわち、滑らかで連続的な接触を維持しながら表面上に触れて移動すること。
・スライドコントロール(Slide Control):本発明による例示的なインタフェース。
・サブ入力(Sub-input):入力(動詞)の構成要素。
・スティックコントロール(Stick Control):本発明による例示的なインタフェース。
・無線コネクタ(Wireless connector):デバイスコントローラの一種。
・無線接続(Wirelessly connected):物理的には接続されていなくても相互にデータを転送できる構成要素は、無線接続されている。
図1
図2
図3
図4a
図4b
図5
図6
図7
図8
図9
図10
図11a
図11b
図12
図13