(57)【要約】      （修正有）【課題】ＨＭＩ機器における非接触操作を容易に実現する操作処理装置を提供する。【解決手段】プログラマブル表示器１は、少なくとも１つのスイッチを表示する表示パネル１６と、表示パネルの近傍に配置され、指示体の３次元空間での位置を検出する近接センサ１７と、３次元の３つの方向に対して近接センサによってそれぞれ得られた検出値のうち、２つの方向の少なくともいずれか一方の第１検出値によって指示体が指示するスイッチを特定し、スイッチを特定した方向以外の１つの方向である押し操作検出方向の第２検出値によってスイッチの押し操作を検出する検出部３３１と、指示体の押し操作検出方向の変化に対する第２検出値に基づいて、押し操作検出方向の指示体の移動量を算出する算出部３３２と、移動量が所定量範囲内にあるか否かにより、指示体によるスイッチの押し操作が有効または無効であると判定する判定部３３３とを備える。【選択図】図３
2020052681.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのスイッチを表示する表示部と、
表示部の近傍に配置され、指示体の３次元空間での位置を検出するセンサ部と、
３次元の３つの方向に対して前記センサ部がそれぞれ検出した検出値のうち、２つの方向の少なくともいずれか一方の第１検出値によって指示体が指示するスイッチを特定し、前記スイッチを特定した特定方向以外の１つの方向である押し操作検出方向の第２検出値によって前記スイッチの押し操作を検出する検出部と、
前記指示体の前記押し操作検出方向の変化に対する前記第２検出値に基づいて、前記押し操作検出方向の前記指示体の移動量を算出する算出部と、
前記移動量が所定量範囲内にあるときに、前記指示体による前記スイッチの押し操作が有効であると判定し、前記移動量が前記所定量範囲外にあるときに、前記押し操作が無効であると判定する判定部とを備えていることを特徴とする操作処理装置。
【請求項２】
前記算出部は、前記指示体の前記押し操作検出方向の変化に対する前記第２検出値に基づいて、前記押し操作検出方向の前記指示体の移動速度をさらに算出し、
前記判定部は、前記移動量が前記所定量範囲内にあり、かつ前記移動速度が所定速度範囲内にあるときに、前記指示体による前記スイッチの押し操作が有効であると判定し、前記移動量が前記所定量範囲外にあるか、または前記移動速度が前記所定速度範囲外にあるときに、前記押し操作が無効であると判定することを特徴とする請求項１に記載の操作処理装置。
【請求項３】
前記判定部は、前記特定方向が２つの方向であるとき、２つの前記特定方向への前記指示体のそれぞれの変位量が所定値以下であれば、前記押し操作が有効であると判定し、前記特定方向が１つの方向であるとき、１つの前記特定方向への前記指示体の変位量が所定値以下であれば、前記押し操作が有効であると判定することを特徴とする請求項１または２に記載の操作処理装置。
【請求項４】
前記判定部は、押し操作される直前の前記指示体の前記押し操作検出方向の位置と、前記押し操作が完了して指示体が退いた前記押し操作検出方向の位置との差が所定差範囲内の値であれば、前記押し操作が有効であると判定し、前記差が前記所定差範囲外の値であれば、前記押し操作が無効であると判定することを特徴とする請求項１から３のいずれか１項に記載の操作処理装置。
【請求項５】
前記スイッチは、前記押し操作の持続でＯＮ状態を保持し、前記押し操作の除去でＯＮ状態を解除し、
前記判定部は、押し操作された前記指示体の前記押し操作検出の位置が所定位置範囲にある状態が維持されていれば、前記押し操作が有効であると判定し、前記指示体の前記押し操作検出の位置が所定位置範囲から外れると、前記押し操作が終了であると判定することを特徴とする請求項１から３のいずれか１項に記載の操作処理装置。
【請求項６】
前記表示部上でタッチ操作を受け付けるタッチパネルをさらに備え、
前記表示部は、前記タッチパネルによるタッチ操作を受け付けるタッチスイッチを含むメイン画面を表示するとともに、前記スイッチが１次元方向または２次元方向に集約して配置されたスイッチ画面を前記メイン画面上に表示することを特徴とする請求項１から５のいずれか１項に記載の操作処理装置。
【請求項７】
前記表示部は、前記指示体の位置がいずれの前記スイッチを特定する位置から外れているときに、外れている方向、外れている位置を表す位置情報、または外れている位置から前記スイッチを特定する位置に移動させるための案内情報を前記スイッチ画面において表示することを特徴とする請求項６に記載の操作処理装置。
【請求項８】
前記センサ部は、
近接度合と直交２軸方向の変位とを測定可能なセンサと、
前記センサが出力する測定値を三次元座標に変換する演算処理部とを有していることを特徴とする請求項１から７のいずれか１項に記載の操作処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面上で非接触に行われる操作に対する処理を行う操作処理装置に関する。
【背景技術】
【０００２】
プログラマブル表示器のようなＨＭＩ（Human Machine Interface）機器は、画面を表示する表示部と、タッチ入力のためのタッチパネルと、接続される機器との通信のためのインターフェースと、上記の各部を制御する制御部とを備えている。このようなＨＭＩ機器は、機器に対する制御指示などを与えるための操作入力を表示部上のタッチパネルによって受け付ける。
【０００３】
機械加工、医薬製造、食品製造などの現場では、ＨＭＩ機器の一部の操作を非接触で行う必要がある。例えば、機械加工の現場では、オペレータが加工作業のための手袋を着けた状態でＨＭＩ機器を操作することがあるが、油などで汚れた手袋のままでタッチ操作をすると、表示面を汚してしまうという不都合がある。また、医薬や食品の製造現場では、衛生上の観点から、オペレータは無菌状態とはいえない表示面をタッチ操作した指で製品などを触れることができない。
【０００４】
このような不都合を解消するために、以下のような非接触操作技術の利用が考えられる。
【０００５】
例えば、視線検出や映像解析の結果に基づいてジェスチャを検出することにより、マウス操作またはタッチ操作のエミュレーションを実現する技術は複数存在する。このような技術によれば、ＨＭＩ機器をほぼ自在に操作することができ、誤作動も少ない。
【０００６】
例えば、引用文献１には、仮想的なタッチパネル（バーチャルタッチパネル）上の指示体の動きを非接触で検出することが開示されている。バーチャルタッチパネルは、ディスプレイの画面と仮想的に対応している。また、バーチャルタッチパネル上の指示体の動きは、距離センサで検出されて、ディスプレイの画面上に反映される。
【０００７】
距離センサは、赤外線ＬＥＤから出射した赤外光の検出対象物に対する反射光により検出対象物を赤外線カメラで撮像する。測定対象物としての指示体の三次元空間における位置座標は、情報処理装置が赤外線カメラの撮像信号を画像解析することによって算出される。
【０００８】
また、赤外線近接センサによるジェスチャインターフェースは、スマートフォンやカーナビゲーションシステムに導入が進んでいる。このようなジェスチャインターフェースによれば、低コスト、省スペース、耐環境性、要求計算リソースなどの条件がＨＭＩ機器に適している。
【０００９】
また、音声入力は、近年進歩してきており、ジェスチャ検出への利用も考えられる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１６−１１９０９５号公報（２０１６年６月３０日公開）
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、視線検出や映像解析の結果に基づいてジェスチャを検出する技術では、システムが大掛かりとなり、かつ高い処理能力が要求される。したがって、このような技術は、コスト、設置スペース、プロセッサの処理能力、耐環境性などの条件がＨＭＩ機器にはそぐわない。
【００１２】
また、赤外線近接センサによるジェスチャインターフェースは、スワイプやプッシュなどのジェスチャで操作を行う方式が主流である。このため、表示部に表示される画面に設けられた操作のためのオブジェクトをこれらのジェスチャによって上手く操作することができないし、このために誤作動も生じやすい。
【００１３】
また、音声入力は、騒音耐性や多言語対応などを考えると、まだ容易にＨＭＩ機器に導入することはできない。
【００１４】
以上のような理由から、ＨＭＩ機器において非接触操作を行うことは難しい。
【００１５】
本発明の一態様は、ＨＭＩ機器における非接触操作を容易に実現することを目的とする。
【課題を解決するための手段】
【００１６】
上記の課題を解決するために、本発明の一態様に係る操作処理装置は、少なくとも１つのスイッチを表示する表示部と、表示部の近傍に配置され、指示体の３次元空間での位置を検出するセンサ部と、３次元の３つの方向に対して前記センサ部がそれぞれ検出した検出値のうち、２つの方向の少なくともいずれか一方の第１検出値によって指示体が指示するスイッチを特定し、前記スイッチを特定した特定方向以外の１つの方向である押し操作検出方向の第２検出値によって前記スイッチの押し操作を検出する検出部と、前記指示体の前記押し操作検出方向の変化に対する前記第２検出値に基づいて、前記押し操作検出方向の前記指示体の移動量を算出する算出部と、前記移動量が所定量範囲内にあるときに、前記指示体による前記スイッチの押し操作が有効であると判定し、前記移動量が前記所定量範囲外にあるときに、前記押し操作が無効であると判定する判定部とを備えている。
【００１７】
上記の構成によれば、指示体の３次元空間における位置の検出値に基づいて、指示体が指示するスイッチを特定し、かつ指示体によるスイッチの押し操作を検出するので、大掛かり、かつ高処理能力を備えたシステムを必要としない。また、スイッチの押し操作の有効性が判定されるので、誤作動が生じにくい。したがって、ＨＭＩ機器における非接触操作を容易に実現することができる。
【００１８】
また、何らかの要因によって３次元の位置座標が変化しても、スイッチの押し操作の有効性が相対的な位置座標を利用して判定されるので、誤操作につながりにくい。しかも、スイッチの押し操作を有効と判定する条件が満たされることは、人体またはその一部などがセンサ部の前を偶然通り過ぎた場合や、指示体が操作のために予備動作を行ったり、操作を終えたときに復帰動作を行ったりする場合などでは極めて起こりにくいため、誤操作が生じにくい。したがって、ＨＭＩ機器における非接触操作の検出を確実かつ容易に実現することができる。
【００１９】
前記操作処理装置において、前記算出部は、前記指示体の前記押し操作検出方向の変化に対する前記第２検出値に基づいて、前記押し操作検出方向の前記指示体の移動速度をさらに算出し、前記判定部は、前記移動量が前記所定量範囲内にあり、かつ前記移動速度が所定速度範囲内にあるときに、前記指示体による前記スイッチの押し操作が有効であると判定し、前記移動量が前記所定量範囲外にあるか、または前記移動速度が前記所定速度範囲外にあるときに、前記押し操作が無効であると判定してもよい。
【００２０】
上記の構成によれば、指示体によるスイッチの押し操作が有効であるか無効であるかを、より正確に判定することができる。
【００２１】
前記操作処理装置において、前記判定部は、前記特定方向が２つの方向であるとき、２つの前記特定方向への前記指示体のそれぞれの変位量が所定値以下であれば、前記押し操作が有効であると判定し、前記特定方向が１つの方向であるとき、１つの前記特定方向への前記指示体の変位量が所定値以下であれば、前記押し操作が有効であると判定する。
【００２２】
上記の構成によれば、指示体の意図しない動きなどで、指示体が特定方向に大きく変位しなかったときに、そのときの指示体の動きを押し操作として有効にする。なお、３つの方向のうち、スイッチの特定およびスイッチの押し操作に関係のない方向については、判定に用いるようにすれば、さらにスイッチの誤操作を防止することができる。
【００２３】
前記操作処理装置において、前記判定部は、押し操作される直前の前記指示体の前記押し操作検出方向の位置と、前記押し操作が完了して指示体が退いた前記押し操作検出方向の位置との差が所定差範囲内の値であれば、前記押し操作が有効であると判定し、前記差が前記所定差範囲外の値であれば、前記押し操作が無効であると判定してもよい。
【００２４】
上記の構成によれば、オルタネイト型のスイッチやワンショット型のスイッチなどの押し操作の有効または無効をより正確に判定することができる。
【００２５】
前記操作処理装置において、前記スイッチは、前記押し操作の持続でＯＮ状態を保持し、前記押し操作の除去でＯＮ状態を解除し、前記判定部は、押し操作された前記指示体の前記押し操作検出の位置が所定位置範囲にある状態が維持されていれば、前記押し操作が有効であると判定し、前記指示体の前記押し操作検出の位置が所定位置範囲から外れると、前記押し操作が終了であると判定してもよい。
【００２６】
上記の構成によれば、モーメンタリ型のスイッチの押し操作の有効または無効をより正確に判定することができる。
【００２７】
前記操作処理装置は、前記表示部上でタッチ操作を受け付けるタッチパネルをさらに備え、前記表示部が、前記タッチパネルによるタッチ操作を受け付けるタッチスイッチを含むメイン画面を表示するとともに、前記スイッチが１次元方向または２次元方向に集約して配置されたスイッチ画面を前記メイン画面上に表示してもよい。
【００２８】
上記の構成によれば、タッチスイッチによるタッチ操作が可能な場合には、タッチ操作を行う一方、非接触でスイッチの操作を行う必要がある場合、スイッチ画面に対する非接触操作を行うことができる。また、スイッチがスイッチ画面に集約して配置されているので、センサ部の検出範囲を広くしたり、センサ部の分解能を高めたりする必要がない。
【００２９】
前記操作処理装置において、前記表示部は、前記指示体の位置がいずれの前記スイッチを特定する位置から外れているときに、外れている方向、外れている位置を表す位置情報、または外れている位置から前記スイッチを特定する位置に移動させるための案内情報を前記スイッチ画面において表示してもよい。
【００３０】
上記の構成によれば、指示体がスイッチを特定する位置から外れている方向、外れている位置を表す位置情報、または外れている位置から前記スイッチを特定する位置に移動させるための案内情報が表示される。これにより、スイッチを特定するためにどの方向に指示体を移動させればよいかを容易に把握することができる。
【００３１】
前記操作処理装置において、前記センサ部は、近接度合と直交２軸方向の変位とを測定可能なセンサと、前記センサが出力する測定値を三次元座標に変換する演算処理部とを有していてもよい。
【発明の効果】
【００３２】
本発明の一態様によれば、ＨＭＩ機器における非接触操作を容易に実現することができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の各実施形態に係る制御システムの構成を示すブロック図である。
【図２】上記制御システムにおけるプログラマブル表示器の外観の構成を示す正面図である。
【図３】上記プログラマブル表示器の要部の構成を示すブロック図である。
【図４】上記プログラマブル表示器の表示パネルに表示されるメイン画面の構成を示す図である。
【図５】（ａ）〜（ｇ）は上記メイン画面に設けられるスイッチ画面の表示状態を示す図である。
【図６】上記制御システムにおけるプログラマブル表示器の表示パネルに表示される食品製造工程を表すメイン画面の構成を示す図である。
【図７】（ａ）〜（ｈ）は図６に示すメイン画面上に表示されるスイッチ画面の表示状態を示す図である。
【図８】上記プログラマブル表示器１の近接操作制御部３３による制御の各状態を示す状態遷移図である。
【発明を実施するための形態】
【００３４】
〔実施形態１〕
本発明の実施形態１について図１〜図５に基づいて説明すると、以下の通りである。
【００３５】
まず、本実施形態に係る制御システムについて説明する。
【００３６】
図１は、本実施形態に係る制御システムの構成を示すブロック図である。図２は、当該制御システムにおけるプログラマブル表示器１の外観の構成を示す正面図である。図３は、プログラマブル表示器１の要部の構成を示すブロック図である。図４は、プログラマブル表示器１の表示パネル１６に表示されるメイン画面１００の構成を示す図である。
【００３７】
プログラマブル表示器１（操作処理装置）は、専用のＯＳ（Operating System）を実装した組み込み機器であり、プログラマブル表示器１の各種の機能を実現するためのＨＭＩプログラムを実行する機能を備えている。プログラマブル表示器１は、工場などの厳しい環境に適合するように、防塵性、防滴性、耐振動性などを高めたＨＭＩ機器である。
【００３８】
ＨＭＩプログラムは、外部機器との通信、当該外部機器から取得したデータの表示、入力装置を用いた操作者による操作の受け付けなどの各種の機能を実現するプログラムである。
【００３９】
まず、プログラマブル表示器１のハードウェア構成について説明する。
【００４０】
図１に示すように、プログラマブル表示器１は、ＣＰＵ（Central Processing Unit）１１と、メインメモリ１２と、ＲＯＭ（Read Only Memory）１３と、ユーザメモリ１４と、タッチパネルを１５と、表示パネル１６（表示部）と、近接センサ１７と、インターフェース部１８とを備えている。
【００４１】
ＣＰＵ１１は、ＨＭＩプログラムを実行する処理装置である。具体的には、ＣＰＵ１１は、ＨＭＩプログラムの実行に際して、メインメモリ１２、ユーザメモリ１４、タッチパネル１５、近接センサ１７などからデータを受け取り、当該データに対して演算または加工を施した結果を、メインメモリ１２、ユーザメモリ１４、表示パネル１６などに出力する。
【００４２】
メインメモリ１２は、プログラマブル表示器１における主記憶装置を構成するメモリであり、ＤＲＡＭ（Dynamic Random Access Memory）によって構成される。
【００４３】
ＲＯＭ１３は、プログラマブル表示器１の起動時やリセット時に実行されるＢＩＯＳ（Basic Input Output System）などの、プログラマブル表示器１の動作に不可欠なプログラムを記憶している。
【００４４】
ユーザメモリ１４は、ユーザが作成したデータ、例えば後述するＨＭＩ画面を表示するためのメイン画面データと、近接センサ１７によって操作するキーを含むスイッチ画面を表示するスイッチ画面データとを記憶する大容量の記憶装置である。ユーザメモリ１４は、ＦＥＰＲＯＭ（Flash Erasable and Programmable ROM）などで構成されている。
【００４５】
図２に示すように、タッチパネル１５は、表示パネル１６上に配置されており、表示パネル１６に表示された画面上でのタッチ操作を受け入れて、タッチ操作信号を入力信号として出力する。
【００４６】
表示パネル１６は、ユーザメモリ１４に記憶されているメイン画面データに基づいたＨＭＩ画面を表示する。表示パネル１６としては、液晶表示パネル、ＥＬ（Electro-Luminescence）表示パネルなどの平板型表示パネルが用いられる。
【００４７】
図２に示すように、タッチパネル１５および表示パネル１６は、プログラマブル表示器１の筐体における前面の額縁部１ａに組み込まれている。
【００４８】
近接センサ１７は、指などの指示体の位置を検出するセンサである。近接センサ１７は、発光部と受光部とを有し、発光部が出射する光が指示体によって反射した光を複数の受光部のそれぞれの受光量に基づいて指示体の位置を検出する。具体的には、近接センサ１７は、発光部として赤外線ＬＥＤを有し、受光部として４つのフォトダイオードを有する赤外線近接センサである。４つのフォトダイオードは、縦方向（Ｙ１方向およびＹ２方向）および横方向（Ｘ１方向およびＸ２方向）にそれぞれ異なる感度指向性を有している。このように構成される近接センサ１７は、検出対象の近接度合と、検出対象の直交２軸方向の変位とを測定することが可能である。
【００４９】
近接センサ１７は、横方向データｘ１，ｘ２と縦方向データｙ１，ｙ２とで表される２つのデータ（反射光の強度および角度）を検出データ（測定値）として出力する。この検出データは、非線形であるため、そのままの形態では指示体の位置を判別するために利用することが難しい。そこで、検出データの相互関係および適切に選ばれた定数に基づいた、検出データを三次元座標に変換する演算を行うことにより、検出データをある程度歪みを抑えたＸＹ座標の検出値に変換することができる。本実施形態では、近接センサ１７と、この演算機能を行う演算処理部との組み合わせをセンサ部と称する。演算処理部は、近接センサ１７に内蔵されていてもよいし、後述するＨＭＩ制御部３に含まれていてもよい。
【００５０】
近接センサ１７は、例えば、球体面（あるいは楕円体面）上にほぼ同じ強度を有し、かつ近接センサ１７から遠ざかるほど同じ強度の球体面が広くなる（強度が低下する）ように赤外光を出射する。これにより、指示体の位置を検出できる範囲は、近接センサ１７に近いほど狭く、遠ざかるほど広くなる。
【００５１】
図２に示すように、近接センサ１７は、表示パネル１６の近傍に位置するように、上述の額縁部１ａにおける所定の位置に組み込まれている。近接センサ１７の配置位置としては、図２に示すように、オペレータの利き手に関わらず操作しやすい、額縁部１ａの下部における中央が好ましい。あるいは、近接センサ１７は、額縁部１ａの外周側面に装着できるように構成されていてもよい。これにより、近接センサ１７は、オプション部品としてプログラマブル表示器１に後付けすることができる。
【００５２】
なお、近接センサ１７は、上記の赤外線近接センサに限定はされない。しかしながら、赤外線近接センサはキーの操作を検出するセンサとしては機能、構造などの点で最も適している。
【００５３】
インターフェース部１８は、制御機器２と通信可能に接続するための接続部である。インターフェース部１８は、シリアルインターフェース、ＬＡＮ（Local Area Network）などの各種のインターフェースを装備している。
【００５４】
制御機器２は、ＰＬＣ（Programmable Logic Controller）、温度調節計、インバータなどの外部機器であり、プログラマブル表示器１と通信する機能を備えている。制御機器２は、デバイス２０との間でデータの授受を行なう。デバイス２０としては、センサ、スイッチのような入力機器や、アクチュエータ、リレー、電磁弁、表示器のような出力機器が用いられる。
【００５５】
続いて、プログラマブル表示器１のシステム構成について説明する。
【００５６】
図３に示すように、プログラマブル表示器１は、制御機能を有する部分としてＨＭＩ制御部３を含んでいる。
【００５７】
ＨＭＩ制御部３は、ＨＭＩプログラムがＣＰＵ１１によって実行されることで実現される、ＨＭＩ機能を有する部分である。
【００５８】
ここで、ＨＭＩ機能とは、ユーザの入力操作に応じた制御機器２への指示の発生と、制御機器２からの各種データの取得と、取得した当該各種データの表示および上記入力操作の受け付けを行うためのＨＭＩ画面の表示とを含む機能である。ＨＭＩ制御部３は、ＨＭＩ機能として、ユーザの操作入力および制御機器２が保持するデータの変化に基づいて各部を制御する動作制御部３１と、ＨＭＩ画像の表示を制御する表示制御部３２とを有している。また、ＨＭＩ制御部３は、近接センサ１７によって非接触で行われるユーザのジェスチャ操作入力に基づいて各部を制御する近接操作制御部３３を有している。
【００５９】
ＨＭＩ画面は、制御機器２に接続されたデバイス２０の状態を表示したり、タッチパネル１５への操作を受け付けたりするための各種のオブジェクトを含む画面である。ＨＭＩ画面に設けられるオブジェクトとしては、ランプ画像、データ表示器画像、スイッチ画像などの各種の部品画像が用意されている。このようなＨＭＩ画面を表示するための画面データは、パーソナルコンピュータなどにおいて作成されて、ユーザメモリ１４に保存されている。
【００６０】
動作制御部３１は、タッチパネル１５におけるユーザのタッチによる入力操作に応じた操作指示を発生する。また、動作制御部３１は、後述する近接操作制御部３３の判定部３３３によって有効と判定されたキーの押し操作に応じた操作指示を発生する。これらの操作指示としては、制御機器２の起動・停止指示、制御機器２に与える制御データの変更、画面の切り替えなどがある。また、動作制御部３１は、制御機器２のデータの変化に応じた制御指示を発生する。この制御指示としては、画面の切り替えなどがある。
【００６１】
表示制御部３２は、メイン画面データに基づいて表示パネル１６にＨＭＩ画面を表示させる制御処理を行う。また、表示制御部３２は、インターフェース部１８を介して取得した制御機器２のデータを、ＨＭＩ画面に反映させる処理を行う。例えば、表示制御部３２は、ＨＭＩ画面において、上述のランプ画像を点灯・消灯させたり、上述のデータ表示器画像にデータを表示させたりする処理を行う。また、表示制御部３２は、上記操作指示に応じてＨＭＩ画面の状態を変化させる処理を行う。例えば、表示制御部３２は、上述のスイッチ画像を操作する上記操作指示を受けて、当該スイッチ画像の表示状態（色、形状など）を変化させる処理を行う。さらに、表示制御部３２は、ユーザの操作に応じてＨＭＩ画面の切り替え処理を行なう。
【００６２】
近接操作制御部３３は、近接センサ１７によるスイッチ画面におけるユーザのジェスチャによる入力操作に伴う指示体の動きを検出し、検出結果に基づいて、入力操作がスイッチ画面上のキーを特定し、かつ当該キーを押す操作として有効であるか否かを判定する。近接操作制御部３３は、ジェスチャ操作がキーを特定し、かつ当該キーを押す操作として有効であると判定したときには、当該キーが押し操作されたことをキーの座標位置などとともに動作制御部３１に通知する。また、近接操作制御部３３は、近接センサ１７による検出結果に基づいて、スイッチ画面の表示に関する指示を表示制御部３２に与える。近接操作制御部３３は、上記の機能を実現するために、検出部３３１と、算出部３３２と、判定部３３３とを有している。
【００６３】
検出部３３１は、近接センサ１７が３次元の３つの方向（Ｘ方向、Ｙ方向およびＺ方向）に対してそれぞれ検出した検出値のうち、２つの方向の少なくともいずれか一方の検出値（第１検出値）によって指示体が指示するキーを特定する。また、検出部３３１は、キーを特定した方向（特定方向）以外の１つの方向の検出値（第２検出値）によってキーの押し操作を検出する。３つの方向は、互いに直角をなす関係にあることが望ましいが、必ずしも互いに直角をなしていなくてもよく、直角より僅かに傾いていてもよい。
【００６４】
具体的には、検出部３３１は、スイッチ画面におけるキーの配列が横一列、縦一列などの１次元方向の配列である場合、１つの方向の第１検出値でキーを特定し、残りの２つの方向のうちの１つの方向の第２検出値によってキーの押し操作を検出する。また、スイッチ画面におけるキーの配列が複数列などの２次元方向の配列である場合、２つの方向の第１検出値でキーを特定し、残りの１つの方向の第２検出値によってキーの押し操作を検出する。
【００６５】
算出部３３２は、指示体の押し操作を検出する方向（押し操作検出方向）の変化に対する当該方向の検出値に基づいて、指示体が押し操作する方向の移動量および移動速度を算出する。
【００６６】
判定部３３３は、上記の移動量が所定量範囲内にあるときに、指示体によるキーの押し操作が有効であると判定する。判定部３３３は、有効であると判定したキーの押し操作を動作制御部３１に通知する。また、判定部３３３は、上記の移動量が所定量範囲外にある（所定量範囲を超える）ときに、指示体によるキーの押し操作が無効であると判定する。
【００６７】
あるいは、判定部３３３は、上記の移動量が所定量範囲内にあり、かつ上記の移動速度が所定速度範囲内にあるときに、指示体によるキーの押し操作が有効であると判定してもよい。また、判定部３３３は、上記の移動量が所定量範囲外にあるか（所定量範囲を超えるか）、または上記の移動速度が所定速度範囲外にある（所定速度範囲を超える）ときに、指示体によるキーの押し操作が無効であると判定してもよい。
【００６８】
判定部３３３は、上述した特定方向が２つの方向であるとき、２つの特定方向への指示体のそれぞれの変位量が所定値以下であれば、押し操作が有効であると判定する。あるいは、判定部３３３は、特定方向が１つの方向であるとき、１つの特定方向への指示体の変位量が所定値以下であれば、押し操作が有効であると判定してもよい。また、判定部３３３は、３つの方向のうち、キーの特定およびキーの押し操作に関係のない方向を判定に用いてもよいし、用いなくてもよい。
【００６９】
指示体の特定方向の動きでキーを特定し、指示体の押し操作検出方向の動きでキーの押し操作を行う場合、残りの１方向はキーの特定および押し操作には関係ない。ただし、その関係のない方向、例えば前後方向に対して、斜め下方向に指示体が引く動作をすると、上下方向が押し操作検出方向であるとすれば、指示体の引く動作が下方向の変位と判定される結果、押し操作とみなされる可能性がある。そこで、キーの特定および押し操作には関係ない方向の指示体の動きも上記の判定に用いると、より判定精度が高くなる。
【００７０】
判定部３３３は、１回の押し操作でＯＦＦ状態からＯＮ状態に切り替えるオルタネイト型のキーなどによる操作を判定する。具体的には、判定部３３３は、押し操作される直前の指示体の押し操作検出の位置と、押し操作が完了して指示体が退いた押し操作検出方向の位置との差が所定差範囲内の値であれば、押し操作が有効であると判定する。また、判定部３３３は、上記の差が所定差範囲外の値であれば、押し操作が無効であると判定してもよい。
【００７１】
ここで、表示制御部３２は、スイッチ画面データに基づいて表示パネル１６にスイッチ画面を表示させる制御処理を行う。
【００７２】
例えば、図４に示すように、スイッチ画面１０１は、メイン画面１００に重ねて所定の位置に表示される。スイッチ画面１０１は、長方形に形成されており、両端にマークＭ１，Ｍ２が配置され、マークＭ１，Ｍ２の間に複数（ここでは５個）のキーＫ１〜Ｋ５が横一列（１次元）に集約して配置されている。なお、スイッチ画面１０１に含まれるキーの数は１つであってもよい。
【００７３】
キーＫ１〜Ｋ５は、１回の操作でＯＮし、続く１回の押し操作でＯＦＦするオルタネイト型のスイッチとして設定されている。マークＭ１は、指示体がキーＫ１〜Ｋ５を指示する範囲を超えて左側に寄りすぎているときに警告表示するために設けられている。マークＭ２は、指示体がキーＫ１〜Ｋ５を指示する範囲を超えて右側に寄りすぎているときに警告表示するために設けられている。
【００７４】
スイッチ画面１０１には、キーＫ１〜Ｋ５が一列（１次元）に配置されている。これに限らず、キーＫ１〜Ｋ５は、複数例（２次元）に配置されてもよい。また、スイッチ画面１０１の形状も、長方形（方形）に限らず、円形、楕円形、多角形などであってもよい。また、キーの個数についても５個に限定されない。
【００７５】
続いて、スイッチ画面におけるキーＫ１〜Ｋ５の操作を近接センサ１７によって非接触で行うジェスチャ操作に伴うプログラマブル表示器１の動作について説明する。
【００７６】
図５の（ａ）〜（ｇ）は、メイン画面１００に設けられるスイッチ画面１０１の表示状態を示す図である。
【００７７】
なお、以降の説明では、キーＫ１〜Ｋ５を選択する方向（水平方向）をＸ方向とし、キーＫ１〜Ｋ５のいずれか１つを操作する方向（鉛直方向）をＹ方向とし、Ｚ方向を使用しない。
【００７８】
指示体としてはオペレータの指（指先）を想定しているが、指以外に握り拳を指示体としてもよく、あるいは人体以外にはペンなどを指示体として用いてもよい。握り拳を指示体とする場合、握り拳におけるキーに最も近い突出した部分が、指示体として近接センサ１７によって検出される。
【００７９】
表示制御部３２は、スイッチ画像データに基づいて、スイッチ画面１０１をメイン画面１００における所定の位置に表示するように、表示パネル１６に指示する。これにより、図４に示すように、メイン画面１００の所定の位置にスイッチ画面１０１が表示される。
【００８０】
指示体が、近接センサ１７の検出範囲内に存在する状態では、検出部３３１が指示体の位置を検出する。検出部３３１から出力される検出値は、複数の等強度の擬似楕円体面における方位と当該擬似楕円体の大きさとに対応した非線形の値である。このため、検出部３３１は、この値を三軸直交空間座標内の指示体の位置に変換する計算を行う。この計算は、魚眼レンズによって撮像された画像から被写体の空間位置を再構成する公知の射影変換手法に類似しており、初等関数と適切に選んだ定数とを用いて行われる。
【００８１】
指示体がキーＫ１を指示する位置に達すると、検出部３３１は、Ｘ方向の指示体が指示する位置に基づいて、キーＫ４を特定する。表示制御部３２は、特定されたキーＫ４の位置に基づいて、選択を表す表示色（例えば黄色）でキーＫ４を表示するように表示パネル１６を制御する。これにより、図５の（ａ）に示すように、キーＫ４が黄色で表示される。
【００８２】
この状態で、指示体が鉛直下方（Ｙ方向）に下がり、その位置からほぼ元の位置に戻されると、算出部３３２は、検出部３３１からの指示体が移動した方向の検出値に基づいて、指示体の移動量および移動速度を算出する。ここで、算出部３３２は、判定部３３３による判定に指示体の移動量のみを用いる場合、移動量のみを算出するようにしてもよい。
【００８３】
判定部３３３は、算出部３３２によって算出された移動量が所定量範囲内にあるときに、指示体によるキーＫ４の操作が有効であると判定する（キーダウンイベントの発生）。あるいは、判定部３３３は、算出された移動量が所定量範囲内にあり、かつ算出された移動速度が所定速度範囲内にあるときに、指示体によるキーＫ４の操作が有効であると判定してもよい。
【００８４】
指示体によるキーＫ４の操作が有効であると判定されると、表示制御部３２は、操作を表す表示色（例えば緑色）でキーＫ４を表示するように表示パネル１６を制御する。これにより、図５の（ｂ）に示すように、キーＫ４が緑色で表示される。
【００８５】
また、判定部３３３は、算出部３３２によって算出された移動量が所定量範囲を超えるときに、指示体によるキーＫ４の操作が無効であると判定する。あるいは、判定部３３３は、算出された移動量が所定量範囲を超えるか、または算出された移動速度が所定速度範囲を超えるときに、指示体によるキーＫ４の操作が無効であると判定してもよい。
【００８６】
指示体によるキーＫ４の操作が無効であると判定されると、表示制御部３２は、操作不可を表す表示色（例えば赤色）でキーＫ４を表示するように表示パネル１６を制御する。これにより、図５の（ｃ）に示すように、キーＫ４が赤色で表示される。
【００８７】
指示体が近接センサ１７の検出範囲を超えて近接センサ１７から遠すぎる位置にあるとき、表示制御部３２は、検出部３３１の検出値に基づいて、検出不可を表す表示色（例えば灰色）でキーＫ１〜Ｋ５を表示するように表示パネル１６を制御する。これにより、図５の（ｄ）に示すように、キーＫ１〜Ｋ５が灰色で表示される。
【００８８】
また、指示体が近接センサ１７の検出範囲内にあっても近接センサ１７に近すぎる位置にあるとき、近接センサ１７に触れないようにユーザに報知する必要がある。表示制御部３２は、検出部３３１の検出値に基づいて、操作不可を表す表示色（例えば橙色）でキーＫ１〜Ｋ５を表示するように表示パネル１６を制御する。これにより、図５の（ｅ）に示すように、キーＫ１〜Ｋ５が橙色（警告色）で表示される。
【００８９】
指示体が近接センサ１７の検出範囲外で左に寄りすぎている位置にあるとき、表示制御部３２は、検出部３３１の検出値に基づいて、点灯色（例えば橙色）でマークＭ１を表示するように表示パネル１６を制御する。これにより、図５の（ｆ）に示すように、マークＭ１が橙色（警告色）で表示される。
【００９０】
また、指示体が近接センサ１７の検出範囲外で右に寄りすぎている位置にあるとき、表示制御部３２は、検出部３３１の検出値に基づいて、点灯色（例えば橙色）でマークＭ２を表示するように表示パネル１６を制御する。これにより、図５の（ｇ）に示すように、マークＭ２が橙色で表示される。
【００９１】
なお、Ｚ方向については、規定の検出範囲内であれば指示体の位置が変わっても、Ｘ方向およびＹ方向の検出値の倍率を補正することで、ほぼ同じ感覚で操作を行うことができる。これは、指示体が近接センサ１７に近づくほど、検出できる範囲が狭くなる（角度で言えば広くなる）ので、Ｘ方向およびＹ方向の動きが大きく検出されてしまう（ダイナミックになる）。指示体の同じ１ｃｍの動きでも、近接センサ１７からのＺ方向の位置に応じて角度が異なる。このため、指示体の僅かな動きが大きく検出される値を補正し、Ｚ方向の位置に応じて補正値を異ならせる。これにより、近接センサ１７から遠いか近いかというバラツキを吸収することができる。
【００９２】
引き続き、食品製造の工程におけるメイン画面に表示されるスイッチ画面におけるキーＫ１〜Ｋ５の操作に伴うプログラマブル表示器１の動作について説明する。
【００９３】
図６は、プログラマブル表示器１の表示パネル１６に表示される食品製造工程を表すメイン画面の構成を示す図である。図７の（ａ）〜（ｈ）は、図６に示すメイン画面上に表示されるスイッチ画面２０１の表示状態を示す図である。
【００９４】
表示制御部３２は、図６に示すメイン画面２００を表示パネル１６に表示させる。メイン画面２００は、食品製造の工程を表す画面である。メイン画面２００は、スイッチ画面２０１と、工程画像２０２と、台数表示器２０３と、設定値表示器２０４と、運転開始スイッチ２０５と、運転停止スイッチ２０６と、高速運転選択スイッチ２０７と、低速運転選択スイッチ２０８と、工程選択スイッチ２１１〜２１３とを有している。
【００９５】
スイッチ画面２０１は、キーＫ１〜Ｋ５と、マークＭ１，Ｍ２とを有している。キーＫ１〜Ｋ５およびマークＭ１，Ｍ２は、上述のスイッチ画面１０１におけるキーＫ１〜Ｋ５およびマークＭ１，Ｍ２と同様の形態でスイッチ画面２０１において集約して配置されている。
【００９６】
キーＫ１は、１回の操作で後述する設定値表示器２０４に入力される設定値を複数減少させる操作を行うために設けられている。キーＫ２は、設定値を１つずつ減少させる操作を行うために設けられている。キーＫ３は、設定値を１つずつ増加させる操作を行うために設けられている。キーＫ４は、１回の操作で設定値を複数増加させる操作を行うために設けられている。キーＫ５は、スイッチ画面２０１を他のスイッチ画面２０１に切り替えるために設けられている。
【００９７】
他のスイッチ画面２０１としては、運転開始スイッチ２０５、運転停止スイッチ２０６、高速運転選択スイッチ２０７および低速運転選択スイッチ２０８とそれぞれ同等の機能を有するキーを含むスイッチ画面、工程選択スイッチ２１１〜２１３とそれぞれ同等の機能を有するスイッチ画面などが用意されている。
【００９８】
工程画像２０２は、工程選択スイッチ２１１によって選択された製造工程を表す画像である。図６に示す例では、工程画像２０２が充填工程を表している。
【００９９】
台数表示器２０３は、製品の実績台数を表示するために設けられている数値表示器の部品画像である。設定値表示器２０４は、製造台数の設定値を入力かつ表示するための数値表示器の部品画像である。設定値表示器２０４がタッチされると、表示制御部３２の制御によって、テンキーがメイン画面２００上に表示され、テンキーによる数値入力が可能になる。
【０１００】
運転開始スイッチ２０５は、充填機の運転開始を指示するための操作スイッチの部品画像である。運転停止スイッチ２０６は、充填機の運転停止を指示するための操作スイッチの部品画像である。
【０１０１】
高速運転選択スイッチ２０７は、充填機の高速運転を選択するための操作スイッチの部品画像である。低速運転選択スイッチ２０８は、充填機の低速運転を選択するための操作スイッチの部品画像である。
【０１０２】
工程選択スイッチ２１１は、充填工程のメイン画面２００に表示を切り替えるために設けられた切替操作スイッチの部品画像である。工程選択スイッチ２１２は、ラベリング工程を表す図示しないメイン画面に表示を切り替えるために設けられた切替操作スイッチの部品画像である。工程選択スイッチ２１２は、印字検査工程を表す図示しないメイン画面に表示を切り替えるために設けられた切替操作スイッチの部品画像である。
【０１０３】
メイン画面２００において、設定値表示器２０４、運転開始スイッチ２０５、運転停止スイッチ２０６、高速運転選択スイッチ２０７、低速運転選択スイッチ２０８および工程選択スイッチ２１１〜２１３は、タッチ操作を受け付けるタッチスイッチとして機能する。
【０１０４】
タッチパネル１５による通常の操作を行う場合、オペレータは、メイン画面２００に設けられた、設定値表示器２０４、運転開始スイッチ２０５、運転停止スイッチ２０６、高速運転選択スイッチ２０７、低速運転選択スイッチ２０８、工程選択スイッチ２１１〜２１３などを操作する。
【０１０５】
上述の図５に示す例では、スイッチ画面１０１がメイン画面１００に常時表示される。これに対し、メイン画面２００においては、通常のタッチ操作が行われているときには、近接センサ１７が指示体を検出しないので、スイッチ画面２０１が表示されない。
【０１０６】
スイッチ画面２０１に対してジェスチャ操作を行う場合、オペレータは、近接センサ１７に指を近づける。表示制御部３２は、検出部３３１によって検出された指示体の位置の検出値が検出範囲内に入ると、スイッチ画面２０１をメイン画面２００における所定の位置に表示するように、表示パネル１６に指示する。これにより、スイッチ画面２０１が表示される。
【０１０７】
指示体が近接センサ１７の検出範囲を超えて近接センサ１７から遠すぎる位置にあるとき、表示制御部３２は、検出部３３１の検出値に基づいて、スイッチ画面２０１の表示を停止するように表示パネル１６を制御する。これにより、メイン画面２００上にスイッチ画面２０１が表示されなくなる。
【０１０８】
なお、以下の説明で参照する図７においては、便宜上、スイッチ画面２０１におけるキーＫ１〜Ｋ５およびマークＭ１，Ｍ２の配列のみを示す。
【０１０９】
スイッチ画面２０１が表示された状態で、指示体がキーＫ３を指示する位置に達すると、検出部３３１はキーＫ３を特定する。表示制御部３２は、選択を表す表示色（例えば黄色）で特定されたキーＫ３を表示するように表示パネル１６を制御する。これにより、図７の（ａ）に示すように、キーＫ４が黄色で表示される。
【０１１０】
この状態で、指示体がＹ方向の鉛直下方に下がり、その位置からほぼ元の位置に戻されると、算出部３３２は指示体の移動量および移動速度を算出する。
【０１１１】
判定部３３３は、算出部３３２によって算出された移動量が所定量範囲内にあるときに、指示体によるキーＫ３の操作が有効であると判定する（キーダウンイベントの発生）。あるいは、判定部３３３は、算出された移動速度が所定速度範囲内にあるときに、指示体によるキーＫ３の操作が有効であると判定してもよい。
【０１１２】
この判定時には、表示制御部３２は、操作を表す表示色（例えば緑色）でキーＫ３を表示するように表示パネル１６を制御する。これにより、図７の（ｂ）に示すように、キーＫ３が緑色で表示される。
【０１１３】
また、判定部３３３は、算出部３３２によって算出された移動量が所定量範囲を超えるときに、指示体によるキーＫ３の操作が無効であると判定する。あるいは、判定部３３３は、算出された移動量が所定量範囲を超えるか、または算出された移動速度が所定速度範囲を超えるときに、指示体によるキーＫ３の操作が無効であると判定してもよい。
【０１１４】
この判定時には、表示制御部３２は、操作不可を表す表示色（例えば赤色）でキーＫ３を表示するように表示パネル１６を制御する。これにより、図７の（ｃ）に示すように、キーＫ３が赤色で表示される。
【０１１５】
指示体が近接センサ１７の検出範囲外で左に寄りすぎている位置にあるとき、表示制御部３２は、検出部３３１の検出値に基づいて、点灯色（例えば橙色）でマークＭ１を表示するように表示パネル１６を制御する。これにより、図７の（ｄ）に示すように、マークＭ１が橙色（警告色）で表示される。ここでのマークＭ１は、指示体を右側に移動させることを示唆するように右向きの矢印を示している。
【０１１６】
また、指示体が近接センサ１７の検出範囲外で右に寄りすぎている位置にあるとき、表示制御部３２は、検出部３３１の検出値に基づいて、上記の点灯色でマークＭ２を表示するように表示パネル１６を制御する。これにより、図７の（ｅ）に示すように、マークＭ２が橙色（警告色）で表示される。ここでのマークＭ２は、指示体を左側に移動させることを示唆するように左向きの矢印を示している。
【０１１７】
また、指示体がキーＫ３を選択した位置であっても近接センサ１７に近すぎる位置にあるとき、表示制御部３２は、検出部３３１の検出値に基づいて、操作不可を表す表示色（例えば橙色）でキーＫ１，Ｋ２，Ｋ４，Ｋ５を表示するように表示パネル１６を制御する。これにより、図７の（ｆ）に示すように、キーＫ１，Ｋ２，Ｋ４，Ｋ５が橙色（警告色）で表示され、キーＫ３は選択色（黄色）で表示される。
【０１１８】
指示体が近接センサ１７の検出範囲外で上に寄りすぎている位置にあるとき、表示制御部３２は、検出部３３１の検出値に基づいて、点灯色（例えば橙色）でマークＭ１，Ｍ２を表示するように表示パネル１６を制御する。これにより、図７の（ｇ）に示すように、マークＭ１，Ｍ２が橙色で表示される。ここでのマークＭ１，Ｍ２は、指示体を下側に移動させることを示唆するように下向きの矢印を示している。
【０１１９】
また、指示体が近接センサ１７の検出範囲外における下に寄りすぎている位置にあるとき、表示制御部３２は、検出部３３１の検出値に基づいて、点灯色でマークＭ１，Ｍ２を表示するように表示パネル１６を制御する。これにより、図７の（ｈ）に示すように、マークＭ１，Ｍ２が橙色で表示される。ここでのマークＭ１，Ｍ２は、指示体を上側に移動させることを示唆するように上向きの矢印を示している。
【０１２０】
なお、タッチ操作とジェスチャ操作との切り替えは、様々な方法で行うことが考えられるため特定はしないが、例えば、以下のような方法で行うことが考えられる。
【０１２１】
第１の方法では、指示体が検出範囲内に入ったときに、スイッチ画面を表示してジェスチャ操作を有効とし、指示体が検出範囲外に出たときに、スイッチ画面を消去してジェスチャ操作を無効とする（図６に示す例）。ジェスチャ操作が有効であるとき、タッチ操作を無効にしてもよいし、タッチ操作を有効のままにしてもよい。
【０１２２】
第２の方法では、メイン画面の所定のタッチ操作によってスイッチ画面を表示し、所定のタッチ操作によってスイッチ画面を消去する。スイッチ画面が表示されているときは、ジェスチャ操作およびタッチ操作をともに有効とする。
【０１２３】
いずれの方法を採用した場合でも、ジェスチャ操作をする必要がない場合、タッチ操作を行うことが可能となる。
【０１２４】
ここで、近接センサ１７によるキー操作が行われるときの各状態について説明する。
【０１２５】
図８は、プログラマブル表示器１の近接操作制御部３３による制御の各状態を示す状態遷移図である。
【０１２６】
以下の説明では、ｌｐｄｆ｛ｘ１，ｘ２，ｙ１，ｙ２｝、Ｃ１ｆ＿ｎｅａｒＷａｒｎＬｅｖｅｌおよびＣ０ａ＿ｍｉｎＬｅｖｅｌを用いている。
【０１２７】
ｌｐｄｆ｛ｘ１，ｘ２，ｙ１，ｙ２｝は、近接センサ１７によって得られる４つの検出値である。
【０１２８】
Ｃ１ｆ＿ｎｅａｒＷａｒｎＬｅｖｅｌは、指示体が近接センサ１７に近すぎると判定する閾値である。
【０１２９】
Ｃ０ａ＿ｍｉｎＬｅｖｅｌは、指示体が近接センサ１７から遠すぎると判定する閾値である。
【０１３０】
図８に示すように、まず、Ｓ０＿ｈｕｎｔ状態が起点となる。Ｓ０＿ｈｕｎｔ状態では、ｌｐｄｆ｛ｘ１，ｘ２，ｙ１，ｙ２｝のいずれかが、Ｃ１ｆ＿ｎｅａｒＷａｒｎＬｅｖｅｌより大きい場合、指示体が近接センサ１７に近すぎるため、Ｓ１Ｃ＿ｔｏｏＮｅａｒＷａｒｎへ遷移して警告を発する。
【０１３１】
ｌｐｄｆ｛ｘ１，ｘ２，ｙ１，ｙ２｝の全てがＣ０ａ＿ｍｉｎＬｅｖｅｌより小さい場合、指示体が近接センサ１７から遠すぎるため、Ｓ１Ｂ＿ｔｏｏＦａｒへ遷移して警告を発する。
【０１３２】
指示体の下方向への移動変化速度が既定値を超えた場合、そのときのＸ方向、Ｙ方向およびＺ方向の各検出値を初期値として記録し、指示体の動きの弁別を開始するためにＳ２＿ｉｎＶＡｃｔへ遷移する。
【０１３３】
上記の状態以外は、指示体の水平移動によりキーを特定するためにＳ１Ａ＿ｆＫｅｙＣｈｇへ遷移する。
【０１３４】
操作準備や意図しない指示体の動きに対して反応しないように、以下のようにして指示体の動きを弁別する。
【０１３５】
まず、Ｙ方向のうちの鉛直下方への速度が既定値より小さくなったとき、Ｓ０＿ｈｕｎｔに遷移する。
【０１３６】
キーを特定するキーＩＤが所定範囲の値（＝１〜Ｎ，Ｎはキーの数）でないとき、Ｓ０＿ｈｕｎｔに留まる。また、Ｙ方向の速度が、Ｘ方向の速度の既定値倍よりも大きいとき（鉛直下方に指示体が移動しなかったとき）、Ｓ０＿ｈｕｎｔに留まる。
【０１３７】
次に、キーＩＤが有効、かつ指示体が鉛直下方に降ろされたとき、Ｓ３＿ＶＡｃｔＶａｌｉｄａｔｅｄに遷移する。
【０１３８】
さらに、鉛直下方への指示体の移動速度が既定値より小さくなったとき、Ｓ０＿ｈｕｎｔに遷移する。
【０１３９】
Ｓ０＿ｈｕｎｔからＳ２＿ｉｎＶＡｃｔへの遷移時に記録されたＸ方向およびＺ方向の初期値から規定値以上の距離に手が離れたとき、Ｓ０＿ｈｕｎｔに遷移する。Ｓ０＿ｈｕｎｔからＳ２＿ｉｎＶＡｃｔへの遷移時に記録されたＸ方向、Ｙ方向およびＺ方向の初期値から規定値以上の距離に手が離れたとき、指示体を下ろした位置から戻す動作を検出するために、Ｓ４＿ｉｎＶＡｃｔＰｒｅＲｅｔに遷移する。これら以外のとき、Ｓ０＿ｈｕｎｔに留まる。
【０１４０】
Ｓ４＿ｉｎＶＡｃｔＰｒｅＲｅｔでは、指示体が鉛直下方に移動した状態から所定時間が経過すると、キーダウンタイムアウトが発生して、エラーを警告するためにＳ６Ｂ＿ｆＫｅｙＥｒｒに遷移する。Ｙ方向およびＺ方向の初期値から規定値以上の距離に手が離れたときも、Ｓ６Ｂ＿ｆＫｅｙＥｒｒに遷移する。
【０１４１】
Ｙ方向の速度の極性が反転したき、Ｓ５＿ｉｎＶＡｃｔＲｅｔに遷移する。
【０１４２】
上記以外の状態では、Ｓ４＿ｉｎＶＡｃｔＰｒｅＲｅｔに留まる。
【０１４３】
Ｓ５＿ｉｎＶＡｃｔＲｅｔでは、Ｙ方向の速度の極性が反転した状態から所定時間が経過すると、キーダウンタイムアウトが発生して、エラーを警告するためにＳ６Ｂ＿ｆＫｅｙＥｒｒに遷移する。Ｙ方向およびＺ方向の初期値から規定値以上の距離に手が離れたときも、Ｓ６Ｂ＿ｆＫｅｙＥｒｒに遷移する。また、Ｘ方向、Ｙ方向およびＺ方向の初期値から検出範囲以内の距離に指示体が戻ったとき、キーダウン状態であるＳ６Ａ＿ｆＫｅｙＤｏｗｎに遷移する。
【０１４４】
上記以外の状態では、Ｓ５＿ｉｎＶＡｃｔＲｅｔに留まる。
【０１４５】
Ｓ６Ａ＿ｆＫｅｙＤｏｗｎでは、キーダウンを示すフラグをプログラマブル表示器１に設けられたレジスタにセットして、Ｓ６Ｃ＿ｆＫｅｙＤｏｗｎＨｏｌｄＯｆｆに遷移する。また、Ｓ６Ｂ＿ｆＫｅｙＥｒｒでは、エラーを示すフラグをセットして、Ｓ６Ｃ＿ｆＫｅｙＤｏｗｎＨｏｌｄＯｆｆに遷移する。
【０１４６】
Ｓ６Ｃ＿ｆＫｅｙＤｏｗｎＨｏｌｄＯｆｆでは、規定回数だけ待機して、Ｓ０＿ｈｕｎｔへ遷移する。
【０１４７】
Ｓ１Ｂ＿ｔｏｏＦａｒでは、最大の検出値がＣ０ａ＿ｍｉｎＬｅｖｅｌより規定比率を上回るまでに回復したらＳ１Ｄ＿ｆＫｅｙＣｈｇＨｏｌｄＯｆｆに遷移する。それまでは、このＳ１Ｂ＿ｔｏｏＦａｒに留まる。
【０１４８】
Ｓ１Ｃ＿ｔｏｏＮｅａｒＷａｒｎでは、最大の検出値がＣＰａ＿ｍａｘＬｅｖｅｌより規定比率を下回るまでに回復したらＳ１Ｄ＿ｆＫｅｙＣｈｇＨｏｌｄＯｆｆに遷移する。
それまでは、Ｓ１Ｃ＿ｔｏｏＮｅａｒＷａｒｎに留まる。
【０１４９】
以上のように、本実施形態に係るプログラマブル表示器１は、指示体の３次元空間での位置を検出する近接センサ１７と、近接センサ１７の検出値に基づいてジェスチャ操作の処理を行う近接操作制御部３３とを備えている。
【０１５０】
これにより、指示体の３次元空間における位置の検出値に基づいて、指示体が指示するスイッチを特定し、かつ指示体によるスイッチの押し操作を検出する。それゆえ、装置の構成を簡素化することができる。また、スイッチの押し操作の有効性が判定されるので、誤作動が生じにくい。したがって、ＨＭＩ機器における非接触操作を容易に実現することができる。
【０１５１】
また、センサ部の初期特性によるバラツキ、周囲温度の変化、指示体の大きさの違い、光線反射率の相違などにより、検出される３次元の位置座標が変化することがある。このような変化に対して、スイッチの押し操作の有効性が相対的な位置座標を利用して判定されるので、誤操作につながりにくい。しかも、スイッチの押し操作を有効と判定する条件が満たされることは、人体またはその一部、移動物体などが偶然センサ部の前を偶然通り過ぎた場合や、指示体が操作のために予備動作を行ったり、操作を終えたときに復帰動作を行ったりする場合などでは極めて起こりにくい。したがって、上記のような場合は誤操作が生じにくい。したがって、ＨＭＩ機器における非接触操作の検出を確実かつ容易に実現することができる。
【０１５２】
また、近接操作制御部３３の判定部３３３によれば、指示体の意図しない動きなどで、指示体が押し操作検出方向以外の方向に大きく変位したときに、そのときの指示体の動きを押し操作として無効にすることで、スイッチの誤操作を防止することができる。
【０１５３】
また、表示パネル１６は、表示制御部３２の制御によって、メイン画面を表示するとともに、キーが１次元方向または２次元方向に集約して配置されたスイッチ画面をメイン画面上に表示する。
【０１５４】
これにより、タッチパネルに設けられたタッチスイッチによるタッチ操作が可能な場合には、タッチ操作を行う一方、非接触でキーの操作を行う必要がある場合、スイッチ画面に対する非接触操作を行うことができる。また、キーがスイッチ画面に集約して配置されている。それゆえ、センサの検出範囲を広げる必要がなく、また指示体の移動量を少なくすることができる。
【０１５５】
また、表示パネル１６は、表示制御部３２の制御によって、指示体の位置がいずれのスイッチを特定する位置から外れているときに、外れている方向をスイッチ画面において表示する。例えば、表示パネル１６は、図５の（ｄ）〜（ｇ）に示すスイッチ画面１０１の表示例のように、指示体が外れている方向を表示する。また、表示パネル１６は、表示制御部３２の制御によって、指示体が外れている位置を表すカーソル（位置情報）を表示したり、スイッチを特定する位置に指示体を移動させるための案内情報を表示したりしてもよい。
【０１５６】
これにより、キーを特定するためにどの方向に指示体を移動させればよいかを容易に把握することができる。
【０１５７】
また、判定部３３３は、押し操作される直前の指示体の押し操作検出の位置と、押し操作が完了して指示体が退いた押し操作検出方向の位置との差が所定差範囲に基づいて押し操作の有効または有効を判定する。
【０１５８】
これにより、オルタネイト型のキーの押し操作の有効または無効をより正確に判定することができる。
【０１５９】
なお、本実施形態では、近接センサ１７および近接操作制御部３３がプログラマブル表示器１に設けられる構成について説明した。この構成に限らず、近接センサ１７と近接操作制御部３３の全部または一部とが、プログラマブル表示器１と別体に設けられ、ＵＳＢケーブルなどによってプログラマブル表示器１と接続される構成を採用してもよい。このような構成は、後述する実施形態２にも適用される。
【０１６０】
〔実施形態２〕
本発明の実施形態２について以下のとおり説明する。なお、本実施形態において、実施形態１における構成要素と同一の機能を有する構成要素については、同一の符号を付記して、その説明を省略する。
【０１６１】
実施形態１では、スイッチ画面１０１，２０１におけるキーＫ１〜Ｋ５がオルタネイト型のスイッチとして設定されている。これに対し本実施形態では、押し操作の持続でＯＮ状態を保持し、押し操作の除去でＯＮ状態を解除するモーメンタリ型のスイッチ（キー）が設定されたスイッチ画面について説明する。
【０１６２】
このようなスイッチ画面は、図示はしないが、スイッチ画面１０１，２０１と同様に複数のキーが一列（１次元）に配列されている。本実施形態のスイッチ画面も、実施形態２におけるスイッチ画面と同様に、キーが２次元配列されていてもよい。
【０１６３】
モーメンタリ型のキーは、押し操作が持続している間にＯＮ状態を維持する。このため、モーメンタリ型のキーは、スイッチ画面１０１，２０１におけるキーＫ１〜Ｋ５のように、１回の押し操作でＯＦＦ状態からＯＮ状態に切り替える動作ではなく、機械動作を所望の時間維持することなどに用いられる。
【０１６４】
判定部３３３は、押し操作された指示体の押し操作検出の位置が所定位置範囲にある状態が維持されていれば、押し操作が有効（ＯＮ状態）であると判定する。また、判定部３３３は、指示体の押し操作検出の位置が所定位置範囲から外れると、押し操作が終了された（ＯＦＦ状態）と判定する。
【０１６５】
上記の構成によれば、モーメンタリ型のスイッチの押し操作の有効または無効をより正確に判定することができる。
【０１６６】
〔ソフトウェアによる実現例〕
プログラマブル表示器１の制御ブロック（特に、動作制御部３１、表示制御部３２および近接操作制御部３３）は、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ソフトウェアによって実現してもよい。
【０１６７】
後者の場合、プログラマブル表示器１は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば１つ以上のプロセッサを備えていると共に、上記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。
【０１６８】
そして、上記コンピュータにおいて、上記プロセッサが上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記プロセッサとしては、例えばＣＰＵ（Central Processing Unit）を用いることができる。
【０１６９】
上記記録媒体としては、「一時的でない有形の媒体」、例えば、ＲＯＭ（Read Only Memory）等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムを展開するＲＡＭ（Random Access Memory）などをさらに備えていてもよい。
【０１７０】
また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０１７１】
なお、近接操作制御部３３に含まれる検出部３３１、算出部３３２および判定部３３３の一部または全部を、機械学習による推論エンジンなどに置き換えてもよい。
【０１７２】
〔付記事項〕
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【０１７３】
１  プログラマブル表示器（操作処理装置）
１５  タッチパネル
１６  表示パネル（表示部）
１７  近接センサ（センサ部）
１００，２００  メイン画面
１０１，２０１  スイッチ画面
２０４  設定値表示器（タッチスイッチ）
２０５  運転開始スイッチ（タッチスイッチ）
２０６  運転停止スイッチ（タッチスイッチ）
２０７  高速運転選択スイッチ（タッチスイッチ）
２０８  低速運転選択スイッチ（タッチスイッチ）
２１１〜２１３  工程選択スイッチ（タッチスイッチ）
３３１  検出部
３３２  算出部
３３３  判定部
Ｋ１〜Ｋ５  キー（スイッチ）
【図１】
2020052681.tif 000003
【図２】
2020052681.tif 000004
【図３】
2020052681.tif 000005
【図４】
2020052681.tif 000006
【図５】
2020052681.tif 000007
【図６】
2020052681.tif 000008
【図７】
2020052681.tif 000009
【図８】
2020052681.tif 000010