以下、本発明の電子機器、及び、電子機器の駆動方法を適用した実施の形態について説明する。
<実施の形態>
図1は、実施の形態の電子機器100と電子機器100で操作される洗濯機10とを示す斜視図である。
洗濯機10は、開閉部10Aと操作部11を含む。図1には、洗濯機10を上から見た状態で示す。開閉部10Aは、洗濯物を洗濯槽に出し入れする蓋が設けられている部分である。
操作部11には、ボタン11A〜11Hが設けられている。ボタン11Aは、電源を入れるための「入」ボタンであり、ボタン11Bは、電源を切るための「切」ボタンである。ボタン11Cは、水位を調整するための「水位」ボタンであり、ボタン11Dは、工程を選択するための「工程」ボタンである。
ボタン11Eは、コースを選択するための「コース」ボタンであり、ボタン11Fは、予約運転を設定するための「予約」ボタンである。ボタン11Gは、スタートさせるための「スタート」ボタンであり、ボタン11Hは、ストップ(一時停止)させるための「ストップ」ボタンである。
ここでは、ボタン11A〜11Hの操作内容を表すボタンが閉曲線で囲まれている形態について説明する。
電子機器100は、一例として、タッチパネルを入力操作部とする、スマートフォン端末機、タブレット型コンピュータ、又は、携帯情報端末機である。電子機器100の入力操作部101は、タッチパネルの下にディスプレイパネルが配設されており、ディスプレイパネルにGUI(Graphic User Interface)による様々なボタン102等(以下、GUI操作部102と称す)が表示される。GUI操作部102は、スライド式のスイッチ(スライダー)であってもよい。
電子機器100の利用者は、通常、GUI操作部102を操作するために、指先で入力操作部101に触れる。また、電子機器100は、スピーカ103とカメラ104を有する。スピーカ103は、音声出力部の一例である。カメラ104は、撮像部の一例である。なお、図1では、電子機器100のディスプレイパネル側にカメラ104を示すが、カメラ104は、ディスプレイパネルとは反対側にあってもよい。
次に、図2を用いて、電子機器100の具体的な構成について説明する。
図2は、実施の形態の電子機器100を示す平面図であり、図3は、図2に示す電子機器100のA−A矢視断面を示す図である。なお、図2及び図3では、図示するように直交座標系であるXYZ座標系を定義する。
電子機器100は、筐体110、トップパネル120、両面テープ130、振動素子140、タッチパネル150、ディスプレイパネル160、及び基板170を含む。
筐体110は、例えば、樹脂製であり、図3に示すように凹部110Aに基板170、ディスプレイパネル160、及びタッチパネル150が配設されるとともに、両面テープ130によってトップパネル120が接着されている。
トップパネル120は、平面視で長方形の薄い平板状の部材であり、透明なガラス、又は、ポリカーボネートのような強化プラスティックで作製される。トップパネル120の表面(Z軸正方向側の面)は、電子機器100の利用者が操作入力を行う操作面の一例である。
トップパネル120は、Z軸負方向側の面に振動素子140(以下、140)が接着され、平面視における四辺が両面テープ130によって筐体110に接着されている。なお、両面テープ130は、トップパネル120の四辺を筐体110に接着できればよく、図3に示すように矩形環状である必要はない。
トップパネル120のZ軸負方向側にはタッチパネル150が配設される。トップパネル120は、タッチパネル150の表面を保護するために設けられている。なお、トップパネル120の表面に、さらに別なパネル又は保護膜等が設けられていてもよい。
トップパネル120は、Z軸負方向側の面に振動素子140が接着された状態で、振動素子140が駆動されることによって振動する。実施の形態では、トップパネル120の固有振動周波数でトップパネル120を振動させて、トップパネル120に定在波を生じさせる。ただし、トップパネル120には振動素子140が接着されているため、実際には、振動素子140の重さ等を考慮した上で、固有振動周波数を決めることが好ましい。
振動素子140は、トップパネル120のZ軸負方向側の面において、X軸負方向側において、Y軸方向に伸延する長辺に沿って接着されている。振動素子140は、超音波帯の振動を発生できる素子であればよく、例えば、ピエゾ素子のような圧電素子を含むものを用いることができる。
ここで、振動素子140のうちのいずれか1つは、第1振動素子の一例であり、振動素子140のうちの他のいずれか1つは、第2振動素子の一例である。
振動素子140は、後述する駆動制御部から出力される駆動信号によって駆動される。振動素子140が発生する振動の振幅(強度)及び周波数は駆動信号によって設定される。また、振動素子140のオン/オフは駆動信号によって制御される。振動素子140のオン/オフは、互いに独立的に行われる。
なお、超音波帯とは、例えば、約20kHz以上の周波数帯をいう。実施の形態の電子機器100では、振動素子140が振動する周波数は、トップパネル120の振動数と等しくなるため、振動素子140は、トップパネル120の固有振動数で振動するように駆動信号によって駆動される。これは、振動素子140をすべて駆動した場合と、いずれか2つを駆動した場合と、いずれか1つを駆動した場合とにおいてすべて同様である。
タッチパネル150は、ディスプレイパネル160の上(Z軸正方向側)で、トップパネル120の下(Z軸負方向側)に配設されている。タッチパネル150は、電子機器100の利用者がトップパネル120に触れる位置(以下、操作入力の位置と称す)を検出する位置検出部の一例である。
タッチパネル150の下にあるディスプレイパネル160には、GUIによる様々なボタン等(以下、GUI操作部と称す)が表示される。このため、電子機器100の利用者は、通常、GUI操作部を操作するために、指先でトップパネル120に触れる。
タッチパネル150は、利用者のトップパネル120への操作入力の位置を検出できる位置検出部であればよく、例えば、静電容量型又は抵抗膜型の位置検出部であればよい。ここでは、タッチパネル150が静電容量型の位置検出部である形態について説明する。タッチパネル150とトップパネル120との間に隙間があっても、静電容量型のタッチパネル150は、トップパネル120への操作入力を検出できる。
また、ここでは、タッチパネル150の入力面側にトップパネル120が配設される形態について説明するが、トップパネル120はタッチパネル150と一体的であってもよい。この場合、タッチパネル150の表面が図2及び図3に示すトップパネル120の表面になり、操作面を構築する。また、図2及び図3に示すトップパネル120を省いた構成であってもよい。この場合も、タッチパネル150の表面が操作面を構築する。また、この場合には、操作面を有する部材を、当該部材の固有振動で振動させればよい。
また、タッチパネル150が静電容量型の場合は、トップパネル120の上にタッチパネル150が配設されていてもよい。この場合も、タッチパネル150の表面が操作面を構築する。また、タッチパネル150が静電容量型の場合は、図2及び図3に示すトップパネル120を省いた構成であってもよい。この場合も、タッチパネル150の表面が操作面を構築する。また、この場合には、操作面を有する部材を、当該部材の固有振動で振動させればよい。
ディスプレイパネル160は、例えば、液晶ディスプレイパネル又は有機EL(Electroluminescence)パネル等の画像を表示できる表示部であればよい。ディスプレイパネル160は、筐体110の凹部110Aの内部で、図示を省略するホルダ等によって基板170の上(Z軸正方向側)に設置される。
ディスプレイパネル160は、後述するドライバIC(Integrated Circuit)によって駆動制御が行われ、電子機器100の動作状況に応じて、GUI操作部、画像、文字、記号、図形等を表示する。
基板170は、筐体110の凹部110Aの内部に配設される。基板170の上には、ディスプレイパネル160及びタッチパネル150が配設される。ディスプレイパネル160及びタッチパネル150は、図示を省略するホルダ等によって基板170及び筐体110に固定されている。
基板170には、後述する駆動制御装置の他に、電子機器100の駆動に必要な種々の回路等が実装される。
以上のような構成の電子機器100は、トップパネル120に利用者の指が接触し、指先の移動を検出すると、基板170に実装される駆動制御部が振動素子140のうちの少なくとも1つを駆動し、トップパネル120を超音波帯の周波数で振動させる。この超音波帯の周波数は、トップパネル120と振動素子140とを含む共振系の共振周波数であり、トップパネル120に定在波を発生させる。
電子機器100は、超音波帯の定在波を発生させることにより、トップパネル120を通じて利用者に触感を提供する。
次に、図4を用いて、トップパネル120に発生させる定在波について説明する。実施の形態の電子機器100では、トップパネル120への操作入力の位置に応じて、振動素子140を駆動する。振動素子140は、上述のように、トップパネル120の裏面において、長辺に沿ってトップパネル120の端部に配設されている。
図4は、超音波帯の固有振動によってトップパネル120に生じる定在波のうち、トップパネル120の短辺に平行に形成される波頭を示す図であり、図4の(A)は側面図、(B)は斜視図である。図4の(A)、(B)では、図2及び図3と同様のXYZ座標を定義する。なお、図4の(A)、(B)では、理解しやすさのために、定在波の振幅を誇張して示す。また、図4の(A)、(B)では、トップパネル120の1つの短辺に沿って、振動素子140と同様の1つの振動素子140を配置した場合に生じる定在波について説明する。トップパネル120の短辺は、図2でX軸方向に伸延する辺であり、Y軸正方向側の短辺に沿って、トップパネル120の端部に1つの振動素子140Cを配置した場合に生じる定在波について説明する。
トップパネル120のヤング率E、密度ρ、ポアソン比δ、長辺寸法l、厚さtと、長辺方向に存在する定在波の周期数kとを用いると、トップパネル120の固有振動数(共振周波数)fは次式(1)、(2)で表される。定在波は1/2周期単位で同じ波形を有するため、周期数kは、0.5刻みの値を取り、0.5、1、1.5、2・・・となる。
なお、式(2)の係数αは、式(1)におけるk2以外の係数をまとめて表したものである。
図4の(A)、(B)に示す定在波は、一例として、周期数kが10の場合の波形である。例えば、トップパネル120として、長辺の長さlが140mm、短辺の長さが80mm、厚さtが0.7mmのGorilla(登録商標)ガラスを用いる場合には、周期数kが10の場合に、固有振動数fは33.5[kHz]となる。この場合は、周波数が33.5[kHz]の駆動信号を用いればよい。
トップパネル120は、平板状の部材であるが、振動素子140を駆動して超音波帯の固有振動を発生させると、図4の(A)、(B)に示すように撓むことにより、表面に定在波が生じる。
なお、ここでは、1つの振動素子140がトップパネル120のZ軸負方向側の面において、Y軸正方向側において、X軸方向に伸延する短辺に沿って接着される形態について説明するが、振動素子140を2つ用いてもよい。2つの振動素子140を用いる場合は、もう1つの振動素子140をトップパネル120のZ軸負方向側の面において、Y軸負方向側において、X軸方向に伸延する短辺に沿って接着すればよい。この場合に、2つの振動素子140は、トップパネル120の2つの短辺に平行な中心線を対称軸として、軸対称になるように配設すればよい。
また、2つの振動素子140を駆動する場合は、周期数kが整数の場合は同一位相で駆動すればよく、周期数kが小数(整数部と小数部を含む数)の場合は逆位相で駆動すればよい。
次に、図5を用いて、電子機器100のトップパネル120に生じさせる超音波帯の固有振動について説明する。
図5は、電子機器100のトップパネル120に生じさせる超音波帯の固有振動により、操作入力を行う指先に掛かる動摩擦力が変化する様子を説明する図である。図5の(A)、(B)では、利用者が指先でトップパネル120に触れながら、指をトップパネル120の奥側から手前側に矢印に沿って移動する操作入力を行っている。なお、振動のオン/オフは、振動素子140をオン/オフすることによって行われる。
また、図5の(A)、(B)では、トップパネル120の奥行き方向において、振動がオフの間に指が触れる範囲をグレーで示し、振動がオンの間に指が触れる範囲を白く示す。
超音波帯の固有振動は、図4に示すようにトップパネル120の全体に生じるが、図5の(A)、(B)には、利用者の指がトップパネル120の奥側から手前側に移動する間に振動のオン/オフを切り替える動作パターンを示す。
図5の(A)に示す動作パターンでは、利用者の指がトップパネル120の奥側にあるときに振動がオフであり、指を手前側に移動させる途中で振動がオンになっている。
一方、図5の(B)に示す動作パターンでは、利用者の指がトップパネル120の奥側にあるときに振動がオンであり、指を手前側に移動させる途中で振動がオフになっている。
ここで、トップパネル120に超音波帯の固有振動を生じさせると、トップパネル120の表面と指との間にスクイーズ効果による空気層が介在し、指でトップパネル120の表面をなぞったときの動摩擦係数が低下する。
従って、図5の(A)では、トップパネル120の奥側にグレーで示す範囲では、指先に掛かる動摩擦力は大きく、トップパネル120の手前側に白く示す範囲では、指先に掛かる動摩擦力は小さくなる。
このため、図5の(A)に示すようにトップパネル120に操作入力を行う利用者は、振動がオンになると、指先に掛かる動摩擦力の低下を感知し、指先の滑り易さを知覚することになる。このとき、利用者はトップパネル120の表面がより滑らかになることにより、動摩擦力が低下するときに、トップパネル120の表面に凹部が存在するように感じる。
一方、図5の(B)では、トップパネル120の奥前側に白く示す範囲では、指先に掛かる動摩擦力は小さく、トップパネル120の手前側にグレーで示す範囲では、指先に掛かる動摩擦力は大きくなる。
このため、図5の(B)に示すようにトップパネル120に操作入力を行う利用者は、振動がオフになると、指先に掛かる動摩擦力の増大を感知し、指先の滑り難さ、あるいは、引っ掛かる感じを知覚することになる。そして、指先が滑りにくくなることにより、動摩擦力が高くなるときに、トップパネル120の表面に凸部が存在するように感じる。
以上より、図5の(A)と(B)の場合は、利用者は指先で凹凸を感じ取ることができる。このように人間が凹凸の知覚することは、例えば、“触感デザインのための印刷物転写法とSticky-band Illusion”(第11回計測自動制御学会システムインテグレーション部門講演会論文集 (SI2010,仙台)____174-177,2010-12)に記載されている。また、”Fishbone Tactile Illusion”(日本バーチャルリアリティ学会第10回大会論文集(2005年9月))にも記載されている。
なお、ここでは、振動のオン/オフを切り替える場合の動摩擦力の変化について説明したが、これは、振動素子140の振幅(強度)を変化させた場合も同様である。
次に、図6を用いて、実施の形態の電子機器100の構成について説明する。
図6は、実施の形態の電子機器100の構成を示す図である。
電子機器100は、振動素子140、アンプ141、タッチパネル150、ドライバIC(Integrated Circuit)150A、ディスプレイパネル160、ドライバIC160A、アンプ180A、スピーカ103、カメラ104、制御装置200、正弦波発生器310、及び振幅変調器320を含む。
制御装置200は、アプリケーションプロセッサ220、通信プロセッサ230、駆動制御部240、及びメモリ250を有する。制御装置200は、例えば、ICチップで実現される。
また、駆動制御部240、正弦波発生器310、及び振幅変調器320は、駆動制御装置300を構築する。
図6では、筐体110、トップパネル120、両面テープ130、及び基板170(図2参照)は省略する。また、ここでは、アンプ141、ドライバIC150A、ドライバIC160A、駆動制御部240、メモリ250、正弦波発生器310、及び振幅変調器320について説明する。
アンプ141は、それぞれ、駆動制御装置300と振動素子140との間に配設されており、駆動制御装置300から出力される駆動信号を増幅して振動素子140を駆動する。
ドライバIC150Aは、タッチパネル150に接続されており、タッチパネル150への操作入力があった位置を表す位置データを検出し、位置データを制御装置200に出力する。この結果、位置データは、アプリケーションプロセッサ220と駆動制御部240に入力される。なお、位置データが駆動制御部240に入力されることは、位置データが駆動制御装置300に入力されることと等価である。
ドライバIC160Aは、ディスプレイパネル160に接続されており、駆動制御装置300から出力される描画データをディスプレイパネル160に入力し、描画データに基づく画像をディスプレイパネル160に表示させる。これにより、ディスプレイパネル160には、描画データに基づくGUI操作部又は画像等が表示される。
アンプ180Aは、アプリケーションプロセッサ220に接続されており、アプリケーションプロセッサ220から入力される音声信号を増幅してスピーカ103に出力する。スピーカ103は、アンプ180Aから入力される音声信号を音声として出力する。
アプリケーションプロセッサ220は、トップパネル120に行われる操作入力に応じて、メモリ250に格納された音声データを読み出し、アンプ180Aに出力する。この結果、トップパネル120に行われる操作入力に応じた音声がスピーカ103から出力される。
アプリケーションプロセッサ220は、電子機器100の種々のアプリケーションを実行する処理を行う。アプリケーションプロセッサ220は、主制御部221、文字認識部222、照合部223、表示制御部224、駆動制御部240、及び音声案内制御部225を有する。
主制御部221は、アプリケーションプロセッサ220の制御処理を統括する部分であり、文字認識部222、照合部223、表示制御部224、駆動制御部240、及び音声案内制御部225の処理を統括する。主制御部221は、指令生成部、要求部、読み出し部、統括処理部の一例である。
文字認識部222は、カメラ104によって撮像された画像に含まれる文字を認識する。文字認識部222は、OCR(Optical Character Reader)を用いて、画像に対して2値化又はエッジ処理等の処理で画像に含まれるパターンを抽出し、内蔵する辞書データとの照合(パターンマッチング)を行うことにより、画像に含まれる文字を認識する。このような文字認識部222には、周知の文字認識技術を用いることができる。
照合部223は、文字認識部222によって文字が認識された単語と、メモリ250に格納される制御データに含まれる単語とを照合し、制御データに含まれる単語の中に、文字認識部222によって文字が認識された単語と同一の単語があるかどうかを判定する。
照合部223は、文字認識部222によって文字が認識された単語と同一の単語が制御データに含まれる単語の中にあると判定すると、照合が成立したことになる。文字認識部222によって文字が認識された単語と同一の単語が制御データに存在しない場合は、照合は不成立となる。
表示制御部224は、照合部223による照合が成立した単語に制御データの中で対応する領域のデータを読み出し、照合部223による照合が成立した単語を表すGUIボタンを表すデータを生成する。表示制御部224は、ドライバIC160Aに、GUIボタンを表すデータを出力し、GUIボタンをディスプレイパネル160に表示させる。
なお、GUIボタンとは、図1に示すGUI部品102の一種であり、ボタンを押すように操作が可能なGUI部品102である。
駆動制御部240は、表示制御部224によって生成され、ディスプレイパネル160に表示されるGUIボタンの表示領域に、タッチパネル150によって検出される利用者の指先の位置(操作入力の位置)が入り、かつ、操作入力の位置が移動すると、振動素子140を駆動する。このとき、駆動制御部240は、GUIボタンに表示される単語に制御データの中で対応する駆動パターンで振動素子140を駆動する。
駆動制御部240は、振動素子140を駆動するために、振幅データを振幅変調器320に出力する。振幅データは、振動素子140の駆動に用いる駆動信号の強度を調整するための振幅値を表すデータである。振幅値は、位置データの時間的変化度合に応じて設定される。ここで、位置データの時間的変化度合としては、利用者の指先がトップパネル120の表面に沿って移動する速度を用いる。利用者の指先の移動速度は、ドライバIC150Aから入力される位置データの時間的な変化度合に基づいて、駆動制御部240が算出する。
音声案内制御部225は、表示制御部224によって生成され、ディスプレイパネル160に表示されるGUIボタンの表示領域に、タッチパネル150によって検出される利用者の指先の位置(操作入力の位置)が入ると、GUIボタンに表示される単語に制御データの中で対応する音声データに基づき、音声案内を行う。
音声案内制御部225は、音声データが表す音声案内の内容をアンプ180Aに出力し、この結果、音声案内を表す音声がスピーカ103から出力される。
音声案内の制御処理と、音声案内の制御処理に伴って行われる振動素子140の駆動制御については、図7乃至図21を用いて後述する。
通信プロセッサ230は、電子機器100が3G(Generation)、4G(Generation)、LTE(Long Term Evolution)、WiFi等の通信を行うために必要な処理を実行する。通信プロセッサ230は、赤外線通信又はRFID(Radio Frequency Identification)タグとの通信に対応できるものであってもよい。
実施の形態の駆動制御装置300は、一例として、指先の移動速度に関わらずに利用者が指先から感知する触感を一定にするために、移動速度が高いほど振幅値を小さくし、移動速度が低いほど振幅値を大きくする。
このような振幅値を表す振幅データと移動速度との関係を表すデータは、メモリ250に格納されている。
なお、ここでは、メモリ250に格納されるデータを用いて移動速度に応じた振幅値を設定する形態について説明するが、次式(3)を用いて振幅値Aを算出してもよい。式(3)で算出される振幅値Aは、移動速度が高いほど小さくなり、移動速度が低いほど大きくなる。
ここで、A0は振幅の基準値であり、Vは指先の移動速度であり、aは所定の定数である。式(3)を用いて振幅値Aを算出する場合は、式(3)を表すデータと、振幅の基準値A0と所定の定数aを表すデータとをメモリ250に格納しておけばよい。
また、実施の形態の駆動制御装置300は、利用者の指先がトップパネル120の表面に沿って移動したときに、指先に掛かる動摩擦力を変化させるためにトップパネル120を振動させる。動摩擦力は、指先が移動しているときに発生するため、駆動制御部240は、移動速度が所定の閾値速度以上になったときに、振動素子140を振動させる。
従って、駆動制御部240が出力する振幅データが表す振幅値は、移動速度が所定の閾値速度未満のときはゼロであり、移動速度が所定の閾値速度以上になると、移動速度に応じて所定の振幅値に設定される。移動速度が所定の閾値速度以上のときには、移動速度が高いほど振幅値は小さく設定され、移動速度が低いほど振幅値を大きく設定される。
また、実施の形態の駆動制御装置300は、操作入力を行う指先の位置が、振動を発生させるべき所定の領域内にある場合に、振幅データを振幅変調器320に出力する。
操作入力を行う指先の位置が振動を発生させるべき所定の領域内にあるかどうかは、操作入力を行う指先の位置が、振動を発生させるべき所定の領域の内部にあるか否かに基づいて判定される。
ここで、ディスプレイパネル160に表示するGUI操作部、画像を表示する領域、又は、ページ全体を表す領域等のディスプレイパネル160上における位置は、当該領域を表す領域データによって特定される。領域データは、すべてのアプリケーションにおいて、ディスプレイパネル160に表示されるすべてのGUI操作部、画像を表示する領域、又は、ページ全体を表す領域について存在する。
メモリ250は、振幅値を表す振幅データと移動速度との関係を表すデータ、及び、アプリケーションの種類を表すデータと、操作入力が行われるGUI操作部等を表す領域データと、振動パターンを表すパターンデータとを関連付けたデータとを格納する。メモリ250は、第1格納部及び第2格納部の一例である。
また、メモリ250は、振動素子140の駆動制御と、音声案内とを行うために必要な制御データを格納する。制御データは、単語、操作内容、領域、振動パターン、音声データ、及び必須機能フラグを含む。
制御データは、様々な電化製品の操作部にある操作内容を示す単語と、その単語を表すGUIボタンの表示領域と、そのGUIボタンに操作入力が行われたときに振動素子140を駆動する振動パターンと、そのGUIボタンに操作入力が行われたときに行う音声案内用の音声データとを関連付けたデータである。この制御データについては、図12を用いて後述するが、
なお、電化製品とは、洗濯機10の他に、例えば、電子レンジ、テレビ、ビデオレコーダ、オーディオ等の種々の電化された製品をいう。電化製品には、コンピュータ、タブレットコンピュータ、スマートフォン、ゲーム機等が含まれてもよい。
また、メモリ250は、アプリケーションプロセッサ220がアプリケーションの実行に必要とするデータ及びプログラム、及び、通信プロセッサ230が通信処理に必要とするデータ及びプログラム等を格納する。
正弦波発生器310は、トップパネル120を固有振動数で振動させるための駆動信号を生成するのに必要な正弦波を発生させる。例えば、トップパネル120を33.5[kHz]の固有振動数fで振動させる場合は、正弦波の周波数は、33.5[kHz]となる。正弦波発生器310は、超音波帯の正弦波信号を振幅変調器320に入力する。
なお、ここでは、正弦波発生器310を用いる形態について説明するが、正弦波発生器310の代わりに、クロックを生成するクロック発生器を用いてもよい。例えば、クロック発生器が発生するクロックのスルーレートを小さく設定することにより、クロックの立ち上がりと立ち下がりの波形を鈍らせることができる。このようにスルーレートを小さく設定したクロックを正弦波発生器310が発生する正弦波の代わりに用いてもよい。すなわち、正弦波の代わりに、振幅が周期的に変化する波形信号を用いてもよい。
振幅変調器320は、駆動制御部240から入力される振幅データを用いて、正弦波発生器310から入力される正弦波信号の振幅を変調して駆動信号を生成する。振幅変調器320は、正弦波発生器310から入力される超音波帯の正弦波信号の振幅のみを変調し、周波数及び位相は変調せずに、駆動信号を生成する。
このため、振幅変調器320が出力する駆動信号は、正弦波発生器310から入力される超音波帯の正弦波信号の振幅のみを変調した超音波帯の正弦波信号である。なお、振幅データがゼロの場合は、駆動信号の振幅はゼロになる。これは、振幅変調器320が駆動信号を出力しないことと等しい。
図7乃至図11は、電子機器100の利用シーンを説明する図である。
まず、利用者は、電子機器100で洗濯機10の操作部11の写真を撮影する。この結果、図7に示すように、ディスプレイパネル160に操作部11の画像が表示される。操作部11には、ボタン11A〜11Hが設けられている。ボタン11A〜11Hを囲む円形の縁取り線は、閉曲線の一例である。
次に、利用者が電子機器100に画像処理、文字認識、照合処理等の処理を行わせると、図8に示すように、ディスプレイパネル160に、GUIボタン161A〜161Hと周辺領域162とが表示される。周辺領域162は、GUIボタン161A〜161Hを囲む矩形状の領域であり、GUIボタン161A〜161H以外のその他の情報も表示される。
その他の情報は、GUIボタン161A〜161Fの操作によって選択される各種設定(水位(22L、34L、45L)、工程(洗い、すすぎ、注水、脱水)、コース(標準、スピーディ、ドライ、毛布)、予約時間(1時間、3時間)、電源)の文字又は数字等の情報である。このようなその他の情報は、ステップS5において、閉曲線に囲まれる領域以外で認識された文字又は数字である。
GUIボタン161A〜161H、周辺領域162、及びその他の情報は、電子機器100が図7に示す操作部11の画像に対して、画像処理、文字認識、照合処理等の処理を実行することによって生成され、ディスプレイパネル160に表示される。GUIボタン161A〜161Hは、それぞれ、図1に示す洗濯機10の操作部11のボタン11A〜11Hに対応している。
また、GUIボタン161A〜161Hは、すべて円状の線(縁取り)で囲まれている。以下では、GUIボタン161A〜161Hを囲む線上の領域と、線の内側の領域とをGUIボタン161A〜161Hの表示領域と称す。
GUIボタン161Aは、電源を入れるための「入」ボタンであり、GUIボタン161Bは、電源を切るための「切」ボタンである。GUIボタン161Cは、水位を調整するための「水位」ボタンであり、GUIボタン161Dは、工程を選択するための「工程」ボタンである。
GUIボタン161Eは、コースを選択するための「コース」ボタンであり、GUIボタン161Fは、予約運転を設定するための「予約」ボタンである。GUIボタン161Gは、スタートさせるための「スタート」ボタンであり、GUIボタン161Hは、ストップ(一時停止)させるための「ストップ」ボタンである。
GUIボタン161A〜161Hは、GUI部品としてディスプレイパネル160に表示されており、電子機器100は、無線通信で洗濯機10に対して、GUIボタン161A〜161Hが表す指令を送信することができる。
このため、利用者が指先等で各GUIボタン161A〜161Hにタッチ(操作入力)を行うことにより、洗濯機10は、操作部11のボタン11A〜11Hが押された場合と同様に動作する。
なお、ディスプレイパネル160には、その他の情報として、水位の量(22L、34L,45L)、工程の具体的な内容(洗い、すすぎ、注水、脱水)、コースの具体的な内容(標準、スピーディ、ドライ、毛布)、予約時間(1時間、3時間)が表示される。
これらの情報は、GUIボタン161C、161D、161E、161Fを押すことにより、順番に選択可能になる。選択された内容は、例えば、選択されていない内容とは異なる色で表示されることにより、識別可能になる。
具体的には、例えば、GUIボタン161Cを一度押すと22Lを選択することができ、GUIボタン161Cを二度押すと34Lを選択することができ、GUIボタン161Cを三度押すと45Lを選択することができる。そして、さらにもう一度(四回目の押圧)GUIボタン161Cを一度押すと22Lを選択することができる。これは、GUIボタン161D、161E、161Fについても同様である。
次に、図9に示すように、利用者がGUIボタン161G(スタートボタン)を押して、GUIボタン161Gの表示領域内で指先を移動させると、電子機器100は、振動素子140を駆動して、トップパネル120に超音波帯の固有振動を発生させるとともに、「スタートボタンです」という音声案内をスピーカ103から出力する。なお、電子機器100は、指先がGUIボタン161Gの表示領域内にあれば、指先が移動していなくても、このような音声案内を出力するようにしてもよい。
ここで、電子機器100は、図10に示すような駆動パターンで振動素子140を駆動する。図10では、横軸は時間を示し、縦軸は、振動素子140を駆動する駆動信号の振幅を表す。
時刻t1で、利用者の指先がトップパネル120のGUIボタン161A〜161Hの表示領域以外の部分に触れると、電子機器100は、振幅A3の駆動信号で振動素子140を駆動する。このときの駆動信号の振幅はA3で一定であるため、利用者の指先には、つるつるした滑らかな触感が提供される。
時刻t2において、人差し指がGUIボタン161Gに入ると、時間の変化に伴って振幅が周期的に変動する駆動信号で振動素子140が駆動されるとともに、「スタートボタンです」という音声案内がスピーカ103から出力される。
この駆動信号の振幅は、A1とA2の間で正弦波状に周期的に変動するため、利用者の指先には、ざらざらした触感が提供される。また、振幅A1及びA2は、ともに振幅A3よりも小さい。このため、人差し指がGUIボタン161Gに入ると、利用者の指先にかかる触感の変化を知覚する。また、音声案内により、現在の指先の位置が「スタートボタン」(ボタン161G)の表示領域の中にあることが通知される。
このため、利用者は、触感と音声案内とによって、現在の指先の位置が「スタートボタン」のGUIボタン161Gの中にあることを目視せずに認識することができる。
利用者が人差し指をさらに移動させ、時刻t3において、GUIボタン161Gの表示領域の外に出ると、振幅A3の駆動信号で振動素子140が駆動される。
これにより、利用者は、現在の指先の位置が「スタートボタン」(GUIボタン161G)から外れたことを目視せずに認識することができる。
時刻t4において、利用者が人差し指の移動を停止すると、駆動信号の振幅がゼロになり、振動素子140の駆動が停止される。なお、時刻t4において、利用者が人差し指をトップパネル120から離した場合も同様である。
このように、スクイーズ膜効果を利用した触感と、音声案内とを利用して、利用者の指先をGUIボタン161Gに案内する。このため、利用者は、目視せずにGUIボタン161Gの位置を正確に認識することができる。
そして、図11に示すように、利用者がGUIボタン161Gを強く押すと、電子機器100は、操作が確定されたと判定し、洗濯をスタートさせる指令を洗濯機10に送信する。これにより、洗濯機10は、洗濯を開始する。
このように、利用者は、電子機器100に確定操作を行うことで、GUIボタン161Gに関連付けられた洗濯機11の操作(スタート)を実行することができる。
確定操作は、一例として、トップパネル120を強く押すことであり、確定操作を行うことで、電子機器100は入力を受け付ける。このような確定操作を受け付け付ける機能は、例えば、アプリケーションプロセッサ220(図6参照)のOSによって実現される。確定操作は、トップパネル120を強く押すことに限られず、トップパネル120に触れている(操作入力を行っている)指先等の面積の増大に基づいて受け付けられるようになっていてもよい。
なお、ここでは、「スタートボタン」(GUIボタン161G)を押すシーンについて説明したが、他のGUIボタン161A〜161F、161Hについても同様である。
図12は、電子機器100が利用する制御データの構造を示す図である。制御データは、メモリ250に格納されている。図12に示すデータは、一例として、図7乃至図11に示す動作を実現するためのデータである。
制御データは、単語、操作内容、領域、振動パターン、音声データ、及び必須機能フラグを含む。
制御データは、単語として、「スタート」、「開始」、「ストップ」、「停止」、「水位」、「レベル」、「水量」、「工程」、「ステップ」、「作業」、「コース」、「自動」・・・を含む。ここには、制御データに含まれる単語として、洗濯機の操作内容を表す単語を示すが、制御データは、洗濯機以外の電化製品の操作内容を表す単語も含む。制御データには、様々な電化製品の操作内容を表す単語のリスト(単語リスト)が含まれている。
操作内容は、各単語に割り振られる。「スタート」と「開始」という単語には、「洗濯開始」という操作内容が割り振られる。「洗濯開始」という1つの操作内容に対して、「スタート」と「開始」という2つの単語を関連付けているのは、「洗濯開始」という操作内容を実現するためのボタンとして、「スタート」又は「開始」のいずれかの単語が記載されるボタンが洗濯機10に設けられる可能性があるからである。このため、「スタート」と「開始」という2つの単語に加えて、さらに「START」という単語を加えてもよい。
「ストップ」と「停止」という単語には、「洗濯停止」という操作内容が割り振られる。「洗濯停止」という1つの操作内容に対して、「ストップ」と「停止」という2つの単語を関連付けているのは、「洗濯停止」という操作を実現するためのボタンとして、「ストップ」又は「停止」のいずれかの単語が記載されるボタンが洗濯機10に設けられる可能性があるからである。このため、「ストップ」と「停止」という2つの単語に加えて、さらに「STOP」という単語を加えてもよい。
「水位」、「レベル」、「水量」という単語には、「水位設定」という操作内容が割り振られる。「水位設定」という1つの操作に対して、「水位」、「レベル」、「水量」という3つの単語が関連付けられている。3つのうちのいずれかの単語が記載されるボタンが洗濯機10に設けられる可能性があるからである。
「工程」、「ステップ」、「作業」という単語には、「工程設定」という操作内容が割り振られる。「工程設定」という1つの操作に対して、「工程」、「ステップ」、「作業」という3つの単語が関連付けられている。3つのうちのいずれかの単語が記載されるボタンが洗濯機10に設けられる可能性があるからである。
「コース」と「自動」という単語には、「コース設定」という操作内容が割り振られる。「コース設定」という1つの操作に対して、「コース」と「自動」という2つの単語が関連付けられている。2つのうちのいずれかの単語が記載されるボタンが洗濯機10に設けられる可能性があるからである。
領域は、各単語を表示するGUIボタンを表示する領域を表す。「スタート」と「開始」という単語を表示するGUIボタンは、領域f1(X,Y)に表示される。領域f1(X,Y)は、ディスプレイパネル160の表示領域の全体の中における座標を表す。
領域f1(X,Y)が表す座標は、「スタート」又は「開始」という単語について照合部223による照合が成立した場合に、ディスプレイパネル160に表示する「スタート」又は「開始」のGUIボタンを表示する表示領域を表す。この表示領域は、一例として、円形の領域である。
本実施の形態では、領域f1(X,Y)が表す円形の領域の境界に境界線を表す円の縁取りを表示し、円の縁取りの中に「スタート」又は「開始」の文字を表示することにより、「スタート」又は「開始」のGUIボタンを生成する。
なお、これは、「スタート」と「開始」以外の単語について割り当てられている他の領域f2(X,Y)〜f5(X,Y)、・・・についても同様である。
「ストップ」と「停止」という単語を表示するGUIボタンは、領域f2(X,Y)に表示される。「水位」、「レベル」、「水量」という単語を表示するGUIボタンは、領域f3(X,Y)に表示される。
「工程」、「ステップ」、「作業」という単語を表示するGUIボタンは、領域f4(X,Y)に表示される。「コース」と「自動」という単語を表示するGUIボタンは、領域f5(X,Y)に表示される。
なお、領域f1(X,Y)〜F5(X,Y)は、互いに重なり合わず、かつ、間が少し開くように、設定されている。
振動パターンは、各単語を表示するGUIボタンの表示領域内で操作入力の位置が移動したときに振動素子140を駆動する駆動パターンを表す。
「スタート」と「開始」という単語には、波形Aによる振動パターンが関連付けられている。「スタート」又は「開始」という単語を表示するGUIボタンの表示領域で操作入力の位置が移動すると、振動素子140は、波形Aによる振動パターンで駆動される。
「ストップ」と「停止」という単語には、波形Bによる振動パターンが関連付けられている。「水位」、「レベル」、「水量」という単語には、波形Cによる振動パターンが関連付けられている。「工程」、「ステップ」、「作業」という単語には、波形Dによる振動パターンが関連付けられている。「コース」と「自動」という単語には、波形Eによる振動パターンが関連付けられている。
音声データは、各単語を表示するGUIボタンの表示領域内に操作入力の位置があるときに、スピーカ103から出力される音声案内を表すデータである。
「スタート」と「開始」という単語には、それぞれ、「スタートボタンです」と「開始ボタンです」という音声データが関連付けられている。「ストップ」と「停止」という単語には、それぞれ、「ストップボタンです」と「停止ボタンです」という音声データが関連付けられている。
「水位」、「レベル」、「水量」という単語には、それぞれ、「水位ボタンです」、「レベルボタンです」、「水量ボタンです」という音声データが関連付けられている。「工程」、「ステップ」、「作業」という単語には、それぞれ、「工程ボタンです」、「ステップボタンです」、「作業ボタンです」という音声データが関連付けられている。「コース」と「自動」という単語には、それぞれ、「コースボタンです」と「自動ボタンです」という音声データが関連付けられている。
必須機能フラグは、GUIボタンとして必須の単語であるかどうかを示すフラグである。必須機能フラグの値が‘1’であれば、必須の機能であることを示し、必須機能フラグの値が‘0’であれば、必須の機能であることを示す。
ここでは、一例として、「ストップ」と「停止」という単語の必須機能フラグの値が‘1’であり、「ストップ」と「停止」という単語のGUIボタンが生成されることが必須になっている。洗濯機10を停止させることができなければ、利用に支障が生じうるからである。
また、図12には図示しないが、電源を切るための「切」ボタンを表す「切」という単語についても、必須機能フラグの値を‘1’に設定するとよい。「切」という単語のGUIボタンがなければ、利用に支障が生じうるからである。
電子機器100は、制御データの中に必須機能フラグが‘1’の単語が存在する場合には、その単語が文字認識され、かつ、照合が成立した場合に、利用することが可能になる。
なお、図12の一番下の行には、GUIボタンの表示領域以外の部分(周辺領域)についての単語、操作内容、領域、振動パターン、音声データ、及び必須機能フラグを示す。GUIボタンの表示領域以外の部分については、単語は存在せず、操作内容は「なし」であり、領域はf9(X,Y)であり、振動パターンは波形Iであり、音声データは「なし」である。
領域はf9(X,Y)は、例えば、図8に示す周辺領域162を表す。領域f9(X,Y)は、ディスプレイパネル160の全体の表示領域から、照合が成立した単語についてのGUIボタンの表示領域を除いた領域として捉えてもよい。
電子機器100は、利用者が撮影した画像に対して文字認識を行い、認識された文字を制御データの単語と照合する。そして、照合が成立した単語について、GUIボタンを生成し、その単語に制御データの中で関連付けられている領域に、その単語を表すGUIボタンを表示させる。
このときに、制御データの中に必須機能フラグが‘1’の単語が存在すれば、その単語が文字認識され、かつ、照合が成立した場合に、電子機器100を利用することが可能になる。
そして、利用者がその単語のGUIボタンの表示領域内で操作入力を行っている指先を移動させると、制御データの中で関連付けられている振動パターンで振動素子140を駆動するとともに、制御データの中で関連付けられている音声データに基づいて、音声案内をスピーカ103から出力する。
図12に示すような制御データを利用することにより、図7乃至図11に示すような動作及び駆動信号の生成が可能になる。
図13は、電子機器100のアプリケーションプロセッサ220が実行する処理を示すフローチャートである。
まず、アプリケーションプロセッサ220は、電化製品をリモコン操作するためのアプリケーションが洗濯されると、フローを開始する(スタート)。
アプリケーションプロセッサ220は、登録データを読み出す操作が行われたかどうかを判定する(ステップS1)。登録データとは、利用者によって取得された画像から文字認識で得た文字に対して照合を行い、照合が成立した単語について生成したGUIボタンをメモリ250に格納したデータをいう。登録データの一例は、図8に示すGUIボタン161A〜161H、周辺領域162、及びその他の情報を含むデータである。
アプリケーションプロセッサ220は、登録データを読み出す操作が行われていない(S1:NO)と判定すると、画像の取得を求める(ステップS2)。具体的には、利用者がリモコン操作を行いたい電化製品の操作部の画像を取得することを求める。このとき、利用者は、カメラ104を起動して画像を取得してもよいし、メモリ250に格納されている写真データから、所望の写真を取得してもよい。また、ステップS2では、ディスプレイパネル160に「画像を選択して下さい」というメッセージを表示してもよい。ステップS2の処理は、主制御部221によって実行される。
アプリケーションプロセッサ220は、ステップS2で取得された画像をディスプレイパネル160に表示する(ステップS3)。ステップS3の処理は、主制御部221がステップS2で取得した画像を表示制御部224に出力し、表示制御部224が主制御部221から入力された画像をディスプレイパネル160に表示することによって実行される。
アプリケーションプロセッサ220は、ディスプレイパネル160に表示されている画像に対して、エッジ処理等の画像処理を行うことにより、閉曲線を抽出する(ステップS4)。閉曲線は、例えば、図1に示す洗濯機10のような電化製品の操作部11に設けられているボタン11A〜11Hに含まれる単語を囲む閉曲線である。ステップS4の処理は、主制御部221によって実行される。
アプリケーションプロセッサ220は、ステップS4の処理で抽出された閉曲線に囲まれる領域に対して文字認識を行う(ステップS5)。ステップS5の処理は、文字認識部222がOCRを利用して、画像に対して2値化又はエッジ処理等の処理で画像に含まれるパターンを抽出し、内蔵する辞書データとの照合(パターンマッチング)を行うことにより、画像に含まれる文字を認識する。
なお、ステップS5は、基本的に、閉曲線に囲まれる領域に対して文字認識を行うが、ここでは、閉曲線に囲まれる領域以外に含まれる文字又は数字についても文字認識を行い、閉曲線に囲まれる領域以外で認識された文字又は数字としてデータを保持することとする。
アプリケーションプロセッサ220は、文字認識部222によって文字が認識された単語と、メモリ250に格納される制御データに含まれる単語とを照合し、制御データに含まれる単語の中に、文字認識部222によって文字が認識された単語と同一の単語があるかどうかを判定する(ステップS6)。ステップS6の処理は、照合部223によって実行される。
ステップS5で文字が認識された単語と同一の単語が制御データに含まれる単語の中にある場合は、照合が成立する。文字が認識された単語と同一の単語が制御データに存在しない場合は、照合は不成立となる。
アプリケーションプロセッサ220は、照合が成立した(S6:YES)と判定すると、GUIボタンを生成し、ディスプレイパネル160に表示させる(ステップS7)。ステップS7の処理は、表示制御部224によって実行される。
また、表示制御部224は、GUIボタンの他に、GUIボタンの周辺領域と、周辺領域に表示するその他の情報とを生成し、合わせてディスプレイパネル160に表示させる。
表示制御部224は、照合が成立した単語に制御データの中で対応する領域のデータを読み出し、照合部223による照合が成立した単語を表すGUIボタンを表すデータを生成する。そして、表示制御部224は、ドライバIC160Aに、GUIボタンを表すデータを出力し、GUIボタンをディスプレイパネル160に表示させる。
GUIボタンは、領域が表す円形の領域の境界に境界線を表す円の縁取りと、円の縁取りの中に照合が成立した単語とを有するGUIボタンである。なお、表示領域の色と、単語の色とは、予め設定しておけばよい。
アプリケーションプロセッサ220は、ステップS7で生成したGUIボタン、周辺領域、及びその他の情報を表すデータを登録データとしてメモリ250に格納する(ステップS8)。ステップSの処理は、主制御部221によって実行される。
アプリケーションプロセッサ220は、操作入力が行われているかどうかを判定する(ステップS9)。ステップS9の処理は、主制御部221によって実行される。
アプリケーションプロセッサ220は、タッチパネル150が座標を検出しているかどうか判定することにより、操作入力が行われているかどうかを判定する。アプリケーションプロセッサ220は、ステップS9で操作入力の位置の座標を検出する。
アプリケーションプロセッサ220は、操作入力が行われている(S9:YES)と判定すると、操作入力の位置が移動しているかどうかを判定する(ステップS10)。ステップS10の処理は、主制御部221によって実行される。
アプリケーションプロセッサ220は、タッチパネル150によって検出される座標が変化しているかどうかを判定することにより、操作入力の位置が移動しているかどうかを判定すればよい。
アプリケーションプロセッサ220は、操作入力の位置が移動している(S10:YES)と判定すると、操作入力の位置がGUIボタンの表示領域内であるかどうかを判定する(ステップS11)。ステップS11の処理は、主制御部221によって実行される。
GUIボタンの表示領域は、ステップS7の処理で生成されているため、アプリケーションプロセッサ220は、操作入力の位置の座標が、いずれかのGUIボタンの表示領域内に含まれるかどうかを判定することにより、操作入力の位置がGUIボタンの表示領域内であるかどうかを判定すればよい。
アプリケーションプロセッサ220は、操作入力の位置がGUIボタンの表示領域内である(S11:YES)と判定すると、操作入力の位置を含むGUIボタンに制御データの中で対応する振動パターンに応じて、振動素子140を駆動する(ステップS12)。ステップS12の処理は、駆動制御部240によって実行される。
アプリケーションプロセッサ220は、操作入力の位置を含むGUIボタンに制御データの中で対応する音声データに応じて、音声案内を行う(ステップS13)。ステップS13の処理は、音声案内制御部225によって実行される。
アプリケーションプロセッサ220は、確定操作が行われたかどうかを判定する(ステップS14)。ステップS14の処理は、主制御部221によって実行される。
確定操作は、一例として、トップパネル120を強く押すことであり、確定操作を行うことで、電子機器100は入力を受け付ける。このような確定操作を受け付け付ける機能は、例えば、アプリケーションプロセッサ220(図6参照)のOSによって実現される。確定操作は、トップパネル120を強く押すことに限られず、トップパネル120に触れている(操作入力を行っている)指先等の面積の増大に基づいて受け付けられるようになっていてもよい。
アプリケーションプロセッサ220は、確定操作が行われた(S14:YES)と判定すると、確定操作が行われたGUIボタンに制御データの中で対応する操作内容を表すデータを電化製品に送信する(ステップS15)。ステップS15の処理は、主制御部221によって実行される。
アプリケーションプロセッサ220は、前回の操作入力が行われてから、所定時間以上にわたって操作入力が行われていないかどうかを判定する(ステップS16)。ステップS16の処理は、主制御部221によって実行される。
アプリケーションプロセッサ220は、所定時間以上にわたって操作入力が行われていない(S16:YES)と判定すると、一連の処理を終了する(エンド)。電子機器100による電化製品の操作は終了したと考えられるからである。
なお、アプリケーションプロセッサ220は、ステップS1において、登録データを読み出す操作が行われた(S1:YES)と判定すると、メモリ250から登録データを読み出し、フローをステップS9に進行させる。以前にメモリ250に格納した登録データに基づいて電化製品を操作することが利用者によって選択されたため、ステップS2〜S8の処理を行う必要がないからである。
また、アプリケーションプロセッサ220は、ステップS6において、照合が成立していない(S6:NO)と判定すると、フローをステップS2にリターンする。照合が成立していない場合は、例えば、文字認識された文字が、制御データの中に含まれる単語と一致していない場合と、文字が正しく認識されていない場合とが考えられる。
これらの場合には、電子機器100で電化製品を操作することはできないため、フローをステップS2にリターンさせて、再度画像の取得を要求することとしたものである。
また、アプリケーションプロセッサ220は、ステップS9において、操作入力が行われていない(S9:NO)と判定すると、操作入力が行われるまでステップS9の処理を繰り返し実行する。以後の利用者の操作入力に備えるためである。
また、アプリケーションプロセッサ220は、ステップS10において、操作入力の位置が移動していない(S10:NO)と判定すると、フローをステップS9にリターンする。以後の利用者の操作入力に備えるためである。
また、アプリケーションプロセッサ220は、ステップS11において、操作入力の位置がGUIボタンの表示領域内ではない(S11:NO)と判定すると、GUIボタンに制御データの中で対応する周辺領域での振動パターンに応じて、振動素子140を駆動する(ステップS17)。ステップS17の処理は、駆動制御部240によって実行される。
なお、アプリケーションプロセッサ220は、ステップS17で振動素子140を駆動すると、フローをステップS9にリターンする。以後の利用者の操作入力に備えるためである。
また、アプリケーションプロセッサ220は、ステップS14において、確定操作が行われていない(S14:NO)と判定すると、フローをステップS9にリターンする。以後の利用者の操作入力に備えるためである。
また、アプリケーションプロセッサ220は、ステップS16において、所定時間以上にわたって操作入力が行われていない状態ではない(S16:NO)と判定すると、フローをステップS9にリターンする。以後の利用者の操作入力に備えるためである。
以上のような処理を実行することにより、利用者が取得した電化製品の操作部の画像に基づいて、電子機器100で電化製品を操作することができる。また、利用者が電子機器100で電化製品を操作する際に、電子機器100は、操作入力がGUIボタンの内部で移動すると、振動素子140を駆動することにより、指先がGUIボタンの内部にあることを利用者に触感で伝達することができる。
例えば、図10に示すように、時刻t1からt2までに利用者の指先が周辺領域に触れていたときの振動パターンが、時刻t2でGUIボタン161Gの表示領域内に入ると、異なる駆動パターンに変化することによって、触感を通じて指先がGUIボタンの内部にあることを利用者に知らせることができることに相当する。
また、操作入力がGUIボタンの内部に入ると、GUIボタンによる操作内容を表す音声案内がスピーカ103から出力されるので、利用者は、触感と音声のみで、自分が触れているGUIボタンが実行可能な操作内容を把握することができる。
以上、実施の形態によれば、振動と音声で領域を判別できる電子機器100、及び、電子機器100の駆動方法を提供することができる。
従って、利用者は、目視しなくても、振動と音声でGUIボタンと、そのGUIボタンの操作内容を把握することができ、目視しなくても、電子機器100をリモコンとして用いて、電化製品を操作することができる。
このため、電子機器100で様々な電化製品を操作することができる。例えば、洗濯機10の他に、電子レンジ、テレビ、ビデオレコーダ、オーディオ等の種々の電化製品を電子機器100ひとつで、振動と音声でGUIボタンを認識して操作することができる。
また、以上では、GUI部品の一例として、GUIボタンを利用する形態について説明したが、スライダー式のGUI部品を用いて、スライダーの操作内容の音声案内に加えて、操作の方向でどのようにレベル等が変わるかを音声案内してもよい。
また、以上では、電子機器100がディスプレイパネル160を含む形態について説明したが、電子機器100はディスプレイパネル160を含まなくてもよい。振動と音声で操作内容を認識できるからである。
また、以上では、周辺領域とGUIボタンの表示領域内とで、振動パターンを変えている形態について説明したが、周辺領域では、振動素子140を駆動しないようにしてもよい。この場合は、振動が開始することによって、指先がGUIボタンの表示領域内に入ったことを認識することができる。
また、以上では、ボタン11A〜11Hの操作内容を表すボタンが閉曲線で囲まれている形態について説明したが、ボタン11A〜11Hの操作内容を表すボタンが閉曲線で囲まれてなくてもよい。
このような場合は、閉曲線を抽出することなく、文字認識を行って、制御データの単語リストに含まれる単語と照合が成立した単語についてGUIボタンによるスイッチを生成すればよい。そして、照合が成立しなかった文字については、その他の情報として、GUIボタンの周囲に表示すればよい。
また、以上では、制御データが単語リストを含み、文字認識された文字と単語とを照合する形態について説明したが、制御データが単語リストに加えて、数字のリストを含んでもよい。そして、照合の成立した単語と数字について、GUIボタンを生成してもよい。
図14は、実施の形態の変形例による電子機器100を示す図である。図14に示す電子機器100は、過去に登録した登録データを呼び出せるようになっている。ディスプレイパネル160には、○月×日△時にスタートさせた機能を選択するGUIボタン164A、×月△日○時にスタートさせた機能を選択するGUIボタン164B、及び、△月○日×時に停止した機能を選択するGUIボタン164Cが表示されている。
また、GUIボタン164A、164B、164Cが表示する内容を音声案内する音声データが関連付けられている。
このため、例えば、利用者がGUIボタン164Bを操作すると、「×月△日○時にスタートさせた機能を呼び出します」という音声案内がスピーカ103から出力される。
図15は、図14で説明する機能によって呼び出した電子機器100の画面と、洗濯機10を示す図である。電子機器100のディスプレイパネル160には呼び出した登録データによるGUIボタン161A〜161Hが表示され、利用者は、電子機器100を用いて、呼び出した登録データを利用して、洗濯機10を操作することができる。
なお、音声案内の内容を利用者が録音できるようにしてもよい。自分の声、好みの音楽、又は、これらを合わせた音声を録音して、GUIボタン164A、164B、164Cが表示する内容を音声案内するようにしてもよい。
図16は、実施の形態の変形例による電子機器100を示す図である。図16に示すGUIボタン163A〜163Hのように、洗濯機10の操作部11のボタン11A〜11Hとは異なる配列で、GUIボタン163A〜163Hをディスプレイパネル160に表示してもよい。GUIボタン163A〜163Hは、それぞれ、図8に示すGUIボタン161A〜161Hに対応する。また、GUIボタン163A〜163Hのように、洗濯機10の操作部11のボタン11A〜11Hとは異なる形状で表示してもよい。
図17は、実施の形態の変形例による画像の取得方法を説明する図である。
図17(A)に示す洗濯機10の操作部11の画像を電子機器100で取得した際に、1つの画像に操作部11が収まりきらない場合は、例えば、図17(B)に示すように、複数の画像に分けて操作部11を撮像してもよい。図17(B)では、一例として、操作部11を3つ以上の画像に分けて撮像している。
そして、画像処理で複数の画像を合成することにより、図17(C)に示すように、撮像部11の全体の画像を1つの写真に加工してもよい。このようにして得た写真に基づき、図13に示す処理を行えば、電子機器100で登録データを生成することができる。
図18は、実施の形態の変形例による電子機器100を示す図である。図18に示す電子機器100では、ストップボタンとしてのGUIボタン161Hが取得できていない。これは、文字認識で「ストップ」の文字を正しく認識できずに、照合が成立しなかった場合、又は、制御データの単語リストに「ストップ」という単語が含まれなかった場合に、生じうる事態である。このような場合には、ストップボタンの機能を利用することができない。
また、図18では、GUIボタン161Aの単語が「入」ではなく「人」になっている。これは、文字認識で洗濯機10の操作部11の「入」という文字が誤って「人」として認識され、「人」という単語について照合が成立した場合である。このような「人」のGUIボタン161Aは、電源を入れる機能が割り当てられないので、洗濯機10の電源を入れることができない。
このような場合には、電子機器100は、「再撮影してください」という音声案内をスピーカ103から出力し、利用者に写真の再取得を促す。
図19は、実施の形態の変形例による電子機器100を示す図である。図19に示す電子機器100では、「切」ボタンとしてのGUIボタン161Bが取得できていない。「切」ボタンとしてのGUIボタン161Bを表す単語「切」は、必須機能フラグの値が‘1’に設定されているからである。
このような場合には、電子機器100は、「再撮影してください」という音声案内をスピーカ103から出力し、利用者に写真の再取得を促す。
図20は、実施の形態の変形例による電子機器100の利用方法を説明する図である。
図20では、電子機器100は、サーバ50から1又は複数の登録データをダウンロードしてメモリ250に格納することができる。この場合に、電子機器100が画像から生成した登録データもメモリ250に格納してもよい。
サーバ50が保持する登録データは、電化製品の型式毎に割り振られている。図20では、型式がAAA-111の電化製品と、BBB-222の電化製品との登録データである。
利用者は、サーバ50にアクセスして自分が利用する電化製品の型式を入力し、登録データをサーバ50からダウンロードして、電子機器100で利用することができる。このため、電子機器100を様々な電化製品のリモコンとして手軽に利用することができる。
図21は、実施の形態の変形例による電子機器100の利用方法を説明する図である。図21に示す洗濯機10は、RFIDタグ15を内蔵している。RFIDタグ15のICチップには、操作部11のスイッチ11A〜11Hの種類と操作内容を表すデータが登録されている。
利用者は、RFIDタグ15のICチップに登録されたデータを近距離無線通信で読み出し、読み出したデータに対して、照合処理を行い、GUIボタン161A〜161Hを生成する。
このような手法でも、電子機器100を電化製品のリモコンとして手軽に利用することができる。この場合には、カメラ104で操作部11の写真を取得する必要がなくなり、文字認識を行う必要もなくなる。
また、RFIDタグ15のICチップに洗濯機10の型式を表すデータを登録しておき、電子機器100がRFIDタグ15から読み取った型式を表すデータを用いて、図20に示すサーバ50から型式に対応する登録データをダウンロードしてもよい。
また、洗濯機10が、RFIDタグ15の代わりに、登録データを保持していて、電子機器100が無線LAN(Local Area Network)等による無線通信で洗濯機10から登録データをダウンロードしてもよい。
以上、本発明の例示的な実施の形態の電子機器、及び、電子機器の駆動方法について説明したが、本発明は、具体的に開示された実施の形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
以上の実施の形態に関し、さらに以下の付記を開示する。
(付記1)
所定の電化製品を操作する電子機器であって、
表示部と、
前記表示部の表示面側に配設され、操作面を有するトップパネルと、
前記操作面に行われる操作入力の位置を検出する位置検出部と、
前記操作面に超音波帯の固有振動を発生させる駆動信号で駆動されることにより、前記操作面に前記固有振動を発生させる振動素子と、
前記電化製品に動作指令を送信する送信部と、
音声出力部と、
前記電化製品の操作部の画像を撮像する撮像部と、
前記撮像部が撮像した前記操作部の画像に含まれる文字を認識する文字認識部と、
電化製品の操作内容を表す所定の単語又は数字と、前記所定の単語又は数字が表す操作内容と、前記所定の単語又は数字又は前記操作内容を表す音声案内とを関連付けた制御データを格納する第1格納部と、
前記文字認識部によって認識された文字と、前記第1格納部に格納された前記制御データに含まれる単語又は数字とを照合する照合部と、
前記表示部に、前記照合が成立した単語又は数字を表すGUI部品を表示する表示制御部と、
前記位置検出部によって検出される前記操作入力の位置が前記GUI部品の表示領域内に入ると、前記操作入力の位置の時間的変化度合に応じて前記固有振動の強度が変化するように、前記振動素子を前記駆動信号で駆動する駆動制御部と、
前記位置検出部によって検出される前記操作入力の位置が前記GUI部品の表示領域内に入ると、前記音声案内を前記音声出力部に出力させる音声案内制御部と
を含む、電子機器。
(付記2)
前記GUI部品を操作を確定する確定操作が行われると、前記照合が成立した単語又は数字に対応する操作内容を表す前記動作指令を生成し、前記送信部に送信させる指令生成部をさらに含む、付記1記載の電子機器。
(付記3)
前記文字認識部は、前記撮像部が撮像した前記操作部の画像の中で、閉曲線に囲まれる文字を認識する、付記1又は2記載の電子機器。
(付記4)
前記第1格納部は、前記制御データとして、前記所定の単語又は数字と、前記操作内容と、前記音声案内と、前記駆動信号の振動パターンとを関連付けて格納しており、
前記駆動制御部は、前記位置検出部によって検出される前記操作入力の位置が前記GUI部品の表示領域内に入ると、前記操作入力の位置の時間的変化度合に応じて前記固有振動の強度が変化するように、前記照合が成立した単語又は数字に対応する前記振動パターンに基づいて、前記振動素子を前記駆動信号で駆動する、付記1乃至3のいずれか一項記載の電子機器。
(付記5)
前記画像に含まれる文字が認識されない場合、又は、前記照合が成立しない場合は、前記駆動制御部は前記振動素子を駆動せず、前記音声案内制御部は前記音声出力部に前記音声案内を出力させない、付記1乃至4のいずれか一項記載の電子機器。
(付記6)
前記画像に含まれる文字が認識されない場合、又は、前記照合が成立しない場合に、前記操作部の画像の再撮像を要求する要求部をさらに含み、
前記文字認識部は、前記撮像部によって再撮像された前記画像に含まれる文字を認識し、
前記照合部は、前記文字認識部によって前記再撮像された前記画像から認識された文字と、前記第1格納部に格納された前記制御データに含まれる単語又は数字とを照合し、
前記表示制御部は、前記再撮像された前記画像から認識された文字について前記照合が成立した単語又は数字を表すGUI部品を前記表示部に表示し、
前記画像に含まれる文字が認識され、かつ、前記照合が成立した場合に、前記駆動制御部は、前記操作入力の位置が前記GUI部品の表示領域内に入ると、前記操作入力の位置の時間的変化度合に応じて前記固有振動の強度が変化するように、前記振動素子を前記駆動信号で駆動し、前記音声案内制御部は、前記音声案内を前記音声出力部に出力させる、付記5記載の電子機器。
(付記7)
前記制御データによって関連付けられる前記所定の単語又は数字には、前記照合の成立が必須の単語又は数字があり、
前記必須の単語又は数字についての前記照合が成立しない場合は、前記駆動制御部は前記振動素子を駆動せず、前記音声案内制御部は前記音声出力部に前記音声案内を出力させない、付記1乃至6のいずれか一項記載の電子機器。
(付記8)
前記必須の単語又は数字についての前記照合が成立した場合に、前記駆動制御部は前記振動素子を駆動し、前記音声案内制御部は前記音声出力部に前記音声案内を出力させる、付記7記載の電子機器。
(付記9)
前記照合が成立した単語又は数字を登録データとして格納する第2格納部と、
前記操作入力に基づいて前記登録データから所定の単語又は数字を読み出す読み出し部と、
前記読み出し部によって読み出された単語又は数字を表すGUI部品を前記表示制御部に前記表示部に表示させ、前記位置検出部によって検出される前記操作入力の位置が前記読み出された単語又は数字を表すGUI部品の表示領域内に入ると、前記駆動制御部に、前記操作入力の位置の時間的変化度合に応じて前記固有振動の強度が変化するように、前記振動素子を前記駆動信号で駆動させるとともに、前記音声案内制御部に前記音声案内を前記音声出力部に出力させる、統括処理部と
をさらに含む、付記1乃至8のいずれか一項記載の電子機器。
(付記10)
所定の電化製品を操作する電子機器であって、
操作面を有するトップパネルと、
前記操作面に行われる操作入力の位置を検出する位置検出部と、
前記操作面に超音波帯の固有振動を発生させる駆動信号で駆動されることにより、前記操作面に前記固有振動を発生させる振動素子と、
前記電化製品に動作指令を送信する送信部と、
音声出力部と、
前記電化製品の操作部の画像を撮像する撮像部と、
前記撮像部が撮像した前記操作部の画像に含まれる文字を認識する文字認識部と、
電化製品の操作内容を表す所定の単語又は数字と、前記所定の単語又は数字が表す操作内容と、前記所定の単語又は数字又は前記操作内容を表す音声案内とを関連付けた制御データを格納する第1格納部と、
前記文字認識部によって認識された文字と、前記第1格納部に格納された前記制御データに含まれる単語又は数字とを照合する照合部と、
前記照合が成立した単語又は数字に前記トップパネルの所定の領域を割り当てる割り当て部と、
前記位置検出部によって検出される前記操作入力の位置が前記所定の領域内に入ると、前記操作入力の位置の時間的変化度合に応じて前記固有振動の強度が変化するように、前記振動素子を前記駆動信号で駆動する駆動制御部と、
前記位置検出部によって検出される前記操作入力の位置が前記所定の領域内に入ると、前記音声案内を前記音声出力部に出力させる音声案内制御部と
を含む、電子機器。
(付記11)
所定の電化製品を操作する電子機器であって、
表示部と、
前記表示部の表示面側に配設され、操作面を有するトップパネルと、
前記操作面に行われる操作入力の位置を検出する位置検出部と、
前記操作面に超音波帯の固有振動を発生させる駆動信号で駆動されることにより、前記操作面に前記固有振動を発生させる振動素子と、
前記電化製品と動作指令を送信する送信部と、
音声出力部と、
前記電化製品の識別子を読み取る読み取り部と、
前記識別子と、電化製品の操作内容を表す所定の単語又は数字と、前記所定の単語又は数字が表す操作内容と、前記所定の単語又は数字又は前記操作内容を表す音声案内とを関連付けた制御データを格納する格納部と、
前記表示部に、前記読み取り部が読み取った前記識別子に前記制御データの中で関連付けられた前記所定の単語又は数字を表すGUI部品を表示する表示制御部と、
前記位置検出部によって検出される前記操作入力の位置が前記GUI部品の表示領域内に入ると、前記操作入力の位置の時間的変化度合に応じて前記固有振動の強度が変化するように、前記振動素子を前記駆動信号で駆動する駆動制御部と、
前記音声案内を前記音声出力部に出力させる音声案内制御部と、
を含む、電子機器。
(付記12)
所定の電化製品を操作する電子機器の駆動方法であって、
前記電子機器は、
表示部と、
前記表示部の表示面側に配設され、操作面を有するトップパネルと、
前記操作面に行われる操作入力の位置を検出する位置検出部と、
前記操作面に超音波帯の固有振動を発生させる駆動信号で駆動されることにより、前記操作面に前記固有振動を発生させる振動素子と、
前記電化製品に動作指令を送信する送信部と、
音声出力部と、
前記電化製品の操作部の画像を撮像する撮像部と、
前記撮像部が撮像した前記操作部の画像に含まれる文字を認識する文字認識部と、
電化製品の操作内容を表す所定の単語又は数字と、前記所定の単語又は数字が表す操作内容と、前記所定の単語又は数字又は前記操作内容を表す音声案内とを関連付けた制御データを格納する第1格納部と、
前記文字認識部によって認識された文字と、前記第1格納部に格納された前記制御データに含まれる単語又は数字とを照合する照合部と、
前記表示部に、前記照合が成立した単語又は数字を表すGUI部品を表示する表示制御部と
を含み、
前記位置検出部によって検出される前記操作入力の位置が前記GUI部品の表示領域内に入ると、前記操作入力の位置の時間的変化度合に応じて前記固有振動の強度が変化するように、前記振動素子を前記駆動信号で駆動するとともに、前記音声案内を前記音声出力部に出力させる、電子機器の駆動方法。