以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、一実施形態における作業支援システム100の概略的な構成を示す。作業支援システム100は、サーバ80と、音声認識サーバ82と、ウェアラブル端末10a及びウェアラブル端末10bとを備える。ウェアラブル端末10aは、作業者40aの頭部42aに装着される。ウェアラブル端末10bは、作業者40bの頭部42bに装着される。
ウェアラブル端末10a及びウェアラブル端末10bは、同一の構成を有している。ウェアラブル端末10a及びウェアラブル端末10bを総称する場合に、「ウェアラブル端末10」という場合がある。ウェアラブル端末10の機能を説明する場合に、ウェアラブル端末10aのみを取り上げて説明する場合がある。また、作業者40a及び作業者40bを総称する場合に、「作業者40」という場合がある。
作業支援システム100は、ウェアラブル端末10を通じて作業者40に画像を提供するためのシステムの一例である。本実施形態では、作業の一例として、点検作業を取り上げて、作業支援システム100の機能を具体的に説明する。具体的には、作業者40が設備の点検を行う作業者であるとする。
作業支援システム100は、作業者40が行う点検を支援するための画像を提供する。具体的には、作業支援システム100は、ウェアラブル端末10を通じて、複数の点検項目を含む点検に関する画像を作業者40に提供する。ウェアラブル端末10は、例えば、点検作業現場において使用されてよい。作業としては、設備や物品の点検作業の他に、物品の組み立て作業、介護、教育、事務作業等、様々な作業を含み得る。
サーバ80及びウェアラブル端末10は、ネットワーク90を通じて通信可能に接続されている。ネットワーク90は、インターネット、LAN、WAN、公衆回線網、専用回線網等、様々な形態のネットワークを含み得る。
ウェアラブル端末10aは、本体部11aと、表示部12aを有する。ウェアラブル端末10aは、本体部11aが作業者40aの耳部に装着されることにより、作業者40aの頭部42aに装着され得る。ウェアラブル端末10aは、本体部11aが作業者40aの眼鏡に装着されることにより、作業者40aの頭部42aに装着され得る。ウェアラブル端末10aは、眼鏡型の端末であってよい。ウェアラブル端末10aは、いわゆるアイウエアであってよい。
ウェアラブル端末10は、1つの点検作業に含まれる1以上の点検項目の内容を、サーバ80から取得して記憶する。点検項目としては、例えば、「キズ・欠けはないか」等、良否の点検結果を入力するための項目を含み得る。その他、点検項目としては、「長さを確認」等、数値の点検結果を入力するための項目や、「型番を入力」等、文字の点検結果を入力するための項目を含み得る。
ウェアラブル端末10は、1以上の点検項目の内容を表示部12に順次に表示する。作業者40は、表示部12に表示された点検項目に従って、順次に点検を行う。作業者40は、点検結果を音声で入力する。また、作業者40は、ウェアラブル端末10に対する指示を音声で入力する。
例えば、作業者40は、「写真」という音声を発することで、ウェアラブル端末10に写真撮影を行わせることができる。また、作業者40は、「実績」という音声を発することで、過去の点検で行われた点検結果や写真を表示部12に表示させることができる。また、作業者40は、「OK」「NG」という音声を発することで、良否の点検結果をウェアラブル端末10に入力することができる。作業者40は、数値や単位を発することで、測定値などの点検結果をウェアラブル端末10に入力することができる。
ウェアラブル端末10は、作業者40が発した音声により生成された音声データを、ネットワーク90を通じてサーバ80に送信して、指示や点検結果を示す文字列をサーバ80から取得する。サーバ80は、ウェアラブル端末10から受信した音声データを音声認識サーバ82に送信して、音声認識サーバ82による音声認識により得られた文字列を受信する。サーバ80は、音声認識サーバ82から受信した文字列に対応づけられた指示を、ウェアラブル端末10に送信する。
例えば、サーバ80は、「実績」の指示に対応づけて、「じっせき」の他に、「じいせき」や「じせき」等の文字列を記憶している。これにより、音声認識により得られた文字列が「じいせき」又は「じせき」である場合であっても、「実績」の指示をウェアラブル端末10に送信する。これにより、ユーザ毎の発音の違いや周囲の外乱等により、同じ指示の音声認識結果が異なってしまっても、正しい指示を取得できる可能性を高めることができる。
また、ウェアラブル端末10は、作業者40が点検を開始した点検開始時刻、作業者40が点検を終了した時刻である点検終了時刻、作業者40が点検に要した時間である点検時間を計時する。ウェアラブル端末10は、ウェアラブル端末10自身の内部時計により、点検開始時刻、点検終了時刻、及び点検時間を計時する。ウェアラブル端末10は、作業者40から入力された点検結果をサーバ80に送信する場合、点検開始時刻、点検終了時刻、及び点検時間もサーバ80に送信する。
サーバ80は、点検結果、点検開始時刻、点検終了時刻、及び点検時間を含む点検結果データを外部に提供する場合、ウェアラブル端末10の内部時計がサーバ80に対して時刻合わせされていない状態で点検結果が入力された作業については、点検開始時刻及び点検終了時刻のデータを「----」等の文字列でマスクする。これにより、ウェアラブル端末10の内部時計が時刻合わせしていない状態で取得された時刻情報を、適切な形態で出力することができる。例えば、ウェアラブル端末10は、電源OFF時に内部時計の動作を維持する電池を有しない。この場合、電源を一旦OFFした後に電源ONすると、ウェアラブル端末10の工場出荷時や直前の電源OFF時の固定日時に内部時計がリセットされる。そのため、点検開始時刻及び点検終了時刻については正確な値に得ることはできない。しかし、点検時間については比較的に正確な値を得ることができる。ウェアラブル端末10によれば、ウェアラブル端末10の内部時計がサーバ80に対して時刻合わせされていない状態で点検結果が入力された作業については、点検開始時刻及び点検終了時刻をマスクするので、正確でない値が管理データとして提供されることを抑制することができる。
図2は、ウェアラブル端末10の機能ブロック構成を概略的に示す。ウェアラブル端末10は、表示部12と、撮像部202と、マイク205と、操作部材207と、制御部200と、記憶部210と、通信部290とを備える。
制御部200は、マイクロプロセッサ等の演算装置であってよい。記憶部210は、フラッシュメモリ等の不揮発性の記憶装置やRAM等の揮発性の記憶装置であってよい。記憶部210は、ウェアラブル端末10の動作の各段階を実行させるためのプログラムを格納する。ウェアラブル端末10の機能は主として、制御部200が当該プログラムを実行することにより実現される。プログラムは、記録媒体に記録されて記憶部210に提供される。通信部290は、ウェアラブル端末10におけるネットワーク90を通じた通信機能を担う。
表示部12は、ウェアラブル端末10が作業者40の頭部42に装着された場合に、作業者40の視方向に表示面が対向するように設けられる。撮像部202は、ウェアラブル端末10が作業者40の頭部42に装着された場合に、撮像部202の撮像光軸が作業者40の視方向に沿うように設けられる。
マイク205は、作業者40の音声を取得する。マイク205は、ウェアラブル端末10が作業者40の頭部42に装着された場合に、作業者40の口元近くに移動可能なように、柔軟性を持つ支持部材を介してウェアラブル端末10に取り付けられる。操作部材207は、ボタン等の物理的な部材である。操作部材207は、作業者40からの指示を取得することができる。本実施形態では主として、作業者40が音声により指示する場合を取り上げて説明する。しかし、少なくとも一部の指示を、操作部材207を用いて行うことができる。
制御部200は、計時部204、開始処理部208、表示制御部220、無効化部230、利用頻度取得部232、取消頻度取得部234、作業結果情報生成部240、作業結果出力部248、指示取得部250、音声取得部260、認識結果取得部270、音声認識部272、及び指示特定部280を備える。
音声取得部260は、作業者40の音声を取得する。具体的には、音声取得部260は、マイク205により取得された音声を取得して、音声データを生成する。音声認識部272は、マイク205により取得された音声を認識して文字列を生成する。具体的には、音声認識部272は、音声取得部260が生成した音声データを解析して文字列を生成する。
認識結果取得部270は、作業者40の音声の音声認識によって得られた文字列を取得する。例えば、認識結果取得部270は、音声認識部272に音声データが出力され、音声認識部272による音声認識によって得られた文字列を取得する。通信部290が音声認識サーバ82と通信可能である場合、音声取得部260により生成された音声データが、通信部290及びネットワーク90を通じて外部の音声認識サーバ82に送信される。認識結果取得部270は、音声認識サーバ82による音声認識によって得られた文字列を取得する。
記憶部210は、ウェアラブル端末10に対する指示と複数の文字列とを対応づける対応情報を記憶している。例えば、対応情報は、「じっせき」、「じいせき」、「じせき」等の文字列を、「実績」という指示に対応づける。指示特定部280は、対応情報によって認識結果取得部270が取得した文字列に対応づけられている指示を、ウェアラブル端末10に対する指示として特定する。
指示取得部250は、サーバ80と通信可能である場合に、マイク205により取得された音声をサーバ80に送信して、サーバ80において特定された指示をサーバ80から受信する。指示取得部250は、サーバ80と通信可能でない場合に、記憶部210が記憶している対応情報によって音声認識部272が生成した文字列又は音声認識サーバ82から取得した文字列に対応づけられている指示を、ウェアラブル端末10に対する指示として取得する。
ウェアラブル端末10は、複数の点検項目のそれぞれに関連づけられた画像を作業者40に提供する。例えば、表示制御部220は、点検項目で行う点検内容を示す画像を、表示部12に表示させる。具体的には、表示制御部220は、「型番を入力」、「キズ・欠けがないか」等の、点検内容を説明する文字を含む画面を表示部12に表示させる。「型番を入力」、「キズ・欠けがないか」等は、点検項目の一例である。
記憶部210は、複数の点検項目のそれぞれの点検項目に対応づけて、それぞれの点検項目に関連づけられた画像が作業者40に提供されているときに入力されるべき指示を複数の文字列に対応づける対応情報を記憶する。指示特定部280は、ウェアラブル端末10を通じて作業者40に提供されている画像が関連づけられた点検項目に対応づけて記憶部210が記憶している対応情報によって認識結果取得部270が取得した文字列と対応づけられている指示を、ウェアラブル端末10に対する指示として特定する。これにより、指示特定部280は、現在の点検項目において有効な指示のみを特定すればよいので、指示が誤特定される確率を低減することができる。
表示制御部220は、指示の一覧を提示する指示に応じて、ウェアラブル端末10を通じて作業者40に提供されている画像が関連づけられた点検項目に対応づけて対応情報によって対応づけられている複数の指示の一覧を、作業者40に提示する。これにより、作業者40に、現在の作業項目において有効な指示の一覧を提示することができる。
利用頻度取得部232は、複数の点検項目のそれぞれについて、それぞれの点検項目に関連づけられた画像が作業者40に提供されている場合において複数の指示が使用された頻度を取得する。表示制御部220は、複数の指示の一覧を使用頻度に応じた順序で作業者40に表示する。これにより、作業者40は、頻繁に使用される指示を早く発見することができる。
取消頻度取得部234は、対応情報によって指示に対応づけられている複数の文字列のそれぞれについて、指示特定部280が特定した指示が作業者40によって取り消された頻度を取得する。無効化部230は、対応情報において、取り消された頻度が予め定められた値以上の文字列と指示との対応づけを無効にする。例えば、取消頻度取得部234は、作業者40からの「ちせき」と認識された音声指示に応じて「実績」の処理を実行した後に、すぐに「もどる」という音声指示を取得した場合に、指示が取消されたと判断して、「ちせき」に対応する取消回数をカウントアップする。
以上に説明したように、ウェアラブル端末10によれば、作業者が発する言葉のアクセントの違いや周囲の騒音等によって、正規の文字列の認識結果が得られなかった場合でも、認識結果を比較的に高い確率で正規の指示に変換することができる。
次に、点検結果が入力された場合の動作について説明する。表示制御部220がある作業項目の画像を表示部12に最初に表示させた場合、記憶部210は計時部204で計時される現在時刻を、点検開始時刻として記憶部210に記憶する。点検開始時刻は、作業に関する画像が前記ウェアラブル端末10で表示されたときにウェアラブル端末10で計時された第1の時刻の一例である。ここで、指示取得部250により、点検結果の入力する指示を取得した場合、記憶部210は、計時部204で計時される現在時刻を、点検終了時刻として記憶部210に記憶する。点検終了時刻は、点検結果をウェアラブル端末10が作業者40から取得したときにウェアラブル端末10で計時された第2の時刻の一例である。作業結果情報生成部240は、点検開始時刻と、点検終了時刻と、点検開始時刻から点検終了時刻までの時間である点検時間と、入力された点検結果を含む点検結果情報を生成して記憶部210に記憶する。記憶部210は、点検結果情報を記憶する作業結果記憶部として機能する。通信部290は、計時部204が生成した点検結果情報を、サーバ80に送信する。
点検結果情報は、複数の作業項目のそれぞれについて生成される。すなわち、点検結果情報は、複数の作業項目のそれぞれについて、それぞれの作業項目に関する画像がウェアラブル端末10で表示されたときにウェアラブル端末10で計時された点検開始時刻と、それぞれの点検項目の点検結果をウェアラブル端末10が作業者40から取得したときにウェアラブル端末10で計時された点検終了時刻と、点検開始時刻から点検終了時刻までの時間である点検時間と、点検結果とを含む。点検時間は、作業項目に関する画像がウェアラブル端末10で表示されてからウェアラブル端末10が作業者40から点検結果を取得するまでの点検時間を示す。
複数の作業項目の作業を行う場合、一つの作業項目の点検結果が入力されると、表示制御部220は、次の作業項目に関する画像を表示する。これにより、ウェアラブル端末10は、作業者40の音声によって点検結果が入力された場合に、点検開始時刻から点検終了時刻までの時間を取得し、点検結果情報をサーバ80に送信し、点検結果が入力された作業の次の作業に関する画像を表示する。これにより、次の作業項目の点検時間の計時が開始される。これにより、作業者40は複数の作業項目の作業を効率的に行いながら、点検時間を管理する情報をサーバ80に蓄積することができる。
なお、開始処理部208は、ウェアラブル端末10の電源が投入される毎に、ウェアラブル端末10に予め設定されている固定時刻から計時を開始する。また、開始処理部208は、作業者40から入力される認証情報をサーバ80に送信し、サーバ80により作業者40が認証された場合に、ウェアラブル端末10において計時される時刻をサーバ80で管理されている現在時刻に合わせる。固定時刻とは、例えば、1970年1月1日0時0分0秒等の基準日時であってよい。固定時刻とは、ウェアラブル端末10の工場出荷時に設定された時刻であってよい。固定時刻とは、ウェアラブル端末10が最後に電源OFFされたときの時刻であってよい。
なお、作業結果出力部248は、作業者40から点検結果が入力された場合に、サーバ80により作業者40が認証され、かつ、サーバ80と通信可能であることを条件として、点検結果情報をサーバ80に出力する。一方、作業結果出力部248は、サーバ80により作業者40が認証されていない場合又はサーバ80と通信可能でない場合には、点検結果情報を記憶部210に出力し、点検結果情報が記憶部210に出力された後、サーバ80により作業者40が認証された場合に、記憶部210に記憶されている点検結果情報をサーバ80に送信する。
図3は、サーバ80の機能ブロック構成を概略的に示す。サーバ80は、制御部300と、記憶部310と、通信部390とを備える。
制御部300は、マイクロプロセッサ等の演算装置であってよい。通信部390は、サーバ80におけるネットワーク90を通じた通信機能を担う。記憶部310は、フラッシュメモリやハードディス装置等の不揮発性の記憶装置を含む。記憶部310は、RAM等の揮発性の記憶装置を含む。サーバ80用のプログラムは、記録媒体に記録されて記憶部210に提供される。
制御部300は、時刻管理部304、認証制御部320、無効化部330、利用頻度取得部332、取消頻度取得部334、結果出力部340、判断部342、合計時間算出部344、音声取得部360、認識結果取得部370、指示特定部380、集計部392、選択部394を備える。
上述したように、ウェアラブル端末10において、作業刻開始時刻、点検終了時刻及び点検時間と、点検結果とを含む点検結果情報が、ウェアラブル端末10から送信される。通信部390は、ウェアラブル端末10から送信された点検結果情報を受信する。通信部390は、点検結果情報を受信する作業結果受信部として機能する。通信部390が受信した点検結果情報は、記憶部310に記憶される。
結果出力部340は、点検結果データの送信を要求された場合、点検開始時刻及び点検終了時刻がサーバ80で管理されている時刻と整合する場合に、点検開始時刻及び点検終了時刻、点検時間、及び点検結果を含む点検結果データを生成する。一方、結果出力部340は、点検開始時刻又は点検終了時刻がサーバ80で管理されている時刻と整合しない場合に、点検開始時刻及び点検終了時刻をマスクした点検結果データを生成する。例えば、点検開始時刻及び点検終了時刻を「----」にした点検結果データを生成する。通信部390は、結果出力部340が生成した点検結果データを、点検結果データの要求先に送信する。
時刻管理部304は、現在時刻を管理する。時刻管理部304は、サーバ80から受信した基準時刻に基づいてシステム時計を合わせる。認証制御部320は、ウェアラブル端末10から受信した作業者40の認証情報に基づいて作業者40を認証するとともに、ウェアラブル端末10において計時される時刻を現在時刻に合わせる時刻合わせをウェアラブル端末10に実行させる。
判断部342は、点検開始時刻又は点検終了時刻と時刻管理部が管理している現在時刻との差が予め定められた値より大きい場合に、点検開始時刻又は点検終了時刻がサーバ80で管理されている時刻と整合していないと判断する。例えば、判断部342は、点検開始時刻又は点検終了時刻と、サーバ80で管理されている時刻との差が予め定められた値を超える場合に、点検開始時刻又は点検終了時刻がサーバ80で管理されている時刻と整合していないと判断する。例えば、ウェアラブル端末10の電源ON後、ウェアラブル端末10の時刻がサーバ80と時刻合わせされない場合、ウェアラブル端末10は、1970年1月1日0時0分0秒を基準時刻とし、基準時刻からの経過時間の初期値を0にリセットして、時刻を計時する。この場合、点検開始時刻又は点検終了時刻と時刻管理部304が管理している現在時刻との差が大きくなるため、現在時刻と整合していないと判断される。
合計時間算出部344は、作業対象毎に、作業対象に設定された複数の作業項目にわたる時間の合計値を算出する。通信部390は、作業対象に対応づけて、点検開始時刻、点検終了時刻、点検時間及び点検結果に加えて、合計時間算出部が算出した合計値を含む点検結果データを、点検結果データの要求元に送信する。
次に、サーバ80における音声認識に関する処理について説明する。音声取得部360は、通信部390が受信した、ウェアラブル端末10から送信された音声データを取得する。認識結果取得部370及び指示特定部380は、それぞれウェアラブル端末10における認識結果取得部270及び指示特定部380に対応する機能ブロックである。
具体的には、認識結果取得部370は、作業者40の音声の音声認識によって得られた文字列を取得する。例えば、音声取得部360が取得した音声データが通信部290及びネットワーク90を通じて外部の音声認識サーバ82に送信され、音声認識サーバ82が音声認識することにより得られた文字列を取得する。
記憶部310は、ウェアラブル端末10に対する指示と複数の文字列とを対応づける対応情報を記憶している。例えば、対応情報は、「じっせき」、「じいせき」、「じせき」等の文字列を、「実績」という指示に対応づける。記憶部310は、対応情報を記憶する対応情報記憶部として機能する。指示特定部380は、対応情報によって認識結果取得部270が取得した文字列に対応づけられている指示を、ウェアラブル端末10に対する指示として特定する。指示特定部380が特定した指示を示す情報は、通信部390及びネットワーク90を通じて、ウェアラブル端末10に送信される。
利用頻度取得部332、取消頻度取得部334、及び無効化部330は、それぞれウェアラブル端末10における利用頻度取得部232、取消頻度取得部234、及び無効化部230に対応する機能ブロックである。すなわち、利用頻度取得部332は、複数の点検項目のそれぞれについて、それぞれの点検項目に関連づけられた画像が作業者40に提供されている場合において複数の指示が使用された頻度を取得する。
取消頻度取得部334は、対応情報によって指示に対応づけられている複数の文字列のそれぞれについて、指示特定部380が特定した指示が作業者40によって取り消された頻度を取得する。無効化部330は、対応情報において、取り消された頻度が予め定められた値以上の文字列と指示との対応づけを無効にする。例えば、取消頻度取得部334は、作業者40からの「ちせき」と認識された音声指示に応じて「実績」の処理を実行した後に、すぐに「もどる」という音声指示を取得した場合に、指示が取消されたと判断して、「ちせき」に対応する取消回数をカウントアップする。
ここで、サーバ80の記憶部310及びウェアラブル端末10の記憶部210に記憶される対応情報の生成方法について説明する。集計部392は、複数の人による指示の音声の音声認識により得られた複数の文字列を取得し、当該複数の文字列のそれぞれの文字列として音声が認識された人数を文字列毎に集計する。選択部394は、集計部392によって集計された人数に基づいて、複数の文字列の中から、対応情報において指示に対応づけられるべき文字列を選択する。これにより、様々な人の発声に対応することができる。対応情報により指示に対応づける文字列の選択方法の具体例については、図12等に関連して説明する。
以上に説明したウェアラブル端末10及びサーバ80によれば、音声認識結果としての複数の文字列と指示とを対応づける対応情報を用いて指示を特定するので、ユーザ毎の発音の違いや周囲の外乱等の影響を低減することができる。また、サーバ80が点検結果データを提供する場合、ウェアラブル端末10とサーバ80とが時刻合わせされていない状態で点検結果が入力された作業については、点検開始時刻及び点検終了時刻のデータを「----」等の文字列でマスクするので、正確でない値が管理データとして提供されることを抑制することができる。
図4は、ウェアラブル端末10による点検支援処理の全体を示すフローチャートである。本フローチャートの処理は、主として、制御部200がウェアラブル端末10の各部を制御することにより実現される。
S402において、ウェアラブル端末10が電源ONされると、開始処理部208は、計時部204に固定時刻から計時を開始させる。
S404において、表示制御部220は、ログイン画面を表示部12に表示させる。ログイン画面が表示されている状態でユーザID等の認証情報が入力されると、S406において、開始処理部208は、認証情報を用いて認証する。S406の処理の詳細については、図6に関連して説明する。
ログインが完了すると、S410において、点検対象の場所、設備、及び部位を取得する。場所、設備、及び部位の指示は、作業者40の音声により入力される。続いて、S412において、ウェアラブル端末10は、点検項目リストを設定する。例えば、ウェアラブル端末10は、サーバ80と通信可能な場合、S410で取得した場所、設備、及び部位を示す情報をサーバ80に送信して、サーバ80から1以上の点検項目を含む点検項目リストを取得する。サーバ80と通信可能でない場合、S410で取得した場所、設備、及び部位を示す情報に対応づけて記憶部210が記憶している点検項目リストを、記憶部210から読み出す。
S414において、作業者40の点検を支援するための処理を行う。S414の具体的な処理については後述する。
図5は、ログイン画面500の一例を示す。ログイン画面500は、音声で入力する内容を示すオブジェクト510と、音声入力が可能であるか否かを示すオブジェクト580を含む。表示制御部220は、音声入力が可能である場合に、オブジェクト580の外枠の色を予め定められた第1の色で表示させる。表示制御部220は、例えば、音声認識中である場合等、新たな音声入力が可能でない場合に、オブジェクト580の外枠の色を予め定められた第2の色で表示させる。表示制御部220は、音声入力が可能である場合において、音声が入力されると、認識された文字を枠内に表示させる。
図6は、ウェアラブル端末10によるログイン処理を示すフローチャートである。本フローチャートの処理は、主として、制御部200がウェアラブル端末10の各部を制御することにより実現される。本フローチャートの処理は、図4のS406の処理に適用することができる。
S602において、制御部200は認証情報を取得する。例えば、作業者40は、図5に示すログイン画面が表示されている状態で取得されたユーザの音声を認識することにより、認証情報を取得する。なお、制御部200は、撮像部202で撮像された画像から認証情報を取得してよい。例えば、ウェアラブル端末10を利用可能な作業者40には、認証情報をコード化したQRコード(登録商標)が印刷されたログイン証が配布される。作業者40がログイン証を撮像部202で撮像すると、制御部200は、ログイン証の画像から抽出したコード化情報を復号して、認証情報を取得してよい。
S604において、開始処理部208は、通信部290を通じて認証情報をサーバ80に送信する。開始処理部208は、S606において、サーバ80により認証されたか否かを判断する。サーバ80により認証された場合、S608において、開始処理部208は、計時部204が計時する時刻をサーバ80の現在時刻に合わせて、図4のS410に進む。なお、サーバ80により認証された状態のことを、「オンライン状態」と呼ぶ場合がある。
S606において、サーバ80により認証されなかった場合、S610に進む。サーバ80により認証されなかった場合とは、サーバ80から作業者40を認証できない旨が通知された場合や、ウェアラブル端末10がサーバ80と通信可能でない場合を含む。S610において、開始処理部208は、記憶部210に記憶されている参照情報と認証情報とを照合する。記憶部210の参照情報と認証情報とを照合することにより作業者40を認証した場合、図4のS410に進む。なお、サーバ80により認証されず、記憶部210の参照情報と認証情報との照合により認証された状態のことを、「オフライン状態」と呼ぶ場合がある。参照情報と認証情報とを照合することにより作業者40を認証できなかった場合、図4のS404に進む。
図7は、ウェアラブル端末10による点検支援処理を示すフローチャートである。本フローチャートの処理は、主として、制御部200がウェアラブル端末10の各部を制御することにより実現される。本フローチャートの処理は、図4のS414の処理に適用することができる。
S702において、表示制御部220は点検開始画面を表示部12に表示させ、制御部200は「点検開始」の指示を取得するまで待機する(S704)。
「点検開始」が指示されると、S706において、作業結果情報生成部240は、点検報告用の開始時刻を記憶部210に記憶する。S708において、表示制御部220は、最初の点検項目の画面を表示させる。点検項目の画面については後述する。
S720において、指示取得部250は作業者40の指示を取得する。上述したように、作業者40の音声による指示は、サーバ80又は指示特定部280により特定される。S720の処理については、図10に関連して説明する。
本フローチャートでは、S720で取得した指示として、点検結果の入力指示と、コマンド一覧を表示するための「コマンド」指示と、コマンド一覧を非表示にするための「閉じる」指示と、他の指示又は対応する指示がなかった場合を取り上げて説明する。
S720で取得した指示が点検結果の入力指示であった場合、S722において現在時刻を取得し、S724において、作業結果情報生成部240が生成した点検結果情報を、記憶部210又はサーバ80に出力する。
続いて、S726において、点検項目リストに次の点検項目が存在するか否かを判断する。次の点検項目が存在する場合、S708に処理を移行する。次の点検項目が存在しない場合、S728において点検報告用の終了時刻を記憶して、本フローチャートの処理を終了する。
S720で取得した指示が「コマンド」の場合、S730において、音声コマンド一覧を表示して、S720に処理を移行する。音声コマンド一覧については、図9に関連して説明する。S720で取得した指示が「閉じる」の場合、S732において、音声コマンド一覧の表示を閉じて、S720に処理を移行する。S720で取得した指示が点検結果の入力指示、「コマンド」及び「閉じる」のいずれでない場合や、作業者40の音声の認識結果に対応する指示がなかった場合、S734において、他の指示に対応する処理、又は、対応する指示がなかった場合の予め定められた処理を実行して、S720に処理を移行する。
図8は、点検画面800の一例を示す。点検画面800は、点検結果を入力する内容を示すオブジェクト810と、本点検項目において最も良く使用される3つの指示を示すオブジェクト820を含む。
点検画面800は、ケーブルの型番を点検するための画面である。点検画面800においては、数字、アルファベット及び記号を、点検結果として入力することができる。アルファベットの小文字は、アルファベットの文字の直前に「こもじ」を付けることで音声入力可能である。例えば、「xYz」は、「こもじえっくすわいこもじぜっと」と発声することで入力可能である。すなわち、指示特定部280は、認識結果に「こもじ」が含まれている場合、「こもじ」に続く文字列が表すアルファベットを小文字に変換することで、指示された文字列を特定する。なお、日本語の発音では数字の「9」とアルファベットの「Q」を識別しにくいため、アルファベットの「Q」には「けべっく」を対応づける。すなわち、指示特定部280は、認識結果の「けべっく」を「Q」に変換する。
図9は、音声コマンド一覧が表示されている状態の点検画面900の一例を示す。点検画面900は、音声コマンド一覧を示すオブジェクト910を含む。表示制御部220は、オブジェクト910を点検画面800上にオーバーレイ表示することにより、音声コマンド一覧を表示する。
オブジェクト910は、点検画面800において入力可能な指示の一覧を含む。表示制御部220は、オブジェクト910において指示を表示する順番を、利用頻度が高い順に並べる。例えば、画面に向かって左側に位置する指示が、画面に向かって右側に位置する指示より利用頻度が高くなるように並べてよい。左右方向に同じ位置に指示については、画面に向かって上側に位置する指示が、画面に向かって下側に位置する指示より利用頻度が高くなるように並べてよい。
オブジェクト910が表示されている状態で「閉じる」の指示があった場合、表示制御部220は、オブジェクト910の表示を終了する。なお、オブジェクト910が表示されている状態でも、指示を入力することができる。例えば、オブジェクト910が表示されている状態で、作業者40が「じっせき」と発声すると、過去実績を表示する画面へと遷移する。
図10は、ウェアラブル端末10において作業者40から音声で指示を取得する処理を表すフローチャートである。本フローチャートの処理は、主として、制御部200がウェアラブル端末10の各部を制御することにより実現される。本フローチャートの処理は、図7のS720の処理に適用することができる。
S1002において、音声取得部260は、マイク205で取得された音声データを生成する。S1004において、指示取得部250は、ウェアラブル端末10がオンライン状態かつサーバ80と通信可能な状態であるか否かを判断する。ウェアラブル端末10がオンライン状態かつサーバ80と通信可能である場合、通信部290は、音声データをサーバ80に送信する。サーバ80において、音声取得部360、認識結果取得部370、指示特定部380により作業者40の指示が特定され、特定された指示を示す情報がサーバ80からウェアラブル端末10に送信される。サーバ80が作業者40の指示を特定する処理については、図11に関連して後述する。S1008において、指示取得部250は、通信部290を通じて、サーバ80で特定された指示を取得し、本フローチャートの処理を終了する。
S1004において、ウェアラブル端末10がオフライン状態である場合、又は、ウェアラブル端末10がサーバ80と通信不可能である場合、S1010において、ウェアラブル端末10において作業者40の指示を特定し、本フローチャートの処理を終了する。S1010では、上述したように、音声認識部272、認識結果取得部270、及び指示特定部280により、作業者40の指示が特定される。
図11は、対応情報として記憶される情報をテーブル形式で示す。図11は、「実績」の指示に対応づけられた対応情報である。対応情報は指示毎に用意される。対応情報は、認識文字列と、認識回数と、取消回数と、有効フラグとを互いに対応づける。
認識文字列は、音声認識により得られた文字列に該当する。認識回数は、音声認識によって認識文字列の文字列が得られた回数を表す。例えば、認識回数は、音声認識サーバ82等によって「じっせき」の文字列として認識される毎にインクリメントされる。
取消回数は、認識文字列の文字列が認識された後に対応する指示が取り消された回数を表す。例えば、音声認識サーバ82等によって「ちせき」の文字列として認識されてから予め定められた時間内に「戻る」の指示が入力された場合に、「ちせき」に基づく「実績」の指示が取り消されたと判断して、「ちせき」に対応する取消回数をインクリメントする。
有効フラグは、認識文字列と指示とが対応づけられているか否かを示す。「有効」は、認識文字列と指示とが対応づけられていることを示し、「無効」は、認識文字列と指示とが対応づけられていないことを示す。無効化部230は、認識回数及び取消回数に基づく指示の取消頻度が予め定められた値を以上となった場合に、有効フラグを「有効」から「無効」に切り換える。
図12は、対応情報を生成するための事前学習データの一例を示す。図12は、「実績」の指示に対応づけられた事前学習データである。「実績」の指示についての対応情報は、多数の人が「実績」を発声したときの音声の認識結果を学習することにより、生成される。
図12において、認識文字列は、多数の人が「実績」と発声したときに音声認識サーバ82等により認識された文字列を表す。人数は、認識文字列の文字列として認識された音声を発声した人の数を表す。人数は、事前学習を行う場合に、集計部392により集計される。選択部394は、事前学習データに基づいて、対応情報において「実績」の指示に対応づける認識文字列を選択する。具体的には、選択部394は、人数が多い順に認識文字列を選択する。選択部394は、選択した認識文字列の人数の合計が全人数の95%を上回るまで認識文字列を選択する。選択部394が選択した認識文字列は、対応情報により、「実績」の指示に対応づけられる。具体的には、図11に示されるように、「じっせき」から「ちせき」までの認識文字列が選択されて「実績」の指示との対応づけが有効となる。一方、「じせいき」の認識文字列は「実績」の指示との対応づけは無効とされる。
図13は、サーバ80において作業者40の指示を特定する処理を表すフローチャートである。本フローチャートの処理は、主として、制御部300がサーバ80の各部を制御することにより実現される。
S1302において、音声取得部360は、通信部390を通じて、ウェアラブル端末10から受信した音声データを取得すると、S1304において、通信部390は、音声認識サーバ82に音声データを送信する。S1306において、認識結果取得部370は、通信部390を介して、音声認識サーバ82で認識された文字列を取得する。
S1310において、指示特定部380は、各指示の対応情報を参照して、有効フラグが「有効」である認識文字列の中に、S1306で取得した文字列が存在する対応情報が発見されたか否かを判断する。対応情報が発見された場合、S1312において、指示特定部380は、発見された対応情報に対応づけられている指示を、作業者40の指示として特定する。
S1314において、対応情報の更新処理を行う。S1314の処理については図14に関連して説明する。
S1316において、通信部390は、S1312で特定した指示を示す情報を、ウェアラブル端末10に送信する。S1310において、対応情報が発見されなかった場合、S1318において、通信部390は、対応する指示がなかったことを示す情報をウェアラブル端末10に送信する。
図14は、対応情報の更新処理を表すフローチャートである。本フローチャートの処理は、主として、制御部300がサーバ80の各部を制御することにより実現される。本フローチャートの処理は、図13のS1314の処理に適用することができる。
S1402において、無効化部330は、特定された指示に対応する対応情報において、認識文字列に対応づけられた認識回数の値をインクリメントする。S1404において、S1312で特定した作業者40の指示が、直前の指示を取り消す指示であるか否かを判断する。例えば、S1312で特定された作業者40の指示が「戻る」であり、かつ、直前の指示を行った時刻からの経過時間が予め定められた値より短い場合に、直前の指示を取り消す指示であると判断する。直前の指示を取り消す指示でなかった場合は、本フローチャートの処理を終了する。直前の指示を取り消す指示であった場合、S1406において、無効化部330は、直前の指示の対応情報において、直前の指示における認識文字列に対応づけられている取消回数をインクリメントする。
S1408において、取消頻度取得部334は利用頻度及び取消頻度に基づいて取消頻度を算出し、無効化部330は、取消頻度が予め定められた閾値以上であるか否かを判断する。取消頻度が予め定められた閾値未満の場合は、本フローチャートの処理を終了する。取消頻度が予め定められた閾値以上の場合、S1410において、無効化部330は、直前の指示の認識文字列の有効フラグを「無効」に切り換える。S1412において、無効化部330は、有効フラグが「無効」であった認識文字列のうち、事前学習において人数が最も多い認識文字列の有効フラグを「有効」に切り換える。例えば、「実績」に対応づけられた対応情報において、「ちせき」の有効フラグを「無効」に切り換える場合、「じせいき」の有効フラグを「有効」に切り換える。
図11から図14に関連して説明したように、対応情報により、音声認識により得られる可能性がある複数の文字列を一つの指示に対応づけるので、ユーザ毎の発音の違いや周囲の外乱等により、指示が認識されない確率を低減することができる。ウェアラブル端末10においては、複数の作業項目を順次に表示して指示を音声で入力するが、一つの作業項目において入力可能な指示の数は比較的少数にすることができる。各指示に複数の文字列を対応づける手法は、入力可能な指示の数が少ないシステムにおいて、特に有効である。
なお、図11から図14に関連して、サーバ80で指示を特定する場合のサーバ80が行う処理を説明した。図11から図14に関連して説明した処理のうちの少なくとも一部の理を、ウェアラブル端末10において指示を特定する場合の処理に適用できる。例えば、図10のS1010の処理に適用できる。
図15は、サーバ80がウェアラブル端末10から収集した点検結果データに基づく点検結果の表示画面の一例を示す。図15の画面は、例えば、作業者40の点検を管理する管理者のコンピュータ端末に表示される。
ウェアラブル端末10からサーバ80に送信される点検結果情報には、点検結果情報の送信者を識別する情報と、報告用の点検開始時刻及び報告用の点検終了時刻と、点検対象の場所、設備、部位を識別する情報と、複数の点検項目を識別する情報と、各点検項目の点検結果、点検開始時刻、点検終了時刻、及び点検時間とが含まれる。結果出力部340は、点検結果情報と、記憶部310に記憶されている点検項目の詳細情報から、点検結果データを生成する。
図15は、ウェアラブル端末10がオンライン状態、かつ、サーバ80と通信可能な状態で取得した点検結果の点検結果情報から生成された点検結果の表示画面である。図15の「作業項目表示時刻」、「作結果入力時刻」、及び「作業時間」は、それぞれ点検開始時刻、点検終了時刻、及び点検時間を表す。「作業時間合計」は、合計時間算出部344によって点検時間を合計した時間を表す。ウェアラブル端末10はオンライン状態で点検結果を取得しているので、結果出力部340は、点検開始時刻及び点検終了時刻の時間をマスクせずに点検結果データに含める。よって、「作業項目表示時刻」及び「作結果入力時刻」にはウェアラブル端末10で計時された時刻が表示される。
図16は、点検結果データに基づく点検結果の表示画面の他の一例を示す。図16の表示画面は、ウェアラブル端末10がオフライン状態で取得した点検結果の点検結果情報から生成された点検結果の表示画面である点で、図15の表示画面とは異なる。ウェアラブル端末10はオフライン状態で点検結果を取得しているので、結果出力部340は、点検結果データにおける点検開始時刻及び点検終了時刻の時間をマスクする。そのため、「作業項目表示時刻」及び「作結果入力時刻」には「----」が表示される。一方、「作業時間」及び「作業時間合計」にはウェアラブル端末10で計時された点検時間に基づく正確な時間が表示される。そのため、管理者は作業者40が点検に要した時間をきちんと把握することができる。
図17は、ウェアラブル端末10からダウンロードされる、各点検項目の点検結果データの一例を示す。図18は、ウェアラブル端末10からダウンロードされる、点検対象毎の点検結果データの一例を示す。
各点検結果データは、例えばCSV形式のテキストデータとしてダウンロードすることができる。図17及び図18は、ウェアラブル端末10がオンライン状態、かつ、サーバ80と通信可能な状態で取得した点検結果の点検結果情報から生成された点検結果データを示す。図17の「作業項目表示時刻」、「作結果入力時刻」、及び「作業時間」は、それぞれ点検開始時刻、点検終了時刻、及び点検時間を表す。図18の「作業時間合計」は、合計時間算出部344によって点検時間を合計した時間を表す。図18の「作業開始時刻」及び「作業終了時刻」は、報告用の点検開始時刻及び報告用の点検終了時刻を示す。ウェアラブル端末10はオンライン状態で点検結果を取得している。そのため、結果出力部340は、各時刻をマスクせずに点検結果データに含める。
図19は、ウェアラブル端末10からダウンロードされる、点検項目毎の点検結果データの他の一例を示す。図20は、ウェアラブル端末10からダウンロードされる、点検対象毎の点検結果データの他の一例を示す。
各点検結果データは、例えばCSV形式のテキストデータとしてダウンロードすることができる。図19及び図20は、ウェアラブル端末10がオフライン状態で取得した点検結果の点検結果情報から生成された点検結果データである点で、図17及び図18の点検結果データとは異なる。ウェアラブル端末10はオフライン状態で点検結果を取得している。そのため、結果出力部340は、点検結果データに含まれる各時刻を「----」でマスクする。一方、「作業時間」及び「作業時間合計」には、ウェアラブル端末10で計時された点検時間に基づく正確な時間が含まれる。そのため、管理者は作業者40が点検に要した時間をきちんと把握することができる。
以上において、ウェアラブル端末10が、点検項目毎に点検開始時刻、点検終了時刻、及び点検時間を記憶する形態を主として説明した。しかし、点検開始時刻、点検終了時刻、及び点検時間を示す情報を記憶するために、点検開始時刻、点検終了時刻、及び点検時間の全てが必要ではない。例えば、点検開始時刻及び点検終了時刻の少なくとも一方と、点検時間とを記憶すれば、点検開始時刻、点検終了時刻、及び点検時間を表すことができる。他にも、点検開始時刻及び点検終了時刻を記憶すれば、点検開始時刻、点検終了時刻、及び点検時間を表すことができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、及び図面中において示した装置、システム、プログラム、及び方法における動作、手順、ステップ、及び段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、及び図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。