(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0007】
以下に、一実施形態に係る工作機械1について図面を参照して説明する。
工作機械1は、
図1に示されるように、ワークを加工する機械本体2と、機械本体2を制御する数値制御装置(CNC)3と、を備える。
例えば、機械本体2は、治具によってワークが固定されるテーブルと、複数の工具を保持するタレットと、複数の工具を択一的に保持する主軸と、を備える。機械本体2は、テーブルおよび主軸を相対移動させることによって、回転する工具によってワークを加工する。また、機械本体2は、主軸とタレットとの間で工具を自動交換する機能を有する。
【0008】
CNC3は、プロセッサを有する制御部4と、不揮発性ストレージ、ROMおよびRAM等を有する記憶部5と、を備える。記憶部5には、機械本体2の動作を制御するための加工プログラム5aが記憶されている。制御部4は、加工プログラム5aに従って機械本体2に制御指令を送信することによって、機械本体2に、工具によるワークの加工および工具交換等の加工プログラム5aに基づく動作を実行させる。
また、記憶部5には、オペレータが工作機械1の設定をしたり工作機械1を操作したりするための多数の画面5bが記憶されている。
【0009】
工作機械1は、オペレータの音声が入力される音声入力部6と、音声入力部6に入力された音声を認識する音声認識部7と、工作機械1の動作状況を判断する状況判断部8と、表示部9と、音声および動作状況の組み合わせに基づき表示部9に表示させる画面を選択する画面選択部10と、選択された画面が正解であるか否かを表すラベルを決定するラベル決定部11と、ラベルに基づき、音声および動作状況の組み合わせと選択された画面との対応関係を学習する学習部12と、をさらに備える。
【0010】
音声入力部6および表示部9は、例えば、機械本体2を覆う箱型のカバーの正面に設けられている。
音声認識部7、状況判断部8、画面選択部10、ラベル決定部11および学習部12は、CNC3に設けられている。音声認識部7、状況判断部8、画面選択部10、ラベル決定部11および学習部12は、CNC3と接続されCNC3と通信可能である情報処理装置に設けられていてもよい。音声認識部7、状況判断部8、画面選択部10、ラベル決定部11および学習部12はそれぞれ、プロセッサを備え、後述する処理をプロセッサによって実行する。学習部12は、記憶部5に記憶された学習プログラムであり、制御部4が学習プログラムに従って学習を行うことで学習部12の機能が実現されてもよい。
【0011】
音声入力部6は、例えば、マイクロホンを備える。音声入力部6に入力された音声のデータは、音声認識部7に送信される。
表示部9は、オペレータが工作機械1の設定や操作を行うためのユーザインタフェースとして機能する。例えば、表示部9は、画面を表示するタッチパネルを備える。オペレータは、タッチパネルへのタッチ操作によって、表示された画面に対して入力操作を行ったり、画面を遷移させたりすることができる。
音声認識部7は、音声入力部6からの音声のデータを解析し、オペレータが発した言葉を認識する。例えば、音声認識部7は、音声のデータを文字列に変換し、音声を文字列として認識する。
【0012】
状況判断部8は、音声入力部6に音声が入力されたときの工作機械1の動作状況を判断する。例えば、状況判断部8は、機械動作状態データ、周辺機器データおよび履歴データの少なくとも1つを取得し、取得されたデータに基づいて動作状況を判断する。
機械動作状態データは、機械本体2の現在の状態に関連するデータであり、記憶部5に記憶された加工プログラム5aおよびパラメータ5cの少なくとも1つを含む。機械動作状態データは、周辺機器20用のラダープログラムを含んでいてもよい。パラメータ5cは、機械本体2および周辺機器20に関してオペレータによって設定される設定パラメータ、ステージおよび主軸の位置等の機械本体2の現在の状態を表す状態パラメータ、その他様々なパラメータを含む。
【0013】
周辺機器データは、工作機械1と周辺機器20との接続状況を表すデータを含む。周辺機器20は、機械本体2に取り付けられるか、または機械本体2の周辺に配置される。周辺機器20は、工作機械1と協働する機器であってもよく、工作機械1とは独立して動作する機器であってもよい。例えば、周辺機器20は、チップコンベア、ミストイータ、テーブルへのワークの取り付けおよびテーブルからのワークの取り出しを行うロボット、テーブルに設置される付加軸テーブルである。周辺機器20は、CNC3と接続される。
履歴データは、記憶部5に記憶された操作履歴5dおよびアラーム履歴5eを含む。操作履歴5dは、表示部9に対するオペレータによる操作の履歴である。アラーム履歴5eは、CNC3が発したアラームの履歴である。
【0014】
画面選択部10は、記憶部5に記憶された学習モデル5gに基づき、記憶部5の多数の画面5bの中から、音声認識部7によって認識されたオペレータの音声と状況判断部8によって判断された工作機械1の動作状況との組み合わせに応じた画面を選択する。画面選択部10は、選択した画面を表示部9に送信し、表示部9に表示させる。
【0015】
ラベル決定部11は、画面選択部10によって選択され表示部9に表示された画面が、オペレータが所望する正解の画面であるか否かを示すラベルを決定する。
ラベル決定部11によって決定されたラベルに基づき、記憶部5には、学習データ5fとして正解データが記憶される。正解データは、工作機械1の動作状況、音声、および正解の画面の組から構成される。オペレータの音声に応答して正解の画面が表示部9に表示される度に新たな正解データが追加されることによって、正解データが蓄積される。正解データに加えて、不正解データも記憶部5に記憶されてもよい。不正解データは、工作機械1の動作状況、音声および不正解の画面の組から構成される。
【0016】
例えば、ラベル決定部11は、選択された画面が表示部9に表示された後のオペレータの操作に基づき、選択された画面が正解か不正解かを判断する。
選択された画面が正解である場合、通常、オペレータは、選択された画面に対して、ボタンの押下、メニューの選択または数値の入力等の入力操作を行う。したがって、選択された画面が表示部9に表示された後、他の画面に遷移することなく選択された画面に対して入力操作が行われた場合、ラベル決定部11は、選択された画面が正解であると判断する。
一方、選択された画面が不正解である場合、通常、オペレータは、選択された画面に対して入力操作を行うことなく、他の画面に遷移する。したがって、選択された画面が表示部9に表示された後、選択された画面に対して入力操作が行われることなく他の画面に遷移した場合、ラベル決定部11は、選択された画面が不正解であると判断する。
【0017】
学習部12は、記憶部5に記憶された正解データに基づき、音声および工作機械1の動作状況の組み合わせと正解の画面との対応関係を学習することによって、音声および動作状況の組み合わせと画面との対応関係を示す学習モデル5gを作成する。
記憶部5に、初期学習データとして用意された正解データが予め記憶されていてもよい。この場合、学習部12は、初期学習データを用いて学習することによって学習モデル5gを作成する。その後、オペレータの音声に応答して正解の画面が表示部9に表示される度に、新たな正解データが初期学習データに追加される。学習部12は、初期学習データと追加された正解データとを用いて追学習することによって、学習モデル5gを随時更新する。
【0018】
次に、工作機械1の作用について説明する。
オペレータは、表示部9に所望の画面を表示させたいとき、所望の画面と関連する言葉を発する。オペレータが発した言葉は、音声入力部6を経由して音声認識部7に送られ、音声認識部7によって認識される。また、オペレータが言葉を発したときの工作機械1の動作状況が、状況判断部8によって判断される。
次に、オペレータの音声と工作機械1の動作状況との組み合わせに対応する画面が、記憶部5内の多数の画面5bの中から画面選択部10によって学習モデル5gに基づいて選択され、選択された画面が表示部9に表示される。
【0019】
一例において、状況判断部8は、機械動作状態データおよび履歴データの組み合わせに基づき、動作状況を判断する。履歴データは、それまでのオペレータの操作、工作機械1の動作、およびワーク等の特徴または傾向を表すことがある。したがって、機械動作状態データおよび履歴データの組み合わせに基づき、動作状況をより正確に判断することができる。
他の例において、状況判断部8は、機械動作状態データおよび周辺機器データの組み合わせに基づき、動作状況を判断する。工作機械1と協働する周辺機器20がCNC3に接続されている場合、周辺機器20の設定および操作用の画面が追加される。特に、ロボットの場合には、設定が複雑であるため、追加される画面の数が多い。このような場合、周辺機器データも判断材料にすることによって、適切な画面を選択することができる。
【0020】
表示部9の操作によって所望の画面を表示部9に表示させるためには、多数回の画面遷移を必要とすることがある。したがって、不慣れなオペレータにとって、所望の画面に到達することが困難であることがある。本実施形態によれば、不慣れなオペレータであっても、所望の画面と関連する言葉を発するだけで、所望の画面を表示部9に表示させることができる。この場合に、オペレータの音声に加えて工作機械1の動作状況を考慮することによって、オペレータが所望する画面を正確に選択することができる。例えば、記憶部5に記憶される多数の画面5bの中に、複数の類似の画面や、同一の音声に対応する複数の画面が含まれている場合においても、オペレータが所望する画面を正確に判断し、適切な画面を表示部9に表示させることができる。
【0021】
また、多数の画面5bの各々の名称を覚えることは、オペレータにとって困難である。本実施形態によれば、音声と動作状況との組み合わせに対応する画面が学習部12によって学習される。すなわち、学習によって、オペレータが発した任意の言葉が所望の画面と対応付けられる。したがって、オペレータは、画面の名称のような決められた言葉ではなく、曖昧な言葉によって所望の画面を表示させることができ、使いやすさを向上することができる。例えば、オペレータは、タレットの工具を交換後に工具の重量を設定したいとき、「工具重量を設定する画面」、「工具重さの画面」、「ツールが変わったときに出すやつ」または「いつもの」等のような音声によって、工具の重量を設定するための画面を表示部9に表示させることができる。
【0022】
選択された画面が表示部9に表示された後、選択された画面が所望の画面である場合、オペレータは通常、選択された画面に対して入力操作を行う。
一方、選択された画面が所望の画面ではない場合、オペレータは通常、選択された画面から所望の画面に遷移した後、所望の画面に対して入力操作を行う。したがって、ラベル決定部11は、選択された画面が不正解であると判断した後、入力操作された遷移後の画面を正解の画面であると特定し、音声、動作状況および特定された正解の画面の組を正解データに追加してもよい。
【0023】
図2は、工作機械1の動作状況、音声入力部6に入力されたオペレータの音声、および画面選択部10によって選択された画面の例を示している。
第1の例において、工作機械1の動作状況は、主軸に保持されたタップによるワークのリジッドタップ中に、例えばオペレータによる非常停止によって加工プログラム5aが停止したという状況である。この状況において、タップがワーク内にねじ込まれた状態でテーブルおよび主軸が停止している。オペレータは、タップを逆転させながらワークから抜き主軸を原点位置に復帰させるために、「復旧画面」と発語する。
状況判断部8は、上記動作状況を、例えば、制御部4による加工プログラム5aの進行状況、主軸およびテーブルの現在位置を表すパラメータ、非常停止ボタンの押下等に基づいて判断する。画面選択部10は、この動作状況と「復旧画面」の音声との組み合わせに基づいて「リジッドタップ戻し」画面を選択する。オペレータは、表示部9に表示された「リジッドタップ戻し」画面を操作することによって、タップを逆回転させながらワークから抜くことができる。
【0024】
第2の例において、工作機械1の動作状況は、主軸とタレットとの間での工具の自動交換中に、例えばオペレータによる非常停止によって加工プログラム5aが停止したという状況である。工具交換時、タレットおよび主軸は工具交換位置にそれぞれ配置される。オペレータは、タレットを原点位置に復帰させるために、「復旧画面」と発語する。
状況判断部8は、上記動作状況を、例えば、制御部4による加工プログラム5aの進行状況、タレットおよび主軸の現在位置を示すパラメータ、非常停止ボタンの押下等に基づいて判断する。画面選択部10は、この動作状況と「復旧画面」の音声との組み合わせに基づいて「タレット復旧」画面を選択する。オペレータは、表示部9に表示された「タレット復旧」画面を操作することによって、タレットを原点位置に復帰させることができる。
【0025】
第1の例および第2の例において、オペレータの音声は相互に同一であるが動作状況は相互に異なるため、表示部9に表示される画面は異なる。このように、音声に加えて動作状況を考慮することによって、オペレータが所望する画面を正確に判断し、適切な画面を表示部9に表示させることができる。
【0026】
第3の例において、工作機械1の動作状況は、テーブルがX軸の原点位置に復帰していないという状況である。オペレータは、テーブルをX軸の原点位置に復帰させるために、「復旧画面」と発語する。
状況判断部8は、上記動作状況を、例えば、制御部4による加工プログラム5aの進行状況、テーブルの現在位置を示すパラメータ等に基づいて判断する。画面選択部10は、この動作状況と「復旧画面」の音声との組み合わせに基づいてX軸用の「原点復旧」画面を選択する。オペレータは、表示部9に表示されたX軸用の「原点復旧」画面を操作することによって、テーブルをX軸の原点位置に復帰させることができる。
【0027】
第4の例において、工作機械1の動作状況は、テーブルがY軸の原点位置に復帰していないという状況である。オペレータは、テーブルをY軸の原点位置に復帰させるために、「復旧画面」と発語する。
状況判断部8は、上記動作状況を、例えば、制御部4による加工プログラム5aの進行状況、テーブルの現在位置を示すパラメータ等に基づいて判断する。画面選択部10は、この動作状況と「復旧画面」の音声との組み合わせに基づいてY軸用の「原点復旧」画面を選択する。オペレータは、表示部9に表示されたY軸用の「原点復旧」画面を操作することによって、テーブルをY軸の原点位置に復帰させることができる。
【0028】
第3の例および第4の例において、オペレータの音声は相互に同一であるが動作状況は相互に異なるため、表示部9に表示される画面は異なる。このように、音声に加えて動作状況を考慮することによって、オペレータが所望する画面を正確に判断し、適切な画面を表示部9に表示させることができる。
【0029】
第5の例において、工作機械1の動作状況は、オペレータによって作成されたラダープログラムのXアドレスおよびYアドレスが設定されていないという状況である。ラダープログラムは、周辺機器20を監視および制御するためのものであり、Xアドレスは周辺機器20からの入力信号に対応し、Yアドレスは出力信号に対応する。オペレータは、XアドレスおよびYアドレスを設定するために、「設定画面」と発語する。
状況判断部8は、上記動作状況を、例えば、記憶部5に記憶されたラダープログラムおよびアドレス(パラメータ)に基づいて判断する。画面選択部10は、この動作状況と「設定画面」の音声との組み合わせに基づいて「外部インタフェース」画面を選択する。オペレータは、表示部9に表示された「外部インタフェース」画面を操作することによって、ラダープログラムのXアドレスおよびYアドレスを設定することができる。
【0030】
第6の例において、工作機械1の動作状況は、テーブルに設置された付加軸テーブルに関するパラメータが設定されていないという状況である。オペレータは、付加軸テーブルのパラメータを設定するために、「付加軸画面」と発語する。
状況判断部8は、上記動作状況を、例えば、CNC3への付加軸テーブルの接続状況および付加軸テーブルに関するパラメータに基づいて判断する。画面選択部10は、この動作状況と「付加軸画面」の音声との組み合わせに基づいて、付加軸パラメータを設定するための「パラメータ編集」画面を選択する。オペレータは、表示部9に表示された「パラメータ編集」画面を操作することによって、付加軸テーブルのパラメータを設定することができる。
【0031】
第7の例において、工作機械1の動作状況は、ネットワーク設定画面を操作しIPアドレス等の設定した後に電源を再投入したところ、ネットワーク関係のアラームが発生したという状況である。オペレータは、「アラームを解除したい」と発語する。
状況判断部8は、上記動作状況を、例えば、アラームが発生している状態と、記憶部5に記憶された操作履歴5dと、基づいて判断する。画面選択部10は、この動作状況と「アラームを解除したい」の音声との組み合わせに基づいて、「ネットワーク設定」画面を選択する。オペレータは、表示部9に表示された「ネットワーク設定」画面を操作することによって、IPアドレス等の設定を修正しアラームを解除することができる。
【0032】
第8の例において、工作機械1の動作状況は、工作機械1と連動して作業するロボットの制御装置からのデジタル出力(DO)信号によって、機械本体2の治具のクランプおよびアンクランプを制御しているという状況である。オペレータは、DO信号による治具の制御をロボットの操作教示盤による手動操作に切り替えるために、「治具の操作がしたい」と発語する。
状況判断部8は、上記動作状況を、例えば、制御部4によって実行されている加工プログラム5aと、CNC3へのロボットの接続状況等に基づいて判断する。画面選択部10は、この動作状況と「治具の操作がしたい」の音声との組み合わせに基づいて「デジタル出力」画面を選択し、「デジタル出力」画面を表示させるための指令を、通信ネットワーク等を経由してロボットの制御装置に送信する。ロボットの制御装置は、指令に応答して操作教示盤に「デジタル出力」画面を表示させる。オペレータは、教示操作盤に表示された「デジタル出力」画面を操作することによって、DO信号による制御から教示操作盤による手動操作に切り替えることができる。
このように、画面選択部10は、周辺機器20の表示部に表示される画面を選択してもよい。
【0033】
前記実施形態において、画面選択部10は、音声および動作状況の組み合わせに応じて複数の画面を候補として選択し、優先順位の高い画面から順に表示部9に表示させてもよい。この場合、画面選択部10は、オペレータの「違う」または「次」等の音声に応答し、次点の画面を表示させてもよい。
優先順位は、例えば、音声に応答して画面が表示された後の操作者の操作に基づいて設定される。
例えば、第5の例の場合、「外部インタフェース」画面の表示後のオペレータの操作に基づいて、優先度が設定される。オペレータが、「外部インタフェース」画面に対して入力操作を行った場合、「外部インタフェース」画面の優先順位が1番に設定される。一方、オペレータが、「外部インタフェース」画面から「ラダープログラム編集」画面に遷移させ、「ラダープログラム編集」画面に対して入力操作を行った場合、「ラダープログラム編集」画面の優先順位が1番に設定され、「外部インタフェース」画面の優先順位が2番に設定される。
【0034】
前記実施形態において、工作機械1は、ラベル決定部11および学習部12を備えていなくてもよい。この場合、多数の学習データを用いた学習によって得られた学習モデル5gが、記憶部5に記憶されていてもよい。
【0035】
前記実施形態おいて、工作機械1は、学習部12による学習の結果である学習モデル5gを出力する送受信部(出力部)13を備え、送受信部13から学習部を有しない他の工作機械に学習モデル5gを送信してもよい。これにより、学習部を有しない他の工作機械においても、音声および動作状況の組み合わせに応じた最適な画面を学習モデル5gに基づいて選択し表示させることができる。
【0036】
前記実施形態において、学習部12が、単一の工作機械1によって収集された学習データを用いて学習することとしたが、これに代えて、学習部12が、複数の工作機械1によって収集された学習データを用いて学習してもよい。
図3および
図4は、他の実施形態に係る管理システム100,200を示している。
図3に示される管理システム100は、複数の工作機械1A,1B,1Cを備える。一の工作機械1AのCNC3(制御装置)は、他の工作機械1B,1Cと接続され、他の工作機械1B,1Cから学習データを受信する。工作機械1Aの学習部12は、工作機械1A,1B,1Cの学習データを用いて学習し、学習モデルを送受信部13から出力する。工作機械1B,1Cは、送受信部(入力部)13によって工作機械1Aからの学習モデルを受信する。他の工作機械1B,1Cが学習部12を有する場合、他の工作機械1B,1Cは、受信した学習モデルを追学習によって更新し、更新された学習モデルに基づいて画面を選択してもよい。
【0037】
図4に示される管理システム200は、複数の工作機械1A,1B,Cと、上位制御システム(制御装置)30と、を備える。管理システム200において、工作機械1A,1B,1Cは、エッジ装置であり、上位制御システム30は、複数の工作機械1A,1B,1Cと接続される。上位制御システムの例は、生産管理システム、出荷管理システム、ロボット用管理システム、部門管理システム等であり得る。上位制御システムは、プロセッサ等を有する制御部と、表示装置と、不揮発性ストレージ、ROM、RAM等を有する記憶部と、キーボード、タッチパネル、操作盤等である入力装置等を備える。上位制御システムは、クラウドサーバであってもよい。
【0038】
上位制御システム30は、学習部12と、送受信部13と、を有する。上位制御システム30は、複数の工作機械1A,1B,1Cから学習データを受信し、学習データを記憶部に蓄積し、蓄積された学習データを集約する。管理システム200に含まれる各工作機械1A,1B,Cは、学習部12を有していてもよく、学習部12を有していなくてもよい。上位制御システム30は、集約された学習データを用いた学習によって学習モデルを作成し、学習モデルを各工作機械1A,1B,1Cに送信してもよい。
【0039】
1つの工作機械1に蓄積される学習データには偏りが生じ得る。例えば、オペレータ毎に画面を呼び出すための言葉が異なるため、学習データは、オペレータの傾向の影響を受けやすい。偏りのある学習データから得られた学習モデルは、他のオペレータにも適しているとは限らない。複数の工作機械1A,1B,1Cから集約した学習データを用いることによって、より汎用性の高い学習モデルを作成することができる。