(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0005】
操作盤に備え付けられた手動ハンドルを操作して機械が備える軸を移動させる際に、オペレータは、移動量が多い場合には、あらかじめ手動ハンドルの操作量に対する軸移動量の倍率を大きく設定してから手動ハンドルを回転操作し、また、移動量が少ない場合には、あらかじめ手動ハンドルの操作量に対する軸移動量の倍率を小さく設定してから手動ハンドルを回転操作する。例えば、機械が備える軸を目的の位置まで移動させる際には、軸が目的位置から遠く離れた位置にある時には手動ハンドルの操作量に対する軸移動量の倍率を大きく設定してから手動ハンドルを回転操作して軸の位置を目的位置の近辺まで移動させ、その後、手動ハンドルの操作量に対する軸移動量の倍率を小さく設定して手動ハンドルを回転操作して軸の位置が目的位置となるように調整する。
【0006】
このように、手動ハンドルを操作して機械が備える軸を移動させている最中に手動ハンドルの操作量に対する軸移動量の倍率を設定変更したくなった場合には、オペレータは手動ハンドルの回転操作を一旦止めてから倍率設定のスイッチを操作する必要がある。そのため、オペレータは軸を手動で移動させるたびに手動ハンドルの回転操作と、設定スイッチを押す操作とを繰り返す、という面倒な操作手順を繰り返す必要があるという問題がある。また、操作盤として手動ハンドルと倍率設定のスイッチとを別に用意する必要があるため操作盤の開発コストを下げることができないという問題がある。そして、上記した特許文献1,2に開示される従来技術は上記した課題を解決することができない。
【0007】
そこで本発明の目的は、容易に軸移動量の倍率設定が可能な手動ハンドル送り機能を備えた数値制御装置を提供することである。
【課題を解決するための手段】
【0008】
本発明では、数値制御装置の画面上に仮想的な手動ハンドルを表示させ、表示させた仮想的な手動ハンドルに対するオペレータの操作に基づいて操作量の特定と、該操作量に対する軸移動量の倍率設定とを同時に行えるようにする。本発明の数値制御装置では、タッチパネルに表示した手動ハンドルに対するオペレータのタッチ操作のタッチ位置(手動ハンドルの中心位置との距離など)や、オペレータがタッチしている指の本数などに応じて、手動ハンドルの操作量に対する軸移動量の倍率設定を行う。
【0009】
そして、本発明の請求項1に係る発明は、少なくとも1つの軸を備える工作機械を制御する数値制御装置において、表示領域内の所定の操作領域に対するタッチ操作を検知可能なタッチパネルと、前記操作領域におけるドラッグ操作を特定するタッチ位置検出部と、前記ドラッグ操作の始点位置と、前記ドラッグ操作の終点位置とに基づく演算を行い、前記ドラッグ操作の操作量及び前記ドラッグ操作の操作方向を特定する操作量演算部と、前記ドラッグ操作に基づく演算を行い、前記ドラッグ操作の操作量に対する前記軸の移動量の倍率を決定する倍率演算部と、前記操作量演算部が特定した前記ドラッグ操作の操作量及び前記ドラッグ操作の操作方向と、前記倍率演算部が決定した前記ドラッグ操作の操作量に対する前記軸の移動量の倍率とに基づいて、前記軸を移動させるためのパルスを生成するパルス生成部と、前記パルス生成部が生成したパルスに基づいて前記軸を移動させる制御を行うサーボ制御部と、を備え、
前記始点位置は、ドラッグ操作が単位操作量進むごとに逐次更新され、前記倍率演算部は、前記ドラッグ操作の
前記始点位置に基づいて前記ドラッグ操作の操作量に対する前記軸の移動量の倍率を演算して決定する、数値制御装置である。
【0011】
本発明の請求項2に係る発明は、少なくとも1つの軸を備える工作機械を制御する数値制御装置において、表示領域内の所定の操作領域に対するタッチ操作を検知可能なタッチパネルと、前記操作領域におけるドラッグ操作を特定するタッチ位置検出部と、前記ドラッグ操作の始点位置と、前記ドラッグ操作の終点位置とに基づく演算を行い、前記ドラッグ操作の操作量及び前記ドラッグ操作の操作方向を特定する操作量演算部と、前記ドラッグ操作に基づく演算を行い、前記ドラッグ操作の操作量に対する前記軸の移動量の倍率を決定する倍率演算部と、前記操作量演算部が特定した前記ドラッグ操作の操作量及び前記ドラッグ操作の操作方向と、前記倍率演算部が決定した前記ドラッグ操作の操作量に対する前記軸の移動量の倍率とに基づいて、前記軸を移動させるためのパルスを生成するパルス生成部と、前記パルス生成部が生成したパルスに基づいて前記軸を移動させる制御を行うサーボ制御部と、を備え、
前記始点位置は、ドラッグ操作が単位操作量進むごとに逐次更新され、前記倍率演算部は、前記ドラッグ操作
の前記始点位置におけるタッチ点の数に基づいて前記ドラッグ操作の操作量に対する前記軸の移動量の倍率を演算して決定する、数値制御装置である。
【発明の効果】
【0012】
本発明によれば、手動ハンドルの操作を中断することなく回転操作と倍率変更操作が同時に行えるようになるので、オペレータによる機械の軸移動操作の効率が向上する。また、手動ハンドルと操作スイッチとを物理的に用意する必要がなくなるため、数値制御装置の製造コストを削減することができる。
【発明を実施するための形態】
【0014】
以下、本発明の実施形態を図面と共に説明する。
本発明の数値制御装置では、表示装置に表示される画面上に仮想的な手動ハンドル(以下、仮想ハンドルとする)を操作領域として表示させ、該画面上での仮想ハンドルに対するオペレータの操作を該表示装置に重畳して配置されるタッチパネルにより検出し、検出結果に基づいて操作量の特定と該操作量に対する軸移動量の倍率設定とを同時に実行する。
【0015】
図1は、本発明の一実施形態による数値制御装置での仮想ハンドルの基本操作の例を示している。本実施形態による数値制御装置を操作するオペレータは、仮想ハンドルを操作する際に、
図1に示すように表示装置に表示された仮想ハンドルの画像を指などでタッチし、タッチしたままで指を仮想ハンドルの画像上で円弧状に移動させる操作(ドラッグ操作)を行う。本実施形態による数値制御装置は、タッチパネルを介してオペレータによる仮想ハンドルに対する操作を検出し、ドラッグ操作の始点位置と該ドラッグ操作後のタッチ点の位置とに基づいて仮想ハンドルに対する操作量と操作方向とを特定する。
図1に示した円形の仮想ハンドルの場合、操作量はドラッグ操作の始点位置と、仮想ハンドルの中心位置と、ドラッグ操作後のタッチ点の位置とが為す角θに基づいて定めている。一例として、仮想ハンドルを円弧上に360°なぞるようにドラッグ操作をした時の操作量を100パルス分の操作量と定めれば、θが3.6°で1パルス分の操作量(これを単位操作量とする)の操作が為されたことになる(
図1では見やすくするために実際の角度よりも大きな角度で描画している)。また、操作方向は仮想ハンドルの中心位置から見た場合の、ドラッグ操作の始点位置とドラッグ操作後のタッチ点の位置との位置関係(例えば、仮想ハンドルの中心位置から見た場合に、始点位置が左で操作後のタッチ点が右にある場合には順方向、始点位置が右で操作後のタッチ点が左にある場合には逆方向)に基づいて定めてよい。
なお、ドラッグ操作の移動量と仮想ハンドルの操作量との対応関係については上記に限られず、仮想ハンドルの用途に応じて適宜定めてもよく、また、数値制御装置に対する設定で適宜変更できるようにしてもよい。
【0016】
図2は、
図1で説明したドラッグ操作をする際に仮想ハンドルの操作量に対する軸移動量の倍率設定を変更する操作の例を示している。本実施形態による数値制御装置を操作するオペレータは、表示装置に表示された仮想ハンドルの画像上で
図1により説明したドラッグ操作をする際に、タッチ点の位置と仮想ハンドルの中心位置との距離を変更することにより、仮想ハンドルの操作量に対する軸移動量の倍率設定を変更することができる。
図2に示した例では、仮想ハンドルの全体領域を中心位置からの距離に基づく3つの倍率設定領域へと分割した上で、それぞれ仮想ハンドルの中心位置から遠い順に1倍の倍率設定領域、10倍の倍率設定領域、100倍の倍率設定領域とし、オペレータが仮想ハンドル上でドラッグ操作をしているときに、該ドラッグ操作の始点位置がいずれの倍率設定領域にあるのかに応じて当該ドラッグ操作の操作量に対する軸移動量の倍率設定を決定している。
【0017】
図2に示した例では、数値制御装置は、オペレータのドラッグ操作が開始されると該ドラッグ操作の始点位置として点aの座標を記憶した上でタッチ点を逐次検出し続けて、ドラッグ操作の始点位置からタッチ点が単位操作量(θ=3.6°)だけ移動した時点で、その時点でのタッチ点の位置である点bの座標を終点位置として抽出する。この時、点aは1倍の倍率設定領域にあるため、数値制御装置は、操作量に対する軸移動量の倍率は1倍であると決定し、始点位置として記憶されている点aから終点位置として抽出された点bまでのドラッグ操作の操作量(単位操作量)に1倍を掛け合わせて求まるパルス量(1パルス)を出力する。
次に数値制御装置は、終点位置として抽出された点bの座標を新たなドラッグ操作の始点位置として記憶した上でタッチ点を逐次検出し続けて、ドラッグ操作の始点位置(点b)からタッチ点が単位操作量(θ=3.6°)だけ移動した時点で、その時点でのタッチ点の位置である点cの座標を終点位置として抽出する。この時、点bは1倍の倍率設定領域にあるため、数値制御装置は、操作量に対する軸移動量の倍率は1倍であると決定し、始点位置として記憶されている点bから終点位置として抽出された点cまでのドラッグ操作の操作量(単位操作量)に1倍を掛け合わせて求まるパルス量(1パルス)を出力する。
続けて数値制御装置は、終点位置として抽出された点cの座標を新たなドラッグ操作の始点位置として記憶した上でタッチ点を逐次検出し続けて、ドラッグ操作の始点位置(点c)からタッチ点が単位操作量(θ=3.6°)だけ移動した時点で、その時点でのタッチ点の位置である点dの座標を終点位置として抽出する。この時、(終点位置である点dは10倍の倍率設定領域にあるが)始点位置である点cは1倍の倍率設定領域にあるため、数値制御装置は、操作量に対する軸移動量の倍率は1倍であると決定し、始点位置として記憶されている点cから終点位置として抽出された点dまでのドラッグ操作の操作量(単位操作量)に1倍を掛け合わせて求まるパルス量(1パルス)を出力する。
更に数値制御装置は、終点位置として抽出された点dの座標を新たなドラッグ操作の始点位置として記憶した上でタッチ点を逐次検出し続けて、ドラッグ操作の始点位置(点d)からタッチ点が単位操作量(θ=3.6°)だけ移動した時点で、その時点でのタッチ点の位置である点eの座標を終点位置として抽出する。この時、始点位置である点dは10倍の倍率設定領域にあるため、数値制御装置は、操作量に対する軸移動量の倍率は10倍であると決定し、始点位置として記憶されている点dから終点位置として抽出された点eまでのドラッグ操作の操作量(単位操作量)に10倍を掛け合わせて求まるパルス量(10パルス)を出力する。
【0018】
なお、
図2では仮想ハンドルの全体領域を3つの倍率設定領域に分割しているが、倍率設定領域の数は設計的に変更してもよく、また、数値制御装置に対する設定で適宜変更できるようにしてもよい。
図2ではそれぞれの倍率設定領域を同じ幅としているが、それぞれの倍率設定領域の幅を異なるものとしてもよく、例えばよく使われる倍率設定領域の幅を広くするようにしてもよい。
また、
図2の例では倍率設定領域は仮想ハンドルの中心位置から遠くなるほど倍率が低くなるように配置しているが、仮想ハンドルの中心位置から遠くなるほど倍率が高くなるように配置してもよい。前者の場合、軸が目的位置近辺にあるときに微調整がしやすくなり、後者の場合には軸を高速で移動させる際に移動量の制御がしやすくなるというメリットがある。
【0019】
以下では、上記した操作を実現する数値制御装置の構成について説明する。
図3は、本発明の一実施形態による数値制御装置の要部を示すハードウェア構成図である。数値制御装置1はプロセッサ10を中心に構成されている。プロセッサ10はROM11に格納されたシステム・プログラムに従って数値制御装置1全体を制御する。このROM11にはEPROMあるいはEEPROMが使用される。
【0020】
RAM12にはDRAM等が使用され、一時的な計算データ、表示データ、入出力信号等が格納される。不揮発性メモリ13には図示されていないバッテリによってバックアップされたCMOSやSRAMが使用され、電源切断後も保持すべきパラメータ、加工プログラム、工具補正データ等が記憶される。
【0021】
LCD/MDIユニット18は、数値制御装置1の前面あるいは機械操作盤と同じ位置に配置され、データ及び図形の表示、データ入力、数値制御装置1の運転に使用される。グラフィック制御回路19は数値データ及び図形データ等のデジタル信号を表示用のラスタ信号に変換し、表示装置20に送り、表示装置20はこれらの数値及び図形を表示する。表示装置20には主に液晶表示装置が使用される。
【0022】
入力装置21は数値キー、シンボリックキー、文字キー及び機能キーを備えたキーボードや、マウスなどのポインティングデバイスから構成され、加工プログラムの作成、編集及び数値制御装置の運転に使用される。
タッチパネル22は、オペレータによるタッチやドラッグなどの操作を検知する機能を備える。タッチパネル22は表示装置20の画面上に重畳して配置され、オペレータが表示装置20の画面上に表示されたソフトウェアキーやソフトウェアボタン、ソフトウェアスイッチに対して行った操作をタッチパネル22により検知することができる。なお、タッチパネル22と表示装置20とを併せて1つの装置として構成しても良い。
【0023】
軸制御回路14はプロセッサ10からの軸の移動指令を受けて、軸の移動指令をサーボアンプ15に出力する。サーボアンプ15はこの移動指令を増幅し、工作機械2に結合されたサーボモータを駆動し、工作機械2の工具とワークの相対運動を制御する。なお、
図3では1軸分のみ示したが、軸制御回路14及びサーボアンプ15はサーボモータの軸数に対応した数だけ設けられる。
【0024】
PMC(プログラマブル・マシン・コントローラ)16はプロセッサ10からバス17経由でM(補助)機能信号、S(スピンドル速度制御)機能信号、T(工具選択)機能信号等を受け取る。そして、これらの信号をシーケンス・プログラムで処理して、出力信号を出力し、工作機械2内の空圧機器、油圧機器、電磁アクチュエイタ等を制御する。また、工作機械2内の機械操作盤のボタン信号、スイッチ信号等の各種信号を受けて、シーケンス処理を行い、バス17を経由してプロセッサ10に必要な入力信号を転送する。
なお、
図3ではスピンドルモータ制御回路及びスピンドルモータ用アンプ等は省略してある。
【0025】
図4は、本発明により提供される仮想ハンドル操作による手動軸移動制御の機能を
図3に示した数値制御装置1に対してシステム・プログラムにより実装した場合の一実施形態による概略的な機能ブロック図を示している。
図4に示されている数値制御装置1が備える各機能手段は、
図3に示したプロセッサ10がシステム・プログラムを実行することで数値制御装置1の各部を動作させ、それぞれの機能を提供することにより実現される。
本発明の数値制御装置1は、タッチ位置検出部100、始点位置記憶部110、倍率演算部120、操作量演算部130、パルス生成部140、サーボ制御部150、表示制御部160を備える。
【0026】
タッチ位置検出部100は、後述する表示制御部160が表示装置20に対して表示した仮想ハンドルの表示位置に対応するタッチパネル22上の位置におけるオペレータの操作を逐次検出する。タッチ位置検出部100は、タッチパネル22上でドラッグ操作(タッチしたままタッチ点を移動させる操作)が開始されると、ドラッグ操作の始点位置を検出して後述する始点位置記憶部110へと出力する。その後、タッチ位置検出部100は、オペレータによる仮想ハンドルに対するドラッグ操作を逐次検出し、始点位置記憶部110に記憶された始点位置から単位操作量分のドラッグ操作が為されたことを検出した時点で、その時点でのタッチ点の位置を終点位置として抽出し、抽出した終点位置を後述する操作量演算部130へと出力する。そして、後述するパルス生成部140によって実行される前記始点位置から前記終点位置までのドラッグ操作に対応するパルスの生成処理が完了すると、前記終点位置を新たなドラッグ操作の始点位置として始点位置記憶部110へと出力する。タッチ位置検出部100は、上記処理を繰り返すことにより、オペレータによるドラッグ操作を検出し続ける。
【0027】
始点位置記憶部110は、タッチ位置検出部100から入力されたドラッグ操作の始点位置を図示しないメモリ(RAM12など)に記憶する。
【0028】
倍率演算部120は、始点位置記憶部110に記憶された始点位置と、表示装置20に表示されている仮想ハンドルの表示位置と、あらかじめ図示しないメモリ(不揮発性メモリ13など)に設定されている倍率設定領域に係る設定情報(仮想ハンドルの全体領域がどのように分割され、それぞれの領域にいずれの倍率が設定されているか、といった情報)とに基づいて、操作量に対する軸移動量の倍率設定を決定する。
【0029】
操作量演算部130は、始点位置記憶部110に記憶されている始点位置と、タッチ位置検出部100から入力された終点位置と、表示装置20に表示されている仮想ハンドルの表示位置とに基づいて、
図1で説明したように始点位置から終点位置までのドラッグ操作の操作量及び操作方向を演算して特定し、特定したドラッグ操作の操作量及び操作方向に係る情報をパルス生成部140、および表示制御部160へと出力する。
【0030】
パルス生成部140は、操作量演算部130から入力されたドラッグ操作の操作量及び操作方向と、倍率演算部から入力された操作量に対する軸移動量の倍率設定とに基づいて軸の移動に係るパルスを生成し、生成したパルスをサーボ制御部150へと出力する。パルス生成部140は、ドラッグ操作の操作量に対して操作量に対する軸移動量の倍率設定を掛けることで生成するパルスの数を決定し、ドラッグ操作の操作方向(順方向、逆方向)に基づいて軸の移動方向の正負を決定する。
そして、サーボ制御部150は、パルス生成部140から入力されたパルスに基づいて工作機械2が備える各サーボモータを制御する。
【0031】
表示制御部160は、表示装置20上に仮想ハンドルを表示する制御を実行する。表示制御部160は、あらかじめ設定された位置に仮想ハンドルの画像を表示し、また、操作量演算部130から入力されたドラッグ操作の操作量及び操作方向に係る情報に基づいて、画面上に表示されている仮想ハンドルの画像を変更する。例えば、表示制御部160は、仮想ハンドルが丸いハンドル形状である場合には、オペレータの操作に応じて仮想ハンドルが回転するようにアニメーション表示する。
【0032】
図5は、本実施形態による数値制御装置1上で実行される処理の流れを示すフローチャートである。
●[ステップSA01]タッチ位置検出部100は、オペレータがタッチパネル22上で現在タッチしているタッチ点の位置を逐次検出し、ドラッグ操作を開始した時点での位置を始点位置として始点位置記憶部110へ出力する。始点位置記憶部110は、タッチ位置検出部100から入力された位置を始点位置として記憶する。
●[ステップSA02]タッチ位置検出部100は、逐次オペレータがタッチパネル22上で現在タッチしているタッチ点の位置を検出し続け、RAM12などのメモリ上に一時的に記憶する。
【0033】
●[ステップSA03]タッチ位置検出部100は、ステップSA02で一時的に記憶しているオペレータのタッチパネル22上でのタッチ点の位置が、仮想ハンドルの中心位置から見て単位操作量(3.6°)だけ回転したか否かを判定する。単位操作量だけ回転した場合にはその時点でのタッチ点の位置を終点位置として取得した上でステップSA04へと処理を移行し、単位操作量だけ回転していない場合にはステップSA02へ戻って検出処理を継続する。
【0034】
●[ステップSA04]操作量演算部130は、始点位置記憶部110が記憶している始点位置とステップSA03で取得した終点位置とからドラッグ操作の操作量と操作方向とを特定し、特定したドラッグ操作の操作量と操作方向に基づいてパルス生成部140に対してパルスを生成するように指令する。そして、パルス生成部140は、操作量演算部130からの指令に基づいてパルスをサーボ制御部へと出力する。
【0035】
●[ステップSA05]操作量演算部130は、ステップSA04で特定したドラッグ操作の操作量と操作方向に基づいて表示制御部160に対して表示を更新するように指令する。表示制御部160は、操作量演算部130からの指令に基づいて表示装置20上に表示されている仮想ハンドルが回転するようにアニメーション表示する。
【0036】
以上、ここまで本発明の実施の形態について説明したが、本発明は上記した実施の形態の例にのみ限定されるものでなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、上記した実施形態では仮想ハンドルを丸いハンドル形状で表示する例を示しているが、例えば
図6に示すように仮想ハンドルを四角い形状で表示するようにしてもよく、その場合、ドラッグ操作の左右方向の操作長に基づいて操作量を決定し、ドラッグ操作の方向で操作方向を決定するようにすればよい。また、
図6下に示すように仮想ハンドルの全体領域を上下に分割した複数の倍率設定領域を設け、例えば下に行くほど倍率が低くなるようにしてもよい。
【0037】
また、上記した実施形態では仮想ハンドルの全体領域を複数の倍率設定領域を設け、ドラッグ操作した際のタッチ点の位置により操作量に対する軸移動量の倍率設定を変更できるように構成しているが、例えば
図7に示すようにドラッグ操作を行う際のタッチ点の数(指の数)で操作量に対する軸移動量の倍率設定を変更できるように構成してもよい。その場合、タッチ位置検出部100はオペレータによるドラッグ操作におけるタッチ点の数(タッチしている指の数)も検出するようにした上で、始点位置記憶部110は始点位置に加えてタッチ点数を記憶するようにすれば、倍率演算部120は記憶されたタッチ点の数を倍率設定の決定に用いることができる。なお、タッチ位置については、複数のタッチ点の重心位置などを用い、タッチ点の数が変化した前後においてタッチ位置は変化していないものとして取り扱うようにすればよい。
図1〜3で説明したように倍率設定領域を利用した操作量に対する軸移動量の倍率設定をするように構成した場合には、オペレータが工作機械2の方を見ながらタッチパネル22上に表示される仮想ハンドルを操作して前記工作機械2が備える軸を移動させようとすると、途中でオペレータ自身が想定している倍率設定領域から指が外れてしまうことが起こり得るが、
図7で説明するようにタッチ点数により操作量に対する軸移動量の倍率設定をするように構成した場合にはこのような問題を回避することができる。
【0038】
上記した実施形態では、オペレータによりなされるドラッグ操作により単位操作量分の操作が為される度に、ドラッグ操作の操作量及び操作方向、並びに操作量に対する軸移動量の倍率設定が為される例を示しているが、当該処理を、例えば数単位操作量のドラッグ操作が為される度に実行するようにしてもよい。このようにすることで、ドラッグ操作に対する軸移動の精度や即応性が低下する問題はあるが、数値制御装置の負荷が軽くなるので、本発明の機能を処理能力が低い数値制御装置に実装する場合には有効である。
【0039】
更に、
図4で説明した機能ブロック図に示されている各機能手段については、それぞれの機能手段が備える機能が保たれている限りは2以上の機能手段を1つの機能手段として実装したり、1つの機能手段を2以上の機能手段として分割して実装したりするようにしてもよい。例えば、始点位置記憶部110をタッチ位置検出部100の一部として実装することも可能である。