(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-09
(45)【発行日】2024-12-17
(54)【発明の名称】制御システム、制御方法および制御装置
(51)【国際特許分類】
G05B 19/19 20060101AFI20241210BHJP
B23K 26/00 20140101ALI20241210BHJP
【FI】
G05B19/19 M
B23K26/00 A
(21)【出願番号】P 2021025589
(22)【出願日】2021-02-19
【審査請求日】2023-12-12
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】安井 勇人
【審査官】杉田 隼一
(56)【参考文献】
【文献】特開2012-096307(JP,A)
【文献】特開平11-138476(JP,A)
【文献】特開2000-225478(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/19
B23K 26/00
(57)【特許請求の範囲】
【請求項1】
予め設定された移動軌跡に従って移動対象物の移動を制御する移動制御部と、
指定位置に関連付けて予め規定された領域上の境界線を保持する記憶部と、
前記移動対象物が前記指定位置に到達したか否かを判断する移動判定部とを備え、
前記移動判定部は、
前記移動対象物が前記境界線を跨いだか否かを判定し、
前記移動対象物が前記境界線を跨いだと判定した場合には、前記指定位置に到達したと判断
し、
ユーザ設定に従って前記境界線を生成する設定受付部をさらに備え、
前記設定受付部は、前記移動軌跡に対して前記境界線を生成するための設定画面を有し、
前記設定画面は、前記指定位置の入力の受付が可能であり、かつ、前記指定位置を通過する前記移動軌跡を分割する仮想境界線が操作可能に表示され、
前記設定受付部は、前記設定画面における前記仮想境界線に対する操作入力を受け付けて前記境界線を生成する、制御システム。
【請求項2】
前記境界線は、領域上の点および当該点を通る直線の角度に基づいて規定される、請求項1記載の制御システム。
【請求項3】
前記設定受付部は、前記指定位置の入力に従って、前記移動軌跡に対して垂線かつ、前記指定位置を通過する直線を境界線として生成する、請求項1記載の制御システム。
【請求項4】
前記移動判定部は、
前記境界線に従う前記移動対象物の位置に対する判定関数を算出し、
前記移動対象物の位置に従う前記判定関数の値の符号が反転するか否かに基づいて前記境界線を跨いだか否かを判定する、請求項1記載の制御システム。
【請求項5】
前記移動判定部の判断結果に基づいて、所定の動作を実行する実行部をさらに備える、請求項1記載の制御システム。
【請求項6】
前記所定の動作は、第1状態から第2状態に変化する動作、前記第2状態から前記第1状態に変化する動作、あるいは前記第1および前記第2状態を維持する動作のいずれか1つである、請求項5記載の制御システム。
【請求項7】
予め設定された移動軌跡に従って移動対象物の移動を制御するステップと、
前記移動対象物が指定位置に到達したか否かを判断するステップとを備え、
前記判断するステップは、
前記移動対象物が前記指定位置に関連付けて予め規定された領域上の境界線を跨いだか否かを判定し、
前記移動対象物が前記境界線を跨いだと判定した場合には、前記指定位置に到達したと判断し、
ユーザ設定に従って前記境界線を生成するステップをさらに備え、
前記境界線を生成するステップは、
前記移動軌跡に対して前記境界線を生成するための設定画面を表示するステップと、
前記設定画面において前記指定位置の入力の受付が可能であり、かつ、前記指定位置を通過する前記移動軌跡を分割する仮想境界線を操作可能に表示するステップと、
前記設定画面における前記仮想境界線に対する操作入力を受け付けて前記境界線を生成するステップとを含む、制御方法。
【請求項8】
予め設定された移動軌跡に従って移動対象物の移動を制御する移動制御部と、
指定位置に関連付けて予め規定された領域上の境界線を保持する記憶部と、
前記移動対象物が前記指定位置に到達したか否かを判断する移動判定部とを備え、
前記移動判定部は、
前記移動対象物が前記境界線を跨いだか否かを判定し、
前記移動対象物が前記境界線を跨いだと判定した場合には、前記指定位置に到達したと判断し、
ユーザ設定に従って前記境界線を生成する設定受付部をさらに備え、
前記設定受付部は、前記移動軌跡に対して前記境界線を生成するための設定画面を有し、
前記設定画面は、前記指定位置の入力の受付が可能であり、かつ、前記指定位置を通過する前記移動軌跡を分割する仮想境界線が操作可能に表示され、
前記設定受付部は、前記設定画面における前記仮想境界線に対する操作入力を受け付けて前記境界線を生成する、制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、制御システム、制御方法および制御装置に関する。
【背景技術】
【0002】
従来より、制御コードを用いた加工プログラムを用いてレーザ加工が行われている。例えば、特開平2-63692号公報(特許文献1)は、加工条件がパラメータとして定義されてレーザ発振器の出力や移動速度等を制御する技術を開示する。具体的には、当該公報には、移動開始からの距離に基づいて加工条件を変更する場合が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方で、従来より、条件成立の判定方式として特定の位置に到達したか否かを判定する方式がある。しかしながら、座標を指定した場合に、当該座標を通過しない場合には、条件成立の判定ができないという課題がある。また、上述の先行技術文献は、このような課題について、何ら考慮されていない。
【0005】
本開示の一つの目的は、簡易な方式で、特定の位置に到達したか否かを判定することが可能な制御システムおよび制御方法ならびに制御装置を提供することである。
【課題を解決するための手段】
【0006】
本開示の一例に従う制御システムは、予め設定された移動軌跡に従って移動対象物の移動を制御する移動制御部と、指定位置に関連付けて予め規定された領域上の境界線を保持する記憶部と、移動対象物が指定位置に到達したか否かを判断する移動判定部とを備える。移動判定部は、移動対象物が境界線を跨いだか否かを判定し、移動対象物が境界線を跨いだと判定した場合には、指定位置に到達したと判断する。この構成によれば、境界線を跨いだと判定した場合には、指定位置に到達したと判断することが可能であり、簡易な方式で、特定の位置に到達したか否かを判定することが可能である。
【0007】
制御システムは、ユーザ設定に従って境界線を生成する設定受付部をさらに備える。この構成によれば境界線をユーザ設定で設定可能である。
【0008】
境界線は、領域上の点および当該点を通る直線の角度に基づいて規定される。この構成によれば、点および点を通る直線の角度に基づいて規定されるため境界線を簡易に設定することが可能である。
【0009】
設定受付部は、移動軌跡に対して境界線を生成するための設定画面を有する。設定画面は、指定位置の入力の受付が可能であり、かつ、指定位置を通過する移動軌跡を分割する仮想境界線が操作可能に表示される。設定受付部は、設定画面における仮想境界線に対する操作入力を受け付けて境界線を生成する。この構成によれば、設定画面により境界線を簡易に設定することが可能である。
【0010】
設定受付部は、指定位置の入力に従って、移動軌跡に対して垂線かつ、指定位置を通過する直線を境界線として生成する。この構成によれば、指定位置の入力により境界線が生成されるため簡易に境界線を設定することが可能である。
【0011】
移動判定部は、境界線に従う移動対象物の位置に対する判定関数を算出する。移動判定部は、移動対象物の位置に従う判定関数の値の符号が反転するか否かに基づいて境界線を跨いだか否かを判定する。この構成によれば、境界線を跨いだか否かを簡易な方式で判定することが可能である。
【0012】
制御システムは、移動判定部の判断結果に基づいて、所定の動作を実行する実行部をさらに備える。この構成によれば、判断結果を用いて所定の動作を実行することが可能である。
【0013】
所定の動作は、第1状態から第2状態に変化する動作、第2状態から第1状態に変化する動作、あるいは第1および第2状態を維持する動作のいずれか1つである。この構成によれば、所定の動作を複数の状態の変化で定義することが可能であるため設計の自由度を向上させることが可能である。
【0014】
本開示の別の一例に従う制御方法は、予め設定された移動軌跡に従って移動対象物の移動を制御するステップと、移動対象物が指定位置に到達したか否かを判断するステップとを備える。判断するステップは、移動対象物が指定位置に関連付けて予め規定された領域上の境界線を跨いだか否かを判定し、移動対象物が境界線を跨いだと判定した場合には、指定位置に到達したと判断する。この構成によれば、境界線を跨いだと判定した場合には、指定位置に到達したと判断することが可能であり、簡易な方式で、特定の位置に到達したか否かを判定することが可能である。
【0015】
本開示のさらに別の一例に従う制御装置は、予め設定された移動軌跡に従って移動対象物の移動を制御する移動制御部と、指定位置に関連付けて予め規定された領域上の境界線を保持する記憶部と、移動対象物が指定位置に到達したか否かを判断する移動判定部とを備える。移動判定部は、移動対象物が境界線を跨いだか否かを判定し、移動対象物が境界線を跨いだと判定した場合には、指定位置に到達したと判断する。この構成によれば、境界線を跨いだと判定した場合には、指定位置に到達したと判断することが可能であり、簡易な方式で、特定の位置に到達したか否かを判定することが可能である。
【発明の効果】
【0016】
本開示のある局面に従う制御システム、制御方法および制御装置は、境界線を跨いだと判定した場合には、指定位置に到達したと判断することが可能であり、簡易な方式で、特定の位置に到達したか否かを判定することが可能である。
【図面の簡単な説明】
【0017】
【
図1】実施形態に従う制御システム1の構成例を示す模式図である。
【
図2】実施形態に従う制御システム1の主要なハードウェア構成例を示す模式図である。
【
図3】実施形態に従う制御システム1を構成するサポート装置40のハードウェア構成例を示すブロック図である。
【
図4】実施形態に従う制御システム1の関連技術において生じ得る課題を説明するための模式図である。
【
図5】実施形態に従う制御システム1の関連技術において生じ得る課題を説明するための別の模式図である。
【
図6】実施形態に従う制御システム1の関連技術において生じ得る課題を説明するためのさらに別の模式図である。
【
図7】実施形態に従う制御システム1の関連技術において生じ得る課題を説明するためのもう一つ別の模式図である。
【
図8】実施形態に従う制御システム1のレーザ出力ON/OFFを判定する方式を説明する模式図である。
【
図9】実施形態に従う制御システム1のレーザ出力ON/OFFを判定する方式を説明する具体例の一例を示す図である。
【
図10】実施形態に従う境界線L1およびL2の設定について説明する図である。
【
図11】実施形態に従う制御システム1の制御フローについて説明する図である。
【
図12】実施形態の変形例1に従うサポート装置40の設定画面について説明する図である。
【
図13】実施形態の変形例1に従う別の設定画面について説明する図である。
【
図14】実施形態の変形例2に従う設定画面について説明する図である。
【発明を実施するための形態】
【0018】
本開示の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
【0019】
<A.適用例>
まず、本開示が適用される場面の一例について説明する。
【0020】
図1は、実施形態に従う制御システム1の構成例を示す模式図である。
図1には、典型例として、レーザ加工システムの例を示すが、本開示を適用するアプリケーションは、何ら限定されるものではない。
【0021】
制御システム1は、XYステージ20上に配置されたワーク4に対して、穴あけ、切断、マーキングなどのレーザ加工を行う。より具体的には、制御システム1は、制御装置10と、XYステージ20と、レーザ30とを含む。
【0022】
ワーク4に対するレーザ加工は、XYステージ20によるワーク位置の調整をすることにより、レーザ30が発生するレーザ光による照射位置を調整する。なお、図示しないガルバノミラーと組み合わせることも可能である。
【0023】
制御装置10は、主制御ユニット100と、軸インターフェイスユニット200と、レーザ制御ユニット300とを含む。
【0024】
主制御ユニット100は、アプリケーションプログラム110(
図2参照)を実行する演算部に相当する。アプリケーションプログラム110は、制御対象の機構およびワーク4などに応じて任意に作成される。主制御ユニット100がアプリケーションプログラム110を実行して得られる実行結果は、軸インターフェイスユニット200およびレーザ制御ユニット300における制御信号の生成に用いられる。
【0025】
軸インターフェイスユニット200は、制御線52を介して、XYステージ20と接続されており、XYステージ20を駆動するためのステージ制御信号520を出力する。XYステージ20は、ワーク4が配置されるプレート22と、プレート22とを駆動するサーボモータ24およびサーボモータ26とを含む。
図1に示す例では、サーボモータ24がプレート22をX軸方向に変位させ、サーボモータ26がプレート22をY軸方向に変位させる。軸インターフェイスユニット200からのステージ制御信号520は、サーボモータ24およびサーボモータ26を駆動するサーボドライバ23およびサーボドライバ25(
図2参照)に与えられる。
【0026】
レーザ制御ユニット300は、一種の通信装置である。レーザ制御ユニット300は、制御線53を介して、レーザ30と接続されており、レーザ30に対して、オン/オフを指示するレーザ制御信号530を出力する。
【0027】
<B.制御システム1の主要なハードウェア構成例>
次に、実施形態に従う制御システム1のハードウェア構成例について説明する。
【0028】
図2は、実施形態に従う制御システム1の主要なハードウェア構成例を示す模式図である。上述したように、制御装置10は、主制御ユニット100と、軸インターフェイスユニット200と、レーザ制御ユニット300とを含む。
【0029】
主制御ユニット100は、主たるコンポーネントとして、プロセッサ102と、メインメモリ104と、ストレージ106と、バスコントローラ112とを含む。
【0030】
ストレージ106は、SSD(Solid State Disk)やフラッシュメモリなどで構成される。ストレージ106は、例えば、基本的なプログラム実行環境を提供するためのシステムプログラム108と、ワーク4に応じて任意に作成されるアプリケーションプログラム110とを格納する。ストレージ106は、後述する
図4(B)の加工プログラムを含む設定条件等を格納する。
【0031】
プロセッサ102は、典型的には、CPU(Central Processing Unit)やMPU(Micro-Processing Unit)などで構成される。プロセッサ102は、ストレージ106に格納されたシステムプログラム108およびアプリケーションプログラム110を読み出して、メインメモリ104に展開して実行することで、制御システム1の全体的な制御を実現する。
【0032】
主制御ユニット100は、内部バス114を介して、軸インターフェイスユニット200およびレーザ制御ユニット300と電気的に接続されている。バスコントローラ112は、内部バス114によるデータ通信を仲介する。
【0033】
なお、プロセッサ102がプログラムを実行することで必要な処理が提供される構成例を示したが、これらの提供される処理の一部または全部を、専用のハードウェア回路(例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。
【0034】
軸インターフェイスユニット200は、サーボドライバ23およびサーボドライバ25に与えられるステージ制御信号520を生成および出力する。より具体的には、軸インターフェイスユニット200は、軸制御演算部210と、出力インターフェイス回路220とを含む。
【0035】
軸制御演算部210は、主制御ユニット100がアプリケーションプログラム110を実行することで算出される演算値(指令値)に従って、サーボドライバ23およびサーボドライバ25に与えるべき指令を生成する。軸制御演算部210は、例えば、プロセッサ、ASIC、FPGAなどを用いて構成される演算回路によって実現される。
【0036】
出力インターフェイス回路220は、アプリケーションプログラム110の実行結果に従って、ステージ制御信号520を出力する信号出力部に相当する。より具体的には、出力インターフェイス回路220は、軸制御演算部210によって生成された指令に従って、サーボドライバ23およびサーボドライバ25に与えるステージ制御信号520を生成する。ステージ制御信号520としては、各制御周期における変位量、速度、角速度などの情報をPWM(Pulse Width Modulation)により変調した信号が用いられてもよい。すなわち、出力インターフェイス回路220は、送信すべき情報をPWMにより変調してステージ制御信号520を生成してもよい。あるいは、変位量、速度、角速度などの情報をパルス数として変調した信号が用いられてもよい。
【0037】
なお、軸制御演算部210および出力インターフェイス回路220を単一のASICで実現してもよい。
【0038】
レーザ制御ユニット300は、レーザ30に与えられるレーザ制御信号530に与えられるレーザ制御信号530を生成および出力する。より具体的には、レーザ制御ユニット300は、レーザ制御演算部310と、出力インターフェイス回路314とを含む。
【0039】
レーザ制御演算部310は、主制御ユニット100がアプリケーションプログラム110を実行することで算出される演算値(指令値)に従って、レーザ30に与えるべき指令を生成する。レーザ制御演算部310は、例えば、プロセッサ、ASIC、FPGAなどを用いて構成される演算回路によって実現される。
【0040】
出力インターフェイス回路314は、レーザ制御演算部310によって生成された指令に従って、レーザ30に与えるレーザ制御信号530を生成する。レーザ制御信号530としては、オン/オフの2レベルを有する信号が用いられてもよい。
【0041】
なお、レーザ制御演算部310、出力インターフェイス回路314を単一のASICで実現してもよい。
【0042】
<C.サポート装置40のハードウェア構成>
実施形態に従うサポート装置40は、一例として、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコン)を用いてプログラムを実行することで実現される。サポート装置40は、制御装置10と接続される。サポート装置40は、制御装置10に対してレーザ加工システムの各種設定を実行する。
【0043】
図3は、実施形態に従う制御システム1を構成するサポート装置40のハードウェア構成例を示すブロック図である。
図3を参照して、サポート装置40は、CPUやMPUなどのプロセッサ42と、主記憶装置43と、二次記憶装置47と、ローカルネットワークコントローラ46と、入力部44と、表示部45とを含む。これらのコンポーネントはバス41を介して接続される。
【0044】
プロセッサ42は、二次記憶装置47に格納された各種プログラムを読み出して、主記憶装置43に展開して実行することで、後述するような設定処理を含む各種処理を実現する。
【0045】
二次記憶装置47は、例えば、HDD(Hard Disk Drive)やSSD(Flash Solid State Drive)などで構成される。二次記憶装置47は、典型的には、サポート装置40において実行される設定プログラム48と、シミュレーションプログラム48#と、OS49とを格納する。二次記憶装置47は、
図3に示すプログラム以外の必要なプログラムを格納してもよい。
【0046】
サポート装置40で実行される各種プログラムは、コンピュータ読取可能な記録媒体を介してインストールされてもよいが、ネットワーク上の任意のサーバからダウンロードする形でインストールするようにしてもよい。また、実施形態に従うサポート装置40が提供する機能は、OSが提供するモジュールの一部を利用する形で実現される場合もある。
【0047】
ローカルネットワークコントローラ46は、任意のネットワークを介した別の装置との間のデータの遣り取りを制御する。
【0048】
入力部44は、キーボードやマウスなどで構成され、ユーザ操作を受け付ける。表示部45は、ディスプレイ、各種インジケータ、プリンタなどで構成され、プロセッサ42からの処理結果などを出力する。
【0049】
プロセッサ42がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
【0050】
<D.課題>
次に、実施形態に従う制御システム1の関連技術において生じ得る課題について説明する。
【0051】
図4は、実施形態に従う制御システム1の関連技術において生じ得る課題を説明するための模式図である。
図4(A)を参照して、ここでは、XYステージ20をXY座標で定義される座標系においてワーク位置を座標(0,0)から座標(100,100)まで移動させる場合が示されている。ワーク位置が座標(50,50)から座標(100,100)までの区間においてレーザ30によりレーザ加工する場合の例が示されている。
【0052】
図4(B)は、いわゆるGコードで記述された加工プログラム(アプリケーションプログラム)の一例である。Gコードで指令することで、XYステージ20の軸移動や座標設定、回転、対象加工物の加工方法などを細かく設定することが可能となる。
図4(C)は、当該加工プログラムで用いるレーザON/OFFテーブルの一例である。本例においては、座標(50,50)においてレーザ30をON(オン)し、座標(100,100)においてレーザ30をOFF(オフ)する場合が設定されている。
【0053】
図5は、実施形態に従う制御システム1の関連技術において生じ得る課題を説明するための別の模式図である。
図5を参照して、Gコードで与えられる連続時間の軌跡データは、制御装置10内で離散時間の軌跡データに変換される。そのため、制御装置10は、ある時刻t(=n)におけるワーク位置の座標と、次の時刻t(=n+1)におけるワーク位置の座標とを比較して、指定した座標(50,50)を跨いだかどうかで判定する。制御装置10は、指定した座標(50,50)を跨いだと判定した場合にレーザ30をON(オン)する。
【0054】
図6は、実施形態に従う制御システム1の関連技術において生じ得る課題を説明するためのさらに別の模式図である。
図6に示されるように、ワーク位置が移動する場合について考える。具体的には、ワーク位置が座標(50,50)で折り返す場合の軌跡が示されている。当該軌跡において、座標(50,50)においてレーザ30をON(オン)する場合である。Gコードで与えられる連続時間の軌跡データは、座標(50,50)を跨いでいる場合であっても離散時間の軌跡データは座標(50,50)を跨がない可能性がある。そのため、指定した座標(50,50)において、レーザ30をON(オン)できないという課題がある。
【0055】
図7は、実施形態に従う制御システム1の関連技術において生じ得る課題を説明するためのもう一つ別の模式図である。
図7に示されるように、ワーク位置が座標(50,50)で折り返す場合の軌跡が示されている。ここでは、
図6のようにワーク位置が直線で移動するのではなく、曲線補間される場合が示されている。当該軌跡において、座標(50,50)においてレーザ30をON(オン)するように指定した場合である。離散時間の軌跡データは、座標(50,50)を跨がないため、指定した座標(50,50)において、レーザ30をON(オン)できないという課題がある。
【0056】
<E.解決手段>
次に、上述したような課題を解決するための解決手段の典型例について説明する。
【0057】
実施形態においては、条件成立の判定方式として特定の位置に到達したか否かを簡易な方式で判定する。
【0058】
図8は、実施形態に従う制御システム1のレーザ出力ON/OFFを判定する方式を説明する模式図である。
図8に示されるように、ワーク位置が点線のように移動する場合が示されている。本例においては、指定された位置Pに関連付けて領域上の境界線Lを設定する。境界線Lは、軌跡データを分割する直線である。境界線Lは、領域上の点(位置P)および当該点(位置P)を通る直線の角度に基づいて規定される。
【0059】
制御システム1は、ワーク位置が移動して境界線Lを跨ぐか否かを判定する。制御システム1は、ワーク位置が境界線Lを跨いだと判定した場合には、ワーク位置が指定された位置Pに到達したと判断する。これにより、位置Pに対応して予め設定された動作(レーザ出力をON(オン))を実行する。
【0060】
図9は、実施形態に従う制御システム1のレーザ出力ON/OFFを判定する方式を説明する具体例の一例を示す図である。
図9に示されるように、位置Pの座標(50,50)に対して境界線L(y=x)を設定した場合が示されている。制御システム1は、ワーク位置が移動して境界線L(y=x)を跨ぐか否かを判定する。制御システム1は、ワーク位置が境界線L(y=x)を跨いだと判定した場合には、ワーク位置が指定された位置Pに到達したと判断する。これにより、制御システム1は、位置Pに対応して予め設定された動作(レーザ出力をON(オン))を実行する。
【0061】
図10は、実施形態に従う境界線L1およびL2の設定について説明する図である。
図10(A)に示されるように、境界線L1は、XY座標系において次式で表される。
【0062】
y=a(x-xL)+yL
具体的には、境界線L1は、傾きaと、指定点座標(xL,yL)とで設定される。ユーザは、傾きaと、指定点座標(xL,yL)を入力することにより境界線L1を設定することが可能である。
【0063】
本例においては、境界線L1を跨いだか否かは、上式を用いたワーク位置に対する判定関数f(x,y)を用いて判定することが可能である。
【0064】
f(x,y)=a(x-xL)+yL-y
実施形態において、一例として判定関数f(x,y)の値の符号が反転するか否かで境界線を跨いだか否かを判定することが可能である。判定関数f(x,y)は、境界線L1を基準として値の符号が反転することを利用している。
【0065】
なお、aが∞である場合には、f(x,y)=x-x
Lにより判定する。
図10(B)は、レーザON/OFFテーブルの一例である。
図10(B)には、境界線に関連付けられたレーザ出力のON(オン)、OFF(オフ)が設定されている。レーザON/OFFテーブルは、ストレージ106内に格納されている。
【0066】
具体的には、境界線Lを設定するための座標および傾き角度と、レーザ出力のON(オン)、OFF(オフ)が対応付けて設定される。
【0067】
具体的には、境界線L1(座標(0,0)、傾き角度45°)に関連付けられてレーザ出力ONが設定されている。
【0068】
境界線L2(座標(0,-100)、傾き角度0°)に関連付けられてレーザ出力OFFが設定されている。
【0069】
制御システム1は、ワーク位置が移動して境界線L1を跨ぐか否かを判定する。制御システム1は、ワーク位置が境界線L1を跨いだと判定した場合には、ワーク位置が指定された座標(0,0)に到達したと判断する。これにより、制御システム1は、位置(0,0)に対応して予め設定された動作(レーザ出力をON(オン))を実行する。
【0070】
次に、制御システム1は、ワーク位置が移動して境界線L2を跨ぐか否かを判定する。制御システム1は、ワーク位置が境界線L2を跨いだと判定した場合には、ワーク位置が指定された座標(0,-100)に到達したと判断する。これにより、制御システム1は、位置(0,-100)に対応して予め設定された動作(レーザ出力をOFF(オフ))を実行する。
【0071】
なお、本例においては、境界線Lを設定するためのパラメータとして、傾き角度を設定する場合について説明したが、傾き角度に限られず、傾きaの値を設定するようにしても良いし、境界線Lを設定することが可能であれば他の如何なる値を用いても良い。
【0072】
図11は、実施形態に従う制御システム1の制御フローについて説明する図である。
図11を参照して、一例として当該制御フローは、主制御ユニット100におけるレーザ30を制御する処理である。具体的には、プロセッサ102がアプリケーションプログラム110を実行することに基づいて軸インターフェイスユニット200によるXYステージ20の制御とともに、レーザ制御ユニット300によるレーザ30を制御する処理である。プロセッサ102は、上記したようにいわゆるGコードで記述された加工プログラム(アプリケーションプログラム)に基づいて軸インターフェイスユニット200に対して演算値(指令値)を出力する。軸インターフェイスユニット200は、主制御ユニット100からの演算値(指令値)に従ってXYステージ20を制御することにより予め設定された移動軌跡に従ってワーク位置を移動させる。
【0073】
主制御ユニット100は、演算したワーク位置と、レーザON/OFFテーブルとに基づいてレーザ制御ユニット300に対してレーザ30を制御するための演算値(指令値)を出力する。
【0074】
具体的には、主制御ユニット100は、判定関数を設定する(ステップS2)。主制御ユニット100は、ストレージ106に格納されているレーザON/OFFテーブルに基づいて判定関数を設定する。初期状態として、主制御ユニット100は、レーザON/OFFテーブルの最初の先頭リストを用いて判定関数を設定する。例えば、
図10(B)で説明した境界線L1(座標(0,0)、傾き角度45°)に従う判定関数f(x,y)を設定する。
【0075】
次に、主制御ユニット100は、時刻(t=n←n+1)の経過を検出する(ステップS4)。時刻の経過は、制御周期に対応し、制御周期毎に当該処理を実行する。
【0076】
次に、主制御ユニット100は、ワーク位置である指令位置(X[n],Y[n])を計算する(ステップS6)。上記したように、Gコードで記述された加工プログラム(アプリケーションプログラム)に基づいてワーク位置が設定される。
【0077】
次に、主制御ユニット100は、指令位置(X[n],Y[n])に基づいて判定関数値を算出する(ステップS7)。具体的には、判定関数f(x,y)に指令位置(X[n],Y[n])を入力することにより判定関数値を算出する。
【0078】
次に、主制御ユニット100は、算出した判定関数値と、前回の判定関数値の符号prevとの積を計算して、当該計算結果が負であるか否かを判断する(ステップS8)。すなわち、判定関数値の符号が反転したか否かを判断する。
【0079】
ステップS8において、主制御ユニット100は、算出した判定関数値と、前回の判定関数の値の符号prevとの積を計算して、当該計算結果が負であると判断した場合(ステップS8においてYES)には、対象となるリストの出力を実行する。すなわち、判定関数の値の符号が反転した場合であり、境界線Lを跨いだ場合に相当する。
【0080】
次に、主制御ユニット100は、次の判定関数を設定する(ステップS10)。具体的には、主制御ユニット100は、レーザON/OFFテーブルに基づいて判定関数を設定する。主制御ユニット100は、レーザON/OFFテーブルの次のリストを用いて判定関数を設定する。例えば、主制御ユニット100は、
図10(B)で説明した境界線L2(座標(0,-100)、傾き角度0°)に従う判定関数f(x,y)を設定する。
【0081】
次に、主制御ユニット100は、算出した判定関数値の符号prevを保持する(ステップS12)。
【0082】
次に、主制御ユニット100は、プログラムが完了したか否かを判断する(ステップS14)。
【0083】
主制御ユニット100は、プログラムが完了したと判断した場合(ステップS14においてYES)には、処理を終了する(エンド)。
【0084】
一方、主制御ユニット100は、プログラムが完了しないと判断した場合(ステップS14においてNO)には、ステップS4に戻り、上記処理を繰り返す。
【0085】
一方、ステップS8において、主制御ユニット100は、算出した判定関数値と、前回の判定関数の値の符号prevとの積を計算して、当該計算結果が負でないと判断した場合(ステップS8においてNO)には、ステップS9およびステップS10をスキップして、ステップS12に進む。すなわち、判定関数の値の符号が反転しない場合であり、境界線Lを跨いでいない場合に相当する。そして、主制御ユニット100は、ステップS12において、算出した判定関数値の符号prevを保持する(ステップS12)。なお、初期状態においては、符号prevは設定されていない。したがって、主制御ユニット100は、ステップS12に進み、符号prevを設定する。
【0086】
したがって、制御システム1は、
図10(B)のレーザON/OFFテーブルを用いた場合には、境界線L1に従う判定関数を設定する。そして、制御システム1は、ワーク位置が移動して境界線L1を跨ぐか否かを判定する。制御システム1は、ワーク位置が境界線L1を跨いだと判定した場合には、ワーク位置が指定された座標(0,0)に到達したと判断する。これにより、制御システム1は、位置(0,0)に対応して予め設定された動作(レーザ出力をON(オン))を実行する。
【0087】
次に、制御システム1は、
図10(B)のレーザON/OFFテーブルを用いた場合には、境界線L2に従う判定関数を設定する。制御システム1は、ワーク位置が移動して境界線L2を跨ぐか否かを判定する。制御システム1は、ワーク位置が境界線L2を跨いだと判定した場合には、ワーク位置が指定された座標(0,-100)に到達したと判断する。これにより、制御システム1は、位置(0,-100)に対応して予め設定された動作(レーザ出力をOFF(オフ))を実行する。
【0088】
これにより、制御システム1は、領域上の境界線を設定することにより条件成立の判定方式として特定の位置に到達したか否かを簡易な方式で判定することが可能である。
【0089】
なお、
図11における制御フローは、主制御ユニット100において主に実行される場合について説明したが、主制御ユニット100およびサポート装置40を用いて実行するようにしてもよい。また、サポート装置40は、シミュレーションプログラム48#を有しており、当該シミュレーションプログラム48#を実行することによりサポート装置40において仮想的に実行することも可能である。
【0090】
<F.その他の実施の形態>
(変形例1)
実施形態の変形例1においては、簡易に境界線を設定する操作方式について説明する。
【0091】
上記の実施形態におけるレーザON/OFFテーブルは、ユーザが座標および傾き角度およびレーザ出力のON/OFFを入力することにより作成される。
【0092】
具体的には、サポート装置40を用いて、サポート装置40の表示部45で表示される設定画面に入力することによりレーザON/OFFテーブルを作成しても良い。当該設定画面は、プロセッサ42が設定プログラム48を実行することにより実現される。
【0093】
作成されたレーザON/OFFテーブルは、サポート装置40のローカルネットワークコントローラ46を介して主制御ユニット100のストレージ106に格納することが可能である。また、サポート装置40は、設定プログラム48を実行することにより主制御ユニット100のストレージ106に格納されているアプリケーションプログラム110を設定したり、更新したりすることが可能である。
【0094】
図12は、実施形態の変形例1に従うサポート装置40の設定画面について説明する図である。
図12を参照して、サポート装置40の境界線を設定する設定画面400が示されている。設定画面400には、シミュレーションプログラム48#の実行結果に従って移動するワーク位置の軌跡Zが表示されている。軌跡Zは、ワーク位置の移動をシミュレーションにより算出して得られた軌跡である。
【0095】
設定画面400は、ユーザからの入力を受付可能に設けられており、本例においては、入力部44のマウス等を用いて設定が可能に設けられている。
【0096】
具体的には、ユーザは、レーザON/OFFテーブルを作成するにあたり、指定点を任意の位置に設定する。ユーザは、レーザをオンあるいはオフしたい点を指定する。一例として、設定画面400において、ユーザが入力部44のマウス等により画面で表示される軌跡Z上の点Rをクリック操作により指定した場合が示されている。
【0097】
設定画面400は、指定点の入力に基づいて仮想境界線を算出して、表示する。
図13は、実施形態の変形例1に従う別の設定画面について説明する図である。
図13を参照して、境界線を設定する設定画面402が示されている。
【0098】
サポート装置40は、設定画面400に対する指定点のユーザの入力を受け付けた場合に、指定点の入力に基づいて仮想境界線を算出して、表示部45に表示する。
【0099】
具体的には、サポート装置40は、設定画面400に対する指定位置の入力に従って、軌跡Zに対して垂線かつ、指定位置を通過する直線を仮想境界線として生成する。本例においては、サポート装置40は、軌跡Z上の指定点Rの入力を受け付けた場合に、軌跡Zに対して垂線かつ、指定点Rを通過する直線を仮想境界線L3として生成した場合が示されている。
【0100】
また、本例においては、仮想境界線L3に対して操作が可能に設けられている。一例として、設定画面402において、ユーザが入力部44のマウス等により画面で表示される仮想境界線L3に対してドラッグ&ドロップ操作により仮想境界線の傾きを調整した仮想境界線L3#が示されている。
【0101】
そして、設定した仮想境界線に対して所定の入力操作を実行することにより、レーザ出力のONあるいはOFFを設定することが可能である。
【0102】
これにより、設定した仮想境界線と、レーザ出力の設定にしたがってレーザON/OFFテーブルを作成することが可能である。
【0103】
実施形態の変形例1に従う設定画面により、ユーザは、設定画面を介して簡易に境界線を設定することが可能である。これにより、簡易にレーザON/OFFテーブルを作成することが可能である。また、本例においては、指定点の入力に基づいて仮想境界線を生成して、ユーザが当該仮想境界線を調整可能な場合について説明したが、指定点の入力に基づいて1つの境界線を設定するようにしても良い。この場合には、傾きの入力は不要であり、ワンアクションで境界線の設定が可能となる。
【0104】
(変形例2)
実施形態の変形例2においては、レーザ簡易に境界線を設定する別の操作方式について説明する。
【0105】
図14は、実施形態の変形例2に従う設定画面について説明する図である。
図14(A)を参照して、境界線を設定する設定画面404が示されている。
【0106】
サポート装置40は、設定画面404に対する指定点のユーザの入力を受け付けた場合に、指定点の入力に基づいて境界線を算出して、表示部45に表示する。
【0107】
本例においては、ワーク位置の軌跡として円を描くように移動してまた元の位置に戻って移動する場合が示されている。そして、例えば、円弧の一部においてレーザをオンし、オフする場合について説明する。具体的には、円弧の一部の位置Q2において、レーザをオンし、位置Q3においてレーザをオフする。
【0108】
この場合、上記したように、ユーザは、位置Q2を指定点として入力操作を行うことにより、軌跡に対して垂線かつ、位置Q2を通過する直線を境界線L4として設定することが可能である。そして、当該位置Q2におけるレーザ出力をONに設定する。
【0109】
また、ユーザは、位置Q3を指定点として入力操作を行うことにより、軌跡に対して垂線かつ、位置Q3を通過する直線を境界線L5として設定することが可能である。そして、当該位置Q3におけるレーザ出力をOFFに設定する。
【0110】
一方で、最初に境界線L4に従う判定関数が設定された場合には、ワーク位置が位置Q1に到達した場合に、境界線L4を跨ぐことになる。したがって、境界線L4を跨いだことにより、レーザ出力がONとなる恐れがある。
【0111】
したがって、実施形態の変形例2においては、レーザ出力の状態としてONあるいはOFF以外にHOLDの状態を設定可能にする。
【0112】
レーザ出力の状態として、レーザ出力OFF(第1状態)からレーザ出力ON(第2状態)に変化する動作、レーザ出力ON(第2状態)からレーザ出力OFF(第1状態)に変化する動作、レーザ出力OFF(第1状態)およびON(第2状態)を維持する動作の設定が可能である。
【0113】
図14(B)は、実施形態の変形例2に従うレーザON/OFFテーブルについて説明する図である。
図14(B)に示されるように、境界線に関連付けられたレーザ出力のON(オン)、OFF(オフ)とともにHOLD(維持)が設定されている。
【0114】
具体的には、境界線Lを設定するための座標および傾き角度と、レーザ出力のON(オン)、OFF(オフ)、HOLD(維持)が対応付けて設定される。
【0115】
一例として、境界線L4(位置Q1、傾き角度45°)に関連付けられてレーザ出力HOLDが設定されている。
【0116】
次に、境界線L4(位置Q2、傾き角度45°)に関連付けられてレーザ出力ONが設定されている。
【0117】
次に、境界線L5(位置Q3、傾き角度90°)に関連付けられてレーザ出力OFFが設定されている。
【0118】
制御システム1は、レーザON/OFFテーブルの最初のリストに従ってワーク位置が移動して境界線L4を跨ぐか否かを判定する。制御システム1は、ワーク位置が境界線L4を跨いだと判定した場合には、ワーク位置が指定された座標である位置Q1に到達したと判断する。これにより、位置Q1に対応して予め設定された動作(レーザ出力をHOLD(維持))を実行する。
【0119】
制御システム1は、レーザON/OFFテーブルの次のリストに従ってワーク位置が移動して境界線L4を跨ぐか否かを判定する。制御システム1は、ワーク位置が境界線L4を跨いだと判定した場合には、ワーク位置が指定された座標である位置Q2に到達したと判断する。これにより、制御システム1は、位置Q2に対応して予め設定された動作(レーザ出力をON(オン))を実行する。
【0120】
制御システム1は、レーザON/OFFテーブルのさらに次のリストに従ってワーク位置が移動して境界線L5を跨ぐか否かを判定する。制御システム1は、ワーク位置が境界線L5を跨いだと判定した場合には、ワーク位置が指定された座標である位置Q3に到達したと判断する。これにより、位置Q3に対応して予め設定された動作(レーザ出力をOFF(オフ))を実行する。
【0121】
これにより、制御システム1は、不適切な位置での誤動作を回避することが可能であり、レーザ出力の設定を簡易に行うことが可能となる。
【0122】
すなわち、レーザ出力の状態の設定として、レーザ出力ON、レーザ出力OFF以外にレーザ出力HOLDを設けることにより、設定の自由度が向上し、効率的な設定が可能となる。
【0123】
<G.利点>
実施形態に従う制御システムによれば、簡易な方式で、特定の位置に到達したか否かを判定することが可能である。
【0124】
<H.付記>
上述したような実施形態は、以下のような技術思想を含む。
【0125】
[構成1]
予め設定された移動軌跡に従って移動対象物の移動を制御する移動制御部(200)と、
指定位置に関連付けて予め規定された領域上の境界線を保持する記憶部(106)と、
前記移動対象物が前記指定位置に到達したか否かを判断する移動判定部(102)とを備え、
前記移動判定部は、
前記移動対象物が前記境界線を跨いだか否かを判定し、
前記移動対象物が前記境界線を跨いだと判定した場合には、前記指定位置に到達したと判断する、制御システム。
【0126】
[構成2]
ユーザ設定に従って前記境界線を生成する設定受付部(40)をさらに備える、請求項1記載の制御システム。
【0127】
[構成3]
前記境界線は、領域上の点および当該点を通る直線の角度に基づいて規定される、請求項1または2記載の制御システム。
【0128】
[構成4]
前記設定受付部は、前記移動軌跡に対して前記境界線を生成するための設定画面(400,402,404)を有し、
前記設定画面は、前記指定位置の入力の受付が可能であり、かつ、前記指定位置を通過する前記移動軌跡を分割する仮想境界線が操作可能に表示され、
前記設定受付部は、前記設定画面における前記仮想境界線に対する操作入力を受け付けて前記境界線を生成する、請求項2記載の制御システム。
【0129】
[構成5]
前記設定受付部は、前記指定位置の入力に従って、前記移動軌跡に対して垂線かつ、前記指定位置を通過する直線を境界線として生成する、請求項2記載の制御システム。
【0130】
[構成6]
前記移動判定部は、
前記境界線に従う前記移動対象物の位置に対する判定関数を算出し、
前記移動対象物の位置に従う前記判定関数の値の符号が反転するか否かに基づいて前記境界線を跨いだか否かを判定する、請求項1記載の制御システム。
【0131】
[構成7]
前記移動判定部の判断結果に基づいて、所定の動作を実行する実行部(300)をさらに備える、請求項1記載の制御システム。
【0132】
[構成8]
前記所定の動作は、第1状態から第2状態に変化する動作、前記第2状態から前記第1状態に変化する動作、あるいは前記第1および前記第2状態を維持する動作のいずれか1つである、請求項7記載の制御システム。
【0133】
[構成9]
予め設定された移動軌跡に従って移動対象物の移動を制御するステップと、
前記移動対象物が指定位置に到達したか否かを判断するステップ(S8)とを備え、
前記判断するステップは、
前記移動対象物が前記指定位置に関連付けて予め規定された領域上の境界線を跨いだか否かを判定し(S8)、
前記移動対象物が前記境界線を跨いだと判定した場合には、前記指定位置に到達したと判断する(S9)、制御方法。
【0134】
[構成10]
予め設定された移動軌跡に従って移動対象物の移動を制御する移動制御部(200)と、
指定位置に関連付けて予め規定された領域上の境界線を保持する記憶部(106)と、
前記移動対象物が前記指定位置に到達したか否かを判断する移動判定部(102)とを備え、
前記移動判定部は、
前記移動対象物が前記境界線を跨いだか否かを判定し、
前記移動対象物が前記境界線を跨いだと判定した場合には、前記指定位置に到達したと判断する、制御装置。
【0135】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本開示の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0136】
1 制御システム、10 制御装置、20 XYステージ、22 プレート、23,25 サーボドライバ、24,26 サーボモータ、30 レーザ、40 サポート装置、41 バス、42,102 プロセッサ、43 主記憶装置、44 入力部、45 表示部、46 ローカルネットワークコントローラ、47 二次記憶装置、48 設定プログラム、52,53 制御線、100 主制御ユニット、104 メインメモリ、106 ストレージ、108 システムプログラム、110 アプリケーションプログラム、112 バスコントローラ、114 内部バス、200 軸インターフェイスユニット、210 軸制御演算部、220,314 出力インターフェイス回路、300 レーザ制御ユニット、310 レーザ制御演算部。