JP6485950B2 - 数値制御システム - Google Patents

数値制御システム Download PDF

Info

Publication number
JP6485950B2
JP6485950B2 JP2015036637A JP2015036637A JP6485950B2 JP 6485950 B2 JP6485950 B2 JP 6485950B2 JP 2015036637 A JP2015036637 A JP 2015036637A JP 2015036637 A JP2015036637 A JP 2015036637A JP 6485950 B2 JP6485950 B2 JP 6485950B2
Authority
JP
Japan
Prior art keywords
line
machining program
line number
unit
search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015036637A
Other languages
English (en)
Other versions
JP2016157393A (ja
Inventor
陽司 津久井
陽司 津久井
智和 中村
智和 中村
宗生 脇坂
宗生 脇坂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DMG Mori Co Ltd
Original Assignee
DMG Mori Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by DMG Mori Co Ltd filed Critical DMG Mori Co Ltd
Priority to JP2015036637A priority Critical patent/JP6485950B2/ja
Publication of JP2016157393A publication Critical patent/JP2016157393A/ja
Application granted granted Critical
Publication of JP6485950B2 publication Critical patent/JP6485950B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Numerical Control (AREA)

Description

本発明は、工作機械を制御する数値制御装置と、この数値制御装置へ加工プログラムを提供する外部処理装置とを備えた数値制御システムに関するものである。
従来、数値制御装置で用いられる加工プログラムは、パーソナルコンピュータ等の外部処理装置から提供されている。例えば、特開平8−249040号公報には、CNC(数値制御装置)からの送信要求に応じて、必要なNCプログラムを管理装置が送信するNCプログラム送信方式が提案されている(特許文献1)。
特開平8−249040号公報
上記特許文献1において、NCプログラムの一部を途中から実行するような場合、CNCは管理装置に対して、実行を開始するシーケンス番号(行番号)で要求するようになっている(段落[0033])。しかしながら、シーケンス番号は、ユーザがNCプログラム内の位置を把握するのに便利ではあるが、管理装置では、当該シーケンス番号からNCプログラム内の位置を直接把握することができない。
このため、管理装置は、CNCの要求を受けてからNCプログラムをオープンし、シーケンス番号に対応するファイルオフセット(加工プログラムの先頭からのバイト数)をサーチしなければならず、時間がかかるという問題がある。特に、近年、NCプログラムは、加工処理の複雑化に伴いファイルサイズが飛躍的に増大しており、当該ファイルサイズが大きいほど上記サーチに要する時間がかかってしまうという問題がある。
本発明は、このような問題点を解決するためになされたものであって、大きなファイルサイズの加工プログラムを途中から実行する際のサーチ時間が顕著になるのを抑制して、迅速に加工プログラムの実行を開始することができる数値制御システムを提供することを目的としている。
本発明に係る数値制御システムは、加工プログラムによって工作機械を制御しワークの加工を行う数値制御装置と、この数値制御装置へ前記加工プログラムを提供する外部処理装置とを備えた数値制御システムであって、前記外部処理装置は、前記加工プログラムの実行を開始する行番号である実行開始行番号とともに、前記実行開始行番号に対応するファイルオフセットを前記数値制御装置へ送信する開始データ送信部と、前記ファイルオフセットに基づいて前記加工プログラムのファイルをオープンする加工プログラム読出部とを有している。
また、本発明の一態様として、前記外部処理装置は、前記加工プログラム読出部が前記加工プログラムのファイルをオープンすると同時に、前記加工プログラムの全行数のカウントを開始し、最終行番号または最終行に対応するファイルオフセットを前記数値制御装置へ送信する最終行番号送信部を有していてもよい。
さらに、本発明の一態様として、前記数値制御装置は、指定された行番号にジャンプする無条件分岐命令(GOTO文)を含む前記加工プログラムに対して、前記行番号を上方向または下方向にサーチする行サーチ部を有しており、
前記行サーチ部は、前記加工プログラムを上方向にサーチして現在行が先頭行に到達した場合、前記最終行番号送信部から取得した前記最終行番号または最終行に対応するファイルオフセットに基づいて前記加工プログラムの最終行へジャンプしてサーチを続行してもよい。
また、本発明の一態様として、前記行サーチ部は、前記最終行番号に基づいて前記最終行へジャンプする場合、前記最終行番号を現在行としてセットし、前記現在行をデクリメントすることで上方向へサーチを続行してもよい。
さらに、本発明の一態様として、前記数値制御装置は、指定された行番号にジャンプする無条件分岐命令(GOTO文)を含む前記加工プログラムに対して、前記行番号を上方向または下方向にサーチする行サーチ部を有しており、前記行サーチ部は、前記加工プログラムを上方向にサーチして現在行が先頭行に到達した場合、現在実行中の実行行へジャンプした後、下方向にサーチを続行し、前記加工プログラムを下方向にサーチして現在行が最終行に到達した場合、現在実行中の実行行へジャンプした後、上方向にサーチを続行してもよい。
本発明によれば、大きなファイルサイズの加工プログラムを途中から実行する際のサーチ時間が顕著になるのを抑制して、迅速に加工プログラムの実行を開始することができる。
本発明に係る数値制御システムの第1実施形態を示すブロック図である。 表示手段に表示された加工プログラムの一例を示す図である。 本第1実施形態において、数値制御システムの動作を示すフローチャートである。 本第1実施形態の数値制御装置における上方向の行サーチ処理を示すフローチャートである。 本第1実施形態の数値制御装置における下方向の行サーチ処理を示すフローチャートである。 本発明に係る数値制御システムの第2実施形態を示すブロック図である。 本第2実施形態の数値制御装置における上方向の行サーチ処理を示すフローチャートである。 本第2実施形態の数値制御装置における下方向の行サーチ処理を示すフローチャートである。
以下、本発明に係る数値制御システムの第1実施形態について図面を用いて説明する。本第1実施形態の数値制御システム1Aは、図1に示すように、加工プログラム3cによって工作機械10を制御しワークの加工を行う数値制御装置2と、この数値制御装置2へ加工プログラム3cを提供する外部処理装置3とを備えている。以下、各構成について詳細に説明する。
工作機械10は、旋盤、ボール盤、中ぐり盤、フライス盤、歯切り盤、研削盤等のように、金属、木材、石材、樹脂等のワークに対して、切断、穿孔、研削、研磨、圧延、鍛造、折り曲げ等の加工を施すための機械である。本第1実施形態において、工作機械10は、数値制御装置2から供給される命令信号を増幅するサーボアンプや、このサーボアンプから出力される駆動信号に基づいて工具やテーブルを駆動するサーボモータ等から構成されるサーボ機構(図示せず)を有している。
外部処理装置3は、一般的なオペレーティングシステムが搭載されたパーソナルコンピュータ等のコンピュータによって構成されている。本第1実施形態において、外部処理装置3は、図1に示すように、各種のデータを記憶するとともに、外部側制御手段7が演算処理を行う際のワーキングエリアとして機能する外部側記憶手段6と、各種の演算処理を実行する外部側制御手段7とを有している。
外部側記憶手段6は、ハードディスク、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ、メモリカード等で構成されており、図1に示すように、プログラム記憶部61を有している。
プログラム記憶部61には、図1に示すように、外部処理装置3にユーザインタフェース機能を持たせるためのUI用プログラム3aと、外部処理装置3に加工プログラム3c提供機能を持たせるための提供用プログラム3bとがインストールされている。そして、外部側制御手段7が、各プログラム3a,3bを実行することにより、コンピュータを後述する各構成部としてとして機能させるようになっている。また、プログラム記憶部61には、別途、数値制御装置2へ提供するための加工プログラム3cが記憶されている。
外部側制御手段7は、CPU(Central Processing Unit)等によって構成されており、外部側記憶手段6にインストールされたUI用プログラム3aを実行することにより、図1に示すように、ユーザインタフェース機能を司る、ユーザインタフェース部71と、開始データ送信部72として機能する。また、外部側制御手段7は、提供用プログラム3bを実行することにより、加工プログラム3c提供機能を司る、加工プログラム読出部73と、最終行番号送信部74として機能するようになっている。
ユーザインタフェース部71は、外部処理装置3とユーザとの間で情報をやりとりさせるためのものである。本第1実施形態において、ユーザインタフェース部71は、プログラム記憶部61内の加工プログラム3cをオープンし、図2に示すように、行番号ごとにタッチパネル等の表示手段(図示せず)に表示させる。この表示処理を実行した時点で、ユーザインタフェース部71は、加工プログラム3cを一度オープンしているため、各行番号に対応するファイルオフセット(加工プログラム3cの先頭からのバイト数)を保有することとなる。
また、本第1実施形態において、ユーザインタフェース部71は、タッチパネルやキーボード等の入力手段(図示せず)を介して、ユーザからの指示や命令を取得する。具体的には、ユーザが加工プログラム3cの実行を途中から開始したい場合、ユーザインタフェース部71は、ユーザによって指定された実行開始行番号を取得する。なお、本発明において、実行開始行番号とは、加工プログラム3cの実行を開始する行番号をいうものとする。また、ユーザインタフェース部71が取得する情報は、実行開始行番号に限定されるものではなく、ユーザが加工プログラム3cを編集等する際には、当該編集に係る各種の命令を取得する。
さらに、本第1実施形態において、ユーザインタフェース部71は、表示手段に表示させた加工プログラム3cにおいて、現在実行中の行番号にカーソル等を表示し、ユーザに視認させるようになっている。そして、数値制御装置2側で処理が実行されている間、後述する加工プログラム解析部51から現在実行中の行番号を取得し、当該行番号にカーソルを移動させるとともに、加工プログラム3cの表示を更新するようになっている。
開始データ送信部72は、加工プログラム3cを途中から開始するための開始データを数値制御装置2へ送信するものである。本第1実施形態において、開始データ送信部72は、ユーザインタフェース部71が取得した実行開始行番号ととともに、当該実行開始行番号に対応するファイルオフセットを開始データとして、後述する加工プログラム解析部51へ送信する。なお、当該ファイルオフセットは、上述したとおり、ユーザインタフェース部71によって既知になっているものである。
加工プログラム読出部73は、数値制御装置2からの要求に応じて加工プログラム3cを読み出し、数値制御装置2へ提供するものである。本第1実施形態において、加工プログラム読出部73は、後述する加工プログラム取得部53からの要求としてファイルオフセットを取得すると、当該ファイルオフセットに基づいて加工プログラム3cのファイルを直接オープンする。このため、加工プログラム読出部73は、加工プログラム3cをサーチする必要がなく、直ちにユーザが行番号で指定した位置から加工プログラム3cを加工プログラム取得部53へ提供する。
なお、加工プログラム読出部73がファイルオフセットを取得する取得先としては、数値制御装置2に限定されるものではなく、ユーザインタフェース部71から直接取得してもよい。ただし、本第1実施形態では、図1に示すように、ユーザインタフェース部71と、加工プログラム読出部73とが互いに異なるプログラム3a,3bによって機能されている。このため、加工プログラム読出部73が、ファイルオフセットをユーザインタフェース部71から直接取得しうるように外部処理装置3を最適化する必要がある。
最終行番号送信部74は、後述する行サーチ処理を高速化するため、加工プログラム3cの最終行の番号である最終行番号を数値制御装置2へ送信するものである。本第1実施形態において、最終行番号送信部74は、加工プログラム読出部73が加工プログラム3cのファイルをオープンすると同時に、加工プログラム3cの全行数のカウントを開始する。そして、当該カウントが終了次第、直ちに最終行番号を数値制御装置2へ送信するようになっている。
なお、本第1実施形態では、最終行番号送信部74が、カウントした最終行番号をそのまま数値制御装置2へ送信しているが、この構成に限定されるものではなく、最終行に対応するファイルオフセットをサーチした後、当該ファイルオフセットを数値制御装置2へ送信するようにしてもよい。また、最終行番号送信部74は、加工プログラム3c内の改行の数によって、行数をカウントするようになっている。
一方、数値制御装置2は、加工プログラム3cに基づいて工作機械10を制御しワークの加工を行うものであり、図1に示すように、各種のデータを記憶するとともに、NC側制御手段5が演算処理を行う際のワーキングエリアとして機能するNC側記憶手段4と、各種の演算処理を実行するNC側制御手段5とを有している。なお、本発明に係る数値制御装置2は、いわゆるコンピュータ数値制御(CNC:Computerized Numerical Control)等の数値制御処理を実行可能な全ての装置を含む概念である。
NC側記憶手段4は、ハードディスク、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ、メモリカード等で構成されており、図1に示すように、プログラム記憶部41と、最終行番号記憶部42とを有している。
プログラム記憶部41には、リアルタイムオペレーティングシステム(RTOS)が搭載されているとともに、本第1実施形態の数値制御装置2を制御するための数値制御装置用プログラム2aがインストールされている。そして、NC側制御手段5が、当該数値制御装置用プログラム2aを実行することにより、コンピュータを後述する各構成部としてとして機能させるようになっている。
最終行番号記憶部42は、数値制御装置2が行サーチ処理を実行する際に備えて、最終行番号を記憶するものである。行サーチ処理は、後述する行サーチ部54によって実行されるものであり、加工プログラム3cに無条件分岐命令(GOTO文)が含まれていた場合、当該無条件分岐命令によって指定された行番号を行サーチしてジャンプする処理である。本第1実施形態において、最終行番号記憶部42は、最終行番号送信部74から送信された最終行番号、または当該最終行番号に対応するファイルオフセットを記憶する。
NC側制御手段5は、CPU(Central Processing Unit)等によって構成されており、NC側記憶手段4にインストールされた数値制御装置用プログラム2aを実行することにより、図1に示すように、加工プログラム解析部51と、命令信号補間部52と、加工プログラム取得部53と、行サーチ部54として機能するようになっている。以下、各構成部についてより詳細に説明する。
加工プログラム解析部51は、加工プログラム3cを解析するためのものである。本第1実施形態において、加工プログラム解析部51は、開始データ送信部72から開始データを受信すると、当該開始データに含まれるファイルオフセットを加工プログラム取得部53へ渡し、外部処理装置3へ要求させる。また、加工プログラム解析部51は、加工プログラム取得部53によって取得された加工プログラム3cを解析し、その解析結果としてのブロックをブロックバッファ(図示せず)へ順次格納するようになっている。さらに、本第1実施形態において、加工プログラム解析部51は、現在実行中の行番号を逐一ユーザインタフェース部71へと送信して表示させ、ユーザに視認させるようになっている。
命令信号補間部52は、工作機械10を動作させるサーボ機構(図示せず)への命令信号を補間するものである。本第1実施形態において、命令信号補間部52は、ブロックバッファからブロックを順次1つずつ取得するとともに、切削指令や位置決め指令等の命令信号を補間してサーボ機構へ出力するようになっている。
加工プログラム取得部53は、加工プログラム解析部51からの要求に応じて、加工プログラム3cを外部処理装置3へ要求し取得するものである。本第1実施形態において、加工プログラム取得部53は、開始データを受信した加工プログラム解析部51からファイルオフセットを取得すると、当該ファイルオフセットを加工プログラム読出部73へ送信する。このため、加工プログラム取得部53は、ユーザが行番号で指定した位置からの加工プログラム3cを加工プログラム読出部73から直ちに取得する。
行サーチ部54は、加工プログラム3cに含まれる無条件分岐命令(GOTO文)に従って、行番号を上方向または下方向にサーチするものである。本第1実施形態において、行サーチ部54は、現在実行中の実行行が無条件分岐命令であれば、当該無条件分岐命令で指定されたラベルの行へジャンプさせた後、当該行から処理を続行させるようになっている。
具体的には、行サーチ部54は、ジャンプ先のラベルをサーチする際、加工プログラム3cを下方向にサーチして現在行が最終行に到達した場合、先頭行(行番号1)へジャンプしてサーチを続行する。一方、行サーチ部54は、加工プログラム3cを上方向にサーチして現在行が先頭行に到達した場合、最終行へジャンプしてサーチを続行する。
ただし、上述した上方向へのサーチに関し、従来の数値制御装置2では、加工プログラム3cに含まれる全行数をカウントしなければ最終行を把握できないため、最終行へジャンプすることになってから、数値制御装置2側で加工プログラム3cの全行数をカウントしている。このため、上方向への行サーチ処理を実行すると、最終行へジャンプする際に時間がかかる場合があった。
そこで、本第1実施形態では、数値制御装置2とは非同期に予め外部処理装置3側で加工プログラム3cの全行数をカウントさせておくことで、上方向への行サーチ処理を高速化している。具体的には、上述したとおり、加工プログラム読出部73が加工プログラム3cをオープンすると同時に、最終行番号送信部74が加工プログラム3cの全行数のカウントを開始する。そして、当該カウントが終了次第、直ちに最終行番号を数値制御装置2へ送信し、最終行番号記憶部42へ格納させるようになっている。
このため、上方向の行サーチ処理が先頭行に到達した時点で、既に最終行番号送信部74から最終行番号が送信されている場合には、最終行へジャンプする際のタイムラグが全く発生しない。また、仮に、上方向の行サーチ処理が先頭行に到達した時点で、最終行番号送信部74でのカウントが終わっていなくても、数値制御装置2側でカウントするよりは早く終了するためタイムラグが最小限に抑えられる。
また、本第1実施形態において、行サーチ部54は、最終行番号に基づいて最終行へジャンプしたとき、最終行番号を現在行としてセットする。そして、当該現在行をデクリメントすることで上方向へのサーチを続行するようになっている。このように、行番号を用いて行サーチを実行した場合、サーチ過程またはサーチ中にエラーが発生したとき、数値制御装置2がどこまでサーチしているかを外部処理装置3側で把握することが可能となる。
なお、本第1実施形態において、行サーチ部54は、最終行番号に基づいてジャンプしているが、この構成に限定されるものではなく、上述したとおり、最終行に対応するファイルオフセットに基づいて最終行へジャンプしてもよい。また、行サーチ部54によるサーチ方向は、ユーザによって上方向または下方向に適宜選択される。具体的には、ユーザは、所定の入力手段を用いてサーチ方向を選択すると、ユーザインタフェース部71が当該選択情報を取得し、行サーチ部54によるサーチ方向を設定するようになっている。
つぎに、本第1実施形態の数値制御システム1Aによる作用について説明する。
本第1実施形態の数値制御システム1Aによって工作機械10を制御しワークの加工を行う場合、図3に示すように、外部処理装置3側において、ユーザインタフェース部71が行番号および加工プログラム3cを表示手段に表示する(ステップS1)。このとき、ユーザインタフェース部71は、加工プログラム3cを一度オープンするため、各行番号に対応するファイルオフセット(加工プログラム3cの先頭からのバイト数)を把握する。
ユーザが、表示手段に表示された加工プログラム3cに基づき、所望の実行開始行番号を指定すると、ユーザインタフェース部71が当該実行開始行番号を取得する(ステップS2)。そして、開始データ送信部72が、ユーザインタフェース部71が取得した実行開始行番号ととともに、当該実行開始行番号に対応するファイルオフセットを開始データとして、数値制御装置2側の加工プログラム解析部51へ送信する(ステップS3)。
外部処理装置3から開始データを受信した数値制御装置2では、加工プログラム解析部51が、当該開始データに含まれるファイルオフセットを加工プログラム取得部53へ渡すと、当該加工プログラム取得部53が当該ファイルオフセットを外部処理装置3側の加工プログラム読出部73へ送信する(ステップS4)。
このように、本第1実施形態では、数値制御装置2を経由して、ユーザインタフェース部71で特定されたファイルオフセットを加工プログラム読出部73へ送信している。このため、本第1実施形態の外部処理装置3は、本第1実施形態の数値制御装置2のみならず、既存の数値制御装置2との間でも互換性が確保される。ただし、加工プログラム読出部73が、ユーザインタフェース部71から直接ファイルオフセットを取得するように構成してもよい。
つづいて、加工プログラム取得部53からファイルオフセットを受信した加工プログラム読出部73は、当該ファイルオフセットに基づいて加工プログラム3cのファイルを直接オープンする(ステップS6)。このため、外部処理装置3では、加工プログラム3cをサーチする時間が一切必要なく、ユーザが行番号で指定した位置からの加工プログラム3cを直ちに加工プログラム取得部53へ提供する(ステップS8)。
また、本第1実施形態では、上記ステップS6において、加工プログラム読出部73が加工プログラム3cのファイルをオープンすると同時に、最終行番号送信部74が、加工プログラム3cの全行数のカウントを開始する(ステップS7)。そして、当該カウントが終了次第(ステップS9:YES)、直ちに最終行番号を数値制御装置2へ送信し(ステップS10)、最終行番号記憶部42に記憶させる。
つぎに、外部処理装置3から加工プログラム3cを取得した数値制御装置2では、加工プログラム解析部51が加工プログラム3cを解析して実行を開始する(ステップS11)。そして、加工プログラム3c中に無条件分岐命令(GOTO文)がある場合(ステップS12:YES)、行サーチ部54が、当該無条件分岐命令で指定されたラベルの行へジャンプさせる(ステップS13)。
具体的には、図4に示すように、まず、行サーチ部54はサーチ方向を確認し、上方向に設定されている場合(ステップS21:上方向)、現在サーチしている現在行が先頭行か否かを判定する(ステップS22)。そして、現在行が先頭行でなければ(ステップS22:NO)、当該現在行をデクリメントすることで(ステップS25)、1行上に移動させる。このように、行サーチ処理に行番号を用いることで、サーチ過程またはサーチ中にエラーが発生したとき、どこまでサーチしたかを外部処理装置3側で把握することが可能となる。
一方、現在行が先頭行に到達した場合(ステップS22:YES)、行サーチ部54は、最終行番号記憶部42に最終行番号が格納され次第(ステップS23:YES)、当該最終行番号を現在行としてセットし、最終行へジャンプする(ステップS24)。このように、最終行へジャンプすることになってから、数値制御装置2側で加工プログラム3cの行数をカウントする従来技術と比較して、外部処理装置3側で予めカウントさせるため、最終行へジャンプする際のタイムラグが全く発生しないか、発生したとしても最小限に抑えられる。
上記ステップS24で最終行へジャンプした後、または上記ステップS25で現在行がデクリメントされた後、行サーチ部54は、現在行のラベルが無条件分岐命令で指定されたラベルに一致するか否かを確認する(ステップS26)。そして、両者が一致しない限り(ステップS26:NO)、ステップS22へと戻り、上述した上方向へのサーチを続行する。
一方、現在行のラベルが無条件分岐命令で指定されたラベルと一致した場合(ステップS26:YES)、行サーチ部54は、当該ラベルの行へジャンプさせ(ステップS27)、行サーチ処理を終了する。
なお、図5に示すように、サーチ方向が下方向に設定されている場合(ステップS21:下方向)、行サーチ部54は、現在サーチしている現在行が最終行か否かを判定する(ステップS28)。そして、現在行が最終行でなければ(ステップS28:NO)、当該現在行をインクリメントすることで(ステップS30)、1行下に移動させる。
一方、現在行が最終行に到達した場合(ステップS28:YES)、行サーチ部54は、現在行を1にセットし、先頭行(行番号1)へジャンプする(ステップS29)。そして、現在行のラベルが無条件分岐命令で指定されたラベルと一致しない限り(ステップS31:NO)、ステップS28へと戻り、上述した下方向へのサーチを続行する。一方、現在行のラベルが無条件分岐命令で指定されたラベルと一致した場合(ステップS31:YES)、行サーチ部54は、当該ラベルの行へジャンプさせ(ステップS32)、行サーチ処理を終了する。
つづいて、図3に戻り、加工プログラム3c中に無条件分岐命令(GOTO文)がない場合(ステップS12:NO)、または行サーチ処理(ステップS13)が終了すると、命令信号補間部52が現在行を実行するとともに(ステップS14)、加工プログラム解析部51が現在実行中の行番号とともに加工プログラム3cをユーザインタフェース部71へと送信し(ステップS15)、次の行番号へと処理を進める(ステップS16)。
そして、加工プログラム3cが終了しない限り(ステップS17:NO)、ステップS12へと戻り、上述した処理を繰り返すようになっている。なお、加工プログラム解析部51から現在実行中の行番号と加工プログラム3cを受信したユーザインタフェース部71は、表示手段における表示を更新し(ステップS18)、現在実行中の行番号や加工処理をユーザに認識させる。
以上のような本第1実施形態によれば、以下のような効果を奏する。
1.大きなファイルサイズの加工プログラム3cを途中から実行する際のサーチ時間が顕著になるのを抑制して、迅速に加工プログラム3cの実行を開始することができる。
2.従来と比較して、最終行番号のカウント処理を迅速に終了させることができる。
3.上方向への行サーチ処理において、先頭行から最終行へジャンプするときのタイムラグをゼロにするか、少なくとも短縮することができる。
4.行サーチ処理に行番号を用いることで、サーチ過程またはサーチ中にエラーが発生しても、どこまでサーチしたかを外部処理装置3側で把握することができる。
つぎに、本発明に係る数値制御システム1Bの第2実施形態について説明する。なお、本第2実施形態のうち、上述した第1実施形態の構成やステップと同一若しくは相当する構成やステップについては、同一の符号を付して再度の説明を省略する。
本第2実施形態の特徴は、行サーチ処理において、上方向のサーチが先頭行に到達した場合、あるいは下方向のサーチが最終行に到達した場合、現在実行中の実行行へジャンプする点にある。
本第2実施形態において、数値制御システム1Bは、図6に示すように、第1実施形態における最終行番号送信部74および最終行番号記憶部42を有しておらず、別途、実行行番号記憶部43を有している点で、第1実施形態の数値制御システム1Aと異なっている。
実行行番号記憶部43は、数値制御装置2のNC側記憶手段4に設けられており、行サーチ部54が行サーチ処理を実行する際に備えて、現在実行中の実行行番号を記憶するものである。本第2実施形態において、加工プログラム解析部51は、現在実行中の行番号が変わる度に、実行行番号記憶部43に記憶されている実行行番号の値を更新するようになっている。
また、本第2実施形態において、行サーチ部54は、加工プログラム3cを上方向にサーチして現在行が先頭行に到達した場合、現在実行中の実行行へジャンプした後、下方向にサーチを続行する。一方、行サーチ部54は、加工プログラム3cを下方向にサーチして現在行が最終行に到達した場合、現在実行中の実行行へジャンプした後、上方向にサーチを続行するようになっている。
つぎに、本第2実施形態の数値制御システム1Bによる作用について説明する。
まず、数値制御装置2と外部処理装置3との間のやりとりは、上述したステップS7、ステップS9およびステップS10が行われない点を除き、図3と同一である。一方、行サーチ処理を実行する際は、図7に示すように、第1実施形態と同様、行サーチ部54がサーチ方向を確認し、上方向に設定されている場合(ステップS41:上方向)、現在サーチしている現在行が先頭行か否かを判定する(ステップS42)。
当該判定の結果、現在行が先頭行でなければ(ステップS42:NO)、現在行をデクリメントすることで(ステップS43)、1行上に移動させる。そして、現在行のラベルが無条件分岐命令(GOTO文)で指定されたラベルに一致しなければ(ステップS45:NO)、処理はステップS42へと戻る。一方、現在行のラベルが無条件分岐命令で指定されたラベルに一致すれば(ステップS45:YES)、行サーチ部54は、当該ラベルの行へジャンプさせ(ステップS46)、行サーチ処理を終了する。
一方、上記ステップS42における判定の結果、現在行が先頭行に到達した場合(ステップS42:YES)、行サーチ部54は、実行行番号記憶部43に記憶されている実行行番号を現在行としてセットし(ステップS44)、実行行へジャンプする。その後、図8の「A」へと移動し、当該実行行から下方向にサーチを続行する。
一方、上記ステップS41において、サーチ方向が下方向に設定されている場合(ステップS41:下方向)、図8に示すように、現在サーチしている現在行が最終行か否かを判定する(ステップS47)。
当該判定の結果、現在行が最終行でなければ(ステップS47:NO)、現在行をインクリメントすることで(ステップS48)、1行下に移動させる。そして、現在行のラベルが無条件分岐命令で指定されたラベルに一致しなければ(ステップS50:NO)、処理はステップS47へと戻る。一方、現在行のラベルが無条件分岐命令で指定されたラベルに一致すれば(ステップS50:YES)、行サーチ部54は、当該ラベルの行へジャンプさせ(ステップS51)、行サーチ処理を終了する。
一方、上記ステップS47における判定の結果、現在行が最終行に到達した場合(ステップS47:YES)、行サーチ部54は、実行行番号記憶部43に記憶されている実行行番号を現在行としてセットし(ステップS49)、実行行へジャンプする。その後、図7の「B」へと移動し、当該実行行から上方向にサーチを続行する。
以上のような本第2実施形態によれば、行サーチ処理が先頭行または最終行に到達した後のジャンプ先が、数値制御装置2において常に把握されている実行行であるため、ジャンプする際のタイムラグの発生を確実に防止することができる。
なお、本発明に係る数値制御システム1A,1Bは、前述した各実施形態に限定されるものではなく、適宜変更することができる。
1A,1B 数値制御システム
2 数値制御装置
2a 数値制御装置用プログラム
3 外部処理装置
3a UI用プログラム
3b 提供用プログラム
3c 加工プログラム
4 NC側記憶手段
5 NC側制御手段
6 外部側記憶手段
7 外部側制御手段
10 工作機械
41 プログラム記憶部
42 最終行番号記憶部
43 実行行番号記憶部
51 加工プログラム解析部
52 命令信号補間部
53 加工プログラム取得部
54 行サーチ部
61 プログラム記憶部
71 ユーザインタフェース部
72 開始データ送信部
73 加工プログラム読出部
74 最終行番号送信部

Claims (6)

  1. 加工プログラムによって工作機械を制御しワークの加工を行う数値制御装置と、この数値制御装置へ前記加工プログラムを提供する外部処理装置とを備えた数値制御システムであって、
    前記外部処理装置は、
    前記加工プログラムの実行を開始する行番号である実行開始行番号を取得するとともに、前記加工プログラムの先頭からのバイト数であって前記実行開始行番号に対応するファイルオフセットを把握するユーザインタフェース部と、
    前記ファイルオフセットに基づいて前記加工プログラムのファイルをオープンし、前記実行開始行番号で指定された位置からの前記加工プログラムを前記数値制御装置へ提供する加工プログラム読出部と
    を有している、数値制御システム。
  2. 前記外部処理装置は、
    前記実行開始行番号とともに、前記実行開始行番号に対応するファイルオフセットを開始データとして、前記数値制御装置へ送信する開始データ送信部を有しており、
    前記数値制御装置は、
    前記開始データに含まれるファイルオフセットを前記加工プログラム読出部へ送信するとともに、前記加工プログラム読出部から前記実行開始行番号で指定された位置からの前記加工プログラムを取得する加工プログラム取得部を有している、請求項1に記載の数値制御システム。
  3. 前記外部処理装置は、前記加工プログラム読出部が前記加工プログラムのファイルをオープンすると同時に、前記加工プログラムの全行数のカウントを開始し、最終行番号または最終行に対応するファイルオフセットを前記数値制御装置へ送信する最終行番号送信部を有している、請求項1または請求項2に記載の数値制御システム。
  4. 前記数値制御装置は、指定された行番号にジャンプする無条件分岐命令(GOTO文)を含む前記加工プログラムに対して、前記行番号を上方向または下方向にサーチする行サーチ部を有しており、
    前記行サーチ部は、前記加工プログラムを上方向にサーチして現在行が先頭行に到達した場合、前記最終行番号送信部から取得した前記最終行番号または最終行に対応するファイルオフセットに基づいて前記加工プログラムの最終行へジャンプしてサーチを続行する、請求項に記載の数値制御システム。
  5. 前記行サーチ部は、前記最終行番号に基づいて前記最終行へジャンプする場合、前記最終行番号を現在行としてセットし、前記現在行をデクリメントすることで上方向へサーチを続行する、請求項に記載の数値制御システム。
  6. 前記数値制御装置は、指定された行番号にジャンプする無条件分岐命令(GOTO文)を含む前記加工プログラムに対して、前記行番号を上方向または下方向にサーチする行サーチ部を有しており、
    前記行サーチ部は、前記加工プログラムを上方向にサーチして現在行が先頭行に到達した場合、現在実行中の実行行へジャンプした後、下方向にサーチを続行し、前記加工プログラムを下方向にサーチして現在行が最終行に到達した場合、現在実行中の実行行へジャンプした後、上方向にサーチを続行する、請求項1または請求項2に記載の数値制御システム。
JP2015036637A 2015-02-26 2015-02-26 数値制御システム Active JP6485950B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015036637A JP6485950B2 (ja) 2015-02-26 2015-02-26 数値制御システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015036637A JP6485950B2 (ja) 2015-02-26 2015-02-26 数値制御システム

Publications (2)

Publication Number Publication Date
JP2016157393A JP2016157393A (ja) 2016-09-01
JP6485950B2 true JP6485950B2 (ja) 2019-03-20

Family

ID=56826304

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015036637A Active JP6485950B2 (ja) 2015-02-26 2015-02-26 数値制御システム

Country Status (1)

Country Link
JP (1) JP6485950B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6881362B2 (ja) * 2018-03-16 2021-06-02 ブラザー工業株式会社 数値制御装置
JP6748146B2 (ja) * 2018-05-17 2020-08-26 ファナック株式会社 制御装置、制御方法及び制御プログラム
WO2023209857A1 (ja) * 2022-04-27 2023-11-02 ファナック株式会社 機械動作指令プログラム検索装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0675614A (ja) * 1992-08-26 1994-03-18 Mitsubishi Electric Corp 数値制御装置
JPH08249040A (ja) * 1995-03-15 1996-09-27 Fanuc Ltd Ncプログラム送信方式
JP3694196B2 (ja) * 1999-07-29 2005-09-14 日本電信電話株式会社 ソフトウェア無線装置
JP5526880B2 (ja) * 2010-03-12 2014-06-18 三菱電機株式会社 数値制御方法及びその装置

Also Published As

Publication number Publication date
JP2016157393A (ja) 2016-09-01

Similar Documents

Publication Publication Date Title
US8036770B2 (en) Numerical control unit with set amount of execution
CN104238487B (zh) 控制机床和机器人的控制装置
JP6209392B2 (ja) 干渉確認装置
US9494928B2 (en) Numerical control apparatus
JP6378284B2 (ja) 数値制御装置、及び数値制御装置の制御方法
JP3827951B2 (ja) Nc加工におけるncプログラムの最適化方法及び装置
JP6485950B2 (ja) 数値制御システム
JP5159993B1 (ja) 数値制御装置
WO2015097887A1 (ja) 工作機械の制御装置
JP4096743B2 (ja) サイクルタイム表示方法、サイクルタイム表示装置及びサイクルタイム表示プログラム
JP2007179314A (ja) 工作機械及びそのプログラム変換方法
JP6574127B2 (ja) 数値制御装置およびこれを備えた工作機械
JP6157777B1 (ja) 加工時間算出装置及び加工時間算出方法
JP6638979B2 (ja) 加工工程管理機能付き数値制御装置および加工工程管理プログラム
KR101108211B1 (ko) 복합선반용 파트프로그래밍 장치 및 복합 공정간 동기화 프로그램 생성방법
JP5210070B2 (ja) 数値制御工作機械
JPWO2004074953A1 (ja) 数値制御装置
JPH04122543A (ja) 数値制御装置及び工具交換位置変更方法
US10671053B2 (en) Numerical controller and machine tool system
JP4558675B2 (ja) 数値制御装置
JP2011039701A (ja) 数値制御装置、数値制御方法及び数値制御プログラム
US9904277B2 (en) Numerical controller configured for operation based on tabular data
JP3198010B2 (ja) 工作機械の制御方法及び制御装置
JP2673960B2 (ja) 2スピンドル工作機械における加工制御方法及び制御装置
JP5851684B2 (ja) Ncプログラム作成方法及び作成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181121

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181122

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190218

R150 Certificate of patent or registration of utility model

Ref document number: 6485950

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250