JP7409822B2 - 数値制御装置 - Google Patents

数値制御装置 Download PDF

Info

Publication number
JP7409822B2
JP7409822B2 JP2019190805A JP2019190805A JP7409822B2 JP 7409822 B2 JP7409822 B2 JP 7409822B2 JP 2019190805 A JP2019190805 A JP 2019190805A JP 2019190805 A JP2019190805 A JP 2019190805A JP 7409822 B2 JP7409822 B2 JP 7409822B2
Authority
JP
Japan
Prior art keywords
tool
edge
type
selection command
type selection
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
JP2019190805A
Other languages
English (en)
Other versions
JP2021067997A (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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Priority to JP2019190805A priority Critical patent/JP7409822B2/ja
Priority to US17/016,934 priority patent/US11720083B2/en
Priority to DE102020124347.2A priority patent/DE102020124347A1/de
Priority to CN202011096435.2A priority patent/CN112684761A/zh
Publication of JP2021067997A publication Critical patent/JP2021067997A/ja
Application granted granted Critical
Publication of JP7409822B2 publication Critical patent/JP7409822B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • G05B19/40937Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine concerning programming of machining or material parameters, pocket machining
    • G05B19/40938Tool management
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35519Machining data and tool data
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36204Lathe, turning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36347Select tool if tool life duration is sufficient for operation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/36Nc in input of data, input key till input tape
    • G05B2219/36365Program so that minimal tool changes are needed
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37252Life of tool, service life, decay, wear estimation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37355Cutting, milling, machining force
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Geometry (AREA)
  • Numerical Control (AREA)

Description

本発明は、数値制御装置に関する。
複数のエッジを有するマルチエッジ工具がある。マルチエッジ工具のエッジ毎の寿命データと累積使用時間データとに基づいて、加工作業指令が出力された際にエッジ毎の残り寿命を演算し、少なくとも1つのエッジが残り寿命を超える場合、マルチエッジ工具が寿命であると判定する技術が知られている。例えば、特許文献1参照。
特開平7-314290号公報
ところで、マルチエッジ工具の特性を利用して、工具交換せずに1つの工具の異なるエッジを使用して一連の加工を行うことが期待されている場合、1つのエッジの寿命が尽きることで、工具交換が行われためサイクルタイムが増大してしまう。
そこで、1つのエッジの寿命が尽きた場合でも、マルチエッジ工具を使用した加工においてサイクルタイムを抑制することが望まれている。
本開示の数値制御装置の一態様は、異なる仕様のエッジを複数備えたマルチエッジ工具を使用してワークを加工する工作機械の数値制御装置であって、前記エッジの種類を特定するエッジ種類番号を、工具の種類を特定する工具種類番号に関連づけて記憶する工具情報メモリと、加工プログラムに含まれる複数のブロックを先読みし、先読みされた前記複数のブロックにおいて前記工具の種類の選択を実施する工具種類選択指令及び/又は前記エッジの種類の選択を実施するエッジ種類選択指令を解読し、解読された前記工具種類選択指令及び/又は前記エッジ種類選択指令を含む内部情報を生成する工具種類選択指令・エッジ種類選択指令解読部と、前記工具情報メモリに記憶された前記エッジ毎の残り寿命と、前記工具種類選択指令・エッジ種類選択指令解読部により生成された前記内部情報とに基づいて、少なくとも先読みされた前記複数のブロックの実行中において工具交換の回数が最小となる工具を選択する工具選択部と、を備える。
一態様によれば、1つのエッジの寿命が尽きた場合でも、マルチエッジ工具を使用した加工においてサイクルタイムを抑制することができる。
一実施形態に係る数値制御装置の機能的構成例を示す機能ブロック図である。 工具・エッジデータテーブルの一例を示す図である。 マルチエッジ工具の一例を示す図である。 マルチエッジ工具の一例を示す図である。 マルチエッジ工具の一例を示す図である。 加工プログラム30の一例を示す図である。 数値制御装置のNC指令解読処理について説明するフローチャートである。 図5においてステップS2で示したNC指令解読処理の詳細な処理内容を説明するフローチャートである。 図6においてステップS24で示した解読メイン処理の詳細な処理内容を説明するフローチャートである。 図7においてステップS41で示した工具種類選択指令・エッジ種類選択指令記憶処理の詳細な処理内容を説明するフローチャートである。 図7においてステップS43で示した次ブロック読込判定処理の詳細な処理内容を説明するフローチャートである。 図9の次ブロック読込判定処理の続きを示すフローチャートである。 数値制御装置10のNC指令実行処理について説明するフローチャートである。 図11においてステップS110で示した工具選択処理の詳細な処理内容を説明するフローチャートである。 図12の工具選択処理の続きを示すフローチャートである。 図12の工具選択処理の続きを示すフローチャートである。 図13においてステップS208で示した工具選択処理(1)の詳細な処理内容を説明するフローチャートである。 図14においてステップS212で示した工具選択処理(2)の詳細な処理内容を説明するフローチャートである。
<一実施形態>
まず、本実施形態の概略を説明する。本実施形態では、数値制御装置は、加工プログラムに含まれる複数のブロックを先読みし、先読みされた複数のブロックにおいて工具の種類の選択を実施する工具種類選択指令、及びエッジの種類の選択を実施するエッジ種類選択指令を解読する。数値制御装置は、解読された工具種類選択指令及びエッジ種類選択指令を含む内部情報を生成する。数値制御装置は、工具情報メモリに記憶されたエッジ毎の残り寿命と、生成された内部情報とに基づいて、少なくとも先読みされた前記複数のブロックの実行中において工具交換の回数が最小となる工具を選択する。
これにより、本実施形態によれば、「1つのエッジの寿命が尽きた場合でも、マルチエッジ工具を使用した加工においてサイクルタイムを抑制する」という課題を解決することができる。
以上が本実施形態の概略である。
次に、本実施形態の構成について図面を用いて詳細に説明する。
図1は、一実施形態に係る数値制御装置の機能的構成例を示す機能ブロック図である。
数値制御装置10、及び工作機械20は、図示しない接続インタフェースを介して、互いに直接接続されてもよい。なお、数値制御装置10、及び工作機械20は、LAN(Local Area Network)やインターネット等の図示しないネットワークを介して相互に接続されていてもよい。この場合、数値制御装置10、及び工作機械20は、かかる接続によって相互に通信を行うための図示しない通信部を備えている。
数値制御装置10は、当業者にとって公知の数値制御装置であり、制御情報に基づいて動作指令を生成し、生成した動作指令を工作機械20に送信する。これにより、数値制御装置10は、工作機械20の動作を制御する。なお、工作機械20がロボット等の場合、数値制御装置10は、ロボット制御装置等でもよい。
また、数値制御装置10の制御対象は工作機械20やロボットに限定されず、産業機械全般に広く適用することができる。産業機械とは、例えば、工作機械、産業用ロボット、サービス用ロボット、鍛圧機械及び射出成形機といった様々な機械を含む。
図1に示すように、数値制御装置10は、制御部100、及び工具情報メモリ200を有する。さらに、制御部100は、NC指令解読部110、工具選択部120、工具交換実行部130、工具補正部140、及びパルス分配部150を有する。さらに、NC指令解読部110は、工具種類・エッジ種類選択指令解読部111を有する。
<工具情報メモリ200>
工具情報メモリ200は、SSD(Solid State Drive)やHDD(Hard Disk Drive)等である。工具情報メモリ200は、工具・エッジデータテーブル210を記憶する。
工具・エッジデータテーブル210は、例えば、工作機械20に選択可能な工具に関する工具情報の一覧である。また、工具・エッジデータテーブル210は、工具がマルチエッジ工具の場合、マルチエッジ工具毎にエッジ数分のエッジ番号を登録することで、エッジ毎の情報を格納できる領域を確保する。そして、工具・エッジデータテーブル210は、エッジ属性(加工用途、材質、刃先R補正量等)が全て同じエッジに対して、同じエッジ番号を付与してエッジ毎に登録する。
また、マルチエッジ工具以外の工具については、エッジ番号を登録しないことで、従来の工具情報メモリの構成と等価である。
図2は、工具・エッジデータテーブル210の一例を示す図である。
図2に示すように、工具・エッジデータテーブル210は、登録される順番に付与される工具番号、予め設定された工具の種類を示す工具種類番号、マルチエッジ工具毎の各エッジに付与されるエッジ番号、各エッジの種類を示すエッジ種類番号、及び残り寿命(使用回数)を格納する格納領域を有する。
なお、工具・エッジデータテーブル210は、工具毎の工具位置オフセット量(例えば、旋削加工工具)、及び工具長補正量(例えば、ミリング加工工具)、及び刃先R補正量等を格納する格納領域を有してもよい。
工具・エッジデータテーブル210は、上述したように、登録される順に「1」から「7」の工具番号が付与され格納してもよい。また、工具・エッジデータテーブル210は、工具の種類毎に予め設定された「100」等の工具種類番号が付与され格納される。
なお、工具番号「1」から「3」の工具の工具種類番号が「100」であることから、工具番号「1」から「3」の工具は同じ種類の工具であることを示す。
また、工具・エッジデータテーブル210では、工具番号「1」から「5」の工具の各々に対してエッジ番号「1」から「3」が付与され格納されている。このことから、工具番号「1」から「5」の工具は、3つのエッジを有するマルチエッジ工具であることを示す。ただし、工具番号「1」から「3」の工具の工具種類番号「100」、工具番号「4」の工具の工具種類番号「101」、及び工具番号「5」の工具の工具種類番号「110」であり、工具の種類が異なる。したがって、工具番号「1」から「3」の工具と、工具番号「4」の工具と、工具番号「5」の工具とは、互いに異なる種類のマルチエッジ工具であることを示す。
図3Aから図3Cは、マルチエッジ工具の一例を示す図である。
図3Aは、工具番号「1」から「3」で工具種類番号「100」のマルチエッジ工具を示す。工具種類番号「100」のマルチエッジ工具は、エッジ番号「1」に荒加工用のエッジ、エッジ番号「2」に中仕上げ加工用のエッジ、エッジ番号「3」に仕上げ加工用のエッジをそれぞれ有する。これにより、前記マルチエッジ工具は、B軸(Y軸)周りに回転させることで、荒加工、中仕上げ加工、及び仕上げ加工を連測的に行うことができる。そして、エッジ番号「1」から「3」に対してエッジ種類番号「11」から「13」が予め付与される。
図3Bは、工具番号「4」で工具種類番号「101」のマルチエッジ工具を示す。工具種類番号「101」のマルチエッジ工具は、図3Aのマルチエッジ工具と同じ機能を有するが、工具の大きさが異なるものである。このため、図3Bのマルチエッジ工具には、図3Aのマルチエッジ工具と異なる工具種類番号「101」が付与される。
図3Cは、工具番号「5」で工具種類番号「110」のマルチエッジ工具を示す。工具種類番号「110」のマルチエッジ工具は、エッジ番号「1」に真剣バイト、エッジ番号「2」に右剣バイト、エッジ番号「3」に左剣バイトがそれぞれ設けられている。これにより、図3Cのマルチエッジ工具は、B軸(Y軸)周りに回転させることで、勝手なし、右勝手、及び左勝手の旋削加工を連続的に行うことができる。そして、エッジ番号「1」から「3」に対してエッジ種類番号「15」から「17」が予め付与される。
このことから、工具・エッジデータテーブル210において、工具番号「1」から「4」の工具の各々のエッジ番号「1」から「3」に対してエッジ種類番号「11」から「13」が格納され、工具番号「5」のエッジ番号「1」から「3」に対してエッジ種類番号「15」から「17」が格納されている。
なお、工具番号「6」及び「7」の工具は、エッジ番号が付与されていないことから、マルチエッジ工具以外の工具である。例えば、工具番号「6」の工具は、工具種類番号「200」の溝入れバイト、及び工具番号「7」の工具は、工具種類番号「210」の突切りバイト等である。このため、工具・エッジデータテーブル210は、工具番号「6」、「7」において、エッジ番号及びエッジ種類番号が空欄となる。
また、工具・エッジデータテーブル210は、工具毎又はエッジ毎に残り寿命(使用回数)が格納される。例えば、工具・エッジデータテーブル210の残り寿命(使用回数)は、新品の工具交換時等に初期値として最大の使用回数がエッジ毎又は工具毎に設定され、使用される毎に1ずつマイナスカウントされる。図2の工具・エッジデータテーブル210では、工具番号「3」のマルチエッジ工具のエッジのうちエッジ番号「3」の残り寿命(使用回数)が「0」であり、寿命が尽きたことを示す。
なお、寿命(使用回数)は、0から1ずつプラスカウントしてもよい。この場合、数値制御装置10は、寿命(使用時間)が最大の使用回数に達したか否かを判定することで、寿命が尽きたか否かを判定してもよい。あるいは、寿命(使用回数)は、工具の累積使用時間等でもよい。この場合、数値制御装置10は、工具の累積使用時間が予め設定された所定時間に達したか否かを判定することで、寿命が尽きたか否かを判定してもよい。
<制御部100>
制御部100は、CPU、ROM、RAM、CMOSメモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
CPUは数値制御装置10を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、前記システムプログラム及びアプリケーションプログラムに従って数値制御装置10全体を制御する。これにより、図1に示すように、制御部100が、NC指令解読部110、工具選択部120、工具交換実行部130、工具補正部140、及びパルス分配部150の機能を実現するように構成される。RAMには一時的な計算データや表示データ等の各種データが格納される。CMOSメモリは図示しないバッテリでバックアップされ、数値制御装置10の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。
NC指令解読部110は、例えば、CAD/CAM装置等の外部装置により生成された加工プログラム30を取得し、取得された加工プログラム30を解析する。
工具種類・エッジ種類選択指令解読部111は、加工プログラム30に含まれる複数のブロックを先読みし、先読みされた複数のブロックにおいて工具の種類の選択を実施する工具種類選択指令及び/又はエッジの種類の選択を実施するエッジ種類選択指令を解読する。工具種類・エッジ種類選択指令解読部111は、解読された工具種類及び/又はエッジ種類選択指令を含む内部情報を生成する。
図4は、加工プログラム30の一例を示す図である。
図4では、加工プログラム30は、シーケンス番号N1からN60が付されたブロックを有するプログラムである。シーケンス番号N1のブロックは、上述したエッジ種類番号「11」が付与されたエッジを選択する。シーケンス番号N2のブロックは、後述する工具選択部120により選択された工具に交換、又はエッジに変更を行う。シーケンス番号N3のブロックは、選択されたエッジ種類番号「11」のエッジ割り出し軸の位置決めを行う。シーケンス番号N4のブロックは、エッジの角度に応じて分配された補正量を適用する。
また、シーケンス番号N10のブロックは、上述したエッジ種類番号「12」のエッジを選択する。シーケンス番号N11のブロックは、選択されたエッジ種類番号「12」のエッジに変更する。シーケンス番号N12のブロックは、選択されたエッジ種類番号「12」のエッジ割り出し軸の位置決めを行う。シーケンス番号N20のブロックは、上述した工具種類番号「200」の工具を選択する。シーケンス番号N21のブロックは、選択された工具種類番号「200」の工具に交換する。
また、シーケンス番号N30のブロックは、上述した工具種類番号「100」の工具、及びエッジ種類番号「11」のエッジを選択する。シーケンス番号N31のブロックは、選択された工具種類番号「100」の工具に交換する。シーケンス番号N32のブロックは、選択されたエッジ種類番号「11」のエッジ割り出し軸の位置決めを行う。シーケンス番号N40のブロックは、エッジ種類番号「12」のエッジを選択する。シーケンス番号N41のブロックは、選択されたエッジ種類番号「12」のエッジに変更する。シーケンス番号N42のブロックは、選択されたエッジ種類番号「12」のエッジ割り出し軸の位置決めを行う。シーケンス番号N50のブロックは、エッジ種類番号「13」のエッジを選択する。シーケンス番号N51のブロックは、選択されたエッジ種類番号「13」のエッジに変更する。シーケンス番号N52のブロックは、選択されたエッジ種類番号「13」のエッジ割り出し軸の位置決めを行う。シーケンス番号N60のブロックは、工具種類番号「210」の工具を選択する。シーケンス番号N61のブロックは、選択された工具種類番号「210」の工具に交換する。そして、「M30」のブロックは、加工プログラム30を終了する。
工具種類・エッジ種類選択指令解読部111は、例えば、図4の加工プログラム30のうち、シーケンス番号N20又はN60の工具種類選択指令のみのブロック(すなわち、マルチエッジ工具以外の工具が選択されるブロック)までを一塊として先読みする。すなわち、工具種類・エッジ種類選択指令解読部111は、最初にシーケンス番号N1からN20のブロックを先読みする。工具種類・エッジ種類選択指令解読部111は、先読みされたブロックのうち、少なくとも工具種類選択指令又はエッジ種類選択指令を含むシーケンス番号N1、N10、20のブロックを抽出する。シーケンス番号N1のブロックはエッジ種類番号「11」のエッジ種類選択指令しかない。このため、工具種類・エッジ種類選択指令解読部111は、工具種類選択指令が指令する工具種類のデータを配列テーブルTの1番目T[1]に工具種類選択指令なしを示す「0」を記録する。一方、工具種類・エッジ種類選択指令解読部111は、エッジ種類選択指令が指令するエッジ種類のデータを配列テーブルPの1番目P[1]に「11」を記録する。以下、配列テーブルTは「工具種類T」ともいい、配列テーブルPは「エッジ種類P」ともいう。
次に、工具種類・エッジ種類選択指令解読部111は、シーケンス番号N10のブロックにおいて、2番目の工具種類T[2]に「0」を記録し、2番目のエッジ種類P[2]に「12」を記録する。また、工具種類・エッジ種類選択指令解読部111は、シーケンス番号N20のブロックにおいて、工具種類番号「200」の工具種類選択指令しかないことから、3番目の工具種類T[3]に「200」を記録し、3番目のエッジ種類P[3]にエッジ種類選択指令なしを示す「0」を記録する。
そして、工具種類・エッジ種類選択指令解読部111は、シーケンス番号N1からN20のブロックにおいて、
T[1]=0、P[1]=「11」
T[2]=0、P[2]=「12」
T[3]=「200」、P[3]=「0」
の内部情報を生成する。工具種類・エッジ種類選択指令解読部111は、生成した内部情報を後述する工具選択部120に出力する。
次に、工具種類・エッジ種類選択指令解読部111は、加工プログラム30のシーケンス番号N30からN60のブロックを先読みする。この場合、工具種類・エッジ種類選択指令解読部111は、配列テーブルT、Pを初期化してもよい。
そして、工具種類・エッジ種類選択指令解読部111は、上述のシーケンス番号N1からN20のブロックの場合と同様に、シーケンス番号N30からN60のブロックにおいて、
T[1]=「100」、P[1]=「11」
T[2]=「0」、P[2]=「12」
T[3]=「0」、P[3]=「12」
T[4]=「210」、P[4]=「0」
の内部情報を生成する。工具種類・エッジ種類選択指令解読部111は、生成した内部情報を後述する工具選択部120に出力する。
工具選択部120は、工具情報メモリ200に記憶されたエッジ毎の残り寿命と、工具種類・エッジ種類選択指令解読部111により生成された内部情報とに基づいて、少なくとも先読みされた複数のブロックの実行中において工具交換の回数が最小となる工具を選択する。
すなわち、工具選択部120は、マルチエッジ工具以外の工具に交換する場合を除き、マルチエッジ工具の特性を利用して、工具交換せずに1つの工具の異なるエッジを使用して一連の加工を行うようにマルチエッジ工具を選択する。換言すれば、工具選択部120は、加工プログラム30の解読結果である内部情報に基づいて、マルチエッジ工具の複数のエッジを連続的に加工に使用できるか否かを判定し、目的の加工を工具交換なしで行なえ、加工中にエッジの寿命が尽きない工具を選択する。これにより、数値制御装置10は、工具交換の回数を最小限に抑えることで、サイクルタイムを抑制することができる。
具体的には、工具選択部120は、図4の加工プログラム30のうちシーケンス番号N1からN20のブロックが先読みされた場合、工具種類・エッジ種類選択指令解読部111から内部情報として、
T[1]=0、P[1]=「11」
T[2]=0、P[2]=「12」
T[3]=「200」、P[3]=「0」
を受信する。工具選択部120は、図2の工具・エッジデータテーブル210と、エッジ種類P[1]=「11」、及びP[2]=「12」とに基づいて、エッジ種類番号「11」及び「12」を有する工具番号「1」から「4」のマルチエッジ工具を選択した場合、工具交換なしで連続的に目的の加工に使用できると判定する。そして、工具選択部120は、1減算した使用後の残り寿命(使用回数)が負にならないものを選択する。
この場合、図4の加工プログラム30では、シーケンス番号N1からN20においてエッジ種類番号「13」が指定されていない。このことから、工具選択部120は、加工プログラム30のシーケンス番号N1からN11のブロックの実行において、エッジ種類番号「13」のエッジの寿命が尽きている工具番号「3」のマルチエッジ工具を選択する。これにより、数値制御装置10は、1つのエッジの寿命が尽きた場合でも、マルチエッジ工具を使用した加工においてサイクルタイムを抑制することができる。また、マルチエッジ工具の各エッジを無駄なく使用することができ、コストを抑えることができる。
また、工具選択部120は、内部情報の工具種類T[3]=「200」に基づき、加工プログラム30のシーケンス番号N20のブロックにおいて、工具番号「6」の工具を選択する。そして、工具選択部120は、選択結果を工具交換実行部130、及び工具補正部140に送信する。
そうすることで、工具選択部120は、加工プログラム30のシーケンス番号N1からN20のブロックの実行において、工具番号「3」から工具番号「6」への最小の1回の工具交換を行うことで、サイクルタイムを抑制することができる。
次に、工具選択部120は、加工プログラム30のシーケンス番号N30からN60のブロックが先読みされた場合、工具種類・エッジ種類選択指令解読部111から内部情報として、
T[1]=「100」、P[1]=「11」
T[2]=「0」、P[2]=「12」
T[3]=「0」、P[3]=「12」
T[4]=「210」、P[4]=「0」
を受信する。工具選択部120は、工具・エッジデータテーブル210と、エッジ種類P[1]=「11」、P[2]=「12」、及びP[3]=「13」とに基づいて、エッジ種類番号「11」から「13」を有する工具番号「1」から「4」のマルチエッジ工具を選択した場合、工具交換なしで連続的に目的の加工に使用できると判定する。この場合、工具選択部120は、3つのエッジの残り寿命(使用回数)が最も少ない工具番号「2」のマルチエッジ工具を選択する。
また、工具選択部120は、内部情報の工具種類T[4]=「210」に基づき、加工プログラム30のシーケンス番号N60のブロックにおいて、工具番号「7」の工具を選択する。そして、工具選択部120は、選択結果を工具交換実行部130、及び工具補正部140に送信する。
そうすることで、工具選択部120は、加工プログラム30のシーケンス番号N30からN60のブロックの実行において、工具番号「6」から工具番号「2」、及び工具番号「2」から工具番号「7」への最小の2回の工具交換を行うことで、サイクルタイムを抑制することができる。
工具交換実行部130は、工具選択部120により選択された工具に交換するための軸移動量を計算する。
工具補正部140は、工具選択部120により選択された工具・エッジの位置オフセット量(例えば、旋削加工工具)/工具長補正量(例えば、ミリング加工工具)、及び刃先R補正量を用いて、工具補正量を計算する。
パルス分配部150は、計算された工具交換/工具補正の各軸移動分のパルスが工作機械20に含まれる各サーボモータ(図示しない)に出力する。
<数値制御装置10のNC指令解読処理>
次に、一実施形態に係る数値制御装置10のNC指令解読処理に係る動作について説明する。
図5は、数値制御装置10のNC指令解読処理について説明するフローチャートである。ここで示すフローは、解読結果に基づいて、後述するNC指令実行処理に対して工具交換要求又はエッジ変更要求を通知する。また、ここで示すフローは、数値制御装置10が加工プログラム30を取得する度に繰り返し実行される。
ステップS1において、NC指令解読部110は、加工プログラム30のブロックを読み込む。
ステップS2において、NC指令解読部110は、ステップS1で読み込まれた加工プログラム30に対してNC指令解読処理を行う。なお、NC指令解読処理の詳細なフローについては、後述する。
ステップS3において、NC指令解読部110は、加工プログラム30のプログラムエンドまで読み込んだか否かを判定する。プログラムエンドまで読み込んだ場合、処理は終了する。一方、プログラムエンドまで読み込んでいない場合、処理はステップS1に戻る。
図6は、図5においてステップS2で示したNC指令解読処理の詳細な処理内容を説明するフローチャートである。図6のフローチャートでは、読み込んだブロックのNC指令が工具種類選択指令及び/又はエッジ種類選択指令の場合、選択する工具を確定するための情報が揃うまで、加工プログラム30のブロックの読み込みを行う。なお、図6のフローチャートでは、ステップS21からS29は、工具種類・エッジ種類選択指令解読部111の処理フローを示す。
ステップS21において、工具種類・エッジ種類選択指令解読部111は、ステップS1で読み込まれたブロックのNC指令が工具種類選択指令又はエッジ種類選択指令であるか否かを判定する。工具種類選択指令及び/又はエッジ種類選択指令である場合、処理はステップS22に進む。工具種類選択指令及び/又はエッジ種類選択指令でない場合、NC指令解読処理のフローは終了し、処理はステップS3に進む。
ステップS22において、工具種類・エッジ種類選択指令解読部111は、工具種類選択指令及び/又はエッジ種類選択指令を含むブロック数を示す変数nを初期化する。
ステップS23において、工具種類・エッジ種類選択指令解読部111は、変数nを1増加させる。
ステップS24において、工具種類・エッジ種類選択指令解読部111は、解読メイン処理を行う。なお、解読メイン処理の詳細なフローについては、後述する。
ステップS25において、工具種類・エッジ種類選択指令解読部111は、ステップS24の解読メイン処理の結果に基づいて、次のブロックを読み込むか否かを判定する。次のブロックを読み込む(すなわち、先読みする)場合、処理はステップS26に進む。一方、次のブロックを読み込まない場合、NC指令解読処理のフローは終了し、処理は図5のステップS3に進む。
ステップS26において、工具種類・エッジ種類選択指令解読部111は、加工プログラム30の次のブロックを読み込む。
ステップS27において、工具種類・エッジ種類選択指令解読部111は、ステップS26で読み込まれたブロックがプログラムエンド又はマスクバッファか否かを判定する。ブロックがプログラムエンド又はマスクバッファの場合、処理はステップS29に進む。一方、ブロックがプログラムエンド又はマスクバッファでない場合、処理はステップS28に進む。
ステップS28において、工具種類・エッジ種類選択指令解読部111は、ステップS26で読み込まれたブロックのNC指令が工具種類選択指令及び/又はエッジ種類選択指令であるか否かを判定する。工具種類選択指令及び/又はエッジ種類選択指令でない場合、処理はステップS23に進む。一方、工具種類選択指令及び/又はエッジ種類選択指令でない場合、処理はステップS26に進む。
ステップS29において、工具種類・エッジ種類選択指令解読部111は、変数nを1増加させ、工具交換要求を工具選択部120に出力する。そして、NC指令解読処理のフローは終了し、処理はステップS3に進む。なお、工具種類・エッジ種類選択指令解読部111が工具交換要求を工具選択部120に出力した場合の数値制御装置10のNC指令実行処理については、後述する。
図7は、図6においてステップS24で示した解読メイン処理の詳細な処理内容を説明するフローチャートである。図7のフローチャートでは、ステップS41からS43は、工具種類・エッジ種類選択指令解読部111の処理フローを示す。
ステップS41において、工具種類・エッジ種類選択指令解読部111は、工具種類選択指令・エッジ種類選択指令記憶処理を行う。なお、工具種類選択指令・エッジ種類選択指令記憶処理については、後述する。
ステップS42において、工具種類・エッジ種類選択指令解読部111は、アラーム処理を行う。例えば、工具種類・エッジ種類選択指令解読部111は、工具種類選択指令でマルチエッジ工具が選択されたにも関わらず、エッジ種類選択指令が指令されていない場合、アラームを発生させ、ブロックの読み込みを終了してもよい。あるいは、工具種類・エッジ種類選択指令解読部111は、工具種類選択指令でマルチエッジ工具ではない工具が選択されたにも関わらず、エッジ種類選択指令が指令されている場合、アラームを発生させ、ブロックの読み込みを終了してもよい。
なお、工具種類・エッジ種類選択指令解読部111がアラームを発生した場合、数値制御装置10は、数値制御装置10に含まれる液晶ディスプレイ等の表示装置(図示しない)にアラームの内容を表示してもよい。そうすることで、数値制御装置10のユーザは、アラーム内容を把握し、アラームに対して対応することができる。
ステップS43において、工具種類・エッジ種類選択指令解読部111は、次ブロック読込判定処理を行う。そして、解読メイン処理のフローを終了し、図6のステップS25へ進む。なお、次ブロック読込判定処理については、後述する。
図8は、図7においてステップS41で示した工具種類選択指令・エッジ種類選択指令記憶処理の詳細な処理内容を説明するフローチャートである。図8のフローチャートでは、ステップS51からS56は、工具種類・エッジ種類選択指令解読部111の処理フローを示す。
ステップS51において、工具種類・エッジ種類選択指令解読部111は、n番目に読み込んだブロックにおいてエッジ種類選択指令があるか否かを判定する。エッジ種類選択指令がない場合、処理はステップS52に進む。一方、エッジ種類選択指令がある場合、処理はステップS53に進む。
ステップS52において、工具種類・エッジ種類選択指令解読部111は、ン番目のエッジ種類P[n]に「0」を記憶する。
ステップS53において、工具種類・エッジ種類選択指令解読部111は、n番目に読み込んだブロックのエッジ種類選択指令で指令されたエッジ種類番号をエッジ種類P[n]に記憶する。
ステップS54において、工具種類・エッジ種類選択指令解読部111は、n番目に読み込んだブロックにおいて工具種類選択指令があるか否かを判定する。工具種類選択指令がない場合、処理はステップS55に進む。一方、工具種類選択指令がある場合、処理はステップS56に進む。
ステップS55において、工具種類・エッジ種類選択指令解読部111は、n番目の工具種類T[n]に「0」を記憶する。そして、工具種類選択指令・エッジ種類選択指令記憶処理のフローを終了し、処理は図7のステップS42に進む。
ステップS56において、工具種類・エッジ種類選択指令解読部111は、n番目に読み込んだブロックの工具種類選択指令で指令された工具種類番号を工具種類T[n]に記憶する。そして、工具種類選択指令・エッジ種類選択指令記憶処理のフローを終了し、処理は図7のステップS42に進む。
図9及び図10は、図7においてステップS43で示した次ブロック読込判定処理の詳細な処理内容を説明するフローチャートである。図9及び図10のフローチャートでは、ステップS61からS73は、工具種類・エッジ種類選択指令解読部111の処理フローを示す。
ステップS61において、工具種類・エッジ種類選択指令解読部111は、n番目のエッジ種類P[n]が「0」か否かを判定する。エッジ種類P[n]が「0」の場合、処理はステップS62に進む。一方、エッジ種類P[n]が「0」でない場合、処理はステップS63に進む。
ステップS62において、工具種類・エッジ種類選択指令解読部111は、工具交換要求を工具選択部120に通知し、次のブロックを読み込まない決定をする。そして、工具種類・エッジ種類選択指令解読部111は、次ブロック読込判定処理のフローを終了し、処理は図6のステップS25に進む。
例えば、上述したように、図4の加工プログラム30のシーケンス番号N1のブロックにおいて、シーケンス番号N20のブロックまでを先読みした結果、P[3]=「0」となることから、工具種類・エッジ種類選択指令解読部111は、工具交換要求を工具選択部120に通知する。工具種類・エッジ種類選択指令解読部111は、シーケンス番号N30以降の次のブロックの読み出しをしない決定をする。これにより、図6のステップS25において、工具種類・エッジ種類選択指令解読部111は、次のブロックを読み込まないと判定する。そして、図6のNC指令解読処理のフローは終了し、処理は図5のステップS3に進む。換言すれば、数値制御装置10は、図4の加工プログラム30のシーケンス番号N2以降のブロックに対するNC指令解読処理を開始する。
そして、加工プログラム30のシーケンス番号N30のブロックにおいても、シーケンス番号N60のブロックまでを先読みした結果、P[4]=「0」となることから、工具種類・エッジ種類選択指令解読部111は、次のブロックの読み出しをしない決定をする。これにより、図6のステップS25において、工具種類・エッジ種類選択指令解読部111は、次のブロックを読み込まないと判定する。そして、図6のNC指令解読処理のフローは終了し、処理は図5のステップS3に進む。
ステップS63において、工具種類・エッジ種類選択指令解読部111は、エッジ種類P[n]のエッジ変更のみで工具交換が不要か否かを判定する。工具交換が不要の場合、処理はステップS64に進む。一方、工具交換が必要な場合、処理は図10のステップS65に進む。
ステップS64において、工具種類・エッジ種類選択指令解読部111は、エッジ変更要求を工具選択部120に通知し、次のブロックを読み込まない決定をする。そして、工具種類・エッジ種類選択指令解読部111は、次ブロック読込判定処理のフローを終了し、処理は図6のステップS25に進む。
例えば、図4の加工プログラム30のシーケンス番号N10のブロックにおいて、工具種類・エッジ種類選択指令解読部111は、エッジ種類P[1]=「12」の内部情報を生成する。この場合、シーケンス番号N10のブロックは「現在使用中の工具以外」の工具種類選択指令がなく、シーケンス番号N1のブロックにおいて選択された工具番号「3」において、指定されたエッジ種類P[1]の寿命が尽きない。このため、工具種類・エッジ種類選択指令解読部111は、エッジ種類P[1]=「12」に基づいて、工具番号「3」の工具のエッジ番号「2」に変更するエッジ変更要求を工具選択部120に通知する。
図10のステップS65において、工具種類・エッジ種類選択指令解読部111は、1番目の工具種類T[1]の工具種類番号が「0」か否かを判定する。工具種類T[1]の工具種類番号が「0」の場合、処理はステップS68に進む。一方、工具種類T[1]の工具種類番号が「0」でない場合、処理はステップS66に進む。
ステップS66において、工具種類・エッジ種類選択指令解読部111は、工具種類T[n]と工具種類T[1]とは異なる工具種類が指定されているか否かを判定する。工具種類T[n]と工具種類T[1]とが異なる工具種類の場合、処理はステップS72に進む。一方、工具種類T[n]と工具種類T[1]とは同じ工具種類の場合、処理はステップS67に進む。
ステップS67において、工具種類・エッジ種類選択指令解読部111は、工具種類T[1]の工具種類番号が示すマルチエッジ工具を選択対象に設定する。
ステップS68において、工具種類・エッジ種類選択指令解読部111は、n番目の工具種類T[n]の工具種類番号が「0」か否か(すなわち、工具種類選択指令が1つもないか否か)を判定する。工具種類T[n]の工具種類番号が「0」の場合、処理はステップS69に進む。一方、工具種類T[n]の工具種類番号が「0」でない場合、処理はステップS70に進む。
ステップS69において、工具種類・エッジ種類選択指令解読部111は、工具種類選択指令が1つも無いことから、全てのマルチエッジ工具を選択対象に設定する。
ステップS70において、工具種類・エッジ種類選択指令解読部111は、工具種類T[n]の工具種類番号が示すマルチエッジ工具を選択対象に設定する。
ステップS71において、工具種類・エッジ種類選択指令解読部111は、ステップS67、ステップS69、又はステップS70で設定された選択対象の中でエッジ種類P[1]-P[n]が同じ工具に属するエッジか否かを判定する。エッジ種類P[1]-P[n]が同じ工具に属するエッジの場合、処理はステップS73に進む。一方、エッジ種類P[1]-P[n]が同じ工具に属するエッジでない場合、処理はステップS72に進む。
ステップS72では、工具種類・エッジ種類選択指令解読部111は、工具交換要求を工具選択部120に通知し、次のブロックを読み込まない決定をする。そして、次ブロック読込判定処理のフローを終了し、図6のステップS25に進む。
ステップS73において、工具種類・エッジ種類選択指令解読部111は、T[1]=T[n]とし、次のブロックの読み込む決定をする。そして、次ブロック読込判定処理のフローを終了し、図6のステップS25に進む。
例えば、内部情報が
T[1]=「0」、P[1]=「11」
T[2]=「0」、P[2]=「12」
T[3]=「0」、P[3]=「13」
T[4]=「100」、P[4]=「11」
T[5]=「0」、P[5]=「12」
T[6]=「101」、P[6]=「11」
の場合、工具種類・エッジ種類選択指令解読部111は、工具種類T[4]の読み込み時に、ステップS71において、エッジ種類P[1]-P[4]が同じ工具に属するエッジと判断し、ステップS73に進む。ステップS73において、T[1]=T[4]が実行され、T[1]=「100」となる。
一方、工具種類・エッジ種類選択指令解読部111は、工具種類T[6]の読み込み時に、ステップS66において、T[1]とT[6]が異なる工具種類であると判断し、ステップS72に進む。
<数値制御装置10のNC指令実行処理>
次に、一実施形態に係る数値制御装置10のNC指令実行処理に係る動作について説明する。
図11は、数値制御装置10のNC指令実行処理について説明するフローチャートである。ここで示すフローは、図5のNC指令実行処理による工具交換要求又はエッジ変更要求が通知される度に繰り返し実行される。
ステップS100において、工具選択部120は、工具種類・エッジ種類選択指令解読部111から工具交換要求、又はエッジ変更要求の通知を受信したか否かを判定する。工具交換要求、又はエッジ変更要求の通知を受信した場合、処理はステップS110に進む。一方、工具交換要求、又はエッジ変更要求の通知を受信しなかった場合、NC指令実行処理のフローを終了する。
ステップS110において、工具選択部120は、工具選択処理を行う。工具選択処理については、後述する。
ステップS120において、工具交換実行部130は、ステップS110で選択された工具に交換するための軸移動量を計算する。
ステップS130において、工具補正部140は、ステップS110で選択された工具・エッジの位置オフセット量(例えば、旋削加工工具)/工具長補正量(例えば、ミリング加工工具)、及び刃先R補正量を用いて、工具補正量を計算する。
ステップS140において、パルス分配部150は、ステップS120及びステップS130で計算された工具交換/工具補正の各軸移動分のパルスが工作機械20に含まれる各サーボモータ(図示しない)に出力する。
図12から図14は、図11においてステップS110で示した工具選択処理の詳細な処理内容を説明するフローチャートである。図12から図14のフローチャートでは、ステップS201からS212は、工具選択部120の処理フローを示す。
ステップS201において、工具選択部120は、ステップS110で受信された要求が工具交換要求か否かを判定する。工具交換要求の場合、処理はステップS202に進む。一方、工具交換要求でなく、エッジ交換要求の場合、工具選択部120は現在選択されている工具をそのまま使用し、エッジ交換を行うため処理はステップS120に進む。
ステップS202において、工具選択部120は、2より大きい複数の工具種類選択指令・エッジ種類選択指令を解読済みか否かを判定するために、変数nが2より大きいか否かを判定する。変数nが2より大きい場合、処理は図14のステップS209に進む。一方、変数nが2以下の場合、処理はステップS203に進む。
ステップS203において、工具選択部120は、エッジ種類P[1]が「0」か否かを判定する。エッジ種類P[1]が「0」の場合、処理はステップS204に進む。一方、エッジ種類P[1]が「0」でない場合、処理は図13のステップS205に進む。
ステップS204において、工具選択部120は、工具種類T[1]の中で残り寿命が最小の工具を選択する。そして、ステップS110の工具選択処理のフローを終了し、図11のステップS120に進む。
なお、「残り寿命が最小」とは、残り寿命がない状態、すなわち残り寿命が「0」を除く。
図13のステップS205において、工具選択部120は、工具種類T[1]が「0」か否か(すなわち、工具種類選択指令がないか否か)を判定する。工具種類T[1]が「0」、すなわち工具種類選択指令がない場合、処理はステップS206に進む。一方、工具種類T[1]が「0」でない、すなわち工具種類選択指令がある場合、処理はステップS207に進む。
ステップS206において、工具選択部120は、全てのマルチエッジ工具を選択対象に設定する。
ステップS207において、工具選択部120は、工具種類T[1]のマルチエッジ工具を選択対象に設定する。
ステップS208において、工具選択部120は、工具選択処理(1)を行う。工具選択処理(1)については、後述する。
図14のステップS209において、工具選択部120は、工具種類T[1]が「0」か否か(すなわち、工具種類選択指令がないか否か)を判定する。工具種類T[1]が「0」、すなわち工具種類選択指令がない場合、処理はステップS210に進む。一方、工具種類T[1]が「0」でない、すなわち工具種類選択指令がある場合、処理はステップS211に進む。
ステップS210において、工具選択部120は、選択対象を全てのマルチエッジ工具に設定する。
ステップS211において、工具選択部120は、選択対象を工具種類T[1]のマルチエッジ工具に設定する。
ステップS212において、工具選択部120は、工具選択処理(2)を行う。工具選択処理(2)については、後述する。
図15は、図13においてステップS208で示した工具選択処理(1)の詳細な処理内容を説明するフローチャートである。図15のフローチャートでは、ステップS301からS306は、工具選択部120の処理フローを示す。
ステップS301において、工具選択部120は、エッジ種類P[1]のエッジの寿命が残っているマルチエッジ工具があるか否かを判定する。エッジ種類P[1]のエッジの寿命が残っているマルチエッジ工具がある場合、処理はステップS303に進む。一方、エッジ種類P[1]のエッジの寿命が残っているマルチエッジ工具がない場合、処理はステップS302に進む。
ステップS302において、工具選択部120は、エッジ種類P[1]のエッジの寿命が残っているマルチエッジ工具がないことを数値制御装置10のユーザに知らせるため、アラーム発生処理を行う。そして、ステップS208の工具選択処理(1)のフローを終了し、図11のステップS120に進む。
この場合、例えば、工具選択部120は、数値制御装置10の表示装置(図示しない)に、エッジ種類P[1]のエッジの寿命が残っているマルチエッジ工具がないことを示すアラームの内容を表示させてもよい。そうすることで、数値制御装置10のユーザは、エッジ種類P[1]のエッジを有するマルチエッジ工具の新品に交換することができる。
ステップS303において、工具選択部120は、エッジ種類P[1]以外のエッジの寿命が尽きているマルチエッジ工具があるか否かを判定する。エッジ種類P[1]以外のエッジの寿命が尽きているマルチエッジ工具がある場合、処理はステップS305に進む。一方、エッジ種類P[1]以外のエッジの寿命が尽きているマルチエッジ工具がない場合、処理はステップS304に進む。
ステップS304において、工具選択部120は、エッジ種類P[1]の残り寿命が最小の工具を選択する。
ステップS305において、工具選択部120は、寿命が尽きているエッジの数の最大の工具を選択する。
なお、該当する工具が複数ある場合、工具選択部120は、エッジ種類P[1]の残り寿命が最小の工具を選択してもよい。
ステップS306において、工具選択部120は、ステップS304又はステップS305で選択された工具が複数ある場合、全てのエッジの残り寿命の積算値が最小の工具を選択する。さらに工具が複数ある場合、工具選択部120は、工具番号が最小の工具を選択する。そして、ステップS208の工具選択処理(1)のフローを終了し、図11のステップS120に進む。
図16は、図14においてステップS212で示した工具選択処理(2)の詳細な処理内容を説明するフローチャートである。図16のフローチャートでは、ステップS401からS407は、工具選択部120の処理フローを示す。
ステップS401において、工具選択部120は、エッジ種類P[1]-P[n-1]で指定されたエッジ種類と各エッジの指定回数をカウントする。
ステップS402において、工具選択部120は、エッジ種類P[1]-P[n-1]で指定された全てのエッジ種類の残り寿命からステップS401でカウントされた各指定回数を減算し、残り寿命が負にならない工具があるか否かを判定する。残り寿命が負にならない工具がある場合、処理はステップS404に進む。一方、残り寿命が負にならない工具がない、すなわち全ての工具において指定されたエッジ種類の残り寿命が負になる場合、処理はステップS403に進む。
ステップS403において、工具選択部120は、全ての工具において指定されたエッジ種類の残り寿命が負になることを数値制御装置10のユーザに知らせるため、アラーム発生処理を行う。そして、ステップS212の工具選択処理(2)のフローを終了し、図11のステップS120に進む。
例えば、この場合、工具選択部120は、数値制御装置10の表示装置(図示しない)に、全ての工具において指定されたエッジ種類の残り寿命が負になることを示すアラームの内容を表示させてもよい。そうすることで、数値制御装置10のユーザは、指定されたエッジ種類を有するマルチエッジ工具の新品に交換することができる。
ステップS404において、工具選択部120は、エッジ種類P[1]-P[n-1]以外のエッジの寿命が尽きているマルチエッジ工具があるか否かを判定する。エッジの寿命が尽きているマルチエッジ工具がある場合、処理はステップS406に進む。一方、エッジの寿命が尽きているマルチエッジ工具がない場合、処理はステップS405に進む。
ステップS405において、工具選択部120は、エッジ種類P[1]-P[n-1]で指定されたエッジ種類の残り寿命から各指定回数を減算し、残り寿命が最小となるエッジを有する工具を選択する。
ステップS406において、工具選択部120は、寿命が尽きているエッジの数の最大の工具を選択する。
なお、該当する工具が複数ある場合、工具選択部120は、エッジ種類P[1]-P[n-1]で指定された全てのエッジ種類の残り寿命について各指定回数を減算し、残り寿命が最小となるエッジを有する工具を選択してもよい。
ステップS407において、工具選択部120は、ステップS405又はステップS406で選択された工具が複数ある場合、全てのエッジの残り寿命の積算値が最小の工具を選択する。さらに工具が複数ある場合、工具選択部120は、工具番号が最小の工具を選択する。そして、ステップS212の工具選択処理(2)のフローを終了し、図11のステップS120に進む。
以上により、一実施形態の数値制御装置10は、加工プログラム30に含まれる複数のブロックを先読みし、先読みされた複数のブロックにおいて工具の種類の選択を実施する工具種類選択指令及び/又はエッジの種類の選択を実施するエッジ種類選択指令を解読する。数値制御装置10は、解読された工具種類選択指令及び/又はエッジ種類選択指令を含む内部情報を生成する。数値制御装置10は、工具情報メモリに記憶されたエッジ毎の残り寿命と、生成された内部情報とに基づいて、少なくとも先読みされた複数のブロックの実行中において工具交換の回数が最小となる工具を選択する。
これにより、数値制御装置10は、1つのエッジの寿命が尽きた場合でも、マルチエッジ工具を使用した加工においてサイクルタイムを抑制することができる。
また、数値制御装置10は、同じ工具番号のマルチエッジ工具があり、少なくとも先読みされた複数のブロックの実行中において指定されないエッジがある場合、前記指定されないエッジの寿命が尽きたマルチエッジ工具を優先的に選択する。これにより、数値制御装置10は、マルチエッジ工具の各エッジを無駄なく使用することができ、コストを抑えることができる。
以上、一実施形態について説明したが、数値制御装置10は、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
上述の実施形態では、図5のNC指令解読処理と図11のNC指令実行処理とは、シーケンシャルに処理されたが、これに限定されず、並列に処理されてもよい。
なお、一実施形態における、数値制御装置10に含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAMを含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
以上を換言すると、本開示の数値制御装置は、次のような構成を有する各種各様の実施形態を取ることができる。
(1)本開示の数値制御装置10は、異なる仕様のエッジを複数備えたマルチエッジ工具を使用してワークを加工する工作機械20の数値制御装置であって、エッジの種類を特定するエッジ種類番号を、工具の種類を特定する工具種類番号に関連づけて記憶する工具情報メモリ200と、加工プログラム30に含まれる複数のブロックを先読みし、先読みされた複数のブロックにおいて工具の種類の選択を実施する工具種類選択指令及び/又はエッジの種類の選択を実施するエッジ種類選択指令を解読し、解読された工具種類選択指令及び/又はエッジ種類選択指令を含む内部情報を生成する工具種類・エッジ種類選択指令解読部111と、工具情報メモリ200に記憶されたエッジ毎の残り寿命と、工具種類・エッジ種類選択指令解読部111により生成された内部情報とに基づいて、少なくとも先読みされた複数のブロックの実行中において工具交換の回数が最小となる工具を選択する工具選択部120と、を備える。
この数値制御装置10によれば、エッジの寿命が尽きた場合でも、マルチエッジ工具を使用した加工においてサイクルタイムを抑制することができる。
(2)工具選択部120は、マルチエッジ工具の全てのエッジを使用した連続的な加工をしないと判断した場合、寿命が尽きたエッジを有する工具を優先的に選択してもよい。
そうすることで、マルチエッジ工具の各エッジを無駄なく使用することができ、コストを抑えることができる。
(3)マルチエッジ工具が旋削加工用工具であってもよい。
そうすることで、(1)又は(2)と同様の効果を奏することができる。
(4)マルチエッジ工具がミリング加工用工具であってもよい。
そうすることで、(1)又は(2)と同様の効果を奏することができる。
10 数値制御装置
111 工具種類・エッジ種類選択指令解読部
120 工具選択部
200 工具情報メモリ

Claims (3)

  1. 異なる仕様のエッジを複数備えたマルチエッジ工具を使用してワークを加工する工作機械の数値制御装置であって、
    前記エッジの種類を特定するエッジ種類番号を、工具の種類を特定する工具種類番号に関連づけて記憶する工具情報メモリと、
    加工プログラムに含まれる複数のブロックを先読みし、先読みされた前記複数のブロックにおいて前記工具の種類の選択を実施する工具種類選択指令及び/又は前記エッジの種類の選択を実施するエッジ種類選択指令を解読し、解読された前記工具種類選択指令及び/又は前記エッジ種類選択指令を含む内部情報を生成する工具種類選択指令・エッジ種類選択指令解読部と、
    前記工具情報メモリに記憶された前記エッジ毎の残り寿命と、前記工具種類選択指令・エッジ種類選択指令解読部により生成された前記内部情報とに基づいて、少なくとも先読みされた前記複数のブロックの実行中において工具交換の回数が最小となる工具を選択する工具選択部と、
    を備え、
    前記工具選択部は、前記マルチエッジ工具の全ての前記エッジを使用した連続的な加工をしないと判断した場合、寿命が尽きたエッジを有する工具を優先的に選択する、数値制御装置。
  2. 前記マルチエッジ工具が旋削加工用工具である、請求項1に記載の数値制御装置。
  3. 前記マルチエッジ工具がミリング加工用工具である、請求項1に記載の数値制御装置。
JP2019190805A 2019-10-18 2019-10-18 数値制御装置 Active JP7409822B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019190805A JP7409822B2 (ja) 2019-10-18 2019-10-18 数値制御装置
US17/016,934 US11720083B2 (en) 2019-10-18 2020-09-10 Numerical control device
DE102020124347.2A DE102020124347A1 (de) 2019-10-18 2020-09-18 Numerisches steuergerät
CN202011096435.2A CN112684761A (zh) 2019-10-18 2020-10-14 数值控制装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019190805A JP7409822B2 (ja) 2019-10-18 2019-10-18 数値制御装置

Publications (2)

Publication Number Publication Date
JP2021067997A JP2021067997A (ja) 2021-04-30
JP7409822B2 true JP7409822B2 (ja) 2024-01-09

Family

ID=75268641

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019190805A Active JP7409822B2 (ja) 2019-10-18 2019-10-18 数値制御装置

Country Status (4)

Country Link
US (1) US11720083B2 (ja)
JP (1) JP7409822B2 (ja)
CN (1) CN112684761A (ja)
DE (1) DE102020124347A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116165968A (zh) * 2023-04-24 2023-05-26 成都航利航空科技有限责任公司 一种数控工序加工参数记录方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002079438A (ja) 2000-06-23 2002-03-19 Yamazaki Mazak Corp 複合工具の寿命管理方法
JP2002079409A (ja) 2000-06-23 2002-03-19 Yamazaki Mazak Corp 複合工具を用いたワークの加工方法
JP2003260634A (ja) 2002-03-06 2003-09-16 Murata Mach Ltd 工作機械の制御装置
JP2003260635A (ja) 2002-03-04 2003-09-16 Denso Corp 異種複数部品加工データの自動作成方法
JP2005111635A (ja) 2003-10-10 2005-04-28 Sanyo Kiko Kk Nc用データ作成システム、nc用データ提供方法、コンピュータ読取可能な記録媒体およびncプログラム作成手段として機能させるためのコンピュータプログラム
JP2009066668A (ja) 2007-09-10 2009-04-02 Sumitomo Electric Hardmetal Corp 刃先交換式切削チップ
US20140007979A1 (en) 2012-07-05 2014-01-09 Robert Sorby Limited Woodworking hand tool
JP2014205200A (ja) 2013-04-10 2014-10-30 トヨタ自動車株式会社 切削工具ユニット及び切削方法
JP2018530445A (ja) 2015-10-09 2018-10-18 サンドビック インテレクチュアル プロパティー アクティエボラーグ 旋削によって金属加工品を機械加工する方法
WO2019021410A1 (ja) 2017-07-27 2019-01-31 三菱電機株式会社 切削チップ、切削工具及び加工装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07314290A (ja) 1994-05-23 1995-12-05 Komatsu Ltd 多刃工具の寿命管理装置
JP6193919B2 (ja) * 2015-06-15 2017-09-06 ファナック株式会社 加工条件の変化を考慮した工具寿命管理機能を備えた数値制御装置
JP7244367B2 (ja) * 2019-06-20 2023-03-22 ファナック株式会社 加工指令改良システム及び加工指令改良方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002079438A (ja) 2000-06-23 2002-03-19 Yamazaki Mazak Corp 複合工具の寿命管理方法
JP2002079409A (ja) 2000-06-23 2002-03-19 Yamazaki Mazak Corp 複合工具を用いたワークの加工方法
JP2003260635A (ja) 2002-03-04 2003-09-16 Denso Corp 異種複数部品加工データの自動作成方法
JP2003260634A (ja) 2002-03-06 2003-09-16 Murata Mach Ltd 工作機械の制御装置
JP2005111635A (ja) 2003-10-10 2005-04-28 Sanyo Kiko Kk Nc用データ作成システム、nc用データ提供方法、コンピュータ読取可能な記録媒体およびncプログラム作成手段として機能させるためのコンピュータプログラム
JP2009066668A (ja) 2007-09-10 2009-04-02 Sumitomo Electric Hardmetal Corp 刃先交換式切削チップ
US20140007979A1 (en) 2012-07-05 2014-01-09 Robert Sorby Limited Woodworking hand tool
JP2014205200A (ja) 2013-04-10 2014-10-30 トヨタ自動車株式会社 切削工具ユニット及び切削方法
JP2018530445A (ja) 2015-10-09 2018-10-18 サンドビック インテレクチュアル プロパティー アクティエボラーグ 旋削によって金属加工品を機械加工する方法
WO2019021410A1 (ja) 2017-07-27 2019-01-31 三菱電機株式会社 切削チップ、切削工具及び加工装置

Also Published As

Publication number Publication date
US11720083B2 (en) 2023-08-08
CN112684761A (zh) 2021-04-20
JP2021067997A (ja) 2021-04-30
US20210116887A1 (en) 2021-04-22
DE102020124347A1 (de) 2021-04-22

Similar Documents

Publication Publication Date Title
TWI512418B (zh) 一種五軸曲面側銑加工系統及其路徑規劃方法
JP6450732B2 (ja) 数値制御装置
JP2009545826A (ja) 工作機械のシステム制御
CN105229543A (zh) 数控装置
JP7409822B2 (ja) 数値制御装置
CN104380217A (zh) 数控装置
JP2018073097A (ja) 工具経路生成装置、工具経路生成方法及び工具経路生成プログラム
JP5886656B2 (ja) 数値制御装置
JP2011123777A (ja) 数値制御データの作成方法
WO2022014535A1 (ja) 数値制御装置、及び制御方法
WO2021014749A1 (ja) Ncプログラム生成システム及びncプログラム生成方法
US11320800B2 (en) Optimization device
WO2020084814A1 (ja) Ncプログラム変換処理方法及び変換用計算機
JP2007233624A (ja) 工作機械の数値制御装置
US11036206B2 (en) Numerical controller
CN116149260A (zh) 3c金属加工中圆弧与圆弧平滑过渡的方法及系统
WO2022024975A1 (ja) 数値制御装置、及び制御方法
WO2023073835A1 (ja) 選択装置、シミュレーション装置、及び通信制御装置
JP6985566B1 (ja) 選択装置、通信制御装置、シミュレーション装置、及び記録媒体
WO2024084706A1 (ja) 加工指令修正装置及び加工指令修正方法
JP7032615B1 (ja) 数値制御装置、及び制御方法
WO2023112305A1 (ja) 数値制御装置
JP7401244B2 (ja) 制御装置、及び制御方法
JP3520142B2 (ja) 象限突起補正パラメータ決定装置
WO2023073782A1 (ja) 数値制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220720

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230829

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230831

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230919

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: 20231121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231221

R150 Certificate of patent or registration of utility model

Ref document number: 7409822

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150