JP2003256009A - Ncプログラムのための最適データ変換方法及び最適データ変換手段を備えた数値制御工作機械 - Google Patents

Ncプログラムのための最適データ変換方法及び最適データ変換手段を備えた数値制御工作機械

Info

Publication number
JP2003256009A
JP2003256009A JP2002052662A JP2002052662A JP2003256009A JP 2003256009 A JP2003256009 A JP 2003256009A JP 2002052662 A JP2002052662 A JP 2002052662A JP 2002052662 A JP2002052662 A JP 2002052662A JP 2003256009 A JP2003256009 A JP 2003256009A
Authority
JP
Japan
Prior art keywords
program
tool
processing
conversion
electronic cam
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.)
Granted
Application number
JP2002052662A
Other languages
English (en)
Other versions
JP3904945B2 (ja
JP2003256009A5 (ja
Inventor
Tetsuya Sugiyama
哲也 杉山
Takehisa Kajiyama
武久 梶山
Akihide Takeshita
晶英 竹下
Kuniyuki Yazaki
訓之 矢崎
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.)
Star Micronics Co Ltd
Original Assignee
Star Micronics 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 Star Micronics Co Ltd filed Critical Star Micronics Co Ltd
Priority to JP2002052662A priority Critical patent/JP3904945B2/ja
Priority to US10/373,055 priority patent/US6909937B2/en
Priority to DE60320164T priority patent/DE60320164T2/de
Priority to EP03251170A priority patent/EP1341066B1/en
Publication of JP2003256009A publication Critical patent/JP2003256009A/ja
Priority to US11/124,859 priority patent/US7016760B2/en
Publication of JP2003256009A5 publication Critical patent/JP2003256009A5/ja
Application granted granted Critical
Publication of JP3904945B2 publication Critical patent/JP3904945B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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/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/34Director, elements to supervisory
    • G05B2219/34343Generation of electronic cam data from nc program
    • 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)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)

Abstract

(57)【要約】 【課題】従来、NCプログラムを作成する上で補助ツー
ルが整備され、これを使用する方法につき一定の教育が
されているという前提条件で一定レベルのNCプログラ
ムが作成され得る。しかしながら、出来たプログラムそ
のものは、非常に画一的にコーディングされるものであ
った為、ワークの加工時間が延びる、加工部品の単価が
上昇する、加工部品の精度を十分に得られない、若しく
は得られるとしてもその為の労力が過大になる、ひいて
は機械寿命を短くさせるなどの懸念があった。 【解決手段】出来上がったNCプログラムを、それぞれ
のファクターから評価を行うようにし、その評価結果に
基づき、NCプログラムが最適になるように自動的に再
編集されるようにする。 【効果】エキスパート、初心者の別なく、ワーク加工時
間を最短化、加工部品の精度を向上、機械寿命の延命化
を図ることが出来るように加工を行える数値制御工作機
械が得られる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、数値制御工作機
械およびプログラムに関し、更に詳しくは、工具あるい
は主軸を移動させるべく記憶されるNCプログラムが、
目的の加工をよりスムーズに、あるいは精度良く行うべ
く変換を行うようにした数値制御工作機械およびプログ
ラムに関する。
【0002】
【従来の技術】近年の技術進歩により、NCプログラム
を予め作成した上で、これを数値制御工作機械にロード
し、ワークあるいは工具に所望の動きをさせるようにし
て加工部品を製造することが現在行われている。数値制
御工作機械の登場当初は、NCプログラムの作成は、完
全に人手に委ねられており、人間がGコードや機械固有
のMコード等NCコードを把握した上で、人間の思考力
あるいは、経験などに基づき行われていた。このように
人手による行為の為に、プログラム作成に対しての習熟
度合いや、思考力の違い、注意能力の差、思考性向の相
違などによって、出来上がるプログラムそのものが、作
り手の能力あるいは性格を反映しているものになってい
た。
【0003】一方、最近では、更なる技術進歩により、
特開平7−168612号公報に示されるように、CA
Dシステムにより図面を作成し、このCADシステムに
て直接NCプログラムを自動的に作成することや、ある
いは、CADシステムとは別のNCプログラム作成支援
システムに、作成されたCAD図面データを取りこんで
NCプログラムを作成することも行われている。勿論、
単に、図面データを上記両システムに投入するだけでN
Cプログラムが作成されるわけではなく、素材の種類あ
るいは、送り速度などの諸条件をNCプログラム作成時
に、上記システムに対して入力するなどの作業が必要に
なっている。このようになったことによって、NCプロ
グラムの作り手の能力の別なくNCプログラムの作成が
可能になっている。
【0004】
【発明が解決しようとする課題】ところで、このような
数値制御工作機械を使用して加工部品を製造し、最終消
費者に対して商品を提供している数値制御工作機械のユ
ーザーは、市場から、多品種少量の生産を次々に切り替
えて実施することを要求されている。この要求を満足す
るという点からは、従来のNCプログラムの作成方法あ
るいは、数値制御工作機械では、十分に満足出来るもの
になっていると言えず、未だ、改良の余地があった。
【0005】つまり、ワークを加工する上では、ワーク
あるいは工具を必ずしもエキスパートのNCプログラム
作成者が作ったものほどは最適に数値制御工作機械を動
作させるものになっているとは言えなかった。従来の技
術にあっては、上記のようにNCプログラムを作成する
上で補助ツールが整備され、このツールを使用する方法
につき一定の教育がされているという前提条件にて一定
のレベルのNCプログラムが作成され得る。しかしなが
ら、出来たプログラムそのものは、非常に画一的にコー
ディングされるものであった為である。この結果とし
て、ワークの加工時間が延びる、加工部品の単価が上昇
する、加工部品の精度を十分に得られない、若しくは得
られるとしてもその為の労力が過大になる、ひいては機
械寿命を短くさせるなどの懸念があった。
【0006】本発明は、このような問題点を解決する為
に為されたもので、これらの副次的な問題点を解消する
ことは勿論、どのような作業者がNCプログラムを作っ
たとしてもエキスパートの作業者が作ったのと同等のN
Cプログラムが得られるようにしたNCプログラムのた
めの最適データ変換方法及び最適データ変換手段を備え
た数値制御工作機械を提供することを目的とする。
【0007】
【課題を解決するための手段】本発明に係るNCプログ
ラムのための最適データ変換方法は、数値制御工作機械
にロードされて該機械を動作させるNCプログラムを作
成する第1のStepと、該プログラムの変換の検討が
必要な箇所及び/又はプログラムにおける指令位置変更
の検討が必要な箇所を指定する第2のStepと、上記
プログラムを所定の記憶素子に読み込む第3のStep
と、記憶素子に読み込まれた上記プログラムにおいて指
定された箇所の変換可否の検討及び/又はプログラムに
おける指令位置変更可否の検討を行う第4のStep
と、該検討結果が可となった場合には、上記プログラム
において指定された箇所の変換及び/又はプログラムに
おける指令位置変更を実行し、機械稼動用プログラムフ
ァイルの作成を行う第5のStepとを備えることを特
徴としている。
【0008】又、本発明に係るNCプログラムの為の最
適データ変換方法を、更に具体的にすると、数値制御工
作機械にロードされて該機械を動作させるNCプログラ
ムを作成する第1のStepと、所定パラメータに対す
る位置の関係を定めた電子カムデータへの変換を行うべ
きワーク又は工具の所定の作業を上記プログラムの作成
中に予め指定する第2のStepと、該プログラムを所
定の記憶素子に読み込む第3のStepと、記憶素子に
読み込まれたプログラムに対して上記指定作業を検索し
電子カムデータへの変換可否を検討する第4のStep
と、該検討結果が可となった場合には、該抽出されたワ
ーク又は工具の動作の記述に従い仮想的にワーク又は工
具を動作させてパラメータと位置の関係を定めて電子カ
ムデータに作成する第5のStepと、該Stepによ
り得られた電子カムデータを記憶するテーブルを作成す
る第6のStepと、上記NCプログラムにおいて、こ
の電子カムデータに変換された箇所を上記テーブルを参
照するコマンドと置換する第7のStepとを備えるこ
とを特徴としている。
【0009】又、本発明に係るNCプログラムのための
最適データ変換方法を、更に具体的にすると、数値制御
工作機械にロードされて該機械を動作させるNCプログ
ラムを作成する第1のStepと、上記プログラムにお
ける工具選択指令位置変更の検討が必要な箇所を指定す
る第2のStepと、該プログラムを所定の記憶素子に
読み込む第3のStepと、記憶素子に読み込まれた上
記プログラムにおいて工具選択指令位置を変更すること
により選択された工具での作業時間が短縮されるか否か
につき工具選択指令位置変更可否の検討を行う第4のS
tepと、該検討結果が可となった場合には、上記プロ
グラムにおける工具選択指令位置変更を実行し、機械稼
動用プログラムファイルの作成を行う第5のStepと
を備えることを特徴としている。
【0010】一方、本発明に係る数値制御工作機械は、
数値制御工作機械にロードされて該機械を動作させるN
Cプログラムと、該プログラムの変換の検討が必要な箇
所及び/又はプログラムにおける指令位置変更の検討が
必要な箇所を指定する検討必要位置指定手段と、該指定
手段による指定が含まれた上記NCプログラムを記憶す
るメモリー手段と、該メモリー手段に読み込まれた上記
NCプログラムにおいて指定された箇所を最適化する変
換可否の検討及び/又は指令位置変更可否の判定を行う
可否判定手段と、該検討結果が可となった場合には、上
記プログラムにおいて指定された箇所の変換及び/又は
指令位置変更を実行し、この変換及び/又は変更結果に
基づき機械を稼動させる数値制御部とを備えることを特
徴としている。
【0011】上述した、数値制御工作機械の構成の一部
を具体化すると、工具又はワークの位置に関する補正値
情報を収集する補正値情報収集手段を備え、補正値情報
収集手段は、上記機械稼動用プログラムファイル作成手
段によるNCプログラムの変更前に上記NCプログラム
に対して補正値情報を反映させるようにしたことを特徴
としている。
【0012】
【発明の実施の形態】以下、図面を参照しながら本発明
による工作機械及びその制御装置の好適な実施形態につ
いて詳細に説明する。図1は、本発明の実施形態に係る
数値制御工作機械の構成を示すブロック図である。図1
において、工作機械1は、主軸回転用モータ11、工具
移動用モータ21、被加工物移動用モータ31、背面主
軸移動用モータ41、背面主軸回転用モータ61及び各
モータ11,21,31,41、61の駆動を制御する
ための制御ユニット部51を有している。
【0013】主軸回転用モータ11は、被加工物が保持
可能に構成された主軸(図示せず)を回転駆動させるた
めのもので、駆動回路12及び主軸回転制御回路13等
を介して制御ユニット部51に接続されている。また、
主軸回転用モータ11には、主軸回転用モータ11の回
転を検知するためのパルスエンコーダ14が設けられて
いる。このパルスエンコーダ14の出力は制御ユニット
部51及び速度信号生成回路15に接続されており、パ
ルスエンコーダ14から出力される回転検出信号が制御
ユニット部51及び速度信号生成回路15に入力され
る。パルスエンコーダ14は、主軸回転用モータ11
(主軸)の回転に同期して回転検出信号を発生し、制御
ユニット部51及び速度信号生成回路15に出力する。
速度信号生成回路15は、パルスエンコーダ14から出
力される回転検出信号を主軸回転用モータ11(主軸)
の回転速度をあらわす主軸回転速度信号に変換する。速
度信号生成回路15の出力は主軸回転制御回路13に接
続されており、変換された主軸回転速度信号が主軸回転
制御回路13に入力される。
【0014】主軸回転制御回路13は、後述するクロッ
ク信号発生回路にて発生して出力されたクロック信号を
基準にして所望の回転速度となるように被加工物(主
軸)の回転を制御するためのものであり、制御ユニット
部51から出力される主軸回転速度指令信号と、速度信
号生成回路15から出力される主軸回転速度信号とを比
較して、その差に応じた制御信号をクロック信号を基準
にして生成する。主軸回転制御回路13にて生成された
制御信号は、駆動回路12に出力される。
【0015】駆動回路12は、主軸回転制御回路13か
ら出力された制御信号に基づいて、主軸回転用モータ1
1(主軸)の回転速度が後述する主軸回転速度指令値と
なるように主軸回転用モータ11への供給電力を制御す
る。これら駆動回路12、主軸回転制御回路13、及
び、速度信号生成回路15は、主軸回転用モータ11
(主軸)の回転速度のフィードバック制御系を構成して
いる。
【0016】工具移動用モータ21は、被加工物を加工
するための工具(旋削加工用バイト等)を、たとえば主
軸回転用モータ11(主軸)の回転中心軸に対して直交
する方向(X軸方向、Y軸方向)、又は主軸と平行な方
向(Z軸方向)に移動させるためのもので、駆動回路2
2及び工具送り制御回路23を介して制御ユニット部5
1に接続されている。また、工具移動用モータ21に
は、工具移動用モータ21の回転を検出するパルスエン
コーダ24が設けられている。このパルスエンコーダ2
4の出力は工具送り制御回路23に接続されており、パ
ルスエンコーダ24の回転検出信号が工具送り制御回路
23に入力される。パルスエンコーダ24は、工具移動
用モータ21の所定回転角度毎に回転位置信号を発生し
て、工具送り制御回路23に出力する。
【0017】工具送り制御回路23は、パルスエンコー
ダ24から出力された回転位置信号に基づいて実際の工
具の移動位置を認識すると共に、認識した実際の工具の
移動位置と後述する制御ユニット部51から出力される
工具位置指令信号とを比較して、この比較結果に基づい
て工具駆動信号を生成する。工具送り制御回路23にて
生成された工具駆動信号は、駆動回路22に出力され
る。駆動回路22は、工具送り制御回路23から出力さ
れた工具駆動信号に基づいて工具移動用モータ21への
供給電力を制御する。これら、駆動回路22及び工具送
り制御回路23は、工具の移動位置のフィードバック制
御系を構成している。
【0018】被加工物移動用モータ31は、被加工物
を、たとえば主軸回転用モータ11(主軸)の回転中心
軸に対して平行な方向(Z軸方向)に移動させるための
もので、駆動回路32及び被加工物送り制御回路33を
介して制御ユニット部51に接続されている。また、被
加工物移動用モータ31には、被加工物移動用モータ3
1の回転を検出するパルスエンコーダ34が設けられて
いる。このパルスエンコーダ34の出力は被加工物送り
制御回路33に接続されており、パルスエンコーダ34
の回転検出信号が被加工物送り制御回路33に入力され
る。パルスエンコーダ34は、被加工物移動用モータ3
1の所定回転角度毎に回転検出信号を発生して、被加工
物送り制御回路33に出力する。
【0019】被加工物送り制御回路33は、パルスエン
コーダ34から出力された回転検出信号に基づいて実際
の被加工物の移動位置を認識すると共に、認識した実際
の被加工物の移動位置と制御ユニット部51から出力さ
れる被加工物位置指令信号とを比較して、この比較結果
に基づいて被加工物駆動信号を生成する。所定回転角度
毎に生成された被加工物駆動信号は、駆動回路32に出
力される。駆動回路32は、所定回転角度毎に出力され
た被加工物駆動信号に基づいて被加工物移動用モータ3
1への供給電力を制御する。これら、駆動回路32及び
所定回転角度毎には、被加工物の移動位置のフィードバ
ック制御系を構成している。
【0020】背面主軸台移動用モータ41は、背面主軸
回転用モータ61を、たとえば主軸回転用モータ11
(主軸)の回転中心軸に対して平行な方向(Z軸方向)
又は、これと直交する方向(X軸方向)に移動させるた
めのもので、駆動回路42及び背面主軸台送り制御回路
43を介して制御ユニット部51に接続されている。ま
た、背面主軸台移動用モータ41には、背面主軸台移動
用モータ41の回転を検出するパルスエンコーダ44が
設けられている。このパルスエンコーダ44の出力は背
面主軸台送り制御回路43に接続されており、パルスエ
ンコーダ44の回転検出信号が背面主軸台送り制御回路
43に入力される。パルスエンコーダ44は、背面主軸
台移動用モータ41の所定回転角度毎に回転位置信号を
発生して、背面主軸台送り制御回路43に出力する。
【0021】背面主軸台送り制御回路43は、パルスエ
ンコーダ44から出力された回転位置信号に基づいて実
際の背面主軸台の移動位置を認識すると共に、認識した
実際の背面主軸台の移動位置と後述する制御ユニット部
51から出力される背面主軸台位置指令信号とを比較し
て、この比較結果に基づいて背面主軸台駆動信号を生成
する。背面主軸台送り制御回路43にて生成された背面
主軸台駆動信号は、駆動回路42に出力される。駆動回
路42は、背面主軸台送り制御回路43から出力された
駆動信号に基づいて背面主軸台移動用モータ41への供
給電力を制御する。これら、駆動回路42及び穴加工用
工具送り制御回路43は、背面主軸台の移動位置のフィ
ードバック制御系を構成している。
【0022】背面主軸回転用モータ61は、被加工物を
保持可能に構成された背面主軸(図示せず)を回転駆動
させるためのもので、駆動回路62及び背面主軸回転制
御回路63等を介して制御ユニット部51に接続されて
いる。また、背面主軸回転用モータ61には、背面主軸
回転用モータ61の回転を検知するためのパルスエンコ
ーダ64が設けられている。このパルスエンコーダ64
の出力は制御ユニット部51及び速度信号生成回路65
に接続されており、パルスエンコーダ64から出力され
る回転検出信号が制御ユニット部51及び速度信号生成
回路65に入力される。パルスエンコーダ64は、背面
主軸回転用モータ61(背面主軸)の回転に同期して回
転検出信号を発生し、制御ユニット部51及び速度信号
生成回路65に出力する。速度信号生成回路65は、パ
ルスエンコーダ64から出力される回転検出信号を背面
主軸回転用モータ61(背面主軸)の回転速度をあらわ
す背面主軸回転速度信号に変換する。速度信号生成回路
65の出力は背面主軸回転制御回路63に接続されてお
り、変換された背面主軸回転速度信号が背面主軸回転制
御回路63に入力される。
【0023】背面主軸回転制御回路63は、後述するク
ロック信号発生回路にて発生して出力されたクロック信
号を基準にして所望の回転速度となるように被加工物
(背面主軸)の回転を制御するためのものであり、制御
ユニット部51から出力される背面主軸回転速度指令信
号と、速度信号生成回路65から出力される背面主軸回
転速度信号とを比較して、その差に応じた制御信号をク
ロック信号を基準にして生成する。背面主軸回転制御回
路63にて生成された制御信号は、駆動回路62に出力
される。駆動回路62は、背面主軸回転制御回路63か
ら出力された制御信号に基づいて、背面主軸回転用モー
タ61(背面主軸)の回転速度が後述する背面主軸回転
速度指令値となるように背面主軸回転用モータ61への
供給電力を制御する。これら駆動回路62、背面主軸回
転制御回路63、及び、速度信号生成回路65は、背面
主軸回転用モータ61(背面主軸)の回転速度のフィー
ドバック制御系を構成している。
【0024】制御ユニット部51は、図1に示されるよ
うに、中央演算ユニット52、パルス信号発生回路53
a、53b、クロック信号発生回路54、分割タイミン
グ信号発生回路55、NC部用RAM56、ROM5
7、PC部用RAM58等を有している。
【0025】中央演算ユニット52は、制御ユニット部
51全体の信号処理等をつかさどる演算部である。中央
演算ユニット52は、周知のマルチプロセッシング(mu
lti-processing)処理、すなわち多重処理を行う。多重
処理は、複数の仕事(プログラム)を記憶しておき、こ
れら複数のプログラムを短い時間で切り換えながら実行
し、見かけ上、複数のプログラムが同時処理されている
ようにするもので、時分割処理するものや、各々の仕事
に優先順位を付しておき優先順位が高い順に処理を切り
換えながらタスク処理するもの等が知られている。
【0026】パルス信号発生回路53a、53bは、そ
れぞれ、パルスエンコーダ14、64に接続されてお
り、パルスエンコーダ14、64のそれぞれから出力さ
れた回転検出信号がインターフェース等を介して入力さ
れる。この入力された回転検出信号に基づいて、所定回
転角度毎にパルス信号を発生するように構成されてい
る。また、パルス信号発生回路53a、53bは、中央
演算ユニット52にも接続されており、所定回転角度毎
に発生するパルス信号を中央演算ユニット52に出力す
るようにも構成されている。本実施形態において、パル
ス信号発生回路53a、53bは、主軸回転用モータ1
1(主軸)あるいは、背面主軸回転用モータ61(背面
主軸)が一回転する間に、主軸回転用モータ11(主
軸)、背面主軸回転用モータ(背面主軸)に同期して等
間隔で4096個のパルス信号が出力されるように構成
されている。
【0027】クロック信号発生回路54は、中央演算ユ
ニット52から出力される所定の指令信号を受けて、所
定の周期、たとえば0.25ミリ秒周期のクロック信号
を生成して出力するように構成されており、クロック信
号発生回路54にて生成されたクロック信号は分割タイ
ミング信号発生回路55に出力される。分割タイミング
信号発生回路55は、クロック信号発生回路54から出
力されたクロック信号の発生回数をカウントするように
構成されており、カウントの結果たとえば1ミリ秒経過
する毎に分割タイミング信号を生成して中央演算ユニッ
ト52に出力する。したがって、分割タイミング信号発
生回路55は、1ミリ秒周期の分割タイミング信号を後
述する割込みタイミング信号として中央演算ユニット5
2に出力することになる。なお、クロック信号及び分割
タイミング信号の周期は上述した数値に限られることな
く、中央演算ユニット52の処理能力、パルスエンコー
ダ24,34,44の分解能、各モータ11,21,3
1,41の性能等を考慮して適宜設定可能である。
【0028】NC部用RAM56は、中央演算ユニット
52における各種演算の結果を読み出し可能に一時的に
記憶するように構成されている。このNC部用RAM5
6は、工作機械1が、NCプログラム(機械稼動用プロ
グラム)に基づいて実際の加工動作を行う時に必要とさ
れる、NCプログラムを含むデータの全てを格納してい
る。その一部に、第1のチャンネル加工手順記憶部56
aと、第2のチャンネル加工手順記憶部56bと、第3
のチャンネル加工手順記憶部56c、電子カムデータテ
ーブル56dとが設けられている。尚、該データテーブ
ルは、所謂電子カム制御を行うために備えられるもので
ある。電子カム制御とは、特開2001−170843
に示されるように、基準軸に取りつけられたパルスエン
コーダが出力するパルス信号により時々刻々の回転位置
データと、基準軸の単位回転位置ごとに対応してそれぞ
れ設定された移動軸の指令位置データとから時々刻々の
移動軸の指令データを生成している。この移動指令デー
タと回転位置データとから回転物の回転速度に同期する
移動軸の指令速度データを生成して、生成した移動指令
データと指令速度データに基づいて工具の位置を制御す
ることである。
【0029】ここで、第1のチャンネル加工手順記憶部
56aと、第2のチャンネル加工手順記憶部56bと、
第3のチャンネル加工手順記憶部56cに記憶されたN
Cプログラムにより、実際に作動させられる部分を図2
に示す。第1のチャンネル加工手順記憶部56aに記憶
されたNCプログラムにより、主軸回転用モータ11、
被加工物送り用モータ31(不図示)、工具送りモータ
21(不図示)が制御される。これによって、主軸S1
は、矢印で示すZ1軸方向に移動制御されると共にC1
回転方向に主軸回転が制御される。一方、工具TS1
は、矢印で示すX1軸、Y1軸方向に移動制御される。
チャンネル1では、主軸台の移動制御、回転制御又は、
工具TS3を支持する刃物台の各矢印方向の移動制御、
工具TS3の中に回転工具が含まれていて、その制御が
必要であるものの場合は回転等の制御を行う。第2のチ
ャンネル加工手順記憶部56bに記憶されたNCプログ
ラムにより、背面主軸回転モータ61、背面主軸移動用
モータ41(不図示)、工具TS2の回転が制御され
る。これによって、背面主軸S2は、矢印で示すZ2軸
方向、X2軸方向に移動制御されると共にC2回転方向
に背面主軸回転が制御される。一方工具TS2そのもの
は、固定刃物台に設置されるものであって、バイトなど
の非可動のものあるいは、ドリルなどの回転可能なもの
を取りつけ可能としているものである。ドリルなどの回
転可能なものを使う場合には、第2のチャンネル加工手
順記憶部56bに記憶されたNCプログラムにより、回
転が制御される。第3のチャンネル加工手順記憶部56
cに記憶されたNCプログラムにより、工具送りモータ
21(不図示)が制御される。これによって、工具TS
3は、矢印で示すX3,Y3,Z3軸方向に移動制御さ
れる。チャンネル3では、この工具TS3を支持する刃
物台の移動制御あるいは、保持される工具の制御が必要
な場合に回転等の制御を行う。尚、この実施の形態で
は、工具TS3は、チャンネル3に、TS2はチャンネ
ル2に、TS1はチャンネル1に割り付けられている
が、TS1あるいはTS3は、どのチャンネルで制御し
ても良く、必要に応じて適宜工具のチャンネル割り当て
は変更できる。同様に主軸、背面主軸もチャンネル割り
当ては動的に変更できる。
【0030】NC部用RAM56の電子カムデータテー
ブル記憶部56dは、図3に示されるように、それぞれ
に識別番号Nが付与された複数の電子カムデータテーブ
ルを記憶するものとなっている。識別番号Nが付与され
た各々の電子カムデータテーブルは、主軸回転用モータ
11(主軸)の所定の累積回転数(A)毎に対応して設
定された被加工物2の位置データ(Z)及び工具3の位
置データ(X)の点群を記憶しておく為のものである。
それぞれのカムデータテーブルには、加工終了を表す終
了コードがそれぞれ記憶されている。なお、所定の累積
回転数(A)は、主軸回転用モータ11(主軸)の所定
回転角度毎(累積回転角度毎)に対応させておいてもよ
い。この場合、記憶容量が多くなる。ROM57は、各
種処理プログラムを記憶する記憶部であって、たとえば
ねじ切り加工を行う時の、所定時間間隔毎、例えば、1
ミリ秒毎における被加工物2の移動位置及び工具3の移
動位置を確定するための演算プログラムや、穴加工や切
削加工等を行う時の、主軸回転用モータ11(主軸)の
所定回転角度毎における被加工物、工具、及び穴加工用
工具の移動位置を確定するための演算プログラムを記憶
している。
【0031】また、中央演算ユニット52は、ROM5
7内に記憶されたプログラムに基づいて、パルス信号発
生回路53から出力されたパルス信号の発生回数をカウ
ントし、カウント結果に基づいて主軸回転用モータ11
(主軸)の累積回転数あるいは、累積回転角を算出す
る。
【0032】PC部用RAM58は、中央演算ユニット
52における各種演算の結果を読み出し可能に一時的に
記憶するように構成されている。このPC部用RAM5
8は、最適データ変換プログラム記憶部58aが、プロ
グラム作成ツールあるいは人手により作成されたNCプ
ログラムを変換若しくは変更する時に、参照するデータ
の全てを格納している。その一部に、電子カムデータ記
憶テーブル58bと、機械固有情報記憶部58cと、N
Cプログラム記憶部58dとが設けられている。尚、該
部に記憶されるNCプログラムファイルそのものは、プ
ログラム作成ツールあるいは、人手により予め作成され
たものである。(請求項1の第1のStepに相当)こ
のようにして作成されたNCプログラムファイルは、プ
ログラム作成ツールに準備される数値制御装置との通信
機能あるいは、フレキシブルディスクなどの媒体を利用
して数値制御装置に備えられるディスク読込装置を利用
して部品の加工に先立ちロードされる。
【0033】最適データ変換プログラム記憶部58aに
は、本発明の最適データ変換プログラムが格納されてい
る。電子カムデータ記憶テーブル58bには、最適デー
タ変換プログラムを実行したことによりNCプログラム
が電子カムデータ化された際、作成データを図3に示さ
れる形態で格納している。機械固有情報記憶部58cに
は、工具補正値、NCプログラムに記述されるコマンド
の実行に必要な時間や動作条件など最適データ変換プロ
グラムが実行の時に参照するデータを格納している。N
Cプログラム記憶部58dには、最適データ変換プログ
ラムの処理対象となるNCプログラムを格納している。
【0034】次に、数値制御工作機械、特に数値制御装
置内部で実行される本発明を含む制御について、説明を
する。本発明を含む制御を大まかに示すメインフローは
図4に示される通りである。まず、始めに、StepA
において、時間計測モジュールを実行する。この時間計
測モジュールでは、NCコードで書かれているNC装置
に記憶されているNCプログラムをシミュレートして、
プログラム情報を取得保持する。具体的には、チャンネ
ル1,2,3にて実行されるNCプログラムを最初から
最後まで実行し、実行に要した時間を各ブロック毎に推
定演算する。時間計測モジュールが測定するのは、NC
プログラム上に記述されている待ち合せ処理の間の時
間、工具選択時間である。時間計測モジュールは、NC
装置が、元々装備しているデータテーブルを利用して計
算を行う。このデータテーブルは、各モータの加速度
や、工具又はワークの位置に関する補正情報などの、そ
れぞれについてのテーブルである。
【0035】時間計測モジュールは、NCプログラムか
ら、工具の座標値や、工具の送り速度や、主軸の回転速
度、移動方法等を取得する。これらの情報を使用して、
工具の移動距離、各座標での移動速度、を算出し工具の
移動軌跡を求める。前記、工具の移動軌跡から、前記各
モータの加速度を使用して移動時間を求める。NCプロ
グラムに記載されている工具の座標値には、工具又はワ
ークの位置に関する補正情報が含まれていない。そのた
め、工具の移動距離算出時に、プログラム上では記載さ
れていない工具又はワークの位置に関する補正情報を加
えて計算を行う。
【0036】次に、StepA1において、StepA
にて測定された時間データを、以降のStepでの処理
に備えて読み込みを行う。StepBでは、NCプログ
ラム記憶部58dに対して最適データ変換を行いたいN
Cプログラムを格納するべく、NCプログラムファイル
の読み込みを行う(請求項1の第3のStepに相
当)。ここでの読み込みを行うことにより、実際に加工
を行う為のNCプログラムを作成する元になるプログラ
ムを保持する。つまり、オリジナルを保持することによ
り、変更をプログラム上に検討できるようにする。
【0037】StepCでは、NCプログラム上で同期
加工を行うように指定(請求項1の第2のStepに相
当)されている箇所のうち、電子カムデータを呼び出し
て加工を行った方が、精度の向上、効率の向上あるいは
加工が可能になる箇所を抽出するべく、NCプログラム
を検索し、電子カムデータを呼び出す加工が必要である
箇所があれば、その同期加工の電子カムデータ化を行
う。
【0038】StepDでは、更に、同期加工の電子カ
ムデータ化を行う箇所以外の電子カムデータ化すること
が指定(請求項1の第2のStepに相当)されている
箇所の電子カムデータ化を行う。これは、プログラム作
成ツールから或いは、人手で作成したNCプログラム内
に、始めから電子カムデータを利用した方が良い加工箇
所としてフラグを付与しておき、これを検索して電子カ
ムデータ化を行うものである。加工例としては、ねじ切
りあるいは、タップ加工などが挙げられる。StepE
では、工具選択指令(請求項1の第2のStepに相
当)位置の最適化を行う。これは、NCプログラムに当
初設定された工具選択指令が行われるブロックを基準に
して考えた時に、工具選択指令位置を変更すれば、結果
的に加工時間が短縮できるかを検討し、短縮できるので
あれば、その指令位置を加工時間の短縮に繋がる位置に
変更する。
【0039】StepFでは、工具選択(請求項1の第
2のStepに相当)動作の最適化を行う。ここでは、
他のチャンネルとの関係で見て、自チャンネルの工具の
選択に時間的な余裕がある時には、工具をゆっくり選択
(移動)させるように工具の移動を電子カムデータを利
用して制御する。このようにすることにより、送り用の
ボールネジ、あるいは、刃物台を支持するベアリングな
どに入力されるショック等の負荷を低減させるように
し、工作機械の寿命、加工部品の精度などにとって悪影
響が出ないようにする。
【0040】StepGでは、機械稼動用のプログラム
ファイルを作成を行うと共に、NCプログラム記憶部5
8d、電子カムデータ記憶部58cに記憶されているデ
ータのそれぞれを、第1,2,3チャンネル加工手順記
憶部56a、56b、56cに振り分けて記憶させる一
方、電子カムデータテーブルに転送する。尚、これらの
一連の処理は、数値制御部51の操作パネル(不図示)
に設けられるトランスフォーマボタン59によって起動
する。更に、上記StepCからGのそれぞれの処理に
ついて詳述する。これらStepCからGの処理中に本
発明の主要となる部分の構成が具現化されている。
【0041】1.1.StepCの処理の説明 図5(A)は,同期加工の電子データ化の処理を簡略的
に示すメインフローである。ここの処理は、大まかに
は、作成されたNCプログラム内に、電子カムデータを
利用した同期加工を行う方が好ましいブロックを検出
し、そのブロックを電子カムデータを利用するプログラ
ムにプログラム化するものである。このようにすること
によって、NCプログラムでは、チャンネル間の同期が
十分に取れなく、カッターマークが生じるなどの不具合
が生じる加工、あるいはNCプログラムでは実現不可能
な加工があることに対して、これらの問題を解消できる
利点がある。本図フローチャートの説明を行う。
【0042】Step1では、プログラムの開始に先立
ち、処理に用いる変数である行番号B並びに、チャンネ
ルCHを、それぞれ、B=0、CH=1にリセットす
る。次に、Step2では、同期加工における電子カム
データへの変換可能箇所を検索する処理を行う。この処
理の結果Step3において変換可能箇所の存在有無を
判定する。判定がY、つまり、変換可能箇所が存在する
場合には、Step4において、該箇所の変換開始行番
号A、変換終了行番号Bを取得する。Step5では、
更に、取得された行番号A,行番号Bの間に記述された
NCプログラムを元にして制御軸が動作する軌跡の電子
カムデータ化を行う。このデータ化が済んだならば、処
理がまだ済んでいない行番号Bよりも後の行のNCプロ
グラムを対象に、上述と同様の処理を繰り返す。一方、
変換可能箇所が存在しないとしてStep3の判定がN
となった時には、全ての処理が完了したので、処理を終
了し図4に示されるメインフローに処理を戻す。これら
の処理については、後ほど詳述する。
【0043】全体として、このように加工方法を変換す
ることにより、図5(B)に示される加工において、加
工時間の短縮を図りつつも、カッターマークが残ること
なく製品を加工することが出来る効果が得られる。つま
り、段付き棒71の形成と同時に溝75を形成したい場
合に、加工時間の短縮要求を満足するためには、複数の
刃物に順序を付けて加工を行う同期加工を行えば良い。
例えば、この場合には、工具74が段付き部72の位置
に来た時に、溝75を加工する工具73が加工を始める
同期加工が行われるようにNCプログラムが作成されれ
ば目的の形状が得られる。
【0044】しかしながら、NCプログラムでは、通常
このような作業を行わせる場合には、待ち合せ処理とい
うものを利用することになり、工具74が実線で図示さ
れる位置に停止した状態が瞬間的にではあるが維持され
る為、図5(C)のA部拡大図に示されるように段付き
部72に沿った位置に凹みが形成されることになる。こ
の凹み分を許容する図面公差のものを加工している場合
には、これで問題ないが、許容しない場合には、この加
工方法を用いることは出来ない。また、同期させる加工
位置を変えた場合、二点鎖線で示される工具74'の位
置などでは、対向刃物で加工する場合には、工具73か
らの反力が工具74'の切込み量を増やす為、其の部分
にすじ状の凹みが出来てしまうため、これが許容されな
い場合には、同期させる加工位置を変更するということ
も出来ない。
【0045】このような場合に、同期加工の電子データ
化の処理を行うことにより、実線で図示の工具74は、
段付き部72における小径の部分からわずかに離れた位
置から大径の側に向けて退避移動する期間に、言い換え
ると、その小径から大径の部分の間の位置に一瞬たりと
も留まることなく移動している最中に、そのタイミング
に同期させて工具73を突き出させて溝を加工すること
が出来る為、拡大図に示される凹みが形成されることな
く、両者の加工が行える。このように工具74が退避す
る位置に対して工具73の切りこみを同期させるのは、
上述のように工具73の切込みによって工具74の切込
み量が変化することを避けるようにするためである。
【0046】1.2.同期加工の電子カムデータに変換
する箇所の検索の説明 ここで、図5のStep2に示される同期加工における
電子カムデータへの変換可能箇所を検索する処理に関し
て、図6を用いて更に詳細に説明する。まず、メインと
なる処理の流れから説明する。検索処理の開始後に、S
tep1において現在記憶されている行番号B、カレン
トチャンネルCHを読み込み、検索対象箇所を指定す
る。Step2では、カレントチャンネルCHにおい
て、行番号B+1行以降での最初のタイミング指令行T
を検索し記憶する処理を行う(タイミング指令行Tは、
NCプログラムの作成段階で、プログラマーが同期加工
を行いたい位置に対して、他のチャンネルの同期させた
い箇所に同一のタイミングコードを記述することで、動
機加工を行うようにさせるためのコマンドを含む行であ
る。コマンドの具体的な記述としては、例えば「tim
ing=1」などのように記述し、同一タイミング番号
のもの同士を同期させる。請求項1の第2のStep相
当)。Step3では、Step2においてタイミング
指令行Tの取得に成功したか否かの判定を行う。成功し
た場合には、そのままStep4に行き、タイミング指
令行Tを挟む前後の待ち合せ行A、Bを検索し記憶す
る。そこで更に、Step5において、行番号A,B間
は同期加工中であるか否かについての判定を行う。この
判定を行うことによりプログラマーが誤ってタイミング
指令行Tを記述した場合であっても、誤って行A,B間
が電子カムデータ化されることが防がれる。Step5
での判定がNになった場合、つまり、同期加工中ではな
い場合又はプログラマーにより誤ってタイミング指令行
Tが記述されていた場合には、行番号B+1以降のブロ
ックに対して、Step2以降の処理を行うべく、St
ep2に処理を戻している。判定が同期加工中を示すY
であった場合には、更に、Step6にて記憶された行
番号A,Bの区間に電子カムデータに変換出来ないもの
があるか否かについて判定する(請求項1の第4のSt
ep相当)。この電子カムデータに変換できないものと
は、具体的には、主軸の回転数変化を行わせる指令、潤
滑液の噴射命令などの補機動作を行わせる所謂Mコード
などの指令である。電子カムデータに変換出来ないもの
が無い、つまり判定がNである場合には、続いて、St
ep7において、現在カレントチャンネルCHを解析中
であるか否かについての判定を行う。ここでの判定がY
である場合には、そのままStep8に進み、カレント
チャンネルCHでのタイミング指令行Tを挟む待ち合わ
せ処理行A,Bに対応した他のチャンネルのタイミング
指令行Tを挟む待ち合わせ処理行A,Bを全て検索し存
在すれば記憶する。次に、Step9において同じタイ
ミングコードが一つも存在しないか否かについての判定
を行う。Nの判定、つまり同じタイミングコードが一つ
以上存在する場合には、カレントチャンネルCH以外の
行A,BのブロックにStep6以降の処理を繰り返
す。この処理の場合、カレントチャンネルCHの行A,
Bを対象にした処理ではないので、Step7における
判定は、必ずNになり、Step10へと処理が進む。
Step10では、電子カムデータ化すべき加工を行う
箇所が存在したことを意味する存在フラグをONにし、
同時に、Step6をNの判定でかつStep7をYの
判定で抜けた行A,Bを記憶する。この後Step10
で記憶された行A、Bが最後のA,Bであるか否かの判
定を行う。Yの判定がされた場合には、Step12に
進み、存在フラグON、カレントチャンネルCH、St
ep10で記憶された全ての行番号A,Bを記憶する。
これらの値は最終的に、同期加工の電子カムデータ化処
理に渡される。
【0047】一方、Step6において、判定がY、つ
まり、記憶した行番号A,Bの間の加工が電子カムデー
タに変換できないものであった場合には、Step13
に進み、現在カレントチャンネルCHを解析中であるの
か否かの判定を行う。判定がY、つまり、カレントチャ
ンネルCHを解析中であった場合には、タイミング指令
行Tを含む行A,B間の加工は電子カムデータに変換で
きないので、改めて電子カムデータに変換出来る加工を
検出するべく処理をStep2に戻す。判定がN、つま
り、カレントチャンネルCHを解析中では無い場合、言
い換えると、複数の行A,Bの組が検索抽出された場合
(Step9の判定がN)には、Step14に進み、
判定の対象である行A,Bの組が最後の組であるか否か
の判定を行う。この判定を行うことによって、検索され
た複数の行A,Bの組の全てがStep6,7,10,
11の処理が為されるようにする。そこで判定がNであ
る場合、再びStep6に戻り上述した処理を繰り返
す。判定がYであった場合は、Step15に進み存在
フラグがONであるか否かの判定を行う。存在フラグが
ONではない場合には再び、Step2からの処理を繰
り返す。又、存在フラグがONである場合には、Ste
p16に進み、存在フラグON、カレントチャンネルC
H、Step10で記憶された全ての行番号A,Bを次
の処理に渡すべく記憶する。尚、Step3にて、判定
がNになった場合には、Step17に進み、次のチャ
ンネルの存在有無を判定する。判定がYとなった場合に
は、Step18に進み次のチャンネルをカレントチャ
ンネルCHに設定し、Step2からの処理を実行す
る。一方、判定がNとなった場合には、次のチャンネル
が存在しないので検索処理を終了する。尚、Step6
において、行A,B間に電子カムデータに変換できない
ものがあるかないかを判定する前に、行A,Bの間にタ
イミングコードが二つ以上存在するか否かの判定を行う
と更に良い。いずれのタイミングコードに対して後に続
く処理を行うかが適切に選択されないため、この段階
で、以降の処理に対する対象から外しておく必要があ
る。又、行A,Bの間に3軸に対する移動指令があるか
否かをも判定しておくと良い。この判定を行うことによ
り、該当するケースで適切に以降の処理がされない可能
性を排除できる。
【0048】繰り返しになるが、上述しているタイミン
グコードとは、タイミング指令行Tに単独で記述される
コマンドであり、Mコード、Gコードなどの他のコマン
ドと併記されない。他のチャンネルの同期させたい箇所
に同一のタイミングコードを記述することで、動機加工
を行うようにさせるためのコマンドである。具体的な記
述としては、例えば「timing=1」などのように
記述し、同一タイミング番号のもの同士を同期させる。
【0049】1.3.同期加工の電子データ化処理につ
いての説明 次に、図7に示される同期加工の電子カムデータ化(図
5Step5にて示される)処理を説明する(請求項1
の第5のStepに相当)。ここでは、まず、Step
1において、図5におけるStep4にて取得されてい
る行A,Bに基づき、それらA,Bの間の行に示される
データ中に、どの制御軸の移動指令がされているかを特
定するべく、いずれの制御軸の移動指令が存在するのか
を調べる。次にStep2において、移動指令が存在す
るものに対して移動指令前の座標位置を取得し保持す
る。これは、行間の情報だけであると電子カムデータの
作成に必要な情報が不足するので、これを防止する為で
ある。Step3では、行A,B間のブロックを順に解
析し要素配列を作成する。つまり、ワークあるいは工具
が移動する軌跡と、移動時の速度を求める処理である。
この際同時に、NCプログラム中に含まれる工具移動指
令に対して、工具刃先位置の補正を行って工具座標を補
正した上で、要素配列の作成処理を行う。このように補
正を同時に行うことにより、NCプログラムを読み込ん
だ段階でも補正処理を行うのと異なり変換処理の時間の
短縮を図ることが出来、利便性が向上する。次にSte
p4では、加減速最適化処理を行う。ここでは、主軸回
転角と関連させた位置即ち点のデータを最適なワーク、
あるいは工具の加減速が為されるように決定する。次に
Step5では、チャンネル間の同期を取る為に、タイ
ミング調整処理を行う。次にStep6では、要素配列
を電子カムデータに変換する。ここでは、上述したよう
に電子カムデータのテーブルを作成すると共に、該テー
ブルに識別番号の付与を行う。Step7では、NCプ
ログラムの修正を行う。つまり、行A,Bの間に書かれ
るプログラムを削除し、行Aの次行に電子カムデータを
呼ぶ為のサイクルコマンドを代入する。このサイクルコ
マンドは、電子カムデータテーブル毎に付与される識別
番号を引数として、電子カムデータテーブルのデータを
参照する。
【0050】2.1.StepDの処理の説明 次に、図4stepDに示される同期以外の電子データ
に変換する箇所の電子データ化への処理について、説明
する。
【0051】この処理におけるメインのルーチンは、図
8の通りである。処理が開始すると、まず、Step1
において、検索する対象を規定する行番号A=0、B=
0、チャンネルCH=1にイニシャライズを行う。次
に、Step2において、同期加工以外の電子カムデー
タに変換する箇所を検索する処理を実行する。この処理
において、電子カムデータに変換すべき箇所が見つけら
れたか否かを判定するべくStep3を実行する。St
ep3の判定がYとなった場合、つまり、変換すべき箇
所が存在した場合には、Step4に進んで変換対象と
してラベリング(後述する)された行A,Bを取得す
る。次に、そのままStep5に進み行A,Bの間に記
述される同期加工以外の加工を指令する箇所の電子カム
データ化の処理を行う。処理終了後には、処理が完了し
た行番号Bを戻り値としてStep2以降を繰り返す。
一方、Step3の判定がNとなった場合、つまり、変
換すべき箇所が存在しない場合には、Step6に進み
チャンネルCHをインクリメントし、次のチャンネルが
検索されるように備える。Step7に進んだら、CH
=4となったか否かを判定し、Yと判定された場合、つ
まり、全てのチャンネルCHのNCプログラムに対する
処理が完了した場合には、処理を終了し、図4のメイン
ルーチンに処理を戻す。Nの判定であった場合には、S
tep8に進み行番号B=0を代入して、改めて次チャ
ンネルCHのNCプログラムに対しての処理を、Ste
p2以降から繰り返す。
【0052】2.2.同期以外の電子カムデータに変換
する箇所の検索処理についての説明(図8Step2) 次に、図9に示される、同期以外の電子カムデータに変
換する箇所の検索処理について、詳細に説明する。ま
ず、処理が開始されると、このサブルーチンを含むメイ
ンのルーチンの側で設定されている行番号BをStep
1にて読み込む。続いて、Step2において、行番号
B+1行以降での最初の電子カムデータ変換開始行Aを
取得する。この変換開始行は、プログラムの作成段階に
おいて、予めラベルが付されたものになっている(ラベ
ルは、NCプログラムの作成段階で、プログラマーが電
子カムデータを利用した加工を行いたい位置に対して、
ラベルとしての意味を持つコードを記述することで、N
Cプログラム部分の電子カムデータ化を行うようにさせ
るためのコメント文である。具体的な記述としては、例
えば「DRILLINGSTART」、「DRILLI
NG END」などのように記述して当該箇所を指定す
る。請求項1の第2のStep相当)。プログラムは、
このラベルを検索することによって、変換開始行Aを抽
出する。次にStep3に進み、変換開始行Aの取得が
成功したか否かを判定する。判定がNであった、つま
り、変換開始行が存在しない場合には、Step7に進
んで存在しないをメインルーチンへの戻り値として処理
を終了し、メインルーチン側に処理が復帰する。又、判
定がYであった、つまり、変換開始行が存在した場合に
は、Step4に進んで行番号A+1以降での最初の電
子データ変換終了行Bを取得する。ここでも上述と同様
に、電子データ変換終了行にはラベルが付されており、
プログラムは、このラベルを検索することによって、変
換終了行Bを抽出する。
【0053】更に、Step5に進んで取得した行番号
A,Bの区間に電子カムデータに変換できないものがあ
るか否かの判定を行う。ここでの判定がN、つまり電子
カムデータに変換不可なものはないの判定であった場合
には、Step6に進んで存在するを戻り値として処理
を終了する(請求項1第4のStepに相当)。一方、
判定がY、つまり電子カムデータに変換できないものあ
りの判定であった場合には、Step9に進みログファ
イル出力用にエラーフラグのセットを行う一方、処理が
完了したところまでのStep4で取得した行番号Bを
戻り値としてStep2以降を繰り返し実行すべく、処
理をStep2に戻す。
【0054】上述のようにラベルとは、具体的には、N
Cプログラムを記述するときに、単純に電子カムデータ
に変換することを指定するために、プログラム行に対し
て単独あるいは、何らかの指令に対して併記されるコメ
ント文である。ここでは例えば「DRILLING S
TART」、「DRILLING END」等のように
該当加工動作を記述するプログラムの始めの部分と終わ
りの部分に記述する。この記述そのものは、プログラム
作成ツールが、指定された加工方法に応じて自動的に記
述するものであるのが好ましいが、人手でも入力できる
ようにしておくのがより好ましい。
【0055】2.3.同期以外の箇所の電子カムデータ
化についての説明 次に、図10に示される、同期以外の電子カムデータに
変換する箇所の電子カムデータ化処理(請求項1第5の
Step相当)について、詳細に説明する。まず、処理
が開始されると、図9のStep4までで得られた、変
換開始行A,変換終了行B及びこれらの行間にて指定さ
れている加工種類をStep1にて読み込む。次に、S
tep2にて加工種類がねじ切りであるか否かの判定を
行う。判定がY、つまり、ねじ切り加工が指定されてい
る場合には、Step3に進みねじ切り処理を設定しS
tep6に進む。一方、判定がN、つまり、ねじ切り加
工が指定されていない場合には、Step4に進み、更
にタップ加工であるか否かの判定を行う。判定がY、つ
まり、タップ加工が指定されていた場合には、タップ加
工処理をStep5にて設定しStep6に進む。ここ
でも判定がNとなった場合には、Step8に進みその
他の加工処理を設定し、Step6に進む。
【0056】Step6では、行AB間のデータを電子
カムデータ化するに先立ち、現在の座標値を割り出す。
ここで現在の座標値を割り出すのは、行ABの間に記述
されるNCコードには、現在の座標値に関して記述され
ていないことが多く、行Aよりも手前の行を検索し座標
値に関する情報を取得する必要があるためである。この
処理が済んだ後にStep7に進み、得られている情報
に基づいて、それぞれの制御軸の電子カムデータ化を実
行し、行ABの間に記述されるNCプログラムを電子カ
ムデータを参照しに行くサイクルコマンドへと書き換え
を行い、このサブルーチンにおける処理を終了する。
尚、ここにおける具体的な電子カムデータ処理は、図7
におけるのと同様であり、これ以上の説明は省略した。
【0057】3.1.StepEの処理についての説明 次に、図4StepEに示される工具選択指令位置の最
適化処理について、説明する。この処理におけるメイン
のルーチンは、図11(A)の通りである。処理が開始
すると、まず、Step1にて、行番号A=0,B=
0,C=0、工具選択指令行T=0にイニシャライズを
行う。尚、これ以降の処理では、チャンネル1,3を対
象に処理を行うものになっている。このStepEの技
術の適用を想定している図2のような数値制御工作機械
では、その割付パターンで行くと、チャンネル1,3の
如く、工具同士が対抗するように用いられるチャンネル
同士で意味がより大きいためである。チャンネル2との
関係では、意味が希薄であるため検討対象に含めていな
いが勿論これを含めるように検討しても良い。
【0058】次に、Step2において、チャンネル
1,3に対して記述されるNCプログラム中から処理対
象になる待ち合せ行番号A,B,Cと工具選択(請求項
1第2のStep相当)指令行Tを取得する。このSt
ep3において、Step2の取得処理が成功したか否
かの判定を行う。判定がN、つまり、取得が失敗した場
合には、以降の処理を行う必要のある箇所が無かったと
して図4に示されるメインフローに処理が復帰する。一
方、判定がY、つまり、取得が成功した場合には、St
ep4に進み、取得した行A,B,Cと工具選択指令行
Tを記憶する。その後、Step5に進み、工具選択指
令位置を最適化する処理を行う。尚、ここでは、NCプ
ログラムの作成時に何らかの検討を最適データ変換プロ
グラムにて行うように指定しているものになっていない
ため、請求項1第2のStep相当になるのは、一見該
当しないように理解されるが、変換プログラム側が指定
されたコマンドを検出するようにしており、NCプログ
ラムの作成段階で指定するか、変換プログラム側での指
定をするかの違いがあるのみである。プログラムで何ら
かの操作を加えたい要求に従い、プログラム側から特定
されるという意味では同一の意味づけが為されている。
このような処理を行うことにより、要は、この処理の対
象となったNCプログラムで指定される加工の加工時間
の短縮効果を得ることが出来る。
【0059】説明しやすくするために具体的な例を示
す。まず、チャンネル1、チャンネル3の動作を記述す
るNCコードが図11(B)のように、、、の行
で待ち合せの処理を行っているとする。(上述した待ち
合わせ行番号Aはに、Bはに、Cはにそれぞれ対
応するものである。)
【0060】この例では、チャンネル1のの間で
は、加工に要すると推定される時間は10秒必要と仮定
する。又、チャンネル1のの間の加工に要すると推
定される時間は8秒と仮定する。同様に、チャンネル3
のの間では15秒、の間では5秒必要であると
仮定する。
【0061】今、チャンネル1のの間にT1で示さ
れる工具選択指令行があるとする。又、工具選択に要す
る時間は2秒であると仮定する。ここで、待ち合せ処理
間に発生する無駄時間を考えると、の間では、チャ
ンネル1がチャンネル3の加工が終了するまで5秒待つ
必要があることが図11(C)の表から理解される。又
の間では、チャンネル3がチャンネル1の加工が終
了するまで3秒待つ必要があることが図11(C)の表
から理解される。つまり、からまでの加工が終了す
るまでの間に無駄時間が8秒あることが分かる。
【0062】ここで先のT1が工具選択に2秒しか時間
が必要でないことに着目すると、T1の指令をの間
で実行することに問題が生じなければ、無駄時間を2秒
減らせることに注目する。この点を踏まえて、加工完了
までに必要な時間がどれくらい変化するかを検討してみ
ると、23秒必要であったのが、21秒になっており2
秒の無駄時間の削減を達成できることが図11(C)の
表のT1移動のケースから理解される。
【0063】同様のことを今度は、チャンネル3にのみ
工具選択指令行T3があったとして検討してみる。(チ
ャンネル1には工具選択指令行がないという仮定。)こ
の工具選択に必要とする時間は1秒と仮定し、T3指令
をの間に移動したとして検討する。この場合は、図
11(C)の表のT3移動のケースに示されるように、
加工完了までに要する時間は、24秒になり、当初23
秒であったのが1秒延びる結果になった。
【0064】更に、今度は、チャンネル1,3のそれぞ
れに工具選択指令行T1,T3のそれぞれがあった場合
に、両者を移動するケースを検討する。この場合は、図
11(C)の表に示されるように、加工完了までに要す
る時間は、22秒になり、1秒の短縮が図られることに
なる。上述のように、工具選択指令を動かした場合に、
無駄時間が減る場合、増える場合があることが図11
(C)の表から理解される。それぞれの場合毎に時間短
縮効果を評価し、その結果に従い、加工時間を最短に出
来るように工具選択指令行を移動させるというのが、こ
の処理の目的である。
【0065】3.2.チャンネル1,3に対して処理対
象の待ち合せ行番号A,B,Cと工具選択指令行Tの取
得処理の説明 次に、図12に示される、チャンネル1,3に対して処
理対象の待ち合せ行番号A,B,Cと工具選択指令行T
の取得処理(図11のStep2)について、詳細に説
明する。
【0066】処理が開始されると、まず、Step1に
おいて、行番号A,B,C及び工具選択指令行Tの読み
込みを行う。次に、Step2に進み、チャンネル1に
対し、行B以降を検索し、最初に見つかった待ち合せ処
理を行う行番号A,B,Cを取得し、チャンネル3のそ
れに対応したA,B,Cも取得する。ただし、ここでの
処理は、このStep2を一回目に通過する時にはA,
B,Cの全てが取得されることになるが、後述するよう
に、2回目以降は、A=B、B=Cが代入されることに
なるので、Cのみが新規に取得されることになる。
【0067】次にStep3に進むと、待ち合せ行番号
A,B,Cを取得が成功したか否かの判定を行う。判定
がN、つまり、取得できなかった場合には、これ以降の
処理は必要が無いので、そのままリターンされて、図4
のメインフローに処理が復帰する。一方、判定がYであ
った場合には、Step4に進み、待ち合せコードが有
効なコードであるか否かを判定する。判定がYである、
つまり、工具選択指令行を動かしても良いと判定された
場合には、そのままStep5に進む。ここで、有効な
コードとは、他チャンネルとの連携を持たない待ち合わ
せを意味する。Step4は、工具選択指令行を移動さ
せるにあたり、待ち合せ処理が、他のチャンネルとの連
携を持つ待ち合せであるかを判定し、連携がある場合に
工具選択指令行が移動されないようにするための判定で
ある。ここで言う連携があるとは、例えば、チャンネル
1がチャンネル3側の工具を使用したい場合に、両チャ
ンネルが一時加工を停止している状態を作り、其の後に
NCコードで指定されている動作を他チャンネルの工具
にさせる時などである。
【0068】Step5に進むと、次の工具選択指令行
Tに対して処理を行うため、チャンネル1,3において
行B、C間に存在している一番行番号の小さい工具選択
指令行Tを取得する。Step6に進むと、チャンネル
1,3のどちらでも工具選択指令行Tが取得できなかっ
たか否かを判定する。判定がN、つまり、工具選択指令
行Tが取得できた場合には、そのまま、Step7に進
み、更に、Step7にて、チャンネル1,3のどちら
においても行Tは単独指令であるか否かを判定する。
尚、単独指令とは、工具選択指令以外に、主軸回転数変
更指令などの補機指令を含まない、純然な工具選択指令
のみからなる指令の意味である。このように、単独指令
であるか否かを判定するのは、工具選択指令のみであれ
ば、それぞれの工具選択指令に対応した時間が、時間計
測モジュールから与えられるが、その他の指令を含む行
になっている場合には、その時間が不明であり、上述し
た無駄時間の計算が適切に行われない為である。
【0069】Step7にて判定がY、つまり、工具選
択指令が単独指令であった場合には、Step8に進み
チャンネル1,3のどちらにおいても行Bと工具選択指
令行Tとの間に軸移動指令が存在するか否かの判定を行
う。この判定を行うことによって、軸移動指令の意味が
変化してしまうことを防止している。工具選択指令行T
の前にある軸移動指令は、この工具選択指令によって選
択された工具に対しての軸移動指令ではなく、軸移動指
令が為された時点で選択されていた工具に対してのもの
である。よって、軸移動指令をまたがって工具選択指令
位置を変更してしまうと本来のNCプログラムの意味が
変わってしまうことになる。この点を考慮する為にこの
判定は為されているのである.
【0070】このStep8での判定がN、つまり、軸
移動指令が存在しない場合であれば、本ルーチンでの処
理を終了して、図11で示されるメインルーチンに処理
が復帰する。尚、Step4での判定がN、Step6
での判定がY、Step7での判定がN、Step8で
の判定がYのいずれかである場合には、Step9にて
行番号Bを行番号Aに、行番号Cを行番号Bに置換して
Step2以降の処理を繰り返す。
【0071】3.3.工具選択指令位置を最適化する処
理についての説明 次に、図13に示される、チャンネル1,3に対して工
具選択指令位置の最適化に伴い実行する評価処理につい
て、詳細に説明する。まず、図12の処理によって得ら
れた行番号A,B,C及び工具選択指令行TをStep
1において読み込む。次に、Step2において次のよ
うに定義される記号の各々の時間情報を時間計測モジュ
ールから取得する。
【0072】 チャンネル1 行Aから行B間までの実行に要する時間:TimeAB1 行Bから行C間までの実行に擁する時間:TimeBC1 工具選択時間 :TimeT1 チャンネル3 行Aから行B間までの実行に要する時間:TimeAB3 行Bから行C間までの実行に擁する時間:TimeBC3 工具選択時間 :TimeT3 * 工具選択指令行が存在しない場合にはTimeT
1、TimeT3は0になる。
【0073】次にStep3に進み、下記の数式に基づ
きOpti1(定義:チャンネル1側の工具選択指令の
みを移動させた場合の最適度)を計算する。 Opti1=(|TimeAB1-TimeAB3|-|(TimeAB1+TimeT1)-TimeAB3
|)+(|TimeBC1-TimeBC3|-|(TimeBC1-TimeT1)-TimeBC3|) 次にStep4に進み、下記の数式に基づきOpti3
(定義:チャンネル3側の工具選択指令のみを移動させ
た場合の最適度)を計算する。 Opti3=(|TimeAB1-TimeAB3|-|TimeAB1-(TimeAB3+TimeT3
|)+(|TimeBC1-TimeBC3|-|TimeBC1-(TimeBC3-TimeT3|) 次にStep5に進み、下記の数式に基づきOpti1
3(定義:チャンネル1と3の工具選択指令を移動させ
た場合の最適度)を計算する。 Opti13=(|TimeAB1-TimeAB3|-|(TimeAB1+TimeT1)-(TimeA
B3+TimeT3|)+(|TimeBC1-TimeBC3|-|(TimeBC1-TimeT1)-
(TimeBC3-TimeT3)|)
【0074】次に、Step6に進み、最適度Opti
1と最適度Opti3の比較を行う。判定がY、つま
り、最適度Opti1が最適度Opti3よりも大きい
場合には、Step7に進み、更に、最適度Opti1
と最適度Opti13との比較を行う。ここでも判定が
Y、つまり、最適度Opti1が最適度Opti13よ
りも大きい場合には、そのままStep8に進み最適度
Opti1が正か否かの判定を行う(請求項1第4のS
tepに相当)。ここでの判定がYであった場合には、
チャンネル1の工具選択指令行Tを行Bの直前行に移動
する。このように直前行に移動することにより、上述し
た移動指令の前側に工具選択指令が移動して軸移動指令
の意味合いが変化することを、工具選択指令が移動した
後にあっても防止している。又Step7において、判
定がN、つまり、最適度Opti13が最適度Opti
1よりも大きい場合には、そのままStep11に進
む。Step11にて最適度Opti13の正負の判定
を行い、判定がN、つまり、負であった場合には上述と
同様の理由により、工具選択指令行の移動は行わず、処
理を図11のメインフローに復帰させる。又、判定が
Y、つまり正であった場合には、Step12に進みチ
ャンネル1と3の工具選択指令行Tを行Bの直前行に移
動する。(請求項1第5のStepに相当) 尚、St
ep8において最適度Opti1が負となる場合には無
駄時間が延びる場合になるので、工具選択指令行の移動
は行わず、処理を図No.11のメインフローに復帰さ
せる。
【0075】次に、Step6において判定がN、つま
り、最適度Opti3が最適度Opti1よりも大きい
場合を説明する。この場合には、Step10に進み最
適度Opti3を更に最適度Opti13と比較し、こ
こでの判定がN、つまり最適度Opti13が最大であ
る場合には、Step7での判定がNとなった時と同様
に、Step11以降の処理を行う。更に、Step1
0における判定がY、つまり、最適度Opti3が最大
である場合には、更に、Step13にて最適度Opt
i3の正負の判定を行い、判定がN、つまり、負であっ
た場合には上述と同様の理由により、工具選択指令行の
移動は行わず、処理を図No.11のメインフローに復
帰させる。又、判定がY、つまり正であった場合には、
Step14に進みチャンネル3の工具選択指令行Tを
行Bの直前行に移動する。
【0076】4.1.StepFの処理についての説明 次に、図4のstepFに示される工具選択動作の電子
データ化への処理について、説明する。この処理におけ
るメインのルーチンは、図14の通りである。処理が開
始すると、まず、Step1にて、行番号B=0、CH
=1にするイニシャライズを行う。
【0077】次に、Step2に進み、電子カムデータ
に変換する工具選択指令行T(請求項1第2のStep
相当)とそれを挟む待ち合せ行A,Bを取得する。その
まま、Step3に進み、工具選択指令行Tとこれを挟
む待ち合せ行A,Bが存在したか否かにつき判定する。
判定がY、つまり、存在した場合には、続いてStep
4にて行番号A,B,Tを読込、Step5において、
工具選択動作の電子カムデータ化処理を実行し、取得さ
れた行B以降の行に対して同様の操作を行うべくSte
p2以降を繰り返す。又、Step3での判定がN、つ
まり、存在しなかった場合には、Step6に進み処理
対象を次チャンネルに設定すべく、チャンネルCHを更
新する。Step3において、存在しなかったというこ
とは、もともと、そのチャンネルに設定されたNCプロ
グラムには、電子カムデータへの変換に値する工具選択
指令行Tが存在しなかった、あるいは、存在したが、行
B以降の残り行にはなかったということであるため、処
理対象を次のチャンネルに設定するのである。
【0078】更に、Step7に進んで、CH=4にな
ったか否かについて判定する。CH=4ではない場合に
は、Step8に進み、行A,B、工具選択指令行Tを
イニシャライズし、Step2以降を繰り返す。又、C
H=4であった場合には、全部のチャンネルのNCプロ
グラムの検索が終了したので、図1のメインフローに処
理が復帰する。
【0079】4.2.電子カムデータに変換する工具選
択指令行Tとそれを挟む待ち合せ行A,Bの取得処理に
ついての説明 次に、図15に示される、電子データに変換する工具選
択指令行Tとそれを挟む待ち合せ行A,Bを取得する処
理を説明する。
【0080】まず、処理が開始されると、Step1に
て、行番号Bの読み込みが行われる。次に、Step2
にて、行番号B+1以降で最初の工具選択単独指令行T
を取得する。次に、Step3に進み、工具選択指令行
Tの取得を成功したか否かの判定を行う。判定がN、つ
まり、工具選択指令行Tを取得できなかった場合には、
そのまま図14に示されるフローチャートに処理が移行
する。又、Step3にて判定がY、つまり、工具選択
指令行Tの取得に成功した場合には、Step4に進み
工具選択指令行Tを挟む前後の待ち合せ行A,Bの取得
を行う。Step5に進むと、待ち合せコードは有効な
コードであるか否かの判定を行う。Step5での判定
がN、つまり、待ち合せコードが有効でない場合にはS
tep2からの処理を改めて繰り返す。つまり、X1−
X3同期など、チャンネル間での連携を持つように待ち
あわせコードを設定している場合に、目的の処理を行う
ことで、その連携関係が損なわれてしまう処理が対象か
ら除外されるようにしているものである。判定がY、つ
まり、待ち合せコードが有効な場合には、次に、Ste
p6に進み、待ち合わせをしている他のチャンネルと比
較し、待ち合せ間が一番長い時間になっているか否かを
判定し、判定がY、つまり、一番長い時間になっている
場合には、Step2からの処理を繰り返すべく処理を
Step2に戻す。一方、判定がN、つまり、一番長い
時間になっていない場合には、Step7に進み、工具
選択指令行T、待ち合せ開始行A,終了行Bの三者を記
憶保持する。このように、一番長い時間になっているか
否かを判定することによって、その工具選択指令行Tに
よる工具選択に対して実際に余裕時間として存在する時
間が他チャンネル工具選択に比較し、余裕があるかない
かを判定している(請求項1第4のStep相当)。
【0081】次に、Step8に進み、現在チャンネル
3を処理中であるか否かを判定する。判定がY、つま
り、チャンネル3を処理中である時には、更に、Ste
p9に進み、チャンネル1と待ち合せをしている場合で
あってチャンネル1側の工具選択が電子カムデータ化さ
れているか否かを判定する。ここでの判定がY、つま
り、チャンネル1側の工具選択が電子カムデータ化され
ている場合には、Step10に進み、Step7にて
記憶保持した工具選択指令行T、待ち合せ開始行A,終
了行Bの三者の記憶保持をキャンセルし、「存在しな
い」の側で処理を終了し、図14に示されるメインフロ
ーへ処理を復帰させる。つまり、チャンネル1とチャン
ネル3で同時に工具選択動作をさせることは希であり、
又、両者を電子カムデータすることは非常に処理が複雑
になり好ましくない。このため、既に、一方が電子カム
データされている場合には、処理の異常の発生を招かな
いためにも他方の電子カムデータ化は行わないようにし
ている。一方、Step9における判定がN、つまり、
チャンネル1側の工具選択が電子カムデータ化されてい
ない場合には、上述した不具合は生じないのでStep
7にて取得したA,B,Tを保持し図に示される「存在
する」の側で処理を終了し図14に示されるメインフロ
ーに処理を復帰させる。当然ながら、Step8にて判
定がN、つまり、チャンネル3の処理中ではない場合で
あれば、少なくともチャンネル1側で行A,B,Tが取
得されているので、「存在する」の側で処理を終了し図
14に示されるメインフローに処理を復帰させる。
【0082】4.3.工具選択動作の電子カムデータ化
処理の説明 次に、図16に示される、工具選択動作の電子カムデー
タ化の処理(請求項1第5のStep相当)を説明す
る。まず、処理が開始されると、Step1にて工具選
択指令行T、待ち合せ開始行A,終了行Bの読み込みを
行う。続いて、Step2に進み,他のチャンネルの一
番長い待ち合せ間の時間との差ΔTを演算する。Ste
p3に進んで、待ち合せ行A,B間に含まれる工具選択
単独指令行とその選択時間を全て読み込まれているNC
プログラムファイル及び時間計測モジュールから読み込
む。次に、Step4に進んでΔTを選択時間の長さの
比で分配する。次に、Step5に進み、工具選択動作
を分配された時間分ゆっくりと動作するような電子カム
データに変換する。次に、Step6に進み、処理が完
了した行番号Bを記憶保持し、もとのフローに処理が復
帰する。
【0083】このようにすることで、先に演算した工具
選択指令毎に得られる余裕時間を、工具選択時間の比率
に応じて工具選択時間として割り当てる。通常NCコー
ド等によって指定される工具選択では、この時間が与え
られたところで、工具選択は素早く移動される結果、時
間を余らせるように実行されるが、本実施例では余裕時
間を含み、割り当てられた時間全部を利用して工具選択
が行われる為、工具選択そのものはNCコードを利用し
て行われるものと比較してゆっくりと為されることにな
る。その結果として、刃物台送り軸、あるいは、それを
含む各回転部を支持する軸受け(ボールベアリングな
ど)に対してショック荷重などの入力が防止される。こ
の結果、軸、ボールベアリングなどの寿命を延長させる
ことが可能となり、加工部品の精度も上がる。
【0084】一方、更に、具体的には、上記Step5
において、工具の選択動作を、加工終了に伴う退避は早
くし、工具の選択位置までへの移動などはゆっくりする
ように、動作毎で工具選択動作の速度を変更すると更に
良い。これは、待避動作のみを従来と同様にしておくこ
とにより、工具が主軸などと干渉する危険をNCコード
等によって指令される工具選択動作と同じ程度までに軽
減するためである。以上の実施例の中では、数値制御工
作機械における数値制御部に記憶されるプログラムファ
イルを一旦編集して、その後、NC部用RAMに記憶さ
せるようにしたが、NC部用RAMからCPUがNCプ
ログラムを読み出す段階において、読み出しと同時に上
述した処理を実行してもよい。この場合は、NCプログ
ラムを適宜先読みして解釈を行い上述の処理を行った上
で数値制御工作機械を動作させると良い。
【0085】
【発明の効果】本発明によれば、ワークあるいは工具を
エキスパートのNCプログラム作成者が作ったものと同
等若しくは、それ以上のものが容易に得られ、ワーク、
工具などを最適に動作させることが出来る。又、更に、
具体的には、実用的な効果として、ワークの加工時間の
短縮、加工部品の単価の低減、加工部品の精度向上、若
しくは、機械寿命の延長など優れた効果が得られるもの
である。
【0086】
【図面の簡単な説明】
【図1】本発明の実施形態に係る数値制御工作機械の構
成を示すブロック図である。
【図2】本発明の実施形態に係る数値制御工作機械のチ
ャンネル構成を示す図である。
【図3】制御ユニット部のRAMに含まれる電子カムデ
ータテーブルの構成を説明する為の図である。
【図4】本発明が含まれる制御プログラムのメインのフ
ローチャートである。
【図5】(A)は、図4における同期加工の電子データ
化の処理のメインとなるフローチャートである。(B)
は、本発明の実施形態に係る工作機械における、被加工
物の加工動作の一例を説明する為の図である。(C)
は、(B)におけるA部の拡大図である。
【図6】図5における、同期加工の電子カムデータに変
換する箇所を検索する処理を説明するフローチャートで
ある。
【図7】図5における行A、B間を電子カムデータ化す
る処理を説明するフローチャートである。
【図8】図4における同期加工による電子カムデータに
変換する箇所以外の電子カムデータ化処理を説明するメ
インのフローチャートである。
【図9】図8における、同期加工以外の電子カムデータ
に変換する箇所を検索する処理を説明するフローチャー
トである。
【図10】図8における、同期加工以外の箇所の電子カ
ムデータ化の処理を説明するフローチャートである。
【図11】(A)は、図4における、工具選択指令位置
の最適化処理を説明するメインのフローチャートであ
る。(B)は、この処理を適用して意味のある具体例を
示す図である。(C)は、(B)の例の結果を示す表で
ある。
【図12】図11における、チャンネル1,3に対して
処理対象の待ち合せ行番号A,B,Cと工具選択指令行
Tを取得する処理を説明するフローチャートである。
【図13】図11における、工具選択指令位置を最適化
する処理を説明するフローチャートである。
【図14】図4における、工具選択動作の電子カムデー
タ化の処理を説明するフローチャートである。
【図15】図14における、電子カムデータに変換する
工具選択指令行Tとそれを挟む待ち合せ処理行A,Bを
取得する処理を説明するフローチャートである。
【図16】図14における、工具選択動作の電子カムデ
ータ化の処理を説明するフローチャートである。
【符号の説明】
1…数値制御工作機械、51…制御ユニット部、52…
中央演算ユニット、56…NC部用RAM、56a…第
1のチャンネル加工手順記憶部、56b…第2のチャン
ネル加工手順記憶部、56c…第3のチャンネル加工手
順記憶部、56d…電子カムデータテーブル、57…R
OM、58…PC部用RAM 58a…最適データ変換
プログラム記憶部 58b…電子カムデータテーブル 5
8c…機械固有情報記憶部 58d…NCプログラム記
憶部 59…トランスフォーマボタン。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 矢崎 訓之 静岡県静岡市中吉田20番10号 スター精密 株式会社内 Fターム(参考) 5H269 AB01 BB01 BB05 BB11

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】数値制御工作機械にロードされて該機械を
    動作させるNCプログラムを作成する第1のStep
    と、該プログラムの変換の検討が必要な箇所及び/又は
    プログラムにおける指令位置変更の検討が必要な箇所を
    指定する第2のStepと、上記プログラムを所定の記
    憶素子に読み込む第3のStepと、記憶素子に読み込
    まれた上記プログラムにおいて指定された箇所の変換可
    否の検討及び/又はプログラムにおける指令位置変更可
    否の検討を行う第4のStepと、該検討結果が可とな
    った場合には、上記プログラムにおいて指定された箇所
    の変換及び/又はプログラムにおける指令位置変更を実
    行し、機械稼動用プログラムファイルの作成を行う第5
    のStepとを備えることを特徴とするNCプログラム
    のための最適データ変更方法。
  2. 【請求項2】数値制御工作機械にロードされて該機械を
    動作させるNCプログラムを作成する第1のStep
    と、所定パラメータに対する位置の関係を定めた電子カ
    ムデータへの変換を行うべきワーク又は工具の所定の作
    業を上記プログラムの作成中に予め指定する第2のSt
    epと、該プログラムを所定の記憶素子に読み込む第3
    のStepと、記憶素子に読み込まれたプログラムに対
    して上記指定作業を検索し電子カムデータへの変換可否
    を検討する第4のStepと、該検討結果が可となった
    場合には、該抽出されたワーク又は工具の動作の記述に
    従い仮想的にワーク又は工具を動作させてパラメータと
    位置の関係を定めて電子カムデータに作成する第5のS
    tepと、該Stepにより得られた電子カムデータを
    記憶するテーブルを作成する第6のStepと、上記N
    Cプログラムにおいて、この電子カムデータに変換され
    た箇所を上記テーブルを参照するコマンドと置換する第
    7のStepとを備えることを特徴とするNCプログラ
    ムのための最適データ変換方法。
  3. 【請求項3】数値制御工作機械にロードされて該機械を
    動作させるNCプログラムを作成する第1のStep
    と、上記プログラムにおける工具選択指令位置変更の検
    討が必要な箇所を指定する第2のStepと、該プログ
    ラムを所定の記憶素子に読み込む第3のStepと、記
    憶素子に読み込まれた上記プログラムにおいて工具選択
    指令位置を変更することにより選択された工具での作業
    時間が短縮されるか否かにつき工具選択指令位置変更可
    否の検討を行う第4のStepと、該検討結果が可とな
    った場合には、上記プログラムにおける工具選択指令位
    置変更を実行し、機械稼動用プログラムファイルの作成
    を行う第5のStepとを備えることを特徴とするNC
    プログラムのための最適データ変換方法。
  4. 【請求項4】数値制御工作機械にロードされて該機械を
    動作させるNCプログラムと、該プログラムの変換の検
    討が必要な箇所及び/又はプログラムにおける指令位置
    変更の検討が必要な箇所を指定する検討必要位置指定手
    段と、該指定手段による指定が含まれた上記NCプログ
    ラムを記憶するメモリー手段と、該メモリー手段に読み
    込まれた上記NCプログラムにおいて指定された箇所を
    最適化する変換可否の検討及び/又は指令位置変更可否
    の判定を行う可否判定手段と、該判定結果が可となった
    場合には、上記プログラムにおいて指定された箇所の変
    換及び/又は指令位置変更を実行し、この変換及び/又
    は変更結果に基づき機械を稼動させる数値制御部とを備
    えることを特徴とする数値制御工作機械。
  5. 【請求項5】工具又はワークの位置に関する補正値情報
    を収集する補正値情報収集手段を備え、補正値情報収集
    手段は、上記機械稼動用プログラムファイル作成手段に
    よりNCプログラムの一部分が電子カムデータに変換さ
    れる際に、その変換の結果に対して補正値情報を反映さ
    せるようにしたことを特徴とする請求項4に記載の数値
    制御工作機械。
JP2002052662A 2002-02-28 2002-02-28 Ncプログラムのための最適データ変換方法および数値制御工作機械 Expired - Fee Related JP3904945B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2002052662A JP3904945B2 (ja) 2002-02-28 2002-02-28 Ncプログラムのための最適データ変換方法および数値制御工作機械
US10/373,055 US6909937B2 (en) 2002-02-28 2003-02-26 Numerically controlled machine tool and a program transforming method therefor
DE60320164T DE60320164T2 (de) 2002-02-28 2003-02-26 Eine numerische gesteuerte Werkzeugmaschine und Verfahren zur Programumwandlung dafür
EP03251170A EP1341066B1 (en) 2002-02-28 2003-02-26 A numerically controlled machine tool and program transforming method therefor
US11/124,859 US7016760B2 (en) 2002-02-28 2005-05-09 Numerically controlled machine tool and a program transforming method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002052662A JP3904945B2 (ja) 2002-02-28 2002-02-28 Ncプログラムのための最適データ変換方法および数値制御工作機械

Publications (3)

Publication Number Publication Date
JP2003256009A true JP2003256009A (ja) 2003-09-10
JP2003256009A5 JP2003256009A5 (ja) 2005-08-25
JP3904945B2 JP3904945B2 (ja) 2007-04-11

Family

ID=27678536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002052662A Expired - Fee Related JP3904945B2 (ja) 2002-02-28 2002-02-28 Ncプログラムのための最適データ変換方法および数値制御工作機械

Country Status (4)

Country Link
US (2) US6909937B2 (ja)
EP (1) EP1341066B1 (ja)
JP (1) JP3904945B2 (ja)
DE (1) DE60320164T2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105045208A (zh) * 2014-04-18 2015-11-11 发那科株式会社 具有加工周期生成功能的数值控制装置以及程序编辑方法
JP2017030067A (ja) * 2015-07-30 2017-02-09 ファナック株式会社 加工時間測定機能とオンマシン測定機能を有する制御装置付き加工装置
CN112654935A (zh) * 2018-08-31 2021-04-13 Dmg墨睿软件方案有限公司 保护机床执行数据和/或加工数据的方法和***

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004326618A (ja) * 2003-04-25 2004-11-18 Star Micronics Co Ltd 工作機械の数値制御装置
JP4112433B2 (ja) * 2003-05-22 2008-07-02 スター精密株式会社 工作機械の数値制御装置と工作機械の数値制御方法
JP4112436B2 (ja) * 2003-06-03 2008-07-02 スター精密株式会社 工作機械の数値制御装置と工作機械の数値制御方法
US20090206787A1 (en) * 2005-03-07 2009-08-20 Mitsubishi Electric Corporation Drive Control System and Machine Control Device
US8594831B2 (en) * 2007-02-09 2013-11-26 Mori Seiki Co., Ltd. Automatic programming method and automatic programming device
CN102023615B (zh) * 2010-10-25 2012-05-09 武汉华中数控股份有限公司 一种基于指令序列的数控机床加工状态信息显示方法
CN102081376A (zh) * 2011-02-25 2011-06-01 武汉华中数控股份有限公司 一种基于指令序列优化的加工负荷控制***
US9798312B2 (en) * 2012-05-15 2017-10-24 Mitsubishi Electric Corporation Numerical control device
US9046888B2 (en) * 2012-06-27 2015-06-02 Mitsubishi Electric Research Laboratories, Inc. Method and system for detouring around features cut from sheet materials with a laser cutter according to a pattern
US9104192B2 (en) * 2012-06-27 2015-08-11 Mitsubishi Electric Research Laboratories, Inc. System and method for controlling machines according to pattern of contours
WO2015006199A1 (en) * 2013-07-08 2015-01-15 Abb Technology Ag Multi-viewer for interacting or depending objects
JP5715217B2 (ja) 2013-10-18 2015-05-07 ファナック株式会社 プログラムの先読み機能を備えた数値制御装置
TWI494724B (zh) * 2013-12-31 2015-08-01 Syntec Inc 具有座標同步功能之數值控制系統及其數值控制方法
JP6521565B2 (ja) * 2014-01-20 2019-05-29 Dmg森精機株式会社 省電力を考慮したncプログラム生成装置
EP3045993A1 (de) * 2015-01-15 2016-07-20 Siemens Aktiengesellschaft Fertigungssystem mit zusätzlicher Funktionalität und Betriebsverfahren
GB201518284D0 (en) 2015-10-15 2015-12-02 Composite Technology & Applic Ltd A method of generating a movement profile for a layup procedure
US10401823B2 (en) 2016-02-04 2019-09-03 Makino Inc. Real time machining process monitoring utilizing preprocess simulation
EP3220223B1 (de) 2016-03-16 2021-07-14 Siemens Aktiengesellschaft Verfahren zur bearbeitung eines werkstücks in einer werkzeugmaschine mit optimierter bearbeitungszeit
DE102016216190A1 (de) 2016-08-29 2018-03-01 Siemens Aktiengesellschaft Verfahren und System zum rechnergestützten Optimieren eines numerisch gesteuerten Bearbeitungsprozesses eines Werkstücks
JP6453923B2 (ja) 2017-02-28 2019-01-16 ファナック株式会社 数値制御装置および工作機械システム
JP6687579B2 (ja) * 2017-10-24 2020-04-22 ファナック株式会社 数値制御装置
JP6669705B2 (ja) * 2017-10-25 2020-03-18 ファナック株式会社 数値制御装置
CN115981211A (zh) * 2023-01-17 2023-04-18 新代科技(苏州)有限公司 螺纹加工机台监控***及其监控方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5942248A (ja) 1982-09-03 1984-03-08 Mitsubishi Electric Corp 数値制御加工方式
JPS59224228A (ja) 1983-06-02 1984-12-17 Fanuc Ltd 数値制御装置
JPS62188645A (ja) 1986-02-13 1987-08-18 Okuma Mach Works Ltd 自動プログラミングにおける同時加工編集方法
JPH03257508A (ja) * 1990-03-08 1991-11-18 Fanuc Ltd 対話形言語nc自動プログラミング方式
JP3160441B2 (ja) 1993-09-17 2001-04-25 オークマ株式会社 加工順序の決定方法
JPH07168612A (ja) 1993-12-14 1995-07-04 Mutoh Ind Ltd 穴加工プログラム作成装置
US6128546A (en) * 1996-09-30 2000-10-03 Cincinnati Incorporated Method and apparatus for a cutting system for avoiding pre-cut features
JP3687980B2 (ja) * 1996-11-07 2005-08-24 株式会社ミツトヨ Nc加工における測定プログラム作成及びこの測定プログラムを実行した加工管理
JP3827951B2 (ja) * 1998-08-28 2006-09-27 株式会社森精機製作所 Nc加工におけるncプログラムの最適化方法及び装置
JP3352986B2 (ja) 1999-12-17 2002-12-03 スター精密株式会社 工作機械の駆動制御装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105045208A (zh) * 2014-04-18 2015-11-11 发那科株式会社 具有加工周期生成功能的数值控制装置以及程序编辑方法
JP2015207095A (ja) * 2014-04-18 2015-11-19 ファナック株式会社 加工サイクル生成機能を有する数値制御装置およびプログラム編集方法
US10216170B2 (en) 2014-04-18 2019-02-26 Fanuc Corporation Numerical controller and program editing method having machining cycle generation function
CN105045208B (zh) * 2014-04-18 2019-05-17 发那科株式会社 具有加工周期生成功能的数值控制装置以及数值控制方法
JP2017030067A (ja) * 2015-07-30 2017-02-09 ファナック株式会社 加工時間測定機能とオンマシン測定機能を有する制御装置付き加工装置
US10180667B2 (en) 2015-07-30 2019-01-15 Fanuc Corporation Controller-equipped machining apparatus having machining time measurement function and on-machine measurement function
CN112654935A (zh) * 2018-08-31 2021-04-13 Dmg墨睿软件方案有限公司 保护机床执行数据和/或加工数据的方法和***

Also Published As

Publication number Publication date
US6909937B2 (en) 2005-06-21
US20030163208A1 (en) 2003-08-28
DE60320164T2 (de) 2009-05-14
EP1341066A3 (en) 2004-11-03
US7016760B2 (en) 2006-03-21
EP1341066B1 (en) 2008-04-09
JP3904945B2 (ja) 2007-04-11
US20050197733A1 (en) 2005-09-08
EP1341066A2 (en) 2003-09-03
DE60320164D1 (de) 2008-05-21

Similar Documents

Publication Publication Date Title
JP2003256009A (ja) Ncプログラムのための最適データ変換方法及び最適データ変換手段を備えた数値制御工作機械
JP3827951B2 (ja) Nc加工におけるncプログラムの最適化方法及び装置
JP4920785B2 (ja) 数値制御方法及びその装置
JP3694323B2 (ja) Nc加工におけるncプログラム解析方法及び装置
JP6868161B1 (ja) 情報処理装置、情報処理方法および情報処理プログラム
JP2007179314A (ja) 工作機械及びそのプログラム変換方法
JP6629410B1 (ja) Ncプログラム変換処理方法、変換用計算機、及び変換プログラム
JP2004362104A (ja) 工作機械の数値制御装置と工作機械の数値制御方法
US20200225642A1 (en) Method For Controlling A Machine Tool And Machine Tool
CN109562499B (zh) 选择装置、选择方法及程序
GB2083247A (en) A programmable machine
JP2007233624A (ja) 工作機械の数値制御装置
JP2003263209A (ja) 数値制御工作機械
JPH08263114A (ja) Nc工作機械の制御方法
JP2017157194A (ja) 工作機械の数値制御装置
JP4112433B2 (ja) 工作機械の数値制御装置と工作機械の数値制御方法
CN114035511A (zh) 一种图形化数控车床智能控制***及其控制方法
JP2010176309A (ja) 工作機械およびその動作時間提示方法
WO2022138055A1 (ja) 情報処理装置および情報処理プログラム
JP7175340B2 (ja) 工作機械、情報処理装置および情報処理プログラム
JP7177905B1 (ja) 情報処理装置
US11226609B2 (en) Numerical controller
JPH07319520A (ja) 工作機械の制御方法及び制御装置
JPS59211105A (ja) パ−トプログラム作成方法
CN116848477A (zh) 机床、机床的控制方法以及机床的控制程序

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050222

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060905

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061102

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070110

R150 Certificate of patent or registration of utility model

Ref document number: 3904945

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100119

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110119

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110119

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120119

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130119

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140119

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees