JP2004110359A - Numerical control system - Google Patents

Numerical control system Download PDF

Info

Publication number
JP2004110359A
JP2004110359A JP2002271472A JP2002271472A JP2004110359A JP 2004110359 A JP2004110359 A JP 2004110359A JP 2002271472 A JP2002271472 A JP 2002271472A JP 2002271472 A JP2002271472 A JP 2002271472A JP 2004110359 A JP2004110359 A JP 2004110359A
Authority
JP
Japan
Prior art keywords
numerical control
absolute time
data
hot line
axis
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
JP2002271472A
Other languages
Japanese (ja)
Other versions
JP3917047B2 (en
Inventor
Mitsushiro Fujishima
藤島 光城
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2002271472A priority Critical patent/JP3917047B2/en
Publication of JP2004110359A publication Critical patent/JP2004110359A/en
Application granted granted Critical
Publication of JP3917047B2 publication Critical patent/JP3917047B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To make each axis control part to execute synchronizing interpolation control by using an absolute time. <P>SOLUTION: This personal computer 110 generates absolute time instruction data indicating the processing time of each axis by executing the operation of numerical control processing, and transmits generated absolute time instruction data to an LAN 115 being a network in an asynchronous communication system. A plurality of servo amplifiers 130-13n fetch the absolute time instruction data from the LAN 115, and mutually execute synchronizing interpolation control according to an incorporated internal timer indicating an absolute time. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
この発明は、数値制御システムに関するものである。
【0002】
【従来の技術】
従来の数値制御装置では、各軸を制御する複数の軸制御部(以下「サーボアンプ」という)間で実施される同期補間制御は、同期信号を基準とした相対時間指令によって実現している。すなわち、従来の数値制御装置では、ある一定周期の同期信号を基準に複数のサーボアンプ間で同期をとり、位置データ、速度データなどの指令データに基づき複数のサーボアンプ間で同期補間制御を実施している。
【0003】
ところで、同期信号を基準とした相対時間指令による同期補間制御方式では、数値制御装置とサーボアンプ間で専用の同期通信が必要であることから、近年、オープン化を目指してこの同期通信方式としてSERCOS(Serial Realtime Communication System)等の通信規格が策定されている。しかし、通信性能は、制御性能に大きく関わるので、各数値制御装置メーカは、それぞれ特徴を出すために独自の専用通信方式に頼っているのが実状である。
【0004】
そして、数値制御部に集中したケーブルの煩雑さを減少させるために、数値制御部と、画面制御部と、複数のサーボアンプとの間を汎用のネットワークを介して接続し、各構成要素を分散させるようにした数値制御システムが提案されている(例えば特許文献1参照)。この特許文献1に開示された数値制御システムでは、複数のサーボアンプ間の同期補間制御は、同期信号を基準とした相対時間指令によって実現していると推測される。
【0005】
また、近年では、パーソナルコンピュータ(以下、「パソコン」という)の高性能化および低価格化を背景として、パソコンを利用した数値制御システムが提案されている。すなわち、パソコンの拡張スロットに数値制御装置を実装し、その数値制御装置と記憶装置とをバスを介して接続するとともに、数値制御装置には、専用の通信ケーブルを介して複数のサーボアンプを接続した数値制御システムが提案されている(例えば、特許文献2,3参照)。
【0006】
特許文献2,3に開示された数値制御システムでは、記憶装置に格納された加工プログラムや加工データから移動指令がパソコンのCPUによって算出され、その算出された移動指令がバスを介して数値制御装置内部のサーボ制御部に設けてある通信データバッファにオーバーフローさせずに非同期で入力されるが、複数のサーボアンプ間の同期補間制御は、同期信号を基準とした相対時間指令によって実現している。
【0007】
【特許文献1】
特開平9−73310号公報(段落0009〜0012、図1)。
【特許文献2】
国際公開第01/44882号パンフレット(第7頁〜第9頁、第1図)。
【特許文献3】
特開平9−146623号公報(段落0030〜0033、図1)。
【0008】
【発明が解決しようとする課題】
しかしながら、同期信号を基準とした相対時間指令による同期補間制御方式では、数値制御処理専用のOS,CPUおよび同期通信インターフェースが必要であるので、高価であり、かつユーザの多様な要求に応える柔軟性に欠けるという問題がある。
【0009】
パソコンは、非同期の通信機能を備え、近年では、LAN等のネットワークを介して高速な非同期通信が行えるようになってきているので、高速で安価なパソコン上で数値制御の演算処理を非リアルタイムにて実施し、蓄積したデータを非同期の通信機能を用いてLAN等のネットワークを介して高速に複数のサーボアンプに送信するだけで、複数のサーボアンプ間で同期補間制御が実施できれば、安価でかつ柔軟な数値制御システムが構築できるが、どのように構成するかが問題である。
【0010】
この発明は、上記に鑑みてなされたもので、各軸制御部が絶対時間を用いて同期補間制御が行えるようにすることにより、安価でかつユーザの多様な要請に柔軟に対応できる数値制御システムを得ることを目的とする。
【0011】
【課題を解決するための手段】
上記の目的を達成するために、この発明にかかる数値制御システムは、数値制御処理の演算を行って各軸の処理時間を表す絶対時間指令データを生成し、生成した絶対時間指令データを非同期通信方式のネットワークに送信する数値制御処理手段と、前記非同期通信方式のネットワークを介して前記数値制御処理手段と接続され、ネットワークから前記絶対時間指令データを取り込み内蔵する絶対時間を示す内部タイマーに従って相互間で同期補間制御を実施する複数の軸制御手段とを備えたことを特徴とする。
【0012】
この発明によれば、数値制御処理手段が、数値制御処理の演算を行って各軸の処理時間を表す絶対時間指令データを生成し、生成した絶対時間指令データを非同期通信方式のネットワークに送信すると、前記非同期通信方式のネットワークを介して前記数値制御処理手段と接続される複数の軸制御手段が、ネットワークから前記絶対時間指令データを取り込み内蔵する絶対時間を示す内部タイマーに従って相互間で同期補間制御を実施する。
【0013】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる数値制御システムの好適な実施の形態を詳細に説明する。
【0014】
実施の形態1.
図1は、この発明の実施の形態1である数値制御システムの構成を示すブロック図である。この発明で用いる数値制御演算手段は、数値制御処理の演算、具体的には、加工プログラムの解析から各軸の移動量の演算を行って各軸の処理時間を表す絶対時間指令データを生成する機能を付加することができ、かつLAN等のネットワークとの非同期通信機能を備えている。この数値制御演算手段は、例えば、ワークステーションやパソコンなどのコンピュータ装置を用いて実現することができる。この実施の形態では、安価に構成する観点からパソコンを用いた構成例が示されている。
【0015】
すなわち、図1において、コンピュータ装置としてのパソコン110は、CPU、外部記憶装置としてのハードディスク等のメモリ及びLAN等のネットワークとの非同期通信機能を備えている。
【0016】
軸制御部としての複数のサーボアンプ130〜13nは、対応する各軸のサーボモータ140〜14nを制御するが、この実施の形態では、絶対時間を用いた同期補間制御機能およびLAN等のネットワークとの非同期通信機能を備えている。
【0017】
スイッチング・ハブ120は、切り替え回路を備え、LAN等のネットワークにおいて2デバイス間の専用通信を可能にするために一般的に設けられている装置である。
【0018】
図1に示す数値制御システムは、パソコン110と、複数のサーボアンプ130〜13nとが、例えばネットワークとしてのLAN115上に配置されるスイッチング・ハブ120を介して接続される構成である。そして、スイッチング・ハブ120には、イントラネットやインターネットなどの上位のネットワーク125が接続できるようになっている。LAN115上では、例えばTCP/IPを用いた非同期通信が行われる。
【0019】
また、サーボアンプ130〜13nの間は、非常停止などを通知するホットライン180によってワイヤードOR接続されている。ホットライン180は、非常停止スイッチ190ともワイヤードOR接続されている。ホットライン180は、この実施の形態では、専用の通信ケーブルを用いた場合を示すが、専用の周波数を用いた無線回線で構成することもできる。
【0020】
図2は、図1に示すパソコンの構成例を示すブロック図である。図2において、パソコン110は、加工プログラムの解析から各軸の移動量の演算までを実行する機能が付加されたパソコンCPU210と、パソコン110の機能を実現するためにパソコンCPU210が用いるメインメモリ220と、加工プログラムや加工データ(3次元CADデータ)も蓄積されるハードディスク等の外部記憶装置230と、絶対時間を示す内部タイマー240と、LAN115を介してサーボアンプと信号授受を行い、LAN115上にサーボアンプ通信データ290の送出等を行うLANインターフェース回路250とが、内部バス260を介して接続される構成である。
【0021】
LANインターフェース回路250には、通信データを一時的に保管するため通信データバッファメモリ255が接続されている。また、内部バス260には、PCカードインターフェース回路270が接続され、専用のCPUを搭載した数値制御装置であるカード型NC280がプラグ・アンド・プレイで接続できるようになっている。
【0022】
なお、図1に示すように、ホットライン180は、パソコン110にも接続される場合がある。しかし、ホットライン180は、サーボアンプ130〜13nの間で非常停止などを通知するために用いるので、また、パソコン110は、LAN115を介してサーボアンプと通信できるので、図2では、ホットライン180の処理回路は、図示省略した。
【0023】
図3は、図1に示すサーボアンプの構成例を示すブロック図である。サーボアンプ130〜13nは、全て同様の構成である。図3では、代表としてサーボアンプ130を取り上げている。
【0024】
図3において、サーボアンプ130は、軸制御部としての機能を実現するサーボアンプCPU310と、サーボアンプCPU310が用いるメインメモリ320と、LAN115を介して信号授受を行い、LAN115からサーボアンプ通信データ290を取り込む等を行うLANインターフェース回路330と、サーボモータ140を回転駆動するサーボモータ回転制御回路340と、絶対時間を示す内部タイマー350とが、内部バス370を介して接続される構成である。LANインターフェース回路330には、通信データを一時的に保管するため通信データバッファメモリ335が接続されている。
【0025】
また、ホットライン180を介して信号授受を行うI/Oインターフェース回路360が設けられている。図3に示すように、ホットライン180の信号(内部信号)には、非常停止信号181と同期時間リセット信号182と同期時間補正信号183とが含まれている。これらはそれぞれ独立した信号線を伝送される。
【0026】
I/Oインターフェース回路360は、サーボアンプCPU310および内部タイマー350との間で直接的に信号授受を行うようになっている。すなわち、I/Oインターフェース回路360とサーボアンプCPU310との間では、障害発生通知信号EMGと割込信号INTERRUPTとが授受される。また、I/Oインターフェース回路360と内部タイマー350との間では、リセット信号RESETと同期時間補正信号CORRECTとタイマー信号TIMERとが授受される。
【0027】
ここで、この発明では、絶対時間指令データを用いて各サーボアンプ間で同期補間制御を行うので、各サーボアンプの内部タイマー350は、正確に合わせる必要がある。その方法としては、次の(1)〜(4)の方法がある。
【0028】
(1)各サーボアンプの内部タイマー350には、高精度のタイマーを用いる。例えば、精度が約10−13〜10−16以上の原子時計を用いることが好ましい。しかし、原子時計などの正確なタイマーは、高価であり、また装置も大きくなり、現状では入手困難である。したがって、通常のタイマーを用い、同期ずれ補正を行うことによって絶対時間を確保することとし、(2)(3)の方法によって各サーボアンプの内部タイマー350の時間合わせを行う。
【0029】
(2)例えば、各サーボアンプの内部タイマー350の設定は、年・月・日・時・分までを非同期通信によってパソコン110から設定し、秒(s)・ミリ秒(ms)・マイクロ秒(μs)・ナノ秒(ns)などは、ホットライン180に非常用に設けた非常停止信号181または専用に設けた同期時間リセット信号182を用いて次のようにして設定する。
【0030】
すなわち、加工開始前に、サーボアンプ130〜13nの中の1つのサーボアンプのサーボアンプCPU310が障害発生通知信号EMGを発生すると、そのサーボアンプのI/Oインターフェース回路360から非常停止信号181がホットライン180に送出され、他の全てのサーボアンプに通知される。他の全てのサーボアンプのI/Oインターフェース回路360では、ホットライン180から非常停止信号181を受信すると、内部タイマー350に対してリセット信号RESETを出力する。これによって、他の全てのサーボアンプでは、絶対時間合わせが行われる。
【0031】
または、加工開始前に、同期時間リセット信号182をサーボアンプ130〜13nの中の1つのサーボアンプからホットライン180に送出し、全てのサーボアンプにリセットをかける。全てのサーボアンプのI/Oインターフェース回路360では、ホットライン180から同期時間リセット信号182を受信すると、内部タイマー350に対してリセット信号RESETを出力する。これによって、他の全てのサーボアンプでは、絶対時間合わせが行われる。なお、同期時間リセット信号182は、パソコン110がホットライン180に送出するようにしてもよい。
【0032】
(3)または、各サーボアンプの内部タイマー350の設定は、年・月・日・時・分・秒までを原子時計に連動した長波JJY(標準周波数局)による電波時計またはGPS衛星から得た絶対時間を用いて秒単位で設定し、秒(s)・ミリ秒(ms)・マイクロ秒(μs)・ナノ秒(ns)などは、(2)で説明したようにホットライン180に設けた非常停止信号181または同期時間リセット信号182を用いて設定する。
【0033】
(4)特殊なケースとして、あるサーボアンプのサーボアンプCPU310が障害発生通知信号EMGを発生すると、そのサーボアンプのI/Oインターフェース回路360から非常停止信号181がホットライン180に送出され、他の全てのサーボアンプに通知される。他の全てのサーボアンプのI/Oインターフェース回路360では、ホットライン180から非常停止信号181を受信すると、サーボアンプCPU310に対して割込信号INTERRUPTを発生するとともに、内部タイマー350に対してリセット信号RESETを出力する。これによって、健全な他の全てのサーボアンプでは、絶対時間合わせが行われる。
【0034】
次に、各サーボアンプの内部タイマー350における絶対時間の同期ずれを補正する方法について説明する。通常のタイマーは、月差数秒の誤差がある。例えば、月差±10秒の誤差を含むタイマーであれば、1時間の加工中に約±13.89ms程度の誤差が生じる(=10秒÷30日÷24時間)。
【0035】
この絶対時間の同期ずれ補正は、ホットライン180に設けてある同期時間補正信号183を用いて行う。すなわち、サーボアンプ130〜13nの中の1つが、その装置の内部タイマー350から1ms周期のディジタル信号であるタイマー信号TIMERをI/Oインターフェース回路360に出力すると、I/Oインターフェース回路360からホットライン180に同期時間補正信号183が送出される。他の全てのサーボアンプでは、I/Oインターフェース回路360がホットライン180から同期時間補正信号183を取り込むと、内部タイマー350に対して同期時間補正信号CORRECTを出力する。これによって、他の全てのサーボアンプでは、絶対時間の同期ずれが補正される。
【0036】
この同期時間補正信号183を利用して1秒単位でサーボアンプ間の内部タイマー350の誤差を補正すれば、月差±10秒の誤差を含むタイマーであれば、1秒毎に約±3.86μsの誤差を毎回補正することになるので、1時間の加工を行っても誤差は、約±3.86μsのままである。当然、補正周期を1ms以下にすれば誤差の範囲は更に改善できる。同期時間補正信号183は、パソコン110がホットライン180に送出することでもよいことは勿論である。
【0037】
次に、図1,図2,図4,図5を参照して、パソコン110の動作について説明する。なお、図4は、図1に示すパソコンの動作を説明するフローチャートである。図5は、同期補間制御軸としてX軸とY軸を例にした座標系を説明する図である。
【0038】
図5において、座標位置L1(X1,Y1),L2(X2,Y2)は、それぞれ絶対位置である。絶対位置L1(X1,Y1)から絶対位置L2(X2,Y2)までの移動距離Lを移動速度Vで移動する。また、単位時間Δt当たりのX軸移動距離ΔXmと単位時間Δt当たりのX軸移動距離ΔYmとによる座標位置ΔLm(ΔXm,ΔYm)は、絶対位置L1(X1,Y1)から単位時間Δt当たりの移動距離ΔLmとして求められた単位時間Δt当たりの絶対位置である。この単位時間Δt当たりの絶対位置ΔLm(ΔXm,ΔYm)から絶対位置L2(X2,Y2)までの距離Lnが残距離である。
【0039】
さて、図4において、外部記憶装置230に予め保存された加工プログラムまたは3次元CADデータを読み出し(ステップST1)、加工プログラム解析処理によって解析データ{絶対位置L1(X1,Y1),L2(X2,Y2)、移動速度V、移動距離L等}を求める(ステップST2)。
【0040】
次いで、求められた解析データ{絶対位置L1(X1,Y1),L2(X2,Y2)、移動速度V、移動距離L等}を用いて微少線分演算処理を実行し、単位時間Δt当たりの移動量ΔLmを求め(ステップST3)、さらに軸座標分割演算処理を実行し、各軸方向の単位時間Δt当たりの移動距離ΔXm,ΔYmを求めることで、各座標に移動量を分割する(ステップST4)。そして、各軸に分割された単位時間当たりの移動距離ΔXm,ΔYmから単位時間当たりの移動距離ΔLmを求め、また残距離Lnを求め、残距離Ln≦移動距離ΔLmであるか否かを判断し(ステップST5)、残距離Ln≦移動距離ΔLmとなるまで(ステップST5:No)、ステップST3とステップST4の処理が繰り返される。
【0041】
残距離Ln≦移動距離ΔLmとなると(ステップST5:Yes)、補間した絶対位置指令データ{データID、制御軸番号、位置指令、時間指令}が求まるので、それを外部記憶装置230に一旦保管する(ステップST6)。この外部記憶装置230への保管動作は、外部記憶装置230に一定量蓄積できるまで繰り返し行われる(ステップST7)。
【0042】
そして、絶対位置指令データ{データID、制御軸番号、位置指令、時間指令}が外部記憶装置230に一定量蓄積できると(ステップST7:Yes)、その絶対位置指令を外部記憶装置230から読み出し、通信データバッファメモリ255に一時的に保管し(ステップST8)、適宜なタイミングでLAN115を経由してサーボアンプ130〜13nに送信される(ステップST9)。
【0043】
次に、図6を参照して、各サーボアンプの動作について説明する。なお、図6は、図1に示すサーボアンプの動作を説明するフローチャートである。図6において、LANから補間された絶対位置指令データ{データIDn、制御軸番号AX1n、絶対時間指令T、位置指令F}が受信されると(ステップST21)、通信データバッファメモリ335に一時保管される(ステップST22)。この通信データバッファメモリ335への保管動作は、通信データバッファメモリ335に一定量蓄積できるまで繰り返し行われる(ステップST23)。
【0044】
そして、通信データバッファメモリ335に一定量蓄積されると(ステップST23:Yes)、通信データバッファメモリ335から全ての絶対位置指令データを読み出し、次の通信データを受信できるように通信データバッファメモリ335を消去する(ステップST24)。
【0045】
次いで、非同期式通信では、受信データの順番などが入れ替わることが発生するので、絶対位置指令データのデータIDn、制御軸番号AX1n及び絶対時間指令Tに基づき絶対位置指令データを並び替えて、メインメモリ320に書き込む(ステップST25)。なお、ステップST25では、何らかの要因で受信できなかった通信パケットが発生した場合には、その前後のデータからデータ補間(線形補間やスプライン補間など)の処理を実施してメインメモリに書き込むことも行われる。
【0046】
次に、メインメモリ320から絶対位置指令データを読み出し(ステップST26)、絶対時間指令データTと内部タイマー350の実時間データtとの一致不一致を比較し(ステップST27)、T=tであるか否かを判断し(ステップST28)、T=tとなるまで(ステップST28:No)、ステップST26とステップST27の処理を繰り返す。
【0047】
そして、T=tとなった時点で(ステップST28:Yes)、絶対位置指令データに基づきサーボモータの回転数を演算し(ステップST29)、サーボモータの駆動電流を制御してサーボモータを回転駆動する(ステップST30)。これによって、複数のサーボアンプ130〜13n間で同期を取りながら、サーボモータを回転させることができる。
【0048】
このように、この実施の形態によれば、パソコン110が複数のサーボアンプ130〜13nに対し、LAN115を介した非同期通信によって絶対時間指令を送信することにより、複数のサーボアンプ130〜13n間で同期補間制御が行える。
【0049】
そして、スイッチング・ハブ120に接続される上位のネットワーク125から、図4におけるステップ1での3次元CADデータ、ステップST2での解析データ、ステップST3での移動量ΔLm、ステップST4での移動距離ΔXm,ΔYm、及びステップST6での絶対位置指令データをダウンロードすることが可能となるので、パソコン110に代わってインターネット経由で外部のホストコンピュータなどから直接数値制御データを送信し、同期補間制御による加工が可能になる。
【0050】
加えて、安全上、サーボアンプ130〜13n間にホットライン180を設けてあるので、異常を検出したサーボアンプがホットライン180上に非常停止信号181を送出することにより、直ちに他のサーボアンプに異常発生が通知され、停止動作等が実施できる。また、ホットライン180に接続される非常停止スイッチ190を手動操作することでも非常停止が行える。
【0051】
なお、パソコン110に対しては、上記と同様のホットライン180を用いた方法、または、LAN115を経由して停止の情報を通知することができる。パソコン110では、表示画面にアラームを表示するなどの処理をする。但し、この措置は、パソコン110が安全上動作を速やかに停止する機械(例えばリアルタイムで制御するモータやI/O機器など)に直接接続されていない場合に限られる。
【0052】
ホットライン180の非常停止信号181を用いる場合としては、例えば、複数のサーボアンプ130〜13n間で同期補間制御が実施され、加工中である場合に、データが送られてこなくなった、あるいは、内部タイマー350が示す絶対時間よりも古い絶対時間指令データが送信されてきた場合が考えられる。これらは、例えば、図1に示す構成の数値制御システムを持つ工作機械が複数あって、全てのシステムが上位のネットワーク125を介して繋がっている場合に、何らかの原因で上位のネットワーク125が混雑し、通信遅滞を生じた場合に起こり得る。
【0053】
このような場合、複数のサーボアンプ130〜13nでは、同期補間制御の実施過程(加工中)でデータが送られてこなくなった場合は、何らかの要因で通信が切断されたと判断し、また、内部タイマー350が示す絶対時間よりも古い絶対時間指令データが送信されてきた場合は、遅れたものと判断する。そして、異常を検出したサーボアンプは、直ちに対応するサーボモータを停止させ、他のサーボアンプにもホットライン180の非常停止信号181を用いて通報し、それらのサーボモータを停止させることができる。
【0054】
一方、この実施の形態では、上記したサーボモータを停止させる事態の発生は、例えば、次のような措置を講ずることによって回避できる。すなわち、サーボアンプ側に容量が十分な通信データバッファメモリを備えるか、より高速なLAN(例えば100Mbps、1Gbpsなど)を備え、さらに、2デバイス間の専用通信が可能な一般的なスイッチング・ハブなどを用いて工作機械内部の一つの数値制御システム内で通信がクローズする接続方式をとれば、システム内部の通信が混雑することがないので、通信が間に合わない等の原因による停止動作は行わないようにすることができる。
【0055】
次に、図7〜図9を参照して、以上のようにパソコン110からサーボアンプ130〜13nに送信される通信データ等について説明する。なお、図7は、図1に示すパソコンからサーボアンプへの通信データの構成例を示す図である。図8は、図1に示すパソコンとサーボアンプとの通信間隔の時間をLANの通信速度と補間周期との関係として計算した図である。図9は、図1に示すパソコンの外部記憶装置に蓄積するサーボ通信用のデータ量を補間周期と加工時間との関係として計算した図である。
【0056】
図7では、データの種類毎に、「有効bit幅」と「データ有効範囲」と「使用bit幅」とが規定されている。1軸を制御するデータは、768bitで構成されている。8軸の合計では、768Byteである。
【0057】
その内訳(データ種類)は、データID、軸制御番号、年月日からナノ秒(ns)までの時間を表すことができる時間指令(絶対時間)と、機械座標系の原点からの位置(絶対位置)をメートル(m)単位からナノメータ(nm)単位まで表すことができる位置指令(絶対位置指令)、その他(制御命令やサーボパラメータの設定値)とからなる。
【0058】
図7において、時間指令があるのは、この実施の形態では、時系列に連続した補間データが一定の間隔で順次送信される従来の同期通信方式とは異なり、通信周期を補間周期と同様に一定に保つことが保証されない非同期の通信方式を採用しているからである。
【0059】
すなわち、この実施の形態では、安価でデータ転送能力の高いLANなど一般に普及する通信手段を用い、補間データを実行する時間を絶対時間で複数のサーボアンプに指令し、各サーボアンプは、個別に持つ絶対時間を示す内部タイマーを用いて絶対時間指令データに基づき補間処理を実行するようにしているからである。
【0060】
そこで、図8では、LANの通信速度と補間周期Δtとを変化させた場合のパソコンとサーボアンプとの通信間隔が示されている。図8において、LANの種類としては、10BASE−T(データ転送速度10Mbit/sec、サーボアンプに必要なメモリ容量1250kByte/sec)と、100BASE−TX(データ転送速度100Mbit/sec、サーボアンプに必要なメモリ容量12.50MByte/sec)と、1000BASE(データ転送速度1000Mbit/sec、サーボアンプに必要なメモリ容量125MByte/sec)とが示されている。
【0061】
補間周期Δtとデータ容量(8軸)とデータ転送速度としては、(3,5ms,768Byte,214.29kByte)と、(0.35ms,768Byte,2.09MByte)と、(0.035ms,768Byte,20.93MByte)とが示されている。但し、LANによる転送効率は、100%としている。
【0062】
従来の同期式では、通信周期と補間周期は一致しているが、例えば、従来の同期式での通信周期Δt=3.5msで1回の通信データが768Byte(8軸分)の場合、同等の補間周期Δtのデータを得るには、この実施の形態による方式では、10BASE−Tを用いた場合、約5.97秒間に1秒分程度の通信がパソコンとサーボアンプ間で確立すればよいことになる。
【0063】
この場合、サーボアンプ側には、最低1秒分のデータ転送用のメモリ容量(=1.25MByte)があればよいことになる。このメモリ容量は、通信データバッファメモリ335だけでなく、メインメモリ320も使用すれば実現することができる。
【0064】
そして、LANによる転送効率は、接続される機器(パソコンやサーボアンプ等)の数によって左右されるため、100BASE−TXや1000BASEのLANを用いてより高速な通信が行えるようにする場合、サーボアンプ側のメモリ容量を増やすことで柔軟に対応することができる。
【0065】
また、ナノ・メータ補間など高精度な加工を実施するために、補間周期Δtが0.35msや0.035msなどより短い補間間隔を実現する場合も、システム構成を変えることなく、LANの高速化やサーボアンプ側メモリの大容量化によって柔軟に対応できる。図8は、そのような判断材料を提供していることがわかる。
【0066】
次に、図9では、パソコン110の外部記憶装置230に蓄積する補間した絶対時間指令データの蓄積データ量として、Δt時間のデータ量(8軸)と、1秒間のデータ量(8軸)と、1時間のデータ量(8軸)と、1日間のデータ量(8軸)とが示されている。補間周期Δtは、3.5msと0.35msと0.035msとが示されている。
【0067】
例えば、約1時間分の絶対時間指令データを一括して蓄積する場合、3.5msの補間周期では、約753.35MByteの記憶容量が必要である。しかし、外部記憶装置230にハードディスクなどを用いれば安価にシステムが構成できる。また、1時間以上の加工を753.35MByteの容量で行う場合は、送信し終わったデータを消去しそこに1時間を超えるデータを順次書き込むようにすることで簡単に実現できる。その場合の注意点は、送信データがなくならないように、パソコンCPU210のデータ生成時間との関係で決まる必要最低限のデータを外部記憶装置230に予め演算して保存しておくことである。
【0068】
以上のように、この実施の形態によれば、専用のOSに専用のCPUを用いて補間処理を実施していた従来の数値制御方式とは異なり、パソコン110にて全ての補間処理を演算できるので、各処理を実施するプログラムは、ユーザがカスタマイズし易い開発環境で構築でき、かつユーザが自らのアプリケーションを実装できる。
【0069】
特に、図4において、ステップST2での解析データ、ステップST3での移動量ΔLm、ステップST4での移動距離ΔXm,ΔYm、及びステップST6での絶対位置指令データをカスタマイズすることによって、ユーザ独自の特殊な補間制御を行い、特殊な加工を実現することができる。
【0070】
また、図4では、パソコン110からサーボアンプ130〜13nに送信する通信データを軸毎に分割した絶対位置指令データとしているが、絶対時間指令データを用いて非同期式の通信を行うので、送信するデータに加工を実行させる時間を指定する絶対時間指令データを付加すれば、サーボアンプに送信するデータは、ステップST1での3次元CADデータ、ステップST2での解析データ、ステップST3での移動量ΔLm、およびステップST4での移動距離ΔXm,ΔYmのいずれを用いてもよい。ステップST1での3次元CADデータには、加工開始時間が付加され、残り3つのデータには、加工開始時間に加工処理時間を足した時間が付加される。
【0071】
このように各処理段階でのデータを送信する場合には、送信データ以後の残りの処理は、サーボアンプ側のサーボアンプCPU310で演算することになる。残りの処理が多くなれば、パソコン側のパソコンCPU210の負荷が減り、その分、サーボアンプ側の演算負荷は増大する。したがって、サーボアンプ側には、高価で高速なCPUや大容量のメモリが必要となる。ここで、ステップST1〜ST4の一連の処理は、全て非同期で行えるので、パソコン側で処理しても、サーボアンプ側で処理しても同じ演算結果が得られるアルゴリズムが用いられる。
【0072】
ところで、リアルタイムでステップST1〜ST4の全ての演算処理を実施できないと、工作機械の段取り作業など手動による加工中の速度変更に即座に反応するのは難しい。
【0073】
そこで、段取り時などは、図2に示すようなプラグ・アンド・プレイで接続可能なPCカードタイプのカード型NC280をパソコン110のPCカードインターフェース回路270に接続し、カード型NC280上でステップST1〜ST4の一連の処理をリアルタイムに実施して、即応性の必要な手動による数値制御が実施できるようにしている。
【0074】
この場合には、通信手段にLANを用いるので、通信データバッファメモリ255の容量が大きいと即応性が低下する。したがって、加工前にパソコン上で工具経路や加工チェックなどのシミュレーションを十分実施し、手動操作による加工途中のデータ変更が発生しないようにしておくとよい。
【0075】
また、段取り以外の実際の加工時、または動作が確認済みの加工プログラムを実行する場合は、カードNCはパソコンから取り外し、パソコン110でステップST1〜ST4の演算処理を実施するとよい。
【0076】
実施の形態2.
図10は、この発明の実施の形態2である数値制御システムにおけるサーボアンプの構成を示すブロック図である。図11は、図10に示すA/Dインターフェース回路1060の詳細を示すブロック図である。なお、図10では、図3に示した構成のうち同一ないしは同等である構成要素には同一の符号が付されている。ここでは、この実施の形態2に関わる部分を中心に説明する。
【0077】
すなわち、図10に示すサーボアンプ1030では、図3に示したサーボアンプ130において、I/Oインターフェース回路360に代えて、A/Dインターフェース回路1060が設けられている。そして、A/Dインターフェース回路1060に入出力するホットライン180の信号は、非常停止信号181と同期時間補正信号183とを兼ねる非常停止信号/同期時間補正信号184の一つだけである。
【0078】
図1にて示したホットライン180の各信号は、ワイヤードOR接続されており、例えば、非常停止信号181は、非常停止解除時にプルアップ抵抗によって所定時間幅高レベルとなるパルス信号である。そこで、非常停止信号/同期時間補正信号184は、図11に示すように、非常停止信号181と同様波形の非常停止信号184aに、時間補正が行われるときに、時間補正用のアナログ信号184bが重畳される信号である。
【0079】
A/Dインターフェース回路1060は、具体的には、例えば図11に示すように、非常停止信号184aに関わるディジタル入出力用バッファ回路1061と、ホットライン180から取り込んだ非常停止信号/同期時間補正信号184の特定電圧レベルのアナログ信号184bを増幅するアナログ増幅回路1062と、その増幅されたアナログ信号1070をディジタル信号1072に変換し、それを同期時間補正信号CORRECTとして内部タイマー350に出力するA/Dコンバータ1063と、内部タイマー350から入力する1ms周期のディジタル信号1072であるタイマー信号TIMERをアナログ信号1070に変換するD/Aコンバータ1064と、その変換されたアナログ信号1070から特定電圧レベルのアナログ信号184bを持つ非常停止信号/同期時間補正信号184を発生し、ホットライン180に送出するアナログ出力回路1065とを備えている。
【0080】
ディジタル入出力用バッファ回路1061は、サーボアンプCPU310から所定時間幅のパルス信号1074である障害発生通知信号EMGを受けて、ホットライン180に非常停止信号/同期時間補正信号184の非常停止信号184aを出力する。また、ホットライン180から非常停止信号/同期時間補正信号184の非常停止信号184aを受けて、サーボアンプCPU310に対し割込信号INTERRUPTを出力し、内部タイマー350に対しリセット信号RESETを出力する。
【0081】
ここで、ディジタル入出力用バッファ回路1061の入力電圧は、2.0V以上で、出力電圧は、2.5V以下で、絶対最大入力電圧は、3.3Vであるとする。また、ホットライン180から1ms周期で入力する非常停止信号/同期時間補正信号184のアナログ信号184bは、例えば、1kHz(振幅±0.5V以下、基準電圧2.5V)の周波数信号である。
【0082】
同期時間の補正では、パソコン110または一つのサーボアンプが、1ms周期のディジタル信号1072であるタイマー信号TIMERを発生し、他の残りのサーボアンプが、1ms毎の同期時間補正信号CORRECTをタイマー信号TIMERと同じディジタル信号1072として得ることができる。
【0083】
このように、実施の形態2によれば、時間設定や同期ずれ補正に用いるホットラインの信号線をまとめることができるので、ホットラインの構成を簡素化することができる。
【0084】
実施の形態3.
図12は、この発明の実施の形態3である数値制御システムにおけるサーボアンプの構成を示すブロック図である。なお、図12では、図10に示した構成のうち同一ないしは同等である構成要素には同一の符号が付されている。ここでは、この実施の形態3に関わる部分を中心に説明する。
【0085】
図12に示すサーボアンプ1230では、図10に示したサーボアンプ1030において、コンパレータ回路1270が設けられている。コンパレータ回路1270は、図6に示したステップST27,ST28での時間比較処理を実行する。
【0086】
すなわち、コンパレータ回路1270は、サーボアンプCPU310からの絶対時間指令データD_TIMEと内部タイマー350からの実時間データR_TIMEとを比較する。比較結果、同じでなければ、サーボアンプCPU310に対して次データの入力を要求する入力要求信号D_INを出力し、同じであればサーボモータ回転制御回路340に対して絶対座標データD_OUTを出力する。
【0087】
図6に示したステップST27,ST28での時間比較処理は、リアルタイムで演算するためサーボアンプCPU310の負荷が大きい。実施の形態3によれば、ステップST27,ST28での時間比較処理をハードウェアによって高速に処理できるので、サーボアンプCPU310の負荷が軽減できる。なお、実施の形態3では、実施の形態2への適用例を示したが、実施の形態1にも同様に適用できることは言うまでもない。
【0088】
以上のように、この発明による数値制御システムは、複数のサーボアンプ間での同期補間制御が絶対時間指令データを非同期通信方式にて複数のサーボアンプに送信することによって実現できるので、大規模で高精度、かつユーザの多様な要求に柔軟に対応できる数値制御システムを例えば安価なパソコン、LAN等を用いて構成することができる。
【0089】
ここで、絶対時間指令データを送信する主体、すなわち数値制御処理手段は、図1では、コンピュータ装置としてのパソコン110または上位のネットワーク125のホストコンピュータとしたが、この発明はそれに限定されるものではなく、例えば、従来の数値制御装置に非同期通信機能を付加して用いてもよく、また数値制御装置部を内蔵した処理能力の高いサーボアンプに非同期通信機能を付加して用いてもよい。
【0090】
また、図1では、LAN115は、有線LANを示すが、無線LANとすることもでき、さらに光ケーブルや衛星通信などの通信手段も用いることができる。すなわち、この発明によれば、通信速度が高速で、かつ、必要十分な容量のメモリと時間に正確な内部タイマーとがあれば、インターネット等の広域ネットワークや無線通信、衛星通信を介して、サーボモータの同期補間制御が可能となるので、大規模な数値制御システムが構築できる。
【0091】
例えば、地球を周回する太陽光発電衛星のミラー制御等に応用すれば、複数のミラー毎に制御するサーボモータを数nmの移動単位で同期制御し、太陽光を集積するなどが行える数値制御システムが構築できる。
【0092】
【発明の効果】
以上説明したように、この発明によれば、数値制御処理手段と複数の軸制御手段とを非同期通信方式のネットワークを介して接続し、数値制御処理手段が、数値制御処理の演算を行って各軸の処理時間を表す絶対時間指令データを生成し、生成した絶対時間指令データを非同期通信方式のネットワークに送信すると、複数の軸制御手段が、ネットワークから前記絶対時間指令データを取り込み内蔵する絶対時間を示す内部タイマーに従って相互間で同期補間制御を実施するようにしたので、数値制御処理専用のCPU、専用の同期式通信インターフェースを使用しないで済み、安価でかつユーザの多様な要請に柔軟に対応できる数値制御システムが得られる。
【図面の簡単な説明】
【図1】この発明の実施の形態1である数値制御システムの構成を示すブロック図である。
【図2】図1に示すパソコンの構成例を示すブロック図である。
【図3】図1に示すサーボアンプの構成例を示すブロック図である。
【図4】図1に示すパソコンの動作を説明するフローチャートである。
【図5】同期補間制御軸としてX軸とY軸を例にした座標系を説明する図である。
【図6】図1に示すサーボアンプの動作を説明するフローチャートである。
【図7】図1に示すパソコンからサーボアンプへの通信データの構成例を示す図である。
【図8】図1に示すパソコンとサーボアンプとの通信間隔の時間をLANの通信速度と補間周期との関係として計算した図である。
【図9】図1に示すパソコンの外部記憶装置に蓄積するサーボ通信用のデータ量を補間周期と加工時間との関係として計算した図である。
【図10】この発明の実施の形態2である数値制御システムにおけるサーボアンプの構成を示すブロック図である。
【図11】図10に示すA/Dインターフェース回路の詳細を示すブロック図である。
【図12】この発明の実施の形態3である数値制御システムにおけるサーボアンプの構成を示すブロック図である。
【符号の説明】
110 パソコン、115 LAN、120 スイッチング・ハブ、130〜13n,1030,1230 軸制御部(サーボアンプ)、125 上位ネットワーク、180 ホットライン、181 非常停止信号、182 同期時間リセット信号、183 同期時間補正信号、184 非常停止信号/同期時間補正信号、190 非常停止スイッチ、140〜14n サーボモータ、210 パソコンCPU、220,320 メインメモリ、230 外部記憶装置、240,350 内部タイマー、250,330 LANインターフェース回路、255,335 通信データバッファメモリ、270 PCカードインターフェース回路、280 カード型NC(PCカードタイプ)、290 サーボアンプ通信データ、310 サーボアンプCPU、340 サーボモータ回転制御回路、360 I/Oインターフェース回路、1060 A/Dインターフェース回路、1061 ディジタル入出力用バッファ回路、1062 アナログ増幅回路、1063 A/Dコンバータ、1064 アナログ出力回路、1065 D/Aコンバータ、1270 コンパレータ回路。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a numerical control system.
[0002]
[Prior art]
In a conventional numerical control device, synchronous interpolation control performed between a plurality of axis control units (hereinafter, referred to as “servo amplifiers”) for controlling each axis is realized by a relative time command based on a synchronous signal. That is, in the conventional numerical controller, synchronization is performed between a plurality of servo amplifiers based on a synchronization signal having a certain period, and synchronous interpolation control is performed between the plurality of servo amplifiers based on command data such as position data and speed data. are doing.
[0003]
By the way, in the synchronous interpolation control method based on the relative time command based on the synchronous signal, a dedicated synchronous communication is required between the numerical controller and the servo amplifier. (Serial Realtime Communication System) and other communication standards have been formulated. However, since the communication performance is greatly related to the control performance, each numerical control device maker actually depends on its own dedicated communication system in order to obtain characteristics.
[0004]
In order to reduce the complexity of the cables concentrated on the numerical control unit, the numerical control unit, the screen control unit, and a plurality of servo amplifiers are connected via a general-purpose network, and the components are distributed. There has been proposed a numerical control system in which the control is performed (for example, see Patent Document 1). In the numerical control system disclosed in Patent Document 1, it is presumed that synchronous interpolation control between a plurality of servo amplifiers is realized by a relative time command based on a synchronous signal.
[0005]
In recent years, a numerical control system using a personal computer (hereinafter, referred to as a “PC”) has been proposed with the background of higher performance and lower price. That is, a numerical controller is mounted in an expansion slot of a personal computer, the numerical controller is connected to a storage device via a bus, and a plurality of servo amplifiers are connected to the numerical controller via a dedicated communication cable. A numerical control system has been proposed (for example, see Patent Documents 2 and 3).
[0006]
In the numerical control systems disclosed in Patent Documents 2 and 3, a movement command is calculated by a CPU of a personal computer from a processing program and processing data stored in a storage device, and the calculated movement command is transmitted to the numerical control device via a bus. Input is performed asynchronously without overflowing to a communication data buffer provided in an internal servo control unit. Synchronous interpolation control between a plurality of servo amplifiers is realized by a relative time command based on a synchronization signal.
[0007]
[Patent Document 1]
JP-A-9-73310 (paragraphs 0009 to 0012, FIG. 1).
[Patent Document 2]
WO 01/44882 pamphlet (pages 7 to 9, FIG. 1).
[Patent Document 3]
JP-A-9-146623 (paragraphs 0030 to 0033, FIG. 1).
[0008]
[Problems to be solved by the invention]
However, a synchronous interpolation control method using a relative time command based on a synchronous signal requires an OS, CPU, and synchronous communication interface dedicated to numerical control processing, so that it is expensive and has flexibility to meet various demands of users. There is a problem that lacks.
[0009]
The personal computer has an asynchronous communication function, and in recent years, it has become possible to perform high-speed asynchronous communication via a network such as a LAN. By simply transmitting the stored data to a plurality of servo amplifiers at high speed through a network such as a LAN using an asynchronous communication function, if synchronous interpolation control can be performed among the plurality of servo amplifiers, it is inexpensive and A flexible numerical control system can be built, but how to configure it is a problem.
[0010]
The present invention has been made in view of the above, and by enabling each axis control unit to perform synchronous interpolation control using absolute time, a numerical control system that is inexpensive and can flexibly respond to various requests of users. The purpose is to obtain.
[0011]
[Means for Solving the Problems]
In order to achieve the above object, a numerical control system according to the present invention performs an operation of a numerical control process to generate absolute time command data representing a processing time of each axis, and transmits the generated absolute time command data to an asynchronous communication. Numerical control processing means for transmitting data to the network of the system, and connected to the numerical control processing means via the network of the asynchronous communication system, mutually fetching the absolute time command data from the network and inter-communicating with each other in accordance with an internal timer indicating the absolute time. And a plurality of axis control means for performing synchronous interpolation control.
[0012]
According to the present invention, when the numerical control processing means performs an operation of the numerical control processing to generate absolute time command data representing a processing time of each axis, and transmits the generated absolute time command data to the network of the asynchronous communication system. A plurality of axis control means connected to the numerical control processing means via the network of the asynchronous communication system take in the absolute time command data from the network, and perform synchronous interpolation control between them in accordance with an internal timer indicating an absolute time incorporated therein. Is carried out.
[0013]
BEST MODE FOR CARRYING OUT THE INVENTION
Preferred embodiments of a numerical control system according to the present invention will be described below in detail with reference to the accompanying drawings.
[0014]
Embodiment 1 FIG.
FIG. 1 is a block diagram showing a configuration of a numerical control system according to Embodiment 1 of the present invention. The numerical control calculation means used in the present invention calculates the numerical control processing, specifically, calculates the movement amount of each axis from the analysis of the machining program, and generates absolute time command data representing the processing time of each axis. A function can be added, and an asynchronous communication function with a network such as a LAN is provided. This numerical control operation means can be realized using a computer device such as a workstation or a personal computer, for example. In this embodiment, a configuration example using a personal computer is shown from the viewpoint of inexpensive configuration.
[0015]
That is, in FIG. 1, a personal computer 110 as a computer device has a CPU, a memory such as a hard disk as an external storage device, and an asynchronous communication function with a network such as a LAN.
[0016]
The plurality of servo amplifiers 130 to 13n as the axis control units control the servo motors 140 to 14n of the corresponding axes. In the present embodiment, a synchronous interpolation control function using absolute time and a network such as a LAN are used. It has an asynchronous communication function.
[0017]
The switching hub 120 is a device that includes a switching circuit and is generally provided to enable dedicated communication between two devices in a network such as a LAN.
[0018]
The numerical control system shown in FIG. 1 has a configuration in which a personal computer 110 and a plurality of servo amplifiers 130 to 13n are connected via a switching hub 120 disposed on a LAN 115 as a network, for example. A high-level network 125 such as an intranet or the Internet can be connected to the switching hub 120. On the LAN 115, asynchronous communication using, for example, TCP / IP is performed.
[0019]
The servo amplifiers 130 to 13n are wired-OR connected by a hot line 180 for notifying an emergency stop or the like. The hot line 180 is also wired OR-connected with the emergency stop switch 190. In this embodiment, the hot line 180 shows a case where a dedicated communication cable is used. However, the hot line 180 may be configured with a wireless line using a dedicated frequency.
[0020]
FIG. 2 is a block diagram showing a configuration example of the personal computer shown in FIG. In FIG. 2, a personal computer 110 has a personal computer CPU 210 added with a function of executing processing from analysis of a machining program to calculation of a movement amount of each axis, and a main memory 220 used by the personal computer CPU 210 to implement the functions of the personal computer 110. , An external storage device 230 such as a hard disk in which machining programs and machining data (three-dimensional CAD data) are also stored, an internal timer 240 indicating an absolute time, a signal exchange with a servo amplifier via the LAN 115, and a servo on the LAN 115. The configuration is such that a LAN interface circuit 250 for transmitting amplifier communication data 290 is connected via an internal bus 260.
[0021]
A communication data buffer memory 255 for temporarily storing communication data is connected to the LAN interface circuit 250. A PC card interface circuit 270 is connected to the internal bus 260 so that a card type NC 280, which is a numerical controller equipped with a dedicated CPU, can be connected by plug and play.
[0022]
As shown in FIG. 1, the hotline 180 may be connected to the personal computer 110 in some cases. However, since the hot line 180 is used for notifying an emergency stop or the like among the servo amplifiers 130 to 13n, and the personal computer 110 can communicate with the servo amplifier via the LAN 115, the hot line 180 is used in FIG. Is omitted from the drawing.
[0023]
FIG. 3 is a block diagram showing a configuration example of the servo amplifier shown in FIG. The servo amplifiers 130 to 13n all have the same configuration. FIG. 3 illustrates the servo amplifier 130 as a representative.
[0024]
3, a servo amplifier 130 exchanges signals via a LAN 115 with a servo amplifier CPU 310 realizing a function as an axis control unit, a main memory 320 used by the servo amplifier CPU 310, and transmits servo amplifier communication data 290 from the LAN 115. The configuration is such that a LAN interface circuit 330 for taking in and the like, a servo motor rotation control circuit 340 for rotating and driving the servo motor 140, and an internal timer 350 indicating an absolute time are connected via an internal bus 370. A communication data buffer memory 335 for temporarily storing communication data is connected to the LAN interface circuit 330.
[0025]
Further, an I / O interface circuit 360 for transmitting and receiving signals via the hot line 180 is provided. As shown in FIG. 3, the signal (internal signal) of the hot line 180 includes an emergency stop signal 181, a synchronization time reset signal 182, and a synchronization time correction signal 183. These are transmitted through independent signal lines.
[0026]
The I / O interface circuit 360 directly exchanges signals with the servo amplifier CPU 310 and the internal timer 350. That is, the failure occurrence notification signal EMG and the interrupt signal INTERRUPT are exchanged between the I / O interface circuit 360 and the servo amplifier CPU 310. Further, a reset signal RESET, a synchronization time correction signal CORRECT, and a timer signal TIMER are exchanged between the I / O interface circuit 360 and the internal timer 350.
[0027]
Here, in the present invention, since the synchronous interpolation control is performed between the servo amplifiers using the absolute time command data, the internal timer 350 of each servo amplifier needs to be accurately adjusted. As the method, there are the following methods (1) to (4).
[0028]
(1) A high-precision timer is used as the internal timer 350 of each servo amplifier. For example, it is preferable to use an atomic clock having an accuracy of about 10-13 to 10-16 or more. However, accurate timers, such as atomic clocks, are expensive and the equipment is large, making it difficult to obtain at present. Therefore, the absolute time is secured by performing the synchronization deviation correction using a normal timer, and the time of the internal timer 350 of each servo amplifier is adjusted by the methods (2) and (3).
[0029]
(2) For example, the internal timer 350 of each servo amplifier is set from the personal computer 110 by year / month / day / hour / minute through asynchronous communication, and is set to seconds (s) / milliseconds (ms) / microseconds ( μs) and nanoseconds (ns) are set as follows using the emergency stop signal 181 provided for the hot line 180 for emergency use or the synchronization time reset signal 182 provided for exclusive use.
[0030]
That is, if the servo amplifier CPU 310 of one of the servo amplifiers 130 to 13n generates the failure occurrence notification signal EMG before the processing is started, the emergency stop signal 181 from the I / O interface circuit 360 of that servo amplifier becomes hot. The signal is sent out to the line 180, and all other servo amplifiers are notified. Upon receiving the emergency stop signal 181 from the hot line 180, the I / O interface circuits 360 of all other servo amplifiers output a reset signal RESET to the internal timer 350. As a result, absolute time adjustment is performed in all the other servo amplifiers.
[0031]
Alternatively, before the start of machining, a synchronization time reset signal 182 is sent from one of the servo amplifiers 130 to 13n to the hot line 180 to reset all the servo amplifiers. When receiving the synchronization time reset signal 182 from the hot line 180, the I / O interface circuits 360 of all the servo amplifiers output a reset signal RESET to the internal timer 350. As a result, absolute time adjustment is performed in all the other servo amplifiers. The synchronization time reset signal 182 may be sent from the personal computer 110 to the hotline 180.
[0032]
(3) Alternatively, the setting of the internal timer 350 of each servo amplifier is obtained from the radio clock or the GPS satellite by the long wave JJY (standard frequency station) linked to the atomic clock for the year / month / date / hour / minute / second. The time is set in seconds using the absolute time, and the seconds (s), milliseconds (ms), microseconds (μs), nanoseconds (ns), etc. are provided on the hot line 180 as described in (2). The setting is made using the emergency stop signal 181 or the synchronization time reset signal 182.
[0033]
(4) As a special case, when a servo amplifier CPU 310 of a certain servo amplifier generates a failure occurrence notification signal EMG, an emergency stop signal 181 is sent from the I / O interface circuit 360 of the servo amplifier to the hot line 180, and another Notified to all servo amplifiers. When receiving the emergency stop signal 181 from the hot line 180, the I / O interface circuits 360 of all the other servo amplifiers generate an interrupt signal INTERRUPT for the servo amplifier CPU 310 and a reset signal for the internal timer 350. RESET is output. As a result, absolute time adjustment is performed in all other healthy servo amplifiers.
[0034]
Next, a description will be given of a method of correcting the synchronization deviation of the absolute time in the internal timer 350 of each servo amplifier. Normal timers have an error of several seconds per month. For example, in the case of a timer including an error of ± 10 seconds per month, an error of approximately ± 13.89 ms occurs during processing for one hour (= 10 seconds ÷ 30 days ÷ 24 hours).
[0035]
This absolute time synchronization deviation correction is performed using a synchronization time correction signal 183 provided on the hot line 180. That is, when one of the servo amplifiers 130 to 13n outputs a timer signal TIMER, which is a digital signal having a period of 1 ms, from the internal timer 350 of the device to the I / O interface circuit 360, the I / O interface circuit 360 issues a hot line. A synchronization time correction signal 183 is sent to 180. In all other servo amplifiers, when the I / O interface circuit 360 takes in the synchronization time correction signal 183 from the hot line 180, it outputs a synchronization time correction signal CORRECT to the internal timer 350. As a result, in all the other servo amplifiers, the synchronization deviation of the absolute time is corrected.
[0036]
If the error of the internal timer 350 between the servo amplifiers is corrected in units of one second using the synchronization time correction signal 183, if the timer includes an error of ± 10 seconds per month, approximately ± 3. Since an error of 86 μs is corrected every time, the error remains about ± 3.86 μs even after processing for one hour. Naturally, if the correction cycle is set to 1 ms or less, the range of the error can be further improved. It goes without saying that the synchronization time correction signal 183 may be sent from the personal computer 110 to the hotline 180.
[0037]
Next, the operation of the personal computer 110 will be described with reference to FIGS. FIG. 4 is a flowchart illustrating the operation of the personal computer shown in FIG. FIG. 5 is a diagram illustrating a coordinate system in which an X axis and a Y axis are used as synchronous interpolation control axes.
[0038]
In FIG. 5, coordinate positions L1 (X1, Y1) and L2 (X2, Y2) are absolute positions. The moving distance L from the absolute position L1 (X1, Y1) to the absolute position L2 (X2, Y2) is moved at the moving speed V. The coordinate position ΔLm (ΔXm, ΔYm) based on the X-axis movement distance ΔXm per unit time Δt and the X-axis movement distance ΔYm per unit time Δt is the movement per unit time Δt from the absolute position L1 (X1, Y1). This is the absolute position per unit time Δt obtained as the distance ΔLm. The distance Ln from the absolute position ΔLm (ΔXm, ΔYm) per unit time Δt to the absolute position L2 (X2, Y2) is the remaining distance.
[0039]
In FIG. 4, a machining program or three-dimensional CAD data stored in advance in the external storage device 230 is read (step ST1), and analysis data {absolute position L1 (X1, Y1), L2 (X2, Y2), moving speed V, moving distance L, etc. are obtained (step ST2).
[0040]
Next, a minute line segment calculation process is executed using the obtained analysis data {absolute position L1 (X1, Y1), L2 (X2, Y2), moving speed V, moving distance L, etc.}, and the per unit time Δt The movement amount ΔLm is obtained (step ST3), and the axis coordinate division calculation process is further executed to obtain the movement distances ΔXm and ΔYm per unit time Δt in each axis direction, thereby dividing the movement amount into each coordinate (step ST4). ). Then, the moving distance ΔLm per unit time is obtained from the moving distances ΔXm and ΔYm per unit time divided into the respective axes, the remaining distance Ln is obtained, and it is determined whether the remaining distance Ln ≦ the moving distance ΔLm. (Step ST5) Until the remaining distance Ln ≦ the moving distance ΔLm (Step ST5: No), the processing of Step ST3 and Step ST4 is repeated.
[0041]
When the remaining distance Ln ≦ the moving distance ΔLm is satisfied (step ST5: Yes), the interpolated absolute position command data {data ID, control axis number, position command, time command} is obtained, and is temporarily stored in the external storage device 230. (Step ST6). This storage operation in the external storage device 230 is repeated until a predetermined amount can be stored in the external storage device 230 (step ST7).
[0042]
When a certain amount of absolute position command data {data ID, control axis number, position command, time command} can be stored in the external storage device 230 (step ST7: Yes), the absolute position command is read from the external storage device 230. The data is temporarily stored in the communication data buffer memory 255 (step ST8), and transmitted to the servo amplifiers 130 to 13n via the LAN 115 at an appropriate timing (step ST9).
[0043]
Next, the operation of each servo amplifier will be described with reference to FIG. FIG. 6 is a flowchart illustrating the operation of the servo amplifier shown in FIG. In FIG. 6, when the absolute position command data {data IDn, control axis number AX1n, absolute time command T, position command F} interpolated from the LAN is received (step ST21), it is temporarily stored in the communication data buffer memory 335. (Step ST22). The storage operation in the communication data buffer memory 335 is repeated until a predetermined amount can be accumulated in the communication data buffer memory 335 (step ST23).
[0044]
When a certain amount is accumulated in the communication data buffer memory 335 (step ST23: Yes), all the absolute position command data are read from the communication data buffer memory 335, and the communication data buffer memory 335 is received so that the next communication data can be received. Is erased (step ST24).
[0045]
Next, in the asynchronous communication, the order of the received data and the like may change. Therefore, the absolute position command data is rearranged based on the data IDn of the absolute position command data, the control axis number AX1n, and the absolute time command T, and the main memory 320 (step ST25). In step ST25, when a communication packet that could not be received occurs for some reason, data interpolation (linear interpolation, spline interpolation, etc.) is performed from the data before and after the packet and written to the main memory. Is
[0046]
Next, the absolute position command data is read from the main memory 320 (step ST26), and a comparison is made between the absolute time command data T and the real time data t of the internal timer 350 (step ST27). It is determined whether or not it is not (Step ST28), and the processing of Step ST26 and Step ST27 is repeated until T = t (Step ST28: No).
[0047]
Then, when T = t (step ST28: Yes), the rotation speed of the servo motor is calculated based on the absolute position command data (step ST29), and the drive current of the servo motor is controlled to rotate the servo motor. (Step ST30). Thus, the servo motor can be rotated while synchronizing the plurality of servo amplifiers 130 to 13n.
[0048]
As described above, according to this embodiment, the personal computer 110 transmits the absolute time command to the plurality of servo amplifiers 130 to 13n by asynchronous communication via the LAN 115, so that the plurality of servo amplifiers 130 to 13n Synchronous interpolation control can be performed.
[0049]
Then, from the upper network 125 connected to the switching hub 120, the three-dimensional CAD data in step 1 in FIG. 4, the analysis data in step ST2, the moving amount ΔLm in step ST3, and the moving distance ΔXm in step ST4 in FIG. , ΔYm, and the absolute position command data in step ST6 can be downloaded, so that numerical control data can be transmitted directly from an external host computer or the like via the Internet instead of the personal computer 110, and processing by synchronous interpolation control can be performed. Will be possible.
[0050]
In addition, since the hot line 180 is provided between the servo amplifiers 130 to 13n for safety reasons, the servo amplifier that has detected an abnormality sends an emergency stop signal 181 on the hot line 180, so that the servo amplifier immediately transmits to another servo amplifier. The occurrence of an abnormality is notified, and a stop operation or the like can be performed. The emergency stop can also be performed by manually operating the emergency stop switch 190 connected to the hot line 180.
[0051]
It should be noted that the stop information can be notified to the personal computer 110 by a method using the same hot line 180 as described above or via the LAN 115. The personal computer 110 performs processing such as displaying an alarm on the display screen. However, this measure is limited to a case where the personal computer 110 is not directly connected to a machine (for example, a motor or an I / O device that controls in real time) that stops the operation quickly for safety.
[0052]
When the emergency stop signal 181 of the hot line 180 is used, for example, synchronous interpolation control is performed between the plurality of servo amplifiers 130 to 13n, and when processing is in progress, data is no longer sent or It is possible that absolute time command data older than the absolute time indicated by the timer 350 has been transmitted. For example, when there are a plurality of machine tools having the numerical control system having the configuration shown in FIG. 1 and all the systems are connected via the upper network 125, the upper network 125 becomes congested for some reason. This can occur when communication delay occurs.
[0053]
In such a case, if data is no longer sent during the synchronous interpolation control execution process (during processing), the plurality of servo amplifiers 130 to 13n determine that communication has been disconnected for some reason. If the absolute time command data older than the absolute time indicated by 350 is transmitted, it is determined that it is late. Then, the servo amplifier that has detected the abnormality stops the corresponding servo motor immediately, notifies the other servo amplifiers using the emergency stop signal 181 of the hot line 180, and can stop those servo motors.
[0054]
On the other hand, in this embodiment, the occurrence of the above-described situation of stopping the servomotor can be avoided by, for example, taking the following measures. That is, a general switching hub capable of providing a communication data buffer memory with a sufficient capacity on the servo amplifier side or a higher-speed LAN (for example, 100 Mbps, 1 Gbps, etc.) and capable of dedicated communication between two devices. If you use a connection method that closes communication within one numerical control system inside the machine tool using, the communication inside the system will not be crowded, so do not perform stop operation due to reasons such as communication not being in time Can be
[0055]
Next, communication data and the like transmitted from the personal computer 110 to the servo amplifiers 130 to 13n as described above will be described with reference to FIGS. FIG. 7 is a diagram showing a configuration example of communication data from the personal computer shown in FIG. 1 to the servo amplifier. FIG. 8 is a diagram in which the time of the communication interval between the personal computer and the servo amplifier shown in FIG. 1 is calculated as a relationship between the communication speed of the LAN and the interpolation cycle. FIG. 9 is a diagram in which the amount of servo communication data stored in the external storage device of the personal computer shown in FIG. 1 is calculated as a relationship between the interpolation cycle and the processing time.
[0056]
In FIG. 7, "effective bit width", "data effective range", and "use bit width" are defined for each type of data. Data for controlling one axis is composed of 768 bits. The total of eight axes is 768 bytes.
[0057]
The breakdown (data type) includes a data ID, an axis control number, a time command (absolute time) that can represent time from the date to nanosecond (ns), and a position (absolute time) from the origin of the machine coordinate system. The position includes a position command (absolute position command) capable of expressing the position from a unit of meter (m) to a unit of nanometer (nm), and others (set values of control commands and servo parameters).
[0058]
In FIG. 7, the reason why the time command is given is that, in this embodiment, unlike the conventional synchronous communication method in which time-series continuous interpolation data is sequentially transmitted at regular intervals, the communication cycle is set in the same manner as the interpolation cycle. This is because an asynchronous communication method that is not guaranteed to be kept constant is employed.
[0059]
In other words, in this embodiment, a commonly used communication means such as a LAN having a low cost and high data transfer capability is used, and the time for executing the interpolation data is instructed to a plurality of servo amplifiers in absolute time. This is because the interpolation process is executed based on the absolute time command data using the internal timer indicating the absolute time.
[0060]
FIG. 8 shows the communication interval between the personal computer and the servo amplifier when the LAN communication speed and the interpolation period Δt are changed. In FIG. 8, the types of LAN include 10BASE-T (data transfer speed of 10 Mbit / sec, memory capacity required for servo amplifier of 1250 kByte / sec) and 100BASE-TX (data transfer speed of 100 Mbit / sec, required for servo amplifier). A memory capacity of 12.50 MByte / sec and a 1000 BASE (a data transfer speed of 1000 Mbit / sec, a memory capacity of 125 MByte / sec necessary for the servo amplifier) are shown.
[0061]
The interpolation cycle Δt, the data capacity (8 axes), and the data transfer rate are (3,5 ms, 768 Byte, 214.29 kByte), (0.35 ms, 768 Byte, 2.09 MByte), and (0.035 ms, 768 Byte, 20.93 MByte). However, the transfer efficiency by LAN is assumed to be 100%.
[0062]
In the conventional synchronous system, the communication cycle and the interpolation cycle are the same. For example, if one communication data is 768 bytes (for eight axes) in the conventional synchronous system with a communication cycle Δt = 3.5 ms, the communication cycle is the same. In order to obtain the data of the interpolation period Δt, in the method according to the present embodiment, when 10BASE-T is used, communication of about 1 second in about 5.97 seconds may be established between the personal computer and the servo amplifier. Will be.
[0063]
In this case, the servo amplifier only needs to have a memory capacity (= 1.25 Mbytes) for data transfer for at least one second. This memory capacity can be realized by using not only the communication data buffer memory 335 but also the main memory 320.
[0064]
Since the transfer efficiency of the LAN depends on the number of connected devices (personal computers, servo amplifiers, and the like), when a higher-speed communication can be performed using a 100BASE-TX or 1000BASE LAN, the servo amplifier is used. It is possible to respond flexibly by increasing the memory capacity on the side.
[0065]
In addition, even if the interpolation cycle Δt is shorter than 0.35 ms or 0.035 ms in order to perform high-precision machining such as nanometer interpolation, the LAN speed can be increased without changing the system configuration. It can respond flexibly by increasing the capacity of the servo amplifier memory. FIG. 8 shows that such a judgment material is provided.
[0066]
Next, in FIG. 9, as the accumulated data amount of the interpolated absolute time command data accumulated in the external storage device 230 of the personal computer 110, a data amount of Δt time (eight axes) and a data amount of one second (eight axes) are shown. The data amount for one hour (8 axes) and the data amount for one day (8 axes) are shown. The interpolation periods Δt are shown as 3.5 ms, 0.35 ms and 0.035 ms.
[0067]
For example, when the absolute time command data for about 1 hour is accumulated at a time, a storage capacity of about 753.35 MByte is required for an interpolation cycle of 3.5 ms. However, if a hard disk or the like is used for the external storage device 230, the system can be configured at low cost. Further, when processing for one hour or more is performed with a capacity of 753.35 MBytes, it can be easily realized by deleting transmitted data and sequentially writing data exceeding one hour there. In this case, a point to be noted is that the minimum necessary data determined in relation to the data generation time of the personal computer CPU 210 is calculated and stored in the external storage device 230 in advance so that the transmission data is not lost.
[0068]
As described above, according to this embodiment, unlike the conventional numerical control method in which the dedicated CPU is used for the dedicated OS to perform the interpolation processing, all the interpolation processing can be calculated by the personal computer 110. Therefore, the program that executes each process can be constructed in a development environment that is easy for the user to customize, and the user can implement his or her own application.
[0069]
In particular, in FIG. 4, by customizing the analysis data in step ST2, the movement amount ΔLm in step ST3, the movement distances ΔXm and ΔYm in step ST4, and the absolute position command data in step ST6, a user-specific special Special processing can be realized by performing interpolation control.
[0070]
Further, in FIG. 4, the communication data transmitted from the personal computer 110 to the servo amplifiers 130 to 13n is the absolute position command data divided for each axis. However, since the asynchronous communication is performed using the absolute time command data, the transmission is performed. If absolute time command data for designating the time to execute the processing is added to the data, the data to be transmitted to the servo amplifier includes the three-dimensional CAD data in step ST1, the analysis data in step ST2, and the movement amount ΔLm in step ST3. , And the moving distances ΔXm and ΔYm in step ST4 may be used. The processing start time is added to the three-dimensional CAD data in step ST1, and a time obtained by adding the processing time to the processing start time is added to the remaining three data.
[0071]
When data in each processing stage is transmitted as described above, the remaining processes after the transmission data are calculated by the servo amplifier CPU 310 on the servo amplifier side. If the number of remaining processes increases, the load on the personal computer CPU 210 on the personal computer side decreases, and the calculation load on the servo amplifier side increases accordingly. Therefore, an expensive and high-speed CPU and a large-capacity memory are required on the servo amplifier side. Here, since a series of processes in steps ST1 to ST4 can all be performed asynchronously, an algorithm is used that can obtain the same calculation result regardless of whether the process is performed on the personal computer side or the servo amplifier side.
[0072]
By the way, it is difficult to immediately respond to a speed change during manual machining, such as a setup operation of a machine tool, unless all the arithmetic processing of steps ST1 to ST4 can be performed in real time.
[0073]
Therefore, during setup or the like, a PC card type card-type NC 280 connectable by plug-and-play as shown in FIG. 2 is connected to the PC card interface circuit 270 of the personal computer 110, and steps ST1 to ST1 are performed on the card-type NC 280. The series of processes in ST4 is performed in real time so that manual numerical control that requires responsiveness can be performed.
[0074]
In this case, since a LAN is used as the communication means, responsiveness is reduced if the capacity of the communication data buffer memory 255 is large. Therefore, it is preferable to sufficiently execute a simulation such as a tool path check and a machining check on a personal computer before machining to prevent data change during machining by manual operation.
[0075]
Further, in actual machining other than the setup, or when executing a machining program whose operation has been confirmed, the card NC may be removed from the personal computer, and the personal computer 110 may perform the arithmetic processing of steps ST1 to ST4.
[0076]
Embodiment 2 FIG.
FIG. 10 is a block diagram showing a configuration of a servo amplifier in a numerical control system according to Embodiment 2 of the present invention. FIG. 11 is a block diagram showing details of the A / D interface circuit 1060 shown in FIG. In FIG. 10, the same or equivalent components in the configuration shown in FIG. 3 are denoted by the same reference numerals. Here, a description will be given focusing on a portion relating to the second embodiment.
[0077]
That is, in servo amplifier 1030 shown in FIG. 10, A / D interface circuit 1060 is provided instead of I / O interface circuit 360 in servo amplifier 130 shown in FIG. Then, the signal of the hot line 180 input / output to / from the A / D interface circuit 1060 is only one of the emergency stop signal / synchronization time correction signal 184 which also serves as the emergency stop signal 181 and the synchronization time correction signal 183.
[0078]
Each signal of the hot line 180 shown in FIG. 1 is wired-OR connected. For example, the emergency stop signal 181 is a pulse signal which becomes a high level for a predetermined time width by a pull-up resistor when the emergency stop is released. Therefore, as shown in FIG. 11, the emergency stop signal / synchronization time correction signal 184 is converted into an emergency stop signal 184a having the same waveform as that of the emergency stop signal 181, when the time correction analog signal 184b is used. This is a signal to be superimposed.
[0079]
The A / D interface circuit 1060 includes a digital input / output buffer circuit 1061 relating to the emergency stop signal 184a and an emergency stop signal / synchronization time correction signal taken from the hot line 180, as shown in FIG. An analog amplifier circuit 1062 for amplifying the analog signal 184b of the specific voltage level 184, and the A / D which converts the amplified analog signal 1070 into a digital signal 1072 and outputs it to the internal timer 350 as a synchronization time correction signal CORRECT. A converter 1063, a D / A converter 1064 for converting a timer signal TIMER, which is a digital signal 1072 having a period of 1 ms input from the internal timer 350, to an analog signal 1070, and an analog signal having a specific voltage level based on the converted analog signal 1070. The emergency stop signal / synchronization time correction signal 184 generated with the grayed signal 184b, and an analog output circuit 1065 to be sent to the hot line 180.
[0080]
The digital input / output buffer circuit 1061 receives the failure occurrence notification signal EMG, which is a pulse signal 1074 having a predetermined time width, from the servo amplifier CPU 310, and sends an emergency stop signal / synchronization time correction signal 184 emergency stop signal 184 a to the hotline 180. Output. In addition, upon receiving an emergency stop signal 184 a of the emergency stop signal / synchronization time correction signal 184 from the hot line 180, it outputs an interrupt signal INTERRUPT to the servo amplifier CPU 310 and outputs a reset signal RESET to the internal timer 350.
[0081]
Here, it is assumed that the input voltage of the digital input / output buffer circuit 1061 is 2.0 V or higher, the output voltage is 2.5 V or lower, and the absolute maximum input voltage is 3.3 V. The analog signal 184b of the emergency stop signal / synchronization time correction signal 184 input from the hot line 180 at a period of 1 ms is, for example, a frequency signal of 1 kHz (amplitude ± 0.5 V or less, reference voltage 2.5 V).
[0082]
In the synchronization time correction, the personal computer 110 or one servo amplifier generates a timer signal TIMER which is a digital signal 1072 having a 1 ms period, and the other servo amplifiers output a synchronization time correction signal CORRECT every 1 ms to the timer signal TIMER. The same digital signal 1072 can be obtained.
[0083]
As described above, according to the second embodiment, the hot line signal lines used for time setting and synchronization deviation correction can be combined, so that the configuration of the hot line can be simplified.
[0084]
Embodiment 3 FIG.
FIG. 12 is a block diagram showing a configuration of a servo amplifier in a numerical control system according to Embodiment 3 of the present invention. In FIG. 12, the same reference numerals are given to the same or equivalent components in the configuration shown in FIG. Here, a description will be given focusing on a portion relating to the third embodiment.
[0085]
In the servo amplifier 1230 shown in FIG. 12, a comparator circuit 1270 is provided in the servo amplifier 1030 shown in FIG. Comparator circuit 1270 performs the time comparison process in steps ST27 and ST28 shown in FIG.
[0086]
That is, the comparator circuit 1270 compares the absolute time command data D_TIME from the servo amplifier CPU 310 with the real time data R_TIME from the internal timer 350. As a result of the comparison, if they are not the same, an input request signal D_IN requesting the servo amplifier CPU 310 to input the next data is output. If they are the same, the absolute coordinate data D_OUT is output to the servo motor rotation control circuit 340.
[0087]
Since the time comparison processing in steps ST27 and ST28 shown in FIG. 6 is performed in real time, the load on the servo amplifier CPU 310 is large. According to the third embodiment, the time comparison process in steps ST27 and ST28 can be performed at high speed by hardware, so that the load on servo amplifier CPU 310 can be reduced. In the third embodiment, an example of application to the second embodiment has been described. However, it is needless to say that the third embodiment can be similarly applied to the first embodiment.
[0088]
As described above, the numerical control system according to the present invention is capable of realizing synchronous interpolation control between a plurality of servo amplifiers by transmitting absolute time command data to the plurality of servo amplifiers by an asynchronous communication method, so that the numerical control system can be implemented on a large scale. A numerical control system that is highly accurate and that can flexibly respond to various user requirements can be configured using, for example, an inexpensive personal computer, LAN, or the like.
[0089]
Here, the entity that transmits the absolute time command data, that is, the numerical control processing means is the personal computer 110 as a computer device or the host computer of the upper network 125 in FIG. 1, but the present invention is not limited to this. Instead, for example, an asynchronous communication function may be added to a conventional numerical controller, or an asynchronous communication function may be added to a servo amplifier having a built-in numerical controller and having a high processing capability.
[0090]
In addition, in FIG. 1, the LAN 115 is a wired LAN, but may be a wireless LAN, and communication means such as an optical cable and satellite communication may be used. That is, according to the present invention, if the communication speed is high, and if there is a memory of sufficient and necessary capacity and an accurate internal timer, servo control can be performed via a wide area network such as the Internet, wireless communication, or satellite communication. Since synchronous interpolation control of the motor becomes possible, a large-scale numerical control system can be constructed.
[0091]
For example, if it is applied to the mirror control of a solar power generation satellite orbiting the earth, a numerical control system that can synchronously control a servo motor that controls each of a plurality of mirrors in units of several nanometers and integrate sunlight, etc. Can be constructed.
[0092]
【The invention's effect】
As described above, according to the present invention, the numerical control processing means and the plurality of axis control means are connected via the network of the asynchronous communication system, and the numerical control processing means performs the calculation of the numerical control processing and When absolute time command data representing the processing time of the axis is generated and the generated absolute time command data is transmitted to the network of the asynchronous communication system, a plurality of axis control means take in the absolute time command data from the network and store the absolute time command data. Synchronous interpolation control is performed between each other according to the internal timer indicating that there is no need to use a dedicated CPU for numerical control processing or a dedicated synchronous communication interface, and it is inexpensive and flexibly responds to various user requests. A possible numerical control system is obtained.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of a numerical control system according to a first embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration example of a personal computer shown in FIG.
FIG. 3 is a block diagram illustrating a configuration example of a servo amplifier illustrated in FIG. 1;
FIG. 4 is a flowchart illustrating the operation of the personal computer shown in FIG.
FIG. 5 is a diagram illustrating a coordinate system in which an X axis and a Y axis are used as synchronous interpolation control axes.
FIG. 6 is a flowchart illustrating an operation of the servo amplifier shown in FIG. 1;
FIG. 7 is a diagram showing a configuration example of communication data from the personal computer shown in FIG. 1 to the servo amplifier.
8 is a diagram in which a time of a communication interval between the personal computer and the servo amplifier shown in FIG. 1 is calculated as a relationship between a communication speed of the LAN and an interpolation cycle.
9 is a diagram in which a data amount for servo communication stored in an external storage device of the personal computer shown in FIG. 1 is calculated as a relationship between an interpolation cycle and a processing time.
FIG. 10 is a block diagram showing a configuration of a servo amplifier in a numerical control system according to a second embodiment of the present invention.
FIG. 11 is a block diagram showing details of an A / D interface circuit shown in FIG. 10;
FIG. 12 is a block diagram showing a configuration of a servo amplifier in a numerical control system according to Embodiment 3 of the present invention.
[Explanation of symbols]
110 PC, 115 LAN, 120 switching hub, 130-13n, 1030, 1230 Axis control unit (servo amplifier), 125 upper network, 180 hot line, 181 emergency stop signal, 182 synchronization time reset signal, 183 synchronization time correction signal , 184 emergency stop signal / synchronization time correction signal, 190 emergency stop switch, 140-14n servo motor, 210 personal computer CPU, 220, 320 main memory, 230 external storage device, 240, 350 internal timer, 250, 330 LAN interface circuit, 255,335 Communication data buffer memory, 270 PC card interface circuit, 280 card type NC (PC card type), 290 Servo amplifier communication data, 310 Servo amplifier CPU, 340 Servo mode Data rotation control circuit, 360 I / O interface circuit, 1060 A / D interface circuit, 1061 digital input / output buffer circuit, 1062 analog amplifier circuit, 1063 A / D converter, 1064 analog output circuit, 1065 D / A converter, 1270 Comparator circuit.

Claims (9)

数値制御処理の演算を行って各軸の処理時間を表す絶対時間指令データを生成し、生成した絶対時間指令データを非同期通信方式のネットワークに送信する数値制御処理手段と、
前記非同期通信方式のネットワークを介して前記数値制御処理手段と接続され、ネットワークから前記絶対時間指令データを取り込み内蔵する絶対時間を示す内部タイマーに従って相互間で同期補間制御を実施する複数の軸制御手段と、
を備えたことを特徴とする数値制御システム。
Numerical control processing means for performing calculation of numerical control processing to generate absolute time command data representing the processing time of each axis, and transmitting the generated absolute time command data to the network of the asynchronous communication system,
A plurality of axis control means connected to the numerical control processing means via the network of the asynchronous communication system, and performing synchronous interpolation control between them in accordance with an internal timer indicating an absolute time incorporated by taking in the absolute time command data from the network; When,
A numerical control system comprising:
少なくとも前記複数の軸制御手段は、専用の有線または無線の伝送路であるホットラインで接続され、前記ホットラインを介して非常停止信号の授受が行えることを特徴とする請求項1に記載の数値制御システム。2. The numerical value according to claim 1, wherein at least the plurality of axis control units are connected by a hot line which is a dedicated wired or wireless transmission path, and can transmit and receive an emergency stop signal via the hot line. Control system. 前記複数の軸制御手段がそれぞれ備える内部タイマーは、高精度のタイマーであることを特徴とする請求項1または2に記載の数値制御システム。The numerical control system according to claim 1, wherein the internal timer provided in each of the plurality of axis control units is a high-precision timer. 前記複数の軸制御手段は、それぞれが備える内部タイマーの絶対時間を、年・月・日・時・分までは前記ネットワークを介した前記数値制御処理手段との通信によって設定し、秒・ミリ秒・マイクロ秒・ナノ秒は前記ホットラインを用いて前記複数の軸制御手段間で同一となるように設定することを特徴とする請求項2に記載の数値制御システム。The plurality of axis control means sets an absolute time of an internal timer provided for each of them, up to year, month, day, hour, minute by communication with the numerical control processing means via the network, and seconds / milliseconds 3. The numerical control system according to claim 2, wherein microseconds and nanoseconds are set to be the same among the plurality of axis control means using the hot line. 前記複数の軸制御手段は、それぞれが備える内部タイマーの絶対時間を、年・月・日・時・分までは絶対時間供給手段から取得して設定し、秒・ミリ秒・マイクロ秒・ナノ秒は前記ホットラインを用いて前記複数の軸制御手段間で同一となるように設定することを特徴とする請求項2に記載の数値制御システム。The plurality of axis control means obtains and sets the absolute time of the internal timer provided for each of the plurality of axes up to the year, month, day, hour, and minute from the absolute time supply means, and sets seconds, milliseconds, microseconds, and nanoseconds. 3. The numerical control system according to claim 2, wherein the setting is made to be the same among the plurality of axis control means using the hot line. 4. 少なくとも前記複数の軸制御手段の中の一つが、自軸制御手段の内部タイマーの一定周期毎のタイマー値をディジタル信号の形式で前記ホットラインに送信し、残りの全ての軸制御手段が、前記ホットラインから取り込んだ前記タイマー値を用いて自軸制御手段の内部タイマーを補正することを特徴とする請求項2〜5のいずれか一つに記載の数値制御システム。At least one of the plurality of axis control means transmits a timer value of the internal timer of the own axis control means for each fixed period to the hot line in the form of a digital signal, and all the remaining axis control means are The numerical control system according to any one of claims 2 to 5, wherein an internal timer of the self-axis control means is corrected using the timer value taken from a hot line. 前記タイマー値をホットラインに送信する軸制御手段は、自軸制御手段の内部タイマーの一定周期毎のタイマー値をアナログ信号に変換し、当該変換したアナログ信号を前記ホットラインに設けられている非常停止信号に重畳して送信することを特徴とする請求項6に記載の数値制御システム。The axis control means for transmitting the timer value to the hot line converts the timer value of the internal timer of the self-axis control means for each fixed period into an analog signal, and the converted analog signal is provided on the hot line. The numerical control system according to claim 6, wherein the transmission is performed by being superimposed on the stop signal. 前記複数の軸制御手段は、
前記送られてきた絶対時間指令データにおける絶対時間と前記内部タイマーが示す実時間との一致不一致の比較演算を実施するハードウエア回路、
を備えたことを特徴とする請求項1または2に記載の数値制御システム。
The plurality of axis control means,
A hardware circuit that performs a comparison operation of a match / mismatch between the absolute time in the transmitted absolute time command data and the real time indicated by the internal timer,
The numerical control system according to claim 1 or 2, further comprising:
前記数値制御処理手段がPCカードの実装が可能なコンピュータ装置である場合において、
当該コンピュータ装置には、
前記絶対時間指令データをリアルタイムに生成処理するPCカードタイプのカード型NCが接続される、
ことを特徴とする請求項1または2に記載の数値制御システム。
When the numerical control processing means is a computer device capable of mounting a PC card,
The computer device includes:
A card type NC of a PC card type for generating and processing the absolute time command data in real time is connected.
3. The numerical control system according to claim 1, wherein:
JP2002271472A 2002-09-18 2002-09-18 Numerical control system Expired - Lifetime JP3917047B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002271472A JP3917047B2 (en) 2002-09-18 2002-09-18 Numerical control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002271472A JP3917047B2 (en) 2002-09-18 2002-09-18 Numerical control system

Publications (2)

Publication Number Publication Date
JP2004110359A true JP2004110359A (en) 2004-04-08
JP3917047B2 JP3917047B2 (en) 2007-05-23

Family

ID=32268771

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002271472A Expired - Lifetime JP3917047B2 (en) 2002-09-18 2002-09-18 Numerical control system

Country Status (1)

Country Link
JP (1) JP3917047B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272367A (en) * 2006-03-30 2007-10-18 Mitsubishi Electric Corp Multiple-shaft synchronization system and control method
JP2009129315A (en) * 2007-11-27 2009-06-11 Muscle Corp Driving method and driving system of servo motor
JP2010513998A (en) * 2006-12-15 2010-04-30 シーメンス アクチエンゲゼルシヤフト Pulse sending device for sending trigger pulse accurately in position
JP2011504144A (en) * 2007-11-14 2011-02-03 サムスン ヘヴィ インダストリーズ カンパニー リミテッド Embedded robot control system
JP4824080B2 (en) * 2006-03-01 2011-11-24 富士通株式会社 Synchronous control system
CN104656548A (en) * 2013-11-20 2015-05-27 发那科株式会社 Numerical Control Device Having Function Of Simultaneously Executing Plurality Of Commands Using Data In Table Format
WO2015159457A1 (en) * 2014-04-16 2015-10-22 株式会社日立産機システム Control method for motor drive device, motor control system, and program

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4824080B2 (en) * 2006-03-01 2011-11-24 富士通株式会社 Synchronous control system
JP4602278B2 (en) * 2006-03-30 2010-12-22 三菱電機株式会社 Multi-axis synchronization system and control method thereof
JP2007272367A (en) * 2006-03-30 2007-10-18 Mitsubishi Electric Corp Multiple-shaft synchronization system and control method
US8405519B2 (en) 2006-12-15 2013-03-26 Siemens Aktiengesellschaft Pulse emission device for the positionally accurate emission of trigger pulses
JP2010513998A (en) * 2006-12-15 2010-04-30 シーメンス アクチエンゲゼルシヤフト Pulse sending device for sending trigger pulse accurately in position
JP2011504144A (en) * 2007-11-14 2011-02-03 サムスン ヘヴィ インダストリーズ カンパニー リミテッド Embedded robot control system
JP2009129315A (en) * 2007-11-27 2009-06-11 Muscle Corp Driving method and driving system of servo motor
CN104656548A (en) * 2013-11-20 2015-05-27 发那科株式会社 Numerical Control Device Having Function Of Simultaneously Executing Plurality Of Commands Using Data In Table Format
JP2015099553A (en) * 2013-11-20 2015-05-28 ファナック株式会社 Numerical control device including function for simultaneously executing multiple commands with table format data
US9696712B2 (en) 2013-11-20 2017-07-04 Fanuc Corporation Numerical control device having function of simultaneously executing plurality of commands using data in table format
CN104656548B (en) * 2013-11-20 2017-12-26 发那科株式会社 Possesses the numerical control device of the operation based on sheet form data
WO2015159457A1 (en) * 2014-04-16 2015-10-22 株式会社日立産機システム Control method for motor drive device, motor control system, and program
JP2015204724A (en) * 2014-04-16 2015-11-16 株式会社日立産機システム Control method for motor drive device, and motor control system and program

Also Published As

Publication number Publication date
JP3917047B2 (en) 2007-05-23

Similar Documents

Publication Publication Date Title
CN103562807B (en) The CPU element of PLC, PLC system, PLC servicing unit
US7778814B2 (en) Method and device for simulating an automation system
CN103197607B (en) Servo driver and starting point and finishing point synchronous method in open type numerical control system
US4956785A (en) Numerical control method with a parallel processing function
JP3386777B2 (en) Numerical control system
JP2004110359A (en) Numerical control system
CN111360795B (en) Control system and control method of six-degree-of-freedom parallel robot
CN111552235B (en) Multi-axis synchronous error compensation method and system based on CANopen protocol
JP4029617B2 (en) Numerical control system and communication timing setting method in the numerical control system
JP2007515003A (en) Method and apparatus for operating different devices operating in conjunction
JP7056395B2 (en) Control device and its control method
JP2898387B2 (en) Synchronous signal generator
CN115826505A (en) Multi-axis electro-hydraulic servo slave station control system based on synchronous real-time Ethernet
JP2840297B2 (en) Axis control method of numerical controller
CN108445830A (en) A kind of wave maker control system based on multi-controller synchronous control
CN111459086B (en) System and method for realizing scaler control and data processing
CN113778000A (en) High-real-time motion control system and method
JP3987819B2 (en) Numerical control system
CN107053169A (en) A kind of bus intelligent servo drive system, robot and method
WO2019113726A1 (en) Motion controller and motion control method
CN110609464B (en) Time service method and system of embedded communication system
JPH11259105A (en) Externally synchronizable programmable controller device
JPH11272307A (en) Motion controller
JP2754681B2 (en) Distributed controller
JP2000235406A (en) Sequence controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060718

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060925

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061213

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070207

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3917047

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100216

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110216

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120216

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130216

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130216

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140216

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

EXPY Cancellation because of completion of term