本發(fā)明涉及一種機床和機器人之間的干擾檢查系統(tǒng)。
背景技術(shù):
廣泛進行使機床和機器人融合,將機器人用于加工物的裝卸等。機器人在加工物的裝卸時能夠侵入機床內(nèi)部,因此有想要進行這些機床和機器人之間的干擾檢查的要求。
在機床的干擾檢查中,使用日本特開2008-27376號公報和日本特開2010-244256號公報中記載的技術(shù),由控制機床的數(shù)值控制裝置輸出預(yù)行位置,并根據(jù)該輸出信息進行干擾檢查,由此能夠使機床在干擾前停止。
另外在機器人之間的干擾檢查中,使用日本特開2006-68857號公報中記載的技術(shù)預(yù)讀機器人的示教程序,由此進行干擾檢查。
然而,為了使用這些現(xiàn)有技術(shù)進行機床和機器人之間的干擾檢查,需要使用用于通過控制機床的數(shù)值控制裝置輸出預(yù)行位置的上述日本特開2008-27376號公報和日本特開2010-244256號公報中記載的技術(shù),并且在機器人一側(cè)輸出預(yù)行位置,根據(jù)從數(shù)值控制裝置和機器人控制器分別輸出的預(yù)行位置來進行干擾檢查。
但是,如果將與機器人之間的干擾檢查相關(guān)的上述日本特開2006-68857號公報中記載的技術(shù)適用于機床和機器人之間的干擾檢查(即,將機床視為一臺機器人而適用上述技術(shù)),則能夠在機器人一側(cè)從控制機床的數(shù)值控制裝置取得NC程序作為相當(dāng)于示教程序的信息,但是用于通過在數(shù)值控制裝置上進行的插補的種類、預(yù)讀緩沖器內(nèi)的預(yù)讀狀態(tài)、抑制預(yù)讀的指令等來計算預(yù)行位置的預(yù)行時間會動態(tài)地變動,因此會產(chǎn)生控制機床的NC程序難以計算與機床的預(yù)行時間對應(yīng)的機器人的預(yù)行位置的問題,并且不能夠進行機床和機器人之間的干擾檢查。
另外,相反在控制機床的數(shù)值控制裝置一側(cè),即使取得了機器人的示教程序,用于計算預(yù)行位置的預(yù)行時間也還是會根據(jù)插補的種類、預(yù)讀緩沖器內(nèi)的預(yù)讀狀態(tài)和抑制預(yù)讀的指令等而動態(tài)地變動,因此難以計算與機器人的預(yù)行時間匹配的機床的預(yù)行位置。
技術(shù)實現(xiàn)要素:
因此,本發(fā)明的目的在于提供一種數(shù)值控制裝置,具備確保機床一側(cè)的預(yù)行時間和機器人的預(yù)行時間之間的同步性的干擾檢查功能。
本發(fā)明中,使用離線編程裝置等預(yù)先分析機器人一側(cè)或機床一側(cè)的程序,并生成該移動信息作為附有索引的插補等級移動數(shù)據(jù),在此基礎(chǔ)上,在數(shù)值控制裝置和機器人控制器之間共享該插補等級移動數(shù)據(jù),并且在數(shù)值控制裝置一側(cè)進行機器人控制器的移動開始指令,或者在機器人控制器一側(cè)進行數(shù)值控制裝置一側(cè)的移動開始指令,從而解決上述問題。
本發(fā)明的干擾檢查系統(tǒng)具備根據(jù)來自NC程序的指令驅(qū)動控制機械所具備的軸的數(shù)值控制裝置、根據(jù)來自示教程序的指令控制機器人的機器人控制器以及檢查上述機械和上述機器人之間的干擾的干擾檢查裝置。
在本發(fā)明的干擾檢查系統(tǒng)的第一方式中,上述數(shù)值控制裝置和上述機器人控制器共享將上述機器人的每個插補周期的位置信息與索引關(guān)聯(lián)后記錄的插補等級移動數(shù)據(jù)。并且,上述數(shù)值控制裝置具備:預(yù)讀單元,其從上述NC程序讀出預(yù)讀程序塊指令數(shù)據(jù);預(yù)行時間計算部,其計算用于計算下一個預(yù)行位置的預(yù)行時間;機械預(yù)行位置計算部,其根據(jù)成為上述干擾檢查的基準(zhǔn)的時間計算上述預(yù)行時間后的上述機械所具備的軸的預(yù)行位置即機械預(yù)行位置;機器人預(yù)行位置計算部,其根據(jù)上述插補等級移動數(shù)據(jù),計算從成為上述干擾檢查的基準(zhǔn)的時間起上述預(yù)行時間后的上述機器人的預(yù)行位置即機器人預(yù)行位置。并且,上述干擾檢查裝置構(gòu)成為,根據(jù)上述機械預(yù)行位置和上述機器人預(yù)行位置進行上述機械和上述機器人的干擾檢查。
上述數(shù)值控制裝置還具備:機器人移動指令單元,其根據(jù)上述NC程序中包括的機器人移動指令對上述機器人指令移動開始,上述機器人預(yù)行位置計算部構(gòu)成為,根據(jù)上述機器人移動指令單元針對上述機器人的移動開始指令時刻、上述插補等級移動數(shù)據(jù)以及上述預(yù)行時間來計算上述機器人預(yù)行位置。
上述數(shù)值控制裝置存儲包括從上述機器人控制器取得或通知的表示上述機器人的當(dāng)前位置的索引、上述機器人的移動狀態(tài)的上述機器人的狀態(tài)信息,上述機器人預(yù)行位置計算部構(gòu)成為,根據(jù)上述狀態(tài)信息、上述插補等級移動數(shù)據(jù)以及上述預(yù)行時間計算上述機器人預(yù)行位置。
在本發(fā)明的干擾檢查系統(tǒng)的第二方式中,上述數(shù)值控制裝置和上述機器人控制器共享將上述機械的每個插補周期的位置信息與索引關(guān)聯(lián)后記錄的插補等級移動數(shù)據(jù)。并且,上述機器人控制器具備:預(yù)讀單元,其從上述示教程序讀出預(yù)讀程序塊指令數(shù)據(jù);預(yù)行時間計算部,其計算用于計算下一個預(yù)行位置的預(yù)行時間;機器人預(yù)行位置計算部,其計算從成為上述干擾檢查的基準(zhǔn)的時間起上述預(yù)行時間后的上述機器人所具備的軸的預(yù)行位置即機器人預(yù)行位置;以及機械預(yù)行位置計算部,其根據(jù)上述插補等級移動數(shù)據(jù),計算從成為上述干擾檢查的基準(zhǔn)的時間起上述預(yù)行時間后的上述機械的預(yù)行位置即機械預(yù)行位置。并且,上述干擾檢查裝置構(gòu)成為,根據(jù)上述機器人預(yù)行位置和上述機械預(yù)行位置進行上述機器人和上述機械的干擾檢查。
上述機器人控制器也可以構(gòu)成為,還存儲包括從上述數(shù)值控制裝置取得或通知的表示上述機械的當(dāng)前位置的索引的上述機械的狀態(tài)信息,上述機械預(yù)行位置計算部根據(jù)上述狀態(tài)信息、上述插補等級移動數(shù)據(jù)以及上述預(yù)行時間計算上述機械預(yù)行位置。
根據(jù)本發(fā)明,在數(shù)值控制裝置或機器人控制器中,即使是在用于計算預(yù)行位置的預(yù)行時間根據(jù)插補的種類、預(yù)讀緩沖器內(nèi)的預(yù)讀狀態(tài)、抑制預(yù)讀的每個指令而發(fā)生動態(tài)變動的狀況下,也能夠在變動后的預(yù)行時間計算出對方一側(cè)的預(yù)行位置,因此能夠計算機床和機器人之間同步的預(yù)行位置。
附圖說明
通過參照附圖說明以下的實施例,能夠更加明確本發(fā)明的上述以及其他目的、特征。在這些附圖中:
圖1是本發(fā)明一個實施方式的干擾檢查系統(tǒng)的概略圖。
圖2是圖1所示的干擾檢查系統(tǒng)的概略的功能框圖。
圖3是表示在構(gòu)成圖2的干擾檢查系統(tǒng)的數(shù)值控制裝置上執(zhí)行的處理的第一例的流程圖。
圖4是表示在構(gòu)成圖2的干擾檢查系統(tǒng)的數(shù)值控制裝置上執(zhí)行的處理的第二例的流程圖。
圖5是本發(fā)明其他實施方式的干擾檢查系統(tǒng)的概略框圖。
具體實施方式
參照圖1說明本發(fā)明的一個實施方式的干擾檢查系統(tǒng)。
實施方式的干擾檢查系統(tǒng)具備數(shù)值控制裝置100、機器人控制器300、機器人360、機床400以及干擾檢查裝置500。
在開始機床400和機器人360的加工控制之前,事先使用離線編程裝置600等分析在機器人控制器300上執(zhí)行的程序,并生成基于該程序的機器人360的移動信息作為附帶索引的插補等級移動數(shù)據(jù)。而且,在數(shù)值控制裝置100和機器人控制器300之間共享該生成的插補等級移動數(shù)據(jù),并在數(shù)值控制裝置100一側(cè)進行機器人360的移動開始指令。
在基于加工程序的加工控制時,數(shù)值控制裝置100如果在預(yù)行位置的計算中檢測出在加工程序內(nèi)有對機器人360的移動開始指令,則根據(jù)在與機器人控制器300之間共享的機器人360的插補等級移動數(shù)據(jù),與機床400的預(yù)行位置對應(yīng)地計算機器人360的預(yù)行位置。
另一方面,機器人控制器300接收了來自數(shù)值控制裝置100的移動開始指令后,根據(jù)與數(shù)值控制裝置100共享的機器人360的插補等級移動數(shù)據(jù),加上考慮了臂的撓曲的修正、重力修正等,控制機器人360的動作使得成為該插補等級移動數(shù)據(jù)所表示的位置。因此,能夠使在與數(shù)值控制裝置100之間共享的機器人360的插補等級的位置和實際機器人360的位置一致。
這里,數(shù)值控制裝置100和機器人控制器300非同步進行動作,因此在通過數(shù)值控制裝置100計算出的機器人360的預(yù)行位置和機床400的預(yù)行位置之間產(chǎn)生誤差。
為了修正該誤差,機器人控制器300將包括附加給表示機器人360的當(dāng)前位置的插補等級移動數(shù)據(jù)中的索引、表示機器人360處于停止還是正在動作的移動狀態(tài)的信息的狀態(tài)信息反饋給數(shù)值控制裝置100。接收到從機器人控制器300反饋來的機器人360的狀態(tài)信息的數(shù)值控制裝置100根據(jù)該狀態(tài)信息中包括的表示機器人360的當(dāng)前位置的索引和移動狀態(tài)的信息,來修正當(dāng)前計算中的預(yù)行位置和實際的機器人360的當(dāng)前位置之間的誤差。另外,機器人360的狀態(tài)信息也可以由數(shù)值控制裝置100從機器人控制器300來取得。
另外,在上述的說明中,說明了在數(shù)值控制裝置100一側(cè)進行機器人360的移動開始指令,但是也可以不在數(shù)值控制裝置100一側(cè)進行機器人的移動開始指令而在機器人控制器300一側(cè)獨立開始動作。
圖2是圖1所示的干擾檢查系統(tǒng)的概略的功能框圖。
數(shù)值控制裝置100執(zhí)行以下處理,即根據(jù)NC程序110控制機床,并且根據(jù)預(yù)讀NC程序110而得到的預(yù)讀程序塊指令數(shù)據(jù)120、使用離線編程裝置600等事先生成并在與機器人控制器300之間共享的機器人360的插補等級移動數(shù)據(jù)130以及從機器人控制器360通知或取得的機器人360的狀態(tài)信息140,分別計算機床400的各軸的預(yù)行位置和機器人360的預(yù)行位置并輸出給干擾檢查裝置500。
數(shù)值控制裝置100被分為預(yù)處理部101和執(zhí)行部102,在預(yù)處理部101生成執(zhí)行控制所需要的各種數(shù)據(jù),并且根據(jù)該生成的數(shù)據(jù)在執(zhí)行部102中執(zhí)行機床等的控制。
預(yù)處理部101預(yù)讀NC程序110,并且將預(yù)讀程序塊指令數(shù)據(jù)120存儲在存儲器(未圖示)中。另外,預(yù)處理部101將使用離線編程裝置600等事先生成并在與機器人控制器300之間共享的機器人360的插補等級移動數(shù)據(jù)130存儲在存儲器(未圖示)中,并且管理從機器人控制器300逐個進行通知或取得的機器人360的狀態(tài)信息140。
執(zhí)行部102所具備的分配處理部210按照每個程序塊讀出預(yù)讀程序塊指令數(shù)據(jù)120,根據(jù)通過該讀出的程序塊進行指令的各軸移動量、各軸速度來執(zhí)行插補移動指令的分配處理,并生成對每個分配周期的各軸的可動部(機床400所具備的各軸的伺服電動機)進行指令的插補等級的分配數(shù)據(jù)。
然后,該生成的插補等級的分配數(shù)據(jù)被輸出給移動指令輸出部250,經(jīng)由該移動指令輸出部250被輸出給加減速處理部260。該加減速處理部260接收來自移動指令輸出部250的移動指令并進行加減速處理,將通過該加減速處理260進行了加減速處理的移動量的移動指令輸出給控制機床所具備的各軸的伺服電動機的伺服控制部270。
預(yù)行時間計算部220根據(jù)預(yù)讀程序塊指令數(shù)據(jù)120和通過分配處理部210生成的插補等級的分配數(shù)據(jù)以及預(yù)先決定的基準(zhǔn)預(yù)行時間T來計算預(yù)行時間t1。該預(yù)行時間計算部220使用由分配處理部210進行了分配處理的指令數(shù)據(jù)的移動距離、速度,在緩沖器內(nèi)如果累積有到基準(zhǔn)預(yù)行時間T為止的指令數(shù)據(jù)則計算基準(zhǔn)預(yù)行時間T作為預(yù)行時間t1,如果沒有累積則計算根據(jù)緩沖器內(nèi)的指令數(shù)據(jù)求出的最大時間作為預(yù)行時間t1。另外,基準(zhǔn)預(yù)行時間T是根據(jù)干擾檢查裝置500進行干擾檢查處理所需要的時間、數(shù)值控制裝置100和干擾檢查裝置500之間的通信花費的時間以及機床400的軸、機器人360接收停止指令后進行減速停止花費的時間等而預(yù)先決定的時間,在上述的日本特開2008-27376號公報等中說明了其細(xì)節(jié),所以這里省略說明。
另外,當(dāng)在計算預(yù)行時間t1時在預(yù)讀程序塊指令數(shù)據(jù)120內(nèi)有機器人360的移動開始指令時,預(yù)行時間計算部220還計算從當(dāng)前時刻到機器人360的移動開始指令為止的時間t2。在NC程序的處理程序塊(用于計算預(yù)行時間的基準(zhǔn)位置)成為機器人360的移動開始指令的程序塊之前,通過預(yù)行時間計算部220按照每個處理周期減去該計算出的機器人移動開始時間t2,使得在機器人360的移動開始指令時成為t2=0,在該時間點機器人360的狀態(tài)成為正在移動狀態(tài)。在預(yù)讀程序塊指令數(shù)據(jù)120內(nèi),當(dāng)沒有機器人360的移動開始指令而機器人360正在移動時,設(shè)定為t2=0,當(dāng)機器人360為處于停止時設(shè)定為t2=t1。因此,機器人移動開始時間t2為0≤t2≤t1的范圍。
進一步,在用于計算預(yù)行時間的基準(zhǔn)位置成為機器人360的移動開始指令的位置的時間點,通過預(yù)行時間計算部220從數(shù)值控制裝置100對機器人控制器300指令機器人360的移動開始。
機床預(yù)行位置計算部230根據(jù)通過預(yù)行時間計算部220計算出的預(yù)行時間t1,計算機床400所具備的各軸的預(yù)行位置。關(guān)于這種機床的各軸的預(yù)行位置的計算方法,在上述的日本特開2008-27376號公報等中進行了說明,因此省略其詳細(xì)說明。
機器人預(yù)行位置計算部240首先根據(jù)插補等級移動數(shù)據(jù)130、從機器人控制器300逐次通知或取得的機器人360的狀態(tài)信息140來求出機器人360的當(dāng)前位置,根據(jù)該求出的機器人360的當(dāng)前位置和插補等級移動數(shù)據(jù)130來計算預(yù)行時間t1后的機器人360的位置(預(yù)行位置)。該機器人360的預(yù)行位置的計算方法為,例如在將插補等級移動數(shù)據(jù)130的各個索引(機器人控制器300的一個插補周期)設(shè)為1個單位時,使用以下的公式(1),根據(jù)數(shù)值控制裝置100和機器人控制器300的插補周期cycle、預(yù)行時間t1、到機器人360的移動開始指令為止的時間t2以及當(dāng)前位置的索引cpos來計算表示預(yù)行位置的索引fpos,并能夠通過該計算出的fpos和插補等級移動數(shù)據(jù)130來求出。
fpos=cpos+(t1+t2)/cycle……(1)
另外,當(dāng)數(shù)值控制裝置100和機器人控制器360的各自插補周期不同時,有時不存在與預(yù)行時間對應(yīng)的插補等級移動數(shù)據(jù)130的適當(dāng)?shù)乃饕_@種情況下,可以將插補等級移動數(shù)據(jù)130中與預(yù)行時間對應(yīng)的位置之前的索引所指示的位置信息設(shè)為機器人360的預(yù)行位置,或者也可以代替其而將后面的索引所指示的位置信息設(shè)為機器人360的預(yù)行位置。進而,將之前的索引所指示的位置信息和之后的索引所指示的位置信息之間的中間位置、或根據(jù)預(yù)行時間將之前的索引所指示的位置信息和之后的索引所指示的位置信息進行了線性插補的位置信息設(shè)為機器人360的預(yù)行位置。
此時,當(dāng)從機器人控制器300取得狀態(tài)信息140的周期(fbcycle)與數(shù)值控制裝置100和機器人控制器300的插補周期一致時,機床400和機器人360的預(yù)行位置始終保持同步性。
當(dāng)fbcycle>cycle時,預(yù)行位置的同步性會產(chǎn)生誤差,但是在取得包括表示機器人360的當(dāng)前位置的索引和移動狀態(tài)的狀態(tài)信息140的時間點修正誤差。
另外,當(dāng)表示預(yù)行位置的索引fpos超過了插補等級移動數(shù)據(jù)130的最大索引值時,視為機器人360為處于停止。在機器人處于停止時設(shè)為t2=t1,由此能夠使預(yù)行時間后的機器人360的預(yù)行位置與當(dāng)前位置一致。
圖3是表示在構(gòu)成圖2的干擾檢查系統(tǒng)的數(shù)值控制裝置100上執(zhí)行的處理流程的流程圖。
[步驟SA01]預(yù)讀NC程序110,并取得預(yù)讀程序塊指令數(shù)據(jù)120。
[步驟SA02]分配處理部210根據(jù)預(yù)讀程序塊指令數(shù)據(jù)120來生成插補等級的分配數(shù)據(jù)。
[步驟SA03]預(yù)行時間計算部220根據(jù)在步驟SA01取得的預(yù)讀程序塊指令數(shù)據(jù)120和在步驟SA02生成的插補等級的分配數(shù)據(jù)來計算預(yù)行時間t1。
[步驟SA04]判定在步驟SA01取得的預(yù)讀程序塊指令數(shù)據(jù)120內(nèi)是否有機器人360的移動開始指令。當(dāng)有機器人360的移動開始指令時,進入步驟SA05,當(dāng)沒有時,進入步驟SA06。
[步驟SA05]計算從當(dāng)前時刻到機器人360的移動開始指令為止的時間t2。
[步驟SA06]參照狀態(tài)信息140等,判定當(dāng)前機器人360是否正在移動。當(dāng)機器人360正在移動時,進入步驟SA07,當(dāng)是處于停止時,進入步驟SA08。
[步驟SA07]將到機器人360的移動開始指令為止的時間t2設(shè)為0。
[步驟SA08]將到機器人360的移動開始指令為止的時間t2設(shè)為t1。
[步驟SA09]判定用于計算預(yù)行時間的基準(zhǔn)位置是否成為了機器人360的移動開始指令的位置。當(dāng)成為移動開始指令的位置時,進入步驟SA10,當(dāng)沒有成為移動開始指令的位置時,進入步驟SA07。
[步驟SA10]針對機器人控制器300進行機器人360的移動開始指令。
[步驟SA11]計算機床400所具備的各軸的預(yù)行位置。
[步驟SA12]根據(jù)機器人360的狀態(tài)信息140計算機器人360的預(yù)行位置,并返回步驟SA01。
另外,本發(fā)明也能夠適用于不在數(shù)值控制裝置100一側(cè)進行機器人360的移動開始指令而由數(shù)值控制裝置100和機器人控制器300分別獨立進行動作的結(jié)構(gòu)。
圖4是表示在圖2的干擾檢查系統(tǒng)中,當(dāng)不在數(shù)值控制裝置100一側(cè)進行機器人360的移動開始指令而由數(shù)值控制裝置100和機器人控制器300分別獨立進行動作時在數(shù)值控制裝置100上執(zhí)行的處理流程的流程圖。
[步驟SB01]預(yù)讀NC程序110,并取得預(yù)讀程序塊指令數(shù)據(jù)120。
[步驟SB02]分配處理部210根據(jù)預(yù)讀程序塊指令數(shù)據(jù)120生成插補等級的分配數(shù)據(jù)。
[步驟SB03]預(yù)行時間計算部220根據(jù)在步驟SB01取得的預(yù)讀程序塊指令數(shù)據(jù)120和在步驟SB02生成的插補等級的分配數(shù)據(jù)來計算預(yù)行時間t1。
[步驟SB04]計算機床400所具備的各軸的預(yù)行位置。
[步驟SB05]參照狀態(tài)信息140等,判定機器人360是否處于停止。當(dāng)機器人360不是處于停止時,進入步驟SA06,當(dāng)機器人360處于停止時,進入步驟SA07。
[步驟SB06]根據(jù)插補等級移動數(shù)據(jù)130、從機器人控制器300取得或通知的機器人360的狀態(tài)信息140來計算正在移動的機器人360的預(yù)行位置,返回步驟SB01。例如在將機器人360的插補等級移動數(shù)據(jù)130的索引設(shè)為1個單位時,根據(jù)數(shù)值控制裝置100和機器人控制器300的插補周期cycle、預(yù)行時間t1、當(dāng)前位置的索引cpos來計算表示機器人360的預(yù)行位置的索引fpos為fpos=cpos+t1/cycle。
[步驟SB07]根據(jù)插補等級移動數(shù)據(jù)130、從機器人控制器300取得或通知的機器人360的狀態(tài)信息140來計算處于停止的機器人360的預(yù)行位置,返回步驟SB01。例如在將機器人360的插補等級移動數(shù)據(jù)130的索引設(shè)為1個單位時,根據(jù)數(shù)值控制裝置100和機器人控制器300的插補周期cycle、預(yù)行時間t1、當(dāng)前位置的索引cpos來計算表示機器人360的預(yù)行位置的索引fpos為fpos=cpos。
根據(jù)上述結(jié)構(gòu),機器人控制器如果只安裝將表示機器人的當(dāng)前位置的索引和表示移動狀態(tài)的信息通知給數(shù)值控制裝置或數(shù)值控制裝置能夠取得的功能,則能夠?qū)崿F(xiàn)機床和機器人之間的干擾檢查功能。
另外,數(shù)值控制裝置即使在用于計算預(yù)行位置的預(yù)行時間根據(jù)插補的種類、預(yù)讀程序塊內(nèi)的預(yù)讀狀態(tài)、抑制預(yù)讀的每個指令發(fā)生動態(tài)變動,也能夠在該進行變動的預(yù)行時間計算機器人的預(yù)行位置,因此能夠計算機床與機器人之間的同步的預(yù)行位置。
進一步,從機器人控制器取得表示機器人的當(dāng)前位置的索引信息以及表示移動狀態(tài)的信息,由此能夠最小限度地修正機床和機器人的預(yù)行位置的誤差。
以上,說明了本發(fā)明的實施方式,但是本發(fā)明不限于上述實施方式的例子,能夠通過增加適當(dāng)?shù)淖兏愿鞣N方式來實施。
例如,在上述實施方式中,事先使用離線編程裝置600等分析在機器人控制器300上執(zhí)行的示教程序,并將機器人360的移動信息生成為帶索引的插補等級移動數(shù)據(jù),表示了在數(shù)值控制裝置100和機器人控制器360之間共享的例子,但是,相反也可以有以下結(jié)構(gòu),即事先使用離線編程裝置600等分析在數(shù)值控制裝置100上執(zhí)行的NC程序,并將機床400的移動信息生成為帶索引的插補等級移動數(shù)據(jù),將該生成的帶索引的插補等級移動數(shù)據(jù)在數(shù)值控制裝置100和機器人控制器300之間分別作為插補等級移動數(shù)據(jù)130、插補等級移動數(shù)據(jù)310而共享。
此時,如圖5所示,將在上述實施方式中與安裝在數(shù)值控制裝置100上的預(yù)行時間計算部220、機床預(yù)行位置計算部230、機器人預(yù)行位置計算部240對應(yīng)的結(jié)構(gòu)的預(yù)行時間計算部370、機器人預(yù)行位置計算部380、機床預(yù)行位置計算部390等分別安裝在機器人控制器300上,通過這些功能單元分別計算機床400和機器人360的預(yù)行位置,并通知給干擾檢查裝置500。
此時,數(shù)值控制裝置100將包括附加給表示機床的當(dāng)前位置的插補等級移動數(shù)據(jù)130的索引的狀態(tài)信息反饋給機器人控制器300,機器人控制器300根據(jù)該反饋來的狀態(tài)信息修正當(dāng)前計算中的預(yù)行位置和實際的機器人360的當(dāng)前位置之間的誤差即可。