具備程序的預(yù)讀功能的數(shù)值控制裝置的制造方法【
技術(shù)領(lǐng)域:
】[0001]本發(fā)明涉及一種具備程序的預(yù)讀功能的數(shù)值控制裝置?!?br>背景技術(shù):
】[0002]已知一種數(shù)值控制裝置,其具有在NC程序的預(yù)讀控制中,預(yù)讀預(yù)先決定的預(yù)讀程序塊數(shù)的功能(參照日本特開2007-94936號(hào)公報(bào),日本特開2007-164509號(hào)公報(bào)、日本特開2008-40542號(hào)公報(bào))。[0003]另外,已知一種數(shù)值控制裝置,其具備以下功能,即與上述NC程序運(yùn)轉(zhuǎn)不同,將以時(shí)間、軸位置或主軸位置為基準(zhǔn)的設(shè)定了軸的位置的表形式數(shù)據(jù)(路徑表pathtable)存儲(chǔ)在存儲(chǔ)器或通過網(wǎng)絡(luò)連接的存儲(chǔ)裝置中,一邊依次讀出表形式數(shù)據(jù)(路徑表),一邊驅(qū)動(dòng)各軸(路徑表運(yùn)轉(zhuǎn)功能)(參照日本特開昭59-177604號(hào)公報(bào),日本特開2012-234445號(hào)公報(bào))。通過路徑表運(yùn)轉(zhuǎn)功能,能夠進(jìn)行不拘泥于加工程序的自由的刀具的動(dòng)作,能夠?qū)崿F(xiàn)加工時(shí)間的縮短和加工的高精度化。[0004]另外,在日本特開2012-93975號(hào)公報(bào)中公開了能夠提高加工時(shí)間的預(yù)測(cè)精度和縮短用于預(yù)測(cè)加工時(shí)間的處理時(shí)間的數(shù)值控制機(jī)床的加工時(shí)間的預(yù)測(cè)方法以及預(yù)測(cè)裝置。[0005]在上述的NC程序的預(yù)讀控制中,有時(shí)在微小程序塊連續(xù)的NC程序中來不及進(jìn)行預(yù)讀的情況。當(dāng)相互協(xié)作進(jìn)行動(dòng)作的多個(gè)NC程序中的某一個(gè)NC程序的預(yù)讀來不及進(jìn)行時(shí),會(huì)影響其它的NC程序,有時(shí)全體的周期時(shí)間延長(zhǎng)。[0006]這里,使用圖12以及圖13來說明全體的周期時(shí)間延長(zhǎng)的例子。[0007]圖12是表示通過NC程序運(yùn)轉(zhuǎn)的預(yù)讀并行執(zhí)行的3個(gè)程序例子的圖。圖13是表示在圖12所示的3個(gè)程序中,通過現(xiàn)有技術(shù)的預(yù)讀控制方式,在預(yù)讀了9個(gè)程序塊的階段,各個(gè)程序的預(yù)讀的程序塊的執(zhí)行時(shí)間的累積值(累積執(zhí)行時(shí)間)的圖。[0008]以圖12所示的并行執(zhí)行3個(gè)程序(00001、00002、00003)的情況為例進(jìn)行說明?!?0001”、“00002”、“00003”分別是程序名。另外,在圖12中各個(gè)程序內(nèi)的括弧內(nèi)的數(shù)值表示各個(gè)程序塊的執(zhí)行時(shí)間。[0009]目前,因?yàn)楦鱾€(gè)程序不考慮預(yù)讀的程序塊的執(zhí)行時(shí)間的累積值地進(jìn)行了預(yù)讀,所以在平均地進(jìn)行了預(yù)讀的情況下,按照以下的順序進(jìn)行預(yù)讀。[0010](I)預(yù)讀NII[0011][預(yù)讀程序塊數(shù)(00001、00002、00003)=(1、0、0)][0012]⑵預(yù)讀N21[0013][預(yù)讀程序塊數(shù)(00001、00002、00003)=(UUO)][0014]⑶預(yù)讀N31[0015][預(yù)讀程序塊數(shù)(00001、00002、00003)=(1、1、I)][0016](4)預(yù)讀NI2[0017][預(yù)讀程序塊數(shù)(00001、00002、00003)=(2、1、I)][0018](5)預(yù)讀N22[0019][預(yù)讀程序塊數(shù)(00001、00002、00003)=(2、2、1)][0020](6)預(yù)讀N32[0021][預(yù)讀程序塊數(shù)(00001、00002、00003)=(2、2、2)][0022](7)預(yù)讀NI3[0023][預(yù)讀程序塊數(shù)(00001、00002、00003)=(3、2、2)][0024](8)預(yù)讀N23[0025][預(yù)讀程序塊數(shù)(00001、00002、00003)=(3、3、2)][0026](9)預(yù)讀N33[0027][預(yù)讀程序塊數(shù)(00001、00002、00003)=(3、3、3)][0028]:[0029]在上述的(9)中一共預(yù)讀了9個(gè)程序塊的階段,各程序中的預(yù)讀的程序塊的執(zhí)行時(shí)間的累積值如圖13所示那樣。這時(shí),00003的預(yù)讀出的程序塊的執(zhí)行時(shí)間的累積值為3ms,因此當(dāng)在該狀態(tài)下進(jìn)行運(yùn)轉(zhuǎn)而來不及預(yù)讀時(shí),進(jìn)行等待直到能夠預(yù)讀為止。[0030]另外,即使在基于表形式數(shù)據(jù)的運(yùn)轉(zhuǎn)(路徑表運(yùn)轉(zhuǎn))中,當(dāng)微小程序塊連續(xù)時(shí),有時(shí)來不及預(yù)讀各表形式數(shù)據(jù)的程序塊。如果來不及預(yù)讀,則無法按照成為基準(zhǔn)的時(shí)間、軸位置或主軸位置而移動(dòng)到軸的位置,因此成為警告或立即停止。如果為了不成為警告或立即停止,運(yùn)轉(zhuǎn)為了來得及預(yù)讀而修正后的表形式數(shù)據(jù),則周期時(shí)間延長(zhǎng)。[0031]在此,關(guān)于一邊進(jìn)行路徑表的預(yù)讀一邊運(yùn)轉(zhuǎn)的基于表形式數(shù)據(jù)的運(yùn)轉(zhuǎn)(路徑表運(yùn)轉(zhuǎn))的現(xiàn)有技術(shù),以執(zhí)行圖14的3個(gè)路徑表(X軸的路徑表〈X〉、主軸S的路徑表〈S〉、輔助功能的路徑表<M>)的情況為例進(jìn)行說明。[0032]目前,因?yàn)椴豢紤]預(yù)讀的程序塊的執(zhí)行時(shí)間的累積值地進(jìn)行預(yù)讀,因此在平均地進(jìn)行了預(yù)讀的情況下,按照以下的順序進(jìn)行了預(yù)讀。[0033](I)預(yù)讀〈X〉的LI[0034][預(yù)讀程序塊數(shù)(<X>、〈S>、〈M>)=(1、0、0)][0035](2)預(yù)讀〈S〉的LlOO[0036][預(yù)讀程序塊數(shù)(<X>、〈S>、〈M>)=(UUO)][0037](3)預(yù)讀<M>的L1000[0038][預(yù)讀程序塊數(shù)(<X>、〈S>、〈M>)=(1、1、I)][0039](4)預(yù)讀〈X〉的L2[0040][預(yù)讀程序塊數(shù)(<X>、〈S>、〈M>)=(2、1、1)][0041](5)預(yù)讀〈S〉的L150[0042][預(yù)讀程序塊數(shù)(<X>、〈S>、〈M>)=(2、2、1)][0043](6)預(yù)讀<M>的L1050[0044][預(yù)讀程序塊數(shù)?Χ>、〈S〉、<M>)=(2,2,2)][0045](7)預(yù)讀〈X〉的L3[0046][預(yù)讀程序塊數(shù)?Χ>、〈S〉、<M>)=(3,2,2)][0047](8)預(yù)讀〈S〉的L200[0048][預(yù)讀程序塊數(shù)?Χ>、〈S〉、<M>)=(3,3,2)][0049](9)預(yù)讀<M>的LllOO[0050][預(yù)讀程序塊數(shù)?Χ>、〈S〉、<Μ?=(3,3,3)][0051]:[0052]在(9)中一共預(yù)讀了9個(gè)程序塊的階段,各個(gè)路徑表的預(yù)讀的程序塊的執(zhí)行時(shí)間的累積值如圖15那樣。這時(shí),〈X〉的預(yù)讀的程序塊的執(zhí)行時(shí)間的計(jì)算值為3ms。當(dāng)在該狀態(tài)下進(jìn)行運(yùn)轉(zhuǎn)時(shí)來不及預(yù)讀,由此成為警告或立即停止。在進(jìn)行路徑表運(yùn)轉(zhuǎn)時(shí),沒有監(jiān)視各個(gè)路徑表的預(yù)讀的程序塊執(zhí)行時(shí)間的累積值。因此,無法事先檢測(cè)出預(yù)讀的程序塊的執(zhí)行時(shí)間的累積值比用于安全地減速停止的時(shí)間少的情況。[0053]因此,當(dāng)來不及預(yù)讀時(shí)必然會(huì)發(fā)生警告或立即停止,其結(jié)果有可能對(duì)機(jī)械造成沖擊。特別是在從通過網(wǎng)絡(luò)連接的存儲(chǔ)裝置進(jìn)行預(yù)讀來進(jìn)行運(yùn)轉(zhuǎn)的情況下,有可能由于暫時(shí)的網(wǎng)絡(luò)故障導(dǎo)致通信中斷,因此該問題的解決成為課題?!?br/>發(fā)明內(nèi)容】[0054]因此,為了解決上述現(xiàn)有的技術(shù)問題,本發(fā)明的目的在于提供一種具備程序的預(yù)讀功能的數(shù)值控制裝置,在并行執(zhí)行多個(gè)NC程序時(shí),防止來不及預(yù)讀的情況,并且防止周期時(shí)間延長(zhǎng),還提供一種具備基于表形式數(shù)據(jù)的運(yùn)轉(zhuǎn)功能的數(shù)值控制裝置,在基于表形式數(shù)據(jù)的運(yùn)轉(zhuǎn)(路徑表運(yùn)轉(zhuǎn))中,在并行執(zhí)行多個(gè)表形式數(shù)據(jù)時(shí),難以因來不及預(yù)讀而產(chǎn)生警告或立即停止。[0055]在并行執(zhí)行多個(gè)NC程序時(shí),為了來得及預(yù)讀,使預(yù)讀的程序塊的執(zhí)行時(shí)間短的NC程序優(yōu)先來進(jìn)行預(yù)讀。這樣,防止來不及預(yù)讀,并且防止周期時(shí)間延長(zhǎng)。另外,已知具有用于計(jì)算NC程序的各程序塊的執(zhí)行時(shí)間的功能的數(shù)值控制裝置(參照日本特開2012-93975號(hào)公報(bào))。[0056]另外,和上述NC程序的運(yùn)轉(zhuǎn)不同,在基于表形式數(shù)據(jù)的運(yùn)轉(zhuǎn)中,在并行執(zhí)行多個(gè)表形式數(shù)據(jù)時(shí),根據(jù)優(yōu)先度來決定預(yù)讀多個(gè)表形式數(shù)據(jù)中的哪個(gè)表形式數(shù)據(jù)。使預(yù)讀程序塊的執(zhí)行時(shí)間短的表形式數(shù)據(jù)優(yōu)先進(jìn)行預(yù)讀,由此難以因來不及預(yù)讀而產(chǎn)生警告或立即停止。結(jié)果,不需要像現(xiàn)有技術(shù)那樣修正表形式數(shù)據(jù),能夠期待與現(xiàn)有技術(shù)相比縮短周期時(shí)間。[0057]本發(fā)明的數(shù)值控制裝置的第一方式為一邊從存儲(chǔ)器或通過網(wǎng)絡(luò)連接的存儲(chǔ)裝置依次預(yù)讀多個(gè)NC程序的程序塊一邊并行執(zhí)行程序塊的數(shù)值控制裝置,具備:執(zhí)行時(shí)間存儲(chǔ)部,其存儲(chǔ)上述NC程序中的各個(gè)程序塊的執(zhí)行時(shí)間;執(zhí)行時(shí)間累積部,其從上述執(zhí)行時(shí)間存儲(chǔ)部讀出上述預(yù)讀出的程序塊的執(zhí)行時(shí)間,將該讀出的執(zhí)行時(shí)間進(jìn)行累積;判定部,其將上述各個(gè)NC程序中的預(yù)讀出的程序塊的累積的執(zhí)行時(shí)間彼此進(jìn)行比較,判定預(yù)讀出的程序塊的執(zhí)行時(shí)間的累積值最短的NC程序;以及預(yù)讀執(zhí)行部,其接著進(jìn)行由上述判定部判定的上述預(yù)讀出的程序塊的執(zhí)行時(shí)間的累積值最短的NC程序的預(yù)讀。[0058]可以按照上述NC程序預(yù)先進(jìn)行加工,將對(duì)上述NC程序中的各個(gè)程序塊的執(zhí)行時(shí)間進(jìn)行測(cè)量得到的結(jié)果存儲(chǔ)在上述執(zhí)行時(shí)間存儲(chǔ)部中,在下次及其以后的加工中讀出在該執(zhí)行時(shí)間存儲(chǔ)部中存儲(chǔ)的執(zhí)行時(shí)間。[0059]本發(fā)明的數(shù)值控制裝置的第二方式是當(dāng)前第1頁(yè)1 2 3 4 5