亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

具有重新開始程序塊先行處理功能的數(shù)值控制器的制作方法

文檔序號:6282953閱讀:212來源:國知局
專利名稱:具有重新開始程序塊先行處理功能的數(shù)值控制器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及用于控制機(jī)械工具的數(shù)值控制器。特別地,本發(fā)明涉及一種數(shù) 值控制器,其中,在生成可執(zhí)行數(shù)據(jù)之前從程序中讀取命令塊,該執(zhí)行數(shù)據(jù)臨
時(shí)存儲(chǔ)在先行緩沖器中,并且基于該執(zhí)行數(shù)據(jù)執(zhí)行插值處理;更具體地,本發(fā)
明涉及能夠縮短先行停止控制的周期時(shí)間的數(shù)值控制器。
背景技術(shù)
在數(shù)值控制器中執(zhí)行先行控制中,直接執(zhí)行機(jī)械加工程序的較后階段的序 列中的系統(tǒng)變量操作的程序塊,而不存儲(chǔ)在先行緩沖器中,因此這可能影響執(zhí) 行數(shù)據(jù)的處理,該執(zhí)行數(shù)據(jù)被分析并臨時(shí)存儲(chǔ)在先行緩沖器中。在該情況下執(zhí) 行先行停止控制。
在數(shù)值控制器中的常規(guī)的先行停止控制中,用于該控制的命令作為一個(gè)程 序塊插入機(jī)械加工程序中,并通過該插入的程序塊停止該初4戒加工程序的先行 處理(lookahead)(圖8a)。在圖8a所示的程序示例中,插入先行停止代碼的 程序塊N14以防止程序塊N15被預(yù)先讀取或先行處理。還存在一種先行停止 代碼,可以通過將該先行停止控制的代碼插入該機(jī)械加工程序中來共同命令機(jī) 械加工程序的程序塊和該種先行停止代碼。然而,在包括先行停止代碼的程序 塊的全部處理完成之后才停止先行處理(圖8b)。在圖8b所示的程序示例中, 將是輔助函數(shù)(auxiliary function )的M代碼作為先行停止代碼插入程序塊N13 中,以免預(yù)先讀取程序塊N14。此外,存在公知的技術(shù),其中當(dāng)在機(jī)器人控制 方法中調(diào)整變量時(shí),重新開始先行處理(見JP 05-218445A )。
存在一個(gè)問題如果對一個(gè)程序塊插入先行停止程序,則該程序塊的處理
時(shí)間必然被加到機(jī)械加工程序的處理時(shí)間,因此延長了機(jī)械加工時(shí)間。由于可 以與機(jī)械加工程序一起發(fā)出的先行停止代碼是輔助函數(shù),而且在程序塊的執(zhí)行 的結(jié)尾需要用于可編程控制器的信號操作。從而,執(zhí)行被延遲,使得機(jī)械加工 時(shí)間被進(jìn)一步延長。

發(fā)明內(nèi)容
本發(fā)明提供一種數(shù)值控制器,該數(shù)值控制器能夠通過暫停機(jī)械加工程序的 讀取程序塊的分析并且在所讀取的程序塊的前面的程序塊的執(zhí)行完成時(shí)重新 開始暫停階段的讀取的程序塊的分析來執(zhí)行先行控制,以縮短先行控制的周期 時(shí)間。
程序塊來獲得執(zhí)行數(shù)據(jù)的先行處理并在緩沖器中存儲(chǔ)該執(zhí)行數(shù)據(jù),并且執(zhí)行所
存儲(chǔ)的執(zhí)行數(shù)據(jù)來進(jìn)行數(shù)值控制。根據(jù)本發(fā)明的一個(gè)方面,數(shù)值控制器包括
從而停止先行處理的暫停代碼;暫停裝置,用于暫停由所述代碼確定裝置確定 所述讀取的程序塊為包括該暫停代碼的所述讀取的程序塊的分析;執(zhí)行完成確 定裝置,用于確定被暫停的程序塊的前面的程序塊的存儲(chǔ)的執(zhí)行數(shù)據(jù)的執(zhí)行是 否完成;及重新開始裝置,當(dāng)由所述執(zhí)行完成確定裝置確定被暫停的程序塊的 前面的程序塊的存儲(chǔ)的執(zhí)行數(shù)據(jù)的執(zhí)行完成時(shí),重新開始被暫停的程序塊的分析。
在這種情況下,數(shù)值控制器可以進(jìn)一步包括使用參數(shù)來注冊(registering) 停止該先行處理的暫停代碼的裝置。
根據(jù)本發(fā)明的另一個(gè)方面,數(shù)值控制器包括代碼確定裝置,用于確定讀 取的程序塊是否包括宏變量操作的代碼,對于該操作,所述讀取的程序塊的分 析被暫停從而停止先行處理;暫停裝置,用于暫停讀取的程序塊的分析,所述 讀取的程序塊由所述代碼確定裝置確定為包括所述讀取的程序塊的分析要被 暫停的宏變量操作的代碼;執(zhí)行完成確定裝置,用于確定被暫停的程序塊的前 面的程序塊的存儲(chǔ)的執(zhí)行數(shù)據(jù)的執(zhí)行是否完成;及重新開始裝置,當(dāng)由所述執(zhí) 行完成確定裝置確定被暫停的程序塊的前面的程序塊的存儲(chǔ)的執(zhí)行數(shù)據(jù)的執(zhí) 行完成時(shí),重新開始被暫停的程序塊的分析。
在這種情況下,數(shù)值控制器可以進(jìn)一步包括使用參數(shù)來指示該宏變量的范 圍的裝置,該宏變量的范圍用于確定宏變量操作的代碼,對于該宏變量操作, 讀取的程序塊的分析要被暫停。
此外,數(shù)值控制器可以包括使用參數(shù)來指示宏變量操作的階段的裝置,對于該宏變量操作,讀取的程序塊的分析要被暫停。
根據(jù)本發(fā)明的再一個(gè)方面,數(shù)值控制器包括代碼確定裝置,用于確定讀 取的程序塊是否包括停止先行處理的先行停止代碼;代碼類型確定裝置,用于 確定由所述代碼確定裝置確定的先行停止代碼是否是暫停所述讀取的程序塊 的分析的代碼;執(zhí)行完成確定裝置,用于確定該暫停的程序塊的前面的程序塊 的存儲(chǔ)的執(zhí)行數(shù)據(jù)的執(zhí)行是否完成;及暫停/繼續(xù)裝置,根據(jù)由所述代碼類型 確定裝置確定的和由所述執(zhí)-f于完成確定裝置確定的結(jié)果,暫停包含要暫停所述 讀取的程序塊的分析的代碼的所述讀取的程序塊的分析并重新開始被暫停的 程序塊的分析以獲得執(zhí)行數(shù)據(jù),或可選擇地繼續(xù)所述讀取的程序塊的分析以獲 得執(zhí)行數(shù)據(jù)。
在這種情況下,數(shù)值控制器可以進(jìn)一步包括使用 一個(gè)或多個(gè)參數(shù)來注冊一 個(gè)或多個(gè)先行停止代碼的裝置。
通過在機(jī)械加工程序命令中包括暫停讀取的程序塊的分析來停止先行處 理的代碼,可以比在插入停止該先行處理的程序塊的常M^的方法的情況下縮短 用于機(jī)械加工程序的周期時(shí)間。此外,在被插入機(jī)械加工程序的現(xiàn)有程序塊中 的常規(guī)的先行停止代碼中還存在這樣的問題在包括先行代碼的程序塊的處理 完成之后停止該先行處理。但是,通過暫停機(jī)械加工程序分析可以消除這個(gè)問 題。由于機(jī)械加工程序的分析處理被暫停并從該暫停階段重新開始,而且比常 規(guī)的先行控制方法較少耗費(fèi)(less wastefbl),從而可以進(jìn)一步縮短周期時(shí)間。


圖1是根據(jù)本發(fā)明的一個(gè)實(shí)施例具有控制機(jī)械工具的先行控制功能的數(shù) 值控制器的示意圖2是表示根據(jù)該實(shí)施例的分析被暫停并被保存在先行緩沖器中的算法 的流程圖3是表示根據(jù)該實(shí)施例的分析被暫停并不存儲(chǔ)在先行緩沖器中的算法 的流程圖4是表示根據(jù)該實(shí)施例包括兩種類型的先行停止代碼的算法的流程圖; 圖5是表示從該先行緩沖器讀取執(zhí)行數(shù)據(jù)并執(zhí)行該數(shù)據(jù)的處理的流程圖; 圖6是表示對于G90(H皮用作停止先行處理的代碼的情況的程序示例;圖7是表示對于停止先行處理的代碼被用作宏變量操作的代碼的情況的 程序示例;
圖8a和8b表示對于G900被用作停止先行處理的代碼的情況的程序示例。
具體實(shí)施例方式
根據(jù)圖1所示的本發(fā)明的實(shí)施例的數(shù)值控制器8提供先行停止代碼表4。 先行停止代碼表4加載停止先行處理的類型的代碼及暫停程序塊分析以停止 先行處理的類型的代碼。在這些情況下,宏變量可以被用作存儲(chǔ)在先行停止代 碼表4中的代碼。參考圖1,當(dāng)執(zhí)行時(shí),程序讀取/分析裝置1連續(xù)地讀取并分 析當(dāng)前程序塊之前的一個(gè)或多個(gè)程序塊,并將分析的結(jié)果加載入先行緩沖器2 中。先行援沖器2加載多條信息,例如用于每個(gè)程序塊的模式信息、每個(gè)軸的 移動(dòng)、命令的主軸(spindle)速度、進(jìn)給速度等。圖1所示的程序讀取/分析 裝置1從機(jī)械加工程序中一個(gè)一個(gè)地讀取程序塊并分析所讀取的程序塊。當(dāng)在 先行停止代碼表4中注冊的先行停止代碼出現(xiàn)時(shí),停止機(jī)械加工程序的先行處 理。先行停止代碼包括已注冊的代碼和宏變量,例如在圖6的機(jī)械加工程序示 例中的N14中的G900和在圖7的機(jī)械加工程序示例中的N14中的#13020。
數(shù)值控制器8中的程序塊分析表示將作為源代碼的程序塊轉(zhuǎn)換為目標(biāo)代 碼,即可由計(jì)算機(jī)識別的執(zhí)行數(shù)據(jù)。該轉(zhuǎn)換包括七個(gè)類型的處理詞法(lexical) 分析(1 ),宏分析(2 ),宏執(zhí)行(3 ),句法(syntactic )分析(4 ),語義(semantic) 分析(5 ),目標(biāo)代碼生成(6 )以及優(yōu)化(7 )。詞法分析(1 )是用于從數(shù)值符 號中劃分出字母符號的處理。宏分析(2)表示當(dāng)詞法分析的結(jié)果包括宏變量 的特定符號時(shí)執(zhí)行宏分析。分析變量值(variable number)和宏句法,并且如 果在先行停止代碼表4中注冊的任意變量操作被執(zhí)行,則停止該分析。宏執(zhí)行 (3)是已分析的宏的執(zhí)行。依據(jù)該宏程序,根據(jù)詞法分析的結(jié)果重寫宏區(qū)域。 例如G00X#100是這樣含義的信息當(dāng)該命令被執(zhí)行時(shí),如果#100的值是 350.0,則將350.0輸入到詞法分析的結(jié)果數(shù)據(jù)的X地址。句法分析(4)僅用 于確定G命令的數(shù)值。語義分析(5)可以由G命令的數(shù)值指定該函數(shù),從而 對每個(gè)函數(shù)能夠執(zhí)行處理。目標(biāo)代碼生成(6)表示語義分析的結(jié)果的目標(biāo)代 碼。在本發(fā)明的本實(shí)施例中,通過連續(xù)地先行處理的程序塊的前述處理來生成 執(zhí)行數(shù)據(jù)。如果沒有先行處理是基于宏變量操作執(zhí)行的,則不執(zhí)行宏分析(2)和宏執(zhí)行(3)的轉(zhuǎn)換處理。
如果在程序塊中出現(xiàn)暫停程序塊分析的類型的任意代碼,則數(shù)值控制器8 執(zhí)行在預(yù)定的一個(gè)前述處理中暫停該程序塊分析的處理。對數(shù)值控制器8提供 先行停止代碼注冊裝置5和宏變量范圍指定裝置6。使用參數(shù)可以在先行停止 代碼注冊裝置5中注冊一個(gè)或多個(gè)先行停止代碼。宏變量范圍指定裝置6可以 使用參數(shù)來指定宏變量的范圍,該宏變量用于確定程序塊分析的暫停,從而當(dāng) 搡作#10000到#11000范圍內(nèi)的變量時(shí),可以暫停程序塊分析以停止先行處理。 此外,作為變量操作的示例,使用參數(shù)還可以指定(1)讀取變量的值、(2) 改變變量的內(nèi)容等也可由參數(shù)指定。對于這些指定,可以對數(shù)值控制器8提供 宏變量操作階段指定裝置7,宏變量操作階段指定裝置7可以指定僅操作(2 ) 的先行處理被停止,而不允許停止操作(1)的先^f亍處理。這在對數(shù)值控制器 8僅提供這些裝置5、 6和7中的一個(gè)裝置時(shí)才是必需的。
有一種方法,例如,通過指定作為參數(shù)的特定示例的變量值的范圍進(jìn)一步 指定操作方法,包括
參數(shù)15010= 13000,
參數(shù)15010 = 13000 (或數(shù)值例如100被輸入), 參數(shù)15010 = 0:用于讀和寫操作,
1:僅用于讀操作,
2:僅用于寫操作。 例如,基于函數(shù)的指定方法,包括
參數(shù)15000# 0=1:當(dāng)偏移(offset)函數(shù)的變量被讀出和寫入時(shí)停止先 行處理。
參數(shù)15000#1 = 1:僅當(dāng)偏移函數(shù)的變量被讀出時(shí)停止先行處理。 參數(shù)15000#2=1:僅當(dāng)偏移函數(shù)的變量被寫入時(shí)停止先行處理。 因此,設(shè)置參數(shù)具有含義,并注冊這些參數(shù)的一些設(shè)置。 圖2是表示使用代碼的先行處理的算法的流程圖,該代碼用于程序塊分析 的暫停及用于先行處理停止,該程序塊分析是由本實(shí)施例的數(shù)值控制器的處理 器執(zhí)行的。像G900 —樣設(shè)置包括暫停程序塊分析的類型的先行處理停止的代 碼,G900被用在圖6的機(jī)械加工程序示例中。首先,從機(jī)械加工程序讀取一個(gè)程序塊(步驟Al )。確定所讀取的程序塊是否是程序結(jié)尾(步驟A2 )。例如, 通過識別序列號和表示程序結(jié)尾的代碼可以確定所讀取的程序塊是否是程序
結(jié)尾。在圖6所示的機(jī)械加工程序示例中,通過識別M30可以識別該程序結(jié) 尾,M30是表示程序結(jié)尾的輔助函數(shù)。如果識別出程序結(jié)尾,則機(jī)械加工程 序的處理結(jié)束。
在步驟A3,確定為數(shù)值控制器提供的先行緩沖器是否為滿。如果先行緩 沖器是滿的,則它等待直到先行緩沖器不再為滿(步驟A3)。例如,通過識別 表示位置的指針來確定先行緩沖器是否為滿,在該位置先行緩沖器存儲(chǔ)程序塊 執(zhí)行數(shù)據(jù)。如果斷定先行緩沖器不滿,則確定表示先行處理停止的標(biāo)記F是否 設(shè)置為1 (步驟A4)。如果標(biāo)記F不是1 (即,如果先行處理沒有停止),則分 析所讀取的程序塊(步驟A5 )。在步驟A5的分析包括詞法分析和句法分析。
程序塊信息中(步驟A6 )。如杲在步驟A6斷定沒有任何暫停程序塊分析的類 型的先行停止代碼,則繼續(xù)所讀取的程序塊的分析以生成執(zhí)4亍數(shù)據(jù)(步驟A7 )。 以語義分析開始繼續(xù)步驟A7中的分析。生成的執(zhí)行數(shù)據(jù)保存在先行緩沖器中
(步驟A8)。然后,過程返回至開始來讀取下一個(gè)程序塊。
如果在步驟A6斷定有暫停程序塊分析的類型的先行停止代碼,則暫停包 括該代碼的程序塊的分析(步驟A9)。然后,將用于先行停止的標(biāo)記設(shè)置為1
(步驟AIO)。由于程序塊分析被暫停,因此過程返回至識別程序結(jié)尾的步驟 A2和確定先行緩沖器是否為滿的步驟A3之間的階段,以免下一個(gè)程序塊被 讀取。
如果在步驟A4斷定該標(biāo)記為1,即先行處理被停止,則確定先行緩沖器 是否為空,即被暫停的程序塊前面的程序塊的執(zhí)行數(shù)據(jù)的執(zhí)行是否完成(步驟 All),該前面的程序塊已存儲(chǔ)在該先行緩沖器中。如果在步驟A11確定先行 緩沖器不空,則等待直到該緩沖器為空。如果斷定先行緩沖器為空,則重新開 始在步驟A9暫停分析的程序塊的分析處理并被繼續(xù)生成執(zhí)行數(shù)據(jù)(步驟 A12)。以語義分析開始繼續(xù)步驟A12中的分析。生成的執(zhí)行數(shù)據(jù)保存在先行 緩沖器中(步驟A13)。由于重新開始并繼續(xù)暫停的程序塊分析處理,因此標(biāo) 記F重新設(shè)置為0以取消先行處理停止?fàn)顟B(tài),以便能夠執(zhí)行下一個(gè)程序塊的分析(步驟A14)。然后,過程返回至開始來讀取下一個(gè)程序塊。
圖3是表示使用宏變量操作作為辨別代碼的先行處理的算法的流程圖,該 辨別代碼用于程序塊分析的暫停及用于先行處理停止,該程序塊分析是由本實(shí) 施例的數(shù)值控制器的處理器執(zhí)行的。首先,從機(jī)械加工程序中讀取一個(gè)程序塊 (步驟B1)。確定所讀取的程序塊是否是程序結(jié)尾(步驟B2)。例如,通過識 別序列號和表示程序結(jié)尾的代碼可以確定所讀取的程序塊是否是程序結(jié)尾。在 圖6所示的機(jī)械加工程序示例中,通過識別M30可以識別程序結(jié)尾,M30是 表示程序結(jié)尾的輔助函數(shù)。如果識別出程序結(jié)尾,則機(jī)械加工程序的處理結(jié)束。
在步驟B3,確定為數(shù)值控制器提供的先行緩沖器是否為滿。如果先行緩 沖器是滿的,則等待直到先行緩沖器不再為滿(步驟B3)。例如,通過識別表 示位置的指針來確定先行緩沖器是否為滿,在該位置先行緩沖器存儲(chǔ)程序塊執(zhí) 行數(shù)據(jù)。如果確定先行緩沖器不滿,則確定表示先行處理停止的標(biāo)記F是否設(shè) 置為1 (步驟B4)。如果標(biāo)記F不是1 (即,如果先行處理沒有停止),則分析 所讀取的程序塊(步驟B5)。步驟B5中的程序塊分析包括詞法分析和宏分析。 確定要暫停程序塊分析的類型的任何宏變量操作是否出現(xiàn)在步驟B5所分析的 程序塊信息中(步驟B6)。如果在步驟B6中斷定沒有前述類型的宏變量操作, 則繼續(xù)所讀取的程序塊的分析以生成執(zhí)行數(shù)據(jù)(步驟B7 )。以宏執(zhí)行開始繼續(xù) 步驟B7中的分析。生成的執(zhí)行數(shù)據(jù)保存在先行緩沖器中(步驟B8)。然后, 過程返回至開始來讀取下一個(gè)程序塊。
如果在步驟B6斷定有暫停程序塊分析的類型的宏變量操作,則暫停包括 該宏變量操作的程序塊的分析(步驟B9)。然后,先行停止的標(biāo)記設(shè)置為l(步 驟BIO)。由于程序塊分析被暫停,因此過程返回至識別程序結(jié)尾的步驟B2 和確定先行緩沖器是否滿的步驟B3之間的階段,以免下一個(gè)程序塊被讀取。
如果在步驟B4斷定標(biāo)記F為1,即先行處理停止,則確定先行緩沖器是 否為空(步驟Bll)。如果在步驟Bll斷定先行緩沖器不空,則等待直到該緩 沖器為空。如果斷定先行緩沖器為空,則重新開始在步驟B9暫停分析的程序 塊的分析處理并繼續(xù)生成執(zhí)行數(shù)據(jù)(步驟B12)。以宏執(zhí)行開始繼續(xù)步驟B12 中的分析,并且進(jìn)行執(zhí)行處理(步驟B13)。由于重新開始并繼續(xù)暫停的程序 塊分析處理,因此標(biāo)記F重新設(shè)置為O以取消先行處理停止?fàn)顟B(tài),從而允許先行處理,以便能夠執(zhí)行下一個(gè)程序塊的分析(步驟B14)。然后,過程返回至
開始來讀取下一個(gè)程序塊。
圖2和3的流程圖的區(qū)別在于步驟A13和B13。雖然在步驟A13中所獲 得的執(zhí)行數(shù)據(jù)保存在先行緩沖器中,但是在步驟B13中直接進(jìn)行執(zhí)行處理, 而不在先行緩沖器中保存該執(zhí)行數(shù)據(jù)。
圖4是表示使用在圖1的先行停止代碼表4中存儲(chǔ)的兩種類型的代碼(用 于暫停預(yù)先讀取的程序塊的分析的代碼和用于繼續(xù)分析處理以生成執(zhí)行數(shù)據(jù) 的代碼)的先行處理的算法的流程圖。首先,從機(jī)械加工程序讀取一個(gè)程序塊 (步驟C1)。確定所讀取的程序塊是否是程序結(jié)尾(步驟C2)。例如,通過識
圖6所示的機(jī)械加工程序示例中,通過識別M30可以識別程序結(jié)尾,M30是 表示程序結(jié)尾的輔助函數(shù)。如果識別出程序結(jié)尾,則機(jī)械加工程序的處理結(jié)束。
在步驟C3,確定對數(shù)值控制器提供的先行緩沖器是否為滿。如果先行緩 沖器為滿,則等待直到先行緩沖器不再為滿(步驟C3)。例如,通過識別表示 位置的指針來確定先行緩沖器是否為滿,在該位置先行緩沖器存儲(chǔ)程序塊執(zhí)行 數(shù)據(jù)。如果確定先行緩沖器不滿,則確定表示先行處理停止的標(biāo)記F是否設(shè)置 為1 (步驟C4)。如果標(biāo)記F不是1 (即,如果先行處理沒有停止),則分析所 讀取的程序塊(步驟C5 )。步驟C5中的分析包括詞法分析和句法分析。確定 暫停程序塊分析類型的任何先行停止代碼是否出現(xiàn)在步驟C5所分析的程序塊 信息中(步驟C6)。如果在步驟C6斷定沒有先行停止代碼,則繼續(xù)所讀取的 程序塊的分析以生成執(zhí)行數(shù)據(jù)(步驟C7 )。生成的執(zhí)行數(shù)據(jù)保存在先行緩沖器 中(步驟C8)。然后,過程返回至開始來讀取下一個(gè)程序塊。
如果在步驟C6斷定有先行停止代碼,則確定先行停止代碼是否為暫停程 序塊分析的類型(步驟C9 )。在圖6的機(jī)械加工程序示例中先行代碼G900表 示為暫停程序塊分析的類型。此外,圖8a和8b表示M900為對所讀取的程序 塊的分析處理和執(zhí)行數(shù)據(jù)的生成的代碼。如果在步驟C9斷定有暫停程序塊分 析類型的先行停止代碼,則暫停包括該代碼的程序塊的分析(步驟C10),并 且標(biāo)記設(shè)置為先行停止的1 (步驟Cll)。由于程序塊分析被暫停,因此過程 返回至識別程序結(jié)尾的步驟C2和確定先行緩沖器是否滿的步驟C3之間的階段,以免下一個(gè)程序塊被讀取。
如果在步驟C9斷定先行停止代碼如M900不是暫停程序塊分析的類型, 則繼續(xù)包括這種類型的先行停止代碼的程序塊的分析(步驟C12)。獲得的執(zhí) 行數(shù)據(jù)保存在先行緩沖器中(步驟C13)。然后,等待直到緩沖器為空(步驟 C14),并且過程返回至開始。
如果在步驟C4斷定標(biāo)記F為1,即先行處理被停止,則確定先行緩沖器 是否為空(步驟C15)。如果在步驟C15斷定先行緩沖器不空,則等待直到緩 沖器為空。如果斷定先行緩沖器為空,則重新開始并繼續(xù)在步驟C10暫停分 析的程序塊的分析處理以生成執(zhí)行數(shù)據(jù)(步驟C16)。生成的執(zhí)行數(shù)據(jù)保存在 先行緩沖器中(步驟C17)。由于重新開始并繼續(xù)暫停的程序塊分析處理,因 此標(biāo)記F重新設(shè)置為0以取消先行處理停止?fàn)顟B(tài),以便能夠執(zhí)行下一個(gè)程序塊 的分析(步驟C18)。然后,過程返回至開始來讀取下一個(gè)程序塊。
圖5是表示從先行緩沖器中讀取執(zhí)行數(shù)據(jù)并執(zhí)行該執(zhí)行數(shù)據(jù)的處理的算 法的流程圖。確定先行緩沖器是否為空。如果先行緩沖器不空,則從先行緩沖 器中取出并執(zhí)行該執(zhí)行數(shù)據(jù)。每次一塊接一塊的或每次多塊的出取在先行緩沖 器中存儲(chǔ)的執(zhí)行數(shù)據(jù)并執(zhí)行。
圖6表示G卯O被用作停止先行處理的代碼的情況的機(jī)械加工程序示例。 例如,"G90 G00 X0.Y0.;,,是機(jī)械加工程序的開始程序塊,"G41 D10 G01 X100 Y100 F500.;"是下一個(gè)程序塊。D10是工具直徑校正值。"M30;,,是機(jī) 械加工程序的最后的程序塊。圖6中所示的機(jī)械加工程序由21個(gè)程序塊組成。 變量#13010是宏變量,如果內(nèi)容改變,該宏變量可以改變工具直徑校正的第 十偏移值,并且指示#13010加載變量#100和0.5的和。如果在程序塊分析中 辨別出G900,則暫停程序的分析。"(CHANGE VALUE-D10)"(改變值= D10)是用于改變D10的值的幫助文本。
圖7表示辨別程序塊分析的暫停的代碼被用作宏變量操作的代碼的情況 的機(jī)械加工程序示例。當(dāng)由程序塊分析辨別出N14的宏變量操作的代碼時(shí), 暫停程序塊分析。當(dāng)程序塊N13的執(zhí)行完成時(shí),從分析被暫停的程序塊N14 重新開始分析,并且也重新開始先行處理。
權(quán)利要求
1. 一種數(shù)值控制器,通過預(yù)先地執(zhí)行連續(xù)地讀取并分析才幾械加工程序的 程序塊來獲得執(zhí)行數(shù)據(jù)和在緩沖器中存儲(chǔ)該執(zhí)行數(shù)據(jù)的先行處理,并且執(zhí)行所存儲(chǔ)的執(zhí)行數(shù)據(jù)來進(jìn)行數(shù)值控制,所述數(shù)值控制器包括代碼確定裝置,用于確定讀取的程序塊是否包括暫停所述讀取的程序塊的 分析從而停止該先行處理的暫停代碼;暫停裝置,用于暫停由所述代碼確定裝置確定為包括該暫停代碼的所述讀 取的程序塊的分析;執(zhí)行完成確定裝置,用于確定在被暫停的程序塊的前面的程序塊的存儲(chǔ)的 執(zhí)行數(shù)據(jù)的執(zhí)行是否完成;和重新開始裝置,當(dāng)由所述執(zhí)行完成確定裝置確定在被暫停的程序塊的前面 的程序塊的存儲(chǔ)的執(zhí)行數(shù)據(jù)的執(zhí)行完成時(shí),重新開始被暫停的程序塊的分析。
2. 根據(jù)權(quán)利要求1所述的數(shù)值控制器,進(jìn)一步包括使用參數(shù)來注冊停止 先行處理的該暫停代碼的裝置。
3. —種數(shù)值控制器,通過預(yù)先地執(zhí)行連續(xù)地讀取并分析機(jī)械加工程序的 程序塊來獲得執(zhí)行數(shù)據(jù)和在緩沖器中存儲(chǔ)該執(zhí)行數(shù)據(jù)的先行處理,并且執(zhí)行所 存儲(chǔ)的執(zhí)行數(shù)據(jù)來進(jìn)行數(shù)值控制,所述數(shù)值控制器包括代碼確定裝置,用于確定讀取的程序塊是否包括所述讀取的程序塊的分析 被暫停從而停止該先行處理的宏變量操作的代碼;暫停裝置,用于暫停讀取的程序塊的分析,所述讀取的程序塊由所述代碼 確定裝置確定為包括所述讀取的程序塊的分析被暫停的宏變量操作的代碼;執(zhí)行完成確定裝置,用于確定在被暫停的程序塊的前面的程序塊的存儲(chǔ)的 執(zhí)行數(shù)據(jù)的執(zhí)行是否完成;和重新開始裝置,當(dāng)由所述執(zhí)行完成確定裝置確定在^^皮暫停的程序塊的前面 的程序塊的存儲(chǔ)的執(zhí)行數(shù)據(jù)的執(zhí)行完成時(shí),重新開始被暫停的程序塊的分析。
4. 根據(jù)權(quán)利要求3所述的數(shù)值控制器,進(jìn)一步包括使用參數(shù)來指定宏變 量的范圍的裝置,該宏變量的范圍用于確定該讀取的程序塊的分析被暫停的宏 變量操作的代碼。
5. 根據(jù)權(quán)利要求3所述的數(shù)值控制器,進(jìn)一步包括使用參數(shù)來指定該讀取的程序塊的分析被暫停的宏變量操作的階段的裝置。
6. —種數(shù)值控制器,通過預(yù)先地執(zhí)行連續(xù)地讀取和分析機(jī)械加工程序的 程序塊以獲得執(zhí)行數(shù)據(jù)和在援沖器中存儲(chǔ)該執(zhí)行數(shù)據(jù)的先行處理,并且執(zhí)行所 存儲(chǔ)的執(zhí)行數(shù)據(jù)來進(jìn)行數(shù)值控制,所迷數(shù)值控制器包括代碼確定裝置,用于確定讀取的程序塊是否包括停止該先行處理的先行停 止代碼;代碼類型確定裝置,用于確定由所述代碼確定裝置確定的該先行停止代碼 是否是暫停所述讀取的程序塊的分析的代碼;執(zhí)行完成確定裝置,用于確定在被暫停的程序塊的前面的程序塊的存儲(chǔ)的 執(zhí)行數(shù)據(jù)的執(zhí)行是否完成;和暫停/繼續(xù)裝置,#4居由所述代碼類型確定裝置確定的和由所述執(zhí)行完成 確定裝置確定的結(jié)果,暫停包含要暫停所述讀耳又的程序塊的分析的代碼的所述 讀取的程序塊的分析并重新開始被暫停的程序塊的分析以獲得該執(zhí)行數(shù)據(jù),或 可選擇地繼續(xù)所述讀取的程序塊的分析以獲得該執(zhí)行數(shù)據(jù)。
7. 根據(jù)權(quán)利要求6所述的數(shù)值控制器,進(jìn)一步包括使用一個(gè)或多個(gè)參數(shù) 來注冊一個(gè)或多個(gè)先行停止代碼的裝置。
全文摘要
本發(fā)明提供一種數(shù)值控制器。該數(shù)值控制器通過暫停機(jī)械加工程序的讀取的程序塊的分析并在所讀取的程序塊的前面的程序塊的執(zhí)行完成時(shí)重新開始在暫停階段的所讀取的程序塊的分析來執(zhí)行先行控制。該數(shù)值控制器預(yù)先連續(xù)地讀取并分析機(jī)械加工程序的程序塊,將分析的程序塊存儲(chǔ)在緩沖器中,然后執(zhí)行所存儲(chǔ)的程序塊。該數(shù)值控制器包括確定所讀取的程序塊是否包括暫停程序塊的分析的先行停止代碼的裝置;當(dāng)先行停止代碼被確定時(shí)暫停程序塊的分析的裝置;確定在被暫停的程序塊的前面的程序塊的執(zhí)行是否完成的裝置;和當(dāng)在被暫停的程序塊的前面的程序塊的執(zhí)行完成時(shí)重新開始被暫停的程序塊的分析的裝置。
文檔編號G05B19/4155GK101311857SQ20081010906
公開日2008年11月26日 申請日期2008年5月23日 優(yōu)先權(quán)日2007年5月24日
發(fā)明者細(xì)川匡彥, 芳賀斌 申請人:發(fā)那科株式會(huì)社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1