專利名稱:數(shù)值控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)值控制器,用于控制各種工業(yè)機器,諸如機床、放電機和注模機,尤其涉及一種具有根據(jù)程序執(zhí)行的輔助功能的數(shù)值控制器。
背景技術(shù):
用于控制各種工業(yè)機器(諸如機床、放電機和注模機)的數(shù)值控制器具有用于確定機器和控制系統(tǒng)的模式的準備功能(G功能),用于控制機器或控制系統(tǒng)的組件的操作的輔助功能(M功能),用于指定關(guān)于指定的工具的工具和詳項的工具功能(T功能),用于指定工具的進給速度的進給功能(F功能),和用于指定主軸的旋轉(zhuǎn)速度的主軸功能(S功能)等。在這些功能中,輔助功能可以包括終端用戶在機器操作中沒有使用的特定功能。機床制造者準備的用于機器維護的輔助功能就是終端用戶在機器操作中沒有使用的特定輔助功能的示例。
為機床制造者提供了用于執(zhí)行專屬于特定種類和配置的機器的控制的特定輔助功能。特別地,上述用于機器維護的輔助功能受機器內(nèi)在配置的影響并需要以正確正確的機器操作的預定順序執(zhí)行。因此,機床制造者在考慮了預定次序的情況下準備宏程序。機床制造者準備的宏程序包括例如注冊在存儲器中的子程序的一組指令,使得數(shù)值控制器執(zhí)行期望的功能,并且在由宏程序調(diào)用指令調(diào)用時執(zhí)行。因此,宏程序由在機床制造者在考慮了預定次序的情況下準備,并且在宏程序的執(zhí)行中指令執(zhí)行特定輔助功能(用于機器維護的功能)。
然而,在機器的終端用戶準備的用戶程序中可能在沒有考慮正確的操作次序的情況下指令指令特定輔助功能正確。因此,當沒有以正確的操作次序指令指令執(zhí)行特定輔助功能時存在機器故障的問題。
一種已知的方法通過提供外部開關(guān)并準備使得指令的輔助功能在外部開關(guān)為ON狀態(tài)時有效,而在外部開關(guān)為OFF狀態(tài)時無效的宏程序或梯形圖程序而不執(zhí)行由程序指令的輔助功能。例如,根據(jù)JP3396302B中描述的發(fā)明,提供了輔助功能鎖開關(guān),當在NC程序的檢查中打開輔助功能鎖開關(guān)時,忽略由NC程序執(zhí)行輔助功能的指令。
此外,JP8-63218A中提供了檢查調(diào)用指令的方法。根據(jù)該方法,搜索程序中的調(diào)用代碼。如果在程序中發(fā)現(xiàn)調(diào)用代碼,就在存儲器中搜索調(diào)用代碼調(diào)用的程序。如果存儲器中不存在調(diào)用的程序,將錯誤代碼用于調(diào)用的程序,或者在代碼使用中發(fā)現(xiàn)錯誤,顯示具有相應的警報內(nèi)容的警報和其中發(fā)生警報的程序。
進一步地,已知一種發(fā)明,其中為主程序和子程序分別設置不允許讀/寫的數(shù)據(jù)區(qū)域,并且禁止不允許讀/寫的數(shù)據(jù)區(qū)域中的讀/寫指令(JP11-305807A)。
如果由于終端用戶沒有使用這種輔助功能而禁止要求在考慮預定的次序而指令的特定輔助功能,提供這種輔助功能就是無用的,然而如果不考慮預定次序就執(zhí)行這種輔助功能則會發(fā)生問題,可能發(fā)生機器的誤操作。提供外部開關(guān)以及根據(jù)外部開關(guān)的ON/OFF狀態(tài)使得輔助功能有效/無效的宏程序或梯形圖程序需要相當?shù)某杀竞蛣趧觼碓O置外部開關(guān)和準備程序。
發(fā)明內(nèi)容
本發(fā)明提供一種數(shù)值控制器,能夠自動確定是否要執(zhí)行指令的特定輔助功能。
本發(fā)明的數(shù)值控制器具有根據(jù)程序執(zhí)行的輔助功能。該數(shù)值控制器包括存儲裝置,存儲特定輔助功能的注冊;辨別裝置,用于在程序中指令注冊的特定輔助功能中的一個時辨別所執(zhí)行的程序的類型;和執(zhí)行裝置,用于根據(jù)所述辨別裝置辨別的程序的類型選擇性地執(zhí)行/不執(zhí)行所指令的特定輔助功能。
由所述辨別裝置辨別的程序的類型可以是宏程序或宏程序調(diào)用的程序,所述執(zhí)行裝置可以只在所執(zhí)行的程序被辨別為宏程序或宏程序中調(diào)用的程序時執(zhí)行所指令的特定輔助功能。
所述辨別裝置可以在每次從程序中讀取宏程序調(diào)用指令時增加計數(shù)器值,在每次從程序中讀取宏程序返回指令時減少計數(shù)器值。在這種情況下,在程序中指令注冊的特定輔助功能中的一個時,所述辨別裝置基于計數(shù)器值辨別所執(zhí)行的程序的類型。
當在宏程序中指令特定輔助功能時,認為以正確的機器操作次序指令特定輔助功能,因此機器執(zhí)行特定輔助功能不會發(fā)生故障。然而,當不在宏程序的執(zhí)行中指令特定輔助功能時,就不執(zhí)行指令的輔助功能。在程序的執(zhí)行中自動確定執(zhí)行/不執(zhí)行指令的輔助功能,從而以低成本可靠地防止了機器故障的可能性。
圖1是描述根據(jù)本發(fā)明實施例的數(shù)值控制器的框圖;和圖2是描述控制執(zhí)行/不執(zhí)行特定輔助功能的處理的算法的流程圖。
具體實施例方式
參考圖1詳細描述根據(jù)本發(fā)明實施例的數(shù)值控制器10。CPU11是總體控制數(shù)值控制器10的處理器。CPU11通過總線19讀取存儲在ROM12中的系統(tǒng)程序,并根據(jù)該系統(tǒng)程序控制整個數(shù)值控制器。RAM13臨時存儲計算數(shù)據(jù)和顯示數(shù)據(jù)以及操作者通過顯示/MDI(手動數(shù)據(jù)輸入)單元20輸入的各種數(shù)據(jù)。CMOS存儲器14包括由電池(圖未示)支持的非易失性存儲器,因此即使在數(shù)值控制器10的電源關(guān)閉時也能保持其中存儲的內(nèi)容。CMOS存儲器14存儲通過接口15讀取的加工程序以及通過顯示/MDI單元20輸入的加工程序。
接口15使得外部設備能夠連接到數(shù)值控制器10。PC(可編程控制器)16根據(jù)數(shù)值控制器10的內(nèi)置序列程序通過I/O單元17向機床的輔助設備輸出信號,從而控制輔助設備。還將來自機床的主體上的操作面板的各種開關(guān)等的信號提供給PC,PC對信號執(zhí)行必要的處理并將經(jīng)過處理的信號發(fā)送到CPU11。
顯示/MDI單元20是具有諸如CRT或液晶顯示器的顯示器以及鍵盤等的手動數(shù)據(jù)輸入設備。接口18將通過顯示/MDI單元20的鍵盤輸入的指令和數(shù)據(jù)發(fā)送到CPU11。
軸控制電路30-32從CPU11接收各個軸的移動指令并將指令輸出至各個伺服放大器40-42。當接收到指令,伺服放大器40-42就驅(qū)動和各個軸相關(guān)聯(lián)的伺服電動機50-52。每個伺服電動機50-52具有內(nèi)置的位置和速度檢測器,將來自位置和速度檢測器的位置和速度反饋信號反饋到軸控制電路30-32以執(zhí)行位置/速度反饋控制。在圖1中省略了與位置/速度反饋控制相關(guān)的元件。
向主軸控制電路60提供主軸旋轉(zhuǎn)指令,主軸控制電路60向主軸放大器61輸出主軸速度信號。當接收到主軸速度信號,主軸放大器61使得主軸電動機62以指令的速度旋轉(zhuǎn)主軸。位置編碼器63與主軸的旋轉(zhuǎn)同步的將反饋脈沖反饋給主軸控制電路60,以執(zhí)行速度控制。
上述硬件結(jié)構(gòu)和現(xiàn)有數(shù)值控制器的基本相同,本發(fā)明的數(shù)值控制器具有和硬件結(jié)構(gòu)結(jié)合的軟件方法,用于在程序的執(zhí)行中確定是否執(zhí)行指令的特定輔助功能。
根據(jù)該實施例,在多個輔助功能中預先設置特定輔助功能(只有在機床制造者準備的宏程序中指令這些特定輔助功能時才會執(zhí)行),特定輔助功能的注冊存儲在CMOS存儲器14中。當數(shù)值控制器執(zhí)行加工程序時執(zhí)行圖2所示的算法。
首先,CPU11讀取和分析加工程序的一個塊(步驟S1),確定讀取塊中的指令是否是程序的結(jié)束指令(步驟S2),當確定指令不是結(jié)束指令時確定指令是否是調(diào)用宏程序的調(diào)用指令(步驟S3)。如果不是,確定讀取的指令是否是宏程序的返回指令(步驟S4)。如果讀取的指令不是返回指令,確定指令是否是執(zhí)行預先注冊的特定輔助功能中的一個的指令(步驟S5)。當確定讀取的指令不是這種指令時,執(zhí)行指令(步驟S6),然后處理返回到步驟S1讀取和分析下一個塊。
當在步驟S3確定讀取的指令是宏程序的調(diào)用指令時,將對宏程序調(diào)用次數(shù)計數(shù)的調(diào)用計數(shù)器增加“1”(步驟S7)然后執(zhí)行宏程序的調(diào)用指令(步驟S8)。然后處理返回到步驟S1。由初始設置將調(diào)用計數(shù)器的值設為“0”。
另一方面,當讀取的指令是宏程序的返回指令時,處理從步驟S4前進到S9,將調(diào)用計數(shù)器減“1”,以及從宏程序返回至主程序的處理(步驟S10),然后處理返回步驟S1。
接下來,每次讀取到宏程序的調(diào)用指令時,將調(diào)用計數(shù)器加“1”,每次讀取到宏程序的返回指令時,將調(diào)用計算器減“1”。因此,當從調(diào)用的宏程序中調(diào)用另一宏程序時,繼續(xù)將調(diào)用計數(shù)器的值加“1”,每次讀取宏程序的返回指令時,將調(diào)用計數(shù)器減“1”,從而只有當調(diào)用計數(shù)器不具有正值而只是“0”時,沒有執(zhí)行宏程序。
當在步驟S5確定讀取的指令是執(zhí)行特定輔助功能中的一個的指令時,確定調(diào)用計數(shù)器的值是否為正(步驟S11)。如果調(diào)用計數(shù)器具有正值,判斷在宏程序的執(zhí)行中讀取了執(zhí)行特定輔助功能中的一個的指令,從而以正確的操作次序調(diào)用了特定輔助功能,因此允許執(zhí)行調(diào)用的輔助功能(步驟S13)。
另一方面,當調(diào)用計數(shù)器值不是正值而是“0”時,判斷輔助功能是從用戶程序讀取的而不是從宏程序讀取的,從而可能沒有不考慮正確的操作次序而指令輔助功能,因此禁止執(zhí)行指令的輔助功能(步驟S10)。在這種情況下,可以發(fā)布警報,從而在顯示/MDI單元20的顯示屏幕上指示指令的輔助功能沒有執(zhí)行。
然后,處理返回步驟S1并執(zhí)行S1及后續(xù)步驟的處理,當讀取程序的結(jié)束指令時,程序的處理終止。
如上所述,當在宏程序的執(zhí)行中指令注冊的特定輔助功能中的一個時,執(zhí)行指令的特定輔助功能,但是當不在宏程序的執(zhí)行中指令注冊的特定輔助功能中的一個時,不執(zhí)行指令的特定輔助功能。在機床制造者準備的宏程序中,以正確的機器操作次序指令特定輔助功能,因此當在宏程序中指令特定輔助功能時確保機器不會由于執(zhí)行指令的特定輔助功能而發(fā)生故障。另一方面,如果不是在宏程序的執(zhí)行中指令特定輔助功能,可能不是以正確的機器操作次序指令特定的輔助功能而會導致機器的故障,因此禁止執(zhí)行指令的輔助功能從而防止機器的故障。
權(quán)利要求
1.一種具有根據(jù)程序執(zhí)行的輔助功能的數(shù)值控制器,包括存儲裝置,存儲特定輔助功能的注冊;辨別裝置,用于在程序中指令注冊的特定輔助功能中的一個時辨別所執(zhí)行的程序的類型;和執(zhí)行裝置,用于根據(jù)所述辨別裝置辨別的程序的類型選擇性地執(zhí)行/不執(zhí)行所指令的特定輔助功能。
2.根據(jù)權(quán)利要求1所述的數(shù)值控制器,其中由所述辨別裝置辨別的程序的類型是宏程序或宏程序調(diào)用的程序,所述執(zhí)行裝置只在所執(zhí)行的程序被辨別為宏程序或宏程序中調(diào)用的程序時執(zhí)行所指令的特定輔助功能。
3.根據(jù)權(quán)利要求2所述的數(shù)值控制器,其中所述辨別裝置在每次從程序中讀取宏程序調(diào)用指令時增加計數(shù)器值,在每次從程序中讀取宏程序返回指令時減少計數(shù)器值,并且在程序中指令注冊的特定輔助功能中的一個時,基于計數(shù)器值辨別所執(zhí)行的程序的類型。
全文摘要
一種能夠自動確定執(zhí)行/不執(zhí)行特定輔助功能的數(shù)值控制器。預先注冊只有當由宏程序調(diào)用時才執(zhí)行的特定輔助功能。每次從程序中讀取宏程序調(diào)用指令時,將具有初始值“0”的調(diào)用計數(shù)器加“1”,每次從程序中讀取宏程序返回指令時,將調(diào)用計算器減“1”。當從程序中指令注冊的特定輔助功能中的一個時,如果調(diào)用計數(shù)器的值具有正值就執(zhí)行該特定輔助功能,如果調(diào)用計數(shù)器的值為“0”就禁止執(zhí)行該特定輔助功能。在考慮了正確的操作次序的情況下在宏程序中指令特定輔助功能,因此能夠正確地執(zhí)行該特定輔助功能。不考慮正確的次序的特定輔助功能的指令可能會在執(zhí)行時導致機器的故障,因此被禁止。
文檔編號G05B19/4155GK101025622SQ20071007870
公開日2007年8月29日 申請日期2007年2月25日 優(yōu)先權(quán)日2006年2月22日
發(fā)明者細川匡彥, 井出聰一郎, 宮崎健至 申請人:發(fā)那科株式會社