專利名稱:數(shù)字控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于控制機(jī)床的數(shù)字控制器,特別涉及執(zhí)行在重復(fù)相同操作模式進(jìn)行加工時采用的學(xué)習(xí)控制功能的數(shù)字控制器。
背景技術(shù):
在諸如由數(shù)字控制器控制的機(jī)床的工作機(jī)器中,響應(yīng)重復(fù)發(fā)出的相同操作模式的命令執(zhí)行加工等時,如已知的方法那樣執(zhí)行學(xué)習(xí)控制以提高加工精度,其中控制偏差收斂接近于零。在這個方法中,重復(fù)地命令相同操作模式,并且存儲器中預(yù)先存儲基于倒數(shù)第二個操作模式周期中的每個控制周期的位置偏差獲得的校正數(shù)據(jù)。通過將存儲在存儲器中相應(yīng)于倒數(shù)第二個操作模式周期的控制周期的校正數(shù)據(jù)加到最后的操作模式周期的每個控制周期的位置偏差使得位置偏差收斂為零(例如,JP7-104823A和JP6-309021A)。
在另一個開發(fā)的方法(JP2004-227163A)中,在加工程序中預(yù)先提供學(xué)習(xí)控制開始命令和學(xué)習(xí)控制結(jié)束命令,從而學(xué)習(xí)控制可以應(yīng)用于連續(xù)加工多個相同部件的情況或相同加工形狀的工件間歇地加工多次的情況。在從發(fā)出學(xué)習(xí)控制開始命令到發(fā)出學(xué)習(xí)控制結(jié)束命令的時間間隔期間應(yīng)用學(xué)習(xí)控制?;谠谠摃r間間隔期間獲得的位置偏差產(chǎn)生校正數(shù)據(jù)和校正該位置偏差。
該常規(guī)的學(xué)習(xí)控制重復(fù)執(zhí)行以獲得校正數(shù)據(jù),從而位置偏差收斂為零。在獲得這樣的校正數(shù)據(jù)后,基于該校正數(shù)據(jù)校正位置偏差以保證加工。對于一些加工,取決于加工的形狀,通過重復(fù)執(zhí)行空操作(編程的機(jī)器操作但是不實(shí)際加工)多次以生成校正數(shù)據(jù)可以獲得目標(biāo)的加工精度。因?yàn)樯尚U龜?shù)據(jù)而不管實(shí)際加工時執(zhí)行實(shí)際加工,在獲得校正數(shù)據(jù)之前的加工中位置偏差不會收斂接近于零。從而,存在以差的精度加工工件,導(dǎo)致浪費(fèi)加工的問題。
此外,包括收斂接近于零的位置偏差的校正數(shù)據(jù)在存儲之后,用于相同操作模式的加工。常規(guī)地,這樣的校正數(shù)據(jù)在通過學(xué)習(xí)控制獲得之后,通過手動操作進(jìn)行存儲。在許多情況下,這種手動的存儲操作容易遺忘并需要重復(fù)該學(xué)習(xí)控制。
還存在另一問題。在通過學(xué)習(xí)控制確認(rèn)包括位置偏差收斂接近于零的校正數(shù)據(jù)獲得之后,需要基于用于加工的校正數(shù)據(jù)校正位置偏差,并且通過再運(yùn)行程序來加工工件。因此,加工循環(huán)時間相應(yīng)地變長。
發(fā)明內(nèi)容
本發(fā)明提供一種具有學(xué)習(xí)控制功能的數(shù)字控制器,能夠克服現(xiàn)有技術(shù)的上述問題。
本發(fā)明的數(shù)字控制器根據(jù)加工程序控制用于驅(qū)動機(jī)器的伺服馬達(dá),并且具有學(xué)習(xí)控制的功能,在重復(fù)執(zhí)行相同操作模式期間基于位置偏差獲得校正數(shù)據(jù),并基于獲得的校正數(shù)據(jù)校正在執(zhí)行相同操作模式最的位置偏差。該數(shù)字控制器包括相對于工件將刀具從由該加工程序命令的位置移動至該刀具和工件相互不干擾的位移位置的裝置;通過在該位移位置自動地重復(fù)設(shè)置次數(shù)的相同操作模式,或自動地重復(fù)相同操作模式直至該位置偏差減小至設(shè)置值或以下來獲得該校正數(shù)據(jù)的裝置;自動地存儲該獲得的校正數(shù)據(jù)的裝置;和根據(jù)該獲得的校正數(shù)據(jù)校正執(zhí)行相同操作模式中的該位置偏差,相對于該工件將該刀具從該位移位置移動至該命令的位置,并控制該伺服馬達(dá)執(zhí)行加工的裝置。因而,不會浪費(fèi)地消耗工件,獲得的校正數(shù)據(jù)安全地存儲和保存,并縮短了加工周期。
在該加工程序的一次執(zhí)行中,可以獲得并存儲該校正數(shù)據(jù),和基于該校正數(shù)據(jù)校正在執(zhí)行相同操作模式時的該位置偏差可以執(zhí)行加工在執(zhí)行相同操作模式的學(xué)習(xí)控制間隔中,通過自動的空操作而不執(zhí)行加工,重復(fù)地執(zhí)行該相同操作模式多次或者使得位置偏差減小至指定值或更小。此外,執(zhí)行學(xué)習(xí)控制以產(chǎn)生和自動地存儲和保存該校正數(shù)據(jù),之后,如執(zhí)行實(shí)際加工那樣基于該校正數(shù)據(jù)校正該位置偏差。這樣,可以安全地存儲和保存產(chǎn)生的校正數(shù)據(jù)而不會損壞工件,并且實(shí)際加工可以自動地開始,從而可以縮短加工循環(huán)時間。
圖1是顯示施加由根據(jù)本發(fā)明的第一實(shí)施例的數(shù)字控制器執(zhí)行的學(xué)習(xí)控制的伺服控制的示意方框圖;圖2是顯示學(xué)習(xí)控制裝置的詳細(xì)方框圖;圖3是顯示由根據(jù)本發(fā)明的第一實(shí)施例的數(shù)字控制器執(zhí)行的學(xué)習(xí)控制管理處理的流程圖。
圖4是顯示由根據(jù)本發(fā)明的第二實(shí)施例的數(shù)字控制器執(zhí)行的學(xué)習(xí)控制管理處理的流程圖。
具體實(shí)施例方式
圖1是顯示施加由根據(jù)本發(fā)明第一實(shí)施例的數(shù)字控制器執(zhí)行的學(xué)習(xí)控制的伺服控制的示意方框圖?;诩庸こ绦颍瑪?shù)字控制器1輸出位置命令給驅(qū)動控制被驅(qū)動元件9的伺服馬達(dá)7的伺服控制部。在該伺服控制部中,響應(yīng)該位置命令對每個給定控制周期反饋控制該位置、速度和電流,從而伺服馬達(dá)7被驅(qū)動以驅(qū)動控制。
更具體地講,從數(shù)字控制器1輸出的位置命令中減去用于檢測被驅(qū)動元件9的運(yùn)動位置的位置檢測器11反饋的當(dāng)前位置,從而獲得位置偏差。在位置控制部3中,通過將該位置偏差乘以位置環(huán)路增益獲得速度命令。此外,通過從該速度命令中減去從速度檢測器10反饋的實(shí)際速度獲得速度偏差,速度檢測器10固定在伺服馬達(dá)7并用于檢測其速度。在速度控制部4中,通過執(zhí)行速度環(huán)路控制,例如PI(比例積分)控制,獲得電流命令(扭矩命令)。此外,通過從電流命令中減去電流放大器6反饋的驅(qū)動電流獲得電流偏差,并且在電流控制部5中執(zhí)行電流環(huán)路控制。伺服馬達(dá)7是由電流放大器6驅(qū)動地控制,而被驅(qū)動元件9由傳送機(jī)構(gòu)8驅(qū)動。
如果從加工程序中讀出學(xué)習(xí)控制開始命令,數(shù)字控制器1開始學(xué)習(xí)控制。校正數(shù)據(jù)被加到位置偏差上,基于位置控制部3中的校正的位置命令執(zhí)行位置環(huán)路控制,并且根據(jù)該位置偏差產(chǎn)生和存儲校正數(shù)據(jù)。執(zhí)行這個學(xué)習(xí)控制處理直至讀出學(xué)習(xí)控制結(jié)束命令。
圖2是學(xué)習(xí)控制裝置2的詳細(xì)方框圖。這個學(xué)習(xí)控制裝置2包括帶限濾波器21,用于存儲該校正數(shù)據(jù)的學(xué)習(xí)存儲裝置22,和用于補(bǔ)償被控目標(biāo)的相位延遲和增益減小的動態(tài)特性補(bǔ)償元件23。此外,學(xué)習(xí)控制裝置2包括用于開始和終止該學(xué)習(xí)控制的開關(guān)24和25。學(xué)習(xí)存儲裝置22裝備與控制周期一樣多的存儲器,在控制周期中為要學(xué)習(xí)的相同操作命令模式執(zhí)行位置/速度環(huán)路控制。給定控制周期的數(shù)量可以響應(yīng)該學(xué)習(xí)控制開始命令進(jìn)行設(shè)置。如果不設(shè)置該給定控制周期數(shù),可以對第一循環(huán)設(shè)置足夠大的值,從而可以在第一循環(huán)的開始命令和結(jié)束命令之間的時間間隔(給定控制周期的計(jì)數(shù))期間安排給定控制周期數(shù)。此外,當(dāng)校正數(shù)據(jù)傳送至或者從數(shù)字控制器1,主控制設(shè)備傳來時,可以同時傳送該給定控制周期。如果相同操作命令模式的間隔和位置/速度環(huán)路控制周期例如分別為L和T,則學(xué)習(xí)存儲裝置22裝備L/T個存儲器。
當(dāng)學(xué)習(xí)控制開始命令從數(shù)字控制器1輸出時,開關(guān)24和25閉合,從而學(xué)習(xí)控制裝置2獲取每個給定周期的位置偏差,在該給定周期執(zhí)行位置/速度環(huán)路控制。存儲在學(xué)習(xí)存儲裝置22中的最舊的校正數(shù)據(jù)加到這個位置偏差,而該結(jié)果數(shù)據(jù)在帶限濾波器21中進(jìn)行處理并存儲在學(xué)習(xí)存儲裝置22中作為校正數(shù)據(jù)。此外,從學(xué)習(xí)存儲裝置22獲取的最舊的校正數(shù)據(jù)由動態(tài)特性補(bǔ)償元件23對被控目標(biāo)的相位延遲和增益減小進(jìn)行補(bǔ)償。該結(jié)果的校正數(shù)據(jù)通過開關(guān)25加到該位置偏差并輸入該位置控制部3。通過加上該校正數(shù)據(jù)校正的位置偏差乘以位置環(huán)路增益,從而獲得速度命令。在完成指示相同命令模式之后,執(zhí)行該處理操作直至從數(shù)字控制器1輸出學(xué)習(xí)控制結(jié)束命令以關(guān)閉開關(guān)24和25。因此,學(xué)習(xí)存儲裝置22以相同命令模式間隔存儲每個位置/速度控制周期的校正數(shù)據(jù)。
在相同的命令模式間隔中,該校正數(shù)據(jù)加到該位置偏差,從而該位置偏差收斂到零。
以這種方式執(zhí)行學(xué)習(xí)控制。如果學(xué)習(xí)存儲裝置22裝備L/T個存儲器,其中L和T分別為相同操作命令模式間隔和位置/速度環(huán)路控制周期,從而在學(xué)習(xí)控制開始之后第一學(xué)習(xí)存儲器加載第一控制周期的校正數(shù)據(jù),第二學(xué)習(xí)存儲器加載第二控制周期的校正數(shù)據(jù),和第n學(xué)習(xí)存儲器加載第n控制周期的校正數(shù)據(jù)。當(dāng)進(jìn)入相同命令模式的下一個學(xué)習(xí)控制間隔時,該校正數(shù)據(jù)加載到對應(yīng)于類似方法相關(guān)的控制周期的學(xué)習(xí)存儲器中,并讀出之前存儲的校正數(shù)據(jù)和用該位置偏差進(jìn)行校正。因此,在該學(xué)習(xí)控制開始之后,在第一學(xué)習(xí)控制周期中存儲在第一學(xué)習(xí)存儲器中的該校正數(shù)據(jù)加到該位置偏差,在第二學(xué)習(xí)控制周期中讀出存儲在第二學(xué)習(xí)存儲器中的該校正數(shù)據(jù)并加到該位置偏差,而在第n學(xué)習(xí)控制周期中存儲在第n學(xué)習(xí)存儲器中的該校正數(shù)據(jù)加到該位置偏差。
根據(jù)學(xué)習(xí)控制和馬達(dá)控制的常規(guī)方法可以執(zhí)行學(xué)習(xí)控制裝置2的學(xué)習(xí)控制和上述的馬達(dá)控制。根據(jù)本發(fā)明,在學(xué)習(xí)控制間隔中重復(fù)地執(zhí)行空操作而不涉及加工,和通過學(xué)習(xí)控制獲得并存儲使得位置偏差收斂接近于零的校正數(shù)據(jù),并且如執(zhí)行實(shí)際加工那樣,該校正數(shù)據(jù)用來校正位置偏差。通過自動地執(zhí)行這個操作可以縮短加工的循環(huán)時間。
數(shù)字控制器1基本上以和常規(guī)的數(shù)字控制器相同的方式構(gòu)造,而其新穎性在于裝備用于管理學(xué)習(xí)控制的軟件,如圖3至4所示的。因?yàn)閿?shù)字控制器1的硬件構(gòu)造和常規(guī)的數(shù)字控制器相同,省略其描述。
圖3是顯示根據(jù)本發(fā)明的第一實(shí)施例的學(xué)習(xí)控制管理處理的流程圖。根據(jù)這個實(shí)施例,由學(xué)習(xí)控制的重復(fù)次數(shù)確定位置偏差收斂接近于零。為獲得該結(jié)果,預(yù)先設(shè)置學(xué)習(xí)控制的重復(fù)次數(shù)。
數(shù)字控制器1的處理器為每個給定周期執(zhí)行圖3所示的處理。讀出由執(zhí)行指針指示的加工程序的一塊并且執(zhí)行指針遞增“1”(步驟a0和a1)。該執(zhí)行指針通過初始化初始設(shè)置為0。然后,確定所讀塊是否包含學(xué)習(xí)控制開始命令(步驟a2),所讀塊是否包含學(xué)習(xí)控制結(jié)束命令(步驟a3),以及學(xué)習(xí)控制標(biāo)記是否沒有設(shè)置為1(步驟a4)。如果既沒有發(fā)出學(xué)習(xí)控制開始命令也沒有發(fā)出學(xué)習(xí)控制結(jié)束命令并且學(xué)習(xí)控制標(biāo)記不為1,則執(zhí)行所讀塊。在這種情況下,如果發(fā)出運(yùn)動命令,則執(zhí)行處理,從而輸出移動命令給馬達(dá)控制單元的位置控制部3(步驟a5)。
其后,執(zhí)行上述的處理。如果斷定在步驟a2讀出的塊包含學(xué)習(xí)控制開始命令,則指示學(xué)習(xí)控制的執(zhí)行的學(xué)習(xí)控制標(biāo)記設(shè)置為1(步驟a6),并確定該學(xué)習(xí)控制開始命令是否是第一次讀出(步驟a7)。這個確定是基于學(xué)習(xí)控制裝置2是否加載校正數(shù)據(jù)而作出的。如果學(xué)習(xí)控制裝置2沒有加載任何校正數(shù)據(jù),則斷定學(xué)習(xí)控制開始命令是第一次讀出,并且校正數(shù)據(jù)完成標(biāo)記設(shè)置為0。從而,提供用于重復(fù)從學(xué)習(xí)控制開始命令至學(xué)習(xí)控制結(jié)束命令的一個操作模式的重復(fù)計(jì)數(shù)器設(shè)置為1(步驟a8)。然后,過程前進(jìn)至步驟a10,在步驟a10中更新停止標(biāo)記設(shè)置為0,并且刀具或工件以預(yù)定方向移動預(yù)定的量至一個位置,從而它們不相互干擾。
接著,確定所讀塊是否是學(xué)習(xí)控制結(jié)束命令。因?yàn)樵谶@種情況下,該塊不是學(xué)習(xí)控制結(jié)束命令,然后確定學(xué)習(xí)控制標(biāo)記是否為1(步驟a4)。因?yàn)樵诓襟Ea6中學(xué)習(xí)控制標(biāo)記設(shè)置為1,過程前進(jìn)至步驟a17,在步驟a17中確定更新停止標(biāo)記是否為1。因?yàn)樵诓襟Ea10中更新停止標(biāo)記設(shè)置為0,輸入接通和輸出接通的命令輸出給學(xué)習(xí)控制裝置2,并且圖2所示的開關(guān)24和25接通以開始學(xué)習(xí)控制(步驟a18)。然后,過程前進(jìn)至步驟a5,在步驟a5中確定該所讀塊是否包含任何其它命令。如果有其它命令,則執(zhí)行它。
從下一周期開始,過程前進(jìn)至步驟a0,a1,a2,a3和a4。因?yàn)閷W(xué)習(xí)控制標(biāo)記和更新停止標(biāo)記分別是1和0,因此以指定的次序執(zhí)行步驟a4,a17,a18和a5,并且也執(zhí)行學(xué)習(xí)控制。因?yàn)樵诓襟E10中刀具和工件位移至它們相互不干擾的位置,執(zhí)行空操作而不涉及加工。
之后,為每個周期執(zhí)行這個處理。如果讀出學(xué)習(xí)控制結(jié)束命令的塊,則過程從步驟a3前進(jìn)至步驟a11,在步驟a11中確定校正數(shù)據(jù)完成標(biāo)記是否為1。因?yàn)樾U龜?shù)據(jù)完成標(biāo)記初始設(shè)置為0,過程前進(jìn)至步驟a12,在步驟a12中確定重復(fù)計(jì)數(shù)器的值是達(dá)到設(shè)置值或更大。如果未達(dá)到設(shè)置次數(shù),執(zhí)行指針返回至指示學(xué)習(xí)控制開始命令的塊的值,并且重復(fù)計(jì)數(shù)器加1(步驟a15)。學(xué)習(xí)控制標(biāo)記設(shè)置為0,并且輸入斷開和輸出斷開的命令輸入至學(xué)習(xí)控制裝置2以停止學(xué)習(xí)控制(步驟a16),從而過程前進(jìn)至步驟a4。因?yàn)樵诓襟Ea4中斷定學(xué)習(xí)控制標(biāo)記為0,執(zhí)行所讀塊的命令(步驟a5),從而終止相關(guān)周期的處理。
在下一周期中,執(zhí)行指針指示包含學(xué)習(xí)控制開始命令的塊,從而讀出該塊。因此,過程從步驟a1和a2前進(jìn)至步驟a6,在該步驟學(xué)習(xí)控制標(biāo)記設(shè)置為1。以上述的方式確定學(xué)習(xí)控制開始命令是否為第一命令(步驟s7)。因?yàn)樵谶@種情況下該開始命令不是第一命令,確定該校正數(shù)據(jù)完成標(biāo)記是否為1(步驟a9)。因?yàn)樾U龜?shù)據(jù)完成標(biāo)記初始設(shè)置為0,過程前進(jìn)至步驟a10,在該步驟中以上述的方式設(shè)置該更新停止標(biāo)記為0,刀具和工件位移至它們相互不干擾的位置,并執(zhí)行步驟a3和a4的處理。因?yàn)閷W(xué)習(xí)控制標(biāo)記和更新停止標(biāo)記分別設(shè)置為1和0,以指定的順序執(zhí)行步驟a17,a18和a5的處理并執(zhí)行學(xué)習(xí)控制。
當(dāng)以這種方式執(zhí)行學(xué)習(xí)控制時并且如果在步驟a3中斷定發(fā)出了學(xué)習(xí)控制結(jié)束命令,則如上所述的,執(zhí)行步驟a11和a12的處理。如果重復(fù)計(jì)數(shù)器的值沒有到達(dá)設(shè)置值,則執(zhí)行步驟a15,a16,a4和a5的處理。
之后,在每次讀出學(xué)習(xí)控制結(jié)束命令時,執(zhí)行指針返回到學(xué)習(xí)控制開始命令的塊,直至重復(fù)計(jì)數(shù)器值達(dá)到設(shè)置值。然后,在從發(fā)出學(xué)習(xí)控制開始命令至發(fā)出學(xué)習(xí)控制結(jié)束命令的間隔(一個操作模式)中重復(fù)執(zhí)行該學(xué)習(xí)控制以產(chǎn)生校正數(shù)據(jù)。
如果在步驟a12斷定重復(fù)計(jì)數(shù)器值到達(dá)設(shè)置值,更新停止標(biāo)記設(shè)置為1,并且讀出在學(xué)習(xí)控制裝置的學(xué)習(xí)存儲裝置22中存儲的校正數(shù)據(jù)并加載至數(shù)據(jù)控制器1的存儲器中,存儲于其中(步驟a13)。此外,校正數(shù)據(jù)完成標(biāo)記設(shè)置為1,并且恢復(fù)至此已位移至不干擾位置的刀具和工件。從而,刀具和工件移動至初始編程的它們相互干擾的位置,并且停止空操作(步驟a14)。然后,執(zhí)行指針回至指示學(xué)習(xí)控制開始命令塊的值,并且重復(fù)計(jì)數(shù)器加1(步驟a15)。學(xué)習(xí)控制標(biāo)記設(shè)置為0,并且輸出輸入斷開和輸出斷開的命令以停止學(xué)習(xí)控制(步驟a16),從而過程前進(jìn)至步驟a4。
在下一個周期中,讀出包含學(xué)習(xí)控制開始命令并且執(zhí)行指針指示的塊,從而過程從步驟a2前進(jìn)至步驟a6,在該步驟學(xué)習(xí)控制標(biāo)記設(shè)置為1。然后,確定學(xué)習(xí)控制開始命令是否第一次讀出(或校正數(shù)據(jù)是否存儲在學(xué)習(xí)存儲裝置中)(步驟a7)。因?yàn)樾U龜?shù)據(jù)存儲在學(xué)習(xí)存儲裝置中,即學(xué)習(xí)控制開始命令不是第一次讀出,然后確定校正數(shù)據(jù)完成標(biāo)記是否設(shè)置為1(步驟a9)。因?yàn)樵诓襟Ea14中校正數(shù)據(jù)完成標(biāo)記設(shè)置設(shè)置為1,過程從步驟a9前進(jìn)至步驟a3。因?yàn)樵诓襟Ea4斷定學(xué)習(xí)控制標(biāo)記設(shè)置為1,過程前進(jìn)至步驟a17,在該步驟中確定更新停止標(biāo)記是否設(shè)置為1。因?yàn)樵诓襟Ea13中更新停止標(biāo)記已設(shè)置為1,發(fā)出用于輸出接通命令,并且輸入保持?jǐn)嚅_(步驟a19),因此過程前進(jìn)至步驟a5。因?yàn)檩斎牒洼敵龇謩e為斷開和接通,圖2的開關(guān)24和25是斷開和接通。因此,僅執(zhí)行由該校正數(shù)據(jù)進(jìn)行位置偏差的校正,而不更新校正數(shù)據(jù)。
之后,對每個周期執(zhí)行步驟a0至a4,步驟a17,a19和a5的處理,直至讀出學(xué)習(xí)控制結(jié)束命令。如果讀出學(xué)習(xí)控制結(jié)束命令,過程從步驟a3前進(jìn)至步驟a11。因?yàn)樾U龜?shù)據(jù)完成標(biāo)記設(shè)置為1,過程從步驟a11前進(jìn)至步驟a16,在該步驟學(xué)習(xí)控制標(biāo)記設(shè)置為0,輸出輸入斷開和輸出斷開命令以停止通過校正數(shù)據(jù)校正位置偏差。因此,在從學(xué)習(xí)控制開始命令至學(xué)習(xí)控制結(jié)束命令的學(xué)習(xí)控制間隔中,輸出是接通的,從而基于存儲在學(xué)習(xí)控制裝置2的學(xué)習(xí)存儲裝置中的校正數(shù)據(jù)校正該位置偏差,并且執(zhí)行位置、速度和電流環(huán)路處理。因?yàn)樵谠搶W(xué)習(xí)控制間隔的任何其它間隔中該學(xué)習(xí)控制標(biāo)記為0,執(zhí)行加工而不校正位置偏差。
如上所述,在從發(fā)出學(xué)習(xí)控制開始命令至發(fā)出學(xué)習(xí)控制結(jié)束命令的間隔中,實(shí)際上不執(zhí)行加工,并且以空操作重復(fù)地執(zhí)行學(xué)習(xí)控制設(shè)置的次數(shù)以生成校正數(shù)據(jù)。當(dāng)獲得校正數(shù)據(jù)時,自動地恢復(fù)學(xué)習(xí)控制開始命令的位置,從而實(shí)際執(zhí)行加工。當(dāng)在從開始命令至結(jié)束命令的學(xué)習(xí)控制間隔中執(zhí)行加工時,基于由學(xué)習(xí)控制獲得的校正數(shù)據(jù)校正該位置偏差。在該學(xué)習(xí)控制間隔外的任何其它間隔中,不校正位置偏差,而執(zhí)行常規(guī)的位置、速度和電流環(huán)路處理。
因此,在指定的學(xué)習(xí)控制間隔中,基于學(xué)習(xí)控制的校正數(shù)據(jù)通過空操作自動地生成。當(dāng)獲得該校正數(shù)據(jù)時,自動地存儲,并且如在學(xué)習(xí)控制間隔中執(zhí)行加工那樣,基于獲得的校正數(shù)據(jù)自動校正位置偏差。因?yàn)橥ㄟ^執(zhí)行一個加工程序自動執(zhí)行上述的處理,循環(huán)時間可以縮短。
假設(shè)在這樣執(zhí)行學(xué)習(xí)控制以生成和存儲校正數(shù)據(jù)至數(shù)字控制器1的存儲器中之后的相同加工中,控制裝置1讀出并存儲該校正數(shù)據(jù)至學(xué)習(xí)控制裝置的學(xué)習(xí)存儲裝置22中,并設(shè)置校正數(shù)據(jù)完成標(biāo)記和更新停止標(biāo)記為1。由于之后運(yùn)行加工程序,如果在步驟a2中讀出學(xué)習(xí)控制開始命令,則數(shù)字控制器1的處理器設(shè)置學(xué)習(xí)控制標(biāo)記為1(步驟a5)。因?yàn)樾U龜?shù)據(jù)存儲在學(xué)習(xí)存儲裝置中,斷定學(xué)習(xí)控制開始命令不是第一命令,從而過程從步驟a7前進(jìn)至步驟a9。因?yàn)閷W(xué)習(xí)控制標(biāo)記設(shè)置為1,過程前進(jìn)至步驟a3。在步驟a4中斷定學(xué)習(xí)控制標(biāo)記為1,并在步驟a17斷定更新停止標(biāo)記為1。因此,僅僅學(xué)習(xí)控制裝置2的輸出接通,并執(zhí)行基于校正數(shù)據(jù)的位置偏差的校正。
其后,執(zhí)行步驟a0至a4,步驟a17,a19和a5的處理,直至讀出學(xué)習(xí)控制結(jié)束命令。如果讀出學(xué)習(xí)控制結(jié)束命令,執(zhí)行步驟a3,a11,a16,a4和a5的處理。從而,當(dāng)執(zhí)行加工時,停止基于由學(xué)習(xí)控制獲得的校正數(shù)據(jù)的位置偏差的校正。
根據(jù)上述的第一實(shí)施例,使用學(xué)習(xí)控制間隔的重復(fù)次數(shù)作為決定獲得校正數(shù)據(jù)的標(biāo)準(zhǔn),從而位置偏差通過學(xué)習(xí)控制收斂接近于零。根據(jù)下述的第二實(shí)施例,位置偏差的幅度用來確定是否獲得校正數(shù)據(jù),從而位置偏差收斂接近于零。
圖4為顯示根據(jù)第二實(shí)施例的學(xué)習(xí)控制管理處理的流程圖。
從圖3和圖4之間的比較可以看出,圖4的步驟b0至b19分別相應(yīng)于步驟a0至a19。第二實(shí)施例與第一實(shí)施例的不同在于步驟b6,b8,b15和b12的細(xì)節(jié)。步驟b6另外包括設(shè)置錯誤范圍標(biāo)記為0的處理。步驟b8不包括設(shè)置重復(fù)計(jì)數(shù)器為1的處理。步驟b15不包括重復(fù)計(jì)數(shù)器值加1的處理。在步驟b12中,不是基于重復(fù)計(jì)數(shù)器值而是基于錯誤范圍標(biāo)記是否為1來確定是否完成校正數(shù)據(jù)的生成。此外,第二實(shí)施例與第一實(shí)施例的不同在于該程序另外包括步驟b20和b21。在步驟b20中,在學(xué)習(xí)控制期間,根據(jù)位置偏差是否在上限和下限之間的設(shè)置范圍內(nèi),確定是否獲得使位置偏差收斂接近于零的校正數(shù)據(jù)。在步驟b21中,如果位置偏差在該設(shè)置范圍之外,則錯誤范圍標(biāo)記設(shè)置為1。
數(shù)字控制器1的處理器讀出并執(zhí)行加工程序。如果所讀塊包含學(xué)習(xí)控制開始命令,過程從步驟b2前進(jìn)至步驟b6,從而執(zhí)行步驟b6至b10的處理。因?yàn)檫@些處理與結(jié)合第一實(shí)施例描述的步驟a6至步驟a10的處理相同,因此省略其描述。然而,不同點(diǎn)在于在步驟b6中設(shè)置錯誤范圍標(biāo)記為0,并且在步驟b8中校正數(shù)據(jù)完成標(biāo)記僅設(shè)置為0而不設(shè)置重復(fù)計(jì)數(shù)器為1。
如果讀出學(xué)習(xí)控制開始命令,在步驟b6中學(xué)習(xí)控制標(biāo)記設(shè)置為1。因此,在執(zhí)行步驟b0至b4的處理之后,過程前進(jìn)至步驟b17,直至讀出學(xué)習(xí)控制結(jié)束命令。因?yàn)楦峦V箻?biāo)記初始為0,過程前進(jìn)至步驟b18,在該步驟中隨著輸入和輸出接通執(zhí)行由學(xué)習(xí)控制裝置2的學(xué)習(xí)控制。然后,讀出位置偏差,并確定該位置偏差是否在上限至下限的設(shè)置范圍內(nèi)(步驟b20)。如果位置偏差不收斂到該設(shè)置范圍,錯誤范圍標(biāo)記設(shè)置為1(步驟b21),從而過程前進(jìn)至步驟b5。如果位置偏差在設(shè)置范圍內(nèi),過程前進(jìn)至步驟b5,而不設(shè)置錯誤范圍標(biāo)記為1。
如果讀出學(xué)習(xí)控制結(jié)束命令,過程從步驟b3前進(jìn)至步驟b11和b12。在步驟b12中,確定錯誤范圍標(biāo)記是否為1。如果斷定這個標(biāo)記為1,執(zhí)行指針返回至學(xué)習(xí)控制開始命令的塊位置(步驟b15),從而執(zhí)行步驟b16以及隨后步驟的處理。結(jié)果,在下一個周期中讀出學(xué)習(xí)控制開始命令的塊,從而執(zhí)行步驟b6至b10的處理。執(zhí)行步驟b4,b17,b18和b20的處理,直至讀出學(xué)習(xí)控制結(jié)束命令。如果位置偏差不收斂在設(shè)置范圍內(nèi),則錯誤范圍標(biāo)記設(shè)置為1(步驟b21)。
結(jié)果,除非位置偏差收斂在設(shè)置范圍內(nèi)并且只要錯誤范圍標(biāo)記為1,重復(fù)地執(zhí)行空操作來執(zhí)行該程序而刀具和工件之間不干擾,并且在從學(xué)習(xí)開始位置至學(xué)習(xí)結(jié)束位置的學(xué)習(xí)間隔中執(zhí)行學(xué)習(xí)控制以生成校正數(shù)據(jù)。如果位置偏差收斂在上限和下限之間的設(shè)置范圍內(nèi),而在從學(xué)習(xí)控制開始命令至學(xué)習(xí)控制結(jié)束命令的學(xué)習(xí)間隔中不偏離該范圍,錯誤范圍標(biāo)記不能設(shè)置為1,從而讀出學(xué)習(xí)控制結(jié)束命令。于是,過程從步驟b3前進(jìn)至步驟b11和b12。因?yàn)樵诓襟Eb12中斷定錯誤范圍標(biāo)記為0,更新停止標(biāo)記設(shè)置為1,存儲在學(xué)習(xí)控制裝置的學(xué)習(xí)存儲裝置中的校正數(shù)據(jù)加載至數(shù)字控制器1的存儲器中(步驟b13),并且校正數(shù)據(jù)完成標(biāo)記設(shè)置為1。移動刀具和工件從而它們相互干擾,停止空操作以允許實(shí)際加工(步驟b14),并且執(zhí)行指針返回至學(xué)習(xí)控制開始命令塊的位置(步驟b15)。
因此,在下一個周期中讀出學(xué)習(xí)控制開始命令的塊。因?yàn)樾U龜?shù)據(jù)完成標(biāo)記和更新停止標(biāo)記都設(shè)置為1,過程以指定的順序前進(jìn)至步驟b0,b1,b2,b6,b7,b9,b3,b4,b17和b18。在步驟b19中,該輸出接通命令輸出至學(xué)習(xí)控制裝置2。因?yàn)檩斎氡3謹(jǐn)嚅_,在它執(zhí)行位置、速度和電流環(huán)路處理時,學(xué)習(xí)控制裝置2通過將校正數(shù)據(jù)加到位置偏差上執(zhí)行校正,從而實(shí)際加工該工件。
同樣在第二實(shí)施例中,在學(xué)習(xí)控制間隔中通過空操作反復(fù)執(zhí)行學(xué)習(xí)控制時更新校正數(shù)據(jù),直至在學(xué)習(xí)控制間隔中位置偏差收斂在上限和下限之間的設(shè)置范圍內(nèi)。如果位置偏差收斂在該設(shè)置范圍內(nèi),則校正數(shù)據(jù)存儲在數(shù)字控制器1中,并且因?yàn)閳?zhí)行實(shí)際加工,通過使用這個校正數(shù)據(jù)自動地校正位置偏差。
同樣在該第二實(shí)施例中,如果產(chǎn)生并且存儲在數(shù)字控制器1中的校正數(shù)據(jù)用于重新開始相同加工,數(shù)字控制器1讀出并存儲該校正數(shù)據(jù)到學(xué)習(xí)控制裝置2的學(xué)習(xí)存儲裝置22中并且設(shè)置校正數(shù)據(jù)完成標(biāo)記和更新停止標(biāo)記為1。由于之后運(yùn)行加工程序,如果在步驟b2中讀出學(xué)習(xí)控制開始命令,則數(shù)字控制器1的處理器將學(xué)習(xí)控制標(biāo)記和錯誤范圍標(biāo)記分別設(shè)置為1和0(步驟b6)。因?yàn)樾U龜?shù)據(jù)存儲在學(xué)習(xí)存儲裝置中,斷定該學(xué)習(xí)控制開始命令不是第一命令,于是過程從步驟b7前進(jìn)至步驟b9。而且,因?yàn)樵撔U龜?shù)據(jù)設(shè)置為1,過程前進(jìn)至步驟b3。在步驟b4中斷定學(xué)習(xí)控制標(biāo)記為1,而在步驟b17中斷定更新停止標(biāo)記為1。因此,僅接通學(xué)習(xí)控制裝置2的輸出(步驟b19),并且執(zhí)行基于校正數(shù)據(jù)的位置偏差的校正。
在上述的第二實(shí)施例中,在步驟b20確定位置偏差是否在上限和下限之間的設(shè)置范圍內(nèi)。然而,可選擇的,可以確定該位置偏差是否小于設(shè)置的指定值。在這種情況下,如果超過該指定值,則設(shè)置錯誤范圍標(biāo)記為1。
權(quán)利要求
1.一種根據(jù)加工程序控制用于驅(qū)動機(jī)器的伺服馬達(dá)的數(shù)字控制器,具有學(xué)習(xí)控制功能,在重復(fù)執(zhí)行相同操作模式期間基于位置偏差獲得校正數(shù)據(jù),并基于該獲得的校正數(shù)據(jù)校正在執(zhí)行相同操作模式時的位置偏差,所述數(shù)字控制器包括相對于工件將刀具從由該加工程序命令的位置移動至該刀具和工件相互不干擾的位移位置的裝置;通過在該位移位置自動地重復(fù)設(shè)置次數(shù)的相同操作模式,或自動地重復(fù)相同操作模式直至該位置偏差減小至設(shè)置值或以下來獲得該校正數(shù)據(jù)的裝置;自動地存儲該獲得的校正數(shù)據(jù)的裝置;和根據(jù)該獲得的校正數(shù)據(jù)校正執(zhí)行相同操作模式中的該位置偏差,相對于該工件將該刀具從該位移位置移動至該命令的位置,并控制該伺服馬達(dá)執(zhí)行加工的裝置。
2.根據(jù)權(quán)利要求1所述的數(shù)字控制器,其特征在于在該加工程序的一次執(zhí)行中,獲得并存儲該校正數(shù)據(jù),和基于該校正數(shù)據(jù)校正在執(zhí)行相同操作模式時的該位置偏差來執(zhí)行加工。
全文摘要
一種數(shù)字控制器能夠避免因加工損壞工件,從而收斂由學(xué)習(xí)控制引起的位置偏差并且自動地執(zhí)行校正數(shù)據(jù)的存儲和實(shí)際加工。刀具和工件被移動至不干擾的位置。在從發(fā)出學(xué)習(xí)控制開始命令到發(fā)出學(xué)習(xí)控制結(jié)束命令的學(xué)習(xí)控制間隔中,接通輸入和輸出,從而執(zhí)行學(xué)習(xí)控制以輸入位置偏差并產(chǎn)生和輸出該校正數(shù)據(jù)。在學(xué)習(xí)控制間隔中的處理包括通過空操作重復(fù)地執(zhí)行設(shè)定次數(shù)的學(xué)習(xí)控制。該獲得的數(shù)據(jù)自動地存儲在數(shù)字控制器中,刀具和工件移動至干擾位置,并且基于校正數(shù)據(jù)校正該位置偏差,從而執(zhí)行實(shí)際加工。校正數(shù)據(jù)自動地存儲且使用校正數(shù)據(jù)執(zhí)行實(shí)際加工而不會損壞工件,從而可以縮短循環(huán)時間。
文檔編號G05B19/404GK1815395SQ20061000332
公開日2006年8月9日 申請日期2006年2月5日 優(yōu)先權(quán)日2005年2月2日
發(fā)明者細(xì)川匡彥, 佐野雅文, 牧野巖 申請人:發(fā)那科株式會社