TWI656942B - 工具機防碰撞方法及工具機防碰撞系統 - Google Patents

工具機防碰撞方法及工具機防碰撞系統 Download PDF

Info

Publication number
TWI656942B
TWI656942B TW107101285A TW107101285A TWI656942B TW I656942 B TWI656942 B TW I656942B TW 107101285 A TW107101285 A TW 107101285A TW 107101285 A TW107101285 A TW 107101285A TW I656942 B TWI656942 B TW I656942B
Authority
TW
Taiwan
Prior art keywords
trajectory
path
period
point
collision
Prior art date
Application number
TW107101285A
Other languages
English (en)
Other versions
TW201929997A (zh
Inventor
麥朝創
陳進輝
林書宇
Original Assignee
財團法人工業技術研究院
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 財團法人工業技術研究院 filed Critical 財團法人工業技術研究院
Priority to TW107101285A priority Critical patent/TWI656942B/zh
Priority to CN201810094410.5A priority patent/CN110026820B/zh
Priority to US15/970,666 priority patent/US10509391B2/en
Application granted granted Critical
Publication of TWI656942B publication Critical patent/TWI656942B/zh
Publication of TW201929997A publication Critical patent/TW201929997A/zh

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4061Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B23MACHINE TOOLS; METAL-WORKING NOT OTHERWISE PROVIDED FOR
    • B23QDETAILS, COMPONENTS, OR ACCESSORIES FOR MACHINE TOOLS, e.g. ARRANGEMENTS FOR COPYING OR CONTROLLING; MACHINE TOOLS IN GENERAL CHARACTERISED BY THE CONSTRUCTION OF PARTICULAR DETAILS OR COMPONENTS; COMBINATIONS OR ASSOCIATIONS OF METAL-WORKING MACHINES, NOT DIRECTED TO A PARTICULAR RESULT
    • B23Q17/00Arrangements for observing, indicating or measuring on machine tools
    • B23Q17/22Arrangements for observing, indicating or measuring on machine tools for indicating or measuring existing or desired position of tool or work
    • B23Q17/2208Detection or prevention of collisions
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4069Simulating machining process on screen
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/35Nc in input of data, input till input file format
    • G05B2219/35306Interference of all tools of turret, or part of tool base with chuck, workpiece
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49141Detect near collision and slow, stop, inhibit movement tool

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)

Abstract

一種工具機防碰撞方法,包括:載入多條加工碼;模擬對應該些加工碼的多個路徑軌跡;估計運行該些路徑軌跡的多個執行期間;自該些執行期間中選取最短執行期間;判斷在最短執行期間內,該些路徑軌跡中的任兩者的軌跡位置點的間距是否小於安全距離;當第一路徑軌跡中的第一軌跡位置點與第二路徑軌跡中的第二軌跡位置點的距離小於安全距離時,估計第一刀塔運行至第一軌跡位置點的第一時間點以及第二刀塔運行至第二軌跡位置點的第二時間點;當第一時間點與第二時間點之間的時間差距值低於容忍值時,產生碰撞警告。

Description

工具機防碰撞方法及工具機防碰撞系統
本發明是有關於一種工具機防碰撞方法及工具機防碰撞系統。
由於科技的進步,工具機的應用越來越多樣化,多系統的工具機數量也開始成長。多系統的工具機例如是指同時採用多個刀塔(turret)的工具機。
然而,舊有的防碰撞機制大多是針對單一系統(如單一個刀塔)來設計,而未考慮多系統的情況。此外,舊有的防碰撞機制往往是在工具機實際執行插值加工或是空跑時進行,然此方式需花費較多的時間成本。
本發明是關於一種工具機防碰撞方法及系統,可利用快速模擬的方式,先偵測多個刀塔的路徑軌跡之間的距離是否小於安全距離,若是,則進一步計算刀塔運行至可能發生碰撞的軌跡位置點的時間,以評估刀塔間是否會發生碰撞。透過此方式與系統,可以在快 速模擬時即對多刀塔的路徑軌跡進行碰撞檢測,其執行單節的速度遠比實際插值或空跑的速度快,進而節省使用者正式加工前的準備時間。
根據本發明之一實施例,提出一種由處理電路所執行的工具機防碰撞方法,包括:載入對應多個刀塔於第一單節操作的多條加工碼;模擬對應該些加工碼的多個路徑軌跡;估計該些刀塔運行該些路徑軌跡的多個執行期間;自該些執行期間中選取時間長度最短的最短執行期間;判斷在最短執行期間內,該些路徑軌跡中的任兩者的軌跡位置點的間距是否小於安全距離;當該些路徑軌跡中的第一路徑軌跡中的第一軌跡位置點與第二路徑軌跡中的第二軌跡位置點的距離小於安全距離時,估計該些刀塔中的第一刀塔運行至第一軌跡位置點的第一時間點以及該些刀塔中的第二刀塔運行至第二軌跡位置點的第二時間點;判斷第一時間點與第二時間點之間的時間差距值是否低於一容忍值;當第一時間點與第二時間點之間的時間差距值低於容忍值時,產生碰撞警告。
根據本發明之一實施例,提出一種工具機防碰撞系統,其包括記憶體以及處理電路。處理電路耦接記憶體,並用以執行以下步驟:載入對應多個刀塔於第一單節操作的多條加工碼;模擬對應該些加工碼的多個路徑軌跡;估計該些刀塔運行該些路徑軌跡的多個執行期間;自該些執行期間中選取時間長度最短的最短執行期間;判斷在最短執行期間內,該些路徑軌跡中的任兩者的軌跡位置點的間距是否小於安全距離;當該些路徑軌跡中的第一路徑軌跡中的第一軌跡位置點與第二路徑軌跡中的第二軌跡位置點的距離小於安全距離時,估 計該些刀塔中的第一刀塔運行至第一軌跡位置點的第一時間點以及該些刀塔中的第二刀塔運行至第二軌跡位置點的第二時間點;判斷第一時間點與第二時間點之間的時間差距值是否低於一容忍值;當第一時間點與第二時間點之間的時間差距值低於容忍值時,產生碰撞警告。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉實施例,並配合所附圖式詳細說明如下:
100‧‧‧防碰撞系統
104‧‧‧記憶體
106‧‧‧處理電路
TR1~TRM‧‧‧刀塔
108‧‧‧快速模擬單元
110‧‧‧防碰撞單元
S202、S204、S206、S208、S210、S212、S214、S216、S218、S302、S304、S306、S308、S310、S312、S314、S316、S318、S320、S322、S324、S326A、S326B、S328A、S328B、S602、S604、S606、S608、S610、S612、S614、S616A、S616B、S616C、S618、S620、S622、S624、S626A、S626B、S626C、S628A、S628B、S628C‧‧‧步驟
A、B、C、A’、B’、C’‧‧‧節點
Oldtime1、Oldtime2、Oldtime3、Oldtime1’、Oldtime2’、Oldtime1”、Oldtime2”‧‧‧期間起點參數
Runtime1、Runtime2、Runtime3、Runtime1’、Runtime2’、Runtime1”、Runtime2”‧‧‧期間終點參數
Path1、Path2、Path3、Path1’、Path2’、Path1”、Path2”‧‧‧路徑軌跡
V1、V2、V3、V1’、V2’、V1”、V2”‧‧‧速度值
A1、A2、A3、A1’、A2’、A1”、A2”‧‧‧加速度值
POS2r1、POS3r1、POS1、POS2、POS1’、POS3‧‧‧軌跡位置點
d12、d13‧‧‧軌跡位置點之間的距離
第1圖繪示依據本發明一實施例的工具機防碰撞系統的方塊圖。
第2圖繪示依據本發明一實施例的工具機防碰撞方法的流程圖。
第3A圖至第3C圖繪示針對雙刀塔工具機的防碰撞方法的一例流程圖。
第4圖繪示雙路徑軌跡的安全距離檢測的示意圖。
第5圖繪示雙路徑軌跡的碰撞檢測的示意圖。
第6A圖至第6C圖繪示針對三刀塔工具機的防碰撞方法的一例流程圖。
第7圖繪示雙路徑軌跡的安全距離檢測的示意圖。
第8圖繪示雙路徑軌跡的碰撞檢測的示意圖。
第9圖繪示依據本發明一實施例的雙路徑軌跡的防碰撞示意圖。
第10圖繪示依據本發明一實施例的雙路徑軌跡的防碰撞示意圖。
第1圖繪示依據本發明一實施例的工具機防碰撞系統。防碰撞系統100包括記憶體104以及處理電路106。工具機102例如是銑削工具機。工具機102可包括M個刀塔TR1~TRM,其中M為大於1的正整數。各個刀塔TR1~TRM可分別包括一或多個刀具。應注意,本發明雖以刀塔為例說明工具機防碰撞方法與系統,但本發明並不以此為限。本發明提出的工具機防碰撞方法與系統可應用至任意多系統的工具機的防碰撞控制。
在一實施例中,防碰撞系統100可被實施在工具機102自身的控制器當中(封閉式系統)。又一實施例中,防碰撞系統100可被實施成外接至工具機102的電腦或控制台(開放式系統)。防碰撞系統100可控制工具機102的運作,並實現本發明實施例的刀塔防碰撞機制。
記憶體104用以儲存可供處理電路106取得或執行的程式、指令、資料或檔案。處理電路106耦接記憶體104,其經配置後可執行本發明實施例之工具機防碰撞方法。處理電路106可例如透過微控制單元(microcontroller)、微處理器(microprocessor)、數位訊號處理器(digital signal processor)、特殊應用積體電路(application specific integrated circuit,ASIC)、數位邏輯電路、現場可程式邏輯閘陣列(field programmable gate array,FPGA)、或其它具有運算處理功能的硬體元件來實現。
處理電路106可包括快速模擬單元108以及防碰撞單元110,其中該些單元可例如透過軟體元件(如程式、指令、檔案、資料)、硬體元件(如邏輯電路)或兩者之組合來實現。
快速模擬單元108用以快速模擬刀塔TR1~TRM在每個單節的路徑軌跡。防碰撞單元110可根據路徑軌跡的空間資訊(例如,路徑軌跡的軌跡位置點)以及時間資訊(例如,模擬刀塔運行至特定軌跡位置點的時間點)判斷是否發生碰撞,並在判斷出碰撞發生時,產生碰撞警告。
本文所指的「快速模擬」,指的是一種直接連接單節端點(如單節起點、終點)的路徑模擬方式,快速模擬並不需透過插值運算來產生單節端點間的中間插值點位置。舉例來說,假定一方形路徑其邊長為100毫米(mm),以工具機常見之最大切削速度為1000毫米/分鐘為例,一般模擬執行時間約為24秒,但若採用快速模擬,由於只需四次中斷,而不需藉由插值計算逐一產生方形路徑邊長上的各個位置點,故模擬執行時間僅約12毫秒,較傳統模擬的執行速度可快上約2000倍。
此外,本發明實施例中有關快速模擬單元108及防碰撞單元110的操作可實施在工具機102實際運作前的一前置階段,此前置階段並不需涉及刀塔TR1~TRM的實際運行或空跑,而是純粹以軟體方式模擬刀塔TR1~TRM的路徑軌跡,並在刀塔TR1~TRM實際依照加工碼作動前,預先判斷是否會發生碰撞。
第2圖繪示依據本發明一實施例的工具機防碰撞方法的流程圖。所述之工具機防碰撞方法的流程圖可例如由防碰撞系統100執行。
在步驟S202,快速模擬單元108載入對應多個刀塔於第一單節操作的多條加工碼。加工碼例如是NC指令碼或其他用於控制工具機102作動的指令碼。
在步驟S204,快速模擬單元108模擬對應該些加工碼的多個路徑軌跡。舉例來說,快速模擬單元108可透過快速模擬方式描繪刀塔TR1~TRM運行第一單節的多個路徑軌跡。在一實施例中,不同的路徑軌跡分別表示不同刀塔TR1~TRM的刀尖點軌跡。然本發明並不限於此。在一實施例中,亦可將一刀塔中特定質點或質心的軌跡表示為該刀塔的路徑軌跡。
在步驟S206,快速模擬單元108估計刀塔TR1~TRM運行路徑軌跡的執行期間。舉例來說,快速模擬單元108可自工具機102的控制器取得刀塔TR1~TRM運行第一單節所分別採用的運動參數組,再根據該些運動參數組估算出各個刀塔TR1~TRM運行對應路徑軌跡所需的執行期間。各個運動參數組可包括一或多個速度相關參數,像是用以表示刀塔運行速度的速度參數以及用以表示刀塔運行加速度的加速度參數等。
在一實施例中,快速模擬單元108可設定多個期間起點參數Oldtime#,該些期間起點參數Oldtime#分別指示不同執行期間的期間起點。快速模擬單元108亦可經由工具機102及/或加工碼取得不同刀塔運行對應路徑軌跡所採用的運動參數組,並根據該些運動參數組,估計不同刀塔運行路徑軌跡的所需時間,以設定多個期間終點參數Runtime#,該些期間終點參數Runtime#分別指示不同執行期間的期間終點。舉例來說,假 定刀塔係在0秒~5秒此一期間內運行一路徑軌跡,則運行該路徑軌跡的執行時間可透過[Oldtime=0,Runtime=5]來描述。
在步驟S208,防碰撞單元110自該些執行期間中選取時間長度最短的最短執行期間。舉例來說,假設刀塔TR1於第一單節運行其路徑軌跡的執行期間為0~5秒,刀塔TR2於第一單節運行其路徑軌跡的執行期間為0~10秒,則最短執行期間為0~5秒。
在步驟S210,防碰撞單元110判斷任兩路徑軌跡的軌跡位置點的間距是否小於一安全距離。若是,表示刀塔間有發生碰撞的可能,流程將接續步驟S212。若否,表示第一單節中刀塔間並無發生碰撞的可能,流程將接續步驟S214,快速模擬單元108將執行軌跡資料更新程序,以針對第二單節進行碰撞偵測。第二單節例如是接續第一單節。
在一實施例中,假設步驟S208選出的最短執行期間係[Oldtime#Ta,Runtime#Tb],也就是該最短執行期間的期間起點係定義成Oldtime#Ta,且該最短執行期間的期間終點值係定義成Runtime#Tb,快速模擬單元108於步驟S214執行軌跡資料更新程序後,將更新各個執行期間。軌跡資料更新程序例如包括:將各個執行期間的期間起點參數更新成Runtime#Tb;載入另一加工碼,此另一加工碼用以描述一特定刀塔於第二單節的操作,且此特定刀塔完成第一單節的所需時間係對應最短執行期間(換言之,此特定刀塔於第一單節運行路徑軌跡的所需時間即步驟S208選出的最短執行期間);估計此特定刀塔完成第二單節的操作的所需時間,並據以更新特定期間終點參數,例如將Runtime#Tb更新成Runtime#Tb’。
透過上述程序,每個執行期間的期間起點皆被更新成Runtime#Tb,且原最短執行期間的期間終點將被更新成Runtime#Tb’。更新後的執行期間的時間長度將產生變化,因此,針對下一單節的碰撞偵測,步驟S208中防碰撞單元110將從更新後的執行期間中挑選出時間長度最短者作為最短執行期間。
在步驟S212,當防碰撞單元110偵測出第一刀塔運行的第一路徑軌跡中的第一軌跡位置點與第二刀塔運行的第二路徑軌跡中的第二軌跡位置點之間的距離小於安全距離,表示第一軌跡位置點與第二軌跡位置點是第一刀塔與第二刀塔可能會發生碰撞的軌跡位置點,此時防碰撞單元110將進一步估計第一刀塔運行至第一軌跡位置點的第一時間點以及第二刀塔運行至第二軌跡位置點的第二時間點。
在一實施例中,防碰撞單元110可根據第一軌跡位置點的位置、第一刀塔運行第一路徑軌跡所採用的第一運動參數組(例如與速度相關之一或多個參數)、以及描述第一路徑軌跡的第一運動學函數來估計第一時間點;並且根據第二軌跡位置點的位置、第二刀塔運行第二路徑軌跡所採用的第二運動參數組(例如與速度相關之一或多個參數)、以及描述第二路徑軌跡的第二運動學函數來估計第二時間點。
在一實施例中,第一運動學函數以及第二運動學函數可包括直線運動函數以及曲線運動函數至少其一。舉例來說,第一運動學函數以及第二運動學函數可以皆為直線運動函數、或皆為曲線運動函數、或是其一為直線運動函數、另一為曲線運動函數。然本發明並不限於此,所述之運動學函數可配合對應加工碼所描述的路徑軌跡來定義。
在步驟S216,防碰撞單元110判斷第一時間點與第二時間點之間的時間差距值是否低於容忍值。若是,表示第一刀塔與第二刀塔將於第一單節發生碰撞,步驟S218中防碰撞單元110將產生碰撞警告,以指示操作員相關的碰撞資訊,例如指出可能發生碰撞的位置、單節行號等,以方便操作員修改加工碼/程式碼內容,並終止模擬。若否,表示刀塔在第一單節並不會發生碰撞,流程將返回步驟S214,以載入下一單節的軌跡資料。上述之容忍值可視不同應用而定,在一實施例中,可設定容忍值為10毫秒。
透過上述方式,可實現多刀塔工具機的防碰撞機制,且因快速模擬單元108及防碰撞單元110的實施並不需涉及刀塔的實際運行或空跑,而是透過快速模擬方式模擬刀塔的路徑軌跡並進行碰撞偵測,故可明顯提升防碰撞模擬的執行速度。
第3A圖至第3C圖繪示針對雙刀塔工具機的防碰撞方法的一例流程圖。此範例用以說明透過防碰撞系統100實現針對工具機102的兩座刀塔TR1、TR2的防碰撞機制。
首先請參考第3A圖。在步驟S302,快速模擬單元108載入分別針對刀塔TR1以及TR2的兩條加工碼。
在步驟S304,快速模擬單元108以快速模擬方式描繪圖形,並建立對應刀塔TR1以及TR2的兩路徑軌跡的變數資料。
以快速模擬方式描繪圖形包括:直接連接路經軌跡在一單節開始、結束的兩端點。以直線運動的路徑軌跡為例,快速模擬單元108會將路徑軌跡在單節開始的軌跡位置點與路徑軌跡在單節結束 的軌跡位置點直接相連,以描繪出直線的路徑軌跡圖形。由於是直接相連兩端點,故在兩端點之間的軌跡位置點並不需透過插值運算逐一取得。
針對刀塔TR1的路徑軌跡的變數資料可例如包括[Path1,Int1,POS1,Runtime1,Oldtime1],其中Path1表示路徑軌跡的索引值,Int1表示解譯對應加工碼的所需資料,POS1表示路徑軌跡Path1的軌跡位置點,Runtime1表示路徑軌跡Path1的期間終點參數,用以描述刀塔TR1在單節的執行期間的期間終點,Oldtime1表示路徑軌跡Path1的期間起點參數,用以描述刀塔TR1在單節的執行期間的期間起點。類似地,針對刀塔TR2的路徑軌跡的變數資料包括[Path2,Int2,POS2,Runtime2,Oldtime2],其中Path2表示路徑軌跡的索引值,Int2表示解譯對應加工碼的所需資料,POS2表示路徑軌跡Path2的軌跡位置點,Runtime2表示路徑軌跡Path2的期間終點參數,用以描述刀塔TR2在單節的執行期間的期間終點,Oldtime2表示路徑軌跡Path2的期間起點參數,用以描述刀塔TR2在單節的執行期間的期間起點。
在開始模擬前,快速模擬單元108可例如對時間起點參數Oldtime1、Oldtime2作初始化,例如設定Oldtime1=0、Oldtime2=0。
在步驟S306,快速模擬單元108根據路徑軌跡的變數資料開始解譯並進行快速模擬,以執行單節。
在步驟S308,快速模擬單元108更新各路徑軌跡之資料。路徑軌跡資料的更新端視目前碰撞偵測的執行單節進度而定。此步驟將配合第3C圖節點B至節點C的流程作說明。
在步驟S310,快速模擬單元108根據運動參數組估計刀塔執行單節所需時間,以取得Runtime1、Runtime2的值,也就是對應不同路徑軌跡的執行期間的期間終點。運動參數組例如包括刀塔運行路徑軌跡的一或多個速度相關參數,例如速度參數、加速度參數等。快速模擬單元108可例如自工具機102取得運動參數組。
在步驟S312,快速模擬單元108設定安全距離。當兩路徑軌跡的軌跡位置點之間的距離小於安全距離,則該兩軌跡位置點將被視為可能發生碰撞的位置點。安全距離的值可以是任意的,端視實際的應用而定。步驟S312後將接續節點A。
接著請參考第3B圖。進入節點A後,在步驟S314,防碰撞單元110判斷Runtime2是否大於Runtime1。若是,在步驟S316,防碰撞單元110將比較在[Oldtime1,Runtime1]此段執行期間內,兩路徑軌跡的軌跡位置點是否相距小於安全距離。若否,在步驟S318,防碰撞單元110將比較[Oldtime2,Runtime2]此段執行期間內,兩路徑軌跡的軌跡位置點是否相距小於安全距離。
換言之,防碰撞單元110會比較執行期間[Oldtime1,Runtime1]以及執行期間[Oldtime2,Runtime2]的時間長度,並從中選出時間長度較短者(最短執行期間),以判斷該最短執行期間內,兩路徑軌跡的軌跡位置點是否相距小於安全距離。
若步驟S316或S318的判斷結果為「是」,表示就空間上來說,兩路徑軌跡有發生碰撞的可能,流程將接續步驟S320作時間上的碰撞檢測。若步驟S316或S318的判斷結果為「否」,表示兩路徑軌跡並不會發生碰撞,流程將接續節點B以更新路徑軌跡的資料。關於流程的節點B的相關細節將配合第3C圖作說明。
在步驟S320,防碰撞單元110估算對應刀塔分別運行至可能發生碰撞的軌跡位置點的時間點。舉例來說,若路徑軌跡Path1的第一軌跡位置點POS1與路徑軌跡Path2的第二軌跡點POS2之間的距離小於安全距離,防碰撞單元110將根據對應的運動參數組,估算刀塔TR1運行至第一軌跡位置點POS1的第一時間點,以及刀塔TR2運行至第二軌跡位置點POS2的第二時間點。
在一實施例中,假設路徑軌跡Path1的模擬運行係採用第一運動參數組,路徑軌跡Path2的模擬運行係採用第二運動參數組,防碰撞單元110將在最短執行期間內,根據第一運動參數組估計路徑軌跡Path1在多個檢查時間間隔的多個軌跡位置點,並根據第二運動參數組估計路徑軌跡Path2在該些檢查時間間隔的多個軌跡位置點。防碰撞單元110將比較路徑軌跡Path1的軌跡位置點與路徑軌跡Path2的軌跡位置點之間的距離,以偵測出可能發生碰撞的第一軌跡位置點POS1以及第二軌跡位置點POS2。
上述檢查時間間隔的時間長度可以是任意的。在一實施例中,防碰撞單元110可例如規劃每個檢查時間間隔為200毫秒。
在步驟S322,防碰撞單元110判斷時間點之間的時間差距值是否小於容忍值。舉例來說,防碰撞單元110會判斷第一時間點 與第二時間點之間的時間差距值是否小於容忍值。若是,表示兩刀塔TR1、TR2在運行時很可能發生碰撞,步驟S324中防碰撞單元110將產生碰撞警告,以指示操作員相關的碰撞資訊,例如指出可能發生碰撞的位置、單節行號等,以方便使用者修改加工碼/程式碼內容,並終止模擬。若步驟S322的判斷結果為「否」,表示兩路徑軌跡並不會發生碰撞,流程將接續節點B以更新路徑軌跡的資料。
接著請參考第3C圖。流程進入節點B之後,步驟S326中快速模擬單元108將判斷期間終點參數Runtime2是否大於期間終點參數Runtime1。若是,表示執行期間[Oldtime1,Runtime1]為最短執行期間,步驟S326A中快速模擬單元108將設定各個執行期間的期間起點參數為Runtime1,也就是設定Oldtime1=Runtime1、Oldtime2=Runtime1,並在步驟S328A中更新路徑軌跡Path1所需資料。若否,表示執行期間[Oldtime2,Runtime2]為最短執行期間,步驟S326B中快速模擬單元108將設定各個執行期間的期間起點參數為Runtime2,也就是設定Oldtime1=Runtime2、Oldtime2=Runtime2,並在步驟S328B中更新路徑軌跡Path2所需資料。
舉例來說,假設刀塔TR1在第一單節運行路徑軌跡Path1的執行期間為0~5秒(Oldtime1=0;Runtime1=5),而刀塔TR2在該第一單節運行路徑軌跡Path2的執行期間為0~10秒(Oldtime2=0;Runtime2=10),在完成針對0~5秒此一執行期間的碰撞偵測後,快速模擬單元108將針對刀塔TR1載入第二單節的加工碼,並據以更新路徑軌跡之資料。假設刀塔TR1在第二單節運行路徑軌跡Path1的執行期間 為5~15秒,則快速模擬單元108將設定[Oldtime1=5,Runtime1=10]、[Oldtime2=5,Runtime2=10],以針對路徑軌跡Path2於第一單節尚未執行碰撞偵測的部分(5~10秒),以及路徑軌跡Path1的對應執行期間部分(5~10秒)作碰撞偵測。
步驟S328A及S328B完成後將接續節點C,以返回第3A圖的步驟S308。
第4圖繪示雙路徑軌跡的安全距離檢測的示意圖。根據第4圖的模擬,刀塔TR1在單節開始時的期間起點參數為Oldtime1,且刀塔TR1以速度值V1、加速度值A1沿路徑軌跡Path1運行至單節結束時的期間終點參數為Runtime1;刀塔TR2在單節開始時的期間起點參數為Oldtime2,且刀塔TR2以速度值V2、加速度值A2沿路徑軌跡Path2運行至單節結束時的期間終點參數為Runtime2。
假設Runtime2大於Runtime1,且刀塔TR2在時間Runtime1時的軌跡位置點為POS2r1,防碰撞單元110將檢測路徑軌跡Path1在執行期間[Oldtime1,Runtime1]內的軌跡位置點與路徑軌跡Path2在執行期間[Oldtime2,Runtime1]內的軌跡位置點之間的距離是否小於安全距離,如圖中附加斜線的線段所示,其中期間起點參數Oldtime1等於Oldtime2。
第5圖繪示雙路徑軌跡的碰撞檢測的示意圖。根據第5圖的模擬,假設路徑軌跡Path1的軌跡位置點POS1與路徑軌跡Path2的軌跡位置點POS2之間的距離d12小於安全距離,表示該兩軌跡位置 點POS1、POS2為可能發生碰撞的點位,防碰撞單元110將進一步計算對應該兩軌跡位置點POS1、POS2的時間資訊。
舉例來說,假定檢查時間間隔TC為200毫秒,防碰撞單元110可根據各路徑軌跡Path1、Path2的速度值V1、V2以及加速度值A1、A2可估算出各路徑軌跡Path1、Path2每200毫秒的軌跡位置點,並估測出小於安全距離的軌跡位置點POS1與軌跡位置點POS2。
接著,兩軌跡位置點POS1、POS2的時間資訊可利用以下運動學函數求得:
其中X為軌跡位置點的值,V為速度值,t為時間,A為加速度值。
將軌跡位置點POS1與路徑軌跡Path1的運動參數代入式一可得:
其中T1表示運行至軌跡位置點POS1的時間點。
另外,將軌跡位置點POS2與路徑軌跡Path2的運動參數代入式一可得:
其中T2表示運行至軌跡位置點POS2的時間點。
防碰撞單元110可分別自式二及式三求解時間點T1、T2的值,若時間點T1、T2兩者相差小於容忍值(如10毫秒),則表示兩路徑軌跡會發生碰撞,防碰撞單元110將發出碰撞警告。
應意識到,上述範例僅是用以說明本發明的其中一實施例,而非用以限制本發明。路徑軌跡並不限於直線,亦可是任意的曲線,只要防碰撞單元110可根據曲線函數及相關運動參數推估軌跡位置點的對應時間點即可。
第6A圖至第6C圖繪示針對三刀塔工具機的防碰撞方法的一例流程圖。此範例係透過防碰撞系統100實現針對工具機102的三座刀塔TR1、TR2、TR3的防碰撞機制。
首先請參考第6A圖。在步驟S602,快速模擬單元108載入分別針對刀塔TR1、TR2以及TR3的三條加工碼。
在步驟S604,快速模擬單元108以快速模擬方式描繪圖形,並建立對應刀塔TR1、TR2以及TR3的三個路徑軌跡的變數資料。
針對刀塔TR1的路徑軌跡的變數資料可例如包括[Path1,Int1,POS1,Runtime1,Oldtime1],其中Path1表示路徑軌跡的索引值,Int1表示解譯對應加工碼的所需資料,POS1表示對應刀塔TR1的路徑軌跡Path1的軌跡位置點,Runtime1表示期間終點參數,用以描述刀塔TR1在單節的執行期間的期間終點,Oldtime1表示期間起點參數,用以描述刀塔TR1在單節的執行期間的期間起點。針對刀塔TR2的路徑軌跡的變數資料包括[Path2,Int2,POS2,Runtime2,Oldtime2],其中Path2表示路徑軌跡的索引值,Int2表示解譯對應加工碼的所需資料,POS2表示對應刀塔TR2的路徑軌跡Path2的軌跡位置點,Runtime2表示期間終點參數,用以描述刀塔TR2在單節的執行期間的期間終點,Oldtime2表示期間起點參數,用以描述刀塔TR2在單節 的執行期間的期間起點。針對刀塔TR3的路徑軌跡的變數資料包括[Path3,Int3,POS3,Runtime3,Oldtime3],其中Path3表示路徑軌跡的索引值,Int3表示解譯對應加工碼的所需資料,POS3表示對應刀塔TR3的路徑軌跡Path3的軌跡位置點,Runtime3表示期間終點參數,用以描述刀塔TR3在單節的執行期間的期間終點,Oldtime3表示期間起點參數,用以描述刀塔TR3在單節的執行期間的期間起點。
在開始模擬前,快速模擬單元108可例如對時間起點參數Oldtime1、Oldtime2、Oldtime3作初始化,例如設定Oldtime1=0,Oldtime2=0、Oldtime3=0。
在步驟S606,快速模擬單元108根據路徑軌跡的變數資料開始解譯並進行快速模擬,以執行單節。
在步驟S608,快速模擬單元108更新各路徑軌跡之資料。路徑軌跡資料的更新端視目前碰撞偵測的執行單節進度而定。此步驟將配合第6C圖節點B’至節點C’的流程作說明。
在步驟S610,快速模擬單元108根據運動參數組估計刀塔執行單節所需時間,以取得Runtime1、Runtime2、Runtime3的值。
在步驟S612,快速模擬單元108設定安全距離。當任兩路徑軌跡的軌跡位置點之間的距離小於安全距離,則該兩軌跡位置點將被視為可能發生碰撞的位置點。安全距離的大小可以是任意的,端視實際的應用而定。步驟S612後將接續節點A’。
接著請參考第6B圖。進入節點A’後,在步驟S614,防碰撞單元110比較Runtime1、Runtime2、Runtime3,以搜尋三者中時 間長度最短者。若Runtime1最短,在步驟S616A,防碰撞單元110將比較在[Oldtime1,Runtime1]此段執行期間內,三路徑軌跡中的任兩者的軌跡位置點是否相距小於安全距離。若Runtime2最短,在步驟S616B,防碰撞單元110將比較在[Oldtime2,Runtime2]此段執行期間內,三路徑軌跡中的任兩者的軌跡位置點是否相距小於安全距離。若Runtime3最短,在步驟S616C,防碰撞單元110將比較在[Oldtime3,Runtime3]此段執行期間內,三路徑軌跡中的任兩者的軌跡位置點是否相距小於安全距離。
換言之,防碰撞單元110會比較執行期間[Oldtime1,Runtime1]、[Oldtime2,Runtime2]、[Oldtime3,Runtime3]三者的時間長度,並從中選出時間長度較短者(最短執行期間),以判斷該最短執行期間內,任兩路徑軌跡的軌跡位置點是否相距小於安全距離。
若步驟S616A、S616B或S616C的判斷結果為「是」,表示就空間上來說,路徑軌跡有發生碰撞的可能,流程將接續步驟S618作時間上的碰撞檢測。若步驟S616A、S616B或S616C的判斷結果為「否」,表示路徑軌跡之間並不會發生碰撞,流程將接續節點B’以更新路徑軌跡的資料。關於流程的節點B’的相關細節將配合第6C圖作說明。
在步驟S618,防碰撞單元110估算對應刀塔分別運行至可能發生碰撞的軌跡位置點的時間點。舉例來說,若路徑軌跡Path1的第一軌跡位置點POS1與路徑軌跡Path3的第三軌跡點POS3距離小於安全距離,防碰撞單元110將根據對應的運動參數組,估算刀塔TR1 運行至第一軌跡位置點POS1的第一時間點,以及刀塔TR3運行至第三軌跡位置點POS3的第三時間點。
在步驟S620,防碰撞單元110判斷各時間點之間的時間差距值是否小於容忍值。舉例來說,防碰撞單元110會判斷第一時間點與第三時間點之間的時間差距值是否小於容忍值。若是,表示兩刀塔TR1、TR3在運行時會發生碰撞,步驟S622中防碰撞單元110將產生碰撞警告,以指示操作員相關的碰撞資訊。若步驟S622的判斷結果為「否」,表示三路徑軌跡間無發生碰撞的可能,流程將接續節點B’以更新路徑軌跡的資料。
接著請參考第6C圖。流程進入節點B’之後,步驟S624中快速模擬單元108將比較Runtime2、Runtime1、Runtime3,以搜尋三者中時間長度最短者。若Runtime1最短,表示執行期間[Oldtime1,Runtime1]為最短執行期間,步驟S626A中快速模擬單元108將設定各個執行期間的期間起點參數為Runtime1,也就是設定Oldtime1=Runtime1、Oldtime2=Runtime1、Oldtime3=Runtime1,並在步驟S628A中更新路徑軌跡Path1所需資料。
若Runtime2最短,表示執行期間[Oldtime2,Runtime2]為最短執行期間,步驟S626B中快速模擬單元108將設定各個執行期間的期間起點參數為Runtime2,也就是設定Oldtime1=Runtime2、Oldtime2=Runtime2、Oldtime3=Runtime2,並在步驟S628B中更新路徑軌跡Path2所需資料。
類似地,若Runtime3最短,表示執行期間[Oldtime3,Runtime3]為最短執行期間,步驟S626C中快速模擬單元108將設定各個執行期間的期間起點參數為Runtime3,也就是設定Oldtime1=Runtime3、Oldtime2=Runtime3、Oldtime3=Runtime3,並在步驟S628C中更新路徑軌跡Path3所需資料。
舉例來說,假設刀塔TR1在第一單節運行路徑軌跡Path1的執行期間為0~5秒(Oldtime1=0;Runtime1=5)、刀塔TR2在該第一單節運行路徑軌跡Path2的執行期間為0~10秒(Oldtime2=0;Runtime2=10)、刀塔TR3在該第一單節運行路徑軌跡Path3的執行期間為0~12秒(Oldtime3=0;Runtime3=12),在完成針對0~5秒此一最短執行期間的碰撞偵測後,快速模擬單元108將針對刀塔TR1載入第二單節的加工碼,並據以更新路徑軌跡之資料。假設刀塔TR1在第二單節運行路徑軌跡Path1的執行期間為5~15秒,則快速模擬單元108將設定[Oldtime1=5,Runtime1=15]、[Oldtime2=5,Runtime2=10]、[Oldtime3=5,Runtime2=12],以針對路徑軌跡Path1、以及路徑軌跡Path2、Path3於第一單節尚未執行碰撞偵測的部分作碰撞偵測。
步驟S628A、S628B、S628C完成後將接續節點C’,以返回第6A圖的步驟S608。
第7圖繪示三路徑軌跡的安全距離檢測的示意圖。根據第7圖的模擬,刀塔TR1在單節開始時的期間起點參數為Oldtime1,且刀塔TR1以速度值V1、加速度值A1沿路徑軌跡Path1運行至單節結束時的期間終點參數為Runtime1;刀塔TR2在單節開始時的期間起點參 數為Oldtime2,且刀塔TR2以速度V2、加速度A2沿路徑軌跡Path2運行至單節結束時的期間終點參數為Runtime2。刀塔TR3在單節開始時的期間起點參數為Oldtime3,且刀塔TR3以速度V3、加速度A3沿路徑軌跡Path3運行至單節結束時的期間終點參數為Runtime3。換言之,路徑軌跡Path1的執行期間為[Oldtime1,Runtime1],路徑軌跡Path2的執行期間為[Oldtime2,Runtime2],路徑軌跡Path3的執行期間為[Oldtime3,Runtime3]。
假設刀塔TR2、TR3在時間Runtime1時的軌跡位置點分別為POS2r1、POS3r1,防碰撞單元110將檢測路徑軌跡Path1、Path2、Path分別在執行期間[Oldtime1,Runtime1]、[Oldtime2,Runtime1]、[Oldtime3,Runtime1]內的軌跡位置點之間的距離是否小於安全距離,如圖中附加斜線的線段所示。
第8圖繪示雙路徑軌跡的碰撞檢測的示意圖。根據第8圖的模擬,路徑軌跡Path1的軌跡位置點POS1與路徑軌跡Path2的軌跡位置點POS2之間的距離d12小於安全距離,且路徑軌跡Path1的軌跡位置點POS1’與路徑軌跡Path3的軌跡位置點POS3之間的距離d13亦小於安全距離,防碰撞單元110將進一步計算對應軌跡位置點POS1、POS2、POS1’以及POS3的時間資訊。
舉例來說,軌跡位置點POS1、POS2、POS1’以及POS3的時間資訊可利用式一求得,其中刀塔TR1運行至軌跡位置點POS1的時間點T1可透過式二求得,刀塔TR2運行至軌跡位置點POS2的時間點 T2可透過式二求得。刀塔TR1運行至軌跡位置點POS1’的時間點T1’則可透過下式求得:
刀塔TR3運行至軌跡位置點POS3的時間點T3則可透過下式求得:
防碰撞單元110可比較時間點T1、T2的值,若時間點T1、T2兩者相差小於容忍值,則表示路徑軌跡Path1與Path2發生碰撞,防碰撞單元110將發出碰撞警告。防碰撞單元110亦會比較時間點T1’與T3的值,若時間點T1’與T3兩者相差小於容忍值,則表示路徑軌跡Path1與Path3發生碰撞,防碰撞單元110亦將發出碰撞警告
第9圖繪示依據本發明一實施例的雙路徑軌跡的防碰撞示意圖。根據第9圖的實施例,欲進行碰撞檢測的兩個路徑軌跡Path1’、Path2’中,路徑軌跡Path1’為直線軌跡,路徑軌跡Path2’為曲線軌跡。針對路徑軌跡Path1’,其對應刀塔的期間起點參數為Oldtime1’,且該對應刀塔以速度值V1’、加速度值A1’沿路徑軌跡Path1’運行至單節結束時的期間終點參數為Runtime1’;針對路徑軌跡Path2’,其對應刀塔的期間起點參數為Oldtime2’,且該對應刀塔以速度V2’、加速度A2’沿路徑軌跡Path2’運行至單節結束時的期間終點參數為Runtime2’。
防碰撞單元110可根據各路徑軌跡的運動參數組(如V1’、A1’、V2’、A2’)以及描述路徑軌跡Path1’的直線運動函數以及 描述路徑軌跡Path2’的曲線運動函數,以類似第4~5圖、或是第7~8圖的判斷機制,判斷兩路徑軌跡Path1’、Path2’是否發生碰撞。
第10圖繪示依據本發明另一實施例的雙路徑軌跡的防碰撞示意圖。
根據第10圖的實施例,欲進行碰撞檢測的兩個路徑軌跡Path1”、Path2”皆為曲線軌跡。針對路徑軌跡Path1”,其對應刀塔的期間起點參數為Oldtime1”,且該對應刀塔以速度值V1”、加速度值A1”沿路徑軌跡Path1”運行至單節結束時的期間終點參數為Runtime1”;針對路徑軌跡Path2”,其對應刀塔的期間起點參數為Oldtime2”,且該對應刀塔以速度V2”、加速度A2”沿路徑軌跡Path2”運行至單節結束時的期間終點參數為Runtime2”。
防碰撞單元110可根據各路徑軌跡的運動參數組(如V1”、A1”、V2”、A2”)以及分別描述路徑軌跡Path1”、Path2”的曲線運動函數,以類似第4~5圖、或是第7~8圖的判斷機制,判斷兩路徑軌跡Path1”、Path2”是否發生碰撞。
本發明的工具機防碰撞方法亦可實作為一或多個軟體程式,此一或多個軟體程式可儲存於非暫態電腦可讀取儲存媒體(non-transitory computer readable storage medium),例如硬碟、光碟、隨身碟、記憶體,當處理電路從非暫態電腦可讀取儲存媒體載入軟體程式時,可執行本發明的工具機防碰撞方法。然熟習本發明之技藝者應瞭解到,在本發明實施例中所提及的方法步驟,除特別敘明其 順序者外,均可依實際需要調整其前後順序,甚至可同時或部分同時執行。
綜上所述,本發明實施例提出一種工具機防碰撞方法及系統,可利用快速模擬的方式,先偵測多個刀塔的路徑軌跡之間的距離是否小於安全距離,若是,則進一步計算刀塔運行至可能發生碰撞的軌跡位置點的時間,以評估刀塔間是否會發生碰撞。透過此方式,可以在快速模擬時即對多刀塔的路徑軌跡進行碰撞檢測,其執行單節的速度遠比實際插值或空跑的速度快,進而節省使用者正式加工前的準備時間。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。

Claims (20)

  1. 一種工具機防碰撞方法,適用於具備複數個刀塔的工具機,包括以下步驟並由一處理電路所執行:(a)載入對應該些刀塔於一第一單節操作的複數條加工碼;(b)模擬對應該些加工碼的複數個路徑軌跡;(c)估計該些刀塔運行該些路徑軌跡的複數個執行期間;(d)自該些執行期間中選取時間長度最短的一最短執行期間;(e)判斷在該最短執行期間內,該些路徑軌跡中的任兩者的軌跡位置點的間距是否小於一安全距離;(f)當該些路徑軌跡中的一第一路徑軌跡中的一第一軌跡位置點與一第二路徑軌跡中的一第二軌跡位置點的距離小於該安全距離時,估計該些刀塔中的一第一刀塔運行至該第一軌跡位置點的一第一時間點以及該些刀塔中的一第二刀塔運行至該第二軌跡位置點的一第二時間點;以及(g)判斷該第一時間點與該第二時間點之間的時間差距值是否低於一容忍值;以及(h)當該第一時間點與該第二時間點之間的時間差距值低於該容忍值時,產生一碰撞警告。
  2. 如申請專利範圍第1項所述之工具機防碰撞方法,更包括:設定複數個期間起點參數,該些期間起點參數分別指示該些執行期間的期間起點;取得該些刀塔運行該些路徑軌跡所採用的複數個運動參數組;根據該些運動參數組,估計該些刀塔運行該些路徑軌跡的所需時間,以設定複數個期間終點參數,該些期間終點參數分別指示該些執行期間的期間終點。
  3. 如申請專利範圍第2項所述之工具機防碰撞方法,其中該最短執行期間的期間起點係由該些期間起點參數中的一特定期間起點參數來定義,該最短執行期間的期間終點係由該些期間起點參數中的一特定期間終點參數來定義,該工具機防碰撞方法更包括:當步驟(e)或步驟(g)的判斷結果為否,執行一軌跡資料更新程序以更新該些執行期間,該軌跡資料更新程序包括:將該些執行期間的該些期間起點參數更新成該特定期間終參數;載入另一加工碼,該另一加工碼用以描述該些刀塔中的一特定刀塔於一第二單節的操作,且該特定刀塔完成該第一單節的所需時間係對應該最短執行期間;估計該特定刀塔完成該第二單節的操作的所需時間,並據以更新該特定期間終點參數。
  4. 如申請專利範圍第3項所述之工具機防碰撞方法,更包括:將該最短執行期間更新成該些更新後執行期間中時間長度最短者。
  5. 如申請專利範圍第2項所述之工具機防碰撞方法,其中該第一路徑軌跡的模擬運行係採用該些運動參數組中的一第一運動參數組,該第二路徑軌跡的模擬運行係採用該些運動參數組中的一第二運動參數組,該工具機防碰撞方法更包括:在該最短執行期間內,根據該第一運動參數組估計該第一路徑軌跡在複數個檢查時間間隔的複數個軌跡位置點;在該最短執行期間內,根據該第二運動參數組估計該第二路徑軌跡在該些檢查時間間隔的複數個軌跡位置點;以及比較該第一路徑軌跡的該些軌跡位置點與該第二路徑軌跡的該些軌跡位置之間的距離,以分別自該第一路徑軌跡的該些軌跡位置點以及該第二路徑軌跡的該些軌跡位置點偵測該第一軌跡位置點以及該第二軌跡位置點。
  6. 如申請專利範圍第5項所述之工具機防碰撞方法,其中各該檢查時間間隔為200毫秒。
  7. 如申請專利範圍第2項所述之工具機防碰撞方法,其中各該運動參數組包括至少一速度參數以及至少一加速度參數。
  8. 如申請專利範圍第2項所述之工具機防碰撞方法,更包括:根據該第一軌跡位置點的位置、該第一刀塔運行該第一路徑軌跡所採用的一第一運動參數組、以及描述該第一路徑軌跡的一第一運動學函數,估計該第一時間點;以及根據該第二軌跡位置點的位置、該第二刀塔運行該第二路徑軌跡所採用的一第二運動參數組、以及描述該第二路徑軌跡的一第二運動學函數,估計該第二時間點。
  9. 如申請專利範圍第8項所述之工具機防碰撞方法,其中該第一運動學函數以及該第二運動學函數包括一直線運動函數以及一曲線運動函數至少其一。
  10. 如申請專利範圍第1項所述之工具機防碰撞方法,其中該些路徑軌跡分別表示該些刀塔的刀尖點軌跡。
  11. 一種工具機防碰撞系統,適用於具備複數個刀塔的工具機,包括:一記憶體;以及一處理電路,耦接該記憶體,用以執行以下步驟:(a)載入對應複數個刀塔於一第一單節操作的複數條加工碼;(b)模擬對應該些加工碼的複數個路徑軌跡;(c)估計該些刀塔運行該些路徑軌跡的複數個執行期間;(d)自該些執行期間中選取時間長度最短的一最短執行期間;(e)判斷在該最短執行期間內,該些路徑軌跡中的任兩者的軌跡位置點的間距是否小於一安全距離;(f)當該些路徑軌跡中的一第一路徑軌跡中的一第一軌跡位置點與一第二路徑軌跡中的一第二軌跡位置點的距離小於該安全距離時,估計該些刀塔中的一第一刀塔運行至該第一軌跡位置點的一第一時間點以及該些刀塔中的一第二刀塔運行至該第二軌跡位置點的一第二時間點;(g)判斷該第一時間點與該第二時間點之間的時間差距值是否低於一容忍值;以及(h)當該第一時間點與該第二時間點之間的時間差距值低於該容忍值時,產生一碰撞警告。
  12. 如申請專利範圍第11項所述之工具機防碰撞系統,其中該處理電路更用以:設定複數個期間起點參數,該些期間起點參數分別指示該些執行期間的期間起點;取得該些刀塔運行該些路徑軌跡所採用的複數個運動參數組;根據該些運動參數組,估計該些刀塔運行該些路徑軌跡的所需時間,以設定複數個期間終點參數,該些期間終點參數分別指示該些執行期間的期間終點。
  13. 如申請專利範圍第12項所述之工具機防碰撞系統,其中該最短執行期間的期間起點係由該些期間起點參數中的一特定期間起點參數來定義,該最短執行期間的期間終點係由該些期間起點參數中的一特定期間終點參數來定義,該處理電路更用以:當步驟(e)或步驟(g)的判斷結果為否,執行一軌跡資料更新程序以更新該些執行期間,該軌跡資料更新程序包括:將該些執行期間的該些期間起點參數更新成該特定期間終參數;載入另一加工碼,該另一加工碼用以描述該些刀塔中的一特定刀塔於一第二單節的操作,且該特定刀塔完成該第一單節的所需時間係對應該最短執行期間;估計該特定刀塔完成該第二單節的操作的所需時間,並據以更新該特定期間終點參數。
  14. 如申請專利範圍第13項所述之工具機防碰撞系統,其中該處理電路更用以:將該最短執行期間更新成該些更新後執行期間中時間長度最短者。
  15. 如申請專利範圍第12項所述之工具機防碰撞系統,其中該第一路徑軌跡的模擬運行係採用該些運動參數組中的一第一運動參數組,該第二路徑軌跡的模擬運行係採用該些運動參數組中的一第二運動參數組,該處理電路更用以:在該最短執行期間內,根據該第一運動參數組估計該第一路徑軌跡在複數個檢查時間間隔的複數個軌跡位置點;在該最短執行期間內,根據該第二運動參數組估計該第二路徑軌跡在該些檢查時間間隔的複數個軌跡位置點;以及比較該第一路徑軌跡的該些軌跡位置點與該第二路徑軌跡的該些軌跡位置之間的距離,以分別自該第一路徑軌跡的該些軌跡位置點以及該第二路徑軌跡的該些軌跡位置點偵測該第一軌跡位置點以及該第二軌跡位置點。
  16. 如申請專利範圍第15項所述之工具機防碰撞系統,其中各該檢查時間間隔為200毫秒。
  17. 如申請專利範圍第12項所述之工具機防碰撞系統,其中各該運動參數組包括至少一速度參數以及至少一加速度參數。
  18. 如申請專利範圍第11項所述之工具機防碰撞系統,其中該處理電路更用以:根據該第一軌跡位置點的位置以及描述該第一路徑軌跡的一第一運動學函數,估計該第一時間點;以及根據該第二軌跡位置點的位置以及描述該第二路徑軌跡的一第二運動學函數,估計該第二時間點。
  19. 如申請專利範圍第18項所述之工具機防碰撞系統,其中該第一運動學函數以及該第二運動學函數包括一直線運動函數以及一曲線運動函數至少其一。
  20. 如申請專利範圍第11項所述之工具機防碰撞系統,其中該些路徑軌跡分別表示該些刀塔的刀尖點軌跡。
TW107101285A 2018-01-12 2018-01-12 工具機防碰撞方法及工具機防碰撞系統 TWI656942B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW107101285A TWI656942B (zh) 2018-01-12 2018-01-12 工具機防碰撞方法及工具機防碰撞系統
CN201810094410.5A CN110026820B (zh) 2018-01-12 2018-01-31 机床防碰撞方法及应用其的系统
US15/970,666 US10509391B2 (en) 2018-01-12 2018-05-03 Machine tool collision avoidance method and system using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW107101285A TWI656942B (zh) 2018-01-12 2018-01-12 工具機防碰撞方法及工具機防碰撞系統

Publications (2)

Publication Number Publication Date
TWI656942B true TWI656942B (zh) 2019-04-21
TW201929997A TW201929997A (zh) 2019-08-01

Family

ID=66996098

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107101285A TWI656942B (zh) 2018-01-12 2018-01-12 工具機防碰撞方法及工具機防碰撞系統

Country Status (3)

Country Link
US (1) US10509391B2 (zh)
CN (1) CN110026820B (zh)
TW (1) TWI656942B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6346256B2 (ja) 2016-12-14 2018-06-20 ファナック株式会社 数値制御装置
EP3838504A1 (de) * 2019-12-19 2021-06-23 FRONIUS INTERNATIONAL GmbH Verfahren und vorrichtung zur überwachung eines bearbeitungsprozesses und bearbeitungsmaschine mit einer solchen vorrichtung
US20210365896A1 (en) * 2020-05-21 2021-11-25 HUDDL Inc. Machine learning (ml) model for participants
CN111958589A (zh) * 2020-07-06 2020-11-20 佛山科学技术学院 一种多机械臂轨迹防碰撞方法及系统
TWI744147B (zh) * 2020-12-24 2021-10-21 財團法人工業技術研究院 可動式機械的動作測試方法與控制主機
TWI806405B (zh) 2022-02-08 2023-06-21 財團法人工業技術研究院 加工路徑的閃避方法及加工系統
CN117057055A (zh) * 2023-07-19 2023-11-14 湖北工业大学 基于虚拟运行轨迹的缆机碰撞概率演化分析方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4843691A (en) * 1986-10-03 1989-07-04 Index-Werke Komm.-Ges. Hahn & Tessky Lathe
WO2007012351A1 (de) * 2005-07-28 2007-02-01 Klingelnberg Gmbh Universalmaschine zur weichbearbeitung von kegelrädern und entsprechendes verfahren
TW201007402A (en) * 2008-08-15 2010-02-16 Ren An Information Technology Co Ltd Sychronous dynamic interference verification method for CNC machines and computer program product of the same
CN104871100A (zh) * 2013-02-26 2015-08-26 三菱重工业株式会社 机床的碰撞避免系统
CN106127845A (zh) * 2016-06-28 2016-11-16 同济大学 车铣复合加工中心在线防碰撞系统部件模型位姿变换方法

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4489377A (en) * 1982-09-07 1984-12-18 General Electric Company Method for preventing machine component interference
JPS60247421A (ja) * 1984-05-24 1985-12-07 Fanuc Ltd タレツトパンチプレス用数値制御におけるワ−クホルダと工具との衝突防止装置
DE4443669A1 (de) * 1994-12-08 1996-06-13 Index Werke Kg Hahn & Tessky Verfahren und Einrichtung zum Überwachen der Bewegung eines Maschinenbauteils
US6678582B2 (en) 2002-05-30 2004-01-13 Kuka Roboter Gmbh Method and control device for avoiding collisions between cooperating robots
AT502286B1 (de) 2004-09-15 2008-09-15 Wfl Millturn Tech Gmbh & Co Kg Verfahren zur kollisionsvermeidung
DE102004062163A1 (de) * 2004-12-20 2006-06-22 Dr. Johannes Heidenhain Gmbh Verfahren zur Ermittlung einer möglichen Kollision mindestens zweier zueinander beweglicher Objekte
CN1796046B (zh) 2004-12-30 2010-05-26 鸿富锦精密工业(深圳)有限公司 数控机床碰撞自动侦测系统
TWI330303B (en) 2004-12-31 2010-09-11 Hon Hai Prec Ind Co Ltd Detector device of numerical control machine
WO2009130759A1 (ja) * 2008-04-22 2009-10-29 三菱電機株式会社 数値制御方法及びその装置
JP4902816B1 (ja) * 2011-01-26 2012-03-21 三菱電機株式会社 数値制御装置
DE102011003374A1 (de) * 2011-01-31 2012-08-02 Deckel Maho Pfronten Gmbh Werkzeugmaschine mit einer Vorrichtung zur Kollisionsüberwachung
EP2515193B1 (de) * 2011-04-18 2014-04-02 Siemens Aktiengesellschaft Verfahren zur Vermeidung einer ungewollten Kollision zwischen einem Werkzeug und einem Werkstück bei einer Werkzeugmaschine
US10109097B2 (en) 2011-08-01 2018-10-23 Autodesk, Inc. Dynamic collision avoidance for crowd simulation over structured paths that intersect at waypoints
ITMI20111868A1 (it) 2011-10-13 2013-04-14 Gima Spa Procedimento per il controllo dell'interferenza e/o collisione d'organi meccanici e sistema connesso
US9465380B2 (en) 2013-08-02 2016-10-11 ICAM Research Corporation Device, system and methods for automatic development and optimization of positioning paths for multi-axis numerically controlled machining
US9216745B2 (en) 2013-09-16 2015-12-22 Disney Enterprises, Inc. Shared control of semi-autonomous vehicles including collision avoidance in multi-agent scenarios
CH709347A2 (de) * 2014-03-10 2015-09-15 Tecan Trading Ag Verfahren zur Wegfindung in einem automatisierten Handhabungssystem sowie Handhabungssystem mit entsprechendem Kontrollmodul zur Wegfindung.
CN104589346A (zh) 2014-12-15 2015-05-06 广西科技大学 一种适用于机械手的无碰撞路径规划方法
EP3292060A4 (en) 2015-05-04 2019-05-08 Mitutoyo Corporation INSPECTION PROGRAM EDITING ENVIRONMENT PROVIDING USER-DEFINED COLLISION AVOIDANCE VOLUMES
CN107486858A (zh) * 2017-08-08 2017-12-19 浙江工业大学 基于RoboDK的多机械臂协同离线编程方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4843691A (en) * 1986-10-03 1989-07-04 Index-Werke Komm.-Ges. Hahn & Tessky Lathe
WO2007012351A1 (de) * 2005-07-28 2007-02-01 Klingelnberg Gmbh Universalmaschine zur weichbearbeitung von kegelrädern und entsprechendes verfahren
TW201007402A (en) * 2008-08-15 2010-02-16 Ren An Information Technology Co Ltd Sychronous dynamic interference verification method for CNC machines and computer program product of the same
CN104871100A (zh) * 2013-02-26 2015-08-26 三菱重工业株式会社 机床的碰撞避免系统
CN106127845A (zh) * 2016-06-28 2016-11-16 同济大学 车铣复合加工中心在线防碰撞系统部件模型位姿变换方法

Also Published As

Publication number Publication date
US20190219984A1 (en) 2019-07-18
TW201929997A (zh) 2019-08-01
CN110026820B (zh) 2020-04-10
US10509391B2 (en) 2019-12-17
CN110026820A (zh) 2019-07-19

Similar Documents

Publication Publication Date Title
TWI656942B (zh) 工具機防碰撞方法及工具機防碰撞系統
JP6157781B1 (ja) 工具経路修正装置および工具経路修正方法
JP5139230B2 (ja) 数値制御装置における衝突防止装置
CN110874082B (zh) 工件拐角的切割路径确定方法、设备和存储介质
CN109968377A (zh) 机器人控制系统和控制机器人的方法
CN108037737B (zh) 快速响应的点到点s形速度规划方法
US10048675B2 (en) Numerical controller performing 3-dimensional interference check corresponding to feedrate change
US20140114464A1 (en) System and method for remotely positioning an end effector
CN107850885B (zh) 用于非生产时间运动的轨迹确定方法
US11305429B2 (en) Synchronization of multiple robots
CN106647636B (zh) 进行基于曲率和曲率变化量的速度控制的数值控制装置
CN110644128B (zh) 手套机机头控制方法、装置、设备及存储介质
JP7500947B2 (ja) 干渉評価装置、方法、及びプログラム
TWI716849B (zh) 預先檢測加工路徑碰撞方法及系統
US9869990B1 (en) Automatic positioning movement calculator
US10877457B2 (en) Method for providing a travel profile, control device, machine, and computer program
JP7384602B2 (ja) ロボット制御装置
JP2014235524A5 (zh)
JP2017033593A5 (zh)
US10754321B2 (en) Automatic quality evaluation for a sequence of movement commands
JP5382419B2 (ja) 原点サーチ支援装置及びプログラム
KR102294975B1 (ko) 공구 경로 생성 장치 및 공구 경로 생성 방법
Kaneko et al. Fast cutter workpiece engagement estimation method for prediction of instantaneous cutting force in continuous multi-axis controlled machining
JP7342457B2 (ja) ロボット制御装置、ロボット制御方法、及び、ロボット制御プログラム
TWI831648B (zh) 電腦數值控制車床之預測加工時間方法