TWI647553B - Multi-machine synchronous cooperative control method and system - Google Patents
Multi-machine synchronous cooperative control method and system Download PDFInfo
- Publication number
- TWI647553B TWI647553B TW107101966A TW107101966A TWI647553B TW I647553 B TWI647553 B TW I647553B TW 107101966 A TW107101966 A TW 107101966A TW 107101966 A TW107101966 A TW 107101966A TW I647553 B TWI647553 B TW I647553B
- Authority
- TW
- Taiwan
- Prior art keywords
- master
- slave
- robot
- data
- synchronization
- Prior art date
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1682—Dual arm manipulator; Coordination of several manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1669—Programme controls characterised by programming, planning systems for manipulators characterised by special application, e.g. multi-arm co-operation, assembly, grasping
Abstract
所提供的一種多機同步協同控制方法及系統中,於每一通訊循環週期內,一主站控制器根據已接收到來自一個或多個從站控制器的從站循環資料及所建立的主站循環資料,更新相關於前一個通訊循環週期內的主導機器人資料,並根據更新的主導機器人資料更新該主站循環資料及所有從站循環資料,並且將對應的更新從站循環資料經由現場總線傳送至每一從站控制器,以致該主站控制器/每一從站控制器能根據該更新主站循環資料/該對應更新從站循環資料產生一個或多個控制所連接的一個或多個機器人在同步協同下操作的驅動信號。
Description
本發明是有關於多個機器人的控制,特別是指一種多機同步協同控制方法及系統。
圖13繪示了如美國專利US 6,330,493所揭露的一種現有用於多機同步協同控制的控制系統。此現有控制系統包含四個彼此以一通訊線L連接且分別控制四個機器人的控制器311~314,其中至少一者作為主機器人控制器並用於控制至少一個選自四個機器人321~324的主機器人,並且其中至少另外一者作為從機器人控器並用於控制至少一個選自其他機器人的從機器人。該主機器人控制器將關於該主機器人的教導點及插補點的位置的資料經由該通訊線傳送至每個從機器人控制器,以使得每個從機器人控制器根據接收自該主機器人控制器的資料,控制它的從機器人來執行與該主機器人的協同操作。
然而,在此一對一控制的配置下,若將此控制系統應用來控制一擴充的多機系統,例如具有五個或更多個機器人的多機系統時,不僅在硬體上有必要增加額外的控制器,而且對於互相連接所有控制器的通訊線恐增加在連接時複雜性。
有鑑於此,對於一相對複雜的多機系統,特別是含有多個工作站的多機系統,如何兼顧所有工作站在傳輸控制指令上的同步性,以及所有工作站所控制的所有機器人彼此的同步協同操作遂成為一重要課題。
因此,本發明的目的,即在提供一種多機同步協同控制方法及系統,其能克服習知技藝的缺點。
於是,本發明所提供的一種多機同步協同控制方法係藉由一多機同步協同控制系統來實施。該多機同步協同控制系統包含一主站控制器、及連接該主站控制器的第一從站控制器至第N從站控制器,其中N≧1,該主站控制器電連接且控制P
0個機器人,以及該第i從站控制器電連接且控制另外的P
i個機器人,其中i=1,2,…,N且P=P
0+P
1+…+P
N,受控於該控制系統的每一個機器人在作用上可為相關於同步協同的主導機器人與從動機器人、及獨立機器人其中之一者。該多機同步協同操作的控制方法,於每一個通訊循環週期中,包含以下步驟:
(A)藉由該主站控制器,在接收到分別來自該第一從站控制器至該第N從站控制器且相關於同步協同的第一從站循環資料至第N從站循環資料後,根據該P0個機器人的當前同步情況,建立相關於同步協同的主站循環資料,其中該第i從站循環資料(i=1,2,…,N)係相關於該Pi個機器人的一當前同步情況並且至少包含一個或多個同步指令,且該主站循環資料至少包含一個或多個同步指令;
(B)藉由該主站控制器,根據該主站循環資料以及該第一從站循環資料至該第N從站循環資料,將相關於前一個通訊循環週期內該多機同步協同控制系統所控制的所有主導機器人的主導機器人資料更新,該主導機器人資料,對於每一主導機器人,包含唯一指派給該主導機器人的識別碼、與該主導機器人協同的從動機器人的預定數量、該主導機器人的同步狀態、及與該主導機器人協同並已受該同步狀態所對應的控制指令控制的從動機器人的累積數量;
(C)藉由該主站控制器,根據更新的該主導機器人資料、該主站循環資料以及該第一從站循環資料至該第N從站循環資料,獲得分別對應於該主站控制器及該第一從站控制器至該第N從站控制器的更新主站循環資料以及第一更新從站循環資料至第N更新從站循環資料;
(D)藉由該主站控制器,將該第一更新從站循環資料至該第N更新從站循環資料分別傳送至該第一從站控制器至該第N從站控制器;
(E)藉由該主站控制器,根據該更新主站循環資料,更新該P
0個機器人的該當前同步情況以獲得的一更新同步情況,並且根據該更新主站循環資料及該P
0個機器人的該更新同步情況,產生P
0個分別用來控制該P
0個機器人的控制指令且輸出P
0個分別對應於該P
0個控制指令的驅動信號分別至連接於該主站控制器的該P
0個機器人,以致該P
0個機器人係分別受控於該P
0個驅動信號在同步協同下操作;及
(F)藉由該第i從站控制器(i=1,2,…,N),在接收到來自該主站控制器的該第i更新從站循環資料時,根據該第i更新從站循環資料,更新該P
i個機器人的該當前同步情況以獲得一更新同步情況,並且根據該第i更新從站循環資料及該P
i個機器人的該更新同步情況,產生P
i個分別用來控制該P
i個機器人的控制指令且輸出P
i個分別對應於該P
i個控制指令的驅動信號分別至連接於該第i從站控制器的該P
i個機器人,以致該P
i個機器人係分別受控於該P
i個驅動信號在同步協同下操作。
於是,本發明所提供的一種多機同步協同控制系統係適於控制P個機器人,該等P個機器人其中每一者在作用上可為相關於同步協同的主導機器人與從動機器人、及獨立機器人其中之一者。該多機同步協同控制系統包含一主站控制器、第一從站控制器至第N從站控制器、及一現場總線,其中N≧1。該主站控制器係用來電連接且控制該等P個機器人中的P
0個機器人,而該第i從站控制器係用來電連接且控制該等P個機器人中的其他P
i個機器人,其中i=1,2,…,N且P=P
0+P
1+…+P
N。該現場總線電連接該主站控制器以及該第一從站控制器至該第N從站控制器,並建立該主站控制器與該第一從站控制器至該第N從站控制器其中每一者的電連接。
該主站控制器/該第i從站控制器(i=1,2,…,N)包括一記憶體模組、一電連接該現場總線的現場總線模組、一電連接該記憶體模組及該現場總線模組的處理單元、及一電連接該處理單元及該P
0個機器人/該P
i個機器人的驅動單元。
該主站控制器的該記憶體模組已儲存有相關於前一個通訊循環週期內該多機同步協同控制系統所控制的所有主導機器人的主導機器人資料。該主導機器人資料,對於每一主導機器人,包含唯一指派給該主導機器人的識別碼、與該主導機器人協同的從動機器人的預定數量、該主導機器人的同步狀態、及與該主導機器人協同並已受該同步狀態所對應的控制指令控制的從動機器人的累積數量。
於每一個通訊循環週期中,對於該主站控制器,當該處理單元經由該現場總線模組接收到分別來自該第一從站控制器至該第N從站控制器且相關於同步協同的第一從站循環資料至第N從站循環資料時,其中該第i從站循環資料(i=1,2,…,N)係相關於該Pi個機器人的一當前同步情況並且至少包含一個或多個同步指令,該處理單元將所接收的該第一從站循環資料至該第N從站循環資料儲存於該記憶體模組,且根據該P
0個機器人的該當前同步情況,建立相關於同步協同的主站循環資料,並將該主站循環資料儲存於該記憶體模組,其中該主站循環資料至少包含一個或多個同步指令。該處理單元根據儲存於該記憶體模組的該主站循環資料以及該第一從站循環資料至該第N從站循環資料,將儲存於該記憶體模組該主導機器人資料更新。該處理單元根據該記憶體模組所儲存的更新的該主導機器人資料、該主站循環資料以及該第一從站循環資料至該第N從站循環資料,獲得分別對應於該主站控制器及該第一從站控制器至該第N從站控制器的更新主站循環資料以及第一更新從站循環資料至第N更新從站循環資料,且將該更新主站循環資料以及該第一更新從站循環資料至該第N更新從站循環資料,以覆蓋該主站循環資料以及該第一從站循環資料至該第N從站循環資料的方式,儲存於該記憶體模組,而且藉由該現場總線模組,將該第一更新從站循環資料至該第N更新從站循環資料經由該現場總線分別傳送至該第一從站控制器至該第N從站控制器。該處理單元根據該記憶體模組所儲存的該更新主站循環資料,更新該P
0個機器人的該當前同步情況以獲得一更新同步情況,並且根據該更新主站循環資料及該P
0個機器人的該更新同步情況,產生P
0個分別用來控制該P
0個機器人的控制指令且將該P
0個控制指令輸出至該驅動單元。該驅動單元將來自於該處理單元的該P
0個控制指令分別轉換成對應的P
0個驅動信號,並將該P
0個驅動信號分別輸出至其所連接的該P0
0個機器人,以致該P
0個機器人係分別受控於該P
0個驅動信號在同步協同下操作。
於每一個通訊循環週期中,對於該第i從站控制器(i=1,2,…,N),當該處理單元藉由該現場總線模組接收到來自該主站控制器的該第i更新從站循環資料時,該處理單元將所接收的該第i更新從站循環資料儲存於該記憶體模組,且根據該第i更新從站循環資料,更新該P
i個機器人的該當前同步情況以獲得一更新同步情況,並且根據該第i更新從站循環資料及該P
i個機器人的該更新同步情況,產生P
i個分別用來控制該P
i個機器人的控制指令且將該P
i個控制指令輸出至該驅動單元。該驅動單元將來自於該處理單元的該P
i個控制指令分別轉換成對應的P
i個驅動信號,並將該P
i個驅動信號分別輸出至其所連接的該P
i個機器人,以致該P
i個機器人係分別受控於該P
i個驅動信號在同步協同下操作。
本發明功效在於:由於該主站控制器能週期性地蒐集來自所有從站控制器的從站循環資料,以便產生更新主站循環資料及所有更新從站循環資料,並在每一通訊循環週期內即時地將相關於同步協同的更新從站循環資料經由該現場總線傳送至每一從站控制器,以致該主站控制器及從站控制器分別依據該更新主站循環資料及更新從站循環資料來控制所有機器人彼此的同步協同操作。
在本發明被詳細描述之前,應當注意在以下的說明內容中,類似的元件是以相同的編號來表示。
參閱圖1,本發明多機同步協同控制系統100係適於控制P個機器人201-207(例如P=7),該等P個機器人201-207其中每一者在作用上可為相關於同步協同的主導機器人與從動機器人、及獨立機器人其中之一者,並可被實施成一所欲的可驅動機構,例如一機器手臂、一線性軸、一旋轉台、一變位機等。該多機同步協同控制系統100包含一主站控制器10、N個從站控制器20(例如N=3,以下亦分別稱作第一從站控制器至第三從站控制器)、及一現場總線30。該主站控制器10係用來電連接且控制該等P個機器人中的P
0個機器人201(例如P
0=1),該第一從站控制器20係用來電連接且控制該等P個機器人中的其他P
1個機器人202-203(例如P
1=2),該第二從站控制器20係用來電連接且控制該等P個機器人中的其他P
2個機器人204-206(例如P
2=3),且該第三從站控制器20係用來電連接且控制該等P個機器人中的其他P
3個機器人207(例如P
3=1)。值得注意的是,在本實施例中,前述對於P,N,P
0,P
1,P
2及P
3在符合P=P
0+P
1+P
2+P
3之條件下所舉的例子僅為了方便說明實際使用情況,但不以此限為限。該現場總線30電連接該主站控制器10以及該第一從站控制器20至該第三從站控制器20,並建立該主站控制器10與該第一從站控制器20至該第三從站控制器20其中每一者的電連接。在本實施例中,該主站控制器10與該第一從站控制器20至該第三從站控制器20係藉由該現場總線30例如以一菊鏈方式串接,但不在此限。
更參閱圖2,該主站控制器10包括一記憶體模組1、一電連接該現場總線30的現場總線模組2、一電連接該記憶體模組1及該現場總線模組2的處理單元3、及一電連接該處理單元3及該機器人201的驅動單元4。在本實施例中,該記憶體模組1包含一作為緩衝區的第一儲存區11、及一第二儲存區12。該第二儲存區12已儲存有相關於前一個通訊循環週期內該多機同步協同控制系統100所控制的所有主導機器人的主導機器人資料。該主導機器人資料,對於每一主導機器人,例如包含唯一指派給該主導機器人的識別碼、與該主導機器人協同的從動機器人的預定數量、該主導機器人的同步狀態、及與該主導機器人協同並已受該同步狀態所對應的控制指令控制的從動機器人的累積數量。該處理單元3包含一運動插補指令產生模組31及一插補補償指令產生模組32。
該第一從站控制器20至該第三從站控制器20其中每一者具有相似於該主站控制器10的組成,也就是包括一記憶體模組1、一電連接該現場總線30的現場總線模組2、一電連接該記憶體模組1及該現場總線模組2的處理單元3、及一電連接該處理單元3的驅動單元4,如圖2所示。不同之處在於,該第一從站控制器20的該驅動單元4電連接該等機器人202-203,該第二從站控制器20的該驅動單元4電連接該等機器人204-206,且該第三從站控制器20的該驅動單元4電連接該機器人207(圖1)。
以下,將參閱圖1至3來說明該實施例於每一通訊循環週期中如何執行一多機同步協同控制程序。該多機同步協同控制程序包含以下步驟S31-S38。
首先,在步驟S31中,對於該主站控制器10,該處理單元3藉由該現場總線模組2,將一資料請求經由該現場總線30同時傳送至該第一從站控制器20至該第三從站控制器20。
然後,在步驟S32中,對於該第i從站控制器(i=1,2,…,3),當處理單元3藉由該現場總線模組2接收到來自該主站控制器10的該資料請求時,該處理單元3回應於該資料請求地根據該P
i個機器人的一當前同步情況建立相關於同步協同的第i從站循環資料BUFsi,並藉由該現場總線模組2將該第i從站循環資料經由該現場總線30傳送至該主站控制器10。在本實施例中,該第i從站循環資料(i=1,2,…,3)係相關於該Pi個機器人的該當前同步情況並且至少包含一個或多個同步指令。舉例來說,該(等)同步指令可為一等待同步開始指令、一等待同步結束指令、一同步中指令、一完成同步開始指令及一完成同步結束指令其中至少一者。
更明確地,對於該Pi個機器人(i=1,2,…,3)的該當前同步情況指示出每一個機器人201-207當前的作用為主導機器人、從動機器人或獨立機器人,以及相關於同步協同的每一個機器人(也就是主導機器人或從動機器人)當前的同步狀態。舉例來說,該同步狀態可為等待同步開始狀態、同步中狀態及等待同步結束狀態其中一者。以下,將詳細說明於步驟S32中該第i從站控制器20如何根據該Pi個機器人(i=1,2,…,3)(也就是該等機器人202-203,該等機器人204-206、及該機器人207)的該當前同步情況來建立該第i從站循環資料BUFsi。
當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於主導機器人及等待同步開始狀態時,該第i從站循環資料BUFsi所包含的該(等)同步指令存在有一主導機器人的等待同步開始指令,並且該第i從站循環資料BUFsi還包含一唯一指派給該主導機器人的識別碼、協同於該主導機器人的從動機器人的預定數量、及一指示出該主導機器人的當前位置的位置座標。
當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於主導機器人及同步中狀態時,該第i從站循環資料BUFsi還包含一指示出該主導機器人的當前位置的位置座標。
當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於主導機器人及等待同步結束狀態時,該第i從站循環資料BUFsi所包含的該(等)同步指令存在有一主導機器人的等待同步結束指令,並且該第i從站循環資料BUFsi還包含一唯一指派給該主導機器人的識別碼、協同於該主導機器人的從動機器人的預定數量、及指示出該主導機器人的當前位置的位置座標。
當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於從動機器人及等待同步開始狀態時,該第i從站循環資料BUFsi所包含的該(等)同步指令存在有一從動機器人的等待同步開始指令,並且該第i從站循環資料BUFsi還包含一唯一指派給一協同於該從動機器人的主導機器人的識別碼。
當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於從動機器人及同步中狀態時,該第i從站循環資料BUFsi所包含的該(等)同步指令存在有一從動機器人的同步中指令,並且該第i從站循環資料BUFsi還包含一唯一指派給一協同於該從動機器人的主導機器人的識別碼。
當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於從動機器人及等待同步結束狀態時,該第i從站循環資料BUFsi所包含的該(等)同步指令存在有一從動機器人的等待同步結束指令,並且該第i從站循環資料BUFsi還包含一唯一指派給一協同於該從動機器人的主導機器人的識別碼。
於是,該第一從站控制器20、該第二從站控制器20及該第三從站控制器,於步驟S32,分別建立出該第一從站循環資料BUFs1、該第二從站循環資料BUFs2及該第三從站循環資料BUFs3。
之後,於步驟S33中,對於該主站控制器10,當該處理單元3經由該現場總線模組2接收到分別來自該第一從站控制器20至該第三從站控制器20的該第一從站循環資料BUFs1、該第二從站循環資料BUFs2及該第三從站循環資料BUFs3時,該處理單元3將所接收的該第一從站循環資料BUFs1、該第二從站循環資料BUFs2及該第三從站循環資料BUFs3儲存於該記憶體模組1的該第一儲存區11,且根據該P
0個機器人(也就是該機器人201)的該當前同步情況,建立相關於同步協同的主站循環資料BUFm,並將該主站循環資料BUFm儲存於該記憶體模組1的該第一儲存區11。在本實施例中,由於P
0=1,該主站循環資料BUFm包含最多一個同步指令。值得注意的是,該主站控制器10的該處理單元3可以相同於該等從站控制器20的上述方式來建立該主站循環資料BUFm。更明確地,當該當前同步情況指示出該機器人201當前的作用及同步狀態分別為主導機器人及等待同步開始狀態時,該主站循環資料BUFm包含一主導機器人的等待同步開始指令作為該同步指令,並且該主站循環資料BUFm還包含一唯一指派給該主導機器人201的識別碼、協同於該主導機器人的從動機器人的預定數量、及一指示出該主導機器人的當前位置的位置座標。當該當前同步情況指示出該機器人201當前的作用及同步狀態分別為主導機器人及同步中狀態時,在此情況下,該主站循環資料BUFm僅包含一指示出該主導機器人201的當前位置的位置座標。當該當前同步情況指示出該機器人201當前的作用及同步狀態分別為主導機器人及等待同步結束狀態時,該主站循環資料BUFm包含一主導機器人的等待同步結束指令作為該同步指令,並且該主站循環資料BUFm還包含一唯一指派給該主導機器人201的識別碼、協同於該主導機器人201的從動機器人的預定數量、及指示出該主導機器人的當前位置的位置座標。當該當前同步情況指示出該機器人201當前的作用及同步狀態分別為從動機器人及等待同步開始狀態時,該主站循環資料BUFm包含一從動機器人的等待同步開始指令作為該同步指令,並且該主站循環資料BUFm還包含一唯一指派給一協同於該從動機器人201的主導機器人的識別碼。當該當前同步情況指示出該機器人201當前的作用及同步狀態分別為從動機器人及同步中狀態時,該主站循環資料BUFm包含一從動機器人的同步中指令作為該同步指令,並且該主站循環資料BUFm還包含一唯一指派給一協同於該從動機器人201的主導機器人的識別碼。當該當前同步情況指示出該機器人201當前的作用及同步狀態分別為從動機器人及等待同步結束狀態時,該主站循環資料BUFm包含一從動機器人的等待同步結束指令作為該同步指令,並且該主站循環資料BUFm還包含一唯一指派給一協同於該從動機器人201的主導機器人的識別碼。
接著,在步驟S34中,對於該主站控制器10,該處理單元3根據儲存於該記憶體模組1的該第一儲存區11的該主站循環資料BUFm以及該第一從站循環資料至該第三從站循環資料BUFs1-BUFs3,將儲存於該記憶體模組1的該第二儲存區12的該主導機器人資料更新。在本實施例中,該主站控制器10先決定出該主站循環資料BUFm以及該第一從站循環資料至該第三從站循環資料BUFs1-BUFs3其中每一者所含的每一同步指令是否相符於一主導機器人的等待同步開始指令、一主導機器人的等待同步結束指令、一從動機器人的等待同步開始指令及一從動機器人的等待同步結束指令其中一者,再根據實際情況進行對應的處理程序。以下將詳細說明該主站控制器10的該處理單元3如何根據實際情況來進行相關的處理程序,以便更新該主導機器人資料。
當該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,…,3)存在有一主導機器人的等待同步開始指令(情況1)時,該主站控制器10的該處理單元3執行一第一處理程序B1。當該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,…,3)存在有一主導機器人的等待同步結束指令(情況2)時,該主站控制器10的該處理單元3執行一第二處理程序B2。當該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,…,3)存在有一從動機器人的等待同步開始指令(情況3)時,該主站控制器10的該處理單元3執行一第三處理程序B3。當該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,…,3)存在有一從動機器人的等待同步結束指令(情況4)時,該主站控制器10的該處理單元3執行一第四處理程序B4。
參閱圖2及圖4,說明該主站控制器10的該處理單元3如何執行該第一處理程序B1,該第一處理程序B1包含以下步驟。該處理單元3判定該記憶體模組1的該第二儲存區12所儲存的該主導機器人資料是否含有該主導機器人的該識別碼(步驟S41)。若判定結果為肯定時,流程進行步驟S42,否則,流程進行步驟S43。於步驟S42,該處理單元3判定該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態是否符合於等待同步開始狀態。若判定結果為肯定時,流程進行步驟S44,否則,流程進行步驟S45。於步驟S43,該處理單元3(在判定出該主導機器人資料不含有該主導機器人的該識別碼時)藉由將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,…,3)所包含的該主導機器人的該識別碼、協同於該主導機器人的從動機器人的該預定數量、作為該主導機器人的同步狀態的該等待同步開始狀態、及協同於該主導機器人且受該等待同步開始指令控制的從動機器人並被設定為0的累積數量新增到該主導機器人資料的方式來更新該主導機器人資料。於步驟S44,該處理單元3將該主導機器人資料中協同於指派有該識別碼的該主導機器人的從動機器人的該預定數量、及協同於指派有該識別碼的該主導機器人且受該等待同步開始指令控制的從動機器人的該累積數量保持不變。於步驟S45,該處理單元3(在判定出該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態不符合於等待同步開始狀態時)發出警告通知。
參閱圖2及圖5,說明該主站控制器10的該處理單元3如何執行該第二處理程序B2,該第二處理程序B2包含以下步驟。該處理單元3判定該記憶體模組1的該第二儲存區12所儲存的該主導機器人資料是否含有該主導機器人的該識別碼(步驟S51)。若判定結果為肯定時,流程進行步驟S52,否則,流程進行步驟S53。於步驟S52,該處理單元3判定該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態是否符合於等待同步結束狀態。若判定結果為肯定時,流程進行步驟S54,否則,流程進行步驟S55。於步驟S53,該處理單元3(在判定出該主導機器人資料不含有該主導機器人的該識別碼時)藉由將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所包含的該主導機器人的該識別碼、協同於該主導機器人的從動機器人的該預定數量、作為該主導機器人的同步狀態的該等待同步結束狀態、及協同於該主導機器人且受該等待同步結束指令控制的從動機器人並被設定為0的累積數量新增到該主導機器人資料的方式來更新該主導機器人資料。於步驟S54,該處理單元3將該主導機器人資料中協同於指派有該識別碼的該主導機器人的從動機器人的該預定數量、及協同於指派有該識別碼的該主導機器人且受該等待同步結束指令控制的從動機器人的該累積數量保持不變。於步驟S55,該處理單元3(在判定出該主
導機器人資料中指派有該識別碼的該主導機器人的該同步狀態不符合於等待同步結束狀態時)發出警告通知。
參閱圖2及圖6,說明該主站控制器10的該處理單元3如何執行該第三處理程序B3,該第三處理程序B3包含以下步驟。該處理單元3判定該記憶體模組1的該第二儲存區12所儲存的該主導機器人資料是否含有協同於該從動機器人的該主導機器人的該識別碼(步驟S61)。若判定結果為肯定時,流程進行步驟S62,否則,流程進行步驟S63。於步驟S62,該處理單元3判定該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態是否符合於等待同步開始狀態。若判定結果為肯定時,流程進行步驟S64,否則,流程進行步驟S65。於步驟S63,該處理單元3(在判定出該主導機器人資料不含有協同於該從動機器人的該主導機器人的該識別碼時)藉由將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所包含的該主導機器人的該識別碼、協同於該主導機器人的從動機器人的該預定數量、作為該主導機器人的同步狀態的該等待同步開始狀態、及協同於該主導機器人且受該等待同步開始指令控制的從動機器人並被設定為1的累積數量新增到該主導機器人資料的方式來更新該主導機器人資料。於步驟S64,該處理單元3藉由將該主導機器人資料中協同於指派有該識別碼的該主導機器人且受該等待同步開始指令控制的從動機器人的該累積數
量加1的方式來更新該主導機器人資料。於步驟S65,該處理單元3(在判定出該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態不符合於等待同步開始狀態時)發出警告通知。
參閱圖2及圖7,說明該主站控制器10的該處理單元3如何執行該第四處理程序B4,該第四處理程序B4包含以下步驟。該處理單元3判定該記憶體模組1的該第二儲存區12所儲存的該主導機器人資料是否含有協同於該從動機器人的該主導機器人的該識別碼(步驟S71)。若判定結果為肯定時,流程進行步驟S72,否則,流程進行步驟S73。於步驟S72,該處理單元3判定該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態是否符合於等待同步結束狀態。若判定結果為肯定時,流程進行步驟S74,否則,流程進行步驟S75。於步驟S73,該處理單元3(在判定出該主導機器人資料不含有協同於該從動機器人的該主導機器人的該識別碼時)藉由將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所包含的該主導機器人的該識別碼、協同於該主導機器人的從動機器人的該預定數量、作為該主導機器人的同步狀態的該等待同步結束狀態、及協同於該主導機器人且受該等待同步結束指令控制的從動機器人並被設定為1的累積數量新增到該主導機器人資料的方式來更新該主導機器人資料。於步驟S74,該處理單元3藉由將該主導機器人資料中協同於指派有該識別碼的該主
導機器人且受該等待同步結束指令控制的從動機器人的該累積數量加1的方式來更新該主導機器人資料。於步驟S75,該處理單元3(在判定出該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態不符合於等待同步結束狀態時)發出警告通知。
此外,於步驟S34,對於該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3),該處理單元3依照上述處理程序B1-B4處理完每一同步指令後,若該主站循環資料BUFm/該第i從站循環資料BUFsi含有指示出主導機器人的當前位置的位置座標,該處理單元3還將該主站循環資料BUFm/該第i從站循環資料BUFsi所含的所有主導機器人的位置座標轉移至該主導機器人資料。也就是說,在此情況下,該主站循環資料BUFm/該第i從站循環資料BUFsi所含有的該位置座標已被清除。
接著,於步驟S35,對於該主站控制器10,該處理單元3根據該記憶體模組1的該第二儲存區12所儲存且已更新的該主導機器人資料來更新該第一儲存區11所儲存的該主站循環資料BUFm以及該第一從站循環資料至該第三從站循環資料BUFs1-BUFs3,以獲得分別對應於該主站控制器10及該第一從站控制器20至該第三從站控制器20的更新主站循環資料BUFm’以及第一更新從站循環資料至第三更新從站循環資料BUFs1’-BUFs3’,且將該更新主站循環資料BUFm’以及該第一更新從站循環資料至該第N更新從
站循環資料BUFs1’-BUFs3’,以覆蓋於該主站循環資料以及該第一從站循環資料至該第N從站循環資料的方式(即複寫方式),儲存於該記憶體模組1的該第一儲存區11。在本實施例中,將視該主站循環資料BUFm以及該第一從站循環資料至該第三從站循環資料BUFs1-BUFs3其中每一者所含的每一同步指令的實際情況,並結合更新的該主導機器人資料來進行的對應的處理程序。以下將詳細說明該主站控制器10的該處理單元3如何根據實際情況來進行相關的處理程序,以便更新該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)。
當該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)存在有上述情況1時,該主站控制器10的該處理單元3執行一第五處理程序B5。當該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)存在有上述情況2時,該處理單元3執行一第六處理程序B6。當該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)存在有上述情況3時,該處理單元3執行一第七處理程序B7。當該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)存在有上述情況4時,該處理單元3執行一第八處理程序B8。當該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)存在有一從動機器人的同步中指令(情況5)時,該處理單元3執行一第九處理程序B9。
參閱圖2及圖8,說明該主站控制器10的該處理單元3如何執行該第五處理程序B5,該第五處理程序B5包含以下步驟。該處理單元3判定(更新的)該主導機器人資料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量是否彼此相同(步驟S81)。若判定結果為肯定時,流程進行步驟S82,否則流程進行步驟S83。於步驟S82,該處理單元3(在判定出該主導機器人資料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量彼此相同時)將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所包含的該主導機器人的該等待同步開始指令更新為一完成同步開始指令。於步驟S83,該處理單元82(在判定出該主導機器人資料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量彼此不同時)將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所含的該主導機器人的該等待同步開始指令保持不變。
參閱圖2及圖9,說明該主站控制器10的該處理單元3如何執行該第六處理程序B6,該第六處理程序B6包含以下步驟。該處理單元3判定(更新的)該主導機器人資料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量是否彼此相同(步驟S91)。若判定結果為肯定時,流程進行步驟S92,否則,流程進行步驟S93。於步驟S92,該處理單元3(在判定出該主導機器人資
料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量彼此相同時)將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所包含的該主導機器人的該等待同步結束指令更新為一完成同步結束指令。於步驟S93,該處理單元3(在判定出該主導機器人資料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量不同時,例如,該預定數量大於該累積數量),將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所含的該主導機器人的該等待同步結束指令保持不變。
參閱圖2及圖10,說明該主站控制器10的該處理單元3如何執行該第七處理程序B7,該第七處理程序B7包含以下步驟。該處理單元3將(更新的)該主導機器人資料所含有且與該從動機器人協同的該主導機器人的該位置座標新增到該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)(步驟S101)。接著,該處理單元3判定該主導機器人資料所含有且對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量是否彼此相同(步驟S102)。若判定結果為肯定,流程進行步驟S103,否則流程進行步驟S104。於步驟S103,該處理單元3(在判定出該主導機器人資料所含有且對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量彼此相同時)將該主
站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所包含的該從動機器人的該等待同步開始指令更新為該完成同步開始指令。於步驟S104,該處理單元3(在判定出該主導機器人資料所含有且對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量彼此不同時,例如,該預定數量大於該累積數量)將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所含的該從動機器人的該等待同步開始指令保持不變。
參閱圖2及圖11,說明該主站控制器10的該處理單元3如何執行該第八處理程序B8,該第八處理程序B8包含以下步驟。該處理單元3將(更新的)該主導機器人資料所含有且與該從動機器人協同的該主導機器人的該位置座標新增到該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)(步驟S111)。接著,該處理單元3判定該主導機器人資料所含有且對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量是否彼此相同(步驟S112)。若判定結果為肯定,流程進行步驟S113,否則流程進行步驟S114。於步驟S113,該處理單元3(在判定出該主導機器人資料所含有且對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量彼此相同時)將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所包含
的該從動機器人的該等待同步結束指令更新為該完成同步結束指令。於步驟S114,該處理單元3(在判定出該主導機器人資料所含有且對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量彼此不同時,例如,該預定數量大於該累積數量)將該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所含的該從動機器人的該等待同步結束指令保持不變。
參閱圖2及圖12,說明該主站控制器10的該處理單元3如何執行該第九處理程序B9,該第九處理程序B9僅包含步驟S121。於步驟S121,該處理單元3將(更新的)該主導機器人資料所含有且與該從動機器人協同的該主導機器人的該位置座標新增到該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)。
於是,於步驟S35,該主站控制器10的該處理單元3,對於該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)所含的所有同步指令,將完成所有相關於上述處理程序B5-B9的更新及/或新增處理後的該主站循環資料BUFm/該第i從站循環資料BUFsi(i=1,2,...,3)作為該更新主站循環資料BUFm’/該第i更新從站循環資料BUFsi’(i=1,2,...,3)。
於步驟S36,對於該主站控制器10,該處理單元3藉由該現場總線模組2,將該第一更新從站循環資料至該第三更新從站循
環資料BUFs1’-BUFs3’經由該現場總線30分別傳送至該第一從站控制器20至該第三從站控制器20。
在步驟S36之後的步驟S37中,對於該主站控制器10,該處理單元3根據該記憶體模組1的該第一儲存區11所儲存的該更新主站循環資料BUFm’,更新該機器人201的該當前同步情況以獲得一更新同步情況,並且根據該更新主站循環資料BUFm’及該機器人201的該更新同步情況,產生一個用來控制該機器人201的控制指令且將該控制指令輸出至該驅動單元4。該驅動單元4將來自於該處理單元3的該控制指令轉換成一驅動信號,並將該驅動信號輸出至該機器人201,以致該機器人201係受控於該驅動信號在同步協同下操作。
概括地說,在本實施例中,將視該更新主站循環資料BUFm’所含同步指令的實際情況來決定該機器人201的該更新同步情況。以下將詳細說明本實施例中該主站控制器10的該處理單元3如何根據該更新主站循環資料BUFm’獲得該機器人201的更新同步情況。該處理單元3在判定出該更新主站循環資料BUFm’中存在有一主導機器人的完成同步開始指令(情況6)時,將該機器人201的該當前同步情況所指示該主導機器人的該同步狀態更新為同步中狀態。該處理單元3在判定出該更新主站循環資料BUFm’中存在有一主導機器人的完成同步結束指令(情況7)時,將該機器人201
的該當前同步情況所指示的該主導機器人在作用上更新為獨立機器人。該處理單元3在判定出該更新主站循環資料BUFm’中存在有一從動機器人的完成同步開始指令時(情況8),將該機器人201的該當前同步情況中所指示該從動機器人的該同步狀態更新為同步中狀態。該處理單元3在判定出該更新主站循環資料BUFm’中存在有一從動機器人的完成同步結束指令(情況9)時,將該機器人201的該當前同步情況所指示的該從動機器人在作用上更新為獨立機器人。最後,將完成所有更新的該機器人201的該當前同步情況作為該更新同步情況。
值得注意的是,若該機器人201的該更新同步情況指示出該機器人201作用為一獨立機器人或者為一處於同步中狀態的主導機器人時,該運動插補指令產生模組31將經由執行一預定運動規劃程式而獲得一運動插補指令作為控制該機器人201的該控制指令。或者,若該機器人201的該更新同步情況指示出該機器人201作用為一處於同步中狀態的從動機器人時,該插補補償指令產生模組32根據儲存於該第一儲存區11的該更新主站循環資料BUFm’所含有協同於該從動機器人的該主導機器人的位置座標,且利用一預定的位置關係轉換矩陣先計算出的一插補補償指令,然後,再根據該插補補償指令產生一運動插補指令作為控制該機器人201的該控制指令。又或者,若該機器人201的該更新同步情況指示出該機器
人201為一處於等待同步開始狀態的主導機器人(從動機器人)或一處於等待同步結束的主導機器人(從動機器人)時,則該處理單元3產生該等待同步開始指令或該等待同步結束指令做為控制該機器人201的該控制指令。
另一方面,接續在步驟S36後的步驟S38中,於每一個通訊循環週期中,對於該第i從站控制器20(i=1,2,...,N),當該處理單元3藉由該現場總線模組2接收到來自該主站控制器10的該第i更新從站循環資料BUFsi’(i=1,2,...,N)時,該處理單元3將所接收的該第i更新從站循環資料BUFsi’儲存於該記憶體模組1的該第一儲存區11,且根據該第i更新從站循環資料BUFsi’,以及依照相似於步驟S37中該主站控制器10所使用且相關於上述情況5至情況9的判定方式,更新該Pi個機器人(i=1,2,...,N)(也就是,該等機器人202-203/該等機器人204-206/該機器人207)的該當前同步情況以獲得一更新同步情況,並且根據該第i更新從站循環資料BUFsi’及該Pi個機器人的該更新同步情況,以及依照相似於步驟S37中該主站控制器10所使用的處理方式,產生Pi個分別用來控制該Pi個機器人的控制指令且將該Pi個控制指令輸出至該驅動單元4。該驅動單元4將來自於該處理單元3的該Pi個控制指令分別轉換成對應的Pi個驅動信號,並將該Pi個驅動信號分別輸出至其所連接的該Pi個機器人,以致該Pi個機器人係分別受控於該Pi個驅動信號在同步協同
下操作。於是,該第一從站控制器20輸出該兩個驅動信號分別至該等機器人202,203,該第二從站控制器20輸出該三個驅動信號分別至該等機器人204-206,並且該第三從站控制器20輸出該驅動信號至該機器人207。
綜上所述,由於該主站控制器10能週期性地蒐集來自所有從站控制器20的從站循環資料,以便產生更新主站循環資料及所有更新從站循環資料,並在每一通訊循環週期內即時地將相關於同步協同的更新從站循環資料經由該現場總線30傳送至每一從站控制器20,以致該主站控制器10及所有從站控制器20分別依據該更新主站循環資料及所有更新從站循環資料來控制所有機器人彼此的同步協同操作。特別是,即使本發明該多機同步協同控制系統100有必要擴充時,依照上述的多機同步協同程序的運作,仍可確保所有受控機器人能在同步協同下操作。故確實能達成本發明之功效。
惟以上所述者,僅為本發明的實施例而已,當不能以此限定本發明實施的範圍,凡是依本發明申請專利範圍及專利說明書內容所作的簡單的等效變化與修飾,皆仍屬本發明專利涵蓋的範圍內。
100‧‧‧多機同步協同控制系
統
1‧‧‧記憶體模組
10‧‧‧主站控制器
2‧‧‧現場總線模組
3‧‧‧處理單元
31‧‧‧運動插補指令產生模組
32‧‧‧插補補償指令產生模組
4‧‧‧驅動單元
20‧‧‧(第一/二/三/四)從站控制器
30‧‧‧現場總線
201-207‧‧‧機器人
311-314‧‧‧控制器
321-324‧‧‧機器人
11‧‧‧第一儲存區
12‧‧‧第二儲存區
B1-B9‧‧‧第一至第九處理程序
S31-S38‧‧‧步驟
S41-S45‧‧‧步驟
S51-S55‧‧‧步驟
S61-S65‧‧‧步驟
S71-S75‧‧‧步驟
S81-S83‧‧‧步驟
S91-S93‧‧‧步驟
S101-S104‧‧‧步驟
S111-S114‧‧‧步驟
S121‧‧‧步驟
本發明的其他的特徵及功效,將於參照圖式的實施方式中清楚地呈現,其中: 圖1是一方塊示意圖,說明本發明多機同步協同控制系統的一實施例; 圖2是一方塊圖,說明該實施例的一主站控制器/從站控制器的組成; 圖3是一流程圖,說明該實施例於每一通訊循環週期中如何執行一多機同步協同控制程序; 圖4是一流程圖,說明該實施例中該主站控制器於步驟S34所執行的一第一處理程序; 圖5是一流程圖,說明該實施例中該主站控制器於步驟S34所執行的一第二處理程序; 圖6是一流程圖,說明該實施例中該主站控制器於步驟S34所執行的一第三處理程序; 圖7是一流程圖,說明該實施例中該主站控制器於步驟S34所執行的一第四處理程序; 圖8是一流程圖,說明該實施例中該主站控制器於步驟S35所執行的一第五處理程序; 圖9是一流程圖,說明該實施例中該主站控制器於步驟S35所執行的一第六處理程序; 圖10是一流程圖,說明該實施例中該主站控制器於步驟S35所執行的一第七處理程序; 圖11是一流程圖,說明該實施例中該主站控制器於步驟S35所執行的一第八處理程序; 圖12是一流程圖,說明該實施例中該主站控制器於步驟S35所執行的一第九處理程序;及 圖13是一示意圖,繪示一種現有用於多機同步協同控制的控制系統。
Claims (10)
- 一種多機同步協同控制方法,藉由一多機同步協同控制系統來實施,該多機同步協同控制系統包含一主站控制器、及連接該主站控制器的第一從站控制器至第N從站控制器,其中N≧1,該主站控制器電連接且控制P 0個機器人,以及該第i從站控制器電連接且控制另外的P i個機器人,其中i=1,2,…,N且P=P 0+P 1+…+P N,受控於該控制系統的每一個機器人在作用上可為相關於同步協同的主導機器人與從動機器人、及獨立機器人其中之一者,該多機同步協同控制方法,於每一個通訊循環週期中,包含以下步驟: (A)藉由該主站控制器,在接收到分別來自該第一從站控制器至該第N從站控制器且相關於同步協同的第一從站循環資料至第N從站循環資料後,根據該P 0個機器人的當前同步情況,建立相關於同步協同的主站循環資料,其中該第i從站循環資料(i=1,2,…,N)係相關於該P i個機器人的一當前同步情況並且至少包含一個或多個同步指令,且該主站循環資料至少包含一個或多個同步指令; (B)藉由該主站控制器,根據該主站循環資料以及該第一從站循環資料至該第N從站循環資料,將相關於前一個通訊循環週期內該多機同步協同控制系統所控制的所有主導機器人的主導機器人資料更新,該主導機器人資料,對於每一主導機器人,包含唯一指派給該主導機器人的識別碼、與該主導機器人協同的從動機器人的預定數量、該主導機器人的同步狀態、及與該主導機器人協同並已受該同步狀態所對應的控制指令控制的從動機器人的累積數量; (C)藉由該主站控制器,根據更新的該主導機器人資料來更新該主站循環資料以及該第一從站循環資料至該第N從站循環資料,以獲得分別對應於該主站控制器及該第一從站控制器至該第N從站控制器的更新主站循環資料以及第一更新從站循環資料至第N更新從站循環資料; (D)藉由該主站控制器,將該第一更新從站循環資料至該第N更新從站循環資料分別傳送至該第一從站控制器至該第N從站控制器; (E)藉由該主站控制器,根據該更新主站循環資料,更新該P 0個機器人的該當前同步情況以獲得的一更新同步情況,並且根據該更新主站循環資料及該P 0個機器人的該更新同步情況,產生P 0個分別用來控制該P 0個機器人的控制指令且輸出P 0個分別對應於該P 0個控制指令的驅動信號分別至連接於該主站控制器的該P 0個機器人,以致該P 0個機器人係分別受控於該P 0個驅動信號在同步協同下操作;及 (F)藉由該第i從站控制器(i=1,2,…,N),在接收到來自該主站控制器的該第i更新從站循環資料時,根據該第i更新從站循環資料,更新該P i個機器人的該當前同步情況以獲得一更新同步情況,並且根據該第i更新從站循環資料及該P i個機器人的該更新同步情況,產生P i個分別用來控制該P i個機器人的控制指令且輸出P i個分別對應於該P i個控制指令的驅動信號分別至連接於該第i從站控制器的該P i個機器人,以致該P i個機器人係分別受控於該P i個驅動信號在同步協同下操作。
- 如請求項1所述的多機同步協同控制方法,在步驟(A)之前還包含以下步驟: (G)藉由該主站控制器,將一資料請求同時傳送至該第一從站控制器至該第N從站控制器;及 (H)藉由該第i從站控制器(i=1,2,…,N),在接收到來自該主站控制器的該資料請求時,回應於該資料請求地根據該P i個機器人的該當前同步情況建立該第i從站循環資料並將該第i從站循環資料傳送至該主站控制器。
- 如請求項2所述的多機同步協同控制方法,其中,步驟(A)中,對於該P 0個機器人/該P i個機器人(i=1,2,…,N): 該當前同步情況指示出每一個機器人當前的作用為主導機器人、從動機器人或獨立機器人,以及相關於同步協同的每一個機器人當前的同步狀態; 當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於主導機器人及等待同步開始狀態時,該主站循環資料/該第i從站循環資料所包含的該(等)同步指令存在有一主導機器人的等待同步開始指令,並且該主站循環資料/該第i從站循環資料還包含一唯一指派給該主導機器人的識別碼、協同於該主導機器人的從動機器人的預定數量、及一指示出該主導機器人的當前位置的位置座標; 當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於主導機器人及同步中狀態時,該主站循環資料/該第i從站循環資料還包含一指示出該主導機器人的當前位置的位置座標; 當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於主導機器人及等待同步結束狀態時,該主站循環資料/該第i從站循環資料所包含的該(等)同步指令存在有一主導機器人的等待同步結束指令,並且該主站循環資料還包含一唯一指派給該主導機器人的識別碼、協同於該主導機器人的從動機器人的預定數量、及指示出該主導機器人的當前位置的位置座標; 當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於從動機器人及等待同步開始狀態時,該主站循環資料/該第i從站循環資料所包含的該(等)同步指令存在有一從動機器人的等待同步開始指令,並且該主站循環資料/該第i從站循環資料還包含一唯一指派給一協同於該從動機器人的主導機器人的識別碼; 當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於從動機器人及同步中狀態時,該主站循環資料/該第i從站循環資料所包含的該(等)同步指令存在有一從動機器人的同步中指令,並且該主站循環資料/該第i從站循環資料還包含一唯一指派給一協同於該從動機器人的主導機器人的識別碼;及 當該當前同步情況指示有一機器人當前的作用及同步狀態分別符合於從動機器人及等待同步結束狀態時,該主站循環資料/該第i從站循環資料所包含的該(等)同步指令存在有一從動機器人的等待同步結束指令,並且該主站循環資料/該第i從站循環資料還包含一唯一指派給一協同於該從動機器人的主導機器人的識別碼。
- 如請求項3所述的多機同步協同控制方法,其中,在步驟(B)中: 當該主站循環資料/該第i從站循環資料(i=1,2,…,N)存在有一主導機器人的等待同步開始指令時,該主站控制器 在判定出該主導機器人資料不含有該主站循環資料/該第i從站循環資料所包含的該主導機器人的該識別碼時,藉由將該主站循環資料/該第i從站循環資料所包含的該主導機器人的該識別碼、協同於該主導機器人的從動機器人的該預定數量、作為該主導機器人的同步狀態的該等待同步開始狀態、及協同於該主導機器人且受該等待同步開始指令控制的從動機器人並被設定為0的累積數量新增到該主導機器人資料的方式來更新該主導機器人資料,及 在判定出該主導機器人資料含有該主站循環資料/該第i從站循環資料所包含的該主導機器人的該識別碼且該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態符合於等待同步開始狀態時,將該主導機器人資料中協同於指派有該識別碼的該主導機器人的從動機器人的該預定數量、及協同於指派有該識別碼的該主導機器人且受該等待同步開始指令控制的從動機器人的該累積數量保持不變; 當該主站循環資料/該第i從站循環資料存在有一主導機器人的等待同步結束指令時,該主站控制器 在判定出該主導機器人資料不含有該主站循環資料/該第i從站循環資料所包含的該主導機器人的該識別碼時,藉由將該主站循環資料/該第i從站循環資料所包含的該主導機器人的該識別碼、協同於該主導機器人的從動機器人的該預定數量、作為該主導機器人的同步狀態的該等待同步結束狀態、及協同於該主導機器人且受該等待同步結束指令控制的從動機器人並被設定為0的累積數量新增到該主導機器人資料的方式來更新該主導機器人資料,及 在判定出該主導機器人資料含有該主站循環資料/該第i從站循環資料所包含的該主導機器人的該識別碼且該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態符合於等待同步結束狀態時,將該主導機器人資料中協同於指派有該識別碼的該主導機器人的從動機器人的該預定數量、及協同於指派有該識別碼的該主導機器人且受該等待同步結束指令控制的從動機器人的該累積數量保持不變; 當該主站循環資料/該第i從站循環資料存在有一從動機器人的等待同步開始指令時,該主站控制器 在判定出該主導機器人資料不含有該主站循環資料/該第i從站循環資料所包含且協同於該從動機器人的該主導機器人的該識別碼時,藉由將該主站循環資料/該第i從站循環資料所包含的該主導機器人的該識別碼、協同於該主導機器人的從動機器人的該預定數量、作為該主導機器人的同步狀態的該等待同步開始狀態、及協同於該主導機器人且受該等待同步開始指令控制的從動機器人並被設定為1的累積數量新增到該主導機器人資料的方式來更新該主導機器人資料,及 在判定出該主導機器人資料含有該主站循環資料/該第i從站循環資料所包含且協同於該從動機器人的該主導機器人的該識別碼且該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態符合於等待同步開始狀態時,藉由將該主導機器人資料中協同於指派有該識別碼的該主導機器人且受該等待同步開始指令控制的從動機器人的該累積數量加1的方式來更新該主導機器人資料; 當該主站循環資料/該第i從站循環資料存在有一從動機器人的等待同步結束指令時,該主站控制器 在判定出該主導機器人資料不含有該主站循環資料/該第i從站循環資料所包含且協同於該從動機器人的該主導機器人的該識別碼時,藉由將該主站循環資料/該第i從站循環資料所包含的該主導機器人的該識別碼、協同於該主導機器人的從動機器人的該預定數量、作為該主導機器人的同步狀態的該等待同步結束狀態、及協同於該主導機器人且受該等待同步結束指令控制的從動機器人並被設定為1的累積數量新增到該主導機器人資料的方式來更新該主導機器人資料,及 在判定出該主導機器人資料含有該主站循環資料/該第i從站循環資料所包含且協同於該從動機器人的該主導機器人的該識別碼且該主導機器人資料中指派有該識別碼的該主導機器人的該同步狀態符合於等待同步結束狀態時,藉由將該主導機器人資料中協同於指派有該識別碼的該主導機器人且受該等待同步結束指令控制的從動機器人的該累積數量加1的方式來更新該主導機器人資料;及 當該主站循環資料/該第i從站循環資料含有指示出主導機器人的當前位置的位置座標時,該主站控制器還將該主站循環資料/該第i從站循環資料所含的所有主導機器人的位置座標轉移至該主導機器人資料。
- 如請求項4所述的多機同步協同控制方法,其中,在步驟(C)中: 當該主站循環資料/該第i從站循環資料(i=1,2,…,N)存在有一主導機器人的等待同步開始指令時,該主站控制器 在判定出該主導機器人資料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量彼此相同時,將該主站循環資料/該第i從站循環資料所包含的該主導機器人的該等待同步開始指令更新為一完成同步開始指令,及 在判定出該主導機器人資料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量彼此不同時,將該主站循環資料/該第i從站循環資料所含的該主導機器人的該等待同步開始指令保持不變; 當該主站循環資料/該第i從站循環資料存在有一主導機器人的等待同步結束指令時,該主站控制器 在判定出該主導機器人資料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量彼此相同時,將該主站循環資料/該第i從站循環資料所包含的該主導機器人的該等待同步結束指令更新為一完成同步結束指令,及 在判定出該主導機器人資料所含有且對應於該主導機器人的從動機器人的該預定數量與該累積數量彼此不同時,將該主站循環資料/該第i從站循環資料所含的該主導機器人的該等待同步結束指令保持不變; 當該主站循環資料/該第i從站循環資料存在有一從動機器人的等待同步開始指令時,該主站控制器將該主導機器人資料所含有且與該從動機器人協同的該主導機器人的該位置座標新增到該主站循環資料/該第i從站循環資料,並且 在判定出該主導機器人資料所含有且對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量彼此相同時,還將該主站循環資料/該第i從站循環資料所包含的該從動機器人的該等待同步開始指令更新為該完成同步開始指令,及 在判定出該主導機器人資料所含有對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量彼此不同時,將該主站循環資料/該第i從站循環資料所含的該從動機器人的該等待同步開始指令保持不變; 當該主站循環資料/該第i從站循環資料存在有一從動機器人的等待同步結束指令時,該主站控制器將該主導機器人資料所含有且與該從動機器人協同的該主導機器人的該位置座標新增到該主站循環資料/該第i從站循環資料,並且 在判定出該主導機器人資料所含有且對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量彼此相同時,還將該主站循環資料/該第i從站循環資料所包含的該從動機器人的該等待同步結束指令更新為該完成同步結束指令,及 在判定出該主導機器人資料所含有且對應於與該從動機器人協同的該主導機器人的從動機器人的該預定數量與該累積數量彼此不同時,將該主站循環資料/該第i從站循環資料所含的該從動機器人的該等待同步結束指令保持不變; 當該主站循環資料/該第i從站循環資料存在有一從動機器人的同步中指令時,該主站控制器將該主導機器人資料所含有且與該從動機器人協同的該主導機器人的該位置座標新增到該主站循環資料/該第i從站循環資料;及 該主站控制器將完成所有更新及/或新增處理後的該主站循環資料/該第i從站循環資料作為該更新主站循環資料/該第i更新從站循環資料。
- 如請求項5所述的多機同步協同控制方法,其中,在步驟(E)/(F)中,該主站控制器/該第i從站控制器(i=1,2,…,N) 在判定出該更新主站循環資料/該第i更新從站循環資料中存在有一主導機器人的完成同步開始指令時,將該P 0個機器人/該P i個機器人的該當前同步情況所指示該主導機器人的該同步狀態更新為同步中狀態, 在判定出該更新主站循環資料/該第i更新從站循環資料中存在有一主導機器人的完成同步結束指令時,將該P 0個機器人/該P i個機器人的該當前同步情況所指示的該主導機器人在作用上更新為獨立機器人, 在判定出該更新主站循環資料/該第i更新從站循環資料中存在有一從動機器人的完成同步開始指令時,將該P 0個機器人/該P i個機器人的該當前同步情況中所指示該從動機器人的該同步狀態更新為同步中狀態, 在判定出該更新主站循環資料/該第i更新從站循環資料中存在有一從動機器人的完成同步結束指令時,將該P 0個機器人/該P i個機器人的該當前同步情況所指示的該從動機器人在作用上更新為獨立機器人,及 將完成所有更新的該P 0個機器人/該P i個機器人的該當前同步情況作為該更新同步情況。
- 如請求項6所述的多機同步協同控制方法,其中,在步驟(E)/(F)中: 當該更新同步情況指示有一從動機器人且其同步狀態為同步中狀態時,該主站控制器/該第i從站控制器(i=1,2,…,N)根據該更新主站循環資料/該第i更新從站循環資料所含有協同於該從動機器人的該主導機器人的位置座標,產生一運動插補指令作為控制該從動機器人的該控制指令;及 當該P 0個機器人/該P i個機器人的該更新同步情況指示有一主導機器人且其同步狀態為同步中狀態或者指示有一獨立機器人時,該主站控制器/該第i從站控制器(i=1,2,…,N)經由執行一預定運動規劃程式,產生一運動插補指令作為控制該主導機器人或該獨立機器人的該控制指令。
- 一種多機同步協同控制系統,適於控制P個機器人,該等P個機器人其中每一者在作用上可為相關於同步協同的主導機器人與從動機器人、及獨立機器人其中之一者,該多機同步協同控制系統包含: 一主站控制器,用來電連接且控制該等P個機器人中的P 0個機器人; 第一從站控制器至第N從站控制器,其中的第i從站控制器係用來電連接且控制該等P個機器人中的其他P i個機器人,其中N≧1,i=1,2,…,N且P=P 0+P 1+…+P N;及 一現場總線,電連接該主站控制器以及該第一從站控制器至該第N從站控制器,並建立該主站控制器與該第一從站控制器至該第N從站控制器其中每一者的電連接; 該主站控制器/該第i從站控制器(i=1,2,…,N)包括 一記憶體模組, 一現場總線模組,電連接該現場總線, 一處理單元,電連接該記憶體模組及該現場總線模組,及 一驅動單元,電連接該P 0個機器人/該P i個機器人以及該處理單元; 其中,該主站控制器的該記憶體模組已儲存有相關於前一個通訊循環週期內該多機同步協同控制系統所控制的所有主導機器人的主導機器人資料,該主導機器人資料,對於每一主導機器人,包含唯一指派給該主導機器人的識別碼、與該主導機器人協同的從動機器人的預定數量、該主導機器人的同步狀態、及與該主導機器人協同並已受該同步狀態所對應的控制指令控制的從動機器人的累積數量;及 其中,於每一個通訊循環週期中, 對於該主站控制器,當該處理單元經由該現場總線模組接收到分別來自該第一從站控制器至該第N從站控制器且相關於同步協同的第一從站循環資料至第N從站循環資料時,其中該第i從站循環資料(i=1,2,…,N)係相關於該P i個機器人的一當前同步情況並且至少包含一個或多個同步指令, 該處理單元將所接收的該第一從站循環資料至該第N從站循環資料儲存於該記憶體模組,且根據該P 0個機器人的該當前同步情況,建立相關於同步協同的主站循環資料,並將該主站循環資料儲存於該記憶體模組,其中該主站循環資料至少包含一個或多個同步指令, 該處理單元根據儲存於該記憶體模組的該主站循環資料以及該第一從站循環資料至該第N從站循環資料,將儲存於該記憶體模組的該主導機器人資料更新, 該處理單元根據該記憶體模組所儲存且已更新的該主導機器人資料來更新該主站循環資料以及該第一從站循環資料至該第N從站循環資料,以獲得分別對應於該主站控制器及該第一從站控制器至該第N從站控制器的更新主站循環資料以及第一更新從站循環資料至第N更新從站循環資料,且將該更新主站循環資料以及該第一更新從站循環資料至該第N更新從站循環資料,以覆蓋該主站循環資料以及該第一從站循環資料至該第N從站循環資料的方式,儲存於該記憶體模組,而且藉由該現場總線模組,將該第一更新從站循環資料至該第N更新從站循環資料經由該現場總線分別傳送至該第一從站控制器至該第N從站控制器, 該處理單元根據該記憶體模組所儲存的該更新主站循環資料,更新該P 0個機器人的該當前同步情況以獲得一更新同步情況,並且根據該更新主站循環資料及該P 0個機器人的該更新同步情況,產生P 0個分別用來控制該P 0個機器人的控制指令且將該P 0個控制指令輸出至該驅動單元,及 該驅動單元將來自於該處理單元的該P 0個控制指令分別轉換成對應的P 0個驅動信號,並將該P 0個驅動信號分別輸出至其所連接的該P 0個機器人,以致該P 0個機器人係分別受控於該P 0個驅動信號在同步協同下操作,及 對於該第i從站控制器(i=1,2,…,N),當該處理單元藉由該現場總線模組接收到來自該主站控制器的該第i更新從站循環資料時, 該處理單元將所接收的該第i更新從站循環資料儲存於該記憶體模組,且根據該第i更新從站循環資料,更新該P i個機器人的該當前同步情況以獲得一更新同步情況,並且根據該第i更新從站循環資料及該P i個機器人的該更新同步情況,產生P i個分別用來控制該P i個機器人的控制指令且將該P i個控制指令輸出至該驅動單元,及 該驅動單元將來自於該處理單元的該P i個控制指令分別轉換成對應的P i個驅動信號,並將該P i個驅動信號分別輸出至其所連接的該P i個機器人,以致該P i個機器人係分別受控於該P i個驅動信號在同步協同下操作。
- 如請求項8所述的多機同步協同控制系統,其中: 該主站控制器/該第i從站控制器(i=1,2,…,N)的該記憶體模組包含一作為緩衝區的第一儲存區、及一第二儲存區; 對於該主站控制器,該記憶體模組的該第一儲存區係用來儲存該主站循環資料、該第一從站循環資料至該第N從站循環資料、該更新主站循環資料以及該第一更新從站循環資料至該第N更新從站循環資料,並且該記憶體模組的該第二儲存區係用來儲存該主導機器人資料;及 對於第i從站控制器,該記憶體模組的該第一儲存區係用來儲存該第i更新從站循環資料,並且該記憶體模組的該第二儲存區係用來儲存該第i更新從站循環資料中所含的所有主導機器人的位置座標。
- 如請求項8所述的多機同步協同控制系統,其中,該主站控制器與該第一從站控制器至該第N從站控制器係藉由該現場總線以一菊鏈方式串接。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107101966A TWI647553B (zh) | 2018-01-19 | 2018-01-19 | Multi-machine synchronous cooperative control method and system |
KR1020180117676A KR102039274B1 (ko) | 2018-01-19 | 2018-10-02 | 다수의 로봇의 협력 동작을 동기식으로 제어하기 위한 방법 및 시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107101966A TWI647553B (zh) | 2018-01-19 | 2018-01-19 | Multi-machine synchronous cooperative control method and system |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI647553B true TWI647553B (zh) | 2019-01-11 |
TW201933011A TW201933011A (zh) | 2019-08-16 |
Family
ID=65804167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107101966A TWI647553B (zh) | 2018-01-19 | 2018-01-19 | Multi-machine synchronous cooperative control method and system |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102039274B1 (zh) |
TW (1) | TWI647553B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5825981A (en) * | 1996-03-11 | 1998-10-20 | Komatsu Ltd. | Robot system and robot control device |
TW200415453A (en) * | 2002-09-30 | 2004-08-16 | Tokyo Electron Ltd | Method and apparatus for the monitoring and control of a semiconductor manufacturing process |
US20050049749A1 (en) * | 2003-08-27 | 2005-03-03 | Fanuc Ltd | Robot program position correcting apparatus |
US20060271209A1 (en) * | 2005-04-19 | 2006-11-30 | Comau S.P.A. | Process for controlling industrial robots, and related robots, systems and computer programs |
US20070250213A1 (en) * | 2003-12-15 | 2007-10-25 | Abb Ab | Control System, Method and Computer Program |
CN101401293A (zh) * | 2006-07-10 | 2009-04-01 | 精工爱普生株式会社 | 电机、使用多个电机的驱动系统及其控制方法 |
CN100507780C (zh) * | 1994-03-23 | 2009-07-01 | 株式会社安川电机 | 机器控制器 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3538362B2 (ja) * | 1999-09-16 | 2004-06-14 | ファナック株式会社 | 複数ロボットの同期又は協調動作制御装置 |
JP2005014149A (ja) * | 2003-06-26 | 2005-01-20 | Yaskawa Electric Corp | ロボットシステム |
-
2018
- 2018-01-19 TW TW107101966A patent/TWI647553B/zh active
- 2018-10-02 KR KR1020180117676A patent/KR102039274B1/ko active IP Right Grant
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100507780C (zh) * | 1994-03-23 | 2009-07-01 | 株式会社安川电机 | 机器控制器 |
US5825981A (en) * | 1996-03-11 | 1998-10-20 | Komatsu Ltd. | Robot system and robot control device |
TW200415453A (en) * | 2002-09-30 | 2004-08-16 | Tokyo Electron Ltd | Method and apparatus for the monitoring and control of a semiconductor manufacturing process |
US20050049749A1 (en) * | 2003-08-27 | 2005-03-03 | Fanuc Ltd | Robot program position correcting apparatus |
US20070250213A1 (en) * | 2003-12-15 | 2007-10-25 | Abb Ab | Control System, Method and Computer Program |
US20060271209A1 (en) * | 2005-04-19 | 2006-11-30 | Comau S.P.A. | Process for controlling industrial robots, and related robots, systems and computer programs |
CN101401293A (zh) * | 2006-07-10 | 2009-04-01 | 精工爱普生株式会社 | 电机、使用多个电机的驱动系统及其控制方法 |
Also Published As
Publication number | Publication date |
---|---|
KR102039274B1 (ko) | 2019-10-31 |
TW201933011A (zh) | 2019-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111034128B (zh) | 控制系统以及控制装置 | |
US10572420B2 (en) | Information processing apparatus, information processing program, and information processing method | |
US7532637B2 (en) | Synchronous controller | |
CN104137008B (zh) | 具有冗余控制装置的过程控制系统的防故障运行方法 | |
CN103538069B (zh) | 一种机器人的控制方法以及装置与系统 | |
JP2001069159A (ja) | バックアップリンクアクティブスケジュールを与える方法、およびリンクアクティブスケジュールを用いて通信を制御するためのシステム | |
CN107360237A (zh) | 一种多人协同工作的dcs图形化组态系统及方法 | |
CN101699360A (zh) | 用于数控机床的远程诊断方法及系统 | |
CN107864231A (zh) | 使用工业控制程序的因特网协议寻址方法和系统 | |
CN100333987C (zh) | 电梯的通信控制装置以及通信控制方法 | |
US10191461B2 (en) | Control device and method for switching input/output units of a controller | |
CN106448779A (zh) | 核电厂主控室屏幕联动控制方法及装置 | |
CN112540545A (zh) | 一种基于多智能系统的智能设备控制方法及系统 | |
CN108989382A (zh) | 用于更换和/或克隆机器的至少一些设备的方法 | |
TWI647553B (zh) | Multi-machine synchronous cooperative control method and system | |
CN1886706B (zh) | 用于操作协作的不同仪器的方法和装置 | |
JP2001150372A (ja) | 複数ロボットの同期又は協調動作制御装置 | |
CN110161972B (zh) | 多机同步协同控制方法及系统 | |
CN106301528B (zh) | 一种航天器的协同控制方法及装置 | |
JP2007515003A5 (zh) | ||
US10754320B2 (en) | Method and apparatus for integrating an external motion planner with an industrial controller | |
CN109100988A (zh) | 一种工业机器人协同作业的方法及系统 | |
CN108572635A (zh) | 基于共享内存池和改进型时间片轮转法的工业网络节点 | |
CN108762122A (zh) | 一种智能控制盒及其控制方法 | |
JPH04148303A (ja) | Cncの同期動作方式 |