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

機械手控制裝置及機械手控制方法

文檔序號:6279993閱讀:231來源:國知局

專利名稱::機械手控制裝置及機械手控制方法
技術(shù)領(lǐng)域
:本發(fā)明涉及工業(yè)用機械手的控制裝置及控制方法。
背景技術(shù)
:工業(yè)用機械手(以下簡稱機械手(robot))遵照特定的作業(yè)程序(即任務(wù)程序)動作。通過適當選擇與在機械手上安裝的工具(即末端執(zhí)行器)種類、作業(yè)對象的工件種類、作業(yè)內(nèi)容等對應(yīng)的多種類別的作業(yè)程序,并給予機械手,可以由一臺機械手執(zhí)行多種多樣的作業(yè)。在制作為使機械手動作的作業(yè)程序時,一般使用示教操作盤,操作員以手動方式使機械手的各控制軸低速運動,在對于工件執(zhí)行作業(yè)的多個作業(yè)部位上順序定位工具,把這些作業(yè)部位作為“示教點”在機械手中存儲。機械手把在每個作業(yè)部位上定位工具時的各控制軸的動作位置作為在每個示教點處的機械手自身的位置以及姿勢的信息來存儲。此外,也公知通過使用個人計算機的脫機模擬(offlinesimulation)進行這樣的示教編程。機械手能夠遵照示教的作業(yè)程序反復(fù)執(zhí)行同一作業(yè),但是,在變更作業(yè)內(nèi)容時,需要制作符合新的作業(yè)內(nèi)容的作業(yè)程序。例如,在使用機械手高度自動化了的生產(chǎn)系統(tǒng)中,在追加或者變更生產(chǎn)品種時,要求變更生產(chǎn)線。此時,在夾具、機械、搬運裝置這樣的各種硬件的再設(shè)計、或者加工機械的加工程序、機械手的作業(yè)程序PC(可編程控制器)以及生產(chǎn)管理裝置的序列梯(sequenceladder)以及生產(chǎn)管理程序這樣的各種軟件的再制作中,需要相當多的工時。有效削減伴隨這樣的生產(chǎn)線變更的硬件/軟件的構(gòu)建工時,成為與自動化的生產(chǎn)系統(tǒng)的成本關(guān)聯(lián)的重要的課題,因此希望削減在機械手中的作業(yè)程序的制作中所需要的工時。作為使機械手的作業(yè)程序的制作、變更容易的方法,公知把機械手對于一個工件執(zhí)行的一個周期的作業(yè)分割為互相不同的多個作業(yè)單位,制作指令每個作業(yè)單位的多個作業(yè)程序,適當組合這些作業(yè)程序給予機械手。例如,特開2004-185228號公報(JP-A-2004-185228)公開了如下一種結(jié)構(gòu)在具有機械手以及加工機械的生產(chǎn)單元(cell)中,將機械手以及加工機械執(zhí)行的一系列的作業(yè)分割為多個作業(yè)單位,信息處理裝置以適當?shù)捻樞驅(qū)⒅噶蠲總€作業(yè)單位的多個作業(yè)程序給予機械手以及加工機械中任何一個。在發(fā)生生產(chǎn)品種的追加或變更時,因為僅對于與此相伴需要追加或變更的作業(yè)單位進行作業(yè)程序的重新審視即可,所以可以削減伴隨生產(chǎn)線變更的機械手作業(yè)程序的制作成本。此外,在本申請中使用的“作業(yè)單位”這樣的用語,是指把持工件、放置工件、觀察工件等以單一行為賦予特征的作業(yè)。通常在執(zhí)行一個作業(yè)單位期間插入其他的作業(yè)單位是極不合理的。另外,通過以各種方式組合多個相同的以及不同的作業(yè)單位,可以實現(xiàn)多種多樣的作業(yè)。在并行生產(chǎn)多個生產(chǎn)品的生產(chǎn)系統(tǒng)中,例如,對于多個加工機械由一臺機械手供給或者取出工件時,把加工內(nèi)容不同的(即生產(chǎn)周期不同)工件的供給/取出作業(yè)匯集在一系列的作業(yè)程序中,一般是困難的。通常,把向一臺加工機械的工件供給以及取出作業(yè)作為機械手的一單位的作業(yè)程序,準備與每個加工機械對應(yīng)的作業(yè)程序,遵照來自上位控制器的指示,機械手對于被指示的加工機械執(zhí)行工件的供給以及取出作業(yè)。此時,在到對于一個加工機械的作業(yè)程序結(jié)束之前,機械手不開始對于其他加工機械的作業(yè)程序。在這一結(jié)構(gòu)中,在工件的供給步驟和取出步驟之間,例如即使有在加工機械中的送氣或軸移動等需要較多時間的工序,機械手也只是等待該工序的結(jié)束。根據(jù)如上述JP-A-2004-185228中記述的那樣的、分割一周期的作業(yè)為多個作業(yè)單位指令機械手以及加工機械的結(jié)構(gòu),對于多個加工機械的每一個,能夠在每一共同的作業(yè)單位(例如供給)并行執(zhí)行工件的供給以及取出作業(yè)。但是即使在這一結(jié)構(gòu)中,因為機械手在完成一個作業(yè)單位后執(zhí)行下一作業(yè)單位,所以在共同的作業(yè)單位的執(zhí)行所需要的時間對于每一工件不同時,對于所有的加工機械的工件的供給以及取出作業(yè)的周期時間,由具有費時間的作業(yè)單位的工件決定。即在這一結(jié)構(gòu)中,隨時把握生產(chǎn)系統(tǒng)的運行狀態(tài),同時有效減少機械手的待機時間高效執(zhí)行作業(yè)十分困難。另外,在生產(chǎn)系統(tǒng)由于機器的故障等緊急停止時,為查明或者消除原因,例如由人從夾具中取出工件,或者通過手工開/關(guān)信號,或者以手動方式把機械手移動到退讓位置,多由操作員執(zhí)行對于系統(tǒng)的手動介入。如果由操作員執(zhí)行對于系統(tǒng)的手動介入,則因為生產(chǎn)系統(tǒng)的狀態(tài)從緊急停止時的狀態(tài)變動,和機械手的作業(yè)程序的相關(guān)性受損,所以不能原樣不變地重新開始作業(yè)。因此,僅用為使與作業(yè)程序重新開始時刻的內(nèi)容吻合而用手工作業(yè)變更系統(tǒng)的狀態(tài)、或者使中斷的作業(yè)程序吻合生產(chǎn)系統(tǒng)的狀態(tài)適當?shù)牟襟E模擬運行機械手,執(zhí)行某種恢復(fù)作業(yè)。為適當進行這樣的恢復(fù)作業(yè),需要操作員熟知生產(chǎn)系統(tǒng)的設(shè)備的結(jié)構(gòu)或者在每個機械中運行的作業(yè)程序的內(nèi)容。
發(fā)明內(nèi)容本發(fā)明的目的是提供機械手的控制裝置以及控制方法,它們能夠解決使用機械手的生產(chǎn)系統(tǒng)中的上述問題。本發(fā)明的另一目的提供是機械手控制裝置或機械手控制方法,它們能夠隨時把握生產(chǎn)系統(tǒng)的運行狀態(tài),同時能夠并行而且高效率地使一臺機械手執(zhí)行與多個工件關(guān)聯(lián)的作業(yè)。本發(fā)明的再一目的是提供機械手控制裝置或機械手控制方法,它們能夠在生產(chǎn)系統(tǒng)緊急停止時,與關(guān)于生產(chǎn)系統(tǒng)的理解度無關(guān)安全而且可靠地重新開始機械手上安裝的的作業(yè)。為實現(xiàn)上述目的,本發(fā)明提供一種機械手控制裝置,其遵照分別對多個作業(yè)單位進行指令的多個作業(yè)程序,對于多個工件并行地使機械手執(zhí)行包含該多個作業(yè)單位的作業(yè),多個作業(yè)程序的每一個包含以機械手開始對應(yīng)的作業(yè)單位為前提的作業(yè)開始條件的記述,機械手控制裝置具有信息收集部,其收集實時地表示機械手執(zhí)行作業(yè)的環(huán)境狀態(tài)的狀態(tài)信息;程序選定部,其根據(jù)信息收集部收集到的狀態(tài)信息,從在多個作業(yè)程序中對于多個工件處于執(zhí)行階段的作業(yè)程序中,選定滿足作業(yè)開始條件的第一可執(zhí)行程序;處理部,其執(zhí)行處理程序選定部所選定的第一可執(zhí)行程序;程序完成判斷部,其判斷處理部是否完成第一可執(zhí)行程序的執(zhí)行處理,程序選定部對應(yīng)程序完成判斷部的判斷狀況,根據(jù)狀態(tài)信息,從處于執(zhí)行階段的作業(yè)程序中,選定滿足作業(yè)開始條件的第二可執(zhí)行程序作為處理部接著要執(zhí)行處理的作業(yè)程序。在上述機械手控制裝置中,程序選定部根據(jù)狀態(tài)信息,在多個作業(yè)程序中確定幾個處于作業(yè)階段的作業(yè)程序,并且,從所確定的該作業(yè)程序中遵照預(yù)先規(guī)定的規(guī)則,選擇一個第一可執(zhí)行程序。另外,程序選定部,參照與多個工件的每一個相關(guān)聯(lián)地對多個作業(yè)程序的執(zhí)行順序進行定義的多個作業(yè)腳本,來確定處于執(zhí)行階段的作業(yè)程序。上述機械手控制裝置可以構(gòu)成為,在程序完成判斷部判斷為處理部的執(zhí)行處理完成前,程序選定部選定第二可執(zhí)行程序,處理部執(zhí)行處理第二可執(zhí)行程序。多個作業(yè)程序的每一個,可以包含作為機械手完成對應(yīng)的作業(yè)單位的前提的作業(yè)完成條件的記述,在這種場合,程序完成判斷部可以根據(jù)信息收集部收集的狀態(tài)信息,判斷第一可執(zhí)行程序是否滿足作業(yè)完成條件,由此判斷處理部的執(zhí)行處理是否完成。程序完成判斷部,可以具有表示把機械手執(zhí)行作業(yè)的環(huán)境模型化了的內(nèi)部模型的狀態(tài)的內(nèi)部信息,判斷內(nèi)部信息與信息收集部收集的狀態(tài)信息互相是否一致,由此判斷處理部的執(zhí)行處理是否完成。另外,程序完成判斷部,可以在判斷為處理部的執(zhí)行處理完成前進一步判斷是否經(jīng)過預(yù)先規(guī)定的時間。上述機械手控制裝置,可以還具有在作業(yè)的執(zhí)行中使機械手緊急停止的停止控制部;具有表示把機械手執(zhí)行作業(yè)的環(huán)境模型化了的內(nèi)部模型的狀態(tài)的內(nèi)部信息、判斷內(nèi)部信息與信息收集部收集的狀態(tài)信息互相是否一致的狀態(tài)判斷部;在狀態(tài)判斷部判斷內(nèi)部信息與狀態(tài)信息互相一致時解除緊急停止、重新開始作業(yè)的重新開始控制部。本發(fā)明進而提供機械手控制方法,所述方法遵照分別指令多個作業(yè)單位的多個作業(yè)程序,對于多個工件并行地使機械手執(zhí)行包含多個作業(yè)單位的作業(yè),多個作業(yè)程序的每一個包含以機械手開始對應(yīng)的作業(yè)單位為前提的作業(yè)開始條件的記述,機械手控制方法具有收集實時表示機械手執(zhí)行作業(yè)的環(huán)境的狀態(tài)的狀態(tài)信息的步驟;根據(jù)收集的狀態(tài)信息、在多個作業(yè)程序中對于多個工件處于執(zhí)行階段的作業(yè)程序中、選定滿足作業(yè)開始條件的第一可執(zhí)行程序的步驟;執(zhí)行處理選定的第一可執(zhí)行程序的步驟;對應(yīng)第一可執(zhí)行程序的執(zhí)行處理狀況,根據(jù)狀態(tài)信息,在處于執(zhí)行階段的作業(yè)程序中,選定滿足作業(yè)開始條件的第二可執(zhí)行程序的步驟;執(zhí)行處理選定的第二可執(zhí)行程序的步驟。本發(fā)明的上述以及其他的目的、特征及優(yōu)點,通過下面關(guān)聯(lián)附圖對適當?shù)膶嵤┬螒B(tài)的說明更加了解。附圖中,圖1是表示本發(fā)明的機械手控制裝置的基本結(jié)構(gòu)的功能框圖;圖2是表示圖1的機械手控制裝置的第一改進結(jié)構(gòu)的功能框圖;圖3是表示圖1的機械手控制裝置的第二改進結(jié)構(gòu)的功能框圖;圖4是表示圖1的機械手控制裝置的第三改進結(jié)構(gòu)的功能框圖;圖5是組裝有本發(fā)明的一個實施形態(tài)的機械手控制裝置的、使用機械手的生產(chǎn)系統(tǒng)的整體概況圖;圖6是表示圖5的生產(chǎn)系統(tǒng)中的控制系統(tǒng)的結(jié)構(gòu)框圖;圖7是圖6的控制系統(tǒng)中的機械手控制裝置的存儲器的圖;圖8是圖6的控制系統(tǒng)中的硬盤裝置的圖;圖9、圖10以及圖11是表示圖5的生產(chǎn)系統(tǒng)中機械手執(zhí)行的作業(yè)的工序的流程圖;圖12、圖13以及圖14是用虛線箭頭表示圖5的生產(chǎn)系統(tǒng)中機械手執(zhí)行的作業(yè)的工序的概要圖;圖15是圖5的生產(chǎn)系統(tǒng)中使用的作業(yè)模式數(shù)據(jù)圖;圖16是圖5的生產(chǎn)系統(tǒng)中使用的主作業(yè)腳本的圖;圖17、圖18、圖19、圖20以及圖21是表示圖5的生產(chǎn)系統(tǒng)中使用的控制程序的動作序列的圖;以及圖22是圖5的生產(chǎn)系統(tǒng)中使用的條件處理表的圖。具體實施例方式下面參照附圖詳細說明本發(fā)明的實施形態(tài)。附圖中,給相同或者類似的結(jié)構(gòu)要素賦予共同的參考符號。參照附圖,圖1用功能框圖表示本發(fā)明的機械手控制裝置10的基本結(jié)構(gòu)。機械手控制裝置10遵照分別對多個作業(yè)單位進行指令的多個作業(yè)程序12,對于多個工件使機械手并行執(zhí)行包含多個作業(yè)單位的作業(yè)。這里,多個作業(yè)程序12的每一個,包含以機械手開始對應(yīng)的作業(yè)單位為前提的作業(yè)開始條件的記述。機械手控制裝置10,具有收集實時表示機械手執(zhí)行作業(yè)的環(huán)境的狀態(tài)的狀態(tài)信息16的信息收集部18;根據(jù)信息收集部18收集的狀態(tài)信息16、在多個作業(yè)程序12中對于多個工件處于執(zhí)行階段的作業(yè)程序中、選定滿足作業(yè)開始條件14的第一可執(zhí)行程序12A的程序選定部20;執(zhí)行處理由程序選定部20選定的第一可執(zhí)行程序12A的處理部22;判斷處理部22是否完成第一可執(zhí)行程序12A的執(zhí)行處理的程序完成判斷部24。然后,程序選定部20,對應(yīng)程序完成判斷部24的判斷狀況,根據(jù)狀態(tài)信息16,在處于執(zhí)行階段的作業(yè)程序中,選定滿足作業(yè)開始條件的第二可執(zhí)行程序12B作為處理部22接著執(zhí)行處理的作業(yè)程序。根據(jù)具有上述基本結(jié)構(gòu)的機械手控制裝置10,通過實時參照機械手的作業(yè)環(huán)境的狀態(tài),可以在處于執(zhí)行階段的作業(yè)程序中適當選擇滿足作業(yè)開始條件14的第一可執(zhí)行程序12A,使機械手執(zhí)行對應(yīng)的作業(yè)單位,進而,能夠一邊考慮第一可執(zhí)行程序12A的執(zhí)行處理的進展狀況,一邊適當選擇同樣滿足作業(yè)開始條件14的第二可執(zhí)行程序12B,使機械手執(zhí)行下一作業(yè)單位。因此,在使用機械手的生產(chǎn)系統(tǒng)中,能夠隨時把握生產(chǎn)系統(tǒng)的運行狀態(tài),同時使一臺機械手并行且高效執(zhí)行關(guān)聯(lián)多個工件的作業(yè)。上述的作用效果,在程序完成判斷部24判斷為處理部22的第一可執(zhí)行程序12A的執(zhí)行處理完成前,程序選定部20選定第二可執(zhí)行程序12B、處理部22執(zhí)行處理第二可執(zhí)行程序12B那樣構(gòu)成時,變得更加突出。圖2以功能框圖表示圖1的機械手控制裝置10的第一改進結(jié)構(gòu)。使在圖2的機械手控制裝置10中,多個作業(yè)程序12的每一個都還包含以機械手完成對應(yīng)的作業(yè)單位為前提的作業(yè)完成條件26的記述。于是,程序完成判斷部24構(gòu)成為,根據(jù)信息收集部18收集到的狀態(tài)信息16,判斷第一可執(zhí)行程序12A是否滿足作業(yè)完成條件26,由此判斷由處理部22對第一可執(zhí)行程序12A的執(zhí)行處理是否完成。根據(jù)圖2所示的機械手控制裝置10,通過實時參照機械手的作業(yè)環(huán)境的狀態(tài),可以把第一可執(zhí)行程序12A是否滿足作業(yè)完成條件26作為判斷基準,迅速而且正確地判斷由處理部22進行的執(zhí)行處理是否完成。圖3以功能框圖表示圖1的機械手控制裝置10的第二改進結(jié)構(gòu)。在圖3的機械手控制裝置10中,程序完成判斷部24構(gòu)成為,具有表示把機械手執(zhí)行作業(yè)的環(huán)境模型化了的內(nèi)部模型的狀態(tài)的內(nèi)部信息28,判斷內(nèi)部信息28和信息收集部18收集到的狀態(tài)信息16是否一致,由此判斷由處理部22對第一可執(zhí)行程序12A的執(zhí)行處理是否完成。根據(jù)圖3所示的機械手控制裝置10,把表示機械手作業(yè)的實際的環(huán)境的狀態(tài)的狀態(tài)信息16和不受實際的環(huán)境的狀態(tài)影響的內(nèi)部信息28互相是否一致作為判斷基準,能夠迅速而且正確地判斷由處理部22進行的執(zhí)行處理是否完成。通過這樣的結(jié)構(gòu),在由處理部22進行的執(zhí)行處理達到異常的完成狀態(tài)時,能夠立即檢測到這點而采取適當?shù)膶Σ?。圖4以功能框圖表示圖1的機械手控制裝置10的第三改進結(jié)構(gòu)。在圖4的機械手控制裝置10中還具有在作業(yè)的執(zhí)行中使機械手緊急停止的停止控制部30;具有表示把機械手執(zhí)行作業(yè)的環(huán)境模型化了的內(nèi)部模型的狀態(tài)的內(nèi)部信息28、判斷內(nèi)部信息28和信息收集部18收集到的狀態(tài)信息16是否一致的狀態(tài)判斷部32;在狀態(tài)判斷部32判斷內(nèi)部信息28和狀態(tài)信息16互相一致時解除緊急停止重新開始作業(yè)的重新開始控制部34。根據(jù)圖4所示的機械手控制裝置10,能夠在使用機械手的生產(chǎn)系統(tǒng)中,在生產(chǎn)系統(tǒng)緊急停止時,把表示機械手作業(yè)的實際的環(huán)境的狀態(tài)的狀態(tài)信息16和不受實際的環(huán)境的狀態(tài)影響的內(nèi)部信息28互相是否一致作為判斷基準,解除緊急停止重新開始作業(yè)。因此,即使是關(guān)于生產(chǎn)系統(tǒng)理解度低的操作員,也能安全而且可靠地重新開始機械手的作業(yè)。下面舉出幾個關(guān)于作業(yè)程序12的實例,同時補充說明上述本發(fā)明的機械手控制裝置10。因為機械手控制裝置10使機械手執(zhí)行的多個作業(yè)單位的每一個是對于一個工件機械手執(zhí)行的一周期的作業(yè)的一部分,所以通過遵照作業(yè)順序執(zhí)行多個作業(yè)單位,能夠完成一周期的作業(yè)。這里,定義指令多個作業(yè)單位的多個作業(yè)程序12的執(zhí)行順序的數(shù)據(jù)列表,在本申請中稱作業(yè)腳本(script)。在作業(yè)腳本中,在一行中記述作業(yè)單位的名稱、執(zhí)行該作業(yè)單位時使用的裝置或機械的名稱、和這些裝置或機械的運行狀態(tài)的數(shù)據(jù),遵照作業(yè)順序跨越多行記述。在生產(chǎn)系統(tǒng)中裝備的裝置或機械,伴隨生產(chǎn)處理的進行,運行狀態(tài)變化。例如加工機械,大體分為“運行”和“停止”,在這兩個狀態(tài)之間轉(zhuǎn)移,但是進一步細分的話,可以表示“電源切斷”、“初始化中”、“等待加工請求中”、“加工準備中”、“等待工件中”、“第一工序加工中”、“更換工件中”、“第二工序加工中”、“等待成品取出中”、“發(fā)生警報中”、“加工結(jié)束處理中”等狀態(tài)。機械手執(zhí)行作業(yè)的環(huán)境的狀態(tài)(即生產(chǎn)系統(tǒng)的裝置或機械的運行狀態(tài)),可以使用這樣的有限數(shù)目的狀態(tài)的集合、初始狀態(tài)、和表示在特定條件下從初始狀態(tài)向其他狀態(tài)轉(zhuǎn)移的過程的狀態(tài)轉(zhuǎn)移表示。狀態(tài)集合、狀態(tài)轉(zhuǎn)移以及初始狀態(tài),一般取決于裝置或機械不同。即使是同一裝置,對應(yīng)在生產(chǎn)系統(tǒng)中的作用,狀態(tài)集合、狀態(tài)轉(zhuǎn)移以及初始狀態(tài)變得互相不同。因此,使用狀態(tài)集合、狀態(tài)轉(zhuǎn)移以及初始狀態(tài),能夠正確地表現(xiàn)生產(chǎn)系統(tǒng)中的每個裝置或機械的狀態(tài)。以下舉出作業(yè)程序的各行記述的例子。例如把持在暫置臺上放置的工件的作業(yè)單位具有“Pickonatable”的名稱,該作業(yè)單位需要“Table”以及“Robot”兩個裝置,在這些裝置的初始狀態(tài)分別是“Haveontable”以及“Emptyhanded”時,可以開始該作業(yè)單位。該內(nèi)容在作業(yè)腳本中記為<DoPickonatable,conditionTable:Haveontable,conditionRobot:Emptyhanded/>。另外,執(zhí)行作業(yè)單位“Pickonatable”的結(jié)果,可以在作業(yè)腳本中記述“Table”從“Haveontable”狀態(tài)轉(zhuǎn)移到“Emptyontable”狀態(tài),“Robot”從“Emptyhanded”狀態(tài)轉(zhuǎn)移到“Graspinginhand”狀態(tài)。該內(nèi)容記述為<DoPickonatable,conditionTable:Haveontable,resultTable:Emptyontable,conditionRobot:Emptyhanded,resultRobot:Graspinginhand/>。但是,在生產(chǎn)系統(tǒng)中,并行進行對于多個生產(chǎn)品的生產(chǎn)處理,由此增加生產(chǎn)量。作為例子,考察具有四個板“palette#1”、“palette#2”、“palette#3”、“palette#4”;兩個暫置臺“table#1”、“table#2”;和兩個加工機械“machine#1”、“machine#2”構(gòu)成的加工系統(tǒng)。在該系統(tǒng)中,執(zhí)行機械手對于machine#1從palette#1取出未加工的工件,暫放在table#1上,把從machine#1取出的加工完畢的工件暫放在table#1上,把在table#1上暫放的未加工的工件拿起來供給machine#1,拿起在table#1上暫放的加工完畢的工件供給machine#1,拿起在table#1上暫放的加工完畢的工件放在palette#2上這樣的多個作業(yè)單位,另外,執(zhí)行對于machine#2,從palette#3取出未加工的工件暫放在table#2上,把從machine#2取出的加工完畢的工件暫放在table#2上,拿起在table#2上暫放的未加工的工件供給machine#2,拿起在table#2上暫放的加工完畢的工件放在palette#4上這樣的多個作業(yè)單位。這里,對于兩個加工機械,首先把作為兩者的加工對象的兩個未加工工件放在各自的暫置臺上,接著對于它們進行加工完畢的工件和未加工的工件的交換,最后把兩者的加工完畢的工件放在板上,這樣并行執(zhí)行工件的供給/取出作業(yè)。簡單地以時間序列開列這樣的機械手執(zhí)行的全部作業(yè)單位制成的作業(yè)腳本如下。<DoPickonpalette#1/><DoPutontable#1/><DoPickonpalette#3/><DoPutontable#2/><DoUnloadfrommachine#1/><DoPutontable#1/><DoPickontable#1/><DoLoadtomachine#1/><DoUnloadfrommachine#2/><DoPutontable#2/><DoPickontable#2/><DoLoadtomachine#2/><DoPickontable#1/><DoPutonpalette#2/><DoPickontable#2/><DoPutonpalette#4/>上述多個行的每一行表示一個作業(yè)單位,機械手以上述記載順序執(zhí)行作業(yè)。但是,在該作業(yè)腳本中,因為不明白對于每一工件的加工機械的加工內(nèi)容,所以例如在machine#1中的加工時間和在machine#2中的加工時間不同時,在<DoUnloadfrommachine#1/>之前、或在<DoUnloadfrommachine#2/>之前,產(chǎn)生機械手無任何作業(yè)的無用的待機時間。為消除這樣的待機時間,需要詳細檢查作業(yè)單位的記載順序,不是熟練者的話作業(yè)腳本的制作極為困難。而且,在變更加工時間或工件的種類等時,必須重新驗證作業(yè)腳本的妥當性。因此,在本發(fā)明中,著眼于沿生產(chǎn)處理的多個工件的每一個的流動制作作業(yè)腳本。在上述的作業(yè)例子時,用machine#1加工中的workpiece#1和從palette#1作為素材給予的workpiece#2,通過同一個table#1傳送,用machine#2加工中的workpiece#3和從palette#3作為素材給予的workpiece#4,通過同一個table#2傳送。因此,如下制作workpiece#1以及#2的作業(yè)腳本。<DoPickonpalette#1/><DoPutontable#1/><DoUnloadfrommachine#1/><DoPutontable#1/><DoPickontable#1/><DoLoadtomachine#1/><DoPickontable#1/><DoPutonpalette#2/>另外,如下制作workpiece#3以及#4的作業(yè)腳本。<DoPickonpalette#3/><DoPutontable#2/><DoUnloadfrommachine#2/><DoPutontable#2/><DoPickontable#2/><DoLoadtomachine#2/><DoPickontable#2/><DoPutonpalette#4/>上述兩個作業(yè)腳本的任何一個都表示關(guān)于每一工件如何進行生產(chǎn)處理,這樣的作業(yè)腳本不需要熟練極容易制作。于是,為消除上述無用的待機時間,采用以下的方法。首先,在各作業(yè)腳本中,構(gòu)成為用指針明示接著要執(zhí)行的作業(yè)單位。作業(yè)腳本,在生產(chǎn)系統(tǒng)中要求生產(chǎn)時,關(guān)于成為對象的工件制作。在制作時,指針指示作業(yè)腳本的第一行。指針隨著對于工件的生產(chǎn)處理的進行移到下一行,在最終行的作業(yè)單位結(jié)束后,作業(yè)腳本自身被刪除。本發(fā)明的機械手控制裝置10,對于有關(guān)多個工件的多個作業(yè)腳本,參照在指針指示的行中記載的作業(yè)開始條件14,確認在作業(yè)開始條件14中規(guī)定的裝置或機械的當前狀態(tài),判斷是否滿足該條件。然后,構(gòu)成為在不滿足指針指示的作業(yè)單位的作業(yè)開始條件14時,不執(zhí)行該作業(yè),在滿足作業(yè)開始條件14時,執(zhí)行該作業(yè)。更詳細說,機械手控制裝置10首先對于存在的全部作業(yè)腳本,確認是否滿足指針指示的作業(yè)單位中的作業(yè)開始條件14,確定滿足條件的作業(yè)腳本。然后,從確定的作業(yè)腳本中,遵照預(yù)先規(guī)定的規(guī)則,選擇一個作業(yè)腳本。作為這種規(guī)則,可以考慮(1)給每個作業(yè)腳本賦予生產(chǎn)優(yōu)先級,選擇優(yōu)先級最高的,(2)選擇作業(yè)腳本剩余行數(shù)最少的,(3)選擇作業(yè)腳本剩余行數(shù)最多的,(4)選擇作業(yè)腳本的制成時期最早的,(5)選擇到指定的生產(chǎn)完成時刻的時間最短的,(6)選擇同種的生產(chǎn)品的生產(chǎn)數(shù)最少的,(7)選擇在作業(yè)開始條件14內(nèi)規(guī)定的裝置或機械的個數(shù)或種類最少的,(8)選擇在作業(yè)開始條件14內(nèi)規(guī)定的裝置或機械的狀態(tài)一致最多的等。這些規(guī)則,不僅可以只采用一個,而且也可以組合多個規(guī)則采用,選擇作業(yè)腳本。另外,也可以根據(jù)多個規(guī)則計算評價值,選擇評價值的相加平均最高的作業(yè)腳本。每個作業(yè)腳本,因為不僅記述生產(chǎn)處理中的機械手的一系列作業(yè)工序全部,而且著眼于沿生產(chǎn)處理的每一個的工件的流動記述作業(yè)工序,所以制作容易,裝置或機械的確認容易,即使在生產(chǎn)系統(tǒng)中變更并行生產(chǎn)的工件的組合時也不需要修正。另外,對于工件的每一種類作業(yè)單位的種類或者數(shù)目也可以不同,只要需要也可以為特定的工件準備特別的作業(yè)腳本。因此,在研究完成全部加工工序的工件的加工精度時,在某加工工序中發(fā)現(xiàn)問題,為僅重新執(zhí)行該加工工序,可以僅為該工件準備僅記述該加工工序的作業(yè)腳本。另外,作業(yè)腳本,因為具有明示下一個要執(zhí)行的作業(yè)單位的指針,所以不僅可以以規(guī)定的順序執(zhí)行作業(yè)單位,而且能夠考慮執(zhí)行作業(yè)單位的結(jié)果或者生產(chǎn)系統(tǒng)的狀況,變更下一個要執(zhí)行的作業(yè)單位。進而,可以與并行生產(chǎn)的工件的種類或者個數(shù)無關(guān)執(zhí)行生產(chǎn)開始時的作業(yè)腳本的制作、生產(chǎn)完成時的作業(yè)腳本的刪除、指針指示的行的作業(yè)開始條件14成立的作業(yè)腳本的確定、以及遵照規(guī)定的規(guī)則進行的作業(yè)腳本的選擇這樣的各種處理。作業(yè)腳本可以具有裝置選擇項的功能。例如,變更上述的生產(chǎn)系統(tǒng)的做法,即使用machine#1以及#2任何一個加工workpiece#1~#4,在table#1以及#2任何一個上放置那樣構(gòu)成。在這一場合,用“machines”表示可以選擇machine#1以及#2中任何一個,用“tables”表示可以選擇table#1以及#2中任何一個,可以如下記述關(guān)于workpiece#1以及#2的作業(yè)腳本。<DoPickonpalette#1/><DoPutontables/><DoUnloadfrommachines/><DoPutontables/><DoPickontables/><DoLoadtomachines/><DoPickontables/><DoPutonpalette#2/>在該作業(yè)腳本中,在作業(yè)單位“Unloadfrommachines”,只要machine#1以及#2的任何一個滿足作業(yè)開始條件14,就先對于滿足作業(yè)開始條件14的加工機械執(zhí)行Unload。以后,用machines表示的加工機械,作為Unload的加工機械處理。同樣,在第二行的作業(yè)單位“Putontables”中,對于滿足作業(yè)開始條件14的table#1或#2執(zhí)行Puton,以后tables作為Puton了的table處理。這樣,可以根據(jù)作業(yè)開始條件14從在幾個選擇項中決定在作業(yè)腳本中記載的作業(yè)單位中使用的裝置或機械。裝置選擇項的定義,可記述如下。<Selectmachinesamongmachine#1,machine#2/><Selecttablesamongtable#1,table#2/>進而,在根據(jù)選擇項“machines”決定使用的加工機械的上述結(jié)構(gòu)中,也可以限制裝置或機械的組合方法,使在使用machine#1時使用table#1,在使用machine#2時使用table#2。組合的限制可如下定義。<Defordermachines,tables/><Worksetmachine#1,table#1/><Worksetmachine#2,table#2/>上述記述表示,在machines中選擇machine#1時tables一定是table#1,在machines中選擇machine#2時tables一定是table#2。另外,該記述還規(guī)定先以machines確定加工機械,接著以tables確定暫置臺的處理順序。在這場合,在處理作業(yè)腳本第二行的“Putontables”時,因為加工機械尚未確定,所以不能就原樣不變地決定暫置臺。因此,構(gòu)成為先根據(jù)第三行的“Unloadfrommachines”的作業(yè)開始條件14確定加工機械,使與此吻合,根據(jù)第二行的作業(yè)開始條件14確定暫置臺。然后在確定暫置臺后執(zhí)行第二行的作業(yè)單位。在這樣的結(jié)構(gòu)中,先讀第三行確定加工機械,但是第三行的作業(yè)單位在第二行的作業(yè)單位完成前作為開始預(yù)定狀態(tài)對待,使在其他的作業(yè)腳本中滿足作業(yè)開始條件14。使用裝置選擇項的裝置或機械的分配,如上述,可以通過一邊逐行執(zhí)行作業(yè)腳本一邊在每次碰上未確定的裝置選擇項時分配裝置的(Ondemand)方式、和在開始作業(yè)腳本前在全部裝置選擇項中進行裝置或機械的分配,在全部裝置或機械被確定前不開始作業(yè)腳本的執(zhí)行(Reservation)的方式的任意一種來執(zhí)行。這些處理方式,可對應(yīng)生產(chǎn)系統(tǒng)的規(guī)模、作業(yè)腳本的復(fù)雜度、需要的裝置的個數(shù)等選擇適當?shù)囊环?。另外,可以對于每一個作業(yè)腳本選擇處理方式,也可以并行執(zhí)行處理方式不同的作業(yè)腳本。在本發(fā)明中,給每一作業(yè)單位作成的多個作業(yè)程序12使用作業(yè)腳本順序執(zhí)行。在生產(chǎn)系統(tǒng)的當前狀態(tài)適合作業(yè)單位的作業(yè)開始條件14時可以接著執(zhí)行該作業(yè)單位。生產(chǎn)系統(tǒng)的當前狀態(tài),通過在生產(chǎn)系統(tǒng)內(nèi)存在的裝置或機械的當前狀態(tài)的集合來表示。全部裝置或機械的具有表示其自身狀態(tài)的狀態(tài)變量。狀態(tài)變量取的值,對應(yīng)裝置或機械的種類來規(guī)定,相同種類的裝置或機械具有相同的狀態(tài)變量的集合。這里,考慮通過兩臺加工機械machine#1以及machine#2、一臺機械手robot、兩個暫置臺table#1以及table#2、四個板palette#1、palette#2、palette#3、以及palette#4構(gòu)成的生產(chǎn)系統(tǒng)。Machine#1以及machine#2的狀態(tài)集合的任何一個都用<ClassMachineState:PowerOffState:InitializingState:ManualOperationState:LoadingState:ReadyToProcessState:ProcessingState:ToolChangingState:CompletedState:UnloadingState:AirPurgingState:Empty/>表記。多個State,分別表示加工機械是下述的狀態(tài)。PowerOff……未接通電源Initializing……電源接通動作準備中ManualOperation……手動操作中Loading……正在接受工件的供給ReadyToProcess……加工準備結(jié)束,等待加工開始Processing……加工中ToolChanging……正在更換加工刀具Completed……完成加工,等待取出加工完畢的工件Unloading……正取出加工完畢的工件AirPurging……正在清除加工完畢的工件的冷卻液Empty……沒有工件,等待供給工件Robot的狀態(tài)集合用<ClassRobotState:PowerOffState:InitializingState:EmptyHandedState:CarryingState:MovingState:GraspingState:AtPerch/>表記。多個State,分別表示機械手是下述的狀態(tài)。PowerOff……未接通電源Initializing……電源接通動作準備中EmptyHanded……什么都沒持有Moving……什么都沒持有移動Carrying……持有物體正在搬運Grasping……把持有物體Table#1以及table#2的狀態(tài)集合的任何一個都用<ClassTableState:VacantState:Exist/>表記。多個State,分別表示暫置臺是下述的狀態(tài)。Vacant……暫置臺上什么都沒放置Exist……暫置臺上有工件放置palette#1、palette#2、palette#3、以及palette#4的狀態(tài)集合的任何一個都用<ClassPaletteState:NosupplyState:VacantState:AffordState:Full/>表記。多個State,分別表示板是下述的狀態(tài)。Nosupply……板未到達站位置Vacant……板上無工件Afford……板上存在可供給的工件,或者板上有可收容新工件的空區(qū)域Full……板上有可收容新工件的空區(qū)域生產(chǎn)系統(tǒng)的當前狀態(tài),可以通過每個裝置或機械的狀態(tài)變量具有上述狀態(tài)集合中哪個State表示。例如,生產(chǎn)系統(tǒng)的當前狀態(tài),在用<ExternalWorldmachine#1:Processingmachine#2:Completedrobot:EmptyHandedtable#1:Existtable#2:Vacantpalette#1:Affordpalette#2:Affordpalette#3:Affordpalette#4:Afford/>記述時,表示machine#1在加工中,machine#2是加工完成等待取出加工完畢的工件的狀態(tài),robot是什么也沒有持有的狀態(tài),在table#1上放有工件、在table#2上不放有工件的狀態(tài),palette#1~#4的任何一個都可收容未加工工件的供給或者加工完畢工件的狀態(tài)。生產(chǎn)系統(tǒng)的狀態(tài)在時刻變化,但是也可以通過上述狀態(tài)集合的變化表現(xiàn)那樣的狀態(tài)變化形態(tài)。例如,假定生產(chǎn)系統(tǒng)的上述狀態(tài)集合的記述,和時間的經(jīng)過一同如下變化。<ExternalWorldmachine#1:Processingmachine#2:Unloadingrobot:Carryingtable#1:Existtable#2:Existpalette#1:Affordpalette#2:Affordpalette#3:Affordpalette#4:Afford/>從該記述可以讀取,machine#2從Completed變化為Unloading,robot從EmptyHanded變化為Carrying,table#2從Vacant變化為Exist。每個裝置或機械的狀態(tài)變量變化的條件(狀態(tài)轉(zhuǎn)移)例如可如下記述。<ClassTableFromState:VacantToState:ExistTransision:%Table.ExistComfirmSignal%=ON/><ClassTableFromState:ExistToState:VacantTransision:%Table.ExistConfirmSignal%=OFF/>根據(jù)這樣的記述,可以了解,Table#1以及#2的狀態(tài)從Vacant變化到Exist是在%Table.ExistConfirmSignal%信號ON時,從Exist變化到Vacant是在%Table.ExistConfirmSignal%信號OFF時。這樣,把使用狀態(tài)集合(即狀態(tài)信息)表現(xiàn)生產(chǎn)系統(tǒng)在本申請中稱為生產(chǎn)系統(tǒng)的外部模型。一般在生產(chǎn)系統(tǒng)中,在多個位置設(shè)置各種開關(guān)或傳感器類,來自這些開關(guān)或傳感器的信息作為表示該位置的狀態(tài)的信號傳送到機械手控制裝置10。機械手控制裝置10從這些各種信號中識別生產(chǎn)系統(tǒng)的每個裝置或機械的當前狀態(tài),制作上述的狀態(tài)集合,根據(jù)它判斷生產(chǎn)系統(tǒng)的狀態(tài)。機械手控制裝置10,可以在外部模型外有生產(chǎn)系統(tǒng)的內(nèi)部模型。內(nèi)部模型,和外部模型同樣,是生產(chǎn)系統(tǒng)中的多個裝置或機械的狀態(tài)的集合,例如如下記述。<InternalWorldmachine#1:Processingmachine#2:Completedrobot:EmptyHandedtable#1:Existtable#2:Vacantpalette#1:Affordpalette#2:Affordpalette#3:Affordpalette#4:Afford/>外部模型,把從在生產(chǎn)系統(tǒng)的任何位置設(shè)置的傳感器類來的信號的變化根據(jù)上述狀態(tài)轉(zhuǎn)移作為狀態(tài)變化表現(xiàn),對此,內(nèi)部模型,通過機械手控制裝置10執(zhí)行的作業(yè)單位的狀態(tài)(即內(nèi)部信息28)直接表現(xiàn)狀態(tài)變化。例如如下所示,假定在作業(yè)腳本的各作業(yè)單位中定義作業(yè)開始條件14和作業(yè)結(jié)束條件26雙方。<DoPickonatable,conditionTable:Exist,resultTable:Vacant,conditionRobot:EmptyHanded,resultRobot:Grasping/>在這樣的記述中,表示作業(yè)單位“Pickonatable”,在Table的狀態(tài)是Exist且Robot的狀態(tài)是EmptyHanded時,可以開始作業(yè),在該作業(yè)單位完成時,Table的狀態(tài)變成Vacant,Robot的狀態(tài)變成Grasping。此時,在外部模型中,如下定義Table以及Robot的狀態(tài)轉(zhuǎn)移。<ClassTableFromState:VacantToState:ExistTransision:%Table.ExistConfirmSignal%=ON/><ClassRobotFromState:MovingToState:EmptyHandedTransision:%Robot.CurrentMoveSpeed%=0/><ClassRobotFromState:EmptyHandedToState:GraspingTransision:%Robot.HandGraspedConfirmSignal%=ON/><ClassRobotFromState:GraspingToState:EmptyHandedTransision:%Robot.HandEmptyConfirmSignal%=ON/>例如,在外部模型中,在Table的狀態(tài)是Exist、Robot的狀態(tài)是EmptyHanded時,機械手控制裝置10執(zhí)行作業(yè)單位Pickonatable,把持位于暫置臺上的工件。為把持工件,因為需要閉合工具(手),所以在該作業(yè)單位內(nèi)使作為手閉合信號的%Robot.HandGraspingCommandSignal%開(ON)。通過機械手控制裝置10輸出手閉合信號,該作業(yè)單位的處理結(jié)束,但是,在從手閉合信號輸出到手實際閉合需要數(shù)百ms左右的時間。在外部模型中,通過傳感器信號的%Robot.HandGraspedConfirmSignal%成為ON掌握手的實際閉合,此時,遵照Robot的狀態(tài)轉(zhuǎn)移的定義,Robot的狀態(tài)變量從EmptyHanded變化為Grasping狀態(tài)。其結(jié)果,滿足“Pickonatable”的作業(yè)結(jié)束條件,可以判斷“Pickonatable”完成。與此相對,關(guān)于相同的作業(yè)單位,在內(nèi)部模型中比外部模型狀態(tài)先變化。即在內(nèi)部模型中,在Pickonatable中輸出手閉合信號的同時(即手實際閉合、%Robot.HandGraspedConfirmSignal%成為ON前),使狀態(tài)變量轉(zhuǎn)移到作業(yè)完成的狀態(tài)。于是,可以構(gòu)成為在外部模型的狀態(tài)集合(狀態(tài)信息16)和內(nèi)部模型的狀態(tài)集合(內(nèi)部信息28)完全一致的時刻,判斷為完成Pickonatable,轉(zhuǎn)移到下一作業(yè)單位的執(zhí)行。在外部模型和內(nèi)部模型在經(jīng)過一定時間以上仍不一致時,可以認為在作業(yè)單位Pickonatable中發(fā)生錯誤。這樣,在和作業(yè)單位的執(zhí)行同時更新內(nèi)部模型,另一方面,根據(jù)作業(yè)單位中的實際的傳感器信息更新外部模型,通過驗證內(nèi)部模型和外部模型是否一致,可以判斷該作業(yè)是正常完成,還是由于執(zhí)行不當而到達異常結(jié)束的狀態(tài)。這樣,通過比較用互相不同的條件表現(xiàn)生產(chǎn)系統(tǒng)內(nèi)的裝置或機械的狀態(tài)的變化的外部模型和內(nèi)部模型,可以判斷作業(yè)單位的完成狀態(tài)的正常性。這種方法,就是在變更生產(chǎn)系統(tǒng)的模型或者變更作業(yè)單位的作業(yè)內(nèi)容時也能夠同樣實施。在不具有內(nèi)部模型時,需要把判斷作業(yè)單位是否正常完成的處理導(dǎo)入作業(yè)程序12中,但是那樣的完成判斷處理,在生產(chǎn)處理變更時必須改寫內(nèi)容。與此相對,通過比較外部模型和內(nèi)部模型判斷完成狀態(tài)的正常性,因為作業(yè)程序12自身不變,所以具有即使生產(chǎn)處理變更也可以再利用每個作業(yè)單位的作業(yè)程序12的優(yōu)點。另外,比較外部模型和內(nèi)部模型這點在監(jiān)視生產(chǎn)系統(tǒng)的狀態(tài)、自動檢測伴隨裝置或機械的故障的異常狀態(tài)這點上也有效。正常時,在作業(yè)單位的執(zhí)行前變化內(nèi)部模型,其后,同樣變化外部模型。與此相對,在即使在經(jīng)過一定時間外部模型也和內(nèi)部模型不一致時,或在盡管內(nèi)部模型不變化而外部模型變化時,能夠判斷在生產(chǎn)系統(tǒng)中發(fā)生異常。這一異常判斷,因為通過持續(xù)進行外部模型和內(nèi)部模型的比較以實時進行,所以能夠在發(fā)生異常的同時使機械手停止或者采取回避行動。把上述異常檢測方法作為例子關(guān)聯(lián)作業(yè)單位“Pickonatable”加以說明。在“Pickonatable”中,在作業(yè)完成后,在外部模型和內(nèi)部模型的任何一個中,Robot的狀態(tài)都從EmptyHanded變化為Grasping。因此,即使經(jīng)過一定時間外部模型仍是EmptyHanded不變時,認為%Robot.HandGraspedConfirmSignal%不成為ON,不發(fā)生狀態(tài)轉(zhuǎn)移,判斷Pickonatable不成功。另一方面,在一定時間內(nèi)外部模型和內(nèi)部模型雙方Robot的狀態(tài)都變化為Grasping時,可以認為Pickonatable正常完成,可以前進到下一作業(yè)單位。假定在作為“Pickonatable”的下一作業(yè)單位的“Loadtimachine#1”的執(zhí)行中,在table#1中把持的工件從手中脫落,在這一場合,作為手的把持工件不存在信號的%Robot.HandEmptyConfirmSignal%成為ON,遵照狀態(tài)轉(zhuǎn)移,外部模型的Robot的狀態(tài)從Grasping變化為EmptyHanded。另一方面,內(nèi)部模型中的Robot的狀態(tài)維持Grasping。該狀態(tài)的不同,因為通過始終比較內(nèi)部模型和外部模型可以立即檢測到,所以可以迅速采取適當?shù)膶Σ?。另外,從手中脫落的工件載放在table#1上,在table#1上的光電管傳感器感知到工件的存在時,內(nèi)部模型的table#1的狀態(tài)是vacant不變,另一方面,因為外部模型的table#1的狀態(tài)從vacant變化為exist,所以可以檢測到table#1的狀態(tài)異常。因此,可以在對機械手進行處置之外,對于暫置臺迅速采取適當?shù)暮筇幚?。這樣,即使在生產(chǎn)系統(tǒng)中并行發(fā)生多個異常狀態(tài),也可以迅速進行與各自的內(nèi)容對應(yīng)的適當?shù)奶幚?。把在檢測到異常時為進行回避行動的作業(yè)單位在本申請中稱為例外處理作業(yè)單位。例外處理作業(yè)單位和通常的作業(yè)單位同樣,包含作業(yè)開始條件14和作業(yè)結(jié)束條件26,在作業(yè)腳本中開列。例如,通過記述下述那樣的作業(yè)腳本,可以在發(fā)生異常時從通常的作業(yè)單位分支轉(zhuǎn)移到例外處理作業(yè)單位。<DoPickonpalette#1/><DoPutontable#1/><DoUnloadfrommachine#1/><DoPutontable#1/><DoPickontable#1,ExceptionGoto2/><1:DoLoadtomachine#1/><DoPickontable#1/><DoPutonpalette#2/><Stop/><2:DoPickonpalette#1/><Goto1/>在上述的作業(yè)腳本中,在第五行的Pickontable#1發(fā)生異常時,執(zhí)行ExceptionGoto2。如執(zhí)行Goto2,則執(zhí)行第十行的<2:DoPickonpalette#1/>。然后在執(zhí)行第十行中的作業(yè)單位后,執(zhí)行第十一行的<Goto1/>,由此轉(zhuǎn)移到第六行(發(fā)生異常時的下一行)的作業(yè)單位。即因為在第五行的Pickontable#1中從table#1取出工件失敗,所以執(zhí)行第十行的Pickonpalette#1,從palette#1取出工件,接著在第六行的Loadtomachine#1中向machine#1供給工件。這樣,在發(fā)生異常時執(zhí)行例外的作業(yè)時,也可以不用修正預(yù)先設(shè)定的每個作業(yè)單位,而只修正作業(yè)腳本適當追加例外處理作業(yè)單位進行應(yīng)對。在例外處理作業(yè)單位中包含不適當情形時,僅把作業(yè)腳本復(fù)原,能夠使例外處理作業(yè)單位無效。另外,比較外部模型和內(nèi)部模型檢測生產(chǎn)系統(tǒng)的異常這點在生產(chǎn)系統(tǒng)由于機器的故障等緊急停止時,為安全地重新開始由機械手進行的作業(yè)也有效。在生產(chǎn)系統(tǒng)緊急停止時,為分析或者消除其原因,多由操作員手動介入系統(tǒng),或除去工件,或用手動方式操作機械手,或執(zhí)行夾具卡子或者機械手夾具的開閉。如由操作員進行手動介入,則因為生產(chǎn)系統(tǒng)的狀態(tài)從緊急停止時的狀態(tài)變動,損害和機械手的作業(yè)程序12的相關(guān)性,所以不能就原樣不變地重新開始作業(yè)。因此,操作員在重新開始作業(yè)前,需要適當進行恢復(fù)生產(chǎn)系統(tǒng)的狀態(tài)和機械手的作業(yè)程序12的相關(guān)性的作業(yè),但是,通過使用上述外部模型和內(nèi)部模型,可以與操作員關(guān)于生產(chǎn)系統(tǒng)的理解度無關(guān)地執(zhí)行適當?shù)幕謴?fù)作業(yè)。例如,假定在下述外部模型的狀態(tài)下發(fā)生警報,生產(chǎn)系統(tǒng)緊急停止。<ExternalWorldmachine#1:Processingmachine#2:Unloadingrobot:Carryingtable#1:Existtable#2:Existpalette#1:Affordpalette#2:Affordpalette#3:Affordpalette#4:Afford/>此時內(nèi)部模型如下述也處于相同狀態(tài)。<InternalWorldmachine#1:Processingmachine#2:Unloadingrobot:Carryingtable#1:Existtable#2:Existpalette#1:Affordpalette#2:Affordpalette#3:Affordpalette#4:Afford/>因為由于警報機械手停止,所以內(nèi)部模型維持上述狀態(tài)。與此相對,外部模型根據(jù)在生產(chǎn)系統(tǒng)中設(shè)置的傳感器信息變化狀態(tài)。因此,例如在上述狀態(tài)中,如果操作員決定從table#1取出工件,則通過在table#1上設(shè)置的傳感器立即檢測到這點,由此,外部模型的table#1的狀態(tài)如下從Exist變化為Vacant。<ExternalWorldmachine#1:Processingmachine#2:Unloadingrobot:Carryingtable#1:Vacanttable#2:Existpalette#1:Affordpalette#2:Affordpalette#3:Affordpalette#4:Afford/>在該狀態(tài)下,為重新運行生產(chǎn)系統(tǒng)而向機械手控制裝置10發(fā)送起動請求后,機械手控制裝置10首先確認外部模型和內(nèi)部模型是否一致。內(nèi)部模型是因警報緊急停止時的狀態(tài)未變,如其狀態(tài)和外部模型的狀態(tài)一致,則即使繼續(xù)執(zhí)行作業(yè)單位也是安全的。與此相對,如果外部模型和內(nèi)部模型不一致,則原樣不變重新開始作業(yè)單位的話有發(fā)生問題的危險。在上述例子中,因為在外部模型和內(nèi)部模型中table#1的狀態(tài)不同,所以不能原樣不變重新開始作業(yè)。這里,在向機械手控制裝置10發(fā)送起動要求時,機械手控制裝置10,首先對操作員例如在機械手控制裝置10上附設(shè)的顯示器上顯示外部模型和內(nèi)部模型不同的內(nèi)容(在上述例子中table#1從Exist變化為Vacant)。進而,通過向顯示器的顯示可以向操作員請求確認在這樣的狀態(tài)下不改變可否起動機械手(從新開始許可指令)。操作員在確認在顯示器上顯示的內(nèi)容的基礎(chǔ)上,可以例如在機械手上附設(shè)的輸入裝置輸入許可或者不許可重新開始的指示。在輸入許可重新開始時,把內(nèi)部模型改寫為與外部模型相同的內(nèi)容,重新開始被中斷了的作業(yè)。在輸入不許可重新開始時,中止機械手的起動。進而,也可以構(gòu)成為,關(guān)于外部模型和內(nèi)部模型的不同點,事前作成為使操作員了解原因及其對策的消息,在進行重新開始的確認時在顯示器上顯示這些消息。例如在上述例子中,顯示外部模型的table#1的狀態(tài)從Exist變化為Vacant的原因和對策。操作員閱讀該信息,例如可以確認table#1的傳感器是否適當?shù)貏幼?,或者如果通過手工作業(yè)把新的工件放在table#1上則理解可以重新開始。這樣,操作員通過遵照機械手控制裝置10發(fā)出的消息,能夠可靠地恢復(fù)外部模型表示的生產(chǎn)系統(tǒng)中緊急停止時的狀態(tài)。這樣的消息,通過由熟知生產(chǎn)系統(tǒng)的操作員預(yù)先制作后在機械手控制裝置10中登記,任何人都可以遵照這些消息安全而且可靠地重新運行生產(chǎn)系統(tǒng)。下面,參照圖5~圖22,關(guān)聯(lián)機器人執(zhí)行的作業(yè)例說明根據(jù)本發(fā)明的合適的實施形態(tài)的機械手控制裝置。圖5是組裝有本發(fā)明的一個實施形態(tài)的機械手控制裝置40的、使用機械手的生產(chǎn)系統(tǒng)的整體概況圖。在機械手(即機械手機構(gòu)部)42的手腕前端安裝工具(在圖示實施形態(tài)中為夾具)44。在板P1上放置多個工件W1,在板P2上放置和工件W1種類不同的多個工件W2。機械手42在移動軸46上設(shè)置,沿移動軸46移動,在工具44中把持板P1的工件W1或板P2的工件W2,搬運到暫置臺48或者暫置臺50,在那里臨時放置。暫置臺48在向加工機械52供給工件時使用,暫置臺50在向加工機械54供給工件時使用。如果加工機械52不在加工中,則機械手42把在暫置臺48上放置的工件W1或W2把持在工具44中,供給到加工機械52。加工機械52根據(jù)來自機械手42的加工開始命令,開始工件的加工。加工完成后,加工機械52給機械手42發(fā)送加工完成信號。接收加工完成信號的機械手42從加工機械52中取出加工完畢的工件W1或W2,把工件W1放在板P3上、把工件W2放在板P4上。在給加工機械54供給工件時,在使用暫置臺50以外,也執(zhí)行和上述相同的工序。機械手42以及移動軸46分別通過通信電纜56以及58與機械手控制裝置40連接,由機械手控制裝置40控制機械手42以及移動軸46的動作。機械手控制裝置40通過網(wǎng)絡(luò)電纜60連接作業(yè)程序制作裝置62。在機械手42的手腕前端,鄰接工具44安裝照相機64,照相機64通過照相機電纜66連接圖像處理裝置68。圖像處理裝置68,通過網(wǎng)絡(luò)電纜70、72分別連接機械手控制裝置40以及作業(yè)程序制作裝置62。在暫置臺48、50上,分別設(shè)置從板P1搬運來的工件W1用的定位夾具48a、50a,和從板P2搬運來的工件W2用的定位夾具48b、50b。這些定位夾具48a、48b、50a、50b,通過數(shù)字信號輸入輸出電纜(未圖示)分別與機械手控制裝置40連接。圖6是主要表示圖5的生產(chǎn)系統(tǒng)中的控制系統(tǒng)的結(jié)構(gòu)框圖。機械手控制裝置40具有用總線74相互連接的CPU76、存儲器78、網(wǎng)絡(luò)接口80、數(shù)字信號輸入輸出電路82、操作盤接口84以及伺服接口86。如圖7所示,在存儲器78中,存儲由CPU76執(zhí)行的、控制機械手控制裝置40全體的控制程序88、和使機械手42動作的作業(yè)程序90以及92。作業(yè)程序90是機械手42使用工具44為執(zhí)行關(guān)于工件W1的作業(yè)的程序,作業(yè)程序92是機械手42使用工具44為執(zhí)行關(guān)于工件W2的作業(yè)的程序。作業(yè)程序90以及92都使用控制程序88解釋,變換為機械手42以及工具44的動作。這些作業(yè)程序90以及92由作業(yè)程序制作裝置62制作。在機械手控制裝置40的存儲器78中,如后述,進而存儲主作業(yè)腳本94(94a、94b、94c、94d)、作業(yè)程序組96(96a、96b、96c、96d)、作業(yè)腳本98(981、982)、外部存儲器100、內(nèi)部存儲器102、條件處理表104。在網(wǎng)絡(luò)接口80上,通過網(wǎng)絡(luò)電纜60連接作業(yè)程序制作裝置62,同時通過網(wǎng)絡(luò)電纜70連接圖像處理裝置68。另外,在數(shù)字信號輸入輸出電路82上,通過數(shù)字信號輸入輸出電纜106連接暫置臺48的夾具48a、48b以及暫置臺50的夾具50a、50的每一個,通過數(shù)字信號輸入輸出電纜108連接加工機械52、54的每一個,通過數(shù)字信號輸入輸出電纜110連接在機械手42上安裝的工具44。在操作盤接口84上,通過操作盤電纜112連接示教操作盤114。示教操作盤114,具有顯示器114a以及輸入按鈕114b,通過操作員操作示教操作盤114,通過機械手控制裝置40可以以手動方式使機械手42動作。另外,在伺服接口86上,通過通信電纜56、58,連接機械手42的各控制軸以及移動軸46的伺服電動機等伺服機構(gòu)。在作業(yè)程序制作裝置62上連接硬盤裝置116。如圖8所示,在硬盤裝置116中,存儲與機械手42動作的多個作業(yè)路徑R(在圖示實施形態(tài)中后述的Ra、Rb、Rc、Rd)的每一個關(guān)聯(lián)的作業(yè)程序定義數(shù)據(jù)119(在圖示實施形態(tài)中的118a、118b、118c、118d)、與加工對象的多種工件W(在圖示實施形態(tài)中的W1、W2)的每種關(guān)聯(lián)的作業(yè)部位定義數(shù)據(jù)120(在圖示實施形態(tài)中的1201、1202)、和工件W(W1、W2)的畫面數(shù)據(jù)122(1221,1222)。再有在硬盤裝置116中,如后述,存儲作業(yè)模式數(shù)據(jù)124、裝置定義數(shù)據(jù)126、裝置屬性數(shù)據(jù)128、裝置部件類別數(shù)據(jù)130、主作業(yè)腳本132(132a、132b、132c、132d)、以及程序組134(134a、134b、134c、134d)。圖示實施形態(tài)中的機械手42的作業(yè)路徑R有(i)從板P1取出工件W1、搬運到暫置臺48上、由定位夾具48a定位、供給加工機械52、從加工機械52取出加工完畢的工件W1、載放在板P3上的第一作業(yè)路徑Ra,(ii)從板P2取出工件W2、搬運到暫置臺48上、由定位夾具48b定位、供給加工機械52、從加工機械52取出加工完畢的工件W2、載放在板P4上的第二作業(yè)路徑Rb,(iii)取出板P1的工件W1、搬運到暫置臺50上、由定位夾具50a定位、供給加工機械54、從加工機械54取出加工完畢的工件W1、載放在板P3上的第三作業(yè)路徑Rc,(iv)取出板P2的工件W2、搬運到暫置臺50上、由定位夾具50b定位、供給加工機械54、從加工機械54取出加工完畢的工件W2、載放在板P4上的第四作業(yè)路徑Rd。與作業(yè)路徑Ra、Rb、Rc、Rd的每一個關(guān)聯(lián)的作業(yè)程序定義數(shù)據(jù)118a、118b、118c、118d由對應(yīng)作為機械手42的作業(yè)對象的工件W1、W2的種類改變動作的第一數(shù)據(jù)部分、和與工件W1、W2的種類無關(guān)動作相同的第二數(shù)據(jù)部分構(gòu)成。依賴工件的第一數(shù)據(jù)部分,根據(jù)與作業(yè)對象的工件W1、W2的每一個關(guān)聯(lián)的作業(yè)部位定義數(shù)據(jù)1201、1202,對于每一工件作成不同的內(nèi)容,由此,完成對于工件W1、W2的每一個的作業(yè)程序90、92。再次參照圖6,在圖像處理裝置68上連接硬盤裝置136。在硬盤裝置136中存儲作為為檢測作業(yè)對象的工件W(在圖示實施形態(tài)中為W1、W2)的基準的工件圖像數(shù)據(jù)138(在圖示實施形態(tài)中為1381、1382)。工件圖像數(shù)據(jù)1381、1382,可通過使用在機械手42的手腕前端上安裝的照相機64攝影工件W1、W2得到。另外,機械手控制裝置40通過網(wǎng)絡(luò)電纜140連接綜合控制圖示的生產(chǎn)系統(tǒng)(單元)的單元控制器142。機械手控制裝置40經(jīng)由網(wǎng)絡(luò)接口80接收來自單元控制器142的生產(chǎn)指示。圖9~圖14表示在上述生產(chǎn)系統(tǒng)中在機械手控制裝置40的控制下機械手42執(zhí)行的作業(yè)(處理作業(yè))的工序。這里作為一例,說明關(guān)聯(lián)暫置臺48以及加工機械52的上述第一作業(yè)路徑Ra中的工件W1的處理作業(yè),但是其他作業(yè)路徑中的作業(yè)也可以同樣執(zhí)行。首先,起動移動軸46,向板P1的正面(示教點)移動機械手42(步驟S200)。接著,旋轉(zhuǎn)機械手42的臂,把工具44移動到板P1的正上方(示教點)(步驟S201)。然后,通過數(shù)字信號輸入輸出電路82對于工具44輸出“張開手”的數(shù)字信號,打開工具44(步驟S202)。接著,把工具44朝向把持工件W1的把持位置(工件上的位置)移動。此時,在把工具44移動到把持位置的正上方的位置后,朝向其正下方的把持位置以低速移動(步驟S203)。該動作因為對應(yīng)工件的種類決定把持時的機械手42的姿勢,所以依賴工件的種類動作。然后,通過數(shù)字信號輸入輸出電路82對于工具44輸出“握住手”的數(shù)字信號,工具44閉合,把持工件W1(步驟S204)。接著,把工具44向上方移動,從板P1中取出工件W1。此時,在以低速把工具44移動到把持位置的正上方的位置后,提高速度進而向上方拿起工件W1(步驟S205)。接著,向右旋轉(zhuǎn)機械手42的臂,同時使移動軸46動作,向暫置臺48的正面移動機械手42(步驟S206)。接著,把工具44移動到定位夾具48a的上方(步驟S207)。接著,把工具44朝向定位夾具48a抓住工件W1的釋放位置移動。此時,在把工具44移動到釋放位置的上方的位置后,朝向其下方的釋放位置以低速移動,把工件W1安裝到定位夾具48a上(步驟S208)。然后,通過數(shù)字信號輸入輸出電路82對于工具44輸出“張開手”的數(shù)字信號,打開工具44。由此,工具44釋放工件W1(步驟S209)。接著,把工具44移動到釋放位置的上方的位置,從定位夾具48a離開(步驟S210)。在那里,通過數(shù)字信號輸入輸出電路82對于定位夾具48a輸出“閉合卡子”的數(shù)字信號,定位夾具48a閉合。由此,在定位夾具48a上把工件W1正確地定位在規(guī)定位置上(步驟S211)。接著,把工具44朝向在定位夾具48a上被卡住的工件W1的把持位置移動(步驟S212)。接著,在把持位置閉合工具44,把持工件W1(步驟S213)。在那里,對于定位夾具48a輸出“打開卡子”的數(shù)字信號,打開定位夾具48a(步驟S214)。接著,把工具44向上方移動,從定位夾具48a中取出工件W1。此時,對于定位夾具48a在把工具44低速向斜上方(示教點)移動后,提高速度,進而把工件W1向上方拿起(步驟S215)。接著,旋轉(zhuǎn)機械手42的臂,向加工機械52的正面移動工具44(步驟S216)。接著,從加工機械52的門開口部,把工具44插入加工機械52的內(nèi)部。此時,不使工具44以及工件W1接觸加工機械52,使機械手42的臂筆直伸開進入(步驟S217)。然后,在加工機械52的卡盤(未圖示)的跟前一旦停止后,以低速把工件W1安裝在卡盤上。在那里,通過數(shù)字信號輸入輸出電路82對于加工機械52輸出“閉合卡盤”的數(shù)字信號,卡盤閉合(步驟S218)。接著,對于工具44輸出“張開手”的數(shù)字信號,打開工具44,釋放工件W1(步驟S219)。接著,以低速移動工具44到稍微離開卡盤的位置(步驟S220)。接著,不使工具44接觸加工機械52,使機械手42的臂筆直伸開,從加工機械52的門開口部拉出工具44(步驟S221)。接著,通過數(shù)字信號輸入輸出電路82對于加工機械52,作為來自第一作業(yè)路徑Ra的指令,輸出“開始工件W1的加工”的數(shù)字信號(步驟S222)。然后,在從加工機械52向機械手控制裝置40輸入“工件W1的加工完成”之前待機(步驟S223)。在工件W1的加工完成后,使工具44進入加工機械52的內(nèi)部(步驟S224),朝向加工完畢的工件W1的把持位置移動工具44(步驟S225)。接著,閉合工具44,把持工件W1(步驟S226)。接著,對于加工機械52,輸出“打開卡盤”的數(shù)字信號,打開卡盤(步驟S227)。接著,使工具44稍微離開把持位置,從加工機械52的卡盤中筆直取出工件W1(步驟S228)。接著,從加工機械52撤出工具44(步驟S229)。接著,向右旋轉(zhuǎn)機械手42的臂,同時起動移動軸46,把機械手42移動到板P3的正面(步驟S230)。接著,把工具44移動到板P3的正上方(步驟S231)。接著,把工具44移動到載放板P3上的工件W1的載放位置,把工件W1置于板P3上。此時,在把工具44移動到載放位置的正上方的位置后以低速朝向其正下方的載放位置移動,把工件W1放在板P3上(步驟S232)。這一工件載放動作,因為要對應(yīng)工件的種類決定向板P3載放時的機械手42的姿勢,所以要依賴工件的種類。接著,打開工具44,釋放工件W1(步驟S233)。接著,在以低速把工具44移動到載放位置的正上方后,提高速度進而向上方移動(步驟S234)。最后,在朝向機械手正面旋轉(zhuǎn)機械手42的臂的同時,使移動軸46動作,把機械手42移動到初始的待機位置(步驟S235)。以上,結(jié)束對于第一作業(yè)路徑Ra中的工件W1的作業(yè)程序90。此外,在圖12~圖14中表示出與上述步驟S200~步驟S235對應(yīng)的工具44的動作軌跡。在圖示的動作軌跡中,依賴工件種類的動作僅是關(guān)于步驟S203以及步驟S232的動作,其他的動作軌跡表示的動作不依賴種類。例如,在把工件W2放置在板P1上時,上述的第一作業(yè)路徑Ra中的作業(yè),在關(guān)于上述步驟S203以及步驟S232的動作之外,成為和上述動作相同的動作。下面參照圖15~圖22說明為使機械手42執(zhí)行上述處理作業(yè)的作業(yè)程序90、92和作業(yè)腳本98的內(nèi)容、以及由控制程序88執(zhí)行的動作控制序列。此外,機械手控制裝置40的CPU76具有圖1~圖4所示的機械手控制裝置10中的信息收集部18、程序選定部20、處理部22、程序完成判斷部24、停止控制部30、狀態(tài)判斷部32以及重新開始控制部的功能。圖15以流程圖形式表示從工件的觀點記述上述通過機械手42執(zhí)行的處理作業(yè)的作業(yè)模式數(shù)據(jù)124。作業(yè)模式數(shù)據(jù)124,對應(yīng)機械手42的作業(yè)內(nèi)容制作,在硬盤裝置116中存儲。在作業(yè)模式數(shù)據(jù)124中,以%Material_Palette%(素材供給用板)、%Fixture%(暫置臺的定位夾具)、%Machine%(加工機械)、%Goods_Palette%(成品載放用板)這樣的參數(shù)記述作為執(zhí)行每個作業(yè)單位的場所的生產(chǎn)系統(tǒng)內(nèi)的裝置或機械。對于這些參數(shù),通過設(shè)定實際的裝置或機械的名稱,制作表示具體的作業(yè)工序的作業(yè)腳本。例如,表示上述處理作業(yè)的作業(yè)腳本,通過給每個參數(shù)設(shè)定下述的名稱制作。%Material_Palette%……板P1%Goods_Palette%……板P3%Fixture%……定位夾具48a%Machine%……加工機械52a為給參數(shù)設(shè)定具體的裝置名,使用下述裝置定義數(shù)據(jù)126。裝置定義數(shù)據(jù)126在硬盤裝置116中存儲。此外,下述數(shù)據(jù)中,Palette_P1、Palette_P3、Fixture_F1、Machine_left分別表示圖5的板P1、板P3、定位夾具48a、加工機械52a。<Actions><Actionrun=”W1P1P3MR”><ARGUMENTS><OBJECTname=”Material_Palette”val=”Palette_P1”/><OBJECTname=”Goods_Palette”val=”Palette_P3”/><OBJECTname=”Fixture”val=”Fixture_F1”/><OBJECTname=”Machine”val=”Machine_left”/></ARGUMENTS></Actions>在硬盤裝置116中還對于每一裝置制作并存儲每個裝置或機械的名稱、決定信號號碼等的裝置屬性數(shù)據(jù)128。在裝置屬性數(shù)據(jù)128中,定義各種常數(shù)、信號號碼、等待時間、登記號碼等。裝置屬性數(shù)據(jù)128還對于加工機械54、暫置臺50的定位夾具50a、50b、板P2以及P4進行準備。這里,作為同種裝置的加工機械52以及54、定位夾具48a、48b、50a以及50b、板P1、P2、P3以及P4,分別具有大體相同的數(shù)據(jù)結(jié)構(gòu),通常僅各種常數(shù)、信號號碼、等待時間、登記號碼的值不同。因此,使用在硬盤裝置116中存儲的裝置/部件類別數(shù)據(jù)130,先僅定義數(shù)據(jù)結(jié)構(gòu)后,制作包含其他數(shù)據(jù)的裝置屬性數(shù)據(jù)128。圖16用流程圖形式表示作為在作業(yè)模式數(shù)據(jù)124中使用裝置定義數(shù)據(jù)126得到的作業(yè)工序的主作業(yè)腳本132。主作業(yè)腳本132,通過在裝置定義數(shù)據(jù)126中記述可進行作業(yè)的裝置的組合,可以制作與全部組合對應(yīng)的作業(yè)程序。在圖5的生產(chǎn)系統(tǒng)中,因為考慮裝置以及機械的四種組合(對應(yīng)作業(yè)路徑Ra~Rd),所以制作下述四個主作業(yè)腳本132a、132b、132c、132d。此外,F(xiàn)ixture_F2表示定位夾具48b,F(xiàn)ixture_F3表示定位夾具50a,F(xiàn)ixture_F4表示定位夾具50b,Palette_P2表示板P2,Palette_P4表示板P4,Machine_Right表示加工機械54。<Actions><Actionrun=”F1P1P3ML”>(主作業(yè)腳本132a)<ARGUMENTS><OBJECTname=”Material_Palette”val=”Palette_P1”/><OBJECTname=”Goods_Palette”val=”Palette_P3”/><OBJECTname=”Fixture”val=”Fixture_F1”/><OBJECTname=”Machine”val=”Machine_left”/></ARGUMENTS></Action><Actionrun=”F2P2P4ML”>(主作業(yè)腳本132b)<ARGUMENTS><OBJECTname=”Material_Palette”val=”Palette_P2”/><OBJECTname=”Goods_Palette”val=”Palette_P4”/><OBJECTname=”Fixture”val=”Fixture_P2”/><OBJECTname=”Machine”val=”Machine_left”/></ARGUMENTS></Action><Actionrun”F1P1P3MR”>(主作業(yè)腳本132c)<ARGUMENTS><OBJECTname=”Material_Palette”val=”Palette_P1”/><OBJECTname=”Goods_Palette”val=”Palette_P3”/><OBJECTname=”Fixture”val=”Fixture_F3”/><OBJECTname=”Machine”val=”Machine_Right”/></ARGUMENTS></Action><Actionrun=”F2P2P4MR”>(主作業(yè)腳本132d)<ARGUMENTS><OBJECTname=”Material_Palette”val=”Palette_P2”/><OBJECTname=”Goods_Palette”val=”Palette_P4”/><OBJECTname=”Fixture”val=”Fixture_F4”/><OBJECTname=”Machine”val=”Machine_Right”/></ARGUMENTS></Action></Actions>制作成的主作業(yè)腳本132a、132b、132c、132d,從硬盤裝置116經(jīng)由網(wǎng)絡(luò)接口80復(fù)制到機械手控制裝置40的存儲器78中,作為主作業(yè)腳本94a、94b、94c、94d存儲。作業(yè)程序制作裝置62,以在作業(yè)模式數(shù)據(jù)124的步驟S300~S310(圖15)中的每一步驟中準備的作業(yè)塊(進一步細分作業(yè)單位的產(chǎn)物)的多種組合為雛形,使用裝置定義數(shù)據(jù)126以及裝置屬性數(shù)據(jù)128,制作對主作業(yè)腳本132的步驟S311~S321(圖16)的作業(yè)單位的每一個進行指令的多個(11個)作業(yè)程序(即作業(yè)程序組134)。作業(yè)程序組134,對應(yīng)上述四個主作業(yè)腳本132a、132b、132c、132d,制作四個作業(yè)程序組134a、134b、134c、134d。制作成的作業(yè)程序組134a、134b、134c、134d從硬盤裝置116經(jīng)由網(wǎng)絡(luò)接口80復(fù)制到機械手控制裝置40的存儲器78中,作為作業(yè)程序組96a、96b、96c、96d存儲。機械手控制裝置40,從單元控制器142接收生產(chǎn)開始指令后,通過數(shù)字信號輸入輸出電路82,在確認加工機械52以及54是否在加工中、以及在定位夾具48a、48b、50a以及50b中是否放置了工件的基礎(chǔ)上,選擇符合指令的一個主作業(yè)腳本94a、94b、94c或94d。復(fù)制所選擇的主作業(yè)腳本,制作作業(yè)腳本98。作業(yè)腳本98,根據(jù)來自單元控制器142的生產(chǎn)指示分別對應(yīng)可并行進行作業(yè)的多個工件W1、W2制作,作為作業(yè)腳本981、982在存儲器78中存儲。此外,有時,吻合生產(chǎn)指示,由單元控制器142指定在作業(yè)中使用的加工機械或定位夾具,在這種場合,不需要確認加工機械52、54、定位夾具48a、48b、50a、50b的狀態(tài)。在制作好作業(yè)腳本98后,CPU76遵從控制程序88,使用在每個作業(yè)腳本981、982中的作業(yè)開始條件14(圖1),判斷有沒有可執(zhí)行狀態(tài)的作業(yè)腳本981、982。此時,使用每個作業(yè)腳本981、982內(nèi)的作業(yè)開始條件14(圖1)。即,經(jīng)由數(shù)字信號輸入輸出電路82,檢測加工機械52、54、定位夾具48a、48b、50a、50b的每一個的狀態(tài),確認它們的狀態(tài)是否滿足各作業(yè)腳本981、982中的執(zhí)行階段的(即指針指示的)作業(yè)程序的作業(yè)開始條件14。在有多個滿足作業(yè)開始條件14的作業(yè)腳本時,遵從已經(jīng)說明的特定的規(guī)則,選擇其一。然后CPU76對與選擇的作業(yè)腳本對應(yīng)的一個作業(yè)程序組96a、96b、96c、96d的、在該作業(yè)腳本中的執(zhí)行階段的作業(yè)程序進行執(zhí)行處理。上述的作業(yè)程序的制作工序,是作業(yè)程序制作裝置62,對于作業(yè)模式數(shù)據(jù)124,準備與全部裝置組合對應(yīng)的個數(shù)的裝置定義數(shù)據(jù)126,制作與全部裝置組合對應(yīng)的主作業(yè)腳本132,向其輸入裝置屬性數(shù)據(jù)128以及裝置/部件類別數(shù)據(jù)130,預(yù)先制作全部作業(yè)程序組134的工序?;蛘撸部梢杂蓹C械手控制裝置40的CPU76,遵從控制程序88,根據(jù)外部模型100決定在作業(yè)中使用的裝置,通過把其裝置信息經(jīng)由網(wǎng)絡(luò)接口80向作業(yè)程序制作裝置62發(fā)送,作業(yè)程序制作裝置62制作與實際使用的裝置組合相關(guān)的作業(yè)程序組134。機械手控制裝置40的CPU76,在作業(yè)程序的執(zhí)行完成后,通過數(shù)字信號輸入輸出電路82,檢測加工機械52、54、定位夾具48a、48b、50a、50b的當前狀態(tài),判斷是否滿足作業(yè)腳本中執(zhí)行了作業(yè)程序的作業(yè)完成條件26(圖2)。如果在一定時間內(nèi)滿足作業(yè)完成條件26,則因為作業(yè)腳本的該行的執(zhí)行完成,所以CPU76遵從控制程序88,選擇可執(zhí)行的作業(yè)腳本981、982。CPU76在全部作業(yè)程序完成前反復(fù)該作業(yè)。CPU76遵從控制程序88,通過數(shù)字信號輸入輸出電路82,始終檢測加工機械52、54、定位夾具48a、48b、50a、50b的當前狀態(tài),隨時更新存儲器78內(nèi)的外部模型100。另外,在滿足作業(yè)腳本的作業(yè)完成條件26時,CPU76遵從控制程序88,更新內(nèi)部模型102。進而,CPU76遵從控制程序88,進行外部模型100和內(nèi)部模型102的比較,在兩者不一致時,執(zhí)行已述的例外處理作業(yè)單位。圖17~圖21,表示控制程序88中的動作序列??刂瞥绦?8,在存儲器78內(nèi)制作圖22所示條件處理表(CPT)104,在作業(yè)區(qū)域中使用該CPT104,進行處理。下面遵照附圖,說明動作序列的每一步驟。步驟S330,對于存儲器78內(nèi)的全部作業(yè)腳本98,宣布反復(fù)執(zhí)行到步驟S406的處理。在步驟S331,在存儲器78內(nèi)制作作為作業(yè)區(qū)域的CPT104。同時,初始化CPT104的全部行的全部欄的值。在步驟S332,在處理中的作業(yè)腳本中,把指針指示的行作為執(zhí)行行。步驟S333宣布對于在執(zhí)行行中記載的每個Condition標簽<Condition/>,反復(fù)執(zhí)行到步驟S343的處理。在步驟S334,取出Condition標簽的裝置或機械的名稱(對象名),將其記入CPT104的Object欄內(nèi)。在步驟S335,判斷在Object欄內(nèi)記入的對象名是否是裝置選擇項。裝置選擇項通過作業(yè)腳本內(nèi)的Select標簽<Select/>定義。在步驟S335中對象名不是裝置選擇項時,在步驟S336,在CPT104的Select欄內(nèi)記入對象名在步驟S335中對象名是裝置選擇項時,在步驟S337,確認是否有與Select標簽一致的裝置選擇項。在步驟S337中沒有與裝置選擇項一致的Select標簽時,因為用Condition標簽指示的裝置選擇項不正確無效,所以在步驟S338,從存儲器78中刪除CPT104,結(jié)束該作業(yè)腳本的處理,返回步驟S330。在步驟S337發(fā)現(xiàn)一致的Select標簽時,在步驟S339,在CPT104中追加在Select標簽的among以下用逗號區(qū)分的裝置選擇項候補數(shù)目的行,在CPT104的Select欄中記入成為裝置選擇項候補的裝置名。在步驟S340,在CPT104各行的的Condition欄內(nèi),在Condition標簽中,接著裝置名記入用冒號區(qū)分在到下一逗號間記述的Condition。在步驟S341,檢查與在作業(yè)腳本的執(zhí)行行內(nèi)在Object欄或者Select欄內(nèi)記入的裝置名相同的內(nèi)容是否作為Result標簽<Result/>被指定。在與在Object欄或者Select欄內(nèi)記入的裝置名相同的內(nèi)容是用Result標簽被指定時,在步驟S342在CPU104的Result欄內(nèi),在Result標簽中接著裝置名記入用冒號區(qū)分在到下一逗號間記入記述的ResultCondition。在與在Object欄或者Select欄內(nèi)記入的裝置名相同的內(nèi)容不是用Result標簽被指定時,在步驟S343把CPT104的Result欄記入NULL(在圖13中用—表示)。步驟S344表示對于在作業(yè)腳本的執(zhí)行行中記載的各Condition反復(fù)執(zhí)行從步驟S333到步驟S340的處理。在步驟S344結(jié)束、處理到達步驟S345時,在CPT104中,在Object欄記入全部用Condition指示的對象名,在對象名是裝置選擇項候補時,在Select欄內(nèi)記入裝置選擇項候補,在Condition欄內(nèi)記入對象的作業(yè)開始條件14。從步驟S345到步驟S350,根據(jù)作業(yè)腳本內(nèi)的Deforder標簽<Deforder/>執(zhí)行裝置選擇順序的處理。在作業(yè)腳本中僅記述一個Deforder標簽。在步驟S345,把作業(yè)用變量N初始化為1。步驟S346宣布,對于在Deforder標簽中通過逗號區(qū)分的裝置選擇順序指定符,反復(fù)執(zhí)行步驟S347~S348的處理。在步驟S347,在CPT104的Object欄內(nèi)查找與Deforder標簽的第N號的裝置選擇順序指定符相同的名稱的裝置,在該行的Deforder欄內(nèi)記入N。在步驟S348,變量N加1。在步驟S350,對于在CPT104內(nèi)未定義Deforder欄的行,在Deforder欄內(nèi)記入N。在步驟S351,為后面的處理把變量N的值保存到變量L中。在步驟S352~S355,執(zhí)行根據(jù)作業(yè)腳本內(nèi)的Workset標簽<Workset/>的裝置組合指定符的處理。在步驟S352,宣布對于在作業(yè)腳本中記述的多個Workset標簽的每一個,反復(fù)執(zhí)行步驟S353~S355的處理。在步驟S353,從CPT104的Select欄查找作為Workset標簽的第一號的參數(shù)的裝置名,在一致的行的Workset欄中記入作為Workset的第二號的參數(shù)的裝置名。在步驟S354中,從CPT104的Select欄查找作為Workset標簽的第二號的參數(shù)的裝置名,在一致的行的Workset欄中記入作為Workset的第一號的參數(shù)的裝置名。在步驟S356,把作業(yè)用的變量N初始化為1。步驟S357宣布,在變量N和變量L互相一致前,反復(fù)執(zhí)行到步驟S371的處理。在步驟S358,在CPT104內(nèi)查找Deforder欄是N的行。在步驟S359,用外部模型100檢查在步驟S358發(fā)現(xiàn)的行的Select欄內(nèi)記入的裝置的狀態(tài)。在步驟S360,判斷Select欄的裝置的狀態(tài)與外部模型100是否一致。在步驟S360判斷為Select欄的裝置的狀態(tài)與外部模型100不一致時,在步驟S361判斷是否檢查到CPT104的最后。在步驟S361判斷為未檢查到CPT104的最后時,在步驟S362,從CPT104中的下一行查找Deforder欄是N的行。在步驟S361判斷為到CPT104的最后檢查完時,在步驟S363,因為未發(fā)現(xiàn)與在外部模型100一致的裝置,所以判斷為對該作業(yè)腳本的裝置的分配失敗。在步驟S364,從存儲器78中刪除CPT104,結(jié)束該作業(yè)腳本的處理,為進行其他作業(yè)腳本的處理返回步驟S330。在步驟S360判斷Select欄的裝置的狀態(tài)與外部模型100一致時,前進到步驟S365及以后的處理。在步驟S365,檢查在Workset欄內(nèi)是否記入裝置組合指定符。如未記入,則完成了一個裝置的分配,在步驟S374,使CPT104的第N行的Hit欄為1,前進到步驟S371。在步驟S365判斷為已記入裝置組合指定符時,在步驟S366,從CPT104的Select欄查找在Workset欄內(nèi)記入的裝置,在步驟S367,判斷是否發(fā)現(xiàn)裝置。在步驟S367判斷為未發(fā)現(xiàn)裝置時,前進到步驟S372,認為裝置的分配失敗。于是,在步驟S373,從存儲器78中刪除CPT104,結(jié)束該作業(yè)腳本的處理。在步驟S367判斷為發(fā)現(xiàn)裝置時,在步驟S368,通過外部模型100檢查發(fā)現(xiàn)了裝置的CPT104的第M行的Condition欄。然后在步驟S369,判斷Condition欄和外部模型100是否一致。在步驟S369判斷為不一致時,返回步驟S366,從CPT104的Select欄查找在Workset欄內(nèi)記入的裝置。在步驟S369判斷為一致時,因為在裝置組合指定符中記入的兩個裝置已被分配一次,所以在步驟S370,使CPT104的第N行的Hit欄和第M行的Hit欄都置為1。在步驟S371中,給N加1,在步驟S375,返回步驟S357,在L和N一致前重復(fù)步驟S358~S371。在處理到達步驟S376時,意味著對于一個作業(yè)腳本的處理完成。因此返回步驟S330,對于存儲器78內(nèi)的全部作業(yè)腳本,反復(fù)步驟S330~S375的處理。步驟S377及以后的處理,在對于存儲器78內(nèi)的全部作業(yè)腳本的處理完成后進行。這里在存儲器78內(nèi),剩余對于裝置分配完成的作業(yè)腳本的CPT104。在步驟S377,從在存儲器78中剩余的CPT104中選擇一個。未被選擇的CPT104,在步驟S378從存儲器78內(nèi)刪除,在存儲器78內(nèi)僅剩一個CPT104。通過到步驟S379的處理,決定執(zhí)行相應(yīng)于在存儲器78內(nèi)剩余的CPT104的作業(yè)腳本的指針所指的行。在步驟S380,把CPT104的Hit欄是1的行的Select欄的記入內(nèi)容向作業(yè)程序制作裝置62轉(zhuǎn)發(fā)。在步驟S381,把作業(yè)腳本所指的行的內(nèi)容向作業(yè)程序制作裝置62轉(zhuǎn)發(fā)。步驟S382以及步驟S383,不是控制程序88的處理序列,而是作業(yè)程序制作裝置62中的處理,但是因為與控制程序88的處理序列同步進行處理,所以在這里作為一個處理序列表示。在步驟S382,從裝置屬性數(shù)據(jù)128查找Select欄的內(nèi)容的裝置,從作業(yè)模式數(shù)據(jù)124查找作業(yè)腳本的內(nèi)容,根據(jù)在步驟S380轉(zhuǎn)發(fā)的Select欄的記入內(nèi)容制作裝置定義數(shù)據(jù)126。然后通過向作業(yè)模式數(shù)據(jù)124輸入裝置定義數(shù)據(jù)126,制作主作業(yè)腳本132,將裝置屬性數(shù)據(jù)128向其輸入,制作作業(yè)程序組134。在步驟S383,使用網(wǎng)絡(luò)轉(zhuǎn)發(fā)制作好的作業(yè)程序組,在存儲器78中存儲。在步驟S384,執(zhí)行在存儲器78中存儲的作業(yè)程序。在步驟S385,通過外部模型100檢查在CPT104中Hit欄是1的各行的Select欄內(nèi)記入的裝置的狀態(tài),確認是否與在Result中記入的Condition一致。在步驟S386,判斷Hit欄是1的行的裝置的狀態(tài)是否與外部模型100一致。在判斷為CPT104中的Hit欄是1的全部行都一致時,轉(zhuǎn)移到步驟S387,如不一致則轉(zhuǎn)移到步驟S393。處理到達步驟S387后,作業(yè)腳本中用指針指示的一行的執(zhí)行完成。在步驟S388,作業(yè)腳本的指針前進到下一行。在步驟S389,判斷作業(yè)腳本的指針指示行的命令是否是GOTO命令,在是GOTO命令時,在步驟S392,從作業(yè)腳本中查找GOTO命令的跳轉(zhuǎn)目的地,使指針與該命令吻合。如不是GOTO命令,則前進到步驟S390。在步驟S390,判斷作業(yè)腳本的指針指示行的命令是否是DO命令,在是DO命令時,返回步驟S330,再次執(zhí)行對于存儲器78內(nèi)的全部作業(yè)腳本的處理。如不是DO命令,則前進到步驟S391。在步驟S391,判斷作業(yè)腳本的指針指示行的命令是否是STOP命令,在是STOP命令時,認為該作業(yè)腳本的處理完成,在步驟S396,從存儲器78刪除作業(yè)腳本。如不是STOP命令,為忽略該命令返回到步驟S388,使指針前進到下一行。在步驟S386判斷為不一致時,在步驟S393,確認是否超時。如未超時,則返回步驟S385,反復(fù)檢查。在步驟S393判斷為超時時,在步驟S394判斷在當前正執(zhí)行的行中是否定義了例外處理<ExceptionGoto/>。如定義了例外處理,則在步驟S395從作業(yè)腳本中查找在例外處理中指定的跳轉(zhuǎn)目的地,使指針與其吻合,分支到步驟S389。如未定義例外處理,則跳轉(zhuǎn)到步驟S397,執(zhí)行以后的警報停止和重新開始處理。在步驟S397,置機械手42為警報狀態(tài)并緊急停止。在步驟S398,在示教操作盤84的顯示器84a上顯示停止時的作業(yè)程序名、作業(yè)腳本名、作業(yè)腳本的執(zhí)行行的內(nèi)容、CPT104的Select欄和外部模型100的不一致的狀況,使操作員了解警報的詳情。在步驟S399,等待操作員使用示教操作盤84的輸入部84b輸入起動命令。在步驟S400,確認外部模型100和內(nèi)部模型102是否全部一致。在步驟S400判斷為一致時,轉(zhuǎn)移到步驟S406,解除機械手的警報,從停止的位置執(zhí)行作業(yè)程序,重新開始作業(yè)。在步驟S400判斷為不一致時,在步驟S401,通過在示教操作盤84的顯示部84a上顯示外部模型100和內(nèi)部模型102的不同,使操作員可以理解模型間的不一致的內(nèi)容。在步驟S402,根據(jù)外部模型100和內(nèi)部模型102的不同,在顯示器84a上顯示適當?shù)脑蚝蛯Σ叩南ⅰT诓襟ES403,在顯示器84a上顯示向操作員詢問是否不理睬外部模型100和內(nèi)部模型102的不一致而重新開始的消息、和是否重新開始的選擇菜單。在步驟S404,判斷操作員是否不理睬在步驟S403顯示的消息,而選擇重新開始,在選擇時,在步驟S405,把外部模型100的內(nèi)容全部復(fù)制到內(nèi)部模型102,強制使內(nèi)部模型102和外部模型100一致,然后在步驟S406,解除機械手42的警報,從停止的位置重新開始作業(yè)程序。在步驟S404操作員不理睬而不選擇重新開始時,再次返回步驟S399,等待操作員輸入起動命令。以上是控制程序88的控制動作序列。本發(fā)明不限于上述實施形態(tài),可以在權(quán)利要求的范圍的記載內(nèi)進行各種各樣的修正。例如,也可以構(gòu)成為,代替通過傳感器獲取機械手作業(yè)的環(huán)境的狀態(tài)的結(jié)構(gòu),通過以模擬軟件制作模擬的作業(yè)環(huán)境的狀態(tài),并隨機或者以一定規(guī)則使該模擬狀態(tài)變化,能夠確認機械手的作業(yè)狀況。另外,也可以通過使用模擬軟件用脫機編程裝置模擬機械手控制裝置執(zhí)行的作業(yè)單位、選擇接著進行的作業(yè)單位的方法、以及作業(yè)環(huán)境的狀態(tài),來預(yù)先脫機確認機械手的作業(yè)狀況。上面結(jié)合適當?shù)膶嵤┓绞秸f明了本發(fā)明,但是專業(yè)人員應(yīng)理解,在不超出后述權(quán)利要求的范圍的公開范圍的情況下,可以進行各種各樣的修改以及變更。權(quán)利要求1.一種機械手控制裝置(10;40),其遵照分別對多個作業(yè)單位進行指令的多個作業(yè)程序(12;12A,12B),對于多個工件(W;W1,W2)并行地使機械手(42)執(zhí)行包含該多個作業(yè)單位的作業(yè),其特征在于,所述多個作業(yè)程序的每一個包含以機械手開始對應(yīng)的所述作業(yè)單位為前提的作業(yè)開始條件(14)的記述,所述機械手控制裝置具有信息收集部(18),其收集實時地表示機械手執(zhí)行所述作業(yè)的環(huán)境狀態(tài)的狀態(tài)信息(16);程序選定部(20),其根據(jù)所述信息收集部收集到的所述狀態(tài)信息,從在所述多個作業(yè)程序中對于多個工件處于執(zhí)行階段的作業(yè)程序中,選定滿足所述作業(yè)開始條件的第一可執(zhí)行程序(12A);處理部(22),其執(zhí)行處理所述程序選定部所選定的所述第一可執(zhí)行程序;和程序完成判斷部(24),其判斷所述處理部是否完成所述第一可執(zhí)行程序的執(zhí)行處理,所述程序選定部對應(yīng)所述程序完成判斷部的判斷狀況,根據(jù)所述狀態(tài)信息,從處于所述執(zhí)行階段的作業(yè)程序中,選定滿足所述作業(yè)開始條件的第二可執(zhí)行程序(12B)作為所述處理部接著要執(zhí)行處理的作業(yè)程序。2.根據(jù)權(quán)利要求1所述的機械手控制裝置,其中,所述程序選定部根據(jù)所述狀態(tài)信息,在所述多個作業(yè)程序中確定幾個處于所述作業(yè)階段的作業(yè)程序,并且,從所確定的該作業(yè)程序中遵照預(yù)先規(guī)定的規(guī)則,選擇一個所述第一可執(zhí)行程序。3.根據(jù)權(quán)利要求1所述的機械手控制裝置,其中,所述程序選定部,參照與多個工件的每一個相關(guān)聯(lián)地對所述多個作業(yè)程序的執(zhí)行順序進行定義的多個作業(yè)腳本(98),來確定處于所述執(zhí)行階段的作業(yè)程序。4.根據(jù)權(quán)利要求3所述的機械手控制裝置,其中還具有存儲部(78),其存儲所述多個作業(yè)程序和所述多個作業(yè)腳本。5.根據(jù)權(quán)利要求1所述的機械手控制裝置,其中,在所述程序完成判斷部判斷所述處理部的所述執(zhí)行處理完成前,所述程序選定部選定所述第二可執(zhí)行程序,所述處理部執(zhí)行處理該第二可執(zhí)行程序。6.根據(jù)權(quán)利要求1所述的機械手控制裝置,其中,所述多個作業(yè)程序的每一個都包含以機械手完成對應(yīng)的所述作業(yè)單位為前提的作業(yè)完成條件(26)的記述,所述程序完成判斷部根據(jù)所述信息收集部收集到的所述狀態(tài)信息,判斷所述第一可執(zhí)行程序是否滿足該作業(yè)完成條件,由此判斷所述處理部的所述執(zhí)行處理是否完成。7.根據(jù)權(quán)利要求1所述的機械手控制裝置,其中,所述程序完成判斷部,具有內(nèi)部信息(28),并判斷該內(nèi)部信息與所述信息收集部收集到的所述狀態(tài)信息是否互相一致,由此判斷所述處理部的所述執(zhí)行處理是否完成,該內(nèi)部信息(28)表示將機械手執(zhí)行所述作業(yè)的所述環(huán)境模型化了的內(nèi)部模型(102)的狀態(tài)。8.根據(jù)權(quán)利要求7所述的機械手控制裝置,其中,所述多個作業(yè)程序包含對與所述多個作業(yè)單位不同的例外處理作業(yè)單位進行指令的例外作業(yè)程序,在所述程序完成判斷部判斷為所述內(nèi)部信息與所述狀態(tài)信息相互不一致時,所述程序選定部從該多個作業(yè)程序中選定該例外作業(yè)程序,所述處理部執(zhí)行處理該例外作業(yè)程序以代替所述第二可執(zhí)行程序。9.根據(jù)權(quán)利要求1所述的機械手控制裝置,其中,所述程序完成判斷部,還判斷是否經(jīng)過了預(yù)先規(guī)定的時間,直到判斷為所述處理部的所述執(zhí)行處理完成為止。10.根據(jù)權(quán)利要求9所述的機械手控制裝置,其中,所述多個作業(yè)程序包含對與所述多個作業(yè)單位不同的例外處理作業(yè)單位進行指令的例外作業(yè)程序,在所述程序完成判斷部判斷為經(jīng)過了所述時間時,所述程序選定部從該多個作業(yè)程序中選定該例外作業(yè)程序,所述處理部執(zhí)行處理該例外作業(yè)程序以代替所述第二可執(zhí)行程序。11.根據(jù)權(quán)利要求1至6中任意一項所述的機械手控制裝置,其中,還具有在所述作業(yè)的執(zhí)行中使機械手緊急停止的停止控制部(30);具有內(nèi)部信息(28)、判斷該內(nèi)部信息與所述信息收集部收集到的所述狀態(tài)信息是否互相一致的狀態(tài)判斷部(32),該內(nèi)部信息(28)表示將機械手執(zhí)行該作業(yè)的所述環(huán)境模型化了的內(nèi)部模型(102)的狀態(tài);和在該狀態(tài)判斷部判斷為該內(nèi)部信息與該狀態(tài)信息互相一致時解除該緊急停止、重新開始該作業(yè)的重新開始控制部(34)。12.根據(jù)權(quán)利要求11所述的機械手控制裝置,其中,在所述狀態(tài)判斷部判斷為所述內(nèi)部信息與所述狀態(tài)信息互相不一致時,所述重新開始控制部在重新開始所述作業(yè)前,輸出消息信號,該消息信號告知該內(nèi)部信息與該狀態(tài)信息不一致的內(nèi)容以及對策的至少一方。13.根據(jù)權(quán)利要求11所述的機械手控制裝置,其中,在所述狀態(tài)判斷部判斷為所述內(nèi)部信息與所述狀態(tài)信息互相不一致時,所述重新開始控制部在重新開始所述作業(yè)前,輸出請求重新開始許可指令的消息信號。14.根據(jù)權(quán)利要求13所述的機械手控制裝置,其中,所述重新開始控制部在得到所述重新開始許可指令時,把所述內(nèi)部信息改寫成與所述狀態(tài)信息相同的內(nèi)容,重新開始所述作業(yè)。15.一種機械手控制方法,該方法遵照分別對多個作業(yè)單位進行指令的多個作業(yè)程序(12;12A,12B),對于多個工件(W;W1,W2)并行地使機械手(42)執(zhí)行包含該多個作業(yè)單位的作業(yè),其特征在于,所述多個作業(yè)程序的每一個包含以機械手開始對應(yīng)的所述作業(yè)單位為前提的作業(yè)開始條件(14)的記述,所述機械手控制方法具有如下步驟收集實時地表示機械手執(zhí)行所述作業(yè)的環(huán)境狀態(tài)的狀態(tài)信息(16);根據(jù)收集到的所述狀態(tài)信息,從在所述多個作業(yè)程序中對于多個工件處于執(zhí)行階段的作業(yè)程序中,選定滿足所述作業(yè)開始條件的第一可執(zhí)行程序(12A);執(zhí)行處理所選定的所述第一可執(zhí)行程序;對應(yīng)所述第一可執(zhí)行程序的執(zhí)行處理狀況,根據(jù)所述狀態(tài)信息,從處于所述執(zhí)行階段的作業(yè)程序中,選定滿足所述作業(yè)開始條件的第二可執(zhí)行程序(12B);和執(zhí)行處理所選定的所述第二可執(zhí)行程序。16.根據(jù)權(quán)利要求15所述的機械手控制方法,其中,還具有如下步驟所述多個作業(yè)程序的每一個都包含以機械手完成對應(yīng)的所述作業(yè)單位為前提的作業(yè)完成條件(26)的記述,在選定第二可執(zhí)行程序的所述步驟前,根據(jù)所述狀態(tài)信息,判斷所述第一可執(zhí)行程序是否滿足該作業(yè)完成條件,由此判斷所述第一可執(zhí)行程序的所述執(zhí)行處理是否完成。17.根據(jù)權(quán)利要求15或16所述的機械手控制方法,其中,還具有如下步驟在選定第二可執(zhí)行程序的所述步驟前,判斷表示將機械手執(zhí)行所述作業(yè)的所述環(huán)境模型化了的內(nèi)部模型(102)的狀態(tài)的內(nèi)部信息(28)與所述信息收集部收集到的所述狀態(tài)信息互相是否一致,由此判斷所述第一可執(zhí)行程序的所述執(zhí)行處理是否完成。18.根據(jù)權(quán)利要求15或16所述的機械手控制方法,其中,還具有如下步驟在所述作業(yè)的執(zhí)行中機械手緊急停止時,判斷表示將機械手執(zhí)行該作業(yè)的所述環(huán)境模型化了的內(nèi)部模型(102)的狀態(tài)的內(nèi)部信息(28)和所述狀態(tài)信息是否互相一致;和在判斷該內(nèi)部信息與該狀態(tài)信息互相一致時解除該緊急停止,重新開始該作業(yè)。全文摘要一種機械手控制裝置,具有收集實時表示機械手執(zhí)行作業(yè)的環(huán)境狀態(tài)的狀態(tài)信息的信息收集部;根據(jù)信息收集部收集到的狀態(tài)信息,在多個作業(yè)程序中對于多個工件處于執(zhí)行階段的作業(yè)程序中,選定滿足作業(yè)開始條件的第一可執(zhí)行程序的程序選定部;執(zhí)行處理由程序選定部選定的第一可執(zhí)行程序的處理部;判斷處理部是否完成第一可執(zhí)行程序的執(zhí)行處理的程序完成判斷部。程序選定部,對應(yīng)程序完成判斷部的判斷狀況,根據(jù)狀態(tài)信息,在處于執(zhí)行階段的作業(yè)程序中,選定滿足作業(yè)開始條件的第二可執(zhí)行程序作為處理部接著要執(zhí)行處理的作業(yè)程序。文檔編號G05B19/4067GK1876334SQ20061008859公開日2006年12月13日申請日期2006年6月6日優(yōu)先權(quán)日2005年6月7日發(fā)明者二瓶亮,加藤哲朗,西浩次申請人:發(fā)那科株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1