畢業(yè)設(shè)計(jì)開(kāi)題報(bào)告(理工類(lèi))
設(shè)計(jì)題目
三自由度搬運(yùn)機(jī)械手的設(shè)計(jì)
學(xué)生姓名
學(xué)號(hào)
專(zhuān)業(yè)
機(jī)械制造及其自及其自動(dòng)化
一、課題的目的意義:
1、 應(yīng)用搬運(yùn)機(jī)機(jī)械手有利于實(shí)現(xiàn)材料的傳送.共建的裝卸.刀具的更換以及機(jī)器的裝配的自動(dòng)化的程度,從而可以提高勞動(dòng)生產(chǎn)率和生產(chǎn)本。
2、 改善勞動(dòng)條件,避免人身安全。在高興.高壓.低溫.低壓等惡性環(huán)境下的場(chǎng)合中,用人手直接操作是危險(xiǎn)或基本不可能的,而用機(jī)械手即可部分或全部代替人安全的完成作業(yè),使勞動(dòng)條件得到改善。
3 、可以減輕人力,便于有節(jié)奏高效的生產(chǎn)。
4、 通過(guò)運(yùn)用兩年來(lái)所學(xué)的機(jī)械.電氣.氣動(dòng)PLC.計(jì)算機(jī)等有關(guān)知識(shí),學(xué)會(huì)根據(jù)實(shí)際問(wèn)題需要確定設(shè)計(jì)方案,構(gòu)思機(jī)械結(jié)構(gòu),完成程序設(shè)計(jì)及調(diào)試
5、 通過(guò)本次畢業(yè)設(shè)計(jì),將使我掌握寫(xiě)論文的一般步驟及方法。同時(shí)也鍛煉了我在遇到困難時(shí)冷靜分析。獨(dú)立思考及解決問(wèn)題的能力,而且培養(yǎng)了我和同學(xué)相互討論,相互學(xué)習(xí)的習(xí)慣。
二、資料調(diào)研分析:
我國(guó)的工業(yè)機(jī)械手發(fā)展主要是逐步擴(kuò)大其應(yīng)用范圍。在應(yīng)用專(zhuān)業(yè)機(jī)械手的同時(shí),相應(yīng)的發(fā)展通用機(jī)械手,研制出示教式機(jī)械手工業(yè)機(jī)械手是在第二次世界大戰(zhàn)期間發(fā)展起來(lái)的,始于40年代的美國(guó)橡樹(shù)嶺國(guó)家實(shí)驗(yàn)室的搬運(yùn)核原料的遙控機(jī)械操作手研究,它是一種主從型的控制系統(tǒng)。1958年美國(guó)聯(lián)合控制公司研制出第一臺(tái)機(jī)械手。它的結(jié)構(gòu)是:機(jī)體上安裝一回轉(zhuǎn)長(zhǎng)臂,端部裝有電磁鐵的工件抓放機(jī)構(gòu),控制系統(tǒng)是示教型的;1962年,美國(guó)聯(lián)合控制公司在上述方案的基礎(chǔ)上,又試制成一臺(tái)數(shù)控示教再現(xiàn)型機(jī)械手。運(yùn)動(dòng)系統(tǒng)仿造坦克炮塔,臂可以回轉(zhuǎn)、俯仰、伸縮,用液壓驅(qū)動(dòng);控制系統(tǒng)用磁鼓做儲(chǔ)存裝置。不少球面坐標(biāo)式機(jī)械手就是在這個(gè)基礎(chǔ)上發(fā)展起來(lái)的;普曼公司專(zhuān)門(mén)生產(chǎn)工業(yè)機(jī)械手聯(lián)邦德國(guó)機(jī)器制造業(yè)是從1970年開(kāi)始應(yīng)用機(jī)械手,主要用于起重運(yùn)輸、焊接和設(shè)備的上下料等作業(yè):聯(lián)邦德國(guó)K公司還生產(chǎn)一種點(diǎn)焊機(jī)械手,采用關(guān)節(jié)式結(jié)構(gòu)和程序控制;日本是工業(yè)機(jī)器人發(fā)展最快,應(yīng)用國(guó)家最多的國(guó)家,自1969年從美國(guó)引進(jìn)兩種典型機(jī)械手后,開(kāi)始大力從事機(jī)械手的研究,目前以成為世界上工業(yè)機(jī)械手應(yīng)用最多的國(guó)家之一。前蘇聯(lián)自六十年代開(kāi)始發(fā)展應(yīng)用機(jī)械手,主要用于機(jī)械化、自動(dòng)化程序較低、繁重單調(diào)、有害于健康的輔助性工作。
我國(guó)工業(yè)機(jī)械手的研究與開(kāi)發(fā)始于20世紀(jì)70年代。1972年我國(guó)第一臺(tái)機(jī)械手開(kāi)發(fā)于上海,隨之全國(guó)各省都開(kāi)始研制和應(yīng)用機(jī)械手。從第七個(gè)五年計(jì)劃(1986-1990)開(kāi)始,我國(guó)政府將工業(yè)機(jī)器人的發(fā)展列入其中,并且為此項(xiàng)目投入大量的資金,研究開(kāi)發(fā)并且制造了一系列的工業(yè)機(jī)器人,有由北京機(jī)械自動(dòng)化研究所設(shè)計(jì)制造的噴涂機(jī)器人,廣州機(jī)床研究所和北京機(jī)床研究所合作設(shè)計(jì)制造的點(diǎn)焊機(jī)器人,大連機(jī)床研究所設(shè)計(jì)制造的氬弧焊機(jī)器人,沈陽(yáng)工業(yè)大學(xué)設(shè)計(jì)制造的裝卸載機(jī)器人等等。這些機(jī)器人的控制器,都是由中國(guó)科學(xué)院沈陽(yáng)自動(dòng)化研究所和北京科技大學(xué)機(jī)器人研究所開(kāi)發(fā)的,同時(shí)一系列的機(jī)器人關(guān)鍵部件也被開(kāi)發(fā)出來(lái),如機(jī)器人專(zhuān)用軸承,減震齒輪,直流伺服電機(jī),編碼器,DC——PWM等等。
、計(jì)算機(jī)控制機(jī)械手和組合式機(jī)械手等??梢詫C(jī)械手各運(yùn)動(dòng)構(gòu)件,如伸縮、擺動(dòng)、升降、橫移、俯仰等機(jī)構(gòu),設(shè)計(jì)成典型的通用機(jī)構(gòu),以便根據(jù)不同的作業(yè)要求,選用不用的典型機(jī)構(gòu),組裝成各種用途的機(jī)械手,即便于設(shè)計(jì)制造,又便于跟換工件,擴(kuò)大了應(yīng)用范圍。
機(jī)械手的種類(lèi),按驅(qū)動(dòng)方式分為液壓式.氣動(dòng)式.電動(dòng)式.機(jī)械式機(jī)械手;按適用范圍可以分為專(zhuān)用機(jī)械手和通用機(jī)械手兩種;按運(yùn)動(dòng)軌跡可以分為點(diǎn)位控制和連續(xù)軌跡控制機(jī)械手等。
通過(guò)此次畢業(yè)設(shè)計(jì)完成氣動(dòng)技術(shù)與PLC技術(shù)的結(jié)合,設(shè)計(jì)出即環(huán)保又高效的機(jī)械手。
三、設(shè)計(jì)方案的可行性分析和預(yù)期目標(biāo):
一 可行性分析
1 機(jī)械手主要由手部、運(yùn)動(dòng)機(jī)構(gòu)和控制系統(tǒng)三大部分組成。手部是用來(lái)抓持工件的部件,根據(jù)被抓持物件的形狀、尺寸、重量、材料和作業(yè)要求而有多種結(jié)構(gòu)形式,有夾持型、托持型和吸附型等,本課題采用夾持式。運(yùn)動(dòng)機(jī)構(gòu),使手部完成各種轉(zhuǎn)動(dòng)、移動(dòng)或復(fù)合運(yùn)動(dòng)來(lái)實(shí)現(xiàn)規(guī)定的動(dòng)作,改變被抓持物件的位置和姿勢(shì),本課題將采用復(fù)合式。運(yùn)動(dòng)機(jī)構(gòu)的升降、伸縮、旋轉(zhuǎn)等獨(dú)立運(yùn)動(dòng)方式,稱(chēng)為機(jī)械手的自由度 。為了抓取空間中任意位置和方位的物體,需有6個(gè)自由度。自由度是機(jī)械手設(shè)計(jì)的關(guān)鍵參數(shù)。自由度越多,機(jī)械手的靈活性越大,通用性越廣,其結(jié)構(gòu)也越復(fù)雜。一般專(zhuān)用機(jī)械手有2~3個(gè)自由度,導(dǎo)軌采用移動(dòng)式。本課題可采用可編程序控制器對(duì)機(jī)械手實(shí)現(xiàn)自動(dòng)控制??刂葡到y(tǒng)硬件由開(kāi)關(guān)、按鈕、行程開(kāi)關(guān)、可編程控制器和輸入輸出繼電器構(gòu)成。軟件采用模塊式結(jié)構(gòu),回原位、手動(dòng)、單步、單周期、連續(xù),用選擇開(kāi)關(guān)來(lái)選擇動(dòng)作種類(lèi)??蓪?shí)現(xiàn)機(jī)械手的下降、夾緊、上升、慢進(jìn)、快進(jìn)、慢進(jìn)、延時(shí)、下降、放松、上升、慢退、快退、慢退動(dòng)作。
二 預(yù)期目標(biāo)
1 堅(jiān)持很好地全部閱讀指導(dǎo)教師指定的參考資料、文獻(xiàn),并閱讀較多的自選資料和較多的外文資料,積極開(kāi)展調(diào)研論證,此外,還充分利用時(shí)間,提前學(xué)習(xí)專(zhuān)業(yè)軟件,能夠熟練運(yùn)用CAD軟件進(jìn)行設(shè)計(jì)、分析、加工等操作,使產(chǎn)品提前得到的方案可行性設(shè)計(jì)。
2 選定自己適合和熟悉的制圖軟件,對(duì)選定的工具進(jìn)行深入學(xué)習(xí)及具體實(shí)踐。
3 對(duì)驅(qū)動(dòng)氣路進(jìn)行仔細(xì)研究,了解氣動(dòng)原理,繪制氣動(dòng)圖。
4 機(jī)械結(jié)構(gòu)分析,根據(jù)要求設(shè)計(jì)出合理輕便的機(jī)械手。
5 模擬調(diào)試后對(duì)整個(gè)機(jī)械手進(jìn)行完善。
本課題主要研究目標(biāo)是能夠?qū)崿F(xiàn)機(jī)械手工作的預(yù)期目標(biāo)和要求,能夠順利可靠的完成工作,完成裝配圖,氣動(dòng)圖等任務(wù)。
四、所需要的儀器設(shè)備、材料:
1 計(jì)算機(jī)一臺(tái)
2 三菱公司編.三菱FX2X可編程控器編程手冊(cè).1998
3 三菱公司編.三菱FX可編程控器編程手冊(cè).1995
4 張建民主編。機(jī)電一體化技術(shù)與系統(tǒng).北京:北京理工大學(xué)出版社,1996
5 張君安主編。機(jī)電一體化技術(shù)與系統(tǒng)。北京:兵器工業(yè)出版社,1997
6 徐志毅組編.機(jī)電一體化技術(shù)實(shí)用技術(shù).上海:上??茖W(xué)技術(shù)文獻(xiàn)出版社。1995
7 胡弘 姚伯威主編.機(jī)電一體化原理與應(yīng)用.北京:國(guó)防工業(yè)出版社.1999
五、課題分階段進(jìn)度計(jì)劃:
序號(hào)
起止日期
工 作 內(nèi) 容
階段成果
1
3.19-3.25
翻譯外文,查閱有關(guān)資料,討論方案
2
3.26-4.01
實(shí)習(xí)參觀,確定方案,寫(xiě)開(kāi)題報(bào)告
3
4.02-4.08
設(shè)計(jì)計(jì)算,繪制草圖
4
4.09-4.29
繪制裝配圖及零件圖
5
4.30-5.06
畫(huà)氣動(dòng)原理圖
6
5.07-5.20
硬件設(shè)計(jì).程序流程圖及軟件編程
7
5.21-5.27
程序模擬調(diào)試
8
5.28-6.03
編寫(xiě)說(shuō)明書(shū)
9
6.04-6.10
修改全部資料,答辯,資料歸檔
指導(dǎo)教師意見(jiàn):
簽字:
200 年 月 日
目 錄
摘 要 - 1 -
ABSTRACT - 2 -
1 緒論 - 5 -
1.1機(jī)械手的歷史 - 5 -
1.2 機(jī)械手的組成 - 6 -
1.3 機(jī)械手的分類(lèi) - 7 -
第2章 搬運(yùn)機(jī)械手機(jī)構(gòu)總體方案設(shè)計(jì) - 9 -
2.1 搬運(yùn)機(jī)械手設(shè)計(jì)要求 - 9 -
2.2 基本設(shè)計(jì)思路 - 9 -
2.2.1 系統(tǒng)分析 - 9 -
2.2.2 總體設(shè)計(jì)框圖 - 10 -
2.2.3 搬運(yùn)機(jī)械手的基本參數(shù) - 11 -
2.3 搬運(yùn)機(jī)械手結(jié)構(gòu)設(shè)計(jì) - 12 -
2.3.1 搬運(yùn)機(jī)械手坐標(biāo)形式的選擇 - 12 -
2.4 機(jī)械手材料的選擇 - 12 -
2.5機(jī)械臂的運(yùn)動(dòng)方式 - 12 -
2.6 搬運(yùn)機(jī)械手驅(qū)動(dòng)與控制系統(tǒng)分析 - 13 -
2.6.1 驅(qū)動(dòng)方式的選擇 - 13 -
2.6.2 控制系統(tǒng)的選擇 - 14 -
3 搬運(yùn)機(jī)械手機(jī)械結(jié)構(gòu)設(shè)計(jì)與計(jì)算 - 14 -
3.1 搬運(yùn)機(jī)械手手爪設(shè)計(jì) - 14 -
3.2 搬運(yùn)機(jī)械手手臂設(shè)計(jì) - 14 -
3.2.1 伸縮機(jī)械臂的設(shè)計(jì) - 14 -
3.2.2 升降機(jī)械臂的設(shè)計(jì) - 15 -
3.2.3 旋轉(zhuǎn)機(jī)械臂的設(shè)計(jì) - 17 -
3.3 手部設(shè)計(jì)計(jì)算 - 17 -
3.4 腕部設(shè)計(jì)計(jì)算 - 21 -
3.5 液壓驅(qū)動(dòng)系統(tǒng)設(shè)計(jì) - 22 -
3.6機(jī)身結(jié)構(gòu)的設(shè)計(jì) - 24 -
3.6.1 電機(jī)的選擇 - 24 -
3.6.2 螺柱的設(shè)計(jì)與校核 - 25 -
3.6.3 機(jī)座的機(jī)械結(jié)構(gòu)示意圖 - 26 -
4 搬運(yùn)機(jī)械手控制系統(tǒng)的設(shè)計(jì) - 28 -
4.1 PLC簡(jiǎn)介 - 28 -
4.2 PLC工作原理 - 28 -
4.3 PLC機(jī)型的選擇 - 28 -
4.3.1 PLC機(jī)型的選擇 - 29 -
4.3.2 所選PLC的參數(shù) - 29 -
4.4 PLC控制面板的擬定 - 30 -
4.5 機(jī)械手工藝過(guò)程和控制方案的確定 - 31 -
4.5.1 明確工藝要求 - 31 -
4.5.2 確定工藝流程 - 31 -
4.5.3 傳感器選擇 - 33 -
4.5.4 確定I/O點(diǎn)數(shù) - 33 -
4.6 PLC程序編寫(xiě) - 34 -
4.6.1 總體程序設(shè)計(jì)思路 - 34 -
4.6.2手動(dòng)程序的編寫(xiě) - 35 -
4.6.3 復(fù)位程序的編寫(xiě) - 36 -
4.6.4 自動(dòng)控制程序的編寫(xiě) - 38 -
5 結(jié)論 - 41 -
參考文獻(xiàn) - 42 -
致 謝 - 43 -
附表4:
學(xué)院畢業(yè)設(shè)計(jì)(論文)任務(wù)書(shū)
所在學(xué)院
機(jī)械與電氣工程學(xué)院
專(zhuān)業(yè)
機(jī)械設(shè)計(jì)制造及其自動(dòng)化
班級(jí)
學(xué)生姓名
學(xué)號(hào)
指導(dǎo)教師
題 目
三自由度搬運(yùn)機(jī)械手機(jī)構(gòu)設(shè)計(jì)
一、畢業(yè)設(shè)計(jì)(論文)工作內(nèi)容與基本要求:
主要任務(wù)與目標(biāo):
1、 翻譯2篇與本課題相關(guān)的近幾年的英文文獻(xiàn),文獻(xiàn)翻譯每篇要求在2000字以上;
2、 查閱和整理文獻(xiàn)并提交一篇反映課題內(nèi)容的文獻(xiàn)綜述,文獻(xiàn)綜述在3000字以上;
3、 綜合運(yùn)用所學(xué)知識(shí),搜集有關(guān)資料獨(dú)立完成三自由度搬運(yùn)機(jī)械手機(jī)構(gòu)的設(shè)計(jì)工作。
要求工作方向?yàn)閮蓚€(gè)直線方向和一個(gè)旋轉(zhuǎn)方向。在控制器的作用下,它執(zhí)行將工件從一條流水線拿到另一條流水線這一簡(jiǎn)單的動(dòng)作
原始數(shù)據(jù):自動(dòng)線上有A,B兩條輸送帶之間距離為1.5m,需設(shè)計(jì)工業(yè)機(jī)器人將一零件從A帶送到B帶。
零件尺寸:內(nèi)孔 ¢100,壁厚 10,高 100。 零件材料:45鋼。
需獨(dú)立完成機(jī)械手的裝配圖,在此基礎(chǔ)上完成所有零件圖的設(shè)計(jì),提交一份開(kāi)題報(bào)告;
4、 按照開(kāi)題報(bào)告的進(jìn)度計(jì)劃,獨(dú)立進(jìn)行夾持主軸結(jié)構(gòu)設(shè)計(jì)所需的數(shù)據(jù)計(jì)算,結(jié)合相關(guān)課程中涉及的經(jīng)驗(yàn)公式與經(jīng)驗(yàn)數(shù)據(jù),撰寫(xiě)論文,論文正文不少于10000字。
研究途徑與方法:
1、 結(jié)合所學(xué)專(zhuān)業(yè)課程,通過(guò)查閱相關(guān)資料,溫習(xí)相關(guān)CAD軟件,完成畢業(yè)設(shè)計(jì);
2、 查閱夾持主軸相關(guān)信息,完成三自由度搬運(yùn)機(jī)械手機(jī)構(gòu)機(jī)械系統(tǒng)設(shè)計(jì),結(jié)合專(zhuān)業(yè)課程制定畢業(yè)設(shè)計(jì)計(jì)劃,搭建論文正文主體框架,繪制三自由度搬運(yùn)機(jī)械手機(jī)構(gòu)二維裝配圖、拆畫(huà)所有零件圖、計(jì)算總體方案設(shè)計(jì)過(guò)程中所涉及的重要數(shù)據(jù),完善設(shè)計(jì)骨架,匯整豐富說(shuō)明書(shū)內(nèi)容,最后對(duì)格式進(jìn)行標(biāo)準(zhǔn)化處理,檢索并翻譯外文資料,按論文指導(dǎo)手冊(cè)的要求完成畢業(yè)設(shè)計(jì)全部?jī)?nèi)容。
推薦資料、參考文獻(xiàn):
[1]成大先. 《機(jī)械設(shè)計(jì)手冊(cè)》 [M]. 北京:化學(xué)工業(yè)出版社,2008.
[2]尚久浩. 《自動(dòng)機(jī)械設(shè)計(jì)》[M]. 北京:中國(guó)輕工業(yè)出版社,2006.
[3] 顧曉勤.工程力學(xué)ⅠⅡ[M]. 北京:機(jī)械工業(yè)出版社,2008.
[4]盧秉恒.機(jī)械制造技術(shù)基礎(chǔ)[M] .北京:機(jī)械工業(yè)出版社,2008.
[5] 單輝祖. 材料力學(xué)[M].北京:高等教育出版社, 2010.
[6]張鐵,謝存禧.機(jī)器人學(xué)[M].廣州:華南理工大學(xué)出版社,2001.
[7]余達(dá)太,馬香峰.工業(yè)機(jī)器人應(yīng)用工程[M].北京:冶金工業(yè)出版社,2001.
[8]吳琰琨. 液壓與氣動(dòng)技術(shù)[M] .北京:人民郵電出版社,2008.
設(shè)計(jì)技術(shù)要求:
1、 能夠?qū)崿F(xiàn)機(jī)械手的的搬運(yùn)功能;
2、 注明該搬運(yùn)機(jī)械手的外形尺寸;
3、 注明零件圖中各零件材料、表面處理要求及其他特殊要求等。
注意事項(xiàng):
1、 零件圖需要有圖框、零件尺寸標(biāo)注、技術(shù)要求需規(guī)范并符合制圖標(biāo)準(zhǔn);
2、 要求2D圖總量折合為2張A0圖以上的量;
3、最終稿2D圖需轉(zhuǎn)成PDF形式保薦并提交電子文檔;
4、英文翻譯需注明原文出處,并附上PDF格式原文。
二、畢業(yè)論文進(jìn)度計(jì)劃
1、結(jié)合任務(wù)書(shū)擬定畢業(yè)設(shè)計(jì)完成計(jì)劃,并完成開(kāi)題報(bào)告;
2、檢索并翻譯近幾年的英文文獻(xiàn);
3、制定設(shè)計(jì)方案,對(duì)搬運(yùn)機(jī)械手進(jìn)行結(jié)構(gòu)設(shè)計(jì);
4、完成搬運(yùn)機(jī)械手的裝配圖設(shè)計(jì),用2D-CAD繪制,裝配圖嚴(yán)格按機(jī)械制圖標(biāo)準(zhǔn)設(shè)計(jì),應(yīng)包含零件序號(hào)及零件明細(xì)表等;
5、完成所有零件的結(jié)構(gòu)設(shè)計(jì),按制圖標(biāo)準(zhǔn)標(biāo)注尺寸、公差、形位公差及表面粗糙度等;
6、對(duì)主軸各零件的功用、方案等設(shè)計(jì)進(jìn)行分析;
7、查閱、整理、完善文獻(xiàn)并撰寫(xiě)一篇反映課題內(nèi)容的文獻(xiàn)綜述,不少于3000字;
8、對(duì)畢業(yè)設(shè)計(jì)論文匯編的所有資料的格式進(jìn)行標(biāo)準(zhǔn)化處理;
9、對(duì)全部電子資料進(jìn)行匯整、打包,并以學(xué)號(hào)長(zhǎng)號(hào)命名提交為指導(dǎo)老師;
10、經(jīng)老師指導(dǎo)。修正不當(dāng)之處,將經(jīng)老師確認(rèn)的終稿打印,整理并按時(shí)上交。
畢業(yè)設(shè)計(jì)(論文)時(shí)間:2011年 6 月 20 日至2012年 4 月 30 日
計(jì) 劃 答 辯 時(shí) 間: 2012 年 4 月 15 日
三、專(zhuān)業(yè)(教研室)審批意見(jiàn):
審批人(簽字):
工作任務(wù)與工作量要求:原則上查閱文獻(xiàn)資料不少于12篇,其中外文資料不少于2篇;文獻(xiàn)綜述不少于3000字;文獻(xiàn)翻譯不少于2000字;畢業(yè)論文1篇不少于8000字,理工科類(lèi)論文或設(shè)計(jì)說(shuō)明書(shū)不少于6000字(同時(shí)提交有關(guān)圖紙和附件),外語(yǔ)類(lèi)專(zhuān)業(yè)論文不少于相當(dāng)6000漢字。 提交相關(guān)圖紙、實(shí)驗(yàn)報(bào)告、調(diào)研報(bào)告、譯文等其它形式的成果。畢業(yè)設(shè)計(jì)(論文)撰寫(xiě)規(guī)范及有關(guān)要求,請(qǐng)查閱《寧波大紅鷹學(xué)院畢業(yè)設(shè)計(jì)(論文)指導(dǎo)手冊(cè)》。
備注:學(xué)生一人一題,指導(dǎo)教師對(duì)每一名學(xué)生下達(dá)一份《畢業(yè)設(shè)計(jì)(論文)任務(wù)書(shū)》。
COMBINATION OF ROBOT CONTROL AND ASSEMBLY PLANNING FOR A PRECISION MANIPULATOOR
Abstract
This paper researches how to realize the automatic assembly operation on a two-finger precision manipulator. A multi-layer assembly support system is proposed. At the task-planning layer, based on the computer-aided design (CAD) model, the assembly sequence is first generated, and the information necessary for skill decomposition is also derived. Then, the assembly sequence is decomposed into robot skills at the skill-decomposition layer. These generated skills are managed and executed at the robot control layer. Experimental results show the feasibility and efficiency of the proposed system.
Keywords Manipulator Assembly planning Skill decomposition Automated assembly
1 Introduction
Owing to the micro-electro-mechanical systems (MEMS) techniques, many products are becoming very small and complex, such as microphones, micro-optical components, and microfluidic biomedical devices, which creates increasing needs for technologies and systems for the automated precision assembly of miniature parts. Many efforts aiming at semi-automated or automated assembly have been focused on microassembly technologies. However, microassembly techniques of high flexibility, efficiency, and reliability still open to further research. Thispaper researches how to realize the automatic assembly operation on a two-finger micromanipulator. A multi-layer assembly support system is proposed.
Automatic assembly is a complex problem which may involve many different issues, such as task planning, assembly sequences generation, execution, and control, etc. It can be simply divided into two phases; the assembly planning and the robot control. At the assembly-planning phase, the information necessary for assembly operations, such as the assembly sequence, is generated. At the robot control phase, the robot is driven based on the information generated at the assembly-planning phase, and the assembly operations are conducted. Skill primitives can work as the interface of assembly planning to robot control. Several robot systems based on skill primitives have been reported. The basic idea behind these systems is the robot programming. Robot movements are specified as skill primitives, based on which the assembly task is manually coded into programs. With the programs, the robot is controlled to fulfill assembly tasks automatically.
A skill-based micromanipulation system has been developed in the authors’ lab, and it can realize many micromanipulation operations. In the system, the assembly task is manually discomposed into skill sequences and compiled into a file. After importing the file into the system, the system can automatically execute the assembly task. This paper attempts to explore a user-friendly, and at the same time easy, sequence-generation method, to relieve the burden of manually programming the skill
sequence.
It is an effective method to determine the assembly sequence from geometric computer-aided design (CAD) models. Many approaches have been proposed. This paper applies a simple approach to generate the assembly sequence. It is not involved with the low-level data structure of the CAD model, and can be realized with the application programming interface (API) functions that many commercial CAD software packages provide. In the proposed approach, a relations graph among different components is first constructed by analyzing the assembly model, and then, possible sequences are searched, based onthe graph. According to certain criterion, the optimal sequence is finally obtained.
To decompose the assembly sequence into robot skill sequences, some works have been reported. In Nnaji et al.’s work, the assembly task commands are expanded to more detailed commands, which can be seen as robot skills, according to a predefined format. The decomposition approach of Mosemann and Wahl is based on the analysis of hyperarcs of AND/OR graphs representing the automatically generated assembly plans. This paper proposes a method to guide the skill decomposition. The assembly processes of parts are grouped into different phases, and parts are at different states. Specific workflows push forward parts from one state to another state. Each workflow is associated with a skill generator. According to the different start state and target state of the workflow, the skill generator creates a series of skills that can promote the part to its target state.
The hierarchy of the system proposed here ,the assembly information on how to assemble a product is transferred to the robot through multiple layers. The top layer is for the assembly-task planning. The information needed for the task planning and skill generation are extracted from the CAD model and are saved in the database. Based on the CAD model, the assembly task sequences are generated. At the skill-decomposition layer, tasks are decomposed into skill sequences. The generated skills are managed and executed at the robot control layer.
2 Task planning
Skills are not used directly at the assembly-planning phase. Instead, the concept of a task is used. A task can fulfill a series of assembly operations, for example, from locating a part, through moving the part, to fixing it with another part. In other words, one task includes many functions that may be fulfilled by several different skills. A task is defined as:
T =(Base Part; Assembly Part; Operation)
Base_Part and Assembly_Part are two parts that are assembled together. Base_Part is fixed on the worktable, while Assembly_Part is handled by robot’s end-effector and assembled onto the Base_Part. Operation describes how the Assembly_Part is assembled with the Base_Part; Operation ∈ {Insertion_T, screw_T, align_T,...}.
The structure of microparts is usually uncomplicated, and they can be modeled by the constructive solid geometry (CSG) method. Currently, many commercial CAD software packages can support 3D CSG modeling. The assembly model is represented as an object that consists of two parts with certain assembly relations that define how
the parts are to be assembled. In the CAD model, the relations are defined by geometric constraints. The geometric information cannot be used directly to guide the assembly operation—we have to derive the information necessary for assembly operations from the CAD model.
Through searching the assembly tree and geometric relations (mates’ relations) defined in the assembly’s CAD model, we can generate a relation graph among parts, for example, In the graph, the nodes represent the parts. If nodes are connected, it means that there are assembly relations among these connected nodes (parts).
2.1 Mating direction
In CSG, the relations of two parts, geometric constraints, are finally represented as relations between planes and lines, such as collinear, coplanar, tangential, perpendicular, etc. For example, a shaft is assembled in a hole. The assembly relations between the two parts may consist of such two constraints as collinear between the centerline of shaft Lc_shaft and the centerline of hole Lc_hole and coplanar between the plane P_Shaft and the plane P_Hole. The mating direction is a key issue for an assembly operation. This paper applies the following approach to compute the possible mating direction based on the geometric constraints (the shaft-in-hole operation of Fig. 3 is taken as an example):
1. For a part in the relation graph, calculate its remaining degrees of freedom,also called degrees of separation, of each geometric constraint.
For the coplanar constraint, the remaining degrees of freedom are . For the collinear constraint, the remaining degrees of freedom are . and can also be represented as and . Here, 1 means that there is a degree of separation between the two parts. , and so, the degree of freedom around the z axis will be ignored in the following steps.
In the case that there is a loop in the relation graph, such as parts Part 5, Part 6, and Part 7 in Fig. 2, the loop has to be broken before the mating direction is calculated. Under the assumption that all parts in the CAD model are fully constrained and not over-constrained, the following simple approach is adopted. For the part t in the loop, calculate the number of 1s in ; where is the remaining degrees of freedom of constraint k by part i. For example, in Fig. 2, given that the number of 1s in and is larger than and , respectively, then it can be regarded that the position of Part 7 is determined by constraints with both Part 5 and Part 6, while Part 5 and Part 6 can be fully constrained by constraints between Part 5 and Part 6.We can unite Part 5 and Part 6 as one node in the relation graph, also called a composite node, as shown in Fig. 2b. The composite node will be regarded as a single part, but it is obvious that the composite node implies an assembly sequence.
2. Calculate mating directions for all nodes in the relation graph. Again, beginning at the state that the shaft and the hole are assembled, separate the part in one degree of separation by a certain distance (larger than the maximum tolerance), and then check if interference occurs. Separation in both ±x axis and ±y axis of R1 causes the interference between the shaft and the hole. Separation in the +z direction raises no interference. Then, select the +z direction as the mating direction, which is represented as a vector M measured in the coordinate system of the
assembly. It should be noted that, in some cases, there may be several possible mating directions for a part. The condition for assembly operation in the mating direction to be ended should be given. When contact occurs between parts in the mating direction at the assembled state, which can be checked simply with geometric constraints, the end condition is measured by force sensory information, whereas position information is used as an end condition.
3. Calculate the grasping position. In this paper, parts are handled and manipulated with two separate probes, which will be discussed in the Sect. 4, and planes or edges are considered for grasping. In the case that there are several mating directions, the grasping planes are selected as G1∩G2∩...∩Gi, where Gi is possible grasping plane/edge set for the ith mating direction when the part is at its free state. For example, in Fig. 4, the pair planes P1/P1′, P2/P2′, and P3/P3′ can serve as possible grasping planes, and then the grasping planes are
The approaching direction of the end-effector is selected as the normal vector of the grasping planes. It is obvious that not all points on the grasping plane can be grasped. The following method is used to determine the grasping area. The end-effector, which is modeled as a cuboid, is first added in the CAD model, with the constraint of coplanar or tangential with the grasping plane. Beginning at the edge that is far away from the Base_Part in the mating direction, move the end-effector in the mating direction along the grasping plane until the end-effector is fully in contact with the part, the grasping plane is fully in contact with the end-effector, or a collision occurs. Record the edge and the distance, both of which are measured in the part’s coordinate system.
4. Separate gradually the two parts along the mating direction, while checking interference in the other degrees of separation, until no interference occurs in all of the other degrees of separation. There is obviously a separation distance that assures interference not to occur in every degree of separation. It is called the safe length in that direction. This length is used for the collision-free path calculation, which will be discussed in the following section.
2.2 Assembly sequence
Some criteria can be used to search the optimal assembly sequence, such as the mechanical stability of subassemblies, the degree of parallel execution, types of fixtures, etc. But for microassembly, we should pay more attention to one of its most important features, the limited workspace, when selecting the assembly sequence. Microassembly operations are usually conducted and monitored under microscopy, and the workspace for microassembly is very small. The assembly sequence brings much influence on the assembly efficiency. For example, a simple assembly with three parts. In sequence a, part A is first fixed onto part B. In the case that part C cannot be mounted in the workspace at the same time with component AB because of the small workspace, in order to assemble part C with AB, component AB has to be unmounted from the workspace. Then, component C is transported and fixed into the workspace. After that, component AB is transported back into the workspace again. In sequence b, there is no need to unmount any part. Sequence a is obviously inefficient and may cause much uncertainty. In other words, the greater the number of times of unmounting components required by an assembly sequence, the more inefficient the assembly sequence. In this paper, due to the small -workspace feature of microassembly, the number of times necessary for the mounting of parts is selected as the search criteria to find the assembly sequence that has a few a number of times for the mounting of parts as possible.
This paper proposes the following approach to search the assembly sequence. The relation graph of the assembly is used to search the optimal assembly sequence. Heuristic approaches are adopted in order to reduce the search times:
1. Check nodes connected with more than two nodes. If the mating directions of its connected nodes are different, mark them as inactive nodes, whereas mark the same mating directions as active mating direction.
2. Select a node that is not an inactive node. Mark the current node as the base node (part). The first base part is fixed on the workspace with the mating direction upside (this is done in the CAD model). Compare the size (e.g., weight or volume) of the base part with its connected parts, which can be done easily by reading the bill of materials (BOM) of the assembly. If the base part is much smaller, then mark it as an inactive node.
3. Select a node connected with the base node as an assembly node (part). Check the mating direction if the base node needs to be unmounted from the workspace. If needed, update a variable, say mount++. Reposition the component (note that there may be not only the base part in the workspace; some other parts may have been assembled with the base part) in the workspace so that the mating direction is kept upside.
4. In the CAD model, move the assembly part to the base part in the possible mating direction, while checking if interference (collision) occurs. If interference occurs, mark the base node as an inactive node and go to step 2, whereas select the Operation type according to parts’ geometric features. In this step, an Obstacle Box is also computed. The box, which is modeled as a cuboid, includes all parts in the workspace. It is used to calculate the collision-free path to move the assembly part, which will be introduced in the following section. The Obstacle Box is described by a position vector and its width, height, and length.
5. Record the assembly sequence with the Operation type, the mating direction, and the grasping position.
6. If all nodes have been searched, then mark the first base node as an inactive node and go to step 2. If not, select a node connected with the assembly node. Mark it as an assembly node, and the assembly node is updated as a base node. Check if there is one of the mating directions of the assembly node that is same as the mating direction of the former assembly node. If there is, use the former mating direction in the following steps. Go to step 3.
After searching the entire graph, we may have several assembly sequences. Comparing the values of mount, the more efficient one can be selected. If not even one sequence is returned, then users may have to select one manually. If there are N nodes in the relation graph of Fig. 2b, all of which are not classed as inactive node, and each node may have M mating directions, then it needs MN computations to find all assembly sequences. But because, usually, one part only has one mating direction, and there are some inactive nodes, the computation should be less than MN.
It should be noted that, in the above computation, several coordinate systems are involved, such as the coordinates of the assembly sequence, the coordinates of the base part, and the coordinates of the assembly. The relations among the coordinates are represented by a 4×4 transformation matrix, which is calculated based on the assembly CAD model when creating the relations graph. These matrixes are stored with all of the related parts in the database. They are also used in skill decomposition.
3 Skill decomposition and execution
3.1 Definition of skill primitive
Skill primitives are the interface between the assembly planning and robot control. There have been some definitions on skill primitives. The basic difference among these definitions is the skill’s complexity and functions that one skill can fulfill. From the point of view of assembly planning, it is obviously better that one skill can fulfill more functions. However, the control of a skill with many functions may become complicated. In the paper, two separate probes, rather than a single probe or parallel jaw gripper, are used to manipulate the part. Even for the grasp operation, the control process is not easy. In addition, for example, moving a part may involve not only the manipulator but also the worktable. Therefore, to simplify the control process, skills defined in the paper do not include many functions.
More importantly, the skills should be easily applied to various assembly tasks, that is, the set of skills should have generality to express specific tasks. There should not be overlap among skills. In the paper, a skill primitive for robot control is defined as:
Attributes_i Information necessary for Si to be executed. They can be classified as required attributes and option attributes, or sensory attributes and CAD-model-driven attributes. The attributes are represented by global variables used in different layers.
Action_i Robots’ actions, which is the basic sensormotion. Many actions are defined in the system, such as Move_Worktable, Move_Probes, Rotation_Worktable, Rotation_Probes, Touch, Insert, Screw, Grasp, etc. For one skill, there is only one Action. Due to the limited space, the details of actions will not be discussed in this paper.
Start_i The start state of Action_i, which is measured by sensor values.
End_i The end state of Action_i, which is measured by sensor values.
Condition_i The condition under which Action_i is executed.
From the above definitions, we may find that skill primitives in the paper are robot motions with start state and end state, and that they are executed under specific conditions. Assembly planning in the paper is to generate a sequence of robot actions and to assign values to attributes of these actions.
3.2 Skill decomposition
Some approaches have been proposed for skill decomposition. This paper presents a novel approach to guide the skill decomposition. As discussed above, in the present paper, a task is to assemble the Assembly_Part with the Base_Part. We define the process from the state that Assembly_Part is at a free state to the state that it is fixed with the Base_Part as the assembly lifecycle of the Assembly_Part. In its assembly lifecycle, the Assembly_Part may be at different assembly states.Here shows a shaft’s states shown as blocks and associated workflows of an insertion task. A workflow consisting of a group of skills pushes forward the Assembly_Part from one state to another state. A workflow is associated with a specific skill generator that is in charge of generating skills. For different