第四章 系統實現
4.4 物件組裝
本研究使用約束基礎的組裝機制,相較於物理基礎的組裝機制而言,約 束基礎可以大幅降低程式之複雜程度,使系統的流暢度和精準度提升,並且利於 程式判定裝配的正確性,降低使用者的學習門檻。本研究採取 port 幾何約束機制 的組裝接合方式,並且在物件接合時,使用位置約束的方法,讓未曾受過組裝訓 練的使用者也能輕鬆完成組裝。
4.4.1 Port 組裝邏輯(port assembly constraint)
本研究使用約束基礎的 port 組裝接合機制,作為兩物件要進行接合時的連 接判斷。Port 在本系統中為兩虛擬物體結合時的接口,外型被設定為紫色的球體,
位於各零組件欲與其他零組件接合之處,如圖 4.14 所示。每個虛擬物體按其組 裝之需求設定 port 的種類、數量和位置,兩個同種之 port 為一組接合對,能將 兩物件結合,完成組裝程序。又每個虛擬物體上皆設有一至兩個 base port,當 base port 完成接合時,表示物體已成功連接至主要的零組件上完成此零件的組裝,此 時,物體的狀態會被設為無法抓取,以避免完成組裝的組件又被再次抓取。
實作上,使用 Leap Motion 感測的虛擬手進行組裝時,程式會先偵測欲接合 之兩物體上的 port 彼此之間是否有發生觸碰(trigger),再來,判定發生觸碰的兩 個 port 是否為同一種類的 port,如果確認此二 port 為一組接合對,則物件會自動 脫離虛擬手抵達正確接合位置完成接合;使用 PHANToM Omni® 來進行組裝時,
則需要等使用者放開 PHANToM Omni® 的按鈕後,才開始進行上述的 port 接合 判定,若符合接合邏輯,物件會自動抵達正確接合位置完成接合,若否,則物件 即停留在原位。
62
圖4.14 Port 示意圖
4.4.2 螺絲的接合邏輯
為了提升虛擬組裝系統之擬真度,本研究在螺絲的接合上面,多加設了一道 接合判斷邏輯。當使用者將螺絲放下時,也就是放開 PHANToM Omni® 的按鈕 時,系統不直接進行 port 接合判定,而是開始計算虛擬螺絲起子的長軸旋轉角 度,如圖 4.15 所示。當在一定時間內,旋轉量達到設定值,如公式(1)所示,系 統才開始進行接合判定,若一定時間內,旋轉量未達到設定值,則螺絲會被留在 原處,不進行接合,流程圖如圖 4.16 所示。
∑ 𝜃 > 𝛼
𝑖<𝑇/∆𝑡
𝑖=0
(α = 200°) (1)
∆𝑡 = 𝑓𝑟𝑎𝑚𝑒 𝑟𝑎𝑡𝑒 𝑇 = 𝑑𝑒𝑐𝑖𝑑𝑒𝑑 𝑡𝑖𝑚𝑒
圖4.15 螺絲延長軸旋轉
Ɵ
63
圖4.16 螺絲接合邏輯流程圖
4.4.3 組裝視覺邏輯提示
為了能讓使用者在組裝操作時有所依據,本研究提供使用者三種操作時的視 覺回饋分別在當物件被抓取時、當物件的 port 接觸到其它符合組裝邏輯可被接 合的 port 時、當物件成功完成組裝時。
button state turned off
If turning angles are enough?
If grabbing tool is screw driver or not ?
count the turning angles in given times YES
move to correct assembly place
end of the assembly process object not moving NO
YES NO
64
成功 抓取
碰到 有效的 port
成功 接合
圖4.17 組裝視覺邏輯提示意圖
65