Aerodrome Finance 中文站
AMPL中文网

你的位置:Aerodrome Finance 中文站 > AMPL中文网 > Chapter7_VAlign_illustrate

Chapter7_VAlign_illustrate

发布日期:2025-01-04 16:16    点击次数:140

註!標靶教導的部分請參考第五章 系統教導功能設定 機械架構示意圖: 圖:機械架構示意圖。   以下將實際撰寫程式過程分成三大部分: 第一部分 影像長度校正 第二部分將所有資料轉換成機械座標後,計算所需的資料(計算旋轉中心位置、記錄定位標靶標準位置與待測物定位標靶的現在位置..等等) 第三部分計算所需補正θ角, 平移偏差值(ΔX, ΔY );12步驟做完整的解說。 對位流程圖可參考以下連結位置: 對位過程的流程圖 未知資訊: 1. 標靶圖樣 2. 校正資訊(UnitLengthX/ UnitLengthY) 3. 待測物標靶標準位置座標 4. 旋轉中心位置座標 5. 待測物標靶現在位置座標 6. 待測物旋轉角度(θ) 7. 待測物以旋轉中心為圓心, 旋轉θ角度後標靶預測位置座標 8. 待測物標靶預測位置與標準位移差(ΔX, ΔY ) 第一部分: 影像長度校正 1. Create Channel(連結相機)->Live(連續取像)->Create Comport Channel (開啟COM Port通道,以控制運動平台)。 2. 將機械座標歸0。 3. 將定位標靶移至影像區域中。 4. 定位標靶教導: 定位標靶教導的詳細過程請參考第五章第一節 定位標靶教導功能。 5. 影像長度校正: 影像長度校正概念請參考第七章 第一節影像長度校正簡介 使用function: SetCalibrationData(), Calibrate() 1. 完成定位標靶教導後,手動搜尋標靶。 2. 記錄定位標靶的影像座標值;記錄定位標靶的機械座標值: 3. 1到2重複三次,得三個座標點;此三點每兩點所構成的直線彼此之間不可相互平行(平行會造成void Calibrate()函數執行失敗)。所得三組定位標靶的影像座標和機械座標個別輸入 SetCalibrationData(VaCalibration CalbData,double ScreenX,double ScreenY,double RealX,double RealY)。 設定校正資料的範例程式如下: // 宣告VAlign物件 VAlign app; // 設定第一校正線 app.SetCalibrationData(VA_CALIBRATION_DATA1,ScreenP1X,ScreenP1Y,RealP1X,RealP1Y); app.SetCalibrationData(VA_CALIBRATION_DATA2,ScreenP2X,ScreenP2Y,RealP2X,RealP2Y); // 設定第二校正線 app.SetCalibrationData(VA_CALIBRATION_DATA3,ScreenP2X,ScreenP2Y,RealP2X,RealP2Y); app.SetCalibrationData(VA_CALIBRATION_DATA4,ScreenP3X,ScreenP3Y,RealP3X,RealP3Y); 4. 呼叫Calibrate()函式。 5. 得校正參數。可由VAlign屬性UnitLengthX/ UnitLengthY而得。此數值一般極為相近,若得到的校正單位差異太大表示校正過程有誤。請重新做L型校正。如下圖: 得到資訊: 1. 標靶圖形 2. 校正資訊:UnitLengthX/ UnitLengthY(可藉由此兩屬性質來判斷,校正結果是否正確) 第二部分:將所有資料轉換成機械座標後,計算所需的資料(計算旋轉中心位置、記錄定位標靶標準位置與待測物定位標靶的現在位置..等等)。 參考連結 參考第七章第二節的座標轉換概念。 為何需要知道旋轉中心座標位置,請參考第四章 第三節 視覺動欸演算法則簡介(假定由motion即可準確得到旋轉中心座標位置,則可省略計算旋轉中心的步驟)。 三點成一圓: X2+Y2=r2 利用OVK Framework視覺程式庫元件功能:AxCircleRegression元件計算而得。 已知資訊: 1. 標靶圖形 2. 校正資訊:UnitLengthX/ UnitLengthY 未知資訊:(紅色字體代表已得到的資訊) 1. 標靶圖樣 2. 校正資訊(UnitLengthX/ UnitLengthY) 3. 待測物標靶標準位置座標 4. 旋轉中心位置座標 5. 待測物標靶現在位置座標 6. 待測物旋轉角度(θ) 7. 待測物以旋轉中心為圓心, 旋轉θ角度後標靶預測位置座標 8. 待測物標靶預測位置與標準位移差(ΔX, ΔY ) 6. 將影像座標轉換成機械座標,紀錄之。在第六步驟之後,皆以機械座標值做運算。下圖為簡略的介紹。 圖:將運動平台移至原點位置時,機械座標為(0, 0),此時影像十字中心位置可視為機械座標的原點(0, 0) 。   圖:運動平台移置 (10,10)位置此時機械座標為(10, 10),影像十字中心的機械座標視為(10,10);定位標靶與影像十字中心的差距為(ΔX, ΔY ),定位標靶在機械座標即為Real X =10+ΔX,RealY=10+ΔY。(此處(ΔX, ΔY ) 經由VAlign屬性 MechanicalOffsetX /MechanicalOffsetY即可得知)。 7. 手動控制運動平台,各別記錄待測物(在對角線的位置)的兩定位標靶在機械座標中的”標準位置",如此刀具子才能在正確的位置上進行加工。 定位標靶:待測物(欲加工物件)在對角線的位置均有精準度在一定範圍之內的定位標靶。 標準位置:待測物(欲加工物件)的定位標靶,需在機械座標中的特定位置(即為標準位置),刀具子才能在正確的位置上進行加工動作,如下圖所示: 圖:待測物(欲加工物件)的定位標靶須在機械座標中的”標準位置”(綠色圓點),加工物件才能順利進行加工作動。 8. 計算旋轉中心位置,並記錄旋轉中心的機械座標值。(在此範例中所使用的機械架構是T軸(旋轉軸)跟隨著XY軸運動,也有些機械架構為T軸只隨X或Y軸運動,甚至完全不動): 1. 手動控制T軸(旋轉軸)旋轉θ角。 2. 手動搜尋標靶,記錄標靶的機械座標值:此處的ΔX與ΔY由VAlign屬性MarkCenterX/ MarkCenterY即可得知。 3. 1到2步驟重複三次。得三組機械座標值(即圓上三點)。如下圖所示: 圓上第一點: 圓上第二點: 圓上第三點: 4. 圓上任一點到圓心的距離相等,解方程式得旋轉中心座標值。(抑或可使用OVK Framework視覺程式庫元件功能AxCircleRegression元件計算而得) 5. 記錄運動平台現在的機械座標值,如圖所示: 圖:記錄RealX 與RealY 所顯示的數值。 9. 記錄待測物(欲加工物件)兩個定位標靶現在機械座標值:如同記錄待測物”標準位置”的方式。請參考下圖: 圖:綠色圓點為定位標靶的標準位置;黑色圓點為待測物定位標靶現在位置。   得到知資訊: 1. 標靶標準位置座標(第七步驟) 2. 旋轉中心位置座標(第八步驟) 3. 標靶現在位置座標(第九步驟:物件已經過旋轉,所以目前標靶位置與標準位置不同,實際狀況可能為下一個待測物進入時的位置) 第三部分:計算所需補正θ角, 平移偏差值(ΔX, ΔY )。 參考連結 請參考第四章 第三節 視覺定位演算法則 旋轉角度計算方式,請參考下圖中的方程式: 已到知資訊: 1. 標靶圖形 2. 校正資訊:UnitLengthX/ UnitLengthY 3. 標靶標準位置座標 4. 旋轉中心位置座標 5. 標靶現在位置座標 未知資訊:(紅色字體代表已得到的資訊) 1. 標靶圖樣 2. 校正資訊(UnitLengthX/ UnitLengthY) 3. 待測物標靶標準位置座標 4. 旋轉中心位置座標 5. 待測物標靶現在位置座標 6. 待測物旋轉角度(θ) 7. 待測物以旋轉中心為圓心, 旋轉θ角度後標靶預測位置座標 8. 待測物標靶預測位置與標準位移差(ΔX, ΔY ) 10. 計算旋轉角度θ、旋轉中心移動後的所在位置(注意!T軸隨XY軸移動,所以旋轉中心會隨X,Y位置不同而有所變化),並利用以旋轉中心為圓心做θ角旋轉後,計算待測物定位標靶的”預測”位置”。 下兩圖為旋轉中心移動後位置的示意圖。 圖:運動平台現在所在位置的機械座標為(X1,Y1)(步驟8-5所紀錄的機械座標),RO為旋轉中心的機械座標(Xr,Yr) (此範例機械結構為T軸(即旋轉軸)跟隨著XY軸移動)。 圖:運動平台"移動後"的機械座標為(X2, Y2),移動後旋轉中心的機械座標RO*為(Xr*, Yr*)。(Xr*, Yr*)由Xr*=(X2-X1)+Xr與Yr*=(Y2-Y1)+Yr而得。 (此範例機械結構為T軸(即旋轉軸)跟隨著XY軸移動) 計算旋轉角度θ: 旋轉角度可由外積公式利用反函數asin(x)計算而得(請參考上方所提供的數學公式);此範例T軸是隨XY軸而移動。運動平台移動前,機械座標為(X1, Y1)、旋轉中心位置為RO(Xr, Yr);運動平台移動後的機械座標位置為(X2, Y2),此時的旋轉中心RO*的座標值即為( ((X2-X1)+Xr) , ((Y2-Y1)+Yr) ),如上頁兩圖例所示;當旋轉中心位置不同時,定位標靶的預測位置就會不同(相對地,而XY的偏移量 (ΔX, ΔY )也會有所不同), 如下兩圖所示: 圖:黑色圓點為定位標靶標準位置,綠色圓點為定位標靶現在位置,藍色圓點為定位標靶的預測位置。   圖: 黑色圓點為定位標靶標準位置,綠色圓點為定位標靶現在位置,藍色圓點為定位標靶的預測位置。當旋轉中心位置的不同時,定位標靶的預測位置就會不同。   計算定位標靶預測位置: 我們將移動後旋轉中心RO*做為圓心:  [方法一]:利用三角函數推算定位標靶預測位置的座標值,如下圖所示: 圖:綠色圓點為定位標靶現在位置、藍色圓點為預測位置、ΔX=r*cosθ,ΔY=r*sinθ;預測位置座標(x2, y2)為x2=x1+ΔX, y2=x1+ΔY。  [方法二]:使用向量的概念,利用旋轉矩陣公式計算定位標靶的預測位置,旋轉矩陣公式請參考下圖: 11. 計算定位標靶的預測位置與標準位置兩者之間的位移差(此處(ΔX, ΔY )是經由自己運算而得)。如下圖: 圖:黑色圓點為定位標靶標準位置,藍色圓點為定位標靶預測位置;橘色虛線為定位標靶的預測位置與標準位置兩者之間的位移差(ΔX, ΔY )。 已知資訊: 1. 標靶圖形 2. 校正資訊:UnitLengthX/ UnitLengthY 3. 標靶標準位置座標 4. 旋轉中心位置座標 5. 標靶現在位置座標 6. 待測物旋轉角度θ(步驟10) 7. 以旋轉中心為圓心,旋轉θ度後標靶的預測位置座標(步驟10) 8. 目前待測物位置與標準位置之間的位移差(ΔX, ΔY )(步驟11) 12. 由已計算出的資訊,下達指令給電控軟體系統做(θ ,ΔX, ΔY )校正。完成後視補正後的結果,重覆進行θ角計算、O點(旋轉中心)位置計算、(θ, ΔX, ΔY )補正等程序直到誤差縮小到可接受範圍之內。一般而言,如果運動平台的精度夠準確,此種方法只需要補正一次就可得到滿意結果。以下是對位過程的流程圖: 圖:對位過程的流程圖。   以上為VAlign準系統的實例解說,當然隨著使用場合與所需的功能不同,演算法與整個運作過程就會有些微變化,如何變化就端看設計者如何設計使用。 VAlign準系統利用簡單的演算法則、幾何推算再加上VAlign準系統將視覺系統運作的複雜流程完全隱藏起來,同時也將複雜的運算(如:座標的轉換矩陣、 標靶的位置與影像十字中心的機械座標偏差值)透過簡單的幾個VAlign ActiveX Control 的函數呼叫就可以輕易的針對擷取到的影像資料進行精密分析與定位並獲得偏差的補正值,僅需要將獲得的偏差補正值反應在電控軟體上即可做偏差值補正,輕易的完成校正工作, 進行後續加工動作,避免因為加工偏差或加工失敗所造成的無端損失。 希望透過以上章節的介紹,能協助加工製造系統設計者快速且成功的完成視覺定位功能的整合與開發,對於軟硬體的控制或者是影像分析上,不再有艱澀難懂的困擾。

首页| AMPL中文网 |

Powered by Aerodrome Finance 中文站 @2013-2022 RSS地图 HTML地图

Copyright Powered by站群系统 © 2013-2024