91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

介紹一種比較簡單的工業(yè)現(xiàn)場相機坐標(biāo)系和機械手坐標(biāo)系的標(biāo)定方案

新機器視覺 ? 來源:CSDN ? 作者:KayChanGeek ? 2022-09-05 11:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

工業(yè)現(xiàn)場使用視覺時一般需要相機坐標(biāo)系和機械手臂坐標(biāo)系的轉(zhuǎn)化,這里介紹一種比較簡單的標(biāo)定方案。沒有使用到標(biāo)定板。經(jīng)過幾個項目的測試,精度還算可以,如果要求高精度的場合,就用標(biāo)定板標(biāo)定吧!

037c648a-2c53-11ed-ba43-dac502259ad0.png

如上圖所示:OXY為機械手坐標(biāo)系,O'X'Y'為相機坐標(biāo)系。theta為兩個坐標(biāo)系之間的夾角。假設(shè)P點在圖像上的位置如圖,則P在機械手坐標(biāo)系有一個坐標(biāo),在圖像坐標(biāo)系也有一個坐標(biāo)。我們要做的工作就是圖像上的任意一點都可以轉(zhuǎn)化為機械手坐標(biāo)系上的坐標(biāo)點:P(Machine) = f(P(Image))。接下來介紹如何找到這個關(guān)系。

OXY為機械手坐標(biāo)系 O'X'Y'為相機坐標(biāo)系從上圖可以看出坐標(biāo)轉(zhuǎn)化關(guān)系:

x= x' * r * cos(theta) - y' * r * sin(theta) + x0;

y = x' * r * sin(theta) + y' * r * cos(theta) + y0;

其中r是毫米像素比、(mm/pixel)就是一個毫米有幾個像素,theta為兩個坐標(biāo)系之間的夾角,(x0,y0)為圖像坐標(biāo)原點到機械坐標(biāo)原點的距離。

簡化抽象公式,假設(shè):

a = r * cos(theta);

b = r * sin(theta);

c = x0;

d = y0;

得到:

x= x' * a - y' * b + c;

y = x' * b + y' * a + d;

很顯然,要解出這個方程,需要兩組對應(yīng)關(guān)系,就是兩組對應(yīng)的坐標(biāo)點。設(shè)兩組坐標(biāo)點,如下:

第一組:圖像坐標(biāo)點:(xImage1,yImage1) 對應(yīng)的機械坐標(biāo)點:(xMachine1,yMachine1)

第二組:圖像坐標(biāo)點:(xImage2,yImage2) 對應(yīng)的機械坐標(biāo)點:(xMachine2,yMachine2)

則可以解出a ,b, c, d。如下:

038f3254-2c53-11ed-ba43-dac502259ad0.jpg

所以,就得出了圖像上任意一點的像素坐標(biāo)轉(zhuǎn)成機械手坐標(biāo)的關(guān)系。

以下是我寫的一個求解a ,b, c, d軟件:

03acdc82-2c53-11ed-ba43-dac502259ad0.png

下面舉個栗子說明一下操作吧!這是我實際項目中的機械手和相機布局情況,畫圖真T``M`累!,如下圖:

03c0c008-2c53-11ed-ba43-dac502259ad0.png

首先將產(chǎn)品上的目標(biāo)點搞到機械手的Z軸的中心,然后移動到相機視野范圍內(nèi),讓識別產(chǎn)品上的目標(biāo)點,這時,你會讀到一組機械手坐標(biāo)(也就是上面所說的(xMachine1,yMachine1)),和一組相機坐標(biāo)(也就是上面所說的(xImage1,yImage1)),再在相機視野范圍內(nèi)移動機械手,就可以得到第二組數(shù)據(jù)(xMachine2,yMachine2)和(xImage2,yImage2),寫入標(biāo)定軟件就可以求出a, b, c, d。就求出了圖像上任意一點對應(yīng)的機械坐標(biāo),然后你下次移動第二個產(chǎn)品到相機視野時,首先識別目標(biāo)點的像素坐標(biāo),經(jīng)過對應(yīng)的轉(zhuǎn)換就可以得出機械坐標(biāo),然后進行相應(yīng)的偏移即可實現(xiàn)你想要的操作!

當(dāng)然,有些時候,實際現(xiàn)場并沒有如你所愿,現(xiàn)在出現(xiàn)一種情況就是以機械手自帶的Z軸無法移動到視野中去,這樣就無法進行上面的操作了,系不系!這也是我遇到的情況,SO,我的解決方案如下:先上示意圖:

03d7d2f2-2c53-11ed-ba43-dac502259ad0.png

如圖,就是在機械手Z軸的橫桿上加上一個橫條,使得產(chǎn)品可以移動到視野范圍內(nèi)。然后進行上面的操作,雖然現(xiàn)在可以將產(chǎn)品移動到視野范圍內(nèi)了,但是你會發(fā)現(xiàn)此時機械手的坐標(biāo)并不是產(chǎn)品的坐標(biāo),因為他們之間隔著一個橫條,那我們要怎么換算過來呢!

首先,我們可以這么假定的認為,他們是機械手的坐標(biāo)就是產(chǎn)品的坐標(biāo),然后就可以用上面取兩組對應(yīng)點的方法求出圖像上每個點的機械坐標(biāo)了,但是,此時的機械坐標(biāo)并不是真正的機械坐標(biāo),但是,我們可以利用這些坐標(biāo)找出機械手U軸的旋轉(zhuǎn)中心就是Z軸(就是實際機械坐標(biāo)所在的位置)在我們所建立的不是真正的機械坐標(biāo)系中的坐標(biāo)。是不是有點不好理解,我也不大清楚怎么描述!求U軸的旋轉(zhuǎn)中心的過程如下:上圖:

03f10268-2c53-11ed-ba43-dac502259ad0.png

如圖:將產(chǎn)品的目標(biāo)點繞機械手的U軸的旋轉(zhuǎn)中心旋轉(zhuǎn)得到3的目標(biāo)點的不是真正的機械坐標(biāo)系的坐標(biāo)P1,P2,P3,必須讓每次旋轉(zhuǎn)的目標(biāo)點在視野范圍內(nèi),然后通過圓弧上的3點就可以求得圓心。此時的圓心坐標(biāo)為不是真正的機械坐標(biāo)系的坐標(biāo)。然后我們就可以求出產(chǎn)品中心和機械手U軸旋轉(zhuǎn)中心的deltaX,deltaY,然后就可以結(jié)合真正的機械坐標(biāo)系建立工件坐標(biāo)系,要對機械手有些了解才比較好理解這些拗口的話!然后對于每一個新的產(chǎn)品都可以建立合適的工件坐標(biāo)系,然后進行補正和一些操作!

相機跟隨著機械手運動(它們綁定在一起了),如果還將標(biāo)定靶標(biāo)也固定在機械手上的話,三個對象都相對運動,就無法標(biāo)定了!那要怎么利用標(biāo)定助手完成標(biāo)定呢?經(jīng)過思考,我給出了以下標(biāo)定思路:

整個標(biāo)定系統(tǒng)的初始狀態(tài)

相機和機械手綁定在一起并且機械手旋轉(zhuǎn)中心處于機械原點,這時候相機中心和機械手中心有一個相對的偏移并且是固定的(相機中心和機械手旋轉(zhuǎn)中心的相對距離設(shè)為(detX,detY)),將標(biāo)定靶標(biāo)放置在工作區(qū)域(實際機械手的工作區(qū)域)中的合適位置。

第一步:求取第一組圖像點坐標(biāo)C1

移動機械手(相機會跟著移動)到相機能夠清晰拍攝到標(biāo)定靶標(biāo)的位置(設(shè)該位置的機械坐標(biāo)為(x0,y0))。然后調(diào)整標(biāo)定靶標(biāo)的識別參數(shù),使得能夠?qū)崟r的識別標(biāo)定靶標(biāo)的中心位置,手動移動靶標(biāo)最好讓它遠離圖像中心,越遠越好(精度越高)但是不能超出相機的視野范圍,我就把靶標(biāo)放在相機視野的左上角的區(qū)域吧,然后我們識別當(dāng)前靶標(biāo)的圖像位置C1,就是第一組數(shù)據(jù)的圖像點。

第二步:求取第一組機械點坐標(biāo)M1

進入“標(biāo)定”選項卡,勾選“顯示十字標(biāo)”,這時候會在實時圖像中間顯示一個藍色的十字光標(biāo),然后,慢速移動機械手,直到C1點和十字光標(biāo)的交點重合(也就是說移動機械手讓實時識別到的靶標(biāo)中心坐標(biāo)處于圖像的中心,比如采集的圖像為2048*1536大小的,你需要緩慢移動機械手(靶標(biāo)保持不動)直到靶標(biāo)的中心處于(1024,768)的這個位置),然后記下當(dāng)前的機械手坐標(biāo)也就是第一組數(shù)據(jù)的機械點M1(注意:此時實際是讓相機中心和靶標(biāo)中心重合,并非機械手旋轉(zhuǎn)中心和靶標(biāo)中心重合,它們之間差了一個detX,detY的距離,具體怎么換算,等下再說)。

第三步:求取第二組圖像點坐標(biāo)C2

將機械手移動回到初始的工作坐標(biāo)點(x0,y0),將靶標(biāo)放在相機視野的右下角的區(qū)域,識別當(dāng)前的靶標(biāo)圖像坐標(biāo)C2,就是第二組數(shù)據(jù)的圖像點。

第四步:求取第二組機械點坐標(biāo)M2

同理,慢速移動機械手,直到C2點和十字光標(biāo)的交點重合(就是移動機械手讓實時識別到的靶標(biāo)中心坐標(biāo)處于圖像的中心),然后記下當(dāng)前的機械手坐標(biāo)也就是第二組數(shù)據(jù)的機械點M2。

第五步:求取整個機械手工作區(qū)域坐標(biāo)系和相機坐標(biāo)系的對應(yīng)關(guān)系

不知道你有沒有發(fā)現(xiàn),上面求得工作區(qū)域只對工作區(qū)域(x0,y0)開始到相機視野結(jié)束的位置有效(比如你在機械手移動到工作區(qū)域(x0,y0)為起點的位置識別靶標(biāo)的圖像位置坐標(biāo)為(100,100),但是你將機械手移動到工作區(qū)域(x1,y1)為起點的位置識別靶標(biāo)的圖像位置坐標(biāo)也可能為(100,100))。這樣換算過來的機械坐標(biāo)就是錯誤的,其實我們上面求得是小區(qū)域的轉(zhuǎn)換關(guān)系,那我們要怎么擴展到整個機械手的工作區(qū)域呢?

我們只需要這樣做:在機械手工作的時候是可以知道自己在哪里的,比如:現(xiàn)在機械手移動到工作區(qū)域(x1,y1)為起點的位置識別靶標(biāo)的圖像位置坐標(biāo)為(100,100),我們將(100,100)代入轉(zhuǎn)換關(guān)系trans得出來的機械坐標(biāo)是對應(yīng)(x0,y0)的,要轉(zhuǎn)換到對應(yīng)(x1,y1)的只需要將換算處理的坐標(biāo)加上(x1 - x0,y1 - y0)即可!抽象的公式如下:

0407b490-2c53-11ed-ba43-dac502259ad0.jpg

其中trans函數(shù)就是將圖像坐標(biāo)轉(zhuǎn)換為相對于(x0,y0)工作區(qū)域的機械坐標(biāo),再加上坐標(biāo)(x1 - x0,y1 - y0)就是當(dāng)前正確的機械坐標(biāo)。到此,我們得到了圖像坐標(biāo)和整個機械手工作區(qū)域的坐標(biāo)的關(guān)系,但是此時的機械坐標(biāo)指的是相機的中心,并不是機械手的旋轉(zhuǎn)中心。

第六步:將相機中心轉(zhuǎn)換為機械手的旋轉(zhuǎn)中心

首先,你可以利用目測法,游標(biāo)卡尺法等等粗略的算出detX,detY的值,然后,進行實時識別和移動測試進行細調(diào),因為粗略的估算有誤差,你可以經(jīng)過多次微調(diào)直到精確到機械手的旋轉(zhuǎn)中心移動到產(chǎn)品的上方就成功了。記下此時的detX,detY,代入以下公式就可以算出了最終的機械手應(yīng)該去的地方了。最終的換算公式如下:

0421837a-2c53-11ed-ba43-dac502259ad0.jpg

整個過程的偽代碼運算過程如下:

0437da44-2c53-11ed-ba43-dac502259ad0.jpg

利用標(biāo)定助手求取[a,b,c,d]外參矩陣的輸入?yún)?shù)[C1,M1]和[C2,M2]的操作方法如下圖所示:

045571a8-2c53-11ed-ba43-dac502259ad0.jpg




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 工業(yè)相機
    +關(guān)注

    關(guān)注

    5

    文章

    435

    瀏覽量

    25825

原文標(biāo)題:工業(yè)現(xiàn)場相機坐標(biāo)系和機械手坐標(biāo)系的標(biāo)定

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    柔性機械手視覺供料解決方案,提升無序分揀效率!

    正運動柔性機械手供料解決方案
    的頭像 發(fā)表于 10-09 14:58 ?548次閱讀
    柔性<b class='flag-5'>機械手</b>視覺供料解決<b class='flag-5'>方案</b>,提升無序分揀效率!

    什邡離線掃描設(shè)備如何測量長材直線度

    、每米等多種直線度誤差和外徑。 1、基本原理 兩組測頭可組成坐標(biāo)系,通過每個測頭測量的被測物中心位置可計算出被測物中心在坐標(biāo)系中的坐標(biāo)位置 離線掃描式直線度測量儀是
    發(fā)表于 09-05 14:05

    【M-K1HSE開發(fā)板免費體驗】相關(guān)源碼分析與實現(xiàn)2-全部案例運行般思路

    ): save(): 保存當(dāng)前畫布的“狀態(tài)”(包括坐標(biāo)系的原點、旋轉(zhuǎn)角度等)。這是個非常重要的步驟,相當(dāng)于創(chuàng)建個存檔。 rotate(): 根據(jù)傳入的角度 degree 旋轉(zhuǎn)整個畫布坐標(biāo)系
    發(fā)表于 09-03 21:46

    亳州ZG02-D/SY系列 離線掃描直線度測量儀

    、每米等多種直線度誤差和外徑。 1、基本原理 兩組測頭可組成坐標(biāo)系,通過每個測頭測量的被測物中心位置可計算出被測物中心在坐標(biāo)系中的坐標(biāo)位置 2、數(shù)據(jù)計算方法 測量儀通過
    發(fā)表于 07-31 15:33

    坐標(biāo)和激光跟蹤儀的不同之處

    激光跟蹤儀和三坐標(biāo)測量機(CMM)是工業(yè)領(lǐng)域兩大高精度測量設(shè)備,但它們在原理、適用范圍和典型場景上存在顯著差異。下面從核心區(qū)別與應(yīng)用領(lǐng)域兩方面進行系統(tǒng)分析:、核心區(qū)別對比1.測量原理與工作方式激光
    的頭像 發(fā)表于 07-21 15:07 ?1378次閱讀
    三<b class='flag-5'>坐標(biāo)</b>和激光跟蹤儀的不同之處

    無刷直流電機轉(zhuǎn)矩脈動抑制新方法

    轉(zhuǎn)矩脈動是影響無劇直流電機在高精度伺服系統(tǒng)中應(yīng)用的主要原因。提出了一種基于a-p變換和Lyapunov函數(shù)的轉(zhuǎn)矩脈動抑制直接功率控制方法。該方法在a-β坐標(biāo)系下通過功率控制優(yōu)化了電磁有功功率和電磁
    發(fā)表于 07-09 14:12

    鴻蒙地圖功能開發(fā)【3. 代碼開發(fā)】##地圖開發(fā)##

    以后再去更新這個配置參數(shù)。 第二,定要注意經(jīng)緯度坐標(biāo)坐標(biāo)系。從大家的慣性認知中,既然我是通過原生鴻蒙的Location Kit獲取的經(jīng)緯度坐標(biāo),那么當(dāng)然適用于原生鴻蒙的Map Ki
    發(fā)表于 06-29 22:59

    DELTA機械手多物料視覺分揀的應(yīng)用

    正運動DELTA機械手多物料視覺分揀解決方案
    的頭像 發(fā)表于 06-24 11:16 ?988次閱讀
    DELTA<b class='flag-5'>機械手</b>多物料視覺分揀的應(yīng)用

    三相異步電機矢量控制的研究

    摘 要:在異步電動機數(shù)學(xué)模型的基礎(chǔ)上,討論了失量控制理論及其解耦性質(zhì)。將異步電動機三相靜止坐標(biāo)系下的電壓方程、磁鏈方程、轉(zhuǎn)矩方程分別變換到兩相同步旋轉(zhuǎn)坐標(biāo)系下。通過轉(zhuǎn)子磁場定向技術(shù),使定子繞組電流
    發(fā)表于 06-16 21:43

    VirtualLab Fusion應(yīng)用:Ince-Gaussian模式

    摘要 除了厄米和拉蓋爾高斯光束模式外,波動方程在傍軸情況還有第三嚴(yán)格的正交解——即所謂的Ince-Gaussian光束。這些解在橢圓坐標(biāo)系中定義,并且允許通過橢圓參數(shù)實現(xiàn)厄米和拉蓋爾高斯光束模式
    發(fā)表于 04-30 08:46

    電機矢量控制中坐標(biāo)變換的詳細推導(dǎo)(可下載)

    、Clarke 變換推導(dǎo)(三相靜止坐標(biāo)與兩相靜止坐標(biāo)換算)通過三相靜止坐標(biāo)系(ABC)和兩相靜止坐標(biāo)系(αβ)的換算,可以實現(xiàn)電機三相電源
    發(fā)表于 04-03 11:35 ?6次下載

    不看好兆瓦閃充的底層邏輯:技術(shù)躍進背后的現(xiàn)實困境與生態(tài)失衡

    兆瓦閃充的技術(shù)突破值得肯定,但其商業(yè)價值需置于更復(fù)雜的現(xiàn)實坐標(biāo)系中評估。
    的頭像 發(fā)表于 04-01 15:39 ?1273次閱讀
    不看好兆瓦閃充的底層邏輯:技術(shù)躍進背后的現(xiàn)實困境與生態(tài)失衡

    克拉克變換&amp;帕克變換:電機界的“變形金剛”雙人組

    ”綜合征。它們能讓復(fù)雜的旋轉(zhuǎn)電流瞬間變老實,就像把孫悟空綁在五指山下,任你施法! 二、克拉克變換:三相變兩相的“空間折疊術(shù)” 1. 核心功能:把三相靜止坐標(biāo)系“拍扁” 操作方式:用個2/3的“魔法系數(shù)”把
    發(fā)表于 03-22 17:48

    LSM6DSV16X內(nèi)置的傳感器融合算法SFLP,輸出的四元數(shù)是自身坐標(biāo)系下的還是全局坐標(biāo)系下的?

    請問各位大佬,LSM6DSV16X內(nèi)置的傳感器融合算法SFLP,輸出的四元數(shù)是自身坐標(biāo)系下的還是全局坐標(biāo)系下的?以及輸出的陀螺儀偏置是實時更新的嗎?謝謝!
    發(fā)表于 03-14 07:22

    坐標(biāo)測量機的機器坐標(biāo)系和原點介紹

    坐標(biāo)測量機的機器坐標(biāo)系和原點是其測量系統(tǒng)中的重要概念,以下是詳細介紹、機器坐標(biāo)系(1)定義:機器
    的頭像 發(fā)表于 03-10 10:34 ?1505次閱讀
    三<b class='flag-5'>坐標(biāo)</b>測量機的機器<b class='flag-5'>坐標(biāo)系</b>和原點<b class='flag-5'>介紹</b>