美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区

產品分類

當前位置: 首頁 > 工業電氣產品 > 端子與連接器 > 線路板連接器 > FFC連接器

類型分類:
科普知識
數據分類:
FFC連接器

機器視覺運動控制一體機應用例程(六)液位檢測

發布日期:2022-04-25 點擊率:68

  • 關鍵詞:正運動技術,機器視覺,運動控制一體機


  • 摘要:順應現代生活的不斷發展,瓶裝液體成為人們日常生活中不可或缺的消費品。它的包裝中產品凈含量是否達標是檢測產品質量的一個重要指標,對于同一規格的包裝瓶中,其液位高度直接反映了瓶中液體的凈含量。



image.png


順應現代生活的不斷發展,瓶裝液體成為人們日常生活中不可或缺的消費品。它的包裝中產品凈含量是否達標是檢測產品質量的一個重要指標,對于同一規格的包裝瓶中,其液位高度直接反映了瓶中液體的凈含量。


在傳統的瓶裝液體灌裝工序中,其灌裝后的液位高度檢測通常采用的是人眼去目測液位高度,生產效率低下,且會產生較大誤差。隨著生產的規模的不斷擴大,因此對瓶裝液體的液位高度全自動檢測的需求越來越大。


目前市面上已有光電傳感器檢測、超聲波檢測和機器視覺液位檢測等液位檢測方法,其中機器視覺液位檢測是一種非接觸式、無損的檢測方法。因此它具有效率高、檢測精度高、設備維護簡單等優點,被廣泛應用于液位檢測項目中。  


本次課程我們將與大家一起分享機器視覺運動控制一體機實現液位檢測的功能。


檢測原理


液位檢測:在機器視覺解決方案中,通常使用背向打光的方式將瓶內有液體的部分和沒有液體的部分加以區分,再計算出液體最高位與瓶底的距離即液位。檢測有顏色的液體通常使用普通背光源即可,如需檢測透明液體或瓶子上有字符或顏色干擾可使用穿透性較強的紅外背光。


視覺算法:使用兩個直線測量器獲得瓶底和液位的數據,再計算瓶底和液位的距離。使用形狀匹配結果作為直線測量器的補正源,使直線測量器跟隨產品移動。


image.png


軟件實現


(一)軟件實現


1.打開ZDevelop軟件:打開項目“基于形狀匹配的視覺定位”→在“global_variable.bas”文件中定義測量尺寸需要用到的全局變量。


'----------------------------分割線-----------------------------------------


'直線1測量參數數組,依次為中心cx、cy、w、h、angle、interp、sub_num、sub_width、filter_size、thresh、polor、select,都是圖像坐標

GLOBAL DIM d_meas_param1(12) 'd開頭表示數據結構


'直線2測量參數數組,依次為中心cx、cy、w、h、angle、interp、sub_num、sub_width、filter_size、thresh、polor、select,都是圖像坐標

GLOBAL DIM d_meas_param2(12) 'd開頭表示數據結構


'定義常用顏色變量,用于繪制圖形

GLOBAL C_RED, C_GREEN, C_BLUE, C_YELLOW

C_RED   = RGB(255,  0,  0)

C_GREEN = RGB(  0,255,  0)

C_BLUE  = RGB(  0,  0,255)

C_YELLOW= RGB(255,255,  0)


'創建模板時保存的直線1基準區域位置向量1,x、y、angle

GLOBAL DIM d_meas_base_v1(3)

d_meas_base_v1(0) = 0

d_meas_base_v1(1) = 0

d_meas_base_v1(2) = 0


'創建模板時保存的直線2基準區域位置向量2,x、y、angle

GLOBAL DIM d_meas_base_v2(3)

d_meas_base_v2(0) = 0

d_meas_base_v2(1) = 0

d_meas_base_v2(2) = 0


'直線1測量結果,依次為結果點stx、sty、endx、endy

GLOBAL DIM d_meas_rst1(4)


'直線2測量結果,依次為結果點stx、sty、endx、endy

GLOBAL DIM d_meas_rst2(4)


''創建模板時保存的模板基準點,score、x、y、angle、scale

GLOBAL DIM d_match_base_rst(5)

global dim d_meas_param(12)


'定義ROI標志變量,0-液位ROI,1-瓶底ROI

GLOBAL DIM roi_flag

roi_flag=0


'定義形狀匹配模板

ZVOBJECT shape_model


'定義保存配模板標志,1-已保存,0未保存

GLOBAL DIM  is_saveMod

2.修改設計HMI界面。


image.png


3.新建主界面按下【液位設置】按鈕時彈出的液位參數設置窗口“Set_Select”,并設計界面布局。


image.png


4.關聯液位參數設置窗口“Set_Select”界面上的變量。


image.png


5.在“draw.bas”文件中添加“液位Roi”和“瓶底Roi”根據鼠標操作更新ROI位置的函數以及實時繪制Roi的函數,并在自定義元件中關聯刷新函數和繪制函數。


'-----------------分割線-------------------------

'測量器繪制 

'''''''''''''''''''''''''''''''''''

'根據鼠標操作更新Roi的位置

GLOBAL SUB update_roi()

    if roi_flag=0 then '如果選擇設置液位ROI

       SET_REDRAW'全區域繪制

       if (mouse_scan(21) = 1 )then  '如果掃描到鼠標按下操作

            '根據鼠標所在Roi的不同位置返回調整標志

            hit_pos = ZV_HMIADJRECT2(table(21), table(22), 11, -1) 

            is_redraw = 1'繪圖標志置1

       endif


        if mouse_scan(21) = -1 then      '如果掃描到鼠標松開操作

        

        '如果鼠標指在Roi1區域之外

           if  TABLE(21)

              hit_pos=-1'調整標志=-1

           endif

          

          ZV_HMIADJRECT2(table(21), table(22), 11, hit_pos)'調整Roi1位置

           

          is_redraw = 1

        endif

      

        if (MOUSE_state(21)) then'如果鼠標按下時

            ZV_HMIADJRECT2(table(21), table(22), 11, hit_pos)'調整Roi1位置

            is_redraw = 1'繪圖標志置1

        endif

      

       if (1 = is_redraw ) then'如果繪圖標志為1時

            is_redraw = 0'繪圖標志置0

            '將控件坐標轉換到圖像坐標,并賦值給相應變量

            ZV_POSTOIMG(0, 1, 11, 31)

            d_meas_param1(0) = TABLE(31)

            d_meas_param1(1) = TABLE(32)

            d_meas_param1(2) = ZV_LENTOIMG(0, TABLE(13))

            d_meas_param1(3) = ZV_LENTOIMG(0, TABLE(14))

            d_meas_param1(4) = TABLE(15)

            

            set_base_roi()'設置基準Roi數據

            SET_REDRAW'全區域繪制

       endif

       

    else '否則選擇設置瓶底ROI

         SET_REDRAW'全區域繪制

         if (mouse_scan(21) = 1 )then  '如果掃描到鼠標按下操作

              '根據鼠標所在Roi的不同位置返回調整標志

              hit_pos = ZV_HMIADJRECT2(table(21), table(22), 41, -1) 

              is_redraw = 1'繪圖標志置1

         endif


         if mouse_scan(21) = -1 then      '如果掃描到鼠標松開操作

          

            '如果鼠標指在Roi2區域之外

            if  TABLE(21)

                hit_pos=-1'調整標志=-1

            endif

            

            ZV_HMIADJRECT2(table(21), table(22), 41, hit_pos)'調整Roi2位置

             

            is_redraw = 1

         endif

        

         if (MOUSE_state(21)) then'如果鼠標按下時

              ZV_HMIADJRECT2(table(21), table(22), 41, hit_pos)'調整Roi2位置

              is_redraw = 1'繪圖標志置1

         endif

        

         if (1 = is_redraw ) then'如果繪圖標志為1時

              is_redraw = 0'繪圖標志置0

              '將控件坐標轉換到圖像坐標,并賦值給相應變量

              ZV_POSTOIMG(0, 1, 41, 91)

              d_meas_param2(0) = TABLE(91)

              d_meas_param2(1) = TABLE(92)

              d_meas_param2(2) = ZV_LENTOIMG(0, TABLE(43))

              d_meas_param2(3) = ZV_LENTOIMG(0, TABLE(44))

              d_meas_param2(4) = TABLE(45)

              

              set_base_roi()'設置基準Roi數據

              SET_REDRAW'全區域繪制

         endif

    endif    

END SUB

image.png


6.在“main.bas”文件中添加“Set_Select”窗口界面按下【測試】按鈕時響應的函數并關聯動作函數名。


'液位設置界面按下測試按鈕時響應的函數

GLOBAL SUB btn_mea_test()

  

    '選擇補正源時先執行定位檢測

    if(TABLE(110) = 1) then

        btn_loc_test()

    endif

    

    ZVOBJECT mr1,mr2,mr3,mr4,rst1,rst2,rst3,rst4,colorImg

    ZVOBJECT contlist, tsContlist, mat_rigid

    LOCAL    show_rst

  

    '測量區域roi補正

    if(TABLE(110) = 1 AND d_is_creModel = 1) then      '如果使用補正源已經開啟且模板已經創建

       

        '計算剛性變換矩陣

        ZV_GETRIGIDVECTOR(mat_rigid1,d_match_base_rst(1),d_match_base_rst(2),d_match_base_rst(3), d_match_rst(1), d_match_rst(2), d_match_rst(3))

        

        '使用變換矩陣mat_rigid對輸入Roi1基準向量進行補正,補正后的向量存入開始索引為0的TABLE中

        ZV_VECTORCORRECT(mat_rigid1, d_meas_base_v1(0), d_meas_base_v1(1),d_meas_base_v1(2), 0)

        '將補正后的坐標數據賦值給測量器區域變量

        d_meas_param1(0) = TABLE(0)

        d_meas_param1(1) = TABLE(1)

        d_meas_param1(4) = TABLE(2)

        

        '使用變換矩陣mat_rigid對輸入Roi2基準向量進行補正,補正后的向量存入開始索引為0的TABLE中

        ZV_VECTORCORRECT(mat_rigid1, d_meas_base_v2(0), d_meas_base_v2(1),d_meas_base_v2(2), 0)

        '將補正后的坐標數據賦值給測量器區域變量

        d_meas_param2(0) = TABLE(0)

        d_meas_param2(1) = TABLE(1)

        d_meas_param2(4) = TABLE(2)

      

    endif  

    

    '生成直線1測量的旋轉區域

    ZV_MRGENLINE(mr1, d_meas_param1(0), d_meas_param1(1), d_meas_param1(2), d_meas_param1(3), d_meas_param1(4), 1, d_meas_param1(6), d_meas_param1(7))   

    '設置直線1的檢測參數,包括濾波器尺寸,閾值,邊緣極性,邊緣位置

    ZV_MRSETADV(mr1, d_meas_param1(8), d_meas_param1(9), d_meas_param1(10), d_meas_param1(11)) 

    '生成直線2測量的旋轉區域

    ZV_MRGENLINE(mr2, d_meas_param2(0), d_meas_param2(1), d_meas_param2(2), d_meas_param2(3), d_meas_param2(4), 1, d_meas_param2(6), d_meas_param2(7))

    '設置直線2的檢測參數,包括濾波器尺寸,閾值,邊緣極性,邊緣位置

    ZV_MRSETADV(mr2, d_meas_param2(8), d_meas_param2(9), d_meas_param2(10), d_meas_param2(11))

    

    '將矩形測量區域測量到的目標直線1端點存儲到起始索引為61的TABLE

    ZV_MRLINE(mr1, grabImg, rst1, 61)

    '將直線1結果賦值給直線1結果變量

    d_meas_rst1(0) = TABLE(61)

    d_meas_rst1(1) = TABLE(62)

    d_meas_rst1(2) = TABLE(63)

    d_meas_rst1(3) = TABLE(64)

    

    '將矩形測量區域測量到的目標直線2端點存儲到起始索引為71的TABLE

    ZV_MRLINE(mr2, grabImg, rst2, 71)

    '將直線1結果賦值給直線2結果變量

    d_meas_rst2(0) = TABLE(71)

    d_meas_rst2(1) = TABLE(72)

    d_meas_rst2(2) = TABLE(73)

    d_meas_rst2(3) = TABLE(74)

    

    '計算兩條直線的距離寬度

    length1()

  

    '將灰度圖轉換成RGB圖像,用于繪制檢測結果圖像

    ZV_GRAYTORGB(grabImg, colorImg)

    

    '繪制液位檢測和瓶底檢測的測量器

    ZV_MEASURER(colorImg,mr1,ZV_COLOR(0,0,255),ZV_COLOR (0,255,0)) 

    ZV_MEASURER(colorImg,mr2,ZV_COLOR(0,0,255),ZV_COLOR (0,255,0))

     

    '繪制直線結果

    ZV_LINE(colorImg, TABLE(61), TABLE(62), TABLE(63), TABLE(64), C_BLUE)

    ZV_LINE(colorImg, TABLE(71), TABLE(72), TABLE(73), TABLE(74), C_BLUE) 

    if(TABLE(110) = 1) then'如果使用補正源

        ZV_MARKER(colorImg,TABLE(4),TABLE(5),0,10,C_GREEN)'繪制匹配中心標志點

    endif

  

    ZV_LATCH(colorImg,0)'顯示結果圖像

  

END SUB

image.png


7.在“main.bas”文件中添加“Set_Select”窗口界面按下【返回主界面】按鈕時響應的函數并關聯動作函數名。


'按下返回主界面按鈕時響應的函數

GLOBAL SUB Goto_Main()


    '設置鎖存通道0的大小,以適應圖片元件大小

    ZV_LATCHSETSIZE(0, HMI_ConTROLSIZEX(10,2), HMI_ConTROLSIZEY(10,2)) 

    ZV_LATCHCLEAR(0)'清空鎖存通道0

    ZV_LATCH(grabImg,0)'將圖片顯示到鎖存通道0中

    HMI_CLOSEWINDOW(13)'關閉測量參數設置窗口

  

END SUB

image.png


8.在“main.bas”文件中修改主界面按下【單次執行】按鈕時響應的函數并關聯動作函數名。


'主界面按下單次執行按鈕時響應的函數

GLOBAL SUB btn_test()


   '采集一幀圖像

   btn_grab

   '執行測量測試部分代碼

   btn_mea_test()


END SUB


檢測原理


(一)操作步驟


查看運行效果:將項目下載到仿真器中→運行程序,測試程序運行效果。→使用本地圖片→單次采集→學習模板→液位設置→使用補正源→單次執行→結束


完整代碼獲取地址

image.png


本次,正運動技術機器視覺運動控制一體機應用例程(六)液位檢測,就分享到這里。


更多精彩內容請關注“正運動小助手”公眾號,需要相關開發環境與例程代碼,請咨詢正運動技術銷售工程師:400-089-8936。


本文由正運動技術原創,歡迎大家轉載,共同學習,一起提高中國智能制造水平。文章版權歸正運動技術所有,如有轉載請注明文章來源。


關于正運動技術


正運動技術專注于運動控制技術研究和通用運動控制軟硬件產品的研發,是國家級高新技術企業,主要產品有運動控制器、運動控制卡、視覺運動控制一體機、人機界面以及擴展模塊等。


正運動技術匯集了來自華為、中興等公司的優秀人才,在堅持自主創新的同時,積極聯合各大高校協同運動控制基礎技術的研究,是國內工控領域發展最快的企業之一,也是國內少有、完整掌握運動控制核心技術和實時工控軟件平臺技術的企業。 



下一篇: PLC、DCS、FCS三大控

上一篇: ZMC運動控制器SCARA機

推薦產品

更多
美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区


        日韩精品乱码免费| 欧美mv日韩mv国产网站| 亚洲一级二级在线| 国产精品视频第一区| 精品福利二区三区| 欧美一区二区日韩| 欧美一区二区视频观看视频| 欧美体内she精高潮| av激情亚洲男人天堂| 国产成人午夜视频| 国产成人免费9x9x人网站视频| 国产成a人无v码亚洲福利| 国产精品白丝jk黑袜喷水| 国产成人免费视频| av一区二区三区| 99久久综合精品| 91丨九色丨国产丨porny| 99热在这里有精品免费| 一本大道综合伊人精品热热| 欧美四级电影在线观看| 欧美夫妻性生活| 精品剧情在线观看| 国产精品久久毛片a| 亚洲精品美腿丝袜| 轻轻草成人在线| 国产精品香蕉一区二区三区| www.色综合.com| 欧美日韩一区中文字幕| 日韩欧美资源站| 欧美激情在线看| 亚洲黄色片在线观看| 亚洲成a人片在线观看中文| 美腿丝袜一区二区三区| 国产一区福利在线| 色噜噜狠狠色综合欧洲selulu| 欧美高清激情brazzers| 国产亚洲欧美一区在线观看| 综合激情成人伊人| 蜜臀av一区二区三区| 成人小视频免费观看| 欧美日韩另类国产亚洲欧美一级| 精品国产精品网麻豆系列| 中文字幕日韩一区| 麻豆一区二区三| 91女神在线视频| 欧美不卡123| 一区二区三区在线观看国产| 看电影不卡的网站| 99精品视频一区二区三区| 日韩亚洲电影在线| 亚洲乱码国产乱码精品精98午夜| 激情欧美一区二区| 欧美日韩一二区| 国产精品久久久久久久久图文区| 五月婷婷久久丁香| 色综合天天综合给合国产| 欧美精品一区二区久久婷婷| 亚洲第一主播视频| 成人动漫在线一区| 欧美一区二区福利视频| 一区二区三区欧美亚洲| 成人免费看片app下载| 精品久久五月天| 视频在线在亚洲| 色国产精品一区在线观看| 久久先锋影音av鲁色资源网| 午夜激情一区二区| 在线观看一区二区精品视频| 国产精品天美传媒| 丁香婷婷综合激情五月色| 日韩一区二区三区视频在线| 一区二区免费看| 91免费视频大全| 中文字幕中文字幕中文字幕亚洲无线| 麻豆精品一区二区综合av| 欧美精品vⅰdeose4hd| 亚洲精品视频免费看| av在线不卡观看免费观看| 日本一区二区久久| 国产精品99久久不卡二区| 久久久久久日产精品| 激情国产一区二区| 精品国产一区二区三区四区四| 日韩精品一二区| 这里只有精品99re| 欧美aaaaaa午夜精品| 日韩一区二区三区视频在线| 久久国产综合精品| 久久久久久久综合色一本| 国产精品一区专区| 国产精品久久久久影院| 99精品视频在线播放观看| 亚洲女人的天堂| 欧美日韩一区二区在线视频| 亚洲va欧美va人人爽午夜| 欧美一区二区视频观看视频 | jlzzjlzz亚洲女人18| 亚洲国产精品黑人久久久| 国产不卡视频一区二区三区| 中文字幕免费在线观看视频一区| 成人午夜激情在线| 亚洲码国产岛国毛片在线| 欧美日韩一卡二卡| 美女视频黄免费的久久| 国产调教视频一区| 91网站最新网址| 天天综合日日夜夜精品| 2021国产精品久久精品| 成人网页在线观看| 亚洲一区二区在线免费看| 91精品蜜臀在线一区尤物| 精品无码三级在线观看视频| 欧美国产精品中文字幕| 欧洲一区二区三区在线| 日本免费新一区视频| 久久精品日产第一区二区三区高清版| 高清shemale亚洲人妖| 一区视频在线播放| 777亚洲妇女| 成人av小说网| 天天色天天爱天天射综合| 国产亚洲精品aa| 欧美最猛性xxxxx直播| 国产九色精品成人porny| 亚洲一区二区精品视频| www日韩大片| 欧美日韩亚洲不卡| 成人一区二区在线观看| 全部av―极品视觉盛宴亚洲| 中文字幕中文在线不卡住| 欧美一区二区福利在线| 色综合天天性综合| 国产一二三精品| 日韩av一区二区在线影视| 亚洲色图.com| 久久久美女艺术照精彩视频福利播放| 欧美系列日韩一区| 成人精品高清在线| 国内外精品视频| 丝袜a∨在线一区二区三区不卡| 国产精品美女久久久久久2018| 欧美一区二区黄| 在线免费观看日本一区| 国产精华液一区二区三区| 蜜桃av一区二区三区电影| 一区二区三区在线观看欧美| 国产精品婷婷午夜在线观看| 26uuu亚洲综合色欧美| 制服丝袜激情欧洲亚洲| 欧美视频完全免费看| 91啪在线观看| 91在线视频网址| 9l国产精品久久久久麻豆| 成人一区二区三区| 国产盗摄一区二区| 国产乱人伦精品一区二区在线观看| 日本午夜精品一区二区三区电影| 亚洲一区二区三区影院| 亚洲精品国产精品乱码不99| 亚洲免费观看高清完整版在线 | 五月天欧美精品| 爽好久久久欧美精品| 日韩黄色免费电影| 天涯成人国产亚洲精品一区av| 亚洲国产日日夜夜| 亚洲国产美国国产综合一区二区 | 国产成人免费xxxxxxxx| 国精产品一区一区三区mba视频 | 91网站黄www| 在线这里只有精品| 在线观看日产精品| 欧美日韩dvd在线观看| 欧美一区二区三区在线观看| 日韩一级精品视频在线观看| 精品久久久三级丝袜| 国产欧美一区视频| 亚洲色图欧洲色图婷婷| 亚洲自拍偷拍网站| 丝袜脚交一区二区| 国产麻豆视频精品| 99久免费精品视频在线观看| 欧美无砖砖区免费| 日韩欧美国产三级| 国产欧美视频一区二区三区| 亚洲乱码一区二区三区在线观看| 亚洲一区二区三区中文字幕在线| 日本伊人精品一区二区三区观看方式| 免费不卡在线视频| 国产成人av电影在线观看| www.欧美日韩国产在线| 欧美日韩综合不卡| 欧美草草影院在线视频| **性色生活片久久毛片| 性欧美大战久久久久久久久| 久久99精品久久久| 91伊人久久大香线蕉| 日韩一区二区三区四区| 成人欧美一区二区三区在线播放| 日韩av电影免费观看高清完整版 | 久久久国产一区二区三区四区小说|