中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

產(chǎn)品分類

當(dāng)前位置: 首頁 > 工業(yè)電氣產(chǎn)品 > 端子與連接器 > 線路板連接器 > FFC連接器

類型分類:
科普知識
數(shù)據(jù)分類:
FFC連接器

機(jī)器視覺運(yùn)動控制一體機(jī)應(yīng)用例程(七)齒輪缺齒檢測

發(fā)布日期:2022-04-25 點(diǎn)擊率:83

  • 關(guān)鍵詞:正運(yùn)動技術(shù),機(jī)器視覺,運(yùn)動控制一體機(jī)


  • 摘要:齒輪缺齒是其生產(chǎn)制造過程中的一個重大缺陷,需通過檢測技術(shù)進(jìn)行規(guī)避。如果使用人工進(jìn)行檢測,不僅會增加人工成本,且檢測時容易漏檢或者由于注意力不集中而導(dǎo)致誤判,因此我們引入了機(jī)器視覺檢測技術(shù)進(jìn)行齒輪缺齒檢測。


image.png


齒輪缺齒是其生產(chǎn)制造過程中的一個重大缺陷,需通過檢測技術(shù)進(jìn)行規(guī)避。如果使用人工進(jìn)行檢測,不僅會增加人工成本,且檢測時容易漏檢或者由于注意力不集中而導(dǎo)致誤判,因此我們引入了機(jī)器視覺檢測技術(shù)進(jìn)行齒輪缺齒檢測。


機(jī)器視覺齒輪檢測為非接觸式的無損檢測方法,與傳統(tǒng)人工檢測相比,具有不可取代的優(yōu)越性。

 

機(jī)器視覺齒輪檢測系統(tǒng)在追求高速度、高效率、高重復(fù)性和精確度的工業(yè)生產(chǎn)制造過程中也更為可靠,把機(jī)器視覺檢測方法用于制造系統(tǒng)是工業(yè)發(fā)展的方向和必然趨勢,也是提高生產(chǎn)效率的有效途徑。


上期課程,我們講述了機(jī)器視覺方案中液位檢測的應(yīng)用例程,本期課程我們和大家一起分享機(jī)器視覺齒輪缺輪檢測的應(yīng)用例程。


一檢測原理


(一)檢測要求


檢測齒輪狀產(chǎn)品外邊緣上的輪齒是否完整,如有缺失返回“NG”狀態(tài),并顯示位置信息。若齒輪完整,則返回“OK”狀態(tài)。


image.png


(二)軟件算法


image.png


二軟件實(shí)現(xiàn)


(一)軟件實(shí)現(xiàn)


1.打開ZDevelop軟件:新建項(xiàng)目→新建“HMI”文件→新建“main.bas”文件,用于編寫界面響應(yīng)函數(shù)→新建“global_variable.bas”文件用于存放全局變量并開啟HMI自動運(yùn)行任務(wù)→新建“detectParam.bas”文件用于初始化測量參數(shù)→新建“camera.bas”文件用于實(shí)現(xiàn)相機(jī)采集功能→文件添加到項(xiàng)目。


image.png


2.設(shè)計HMI界面。


image.png


3.在“global_variable.bas”文件中定義全局變量,定義完成后運(yùn)行“Hmi.hmi”文件。


'''''全局變量大部分使用數(shù)組結(jié)構(gòu)'''''

''注:basic編程中很多函數(shù)會以TABLE(系統(tǒng)的數(shù)據(jù)結(jié)構(gòu))做為參數(shù)

''table        說明                 table            說明

''0  '    自動二值化閾值            11~12   鼠標(biāo)操作時獲取的坐標(biāo)

''2       亮區(qū)域的面積            20~24   圖像信息

''4       暗區(qū)域的面積            6       齒輪的數(shù)量   

''40~42  齒輪的面積和位置X,Y數(shù)據(jù)          


'主任務(wù)狀態(tài)

'0 - 未初始化

'1 - 停止

'2 - 運(yùn)行中

'3 - 正在停止

GLOBAL DIM main_task_state

main_task_state = 1


'采集開關(guān)

'0 - 停止采集

'1 - 請求采集

GLOBAL DIM grab_switch

grab_switch = 0


'相機(jī)個數(shù)

GLOBAL cam_num

cam_num = 0


'相機(jī)種類,"zmotion;mvision;basler;mindvision;huaray"

GLOBAL DIM CAMERA_TYPE(16)

CAMERA_TYPE = "mvision"


' 定義主任務(wù)id - 10

GLOBAL DIM main_task_id

main_task_id = 10


'定義連續(xù)采集任務(wù)id - 9

GLOBAL DIM grab_task_id

grab_task_id = 9


'定義全局圖像變量

GLOBAL ZVOBJECT grabImg '采集圖像

GLOBAL ZVOBJECT disImg '顯示圖像


'定義常用顏色變量

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)


'檢測參數(shù):閾值模式(自動閾值或手動閾值)、低閾值、高閾值、最小面積、最大面積

GLOBAL DIM d_detect_param(5) 'd開頭表示數(shù)據(jù)結(jié)構(gòu)


'檢測消耗時間

GLOBal DIM d_detect_time


'顯示打印的字符

GLOBAL ShowString(64)

GLOBAL ShowString1(64)


'***********定義讀取本地文件功能相關(guān)變量**************

''注意,該功能只在使用仿真器時有效

'定義是否使用本地圖片標(biāo)志

GLOBAL DIM d_use_imgfile


'定義本地圖片索引

GLOBAL DIM d_index


'定義讀取圖片的路徑

GLOBAL DIM File_Name(100)   


'***********結(jié)束定義讀取本地文件功能相關(guān)變量**********


'運(yùn)行HMI文件

RUN "Hmi.hmi",1

4.在“detectParam.bas”文件中初始化測量參數(shù)。


end


GLOBAL SUB init_detect_param()    '初始化測量參數(shù)

    

    '初始化檢測參數(shù):閾值模式(自動閾值 = 1 或 手動閾值 = 0)、低閾值、高閾值、極性(黑或白)、最大、最小、反向(即結(jié)果取反,成功變成失敗、失敗變成成功)

    d_detect_param(0) = 0         '手動閾值

    d_detect_param(1) = 140       '低閾值

    d_detect_param(2) = 255       '高閾值

    d_detect_param(3) = 160000    '最小面積即像素個數(shù)

    d_detect_param(4) = 180000    '最大面積

  

    d_use_imgfile = 1             '默認(rèn)使用本地圖片

    d_index      = 0

    

    TABLE(6)=0                    '將齒輪數(shù)量初始化為0


END SUB

5.關(guān)聯(lián)HMI界面控件變量。


image.png


6.在“main.bas”文件中添加HMI界面初始化函數(shù)并在Hmi系統(tǒng)設(shè)置中關(guān)聯(lián)初始化函數(shù)。


'HMI界面初始化函數(shù)

GLOBAL SUB hmi_init()

    grab_switch = 0              '停止采集

    main_task_state = 1          '主任務(wù)停止運(yùn)行

    ZV_RESETCLIPSIZE(1280, 960)  '依據(jù)圖像分辨率設(shè)置區(qū)域的裁剪尺寸,此處圖像分辨率為1280x960

    ZV_LATCHSETSIZE(0, HMI_ConTROLSIZEX(10, 7), HMI_ConTROLSIZEY(10, 7)) '設(shè)置鎖存的大小

    init_detect_param()          '初始化測量參數(shù)

    ZV_SETSYSDBL("CamGetTimeout", 1000) '設(shè)置采集超時

    ZV_SETSYSINT("LineWidth",6)

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

  

END SUB

image.png


7.在“camera.bas”文件中添加HMI界面中采集相關(guān)按鈕響應(yīng)的函數(shù)并關(guān)聯(lián)動作函數(shù)。(說明:具體實(shí)現(xiàn)函數(shù)前兩篇課程內(nèi)容已經(jīng)有操作演示,此處不做贅述。)

image.png


8.在“main.bas”文件中添加HMI界面按下【測試】按鈕時響應(yīng)的函數(shù)并關(guān)聯(lián)動作函數(shù)名。


'HMI界面按下測試按鈕時響應(yīng)的函數(shù)

GLOBAL SUB btn_test()

    TABLE(6)=0   '檢測前先將結(jié)果數(shù)據(jù)清0

    d_detect_time=0

    TICKS=0

    '定義變量,依次為白色像素連通區(qū)域,掩模區(qū)域,黑色像素連通區(qū)域,齒輪連通區(qū)域結(jié)果列表,單個齒輪連通區(qū)域,圓環(huán)區(qū)域,齒輪齒牙連通區(qū)域

    ZVOBJECT regionWhite, regionMask, regionBlack,re_connecte,circle_connect,region,re_connecte1

    

     '生成全圖像區(qū)域

    ZV_REGENFULLIMG(grabImg,regionMask)

  

    '二值化處理

    if d_detect_param(0) = 0 then    '如果選擇手動閾值模式

            '根據(jù)低閾值和高閾值參數(shù)生成白色像素圖像regionWhite

          ZV_RETHRESH(grabImg, regionMask, regionWhite, d_detect_param(1), d_detect_param(2))

          '對白色像素區(qū)域進(jìn)行一次1*1的開運(yùn)算

          ZV_REOPENING(regionWhite,regionWhite,3,3)

          '對白色像素區(qū)域進(jìn)行一次1*1的閉運(yùn)算

          ZV_RECLOSING(regionWhite,regionWhite,3,3)

    

    else                             '如果選擇自動閾值模式

    

          Dim autoThresh               '定義自動閾值模式下的二值化閾值

          '在grabImg圖像中的指定區(qū)域內(nèi)對圖像進(jìn)行自動二值化處理,輸出二值化區(qū)域regionWhite 

          ZV_REAUTOTHRESH(grabImg, regionMask, regionWhite, 0)

          '對白色像素區(qū)域進(jìn)行一次1*1的開運(yùn)算

          ZV_REOPENING(regionWhite,regionWhite,1,1)

          '對白色像素區(qū)域進(jìn)行一次1*1的閉運(yùn)算

          ZV_RECLOSING(regionWhite,regionWhite,1,1)

          autoThresh = TABLE(0)

          ? "autoThresh = " autoThresh  '打印提示信息,當(dāng)前二值化閾值

        

    endif

    

    ZV_REDIFF (regionMask, regionWhite, regionBlack)   '差集運(yùn)算,結(jié)果為regionBlack(黑色像素區(qū)域)

    ZV_REAREA(regionBlack, 500)                         '計算黑色像素區(qū)域的面積(即像素數(shù)量)存放到table(500)中

    if(TABLE(500)>0) then '如果獲取到的黑色像素數(shù)量大于0                 

         ZV_REConNECT(regionBlack,re_connecte)     '計算區(qū)域的連通區(qū)域,存放到re_connecte列表中

         zv_refilter(re_connecte,0,d_detect_param(3),d_detect_param(4),0)'對區(qū)域列表中的區(qū)域進(jìn)行過濾,保留面積在 d_detect_param(3) 到 d_detect_param(4) 的區(qū)域,面積不在此范圍的區(qū)域?qū)⒈贿^濾掉

         zv_refilter(re_connecte,20,0.9,1.2,0)'對區(qū)域列表中的區(qū)域進(jìn)行過濾,保留最小外接矩形高寬比在0.9 到 1.2 的區(qū)域,面積不在此范圍的區(qū)域?qū)⒈贿^濾掉

         ZV_LISTCOUNT(re_connecte,6)     '獲取列表中的連通區(qū)域的數(shù)量,存放到table(6)中 

    endif

    

    '繪制效果圖

    Dim width, height

    ZV_IMGINFO (grabImg, 20)'獲取grabImg的圖像信息

    width = TABLE(20)

    height = TABLE(21)

    ZV_GRAYTORGB(grabImg,disImg)'將灰度圖轉(zhuǎn)換到RGB圖像,用于繪制檢測結(jié)果圖像

    

  

    ZV_REGION(disImg, regionMask, 0, ZV_COLOR(0,0,0))      '繪制黑色的regionMask區(qū)域

    ZV_REGION(disImg, regionWhite, 0, ZV_COLOR(255,255,255))'繪制白色的regionWhite區(qū)域

    

    for i=0 to TABLE(6)-1     '循環(huán)獲取齒輪的位置XY信息生成圓環(huán)區(qū)域,檢測是否缺齒

          ZV_LISTGET(re_connecte,circle_connect,i)   '獲取列表中序號為i的元素,即依次獲取列表中齒輪連通區(qū)域

          ZV_REAREACENTER(circle_connect,40)  '計算每個齒輪的面積與中心位置,將數(shù)據(jù)放入TABLE(40)中

            ZV_REGENANNULAR(region,TABLE(41),TABLE(42),220,260)'生成圓環(huán)區(qū)域

            '根據(jù)低閾值和高閾值參數(shù)生成白色像素圖像regionWhite

          ZV_RETHRESH(grabImg, region, regionWhite, d_detect_param(1), d_detect_param(2))

          ZV_REDIFF (region, regionWhite, regionBlack)'進(jìn)行差集運(yùn)算,結(jié)果為regionBlack(黑色像素區(qū)域)

          ZV_REConNECT(regionBlack,re_connecte1)     '計算圓環(huán)區(qū)域內(nèi)的黑色連通區(qū)域,存放到re_connecte列表中

          zv_refilter(re_connecte1,0,1000,3000,0)    '對區(qū)域列表中的連通區(qū)域進(jìn)行面積過濾

          

          ZV_LISTCOUNT(re_connecte1,8)     '獲取單個齒輪齒牙的數(shù)量,存放到table(8)中 

          

          if TABLE(8)=25 then  

              ZV_TEXT(disImg,"OK",TABLE(41),TABLE(42),70,ZV_COLOR(0,255,0)) '顯示結(jié)果文本

          else   

              ShowString=TOSTR(TABLE(41),1,2)

              ShowString1=TOSTR(TABLE(42),1,2)

              ZV_TEXT(disImg,"NG,"ShowString","ShowString1,TABLE(41),TABLE(42),55,ZV_COLOR(255,0,0)) '顯示結(jié)果文本

          endif

          ZV_MARKER(disImg,TABLE(41),TABLE(42),0,50,zv_color(0,255,0))   '在圖像img中繪制十字

          next

          ZV_LATCH(disImg, 0)     '在鎖存通道0中顯示結(jié)果圖像

          d_detect_time=ABS(TICKS)'計算檢測消耗時間


END SUB

image.png


9.在“main.bas”文件中添加【運(yùn)行】按鈕響應(yīng)的函數(shù)并關(guān)聯(lián)動作函數(shù)。


'HMI界面按下運(yùn)行按鈕時響應(yīng)的函數(shù)

GLOBAL SUB btn_run()

    if(2 = main_task_state) then           '如果主任務(wù)處于運(yùn)行狀態(tài),打印提示信息并退出函數(shù)

         ?"已經(jīng)開啟連續(xù)運(yùn)行任務(wù),請勿重復(fù)操作!"

         return 

    endif

     

    if (1 = main_task_state) then          '如果主任務(wù)處于停止?fàn)顟B(tài)

        if (0 = PROC_STATUS(main_task_id)) then '如果任務(wù)未開啟

            main_task_state = 2            '主任務(wù)狀態(tài)設(shè)置為2,表示正在執(zhí)行連續(xù)任務(wù)

            RUNTASK  main_task_id, main_task  '開啟主任務(wù)

        endif

    endif

END SUB

image.png


10.在“main.bas”文件中添加【停止】按鈕響應(yīng)的函數(shù)并關(guān)聯(lián)動作函數(shù)。


'HMI界面按下停止按鈕時響應(yīng)的函數(shù)

GLOBAL SUB btn_stop()


    if (2 = main_task_state) then   '如果主任務(wù)狀態(tài)處于3即正在連續(xù)執(zhí)行任務(wù)時

        main_task_state = 3           '將主任務(wù)狀態(tài)置為3,退出循環(huán)

    endif

  

END SUB

image.png


三操作演示


(一)操作步驟


查看運(yùn)行效果:將控制器接入電源,使用網(wǎng)線將控制器與PC連接,將相機(jī)通電并接入控制器→將相機(jī)、光源安裝在打光測試架上,鏡頭連接到相機(jī)上→連接控制器,并將項(xiàng)目下載到控制器→運(yùn)行程序,調(diào)整打光圖像效果,測試程序運(yùn)行效果。


完整代碼獲取地址

image.png

本次,正運(yùn)動技術(shù)機(jī)器視覺運(yùn)動控制一體機(jī)應(yīng)用例程(七)齒輪缺齒檢測,就分享到這里。


更多精彩內(nèi)容請關(guān)注“正運(yùn)動小助手”公眾號,需要相關(guān)開發(fā)環(huán)境與例程代碼,請咨詢正運(yùn)動技術(shù)銷售工程師:400-089-8936。


本文由正運(yùn)動技術(shù)原創(chuàng),歡迎大家轉(zhuǎn)載,共同學(xué)習(xí),一起提高中國智能制造水平。文章版權(quán)歸正運(yùn)動技術(shù)所有,如有轉(zhuǎn)載請注明文章來源。


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

上一篇: VPLC系列機(jī)器視覺運(yùn)動

推薦產(chǎn)品

更多
中文字幕第二一区_久久久久在线视频_精品国产自在现线看久久_亚洲精品一区二区三区电影网

      9000px;">

          欧美久久久久中文字幕| 国产日韩欧美亚洲| 欧美视频一区二区三区四区 | 香蕉加勒比综合久久| 欧美少妇性性性| 国产中文字幕一区| 亚洲一区二区美女| 久久久久久黄色| 99视频在线观看一区三区| 亚洲在线视频网站| 欧美xxxx在线观看| 国产精品亚洲第一区在线暖暖韩国| 视频在线观看91| www.欧美日韩| 欧美在线观看视频一区二区| 日本欧美一区二区三区乱码| 欧美激情一区二区| 欧美精品在欧美一区二区少妇| 精油按摩中文字幕久久| 午夜电影网一区| 午夜精品久久久久久久久久| 亚洲欧美日韩国产中文在线| 久久99精品久久久久久| 国产毛片精品一区| 久久夜色精品一区| 国产麻豆一精品一av一免费| 欧美日韩国产综合视频在线观看| 久久久国产精华| 中文字幕亚洲综合久久菠萝蜜| 欧美视频完全免费看| 国产一区激情在线| 亚洲五码中文字幕| 亚洲色图丝袜美腿| 国产精品乱码一区二区三区软件| 亚洲一区影音先锋| 久久国产夜色精品鲁鲁99| 日韩精品一区二区三区三区免费 | 欧美日韩国产精品成人| 成人h精品动漫一区二区三区| 久久99久久久欧美国产| 国产精品久久久久久久第一福利| 色综合久久久网| 亚洲欧美日韩在线| 亚洲国产成人在线| 国产馆精品极品| 亚洲va欧美va人人爽午夜| 国产欧美一区二区三区在线看蜜臀| 67194成人在线观看| 欧美人妖巨大在线| 欧美日韩一级大片网址| 欧美亚洲图片小说| 精品视频一区二区三区免费| 日本精品裸体写真集在线观看| 91免费观看在线| 91免费看视频| 欧美日韩久久不卡| 欧美一区二区在线播放| 日韩一区二区三区免费观看| 精品国产成人在线影院 | 久久嫩草精品久久久久| 久久网站最新地址| 久久久精品国产99久久精品芒果 | 国产99精品国产| 成人影视亚洲图片在线| 97久久超碰国产精品| 一本大道久久a久久精二百| 欧美伊人久久大香线蕉综合69 | 日韩精品亚洲一区二区三区免费| 婷婷一区二区三区| 极品美女销魂一区二区三区| 成人在线视频首页| 欧美色爱综合网| 日韩精品一区二区三区四区视频| 国产目拍亚洲精品99久久精品| 中文字幕一区二区三区视频| 亚洲第一激情av| 国产精品一区二区在线观看不卡| 床上的激情91.| 色国产精品一区在线观看| 欧美日韩国产影片| 日韩欧美中文字幕制服| 国产精品久久久久久久久搜平片| 亚洲国产精品久久久男人的天堂 | 蜜桃av一区二区| 白白色 亚洲乱淫| 91精品国产麻豆| 国产人成亚洲第一网站在线播放 | 69p69国产精品| 国产精品欧美经典| 蜜臀a∨国产成人精品| www..com久久爱| 欧美一区二区视频在线观看| 国产日韩欧美一区二区三区综合| 亚洲天堂av一区| 经典一区二区三区| 91网站在线观看视频| 欧美电视剧免费观看| 亚洲视频网在线直播| 久久99国产精品尤物| 99天天综合性| 国产午夜三级一区二区三| 亚洲国产精品欧美一二99| 成人性生交大合| 日韩精品一区二区三区swag| 亚洲高清免费在线| av男人天堂一区| 欧美精品一区二区三区蜜桃视频| 亚洲福利视频导航| av在线播放成人| 欧美电影免费观看高清完整版在线观看| 国产视频亚洲色图| 开心九九激情九九欧美日韩精美视频电影 | 亚洲gay无套男同| 不卡视频一二三| 一区二区三区蜜桃网| 久久成人av少妇免费| 欧美日免费三级在线| 国产精品久久久久久久久免费丝袜| 亚洲一区在线观看免费| 国产精品免费免费| 国产欧美精品区一区二区三区| 毛片不卡一区二区| 日韩一区二区三区四区五区六区| 亚洲一卡二卡三卡四卡五卡| 99精品国产热久久91蜜凸| 中文字幕av不卡| 成人高清视频免费观看| 国产日韩欧美高清| 成人av电影在线观看| 欧美精品18+| 蜜桃视频免费观看一区| 欧美剧情片在线观看| 婷婷中文字幕综合| 日韩美一区二区三区| 国内精品在线播放| 国产欧美日韩综合| 福利一区在线观看| 亚洲天堂精品视频| 91美女视频网站| 亚洲一区二区影院| 91精品蜜臀在线一区尤物| 久久精品国产一区二区| 久久亚洲春色中文字幕久久久| 国产精品白丝jk白祙喷水网站| 国产农村妇女毛片精品久久麻豆| 不卡一区二区在线| 亚洲专区一二三| 日韩三级视频在线看| 国产一区二区在线免费观看| 国产丝袜欧美中文另类| 在线观看免费一区| 国精产品一区一区三区mba桃花| 日韩精品中文字幕一区 | 99国产精品99久久久久久| 亚洲精品福利视频网站| 欧美日韩亚洲不卡| 国精产品一区一区三区mba桃花| 国产精品免费aⅴ片在线观看| 色94色欧美sute亚洲线路二| 偷拍与自拍一区| 日韩免费高清av| 成人深夜视频在线观看| 亚洲电影一级黄| 久久午夜老司机| 欧美伊人精品成人久久综合97 | 五月天视频一区| 国产亚洲1区2区3区| 欧美性色黄大片| 国产一区二区成人久久免费影院| 亚洲日本一区二区| 欧美三级电影一区| 国产高清视频一区| 天天操天天综合网| 欧美激情中文字幕一区二区| 这里只有精品电影| 成人免费视频一区| 免费观看在线综合色| 亚洲欧美国产高清| 国产精品久久毛片| 国产亚洲欧美一级| 欧美精品一区男女天堂| 欧美午夜理伦三级在线观看| 国内外成人在线| 日韩不卡一区二区| 午夜精品福利在线| 亚洲一区在线观看视频| 亚洲国产高清在线观看视频| 日韩欧美国产精品一区| 欧美亚一区二区| 在线观看日韩电影| 久久国产福利国产秒拍| 91精品国产欧美一区二区成人| 自拍偷拍亚洲综合| 精品一二三四在线| 2022国产精品视频| 91在线观看地址| 9l国产精品久久久久麻豆| 高清视频一区二区| 国产成人一级电影| 国产激情一区二区三区桃花岛亚洲|