亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于VisionPro和PLC的視覺測量定位系統(tǒng)

        2021-12-22 13:21:50羅付強劉宏巖何鎧鋒
        智能制造 2021年6期
        關(guān)鍵詞:信號語言

        楊 鑫,羅付強,劉宏巖,楊 健,何鎧鋒

        (重慶紅江機械有限責(zé)任公司,重慶 402162)

        1 引言

        近年來,機器視覺系統(tǒng)以其高效率、高可靠和低成本的特點在國內(nèi)外取得了廣泛的應(yīng)用。機器視覺是一門涉及圖形圖像、計算機軟件、自動化、機械設(shè)計和人工智能等諸多領(lǐng)域的交叉學(xué)科。目前業(yè)內(nèi)關(guān)注較多的是機器視覺系統(tǒng)的硬件部分或軟件部分,然而,在視覺軟件得出數(shù)據(jù)后,往往需要將數(shù)據(jù)傳輸至 PLC 及上位機,PLC 根據(jù)數(shù)據(jù)結(jié)果做出分析判定,并控制相關(guān)設(shè)備進行相應(yīng)動作,上位機對數(shù)據(jù)進行整理存檔、集成展示等。例如工廠中常見的物料分揀視覺系統(tǒng)、立體倉庫視覺管理系統(tǒng)、零件質(zhì)量視覺檢測系統(tǒng)、以及本項目涉及的零件自動測量定位視覺系統(tǒng)等。

        2 系統(tǒng)概況

        通過視覺系統(tǒng)對零件進行直徑測量和位置矯正,零件隨機放置,其位置并不一致,通過視覺軟件獲取零件圖像并進行處理,得出直徑和零件位置數(shù)據(jù),將位置數(shù)據(jù)傳至PLC,PLC 根據(jù)零件實際位置控制伺服電機將其矯正至固定位置,以供機器人等自動裝置夾持零件進行加工裝夾或裝配,保證零件順利裝入。項目采用的視覺軟件是 Cognex公司的 VisionPro,PLC 為 Siemens 公司的 S7-1200,電機為 Siemens 公司的 V90 伺服電機。通過 VisionPro 創(chuàng)建 QuickBuild 視覺項目,利用 C# 在 VS 環(huán)境下調(diào)用QuickBuild 項目開發(fā)上位機軟件,通過類庫 S7.NET 與 S7-1200 通信,實現(xiàn)上位機軟件與 PLC 的數(shù)據(jù)交互,PLC 獲取零件位置數(shù)據(jù)后,控制 V90 伺服電機動作,實現(xiàn)零件的矯向功能。系統(tǒng)組成如圖1所示。

        圖1 視覺定位系統(tǒng)組成

        3 VisionPro QuickBuild項目創(chuàng)建

        項目選用 Basler acA1300-30gm 相機、Computar M2514-MP 鏡頭、日本 CCS LDR2-70RD 環(huán)形 LED 光源。通過軟件觸發(fā)拍照指令,通過 GigE 千兆以太網(wǎng)接口協(xié)議將圖像反饋至 VisionPro。VisionPro 提供了一個交互式的開發(fā)環(huán)境,可以利用 VisionPro 來獲取圖像,集成視覺工具來處理圖像,生成 QuickBuild 應(yīng)用項目,在 QuickBuild 項目中,先后應(yīng)用工具見下表。

        表 QuickBuild 工具

        ?

        視覺系統(tǒng)校準標定是補償相機的線性和非線性誤差必不可少的環(huán)節(jié),另一方面,機器視覺系統(tǒng)的數(shù)字圖像處理是以像素為單位來表示的,而工程應(yīng)用的長度單位采用的是毫米、厘米或英寸等作為物理尺寸單位。因此,要想獲得常規(guī)的測量結(jié)果數(shù)值,需要建立像素與實際尺寸的對應(yīng)關(guān)系,標定實際上就是確定每個像素所表示的實際物理尺寸。標定的準確與否,將直接影響視覺測量系統(tǒng)的測量準確性,標定工作的頻密程度與具體測量項目的準確度要求相關(guān),一般情況下視覺系統(tǒng)每次開機都應(yīng)做一次標定,或每天做一次標定;準確度要求高的則應(yīng)考慮標定工作做得頻密,QuickBuild 中采用 CogCalibCheckerboardTool 工具進行標定,在 CogCalibCheckerboardTool 標定工具中,輸入的參數(shù)包括校準點陣模板兩點之間在

        X

        方向和

        Y

        方向的實際距離,這是標定的依據(jù)。標定工具根據(jù)

        X

        Y

        的值,用優(yōu)化的算法將復(fù)雜的標定信息與圖像信息結(jié)合,實現(xiàn)圖像像素坐標到實際坐標的轉(zhuǎn)換,值得注意的是,標定板一定要與零件特征平面等高,這樣標定的數(shù)據(jù)才能真實反映特征數(shù)據(jù)。項目采用9×9點陣式標定板,圓點直徑為 1 mm,圓心距為2 mm,在標定工具中設(shè)置如圖2所示。得到標定圖像后,需要在圖像中尋找模板特征來定位圖像,模板是圖像(或其子圖)的一種表達方式,其本身仍然是一幅圖像。一般情況下,模板在目標圖像中來回移動,直到找到使某個匹配函數(shù)值達到最大的位置為止,可以比較模板

        T

        和子圖

        f

        的內(nèi)容,若兩者一致,則

        T

        和子圖

        f

        之差為零,所以可以用下列的函數(shù)來衡量

        T

        f

        的相似程度:

        其中,模板尺寸是

        K

        ×

        K

        ,式 (1) 對模板

        T

        與子圖

        f

        在坐標處圖像之間匹配程度提供了度量。在模板匹配中,一個基本問題就是對模板尺寸大小的選擇問題,如果模板選擇過小,就難以估計圖像的變化,以至于無法做出準確的估計,如果模板太大,則窗口中覆蓋的面積太大,就無法實現(xiàn)匹配。

        標定和模板匹配是項目關(guān)鍵工具,通過這兩個工具獲取并匹配到標準物理尺寸的目標圖像,然后通過尋圓擬合、構(gòu)建線、擬合線和求夾角等工具組合求出零件外徑及方位角。將 CogPMAlignTool 匹配的特征數(shù)量(定位結(jié)果)、CogFindCircleTool 擬合的外圓直徑值(測量直徑)、CogAngleLineLineTool 計算的角度(矯向角度)添加到 CogResultsAnalysisTool 進行處理運算,并添加到QuickBuild 發(fā)送項,通過高級語言調(diào)用 QuickBuild API 來獲取發(fā)送項,開發(fā)高級應(yīng)用功能。

        圖 2 CogCalibCheckerboardTool 工具和標定板

        4 上位機軟件開發(fā)

        上位機軟件采用 C# 在 Visual Studio 2019 環(huán)境中開發(fā),主要是調(diào)用 QuickBuild 項目、獲取測量直徑及矯向角度、PLC 通信及控制、獲取 PLC 執(zhí)行狀態(tài)等。

        4.1 調(diào)用 VisionPro QuickBuild 項目

        VisionPro 可以為相機分配離散 IO,利用應(yīng)用程序向?qū)Э梢詣?chuàng)建完善的 QuickBuild 應(yīng)用程序,直接用于終端機。但是這種方式不方便與外界進行交互,而且要配備 Cognex 的離散 IO 硬件,限制了應(yīng)用程序的靈活性。項目采用“QuickBuild+高級語言”開發(fā)模式,VisionPro與高級語言的聯(lián)合開發(fā)支持三種形式:高級語言調(diào)用VisionPro 控件、高級語言調(diào)用 VisionProToolGroup、高級語言調(diào)用 VisionProQuickBuild。第一種方式完全脫離VisionPro 開發(fā)環(huán)境,直接在高級語言環(huán)境中調(diào)用 VisionPro控件 dll 進行編譯,這種開發(fā)方式足夠靈活,但開發(fā)難度相對較大,且不利于后期調(diào)試維護;高級語言調(diào)用VisionProToolGroup 是在 QuickBuild 中將所有的視覺工具集成到一個 ToolGroup 中,然后將其單獨保存成 vpp 文件,高級語言調(diào)用這個 vpp 文件進行集成開發(fā),其優(yōu)點是不必定義線程來檢測外部信號,可以采用外部 I/O 信號觸發(fā)的方式,適合用在一些高頻率取像的項目中;高級語言調(diào)用 VisionProQuickBuild 是將 QuickBuild 保存為一個完整的項目,高級語言直接調(diào)用該項目,其優(yōu)點是視覺項目與高級語言完全脫離,只需更改 QuickBuild 即可完成視覺的大多數(shù)修改工作,利于后期重新標定、維護修改。

        項目采用 C# 調(diào)用 VisionProQuickBuild 的開發(fā)模式,在VS環(huán)境中創(chuàng)建窗體應(yīng)用程序,調(diào)用 VisionPro 開發(fā)的QuickBuild 項目。VisionPro 程序集是針對 .NET Framework 4.0 開發(fā)的,因此開發(fā)環(huán)境 Framework 要配置為4.0以上版本。在窗體上添加一個 VisionPro 的 CogRecordDisplay 控件,用于顯示圖像,然后引用以下程序集:

        隨后調(diào)用 QuickBuild 項目及運行結(jié)果,關(guān)鍵代碼如下:

        4.2 PLC 通信控制

        上位機與 S7-1200PLC 有多種通信方式,采用 S7.NET實現(xiàn) PLC 的通信,S7.NET 是一個 PLC 驅(qū)動程序,要求PLC 必須具有 Profinet 功能,上位機通過以太網(wǎng)連接西門子 PLC。S7.NET 是完全基于 C# 開發(fā)編寫的開源類庫,因此在 C# 項目開發(fā)中可以輕松地調(diào)用調(diào)試,實現(xiàn)上位機軟件與西門子 PLC 的通信控制功能。

        在 C# 窗體應(yīng)用程序中,引用“S7.Net”程序集,添加 Timer 控件定時掃描 PLC 并讀寫 PLC 狀態(tài),關(guān)鍵代碼如下:

        上位機軟件與 PLC 協(xié)同配合完成視覺定位矯向功能,上位機獲取零件位置數(shù)據(jù),PLC 執(zhí)行位置矯正并反饋執(zhí)行結(jié)果,兩者必須配合得當(dāng)。其控制過程是: PLC 首先發(fā)出視覺請求信號,上位機執(zhí)行視覺取像及處理,隨后向 PLC發(fā)送零件位置數(shù)據(jù),PLC 得到數(shù)據(jù)后,執(zhí)行矯向動作,并反饋完成信號,上位機再次進行視覺處理,判定矯向結(jié)果是否正確,若不正確,重復(fù)上一過程直至正確,然后發(fā)出“OK”信號,結(jié)束視覺處理;另一種情況是如果獲取圖像模板匹配不成功,則直接輸出“NG”信號結(jié)束視覺處理。

        由于 PLC 的信號采用脈沖輸出,上位機軟件是通過定時器的方式掃描 PLC 狀態(tài),并非實時采集。對于上位機而言,PLC 輸出只有“0”或“1”兩種情況,無法檢測上升沿或下降沿。在實際應(yīng)用中,如果定時器時間長度與PLC 信號脈沖設(shè)置不當(dāng),上位機有可能會重復(fù)讀取或漏掉一些 PLC 信號。比如,當(dāng) PLC 視覺請求信號脈沖寬度大于上位機軟件掃描周期時,上位機在連續(xù)兩個掃描周期內(nèi)獲取的信號是一樣的,就會作出兩次視覺處理;當(dāng) PLC 視覺請求脈沖寬度小于上位機掃描周期時,則上位機很有可能會錯過這個信號而不執(zhí)行任何動作,這種情況是絕對不允許的。因此,首先必須保證 PLC 信號脈沖長度大于上位機掃描周期,然后在上位機軟件通過程序?qū)?PLC 信號構(gòu)造為 “上升沿”信號,在上位機程序中,定義一個 Bool 變量,當(dāng)?shù)谝淮螜z測到 PLC 矯向請求為“1”時,將該變量置為“1”,直到 PLC 矯向請求為“0”時,將該變量置為“0”。運行流程如圖3所示。

        圖 3 視覺處理流程

        5 PLC運動控制

        S7-1200 在運動控制中使用了軸的概念,通過對軸的組態(tài),包括硬件接口、位置定義、動態(tài)特征和機械特性等,與相關(guān)的指令塊組合使用,可以實現(xiàn)絕對位置、相對位置、點動、轉(zhuǎn)速控制和自動尋找參考點的功能。項目用1200PLC 通過 PROFINET 通信方式連接西門子的 V90 PN驅(qū)動裝置,驅(qū)動裝置用于控制軸的運動,通過 PROFIdrive報文3進行數(shù)據(jù)傳輸,使用 V90 PN 的 GSD 文件,將 V90 PN 組態(tài)為 S7-1200 的 IO device,作為從站集成到硬件組態(tài)中,在 S7-1200 中以工藝對象的方式來實現(xiàn)伺服電機的零件定位矯向控制功能。

        V90 伺服驅(qū)動組態(tài)完成后,使用工藝中的“Motion control”指令塊進行運動控制編程,這里使用了“使能軸”和“點動軸”兩個指令塊,如圖4所示。

        圖 4 PLC Motion control 控制程序

        “PLC 矯向請求”由“機器人矯向請求”和“電機旋轉(zhuǎn)完成”共同觸發(fā),PLC 接收到機器人矯向請求后,首次向上位機發(fā)出矯向請求,上位機執(zhí)行視覺處理并將零件旋轉(zhuǎn)角度傳輸至 PLC 的 MD94,隨后啟動伺服電機旋轉(zhuǎn),電機旋轉(zhuǎn)完成后,PLC 再次發(fā)出矯向請求,上位機重新取像,驗證矯向結(jié)果是否正確,若正確則返回“OK”信號,若不正確則再次傳輸新的零件位置數(shù)據(jù),直至零件矯向合格為止。

        6 結(jié)束語

        工業(yè)視覺項目往往涉及到視覺軟件、上位機和 PLC運動控制等多學(xué)科的交叉,作為機器視覺是否能得到有效應(yīng)用,不僅在于圖像的識別處理,還在于得出數(shù)據(jù)后的系列操作,這種集成在工業(yè)應(yīng)用項目中尤為突出,一個完善的工業(yè)視覺項目應(yīng)該包括“視覺處理—執(zhí)行控制—結(jié)果驗證”,形成閉環(huán)控制。項目從 VisionPro 視覺處理、上位機集成展示及數(shù)據(jù)傳輸、PLC 運動控制和結(jié)果判定各方面進行集成,形成了一套較為完整的工業(yè)視覺測量定位系統(tǒng),對工業(yè)視覺應(yīng)用有一定推廣及借鑒意義。

        猜你喜歡
        信號語言
        信號
        鴨綠江(2021年35期)2021-04-19 12:24:18
        完形填空二則
        語言是刀
        文苑(2020年4期)2020-05-30 12:35:30
        孩子停止長個的信號
        讓語言描寫搖曳多姿
        多向度交往對語言磨蝕的補正之道
        累積動態(tài)分析下的同聲傳譯語言壓縮
        基于LabVIEW的力加載信號采集與PID控制
        一種基于極大似然估計的信號盲抽取算法
        我有我語言
        国产丝袜在线精品丝袜不卡| 乱人伦中文视频在线| 卡一卡二卡三无人区| 国产主播福利一区二区| 久久迷青品着产亚洲av网站| 亚洲色图专区在线视频| 人人妻人人狠人人爽| 亚洲图区欧美| 国产女主播免费在线观看| 蜜桃视频在线观看网址| 最近2019年好看中文字幕视频 | 欧洲多毛裸体xxxxx| 亚洲欧美综合在线天堂| 亚洲AV永久无码精品一区二国| 国产精品伦理久久一区| 99久久婷婷国产综合亚洲| 成全视频高清免费| 久久久国产精品粉嫩av| 国产自拍偷拍视频免费在线观看 | 91精品日本久久久久久牛牛| 强迫人妻hd中文字幕| 午夜天堂精品久久久久| 少妇内射视频播放舔大片| 国产高清女人对白av在在线| 蜜桃视频在线观看网址| 国产精品亚洲欧美大片在线看| 精品无码AV无码免费专区| 精品色老头老太国产精品| 亚洲va久久久噜噜噜久久天堂| 久久久久国产一区二区三区 | 日本视频一区二区这里只有精品 | 国产成人av综合亚洲色欲| 一区二区国产视频在线| 国产欧美日韩va另类在线播放| 精品一区二区久久久久久久网站| 中文字幕无码免费久久9| 亚洲精品久久视频网站| 2021国产精品国产精华| 免费国产黄线在线播放| 日韩中文字幕在线丰满| 蜜桃一区二区三区|