機(jī)器視覺長期以來用于工業(yè)自動化系統(tǒng)中,,以通過取代傳統(tǒng)上的人工檢查來提高生產(chǎn)質(zhì)量和產(chǎn)量。從拾取和放置,、對象跟蹤到計量、缺陷檢測等應(yīng)用,,利用視覺數(shù)據(jù)可以通過提供簡單的通過失敗信息或閉環(huán)控制回路,,來提高整個系統(tǒng)的性能。
視覺的使用并不僅僅在工業(yè)自動化領(lǐng)域,;我們也看到了相機(jī)在日常生活中的大量應(yīng)用,,例如用于計算機(jī)、移動設(shè)備,,特別是在汽車中,。攝像頭僅僅是在幾年前才被引入到汽車中,但是現(xiàn)在汽車中已經(jīng)配備了大量攝像頭,,以為駕駛員提供完整的360°車輛視圖,。
但是談到機(jī)器視覺領(lǐng)域的最大技術(shù)進(jìn)步,可能一直是處理能力,。隨著處理器性能每兩年翻一番,,以及對多核CPU、GPU和FPGA等并行處理技術(shù)的持續(xù)關(guān)注,,視覺系統(tǒng)設(shè)計人員現(xiàn)在可以將高度復(fù)雜的算法應(yīng)用于視覺數(shù)據(jù),,并創(chuàng)建更智能的系統(tǒng)。
處理技術(shù)的發(fā)展帶來了新機(jī)會,,而不僅僅是更智能或更強(qiáng)大的算法,。讓我們看看為制造機(jī)器增加視覺功能的應(yīng)用案例,。這些系統(tǒng)傳統(tǒng)上設(shè)計為形成協(xié)作分布式系統(tǒng)的智能子系統(tǒng)網(wǎng)絡(luò),該系統(tǒng)允許模塊化設(shè)計(見圖1),。
圖1:智能子系統(tǒng)網(wǎng)絡(luò),,其設(shè)計為構(gòu)成協(xié)作分布式控制系統(tǒng)。該系統(tǒng)允許模塊化設(shè)計,,但采用這種以硬件為中心的方法可能導(dǎo)致性能瓶頸,。
然而,隨著系統(tǒng)性能的提高,,采用這種以硬件為中心的方法可能遇到困難,,因?yàn)檫@些系統(tǒng)通常采用時間關(guān)鍵和非時間關(guān)鍵協(xié)議的混合來聯(lián)接。通過各種通信協(xié)議將這些不同的系統(tǒng)聯(lián)接在一起,,會導(dǎo)致延遲,、確定性和吞吐量方面出現(xiàn)瓶頸。
例如,,如果設(shè)計者試圖利用這種分布式架構(gòu)開發(fā)應(yīng)用,,并且必須在視覺和運(yùn)動系統(tǒng)之間保持緊密集成,例如在視覺伺服中所需要的,,那么可能遇到由于缺乏處理能力而帶來的主要性能挑戰(zhàn),。此外,由于每個子系統(tǒng)都具有自己的控制器,,這實(shí)際上會降低處理效率,。
最后,由于這種以硬件為中心的分布式方法,,設(shè)計人員不得不使用不同的設(shè)計工具來設(shè)計視覺系統(tǒng)中每個子系統(tǒng)的特定視覺軟件,,以及用于運(yùn)動系統(tǒng)的運(yùn)動專用軟件等。這對于規(guī)模較小的設(shè)計團(tuán)隊而言尤其具有挑戰(zhàn)性,,因?yàn)橐粋€小團(tuán)隊甚至是一名工程師,,需要負(fù)責(zé)設(shè)計中的許多部分。
幸運(yùn)的是,,有更好的方法為先進(jìn)的機(jī)器和設(shè)備設(shè)計這些系統(tǒng),,這是一種簡化復(fù)雜性、提高集成度,、降低風(fēng)險和縮短上市時間的方法,。如果我們將思維從以硬件為中心轉(zhuǎn)向以軟件為中心的設(shè)計方法,結(jié)果會怎么樣(見圖2),?如果我們使用能用單一設(shè)計工具實(shí)現(xiàn)不同任務(wù)的編程工具,,那么設(shè)計人員就可以在他們的軟件中反映機(jī)械系統(tǒng)的模塊性。
圖2:以軟件為中心的設(shè)計方法,允許設(shè)計人員通過在單個強(qiáng)大的嵌入式系統(tǒng)中整合不同的自動化任務(wù)(包括視覺檢查,、運(yùn)動控制、I/O和HMI)來簡化控制系統(tǒng)結(jié)構(gòu),。
這允許設(shè)計人員通過在單個強(qiáng)大的嵌入式系統(tǒng)(見圖3)中整合不同的自動化任務(wù)(包括視覺檢查,、運(yùn)動控制、I/O和HMI)來簡化控制系統(tǒng)結(jié)構(gòu),。這消除了子系統(tǒng)通信的挑戰(zhàn),,因?yàn)楝F(xiàn)在所有子系統(tǒng)都在單個控制器上的相同軟件堆棧中運(yùn)行。 高性能嵌入式視覺系統(tǒng)是這種集中式控制器的最佳候選者,,因?yàn)檫@些設(shè)備中已經(jīng)內(nèi)置了這些功能,。
圖3:將處理器與FPGA和I/O結(jié)合在一起的異構(gòu)架構(gòu),不僅是設(shè)計高性能視覺系統(tǒng),、也是集成運(yùn)動控制,、HMI和I/O的理想解決方案。
讓我們來看看這種集中式處理架構(gòu)的一些好處,。以視覺引導(dǎo)運(yùn)動應(yīng)用為例,,例如柔性饋送,其中視覺系統(tǒng)為運(yùn)動系統(tǒng)提供引導(dǎo)功能,。這里,,零件的位置和取向都是隨機(jī)的。在任務(wù)開始時,,視覺系統(tǒng)拍攝零件的圖像以確定其位置和取向,,并將該信息提供給運(yùn)動系統(tǒng)。
然后,,運(yùn)動系統(tǒng)根據(jù)圖像坐標(biāo)將致動器移動到零件所處的位置,,并拾起它。它也可以使用此信息在放置零件之前校正方向,。通過這種方法,,設(shè)計者可以消除先前用于定向和定位零件的任何夾具。這不但降低了成本,,還允許應(yīng)用程序能更容易地適應(yīng)新的零件設(shè)計,,只需要修改軟件即可。
以硬件為中心的架構(gòu)的關(guān)鍵優(yōu)點(diǎn)是其可擴(kuò)展性,,這主要?dú)w因于系統(tǒng)之間的以太網(wǎng)鏈路,。但是也必須特別注意通過該鏈路的通信。如前所述,,這種方法的挑戰(zhàn)在于以太網(wǎng)鏈路的不確定性,,并且?guī)捰邢蕖?/p>
對于大多數(shù)僅在任務(wù)開始時給出引導(dǎo)的視覺引導(dǎo)運(yùn)動任務(wù),這是可接受的,;但是也可能存在其他情況,,其中延遲的變化可能是一大挑戰(zhàn),。將這種設(shè)計轉(zhuǎn)向集中式處理架構(gòu),具有諸多優(yōu)點(diǎn),。