概述
本文將介紹即時安全氣泡檢測的架構,包括開發模組化解決方案、優化此類高數據頻寬應用程式以每秒 30 幀 (FPS) 的速度運行,以及設計多線程應用程式和演算法以準確檢測靠近地面的物體的挑戰。
介紹
機器人在各個行業中越來越普遍,提高了效率和生產力。但是,為了確保附近人員和資產的安全,機器人必須配備碰撞檢測和停止功能。安全氣泡檢測器設計用於檢測指定安全區域內是否存在物體或人員。
本文重點介紹如何使用 Analog Devices 的 EVAL-ADTF3175D-NXZ 飛行時間平台實現安全氣泡檢測器應用。
ADTF3175 模組的視場 (FoV) 為 75°。為了在實際應用中覆蓋更廣泛的FoV,將多個感測器組合在一起。例如,為了覆蓋 270° FoV,使用了四個模組。安全氣泡檢測演算法在 EVAL-ADTF3175D-NXZ 平台中的 i.MX 8M Plus 處理器上運行。該演算法從感測器捕獲深度圖像,並檢測安全氣泡半徑內的任何物體。為了便於集成到機器人應用程式中,安全氣泡檢測應用程式使用機器人作系統 (ROS) 框架實現。該演算法經過高度優化,可在此平台上實現 30 FPS 的幀速率。安全氣泡檢測器是自動導引車 (AGV) 和自主行動機器人 (AMR) 的基本元件。安全區通常表示為 AGV/AMR 周圍的虛擬圓形區域,如圖 1 中的紅色圓圈所示。
安全氣泡探測器是任何 AGV/AMR 系統的基礎。如圖 2 所示,使用四個 EVAL-ADTF3175D-NXZ 模組構建了一個安全氣泡檢測器,以覆蓋 278° 的視場(FoV)。這些模組以水平方式排列,每個飛行時間(ToF)模組之間的角度為 67.5°。這種配置有助於減少盲點並提供 278° 的視場。
圖 2.水平設置。(a) 俯檢視。(b) 前檢視。
為了促進 ToF 模組和主機系統之間的通訊,採用了 ROS 發行者-訂閱者模型,如圖 3 所示。在此設置中,USB 乙太網用於通訊,以確保數據完整性並提高通訊速度。
圖 3.Host 作為訂閱者,ROS 節點作為發布者的架構。
安全氣泡檢測演算法用於檢測安全氣泡半徑內的物體。檢測標誌作為 ROS 主題傳輸,允許主機訂閱所有模組的主題並組合檢測結果。此外,這些模組還會發佈深度、IR 和輸出圖像以供進一步分析。ROS 提供了有效的可視化工具,例如 rviz,可以可視化已發佈的主題。該應用程式設計為高度可配置的,並將參數傳遞給 ROS 節點以調整相機位置、旋轉和其他配置值。
在應用程式中實現了多線程架構,如圖 4 所示。三個線程(即 input、process 和 output)並行運行。該設計旨在最大限度地減少延遲,並確保處理塊在最新的可訪問幀上持續運行。輸入線程從 ToF 模組讀取圖像並更新輸入佇列,而進程線程獲取輸入佇列並運行安全氣泡檢測演算法,發佈檢測到的標誌並將輸出推送到輸出佇列。輸出線程讀取輸出佇列併發佈主題以進行可視化。在實時場景中,如果處理塊的幀速率低於輸入線程,則會丟棄前一幀,以優先處理延遲最短的最新幀。
圖 4.多線程程式。
主機和 ToF 模組之間的通訊通過 ROS 發行者-訂閱者模型進行,使用 TCP/IP 協定。主機將 ROS 節點(ToF 模組)發佈的輸出圖像組合在一起,併發佈組合後的輸出。
如圖 5 所示,主機是 NVIDIA® Jetson Xavier NX,它使用 USB 協定上的乙太網為所有四個 ToF 模組供電和通訊。安全氣泡的預設半徑為1公尺,可以在 ROS 啟動文件中進行配置。如果在此區域內檢測到物件,則會觸發物件檢測標誌,並通過 ROS 主題將其發送到主機。主機從每個 ToF 模組訂閱物件檢測主題。使用簡單的邏輯工作範圍 (OR) 運算將結果組合在一起,如果任何感測器檢測到安全氣泡內有物體,則指示存在物體。
圖 5.使用 NVIDIA Jetson Xavier NX 進行水平設置。
為了實現可視化,感測器將採集的圖像轉換為其俯視圖,並根據物體是在安全氣泡內部還是外部用綠色和紅色圖元標記物體。此圖像還由每個感測器作為 ROS 主題發佈,主機將它們組合成一個組合圖像。圖 6 顯示了所有已發佈的輸出圖像主題的組合圖像。
圖 6.四個 TOF 模組的組合俯視圖。
為了進行可視化,在左上角繪製了一個方框來顯示物件檢測狀態(綠色:未檢測到對象,紅色:檢測到物件)。參見圖 7。
圖 7.可視化。(a) 未偵測到物體。(b) 檢測到的物體。
這些圖像可以使用 ROS 工具 rviz 進行可視化。此外,NVIDIA Jetson Xavier NX 可以使用 HDMI® 電纜連接到顯示器以查看輸出。可以啟用視覺化效果,例如輸入圖像的深度圖像、點雲和俯檢視。這些可視化提供了有關檢測到的物件及其空間關係的更多詳細資訊和見解。參見圖 8。
圖 8.可視化(調試圖像以進行分析)。
使用的 SQA 流程
使用標準軟體質量保證 (SQA) 方法確保軟體安全和品質。
-
單元測試:ROS 支援多級單元測試。
-
庫單元測試:測試獨立於 ROS 的庫。
-
ROS 節點單元測試:節點單元測試啟動節點並測試其外部 API ; 即已發佈的 Topic、已訂閱的 Topic 和 Service。
-
代碼覆蓋率:代碼覆蓋率分析由 ROS 的一個包完成,這有助於消除死代碼並提高單元測試品質。
-
文檔:ROS 有一個名為 ros_doc_lite 的包,它為源檔提供了一個 doxygen 格式的文件。
-
Clang 格式用於格式化代碼,Clang-Tidy 用於維護 ROS 編碼樣式指南。
安全氣泡檢測器能夠可靠地檢測各種形狀、顏色和尺寸的物體,包括小至 5 mm 厚的電纜。
該演算法的 30 毫秒低延遲確保了即時物件檢測和回應。
通過廣泛利用 ROS 框架進行介面和可視化,該應用程式具有高度的可移植性。它與任何使用 ROS 的主機相容,並將縮短客戶的上市時間。
ToF 感測器對於透明和低反射物體的精度較低。這會導致對玻璃瓶和塑膠球等某些物體的檢測延遲。例如,圖 9 描述了演算法檢測到物體的距離(安全半徑設置為 100 釐米)。y 軸表示測試物件。玻璃瓶 (12, 7) 暗示玻璃瓶高 12 釐米,寬 7 釐米;如果括弧中只有一個參數,則指示物件的半徑或立方體的長度。有關安全氣泡檢測器規格的摘要,請參閱表 1。
圖 9.檢測精度。
結論
這款安全氣泡檢測器由 ADTF3175D 和 EVAL-ADTF3175DNXZ ToF 平台組成,具有許多優點。它針對 i.MX 8M Plus 平台進行了高度優化,實現了 30 FPS 的流暢性能。它利用多線程方法來最大限度地減少延遲,確保快速回應的作。它還實施 SQA 方法以確保軟體安全並保持質量標準。
引用
工業視覺技術”Analog Devices, Inc.”
“ Analog Devices ToF .”GitHub公司
“ Analog Devices 3DToF ADTF31xx 。”GitHub公司
“ Analog Devices 3DToF 安全氣泡檢測器。”GitHub公司
“ Analog Devices 3DToF 地板探測器。”GitHub公司
“ Analog Devices 3DToF 圖像拼接。”GitHub公司
確認
我們要感謝 ADI-TOF SDK 團隊的支援。
作者
拉傑什·馬哈帕特拉
Rajesh Mahapatra 擁有 30+ 年的工作經驗,在 Analog Devices Bangalore 的軟體和安全小組工作。他熱衷於使用演算法和嵌入式軟體解決客戶問題,致力於 ADI 硬體解決方案。他與非政府組織密切合作,植樹,併為面臨經濟挑戰的人們提供就業和技能培訓。他在系統、圖像處理和計算機視覺領域擁有5項專利。
阿尼爾·斯裡帕達勞
Anil Sripadarao先生於2007年加入ADI公司,目前在ADI班加羅爾公司軟體和安全部門工作。他感興趣的領域包括音訊/視頻編解碼器、AI/ML、計算機視覺演算法和機器人技術。他在圖像處理和計算機視覺領域擁有6項專利。
普拉桑納·巴特
Prasanna Bhat是班加羅爾ADI公司軟體和安全部門的嵌入式軟體工程師。Prasanna 的專長在於軟體開發和尖端技術的交叉點。他的工作涵蓋多個領域,包括機器人、深度學習、嵌入式系統、Python GUI 和飛行時間 (ToF) 感測器應用的圖像處理演算法。
科爾姆·普倫德加斯特
Colm Prendergast 是 Analog Garage 的高級首席研究科學家,他致力於自主機器人感測應用的演算法和系統。Colm 於 1989 年加入 Analog Devices, Inc.,在愛爾蘭利默里克擔任設計工程師。在 ADI 的職業生涯中,Colm 參與並領導了各種應用領域的專案,包括數位視頻、音訊、通信、DSP 和 MEM。Colm 擔任物聯網雲技術總監,領導 ADI 在物聯網領域的雲技術開發工作,負責 ADI 的自動駕駛汽車技術,最近還負責 ADI 的機器人感知和導航技術開發。Colm 擁有 14 項美國專利,並且是 IEEE 和 SIGGRAPH 的成員。Colm 是馬薩諸塞州布萊頓市 St. Joseph Preparatory High School 的第一位機器人導師。Colm 擁有愛爾蘭利默里克大學電子工程學士學位和愛爾蘭科克大學碩士學位。
肖恩·奧米拉
Shane O'Meara 常駐愛爾蘭,是 Analog Devices, Inc. 工業自動化營業單位軟體系統設計工程領域的高級經理,專注於工業機器人。他於 2011 年加入 ADI,擔任產品應用工程師,負責推動電機控制應用中精密 ADC 的技術開發。Shane 擁有利默里克大學的工程學士學位。在加入 ADI 之前,他擔任過各種職務,專注於汽車電子和視覺系統。
達拉·奧沙利文
Dara O'Sullivan 是 Analog Devices 工業邊緣、運動控制和機器人業務部的系統應用總監。他的專業領域是工業運動控制應用中的電源轉換、控制和監控。他在愛爾蘭科克大學獲得學士、M.Eng.Sc 和博士學位,自 2001 年以來一直在工業和可再生能源應用領域工作,擔任過一系列研究、諮詢和行業職位。
安德斯·弗雷德里克森
Anders Frederiksen 常駐丹麥,是 Analog Devices, Inc. Connected Motion 和 Robotics 營業單位的機器人和新興技術高級戰略行銷經理。Anders 在半導體和機器人行業擁有超過 25 年的經驗。他的職務包括跨國公司和初創公司的IC設計和執行管理。他經常在行業會議和論壇上發表演講。他於1998年加入ADI公司,在馬薩諸塞州諾伍德擔任電力電子和電機控制系統工程師,並在ADI公司擔任過各種職務,推動國際和本地的技術開發、市場參與和銷售戰略。Anders 擁有丹麥技術大學電氣工程理學碩士學位。在加入 ADI 之前,他曾在丹麥技術大學擔任助理教授。
薩加爾·瓦利謝蒂
Sagar Walishetti 在班加羅爾 Analog Devices 軟體和安全部門擔任軟體工程師。他於 2019 年加入 ADI。他曾在嵌入式系統、圖像處理、機器人和深度學習領域工作。他在 ADI 工作期間參與的最令人興奮的計劃之一是這些領域的合併。
安馳科技 FAE support. Please e-mail
► Marketing.anstek@macnica.com
► 或加 安馳科技 LINE 洽詢
► 追蹤 安馳科技 Facebook
► 請加入 安馳YouTube頻道
► 立即填寫料號 申請樣品
洽詢更新產品、技術與安馳抽獎活動