機器人安全新突破:安全氣泡探測器的強大功能
摘要
本文介紹實時安全氣泡探測的架構,以及在開發模塊化解決方案、優化高數據帶寬應用以實現每秒30幀(FPS)運行、設計多線程應用和算法以準確探測靠近地面的物體等方面所面臨的挑戰。
簡介
機器人的普及程度越來越高,目前正在逐漸提高在各行各業的效率和生產力。然而,為了確保周邊人員和資產的安全,機器人必須配備碰撞檢測和停止功能。安全氣泡探測器可以探測指定安全區域內是否存在物體或人員。
本文重點介紹如何使用ADI公司的EVAL-ADTF3175D-NXZ飛行時間(ToF)平臺實現安全氣泡探測器應用。ADTF3175D模塊具有75°的視場(FoV)。如需在實際應用中覆蓋更寬的視場,則可以組合使用多個傳感器。例如,為了覆蓋270°的視場,則需使用四個模塊。安全氣泡探測算法在EVAL-ADTF3175D-NXZ平臺的i.MX8MP處理器上運行,可以捕獲來自傳感器的深度圖像,并探測安全氣泡半徑內的任何物體。為了便于集成到機器人應用中,通常借助機器人操作系統(ROS)框架來實現安全氣泡探測應用。該算法經過高度優化,在此平臺上實現了30 FPS幀率。安全氣泡探測器是自動導引車(AGV)和自主移動機器人(AMR)的基本組成部分。相關安全區通常用AGV/AMR周圍的虛擬圓形區域表示,如圖1中的紅色圓圈所示。
圖1.安全氣泡探測器
安全氣泡探測器是AGV/AMR系統必不可少的組成部分。圖2中的安全氣泡探測器由四個EVAL-ADTF3175DNXZ模塊構成,覆蓋278°的視場。這些模塊呈水平分布,飛行時間(ToF)模塊之間彼此相隔67.5°,這種配置有助于減少盲點,呈現278°的視場。
為了方便ToF模塊和主機系統之間的通信,系統采用ROS發布者-訂閱者模型,如圖3所示。此設置使用Ethernet over USB進行通信,以確保數據完整性并提高通信速度。
圖2.水平設置。(a)頂視圖;(b)前視圖。
系統采用安全氣泡探測算法來探測安全氣泡半徑內的物體。探測標志以ROS 話題(Topic)的形式傳輸,主機可以訂閱所有模塊的話題,并合并各個探測結果。此外,這些模塊還可發布深度圖像、紅外圖像和輸出圖像以供進一步分析。ROS提供了有效的可視化工具,例如rviz,它可以將發布的話題可視化。該應用設計為高度可配置的,將參數傳遞給ROS節點即可調整攝像頭位置、旋轉角度和其他配置值。
該應用實現了多線程架構,如圖4所示。輸入、處理、輸出三個線程并行運行。該設計旨在有效減少延遲,確保持續對最新可訪問幀運行算法模塊。輸入線程從ToF模塊讀取圖像并更新輸入隊列,而處理線程獲取輸入隊列并運行安全氣泡探測算法,發布探測到的標志并將輸出推送到輸出隊列。輸出線程讀取輸出隊列并發布話題以實現可視化。在實時場景中,當算法模塊的幀速率低于輸入線程時,先前未來得及處理的的幀將被丟棄,從而以最小延遲優先處理最新的幀。
圖3.主機作為訂閱者、ROS節點作為發布者的架構
圖4.多線程程序
主機和ToF模塊之間的通信采用TCP/IP協議,通過ROS發布者-訂閱者模型進行。主機將來自ROS節點(ToF模塊)的已發布輸出圖像合并,并發布合并后的輸出。
如圖5所示,主機是NVIDIA? Jetson Xavier NX,利用Ethernet over USB協議為所有四個ToF模塊供電并與之通信。
安全氣泡的默認半徑為一米,這可以在ROS啟動文件中進行配置。如果在該區域內探測到物體,則會觸發設置中的物體探測標志,并通過ROS主題發送到主機。主機訂閱每個ToF模塊的物體探測話題。結果通過簡單的邏輯工作范圍OR(或)運算合并。如果任何一個傳感器在安全氣泡內探測到物體,合并后的結果就會指示存在物體。
圖5.采用NVIDIA Jetson Xavier NX的水平設置
為了實現可視化,傳感器將獲取的圖像轉換為頂視圖,并根據物體位于安全氣泡內部還是外部,用綠色和紅色像素標記物體。各傳感器也會將此圖像作為ROS 話題發布,隨后主機將它們合并成組合圖像。圖6為所有已發布輸出圖像主題的組合圖像。
圖6.四個TOF模塊的組合頂視圖
為了實現可視化,在左上角繪制一個方框來顯示物體探測狀態(綠色:未探測到物體;紅色:探測到物體)。參見圖7。
這些圖像可以通過ROS工具rviz進行可視化。此外,NVIDIA Jetson Xavier NX可以通過HDMI線連接到顯示器,以便查看輸出。為了進行分析,我們可以啟用輸入圖像的深度圖像、點云和頂視圖等可視化功能。這些可視化功能為探測到的物體及其空間關系提供更詳細的信息和洞察。參見圖8。
圖7.可視化。(a)未探測到物體;(b)探測到物體。
圖8.可視化(用于分析的調試圖像)
所用SQA流程
采用標準軟件質量保證(SQA)方法來確保軟件的安全性和質量。
單元測試:ROS支持多級別的單元測試。
庫單元測試:測試獨立于ROS的庫。
ROS節點單元測試:節點單元測試啟動節點及其外部API,即已發布話題、已訂閱話題和服務。
代碼覆蓋率:代碼覆蓋率分析由ROS的一個工具包完成,有助于消除從未被執行的“死代碼”并提高單元測試質量。
文檔:ROS有一個工具包ros_doc_lite,它能為源文件生成doxygen格式的文檔。
使用Clang格式來格式化代碼,并使用Clang-tidy來維護ROS編碼風格指南。
安全氣泡探測器能夠可靠地探測各種形狀、顏色和尺寸的物體,包括厚度僅5毫米的電纜。
算法的延遲非常低,只有30 ms,可確保實時探測物體并作出響應。
由于充分利用了ROS框架來構建用戶界面和提供可視化功能,該應用具有高度可移植性,可兼容任何使用ROS的主機,幫助縮短客戶產品的上市時間。
對于透明和低反射物體,ToF傳感器的準確度較低。因此,對玻璃瓶和塑料球等物體,會出現探測滯后。例如,圖9顯示了算法探測到物體的距離(安全半徑設置為100 cm)。y軸代表測試對象。玻璃瓶(12, 7)表示玻璃瓶高12 cm,寬7 cm。如果括號中只有一個參數,則它表示物體的半徑或立方體的邊長。表1總結了安全氣泡探測器的規格。
圖9.探測準確度
表1.安全氣泡探測器規格
結論
這款由ADTF3175D和EVAL-ADTF3175DNXZ ToF平臺組成的安全氣泡探測器具有許多優勢。它針對i.MX8MP平臺進行了高度優化,實現了30 FPS的流暢性能;而且采用多線程方法來有效減少延遲,確保快速響應;此外還實施了SQA方法來確保軟件安全并維護質量標準。
致謝
感謝ADI-TOF SDK團隊的支持。
參考文獻
“工業視覺技術”。ADI公司。
“Analog Devices ToF” 。GitHub, Inc.
“Analog Devices 3DToF ADTF31xx”。GitHub, Inc.
“Analog Devices 3DToF Safety Bubble Detector”。GitHub, Inc.
“Analog Devices 3DToF Floor Detector”。GitHub, Inc.
“Analog Devices 3DToF Image Stitching”。GitHub, Inc.
作者:
Rajesh Mahapatra,高級經理
Anil Sripadarao,首席工程師
Prasanna Bhat,工程師
Colm Prendergast,高級首席工程師
Shane O'Meara,高級經理
Dara O’Sullivan,總監
Anders Frederiksen,首席專家
Sagar Walishetti,工程師
作者簡介
Rajesh Mahapatra擁有超過30年的工作經驗,目前就職于班加羅爾ADI公司的軟件和安全部門。他熱衷于使用基于ADI硬件解決方案的算法和嵌入式軟件來幫助客戶解決問題。他與非政府組織密切合作,植樹造林,并為城市里經濟困難的人群提供培訓,幫助他們謀生。他在系統、圖像處理和計算機視覺領域擁有5項專利。
Anil Sripadarao于2007年加入ADI公司,目前就職于班加羅爾ADI公司的軟件和安全部門。他感興趣的領域包括音頻/視頻編解碼器、AI/ML、計算機視覺算法和機器人技術。他在圖像處理和計算機視覺領域擁有6項專利。
Prasanna Bhat是班加羅爾ADI公司軟件和安全部門的嵌入式軟件工程師。他是軟件開發和前沿技術交叉領域的專家,工作范圍涉及多個領域,包括機器人、深度學習、嵌入式系統、Python GUI以及飛行時間(ToF)傳感器應用的圖像處理算法等。
Colm Prendergast是Analog Garage的高級首席研究科學家,致力于研究自主機器人檢測應用的算法和系統。Colm于1989年加入ADI公司,在愛爾蘭利默里克擔任設計工程師。在ADI公司工作期間,Colm從事和領導了廣泛應用領域中的多個項目,包括數字視頻、音頻、通信、DSP和MEMS。Colm目前是ADI公司物聯網領域云技術總監,負責領導云技術開發工作,并曾參與開發ADI公司自動駕駛汽車技術,最近又參與了ADI公司機器人感知和導航技術的開發。
Shane O'Meara是ADI公司工業自動化事業部的高級經理,常駐愛爾蘭,從事軟件系統設計工程工作,側重于為工業機器人開發軟件。他于2011年加入ADI公司,擔任產品應用工程師,致力于推動電機控制應用中精密ADC的技術發展。Shane畢業于利默里克大學,獲工程學士學位。加入ADI公司之前,他曾在不同的崗位上負責汽車電子和視覺系統領域的工作。
Dara O'Sullivan是ADI公司工業邊緣、運動和機器人事業部的系統應用總監。他的專長領域是工業運動控制應用的功率轉換、控制和監測,擁有愛爾蘭科克大學工程學士、工程碩士和博士學位。自2001年起,他便一直從事跟工業與可再生能源應用相關的研究、咨詢工作。
Anders Frederiksen是ADI公司互連運動和機器人事業部機器人和新興技術高級戰略營銷經理,常駐丹麥。Anders在數字IC設計、產品及高級管理方面擁有超過25年的行業經驗,工作足跡遍布全球,曾入職多家半導體和機器人行業的跨國公司和初創公司,此外也多次受邀出席各種行業會議和論壇并發表演講。他于1998年加入ADI公司,擔任電力電子和電機控制系統工程師,在美國馬薩諸塞州諾伍德市工作。他在ADI公司內擔任過多種職務,推動了全球和本地的技術開發、市場拓展和銷售戰略實施。Anders畢業于丹麥技術大學,獲電氣工程碩士學位,成績優異。加入ADI公司之前,他曾擔任丹麥技術大學助理教授。
Sagar Walishetti是班加羅爾ADI公司軟件和安全部門的軟件工程師。他于2019年加入ADI公司,曾從事嵌入式系統、圖像處理、機器人和深度學習方面的工作。在ADI任職期間,有關這些領域的整合工作讓他十分興奮。
上一篇:德州儀器TI發布全球最小MCU,微型空間內實現智能化
下一篇:地瓜機器人完成1億美元A輪融資,加速構建具身智能生態版圖
推薦閱讀最新更新時間:2025-05-29 17:00


- LT8330EDDB 8V 至 40V 輸入、±15V 轉換器的典型應用電路
- stm32f411 system1
- AM1G-1207DH30Z ±7.2V 1 瓦 DC-DC 轉換器的典型應用
- DEMO9S08AC60E: Demo Board for S08AC
- MPC5777C-DEVB: MPC5777C發動機控制和BMS開發板
- DIY zigbee2mqtt zigbee3.0網關
- LT3091IDE 基本可調線性穩壓器的典型應用
- 4pin燒錄最小板!最丐版ch340c
- LTC3119HFE 可選 12V 或 3.3V 輸出、1MHz 穩壓器的典型應用電路
- AM2F-1209SZ 9V 2 瓦 DC/DC 轉換器的典型應用