移動機器人的應用場景日益增多,覆蓋工業自動化到服務型機器人等領域。保障移動機器人的操作安全可靠至關重要,因為它們承載的任務更加復雜,且運行環境不可控。
恩智浦新一代MCX系列微控制器助力應對機器人安全挑戰。MCX MCU基于高性能Arm Cortex-M33內核,具有先進的錯誤檢測和糾正功能,非常適合開發開發對可靠性和安全性要求極高的移動機器人。
移動機器人常見的可靠性和安全問題
移動機器人搭載的電子系統允許機器人感知周圍環境、進行智能決策,并精確控制自身的動作。然而,移動機器人在執行任務時可能會面臨極端溫度、振動和電磁干擾等多種挑戰,隨著時間的推移,這些壓力源會導致機器人的內存出現錯誤和損壞。考慮到移動機器人預期使用壽命較長,確保電子組件長期的可靠性至關重要。
移動機器人的內存錯誤可能導致各種可靠性和安全性問題。機器人控制固件中的位翻轉也可能導致執行錯誤的指令,進而引發意外行為。傳感器數據損壞,可能導致解讀錯誤,讓機器人做出錯誤的決策。電機控制出錯可能會導致機器人進行計劃之外的運動,或者對機器人本身或其周圍環境造成損害。
在安全關鍵應用中,例如在人類周圍工作的移動機器人,此類故障可能帶來嚴重的后果。為了確保移動機器人的操作安全可靠,必須采取嚴密措施規避內存錯誤。
利用邊緣處理實現實時決策并增強自主性。了解恩智浦移動機器人解決方案,點擊這里>>
MCX面向閃存和RAM的糾錯功能
恩智浦MCX A系列微控制器包含幾個關鍵功能,可用于檢測和糾正內存錯誤。MCX A內置了高達128KB的閃存,具有糾錯碼 (ECC) 功能 (參見MCX A參考手冊,第4.5節)。MCX N系列閃存最高達2MB,帶有ECC功能。閃存的每個128位字包含額外的9位ECC數據。
ECC是指在每個數據字旁邊存儲額外冗余位的技術。每次數據讀取時,額外冗余位將重新生成ECC位,并與原先存儲的ECC進行比較,從而驗證數據的完整性。如果重新生成的ECC位與存儲的ECC位不匹配,則意味著存在錯誤,ECC能夠糾正該錯誤。單個比特出錯時,ECC能確定具體的出錯比特。但出現雙比特錯誤時,ECC只能檢測,不能糾正。
移動機器人示例
如果微控制器檢測到ECC錯誤,則系統控制器 (SYSCON) 模塊會生成總線故障或使用中斷來處理該錯誤。靈活的故障處理能力允許開發人員根據自己的具體應用自定義處理方式。
MCX A還提供32KB的片上SRAM,其中有一個8KB的塊 (RAMA0) 具有ECC功能,能夠進行單錯誤糾正和雙錯誤檢測 (參見SEC-DED——MCX A參考手冊,第9.1.2節)。當配置為ECC時,MCX N系列提供高達416KB的RAM,在VBAT模式下,其中的32KB RAM可以保持數據不丟失。該功能可保護關鍵的運行時數據,如傳感器輸入和算法狀態變量。微控制器中部署了一個錯誤報告模塊 (ERM),可提供全面的錯誤報告和控制功能。ERM從ECC邏輯捕獲并記錄錯誤事件,為監測內存子系統的健康狀況提供清晰的視圖。開發人員可以利用錯誤信息進行診斷和預測性維護。
錯誤注入模塊 (EIM) 在讀取具有ECC功能的RAM時具有注入錯誤的能力,可實現自我診斷。這種自檢功能允許開發人員進行定期自檢,確保微控制器的可靠運行。
除了ECC之外,MCX A系列還包括一個內存塊檢查器 (MBC),為不同內存區域的讀、寫和執行權限提供運行時安全控制 (參見MCX A參考手冊,第45.1節)。通過定義內存訪問策略,MBC可以防止非法的內存訪問。
MCX糾錯技術提升機器人的可靠性
MCX的多種糾錯功能相互配合,共同提升移動機器人的可靠性與安全性。通過自動糾正閃存中的單比特錯誤,MCX能夠保持機器人控制固件的完整性。這種完整性可防范機器人執行可能引發非預期行為的錯誤控制邏輯。
此外,MCX還具備檢測雙比特錯誤的能力,這一功能對于機器人的安全運行和可靠性至關重要。盡管雙比特錯誤無法被糾正,但其檢測機制有助于防止使用可能損壞的指令或數據。一旦發現雙比特錯誤,機器人便能夠平穩過渡到安全狀態,有效避免可能的危險或故障。
MCX的ECC將其內存保護功能擴展到閃存以外的SRAM。MCX A的8KB RAMA0 SRAM塊集成了ECC功能,而MCX N可以將RAMG和RAMH存儲塊重新用于ECC校正,提供高達416KB的ECC RAM存儲空間。ECC RAM支持對運行時數據進行單比特糾錯和雙比特錯誤檢測。該功能可保護關鍵數據,如傳感器讀數、控制輸出和中間算法變量,免受可能導致機器人感知、規劃和控制邏輯不一致的單比特錯誤。通過保持這些運行時數據的完整性,MCX的SRAM ECC有助于確保機器人在態勢感知和決策制定過程中的精準性和可靠性。MCX N還提供了高達32KB的ECC RAM,在VBAT模式下可保留數據,即便在低功耗狀態亦能確保關鍵信息的安全。
MBC通過采取內存保護策略提供額外的安全層。它可以阻止非法的內存訪問,有助于抑制可能的故障發生,并防止因故障導致機器人的行為不受控制。
最后,ERM支持基于數據驅動的機器人維護。它能夠記錄內存錯誤事件,實現機器人電子組件的健康狀態監測。糾正錯誤的頻率增加可能表明即將發生故障,機器人可得到主動維護。
應用場景示例
以在工業環境中工作的移動服務機器人為例。機器人必須自主導航,在執行任務時避開障礙物和人。
移動服務機器人
然而,工業環境可能具有挑戰性,設備會產生電磁干擾 (EMI)。這些干擾隨時間累積,可能會在機器人的內存中引發比特錯誤。
MCX的ECC將檢測并糾正由EMI引起的任何單比特錯誤,確保機器人正確執行其控制邏輯。面對更為嚴重的雙比特錯誤,MCX也能夠及時發現并阻止使用受損的數據,從而使機器人能夠安全地進入關斷狀態。
在這些事件中,MCX的ERM將記錄發生的錯誤。維護人員可以監測ERM日志,觀察任何潛在故障的跡象。通過主動維護機器人,可以最大限度地減少停機時間,同時提高安全性。
MCUXpresso開發人員體驗
恩智浦提供低成本的FRDM開發平臺,可使用MCX快速進行原型設計。FRDM開發板具有標準規格和接頭,便于連接MCU的輸入/輸出端口,并內置了MCU-Link調試器,帶有USB-C線纜。
恩智浦的GitHub還允許訪問應用示例,可以使用應用代碼中心門戶 (ACH)訪問這些示例。MCUXpresso IDE和MCUXpresso for VS Code內置了ACH瀏覽功能,開發人員可以輕松搜索可用的演示和示例,并在直接加載項目使用之前按設備、應用技術或外設/功能進行篩選。
擴展板中心 (EBH) 是NXP SDK Builder網站的擴展,開發人員可以在其中找到恩智浦及其合作伙伴提供的一系列附加板,以擴展所選評估板的功能。該中心提供直觀的篩選功能,可快速查找板和可用的支持軟件。開發人員可以將他們的板與不同類型的擴展板配對,以評估特定用例或應用程序并進行快速原型設計。
恩智浦賦能安全可靠的移動機器人
移動機器人自動化程度日益提高,確保其操作的可靠性和安全性變得尤為關鍵。如果忽視這一點,復雜的操作環境所引發的內存錯誤可能會導致機器人出現預期外的行為。
恩智浦的MCX系列微控制器具有糾錯功能,可滿足對可靠性有著嚴格要求的機器人。MCX系列不僅提供了ECC保護的閃存和SRAM,還包括了運行時內存訪問控制和錯誤事件的日志記錄,為內存錯誤構建了多重防護屏障。
對于致力于提升移動機器人可靠性和安全性的設計人員來說,恩智浦MCX值得考慮。恩智浦MCX具有先進的架構和全面的功能集,為開發可靠的自動機器人提供強大平臺。
本文作者
Altaf Hussain ,恩智浦半導體運輸與移動細分市場市場總監。Altaf在企業、服務提供商和工業應用的應用工程、產品營銷和業務開拓方面擁有30多年的經驗。他目前擔任恩智浦運輸與移動部門的負責人,該部門專注于移動機器人、機器視覺和倉庫物流自動化領域。Altaf致力于制定系統解決方案,幫助客戶借助自主移動機器人加速自動化進程。他擁有英國倫敦南岸大學的電氣與電子工程學士學位。
-
mcu
+關注
關注
146文章
17148瀏覽量
351197 -
NXP
+關注
關注
60文章
1278瀏覽量
184226 -
恩智浦
+關注
關注
14文章
5860瀏覽量
107461 -
移動機器人
+關注
關注
2文章
762瀏覽量
33572
原文標題:如何借助MCX系列MCU糾錯功能,打造可靠安全的移動機器人?
文章出處:【微信號:NXP客棧,微信公眾號:NXP客棧】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論