Mobile robots are increasingly being used in a variety of applications, from industrial automation to service robots. Ensuring the safe and reliable operation of mobile robots is critical because they carry out more complex tasks and operate in an uncontrollable environment.
NXP's new generation of MCX series microcontrollers helps meet the challenges of robot safety. Based on the high-performance Arm® Cortex®-M33 core, MCX MCU has advanced error detection and correction functions, which is very suitable for the development of mobile robots with extremely high reliability and safety requirements.
Common reliability and safety issues of mobile robots
The electronic systems on mobile robots allow them to sense their surroundings, make intelligent decisions, and precisely control their movements. However, mobile robots may face multiple challenges while performing their tasks, such as extreme temperatures, vibrations, and electromagnetic interference. Over time, these stressors can cause errors and damage to the robot's memory. Given the long expected service life of mobile robots, ensuring the long-term reliability of electronic components is critical.
Industrial Robot Arm
Memory errors in mobile robots can cause a variety of reliability and safety issues. Bit flips in the robot's control firmware can also cause incorrect instructions to be executed, leading to unexpected behavior. Corrupted sensor data can lead to misinterpretations, causing the robot to make incorrect decisions. Motor control errors can cause the robot to make unplanned movements or cause damage to the robot or its surroundings.
In safety-critical applications, such as mobile robots operating around humans, such failures can have serious consequences. To ensure that the operation of mobile robots is safe and reliable, rigorous measures must be taken to avoid memory errors.
Leverage edge processing to enable real-time decision making and enhance autonomy. Learn about NXP solutions for mobile robotics.
MCX error correction function for flash and RAM
NXP MCX A series microcontrollers include several key features to detect and correct memory errors. The MCX A has up to 128KB of built-in Flash memory with error correction code (ECC) (MCX A Reference Manual, Section 4.5). The MCX N series has up to 2MB of Flash memory with ECC. Each 128-bit word of Flash memory contains an additional 9 bits of ECC data.
ECC refers to the technology of storing extra redundant bits next to each data word. Each time the data is read, the extra redundant bits will regenerate the ECC bits and compare them with the originally stored ECC to verify the integrity of the data. If the regenerated ECC bits do not match the stored ECC bits, it means there is an error, and ECC can correct the error. When a single bit error occurs, ECC can determine the specific bit that is in error. However, when a double bit error occurs, ECC can only detect it, not correct it.
Mobile Robot Example
If the microcontroller detects an ECC error, the system controller (SYSCON) module generates a bus fault or uses an interrupt to handle the error. Flexible fault handling allows developers to customize the handling method according to their specific application.
The MCX A also offers 32KB of on-chip SRAM, of which one 8KB block (RAMA0) has ECC functionality capable of single error correction and double error detection (SEC-DED - MCX A Reference Manual, Section 9.1.2). When configured for ECC, the MCX N series offers up to 416KB of RAM, of which 32KB of RAM can retain data without loss in VBAT mode. This feature protects critical runtime data such as sensor inputs and algorithm state variables. An Error Reporting Module (ERM) is implemented in the microcontroller to provide comprehensive error reporting and control capabilities. The ERM captures and logs error events from the ECC logic, providing a clear view for monitoring the health of the memory subsystem. Developers can use the error information for diagnostics and predictive maintenance.
The Error Injection Module (EIM) has the ability to inject errors when reading RAM with ECC function, which can realize self-diagnostics. This self-test function allows developers to perform periodic self-tests to ensure reliable operation of the microcontroller.
In addition to ECC, the MCX A Series includes a Memory Block Checker (MBC) that provides runtime security control for read, write, and execute permissions for different memory regions (MCX A Reference Manual, Section 45.1). By defining memory access policies, the MBC can prevent illegal memory accesses.
How MCX error correction technology improves robot reliability
MCX's multiple error correction features work together to improve the reliability and safety of mobile robots. By automatically correcting single-bit errors in flash memory, MCX maintains the integrity of the robot's control firmware. This integrity prevents the robot from executing erroneous control logic that could cause unintended behavior.
In addition, MCX has the ability to detect double-bit errors, which is critical to the safe operation and reliability of the robot. Although double-bit errors cannot be corrected, their detection mechanism helps prevent the use of potentially corrupted instructions or data. Once a double-bit error is detected, the robot can smoothly transition to a safe state, effectively avoiding possible danger or failure.
MCX's ECC extends its memory protection capabilities to SRAM beyond flash. The MCX A's 8KB RAMA0 SRAM block integrates ECC functionality, while the MCX N can reuse RAMG and RAMH storage blocks for ECC correction, providing up to 416KB of ECC RAM storage space. ECC RAM supports single-bit error correction and double-bit error detection for runtime data. This feature protects critical data, such as sensor readings, control outputs, and intermediate algorithm variables, from single-bit errors that can cause inconsistencies in the robot's perception, planning, and control logic. By maintaining the integrity of this runtime data, MCX's SRAM ECC helps ensure the robot's accuracy and reliability in situational awareness and decision-making. MCX N also offers up to 32KB of ECC RAM, which can retain data in VBAT mode, ensuring the safety of critical information even in low-power states.
MBC provides an extra layer of safety by adopting a memory protection strategy. It blocks illegal memory access, helps suppress possible malfunctions, and prevents malfunctions from causing uncontrolled robot behavior.
Finally, ERM supports data-driven robot maintenance. It can record memory error events and monitor the health of the robot's electronic components. An increase in the frequency of corrected errors may indicate an impending failure, and the robot can be proactively maintained.
Application scenario examples
Take, for example, a mobile service robot working in an industrial setting. The robot must navigate autonomously, avoiding obstacles and people while performing its tasks.
Expansion Board Mobile Service Robot
However, industrial environments can be challenging, with equipment generating electromagnetic interference (EMI) that accumulates over time and can cause bit errors in the robot’s memory.
MCX’s ECC will detect and correct any single-bit errors caused by EMI, ensuring the robot correctly executes its control logic. In the face of more serious double-bit errors, MCX will also be able to detect and prevent the use of damaged data in time, allowing the robot to safely enter a shutdown state.
During these events, the MCX’s ERM will record the error that occurred. Maintenance personnel can monitor the ERM log to watch for any signs of potential failure. By proactively maintaining the robot, downtime can be minimized while increasing safety.
MCUXpresso Developer Experience
NXP provides a low-cost FRDM development platform for rapid prototyping using MCX. The FRDM development board has a standard form factor and headers for easy connection to the MCU's input/output ports, and has a built-in MCU-Link debugger with a USB-C cable.
NXP’s GitHub also allows access to application examples, which can be accessed using the Application Code Center Portal (ACH). The ACH browsing feature is built into MCUXpresso IDE and MCUXpresso for VS Code, allowing developers to easily search for available demos and examples and filter by device, application technology or peripheral/function before directly loading a project for use.
The Expansion Board Hub (EBH) is an extension of the NXP SDK Builder website where developers can find a range of add-on boards from NXP and its partners to extend the functionality of their selected evaluation board. The hub offers intuitive filtering to quickly find boards and available supporting software. Developers can pair their boards with different types of expansion boards to evaluate specific use cases or applications and for rapid prototyping.
NXP enables safe and reliable mobile robots
As mobile robots become increasingly automated, it becomes critical to ensure their reliable and safe operation. If this is neglected, memory errors caused by complex operating environments may cause robots to behave in unexpected ways.
NXP's MCX series microcontrollers have error correction capabilities to meet the needs of robots with strict reliability requirements. The MCX series not only provides ECC-protected flash and SRAM, but also includes runtime memory access control and error event logging, building multiple protection barriers for memory errors.
For designers who are committed to improving the reliability and safety of mobile robots, the NXP MCX is worth considering. With its advanced architecture and comprehensive feature set, the NXP MCX provides a powerful platform for developing reliable autonomous robots.
Previous article:【TE Connectivity】 Wireless connectivity empowers the innovative future of next-generation service robots
Next article:Perfect replacement for TI INA240 series
Recommended ReadingLatest update time:2024-11-16 23:40
- Popular Resources
- Popular amplifiers
- Using IMU to enhance robot positioning: a fundamental technology for accurate navigation
- Researchers develop self-learning robot that can clean washbasins like humans
- Universal Robots launches UR AI Accelerator to inject new AI power into collaborative robots
- The first batch of national standards for embodied intelligence of humanoid robots were released: divided into 4 levels according to limb movement, upper limb operation, etc.
- New chapter in payload: Universal Robots’ new generation UR20 and UR30 have upgraded performance
- Humanoid robots drive the demand for frameless torque motors, and manufacturers are actively deploying
- MiR Launches New Fleet Management Software MiR Fleet Enterprise, Setting New Standards in Scalability and Cybersecurity for Autonomous Mobile Robots
- Nidec Drive Technology produces harmonic reducers for the first time in China, growing together with the Chinese robotics industry
- DC motor driver chip, low voltage, high current, single full-bridge driver - Ruimeng MS31211
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- EEWORLD University Hall----Live Replay: Renesas RA MCU family members grow rapidly, helping to build safe and stable industrial control systems
- MSP430F5529 library functions
- A seemingly reasonable PCB design, why does the step area on the board bubble after welding?
- MicroPython Hands-on (16) - Image display on the control board
- When debugging a program in KEIL5, why can't F10 and F11 go down when the program runs to WHILE(1)?
- How much interference do batteries cause to radio waves?
- [EETALk] What knowledge do I need to master as a Bluetooth engineer?
- Interconnecting automotive 48V and 12V rails in dual-battery systems
- Do I need to draw a system architecture diagram before designing a digital circuit using Verilog?
- The difference between new energy buses and passenger cars in terms of BMS structure