Explore chapters and articles related to this topic
Bootloader Design for Advanced Driver Assistance System
Published in P. Sivakumar, B. Vinoth Kumar, R. S. Sandhya Devi, Software Engineering for Automotive Systems, 2022
R. S. Sandhya Devi, B. Vinoth Kumar, P. Sivakumar, A. Neeraja Lakshmi, R. Tripathy
Bootloader is the software algorithm which is performed during device boot. Host of functionalities are provided by automotive ECUs (control units). Such technologies and functionalities have become highly sophisticated and complex. To the automotive original equipment manufacturers (OEMs) and suppliers, it has become crucial to ensure that these software-driven control units are still working in a secure and productive environment. This will only be done if the ECUs have the current and patched version of the software and security updates inside the car. Hence, the framework developed and ported on the MCU platform will also be modified very regularly, either from a remote location or at the service station. This task of initiating the ECU software upgrade was assigned to the bootloader program, which occupies the ECU ROM.
Transmission Line Protection Using High-Speed Decision Tree and Artificial Neural Network: A Hardware Co-simulation Approach
Published in Electric Power Components and Systems, 2022
Amr Ahmed Fayyad, Amal Farouk Abdel-Gawad, Ahmed Mahmoud Alenany, Saber Mohamed Saleh
The proposed system assumes three modules based on wavelet transform, backpropagation ANN (BPANN) and DT that classifies all ten types of the faults, recognizes fault zone as well as estimates the location of faults. All modules are simulated in Simulink running on a host PC. Each module is integrated simultaneously with a cost-effective, accurate, fast, reliable, and flexible Arduino Microchip ATmega328P microcontroller for interesting co-simulation Figure 10. Arduino is a high-performance prototyping platform for open-source electronics built on easy-to-use modular hardware and software that costs a few dollars. This is what stimulated its use for the integration with MATLAB/Simulink proposed models. The Arduino board operates at 1.8 V to 5.5 V, it has an ATmega328P microcontroller reducing power consumption, 32 KB of flash memory for storing programs (with 0.5 KB used for the bootloader), 2 KB of SRAM, 1 KB of EEPROM for storing parameters, a 16 MHz crystal oscillator allows faster program execution (i.e. at the realization time taken to toggle a digital output pin and provide the relay output in real-time is around 200 nanoseconds), a USB connector, 14 digital input/output pins of which 6 can be used as PWM outputs, 6 analog I/O pins, ATmega16U2 USB-to-TTL Serial chip, and RX and TX LEDs (flashes when data is being transmitted). Arduino is programmed with the Arduino software IDE (Integrated Development Environment) and interfaced with MATLAB-by-MATLAB Support Package software for Arduino and a type B USB cable.