Fault Management in DC Microgrids: A Review of Challenges, Countermeasures, and Future Research Trends