top of page

⚡ MATLAB Simulation of ANN-Based MPPT for Solar PV–Battery Powered BLDC Motor ☀️🔋⚙️

Solar PV Boost Converter + Battery Bidirectional Converter + 24V BLDC Drive (Simulink)

ANN (Artificial Neural Network) based MPPT control for a solar PV + battery powered BLDC motor drive in MATLAB/Simulink. This model is designed for a 24V DC bus system, where the PV supplies the BLDC motor and also charges the battery, and the battery supports the motor when PV power becomes low.

ANN Based MPPT for Solar PV battery Powered BLDC Motor
₹6,393.00₹3,196.50
Buy Now

✅ BLDC Motor Specification (24V, 40W) ⚙️

In this simulation, we use a 24V, 40W BLDC motor specification taken from a standard manufacturer website. The main rated values are:

  • 🔋 Rated Voltage: 24 V

  • 🌀 Rated Speed: 3000 rpm

  • 🔧 Rated Torque: 0.125 N·m

  • ⚡ Rated Power: ≈ 39 W

  • 🔌 Rated Current: ≈ 2.5 A

  • 🚀 Peak Current: 7.5 A

  • 💪 Peak Torque: 0.375 N·m

  • ⚙️ Torque Constant: 0.05 N·m/A

  • 🧲 Line–Line Resistance: 1.35 Ω

  • 🧷 Line–Line Inductance: 0.93 mH

  • 🧾 Poles: 8 → Pole pairs = 4

  • 🧱 Inertia: 0.33 kg·cm²

🛠️ BLDC Block Parameter Setup

In the BLDC motor block:✅ Select Trapezoidal back-EMF✅ Use Compute from standard manufacturing specification✅ Enter resistance, inductance, torque constant, pole pairs, inertia✅ Click Compute block parameters and Apply to update the motor model

☀️ Solar PV Array Design (100W) 🌞

To supply a 40W motor reliably, we choose a PV array with higher rating:

  • 🔆 PV Array Power: 100 W

  • ⚡ Vmp (Voltage at MPP): 17 V

  • 🔌 Imp (Current at MPP): 2.941 A (single panel)

  • 🔁 Parallel Strings: 2➡️ Total current ≈ 5.88 A, total power ≈ 100 W

🔋 Battery Selection (12V, 100Ah) 🔌

  • Battery Voltage: 12 V

  • Capacity: 100 AhBattery is connected to the DC bus using a bidirectional DC–DC converter, supporting both:✅ Charging mode (PV surplus)✅ Discharging mode (PV deficit)

🔼 Converter Topology Used

This system uses two converters:

1️⃣ PV Side Boost Converter 🔼

  • Input: 17 V (PV)

  • Output: 24 V DC bus

  • Controlled by: ANN-based MPPT

2️⃣ Battery Side Bidirectional Converter 🔁

  • Input/Output: 12 V battery ↔ 24 V DC bus

  • Controlled by: DC bus voltage PI controller

📌 Inductor and capacitor values (L and C) are designed using standard converter equations based on:

  • Power rating (100W)

  • Input voltage (17V / 12V)

  • Output voltage (24V)

  • Switching frequency & ripple limits

🧠 ANN-Based MPPT Control for PV ☀️🤖

The ANN MPPT controller works like this:

✅ Inputs to ANN MPPT

  • 🌞 Irradiance

  • 🌡️ Temperature

✅ Output from ANN MPPT

  • 🎯 Reference PV voltage (Vref)

Control Flow

  1. ANN generates Vref based on irradiation & temperature

  2. Vref is compared with actual PV voltage (Vpv)

  3. Error is processed through a PI controller

  4. PI controller generates duty cycle (D)

  5. Duty cycle → PWM generator

  6. PWM pulse controls the IGBT of the boost converter➡️ So maximum power is extracted under all conditions ✅

🔁 Battery Converter Control (Voltage Regulation) 🔋

To maintain a stable DC bus:

  • DC bus reference voltage: 24 V

  • Measure actual DC bus voltage

  • Error → PI controller

  • PI → Duty cycle → PWM pulses

  • Pulses drive the two IGBTs of bidirectional converter

✅ This maintains DC bus at 24V continuously even when PV power varies.

⚡ Power Flow Logic (PV + Battery + BLDC) 🔋☀️

The system automatically manages power:

  • 🌞 When PV power > motor demand✅ Motor is supplied✅ Battery goes to charging mode

  • 🌥️ When PV power < motor demand✅ Battery goes to discharging mode✅ Battery supports motor along with PV

This ensures the BLDC motor runs continuously.

🧪 Simulation Setup (Test Conditions) 🧾

🌞 Irradiance Profile (changes every 1 sec)

  • 1000 → 600 → 400 → 600 W/m² (example pattern)

🔧 Motor Torque

  • Constant load torque: 0.125 N·m (rated)

Scopes Observed 📊

  • PV voltage, current, power

  • Battery current, power, SoC

  • DC bus voltage

  • Motor speed, torque

  • Stator current

  • Back-EMF waveform

📈 Key Results & Discussion ✅

☀️ At 1000 W/m²

  • PV voltage ≈ 17 V

  • PV current ≈ 5.8 A (2 panels in parallel)

  • PV power ≈ 100 W

  • Battery current becomes negative (~ -2 A) ✅ (charging mode)

  • Battery SoC increases slightly from 50% to 50.006% 🔋📈

  • DC bus voltage maintained around 24 V ✅

  • Motor runs smoothly with stable speed 🌀

🌥️ When irradiance reduces (example: 600 W/m²)

  • PV power drops to around 60 W

  • Battery current shifts from negative to positive (~ +1 A) ✅

    • Meaning: battery starts discharging

  • Battery power changes from negative to positive

  • SoC starts reducing slightly 🔋📉

  • Still DC bus remains 24 V, motor continues running ✅

📌 Important note:

  • Negative battery power/current → charging

  • Positive battery power/current → discharging

✅ Conclusion 🎯

This MATLAB/Simulink model clearly shows:

✅ ANN MPPT extracts maximum PV power under varying irradiation/temperature✅ Battery bidirectional converter maintains DC bus at 24V✅ Battery automatically charges/discharges based on PV availability✅ BLDC motor runs continuously with stable speed and torque

Comments


bottom of page