Electrical & Electronics
Bicycle Dynamo Phone Charger with Buck Converter and Load Measurements
Pedal-powered USB charging, with honest numbers for volts, amps and efficiency
- C (Arduino Uno firmware)
- Python (data logging and plots)
- Arduino Uno
- +3
Characterise PV panels and tune MPPT tracking with logged data, not guesswork
Mapped to your syllabusVTU 2022 Scheme (OBE/CBCS) · BEE685 Major Project Phase-I · Semester 6Solar MPPT Charge Controller Test Bench is a laboratory instrument our EEE batch built to do two jobs that commercial products keep hidden: trace a photovoltaic panel's I-V and P-V curves, and measure how well a maximum-power-point-tracking (MPPT) algorithm actually tracks that curve as sunlight, temperature and load change.
The bench is a buck-converter-based charge controller around an Arduino Uno, with two INA219 sensors measuring panel voltage, current and power on both sides of the converter. The firmware implements perturb-and-observe (P&O) and incremental-conductance (INC) MPPT, logs every sample over USB serial, and a Python script converts the log into I-V curves, P-V curves, tracking-efficiency figures and duty-cycle traces. A resistive load bank and a small battery let us sweep operating points safely.
India's rooftop-solar capacity has grown rapidly under the MNRE push, and Karnataka ranks near the top in installed capacity — yet most college labs demonstrate MPPT only in slides. The few teaching kits that exist cost tens of thousands of rupees and are black boxes. Our bench costs roughly ₹5,500 in components, and every design choice — switching frequency, inductor size, sampling rate — is documented and defendable in the viva.
The build follows the VTU 2022 scheme's toolset: the converter is simulated first in Multisim/PSpice, the firmware is written in embedded C on the Arduino Uno (a tool the VTU profile names for EEE), and the curves are fitted and compared in MATLAB/Scilab and Python.
Syllabus alignment
A solar charge controller that claims MPPT gives the user no evidence. In a college laboratory this creates two problems. First, students learn maximum power point tracking only as equations, because there is no affordable instrument that shows a panel's actual I-V curve and the controller's tracking behaviour on it. Second, even where a college owns a commercial controller, its firmware is proprietary: duty-cycle decisions, sampling rates and stability under fast irradiance changes cannot be inspected, so no measurement-based comparison of P&O versus incremental conductance is possible at teaching level.
There is a need for an open, logged, low-cost MPPT test bench — a buck converter with panel-side and load-side power sensing, selectable tracking algorithms, and a host-side analysis pipeline — that a four-member B.Tech team can build for under ₹6,000, calibrate against standard instruments, and use to produce quantitative I-V curves and tracking-efficiency results that an examiner can verify step by step.
This project builds an open, instrumented test bench for solar charge controllers. It traces a PV panel's I-V and P-V characteristics under real sunlight, runs two classic MPPT algorithms (perturb-and-observe and incremental conductance) on a buck converter, and quantifies tracking efficiency, converter efficiency and transient response from logged data. The deliverables are the working bench, firmware with selectable algorithms, a Python analysis pipeline, and a calibration report that compares our measurements with a reference multimeter and states the uncertainty.
Grid-connected rooftop solar in India is now measured in tens of gigawatts, and Karnataka consistently ranks among the top states. Charge controllers with MPPT are standard in these installations, but in a college lab the technology is usually a sealed box: students see terminals in and terminals out, never the tracking decision itself. Our bench opens that box. It is deliberately built from parts any Indian electronics market (Bengaluru's SP Road, for us) stocks: a 50 W panel, an IRF3205 buck stage, INA219 sensors, and an Arduino Uno.
In scope
Out of scope
We follow the V-model, which mirrors the two-phase VTU structure: every design phase has a matching verification phase, which is exactly what Phase-I (BEE685) planning promises and Phase-II (BEE786) must demonstrate.
| Phase | Weeks | Activities | Verification |
|---|---|---|---|
| Literature survey | 1–2 | MPPT algorithms, converter design, I-V tracing methods; shortlist topology | Survey report and problem statement (Phase-I deliverable) |
| Requirements | 3 | Freeze specifications: 50 W, 31 kHz, accuracy targets, logging rate | Reviewed requirement list |
| Simulation design | 4–5 | Multisim/PSpice buck model; sweep L and C; check ripple and switch stress | Simulated waveforms meet spec |
| Power-stage build | 6–7 | Assemble converter, gate drive, sensors; thermal checks | Open-loop operation at full power |
| Firmware | 8–9 | PWM, INA219 driver, P&O, INC, safety cut-offs, serial protocol | Tests with bench supply and resistors |
| Integration | 10 | Mount, wiring, load bank, panel connection | Day-long soak test in sun |
| Calibration and experiments | 11–12 | Sensor calibration, I-V sweeps, paired algorithm runs | Repeatability within stated uncertainty |
| Analysis and documentation | 13–14 | MATLAB/Scilab curve fits, efficiency tables, report and PPT | Internal review against each objective |
Test plan: (1) unit tests — sensor accuracy versus the reference multimeter at five points; (2) integration tests — converter efficiency at 25/50/75/100 per cent load; (3) functional tests — MPPT convergence after a shadow step-change; (4) endurance test — a full-day run to expose thermal drift. Every case is recorded with input, expected, actual and status in the Phase-II report, and each objective above maps to at least one test case.
The bench is a three-layer instrumentation system: a power layer (panel, converter, load), a measurement-and-control layer (INA219 sensors, Arduino Uno, gate driver), and an analysis layer (Python/MATLAB on a laptop).
flowchart TD
PV["PV panel 12 V 50 W on tiltable mount"] --> S1["Input sensor INA219 No. 1"]
S1 --> BUCK["Buck power stage: IRF3205 MOSFET + 1N5822 diode + 100 uH inductor"]
BUCK --> S2["Output sensor INA219 No. 2"]
S2 --> LOAD["Sink: 12 V 7 Ah battery + stepped resistor load bank"]
UNO["Arduino Uno firmware: P&O and INC MPPT, 31 kHz PWM, safety cut-offs"] -->|"gate pulses via IR2104"| BUCK
S1 -->|I2C bus| UNO
S2 -->|I2C bus| UNO
UNO -->|"USB serial at 115200 baud"| PC["Laptop: Python logger writes CSV"]
PC --> AN["Analysis: I-V and P-V curves, tracking efficiency, MATLAB/Scilab fits"]Power layer. The panel feeds a nonsynchronous buck stage. The IRF3205 is driven by an IR2104 so the high-side switch gets a proper gate swing; the Schottky diode and 100 µH inductor were chosen from simulation for 31 kHz operation with under 5 per cent current ripple. The load bank (parallel power resistors, 0.5–5 Ω steps) drags the operating point across the I-V curve; the battery provides a realistic near-constant-voltage sink for MPPT runs.
Measurement and control layer. Two INA219 breakout boards sit at the input and the output. They report bus voltage, shunt current and computed power over I2C — exactly the data needed for converter efficiency. The Uno runs a fixed 10 ms control tick: read sensors, run the selected MPPT algorithm, update the PWM duty, stream one CSV line. Safety cut-offs force the PWM to zero on over-current, bus over-voltage, or panel under-voltage at dusk.
Analysis layer. The Python script timestamps, filters and stores each run, then produces the traced I-V/P-V curves with the single-diode model fitted in MATLAB/Scilab, tracking-efficiency figures per algorithm, and duty-cycle traces that show P&O's characteristic three-point oscillation against INC's steadier behaviour near the MPP.
flowchart LR
A["Start sweep"] --> B["Set duty toward heavy load"]
B --> C["Step load / duty upward"]
C --> D["Log V, I, P after 200 ms settle"]
D --> E{"Near open-circuit?"}
E -->|No| C
E -->|Yes| F["Fit single-diode model and save curve"]The second diagram is the I-V tracing routine — the same sweep the viva demo runs live.
Module 01
Designs and builds the buck converter: component selection from the Multisim sweeps, sourcing the MOSFET, gate driver, diode and inductor from SP Road, soldering on perfboard, thermal checks of diode and inductor at full load, and the stepped resistor load bank with a rotary selector.
Module 02
Mounts the two INA219 boards and wires the I2C bus, then owns the calibration procedure: five-point comparison against the reference multimeter, shunt-value verification, offset nulling, and the uncertainty table that every measured result in the report quotes.
Module 03
Writes the Arduino embedded C: 31 kHz PWM setup, INA219 driver, the 10 ms control loop, perturb-and-observe and incremental-conductance implementations in fixed-point arithmetic, run-time algorithm switch, and latching protective cut-offs with a fault indicator.
Module 04
Builds the Python serial logger writing timestamped CSV runs, the MATLAB/Scilab single-diode curve fitting, and the comparison outputs: I-V and P-V plots, tracking-efficiency tables, converter-efficiency curves, and the P&O versus INC duty-cycle trace figures.
Module 05
Panel mount with tilt adjustment, fused battery leads, insulated enclosure with ventilation, clear labelling, and the safe-work checklist for outdoor testing: no mains anywhere, fuse on every battery positive, and a two-person rule for moving the panel.
Module 06
Phase-I survey and problem statement, Phase-II report chapters, test-case tables, the BOM with indicative prices, and a five-minute demo script that traces a live I-V curve during the viva without touching a keyboard.
Slide 1
Solar MPPT Charge Controller Test Bench
Slide 2
Motivation
Slide 3
Problem Statement
Slide 4
Objectives
Slide 5
System Architecture
Slide 6
Design Highlights
Slide 7
I-V Curve Tracing
Slide 8
MPPT Algorithms Compared
Slide 9
Calibration & Uncertainty
Slide 10
Results
Slide 11
VTU Phase-wise Mapping
Slide 12
Conclusion & Future Scope
Bullets, speaker notes and the .pptx · ₹2,000
Read each answer, close it, and say it in your own words. Your viva will ask. Now you'll know.
A PV panel's output power depends on both irradiance and operating voltage, and the current-voltage curve has a single knee where power peaks — the maximum power point. Its position moves with sunlight and temperature, so a converter must continuously adjust the operating point. MPPT is the control loop that does this by varying the converter duty cycle so the panel keeps delivering near-maximum power instead of settling at a load-determined point.
Perturb-and-observe changes the duty cycle a fixed step, observes whether power rose or fell, and reverses direction on a fall — simple, but it oscillates around the maximum power point and loses a little energy. Incremental conductance compares instantaneous conductance I/V with the negative incremental conductance dI/dV; at the MPP they are equal, so it can hold still and reacts better when irradiance is changing. Our logged duty traces show exactly this behavioural difference.
Our 12 V panel's maximum-power-point voltage sits around 17-18 V in cool bright sun, and our sink is a 12 V battery bus, so we mostly need to step down — buck is the simplest, cheapest and most efficient topology for that ratio. A boost stage would suit panels whose MPP lies below the bus; we listed it as future scope so it can be compared on the same sensing hardware.
+12 more questions, with answers
Unlocks with the project · ₹2,000
Unlock for ₹2,000What to change before it goes anywhere near a submission. Skipping it is how the demo fails live.
Unlocks with the project · ₹2,000
Unlock for ₹2,000How to study it, adapt it and walk your examiner through it, step by step.
Unlocks with the project · ₹2,000
Unlock for ₹2,000OnlyProjects. (2026). Solar MPPT Charge Controller Test Bench with Logged I-V Curves: B.Tech / B.E. Electrical & Electronics project bundle [Educational resource]. https://onlyprojects.online/projects/btech-eee-solar-mppt-charge-controller-iv-curve-test-bench
Keep browsing
Same degree, same syllabus slot, different idea. Pick the one your guide will actually approve.
Electrical & Electronics
Pedal-powered USB charging, with honest numbers for volts, amps and efficiency
Electrical & Electronics
Catch the sags, swells and unbalance that trip lab feeders and colony pumps
Cyber Security
Flows, top talkers and scan indicators for the lab's own network — headers only, no blocking, full history
Mechanical Engineering
A human-powered spiked-roller dehusker for small coconut growers around Pollachi — designed, fabricated and tested for ₹ under 20,000
Aerospace / Aeronautical
Build a subsonic test tunnel on a student budget, then trace lift and drag on a 3D-printed NACA 0012 against theory
Agricultural Engineering
Irrigates vegetable beds by soil-moisture thresholds instead of habit, and proves every litre with a flow meter