Low-Voltage MPPT Design

Low-Voltage MPPT Design

Status

In progress

Contributors

@Aleena Khatum @Erika Feller

Approver

[Not Completed]

Due date

End of Fall Semester

On this page


 Problem statement


Power Gen is tasked with designing a low-voltage MPPT (20V input and 48V output) including the sensors, boost converter, and PSOM communication.

 Purpose


Create a project for new members that lets them learn about MPPT design in a safer context as they get onboarded onto power generation, prior to contributing to the HV MPPT.

 Solution hypothesis


The solution is successful if we have a working boost converter that can successfully boost from 20V to 48V.

Power Electronics Notes (w/ Professor Bryan Johnson)

 


Timeline

Fall 2025

 

09/20

09/27

10/04

10/11

10/18

10/25

11/01

11/08

11/15

11/22

11/29

 

09/20

09/27

10/04

10/11

10/18

10/25

11/01

11/08

11/15

11/22

11/29

Not started

Test ADC Breakout /

LEARN

 

 

 

 

 

 

 

 

 

 

 

NOT STARTED

Redesign ADC Breakout Schematic and submit for revision

/ LEARN

 

 

 

 

 

 

 

 

 

 

 

NOT STARTED

Complete ADC Breakout Schematic Revisions (week of 09/27) Do layout on 10/11

/ LEARN

 

 

 

Aim for here

 

 

 

 

 

 

 

NOT STARTED

Print ADC Breakout Low / Schematic Design Boost Converter + Revisions

 

 

 

 

 

 

 

 

 

 

 

Not STARTED Layout Boost Converter + Revisions

 

 

 

 

 

 

 

 

 

 

 

NOT STARTED

Prof. Johnson Revisions /Write Software

 

 

 

 

 

 

 

 

 

Aim for here

 

NOT STARTED

Print Boost Board

 

 

 

 

 

 

 

 

 

 

 

FIX EVERYTHING BELOW THIS TEXT ITS NOT ACCURATE RIGHT NOW FALL 2025


Decision 1

  1. Option 1 - Measuring current though a shunt resistor

Current Sensing Options:

 

Option 1 - Shunt Resistor

Option 2 - Magnetic Field of Wire

 

Option 1 - Shunt Resistor

Option 2 - Magnetic Field of Wire

Overview

Current Sense Amplifier or Isolated Modulators/ADC

Hall-Effect Current Sensing

Screenshot

image-20240907-165605.png
image-20240907-183949.png

Pros and cons

Accuracy

Simplicity and cost

Affected by electric noise

Power loss and voltage drop

Electric isolation and no power loss

Measures both AC and DC current

Affected by magnetic noise and temperature

Zero-drift problems

Option 1: Current Sensing With Shunt Resistor

Amperes Board Diagrams-Figure 1.drawio.svg

Figure 1 is a common method to measure current using a shunt-resistor. There are 3 steps to read the current:

  1. The differential voltage is fed into the Current Sense Amplifier and converted to a single-ended signal.

  2. This single-ended signal is connected to an ADC, digitizing the signal.

  3. The signal is sent to a microcontroller for processing.


Decision 2

  1. Option 2 - Sensing using an external ADC

 

Option 1: Internal ADC

Option 2: External Digital ADC

 

Option 1: Internal ADC

Option 2: External Digital ADC

Overview

Nucleo Integrated ADC

 

Visual

 

image-20241019-205308.png
ADC with 10 channels that supports multiple trigger inputs

 

 

Pros and Cons

Built in calibration

12-bit ADC with up to 16-bit hardware oversampling

SNR in the Nucleo is 68 db

Digital signal sent from MPPT to SOM (reduces noise)

Flexible bit-count up to our discretion (up to 24 bits)

Cost is higher (Additional part external to existing chip)

Noise: In a high precision sensor, the resistance and capacitance in an I2C wire would harm the accuracy of the reading, especially if the system moves to SOM. Additionally the boost converter contains an inductor, and there will likely be motors nearby in the car which can cause additional noise. Given the push for SOM in all systems, using an ADC on the MPPT may be the best way to maintain accuracy, and reduce strain on the eventual centralized controller. 


Decision 3

  1. Option 3 - Selecting ADC

 

Option 1: 2x 2 Channel ADC

Option 2: 1x 4 Channel ADC

Option 3: 2x2 Channel ADC

Option 4: 1x4 Channel ADC

 

Option 1: 2x 2 Channel ADC

Option 2: 1x 4 Channel ADC

Option 3: 2x2 Channel ADC

Option 4: 1x4 Channel ADC

Overview

MCP3427 2-channel, 15-SPS, 16 Bit Delta-Sigma ADC With I2C Interface

ADS1219 4-Channel, 1-kSPS, 24-Bit, Delta-Sigma ADC With I2C Interface

ADS7142-Q1 Automotive, 2-Channel, 12-Bit, 140-kSPS, I2C-Compatible ADC With Programmable Threshold and Host Wake-Up Features

ADS131M04-Q1 Automotive, 4-Channel, 64-kSPS, Simultaneous-Sampling, 24-Bit,

Delta-Sigma ADC

Visual

 

image-20241026-170851.png

 

 

image-20241026-153756.png

 

 

image-20241026-201401.png

 

 

image-20241102-192309.png

 

Pros and Cons

I2C interface and a high resolution (16 bit)

Built in amplifier if needed

Would need separate one for current and voltage

Single chip that could read all currents and voltages

High resolution

Less frequent measurements

12 bit resolution

FIFO

Designed for sensor monitoring

Efficient host sleep and wake-up

Would need separate one for current and voltage

24 bit resolution

Simultaneous Sampling

Single chip that could read all currents and voltages

Communication Protocol

I2C

I2C

I2C

SPI

Sampling Frequency

15 (16-bit mode), 60 (14-bit mode), or

240 (12-bit mode) samples per second

Up to 1000 samples per second

(250 samples per second for each sensor)

Up to 140 ksps

Up to 64-kSPS

Resolution

12 bit, 14 bit, and 16 bit

24 bit (20 bit regularly)

12 bit

24 bit

Speed/Latency

Standard - 100 kbps

fast - 400 kbps

high-speed - 3.4 Mbps

Up to 1Mbps

Up to 3.4 Mbps

Up to 8.192 Mbps

Power Voltage Range

2.7 to 5.5

-0.3v to 7v

-0.3 v to 3.9 v

-0.3 v to 3.9 v

Analog Input Voltage Range

VSS-0.3v to VDD+0.3v

0v to VDD+0.3v

0v to VDD

AGND-1.6 to AVDD+0.3

Cost

 

image-20241026-165518.png

 

 

image-20241026-163627.png

 

 

image-20241026-202859.png

 

 

image-20241102-193855.png

 

Quantity Needed

2

1

2

1

Decision

Rejected

Rejected

Rejected

Selected


DIARY RAHHHH!!

10/26/2024

Reasoning for 4 channel ADC (ADS1219):

This ADC would give us a very high precision measurement, possibly higher than we need for our application. It would be able to operate regularly with a 20-bit resolution. It would be able to read each value at 1/4 the speed of the nucleo clock since it would need to read both of the voltages and both of the currents one at a time. It has an I2C output which would be easy to read with the nucleo, with some noise concerns because I2C is non-differential, however the distance between the nucleo and board is very small so that shouldn’t be a huge issue. The 4 channel ADC would be able to operate at up to 1000 samples per second, split between the 4 sensors we would be able to measure 250 samples per second for each sensor. A concern with this ADC is that the sensing would not be simultaneous, which may or may not be an issue.

Reasoning for 2 channel ADC (MCP3427):

The MCP3427 is documented to be a low noise and high accuracy ADC that outputs using the 2-wire I2C serial interface. We decided that having a minimum of a 12 bit resolution is necessary to collect precise data from the voltage and current sensors. This ADC has three different resolution settings (12-bit, 14-bit, 16-bit) which should fit our needs. Furthermore, we were considering having isolation within our current and voltage sensing system; however, this ADC lacks this feature, but we can utilize isolation within our Op-Amp which should be sufficient. In addition, we plan on having voltage and current sensors for both the array and battery which would require us to utilize 2 ADCs minimum. One for the voltage sensor and one for the current.

Reasoning for 2 channel ADC (ADS7142-Q1):

The ADS7142-Q1 is designed as a sensor monitoring ADC that can autonomously monitor signals. This ADC fits in our 12-bit resolution criteria that we created and has a sampling rate of 140 kSPS. This device also has a built-in programmable threshold and host wake-up feature which will alert the host when a high or low threshold is crossed to control when the data is being sampled. Additionally, when the ADC is operating in autonomous monitoring mode, the device uses a FIFO as an internal data buffer. One downside to these features is our lack of understanding which may complicate the programming process.  Overall, because we are planning on having two of each sensor, one for the array and one for the battery, we would need a minimum of two ADCs. 

Reasoning for 4 channel ADC (AD7991YRJZ-0500RL7)

This ADC has a high sampling speed (22kSps) and would be able to monitor all of the currents and voltages needed at 5.5kSps each. This chip is also fairly cost-effective at about $10 per chip. It is also a fairly simple design, and would not require much effort on the programming side to implement. The voltage range of the chip is compatible with our needs. It has a 12 bit resolution, which is fairly mediocre in the grand scheme of ADCs, however it should be good 'nuff for our purpose with a precision of about 0.02v.

10/31/2024

Reasoning for Increasing ADC resolution

We may need a much more precise ADC to sense the voltage than we thought. This is because when we use a voltage divider to "split" off part of the total voltage of the array we would measure a value proportional to that of the array. For example if the array is 80v and we could arrange the resistors to split off 5v which we multiply by 16 in the controller to get the value we want. Which works, but when we do that we lose a high degree of precision in our measurement because the 0.02 degree of precision we can achieve with a 12 bit ADC would only give that precision for the 5v we feed into that ADC, multiplied by 16 gives us a degree of precision of only 0.32 for the full 80 volts, which won't cut it for our application. I only realized this just now because I was finishing off my schematic and was selecting resistor values. I think it won't be very much effort to swap out the ADC in the schematic.

11/02/2024

Reasoning for Isolation DC/DC Module

In order to prevent any voltage spikes from the array from impacting the overall MPPT system we decided that the use of isolation in our OpAmps would be necessary. With this however, our OpAmps need a High-side and Low-side power, so in order to isolate the power supply we decided to implement an isolated DC/DC Module. In addition to this, we have to implement separate grounds for the high and low side of the OpAmp.

11/16/2024

Reasoning for Digital Isolator

We wanted to design our ADC breakout board to have isolation as a protective barrier between the nucleo and the volatile high side of the system. We originally did this by having isolation in our OpAmps, but there were inefficiencies in our design (click here for more details). We followed Champers' suggestion by having the ADC on the unsafe side of the isolation barrier and using the ISO7762 for the digital isolator to communicate with the Nucleo. We chose this component because it implements ON-OFF keying modulation which lowers propagation delays, is compatible with SPI communication protocol, and has the necessary 4 input and 2 output channels.


Review Request

ADC Breakout Board 

The purpose of the ADC Breakout Board is to act as a voltage and current sensor for both the array and battery as part of the overall MPPT system. In previous iterations of this board, the voltage and current sensors utilized a voltage follower OpAmp to act as a buffer as well as amplify the voltage and current readings, which were fed into the internal ADC of the Nucleo microcontroller. However, we decided that the internal ADC was not as precise as we needed it to be, so we opted for a 4-channel external ADC.

This board has two main elements: the OpAmps and external ADC. For the OpAmps, we are utilizing the AMC1400 and AMC1350. The AMC1400 datasheet specifies that its typical application is for current sensing, and the AMC1350 is typically utilized for voltage sensing: 

 

image-20241102-152207.png
AMC1400
image-20241102-152134.png
AMC1350

However, we have two designs for this board: one with RC filters and the other without. The documentation for the OpAmps specifies that the RC filter is utilized to improve signal-to-noise performance and mentions that “the input bias current does not generate a significant voltage drop across the DC impedance of the input filter”; however, we were wondering if we should be concerned about voltage drop across the components to which we should omit this element, or if this shouldn’t be a concern and implement the RC filter to filter out any unwanted noise. 

In addition, apart from the specified typical application, which aligns with our specific goal, these OpAmps are also isolated to prevent any unexpected voltage and current spikes from the array from impacting the overall system. 

Furthermore, for the external ADC, we are utilizing the ADS131M04-Q1.

 

image-20241102-153241.png
ADS131M04-Q1

The two main characteristics we focused on when searching for ADCs were the communication protocol, sampling rate, and precision. This ADC communicates using SPI with a sampling rate of 64 kSPS while supporting simultaneous sampling with all 4 inputs, and has a 24-bit precision, which should be sufficient for our goals. 

Questions:

For the ADC, the Analog and Digital grounds are the same. This was provided in the application circuit. Would it be better to have them as separate grounds to prevent any unintentional ground loops?

Should we include the RC filter with the op amps? The concern is that since we are using a voltage divider to take a portion of the input of 80V and use that scaled number for sensing, if the RC filter generates a slight voltage drop, the voltage drop may become significant when the sensed voltage is scaled.

Should we put the nominal 3.3V for the lowside that is going to the ADC? How would doing so affect the linear region of operation of the op amp?

What is the voltage range that we want to measure for? 114 V -> 350V? (more for us to decide)

 

Changes Made from V1 to V2

The biggest issue in V1 was the breaking of isolation through shared grounds, which I wasn’t sure how to fix before, and overlooked. Ishaan suggested an isolated DC-DC converter which would allow me to have a separate 5v power supply and GND for the two isolated sections of the board. I implemented this in the V2 design using part UCC12040DVE. Additionally, I added the Nucleo to the board and changed the screw terminals to banana clips. Then I made some changes to the labeling according to Lakshay’s suggestions, added test points to the analog inputs, and gave the capacitors values.

Changes Made from V2 to V2.1

After the second round of reviews on the ADC breakout board, Champers noticed an architectural error in our design. The AMC1400 and AMC1350 OpAmps utilize a delta-sigma modulator within the component which changes the analog signal into a digital signal to send the data across an isolation barrier and changes the signal back into an analog signal. This signal is turned back into a digital signal as we run it into an external ADC. This brings some inefficiencies in our design as there is a loss of accuracy every time you put a signal through an ADC. With this, we reverted our OpAmps to the original design that Matthew created and added an isolation barrier between the ADC and Nucleo. To do this we used the ISO7762 digital isolator compatible with SPI to isolate the system.


Communication Protocols Research

When choosing an ADC and op-amps, it is important the we reduce noise, by choosing communication protocols that will not detract from the signal and will work in our application. For one, using I2C is feasible because the ADC and op-amps will be connecting flush to the board, guaranteeing a short signal line.

Protocol

Operation

Protocol

Operation

I2C

Two Communication Lines:

  1. Data (SDA)

  2. Clock (SCL)

Avoids Signal Conflict: By allowing devices to either pull the line low or release it, devices know that another device is actively using the communication protocol if the line is ever low. This way, there is no threat of a device pulling up the line, since the device can’t be forced high by a device (it can only be pulled low).

Open-Drain Setup: Each device on the line has an “open-drain” or “open-collector” configuration. This means they can pull the line low, but they don’t actively drive it high. Instead, a pull-up resistor brings the line high when no device is pulling it low. This setup is important because:

Pull-Down of Line: If one device wants to communicate a "low," it pulls the line low.

Pull-Up Resistor: If no device pulls it low, the pull-up resistor brings it to a "high," indicating a high signal.

Single-Line Communication: Non-Differential

 

 


Diodes Research

Diode Type

Operation

Diode Type

Operation

 

 

 

 

 

PSOM Notes
No PSOM connection partly to simplify testing of dev board,
and also because the converter I will be using on the MPPT
operates at high frequency and would be potentially sensitive
to CAN latency on the order of nanoseconds. The converter must
be able to be directly controlled by an MCU so the ADC data will
also be processed on the board, and can be sent directly to a
leader SOM.