Does this project spark your interest?

Become a member to follow this project and don't miss any updates

Solar Energy Generator

A solar energy system up to 500W in power for use with lithium batteries.

Similar projects worth following

This project was created on 07/20/2014 and last updated a month ago.

This platform is designed to be used as a power supply for systems that do not have access to grid power or for taking systems that are normally grid connected off of the grid. Currently it is in a development stage, and circuit blocks have been constructed separately for to make development and testing more manageable.

Some Target applications include:
- LED street lights and security lights
- Weather and sensor stations
- Radio relays and mesh network nodes
- Security cameras and sensors
- Power for sailboats and cabins

General Features:
- Supports panels in series or parallel combinations up to 500W.
- Compact size of 120x120x45mm.
- Dual phase converter allows for currents up to 16A, input FETs and internal rails tolerate input voltages up to 50V.
- Maximum Power point tracking across all temperature and insolation conditions maximizes energy output.

Link to the full System Design Document can be found here:

The solar energy generator has a buck boost topology DC-DC converter that can either step up or step down the output voltage from the input voltage, which allows the system to operate at the panels peak efficiency known as the maximum power point. The maximum power point is tracked using a current and voltage sensor by periodically changing the input to output voltage relationship of the DC-DC converter and measuring the corresponding changes in output power the sensors. In addition to implementing Maximum Power Point Tracking, the buck boost topology allows the battery operating voltage range to be either higher, lower, or both relative to the panel input voltage depending on the solar panels used. When configured properly it can be used to harness the energy of panels up to 500W in capacity. Batteries capacities can be anywhere from 100 watt hours to a few kilo-watt hours in capacity, and the initial target battery chemistry is lithium iron phosphate due to its high cycle life and increased safety over traditional lithium cells. Other chemistries such as lead acid will also be supported in the future. The generator is composed of the following circuit blocks: a two phase buck boost DC-DC converter, a battery current sensor, a load current sensor, a battery voltage sensor, gate drivers for the converter, a C2000 micro controller, 12V, 5V, 3.3V and 1.8V rails, and a load switch.

A load switch is critical to protecting the battery from over discharge and short circuit. The load switch opens and disconnects the load if either of these conditions should occur. Currently, this portion of the system is not fully defined and may be implemented either with relays or MOSFETs as the switch. Each of the two load switches should be able to handle at least 10A, and more may potentially be added externally.

A Texas Instruments C2000 TMS320F28035 has been selected for the final design of the project, but in the prototyping stage a TMS320F28027 is being used as it is available in a pre made "launchpad" platform from TI, which includes the necessary debugging and programming interface as well as 5V and 3.3V supplies. The C2000 microcontroller was selected because it has many features designed for digital power applications, and configuring it to drive the buck boost converter is not only easy, but powerful, allowing multiple converters to be driven in a phase relationship, and allowing for fast shut down of the converter stage in the event of a dangerous transient event. In the final single-PCB solution, a buck converter will be connected to both the panel input and the battery via a diode or, which will source power from the higher of the two voltages. This 5V rail will then supply power for a 12V rail (boost) for the FET gate drivers and the 3.3V and 1.8V rails for the micro, sensor circuits, display, and various other circuits.

Finally, the converter will include a simple character display, buttons and an encoder wheel to configures various system settings such as battery float voltage, power limiting, a load shutdown timer, display system power output, and allow for future information and configuration features. I selected an OLED display from Adafruit for its high contrast and bold appearance.

In the current stage of development the separate sensor boards, power stage board and the C2000 development board are all connected to each other in a manner very similar to the configuration of the final completed PCB. Some features are not currently available such as the load switches and the supply rails. Much of the last two months of development has been teaching myself to code for the C2000 platforms. The next stages of development will include finalizing the proof of concept with separate interconnected PCBs, finishing work on the final PCB, measuring the performance of the prototype with instruments and searching for possible improvements, and creating in depth documentation of the project. 

Link to the full System Design Document can be...

Read more »

  • 1 × TI TMS320F28035 Microprocessors, Microcontrollers, DSPs / Microcontrollers (MCUs)
  • 2 × Coilcraft VER2923 Inductors, Chokes, Coils and Magnetics / Fixed Inductors, Chokes and Coils
  • 4 × IRF IRS21867 Low and High Side Gate Driver IC
  • 3 × Allegro ACS722 Hall Effect Current Sensor
  • 2 × TI OPA2317 Precision, Low Offset Op-Amp, for Voltage Sensing
  • 2 × Omron G5LE PCB Power Relay
  • 1 × TI TPS54360 Buck Regulator IC, for 5V Rail
  • 1 × TI LMR62014 Boos Regulator IC, for 12V Rail
  • 2 × TI TPS62260 Buck Regulator for 1.8V and 3.3V Rail
  • 1 × TI ULN2003 Darlington Transistor array, for relay coil drive

See all components

Project logs
  • I Blinked an LED today

    a month ago • 0 comments

    Which Personally, I consider a significant accomplishment. It has been awhile since I wrestled with configuring the compiler for a specific device and It took some doing to get my projects working with the new device. I am more of a hardware person, can you tell?

  • Communication Success!

    a month ago • 0 comments

    After fixing some pullup/pull down and properly connecting the JTAG programming wires, I have successfull gotten code composer to talk to this new micro, so the next step be to port my code over to the new micro (Now the C2000 TMS320F28035, Previously the TMS320F28027 for the prototype). I will probably start with a blinking LED "hello world" and then start trying to get the micro to read from the sensors and switch the FETs.

  • Finally Testing the new Board

    a month ago • 0 comments

    After assembling one of the three boards I had fabricated, I have finally gotten a chance to start testing. A new job and move process has put a lot of my side projects on hold and I am finally getting the chance to return to this project. The first step was to verify that the 1.8, 3.3, 5 and 12V rails were working properly. I made a silly mistake with the 12V boost converter: I entered the schematic as if it was a buck. It was an easy enough rework to do with a piece of kapton and some wires. I also made the easy mistake of getting the wrong IC package for the TPS54360 that I am using for the 5V buck converter. After I got all the rails up and working I moved on to connecting them to their respective loads and discovered a lovely dead short on the 3.3V rail (on the digital side). The 3.3V supply powers two rails - an analog and a digital one. Each is isolated from the other via a Pi filter, which is a kind of cap-ferrite-cap arrangement designed to prevent noise created by pulsating digital currents from the micro from propagating into the analog instrumentation circuits. It was the digital rail that appeared to be shorted, and after removing the micro this proved to be the case. After thoroughly inspecting this rail there are no visible mistakes in the layout files, and since most of these traces are in one of the midlayers I can only assume that they became shorted because I got too close to a manufacturing tolerance. In any case it was easy enough to rework, and the next steps will be to start getting code on the micro and get the buck stages up and running. From there I will be tweaking the voltage and current measurement circuits (they probably need a low pass with a steeper roll off) and trying to write a basic 3 stage battery charging algorithm.

View all 14 project logs


Tachyon wrote 4 months ago null point
This looks awesome and I can't wait for it to reach completion. I'll be following along eagerly.

One comment/ request. Given the example use cases as well as my personal experience, I'd like to request support for NiFe batteries as they are THE most bullet proof, long lasting( in the usable lifetime sense) battery chemistry around.

Are you sure? [yes] / [no]

matt venn wrote 4 months ago null point
Hey well done for getting to the finals!
I'm interested in the dc/dc topology. Do the fets work as diodes too? I suppose that must be more efficient. I've always used a driver before - is the TI device you're using specially adapted for this?

Are you sure? [yes] / [no]

Nathaniel VerLee wrote 4 months ago null point
Eh the Fets will sort of behave as diodes - will get to that in a moment. This is a "Buck-Boost" topology, a term which actually, confusingly, can refer to two different topologies, one of which results in a negative output voltage, and the other which is basically a traditional buck on one side of the inductor and a boost on the other side. My system is using the latter. Only one of the two (The buck or the boost) is actually working at a time, depending on if the battery voltage is lower or higher than the panel voltage. I have been developing my software with just the buck phase running - the boost basically sits there and runs at 99% duty cycle, with the high side FET on almost all the time. The only reason to shut that high side FET on the boost is to replenish the capacitor that drives that high side FET - this is known as a "bootstrap gate drive". That being said, the TI micro can respond really quickly to a negative current flowing back into the panel, so that high side boost FET is able to block backflow current into the panel when the micro is configured to do so. This is important because the high side buck FET WONT BLOCK BACKFLOW - there is a body diode that would allow current to flow from the battery to the panel if the panel voltage was really low. Hope that give you some insight, and yes, this TI micro is really meant for digital power control and has a lot of features to support it. Unfortunately it also draws a lot of power itself, like a whole 0.25W. Hope they make a less power hungry version of it someday.

Are you sure? [yes] / [no]

Nathaniel VerLee wrote 4 months ago null point
* I said only reason to shut high side FET on, meant off.

Are you sure? [yes] / [no]

matt venn wrote 4 months ago null point
thanks for that!

Are you sure? [yes] / [no]

Narasing wrote 4 months ago null point
Fantastic work Nathaniel! All the best and hope you win grand prize.Would you please the budget required to undertake something like this?

Are you sure? [yes] / [no]

Nathaniel VerLee wrote 4 months ago null point
Thank you Narasing! cost is one of the aspects of the project I have not yet seriously focused on. if I were to name a price for the populated board itself I would guess around $100-200. the batteries and panel also contribute a lot to the cost of the total system. you could easily spend $500-700 on the whole deal. I am hoping to take a look at cost reduction of the board itself in the distant future, but panel and battery prices are out of my control :)

Are you sure? [yes] / [no]

Nathaniel VerLee wrote 5 months ago null point
Thank you Bobnova! And thanks to all my other followers! I have been selected as a semi finalist, very exciting! Can't wait to post more details as this project moves forward.

Are you sure? [yes] / [no]

Bobnova wrote 6 months ago null point
This looks amazing. I want one.

Are you sure? [yes] / [no]

Similar projects