Thursday, 8 May 2014

Arduino Uno Shield Boost MPPT Cost

So, how much it cost exactly my home-made Arduino Uno shield for Boost MPPT charger? Have I reached my original goal to create the el-cheapo version of Genasun boost MPPT lithium charger?

If I didn't account for:

  • Hundreds of hours spending time in this project (I'm a slow learner),
  • Buying an awesome picoscope USB oscilloscope (to find out what was wrong with my boost converter due to my lack of knowledge),
  • PCB making infrastructure (solder, etching, etc etc).


Then the answer is absolutely yes! So far, components only cost me AUD65.80. If I were to get Genasun, that would cost me USD300!! Yes yes, it would financially much more beneficial if I were to buy the Genasun in the first place and not spending hundreds of hours and testing equipment... but... I learnt a lot from this project.

Breakdown of component cost as follow:


Total minimum purchase cost is shown above, as the minimum retail quantity was not one. I purchased them all from RS components.

There are components not shown in the cost table above (i.e. resistors and some diodes) because I've used my left-over components from my previous adventure. I ended up buying new Arduino Uno board, because I've blown up my original Uno freebie due to my own stupid mistake (literally, there was smoke coming out from the board after a 'POP'). So stupid, I won't share.

I can't share my board layout as it's riddled with problem, i.e. power jack is sitting on top of the USB connector, and the current sensing pad size is slightly wrong. I 'designed' the board using Microsoft Word, how silly is that?

Too bad, no one (that I can find in Google) has made buck/boost Arduino shield, nor boost only version that I can buy. So, until then, I'll be still using mine in the near future. 

Tuesday, 6 May 2014

Boost MPPT Charger Details (1)

So, meanwhile fresh in my mind, I'd better document how the software works. Following flow chart is the simplified version of my Boost MPPT charger Arduino Uno code:


Would I code this differently? Of course! But, the code as-is, works well. It has been tested with me trying to break it to find bugs. After various testing, this code has been fine tuned. For example, 5000 cycle times for the PWM. Too little, causing the MPPT tracking stuck in lower power, no idea why. Too large, not good for the speed of MPPT tracking. Plugging in and out battery meanwhile the sun is full shining was also tested (to make sure the code handles overvoltage, etc etc).

If I have more time, I would code using Arduino PWM in-built feature next time. I've just found out (after all of this), that I can change the PWM frequency. Heck, the more I spend time on this project, the more things I find can be improved.

What testings did I do? In brief:

Accuracy of MPPT tracking:
Very well, thank you very much. I did this by temporarily breaking the connection and reconnect the solar panel with another DC-DC converter. I noted down the power consumption of the input in-line power meter, immediately prior the converter becomes unstable, and compare this against my Arduino-Uno Boost MPPT charger input power consumption. Very close indeed. I should be honest, the test wasn't very scientific, as I only tested 2 points, i.e. at 30W and at 55W.

Efficiency of the charger:
as noted before, at least 87%. But, this is only true for power consumption above 17-ish Watt. Below this, the efficiency drops significantly (due to various reasons beyond the scope of today's blog :) ). At 3W, it's only 40% efficient. Note though, I need to repeat this efficiency test to get more accurate results. As the input power figure does jump around +/-1W due to the Perturb and Observe algorithm. I need to slow down the MPPT tracking to get the efficiency figure correctly. Why jumping around that much? Well, see next point.

Resolution of the MPPT tracking:
In theory, at 17V input, with 270uH, and 1us resolution of the 'onTime', I only can increase or decrease panel current by 63mA at a time (+/- 1W at 17V). Calculation as follow:


As stated in previous point, in practice, the input power does jump around +/- 1W at 17-ish panel voltage. Nice to see practice and theory agrees with each other.

Thursday, 1 May 2014

Mengisi Batere Sepeda Listrik dengan Tenaga Surya

Setelah tes lebih lanjut, sepeda listrik sang penulis sekarang bisa langsung di-isi dari panel surya, dengan rangkaian penjejak titik daya maksimum (atau MPPT ingglisnya). Spesifikasi:

Panel surya: 12V 80W (20.7V tegangan tanpa beban)
Pengisi batere: bikinan sang penulis sendiri (lihat artikel sebelumnya)
Batere sepeda: 36V 11.6Ah Lithium (NMC dari Panasonic)
Sepeda listrik: Hasil konversi.

Dengan rangkaian penjejak titik daya maksimum, sang penulis sekarang bisa lega karena tenaga panel surya diperes semaksimal mungkin. Sayang dong, kalau tenaga listrik yang dihasilkan tak terpakai secara maksimum?

Alhasil:



Rangkaian pengisi batere bisa menaikkan tegangan panel surya yang lebih rendah dibanding tegangan beban (batere).

Setelah coba-coba, ternyata kalau panel surya diposisikan ke arah matahari, bedanya lumayan banyak. Contoh, jam 9 pagi, surya panel diposisikan menghadap langsung ke matahari, dayanya naik ke sekitar 60 Watt, dibanding 35 Watt kalau menghadap ke atas (posisi matahari siang bolong). Ya, masalahnya, siapa yang sempet merubah panel surya seharian?