Modeling Photovoltaic Cells - LTspice model part 2/2

Поділитися
Вставка
  • Опубліковано 27 лис 2024

КОМЕНТАРІ • 48

  • @akosbuzogany2752
    @akosbuzogany2752 2 роки тому +11

    This lesson alone might be worth one's yearly Patreon contribution!

  • @yaghiyahbrenner8902
    @yaghiyahbrenner8902 2 роки тому +2

    beautiful - I learned so much more about pv modeling in LT spice but about LT spice usage at the same time, thank you so much!

  • @timng9104
    @timng9104 2 роки тому +1

    wow what a timely video! I am working on sensors based on solar cells, so i needed some irradiance-dependent model. very helpful thanks!

  • @LukaszTNT
    @LukaszTNT 2 роки тому

    Very helpful elaboration, thank You ❤
    I can tell after examinating the model:
    1. this model has no breakdown voltage, withstands many MegV. I know that this parameter is not published in datasheets.
    2. keep in mind that panels available on market have usually reverse-protection diodes that changes the characteristics of PV module.

  • @alaricsnellpym
    @alaricsnellpym 2 роки тому +3

    Nice... that's really handy for modelling solar systems!

  • @thomasfry6641
    @thomasfry6641 Рік тому +1

    Thank you for sharing this and the model itself, super helpful. I was looking at how to model various PV cells in a circuit, this has saved a ton of time.

  • @johnanderson4638
    @johnanderson4638 2 роки тому +1

    Nice video - informative about solar panels and LTSpice! Great work!

  • @pieters286
    @pieters286 2 роки тому +3

    As always, very informative.

  • @bcsongor
    @bcsongor 2 роки тому +1

    Hi! Just for you to know: Andreas Spiess (the guy with the Swiss accent), another great youtuber I follow, mentioned the use of your LTspice PV model to demonstrate how come you do not really need solar panel optimizers :D

  • @MuhammadUsman-n3p9z
    @MuhammadUsman-n3p9z Рік тому +1

    When I run this simulation exactly with same parameters it says "value of B1 is missing" what value should we consider for B1 as it is not given in the video, thanks

  • @tvarsivi100
    @tvarsivi100 10 місяців тому

    it is explained very well. I have a question
    Why do the optimizers (Tigo, Huwaei, Solar-Ege etc.) that work at the solar module level do MPPT tracking.
    According to your description, they could actually measure the instantaneous solar module open-circuit voltage, solar module short-circuit current and the solar module temperature (on the back of the solar module) then they didn't need to do MPPT, they already had Pmax.
    Why do they take such a complicated route?

  • @ЕвгенийШепард-р2х
    @ЕвгенийШепард-р2х 2 роки тому

    Wonderful! Very useful. Thank you!

  •  2 роки тому +1

    The solar panel datasheet states 47°C nominal temperature. Doesn't that mean the parameters are specified for that reference temperature, and you should change the 25° used in the formulas? Maybe that could account for the small difference in the simulation? (I don't enough proficiency in LTSpice to test it myself)

    • @uwezimmermann5427
      @uwezimmermann5427 2 роки тому

      The parameter values in the datasheet are given at STC, standard test conditions, which is 1000 W/m², 25°C and the AM1.5 standard light spectrum.
      The nominal temperature or NOCT (normal operating cell temperature) is the temperature of the cells inside the module which can be expected under fairly average weather conditions.

  • @pbeach7482
    @pbeach7482 2 роки тому +1

    Great introduction! Is it possible to get the LT- Spice Files ?

    • @pbeach7482
      @pbeach7482 2 роки тому

      Thank you for the reply! The description contains only the text files. Is it possible to get the asc simulation file as well?

  • @robertv4076
    @robertv4076 2 роки тому +1

    Thank you!

  • @antoninofiumano5467
    @antoninofiumano5467 Рік тому

    Hi, I tried to make the same circuit using the same param,eters and model but when the simulation is stopped before to run because the value B1 seems to be undefined. I cjecled a lot of time the circuit a any detail bu I didn't finfd a difference wrt your scheme . Can you help me, please?

  • @rostn6997
    @rostn6997 9 місяців тому +1

    very helpfull!

  • @bassamalshaefan8075
    @bassamalshaefan8075 9 місяців тому

    Thank you for this great lesson.
    I've done everything in this simulation and gets error of undefined B1 value, any thought how to solve it?

    • @FesZElectronics
      @FesZElectronics  9 місяців тому +1

      There is a formula next to B1 in the simulation - defining the relationship between its current and "illu" voltage. This is the value of B1. Did you also add this?

    • @bassamalshaefan8075
      @bassamalshaefan8075 9 місяців тому

      yes i did.
      i made everything the same however when i try to run it, i get this error
      Error on line 5 : i§b1 0 n001 i=v(illu)/1000*iph
      Unknown parameter "i"
      Fatal Error: Missing current value for "b1"
      my issue here 3:00
      @@FesZElectronics

    • @bassamalshaefan8075
      @bassamalshaefan8075 9 місяців тому

      oh , my mistake was the current source i chose regular one instead of "bi" current source :)
      again thanks for this video
      @@FesZElectronics

    • @FesZElectronics
      @FesZElectronics  9 місяців тому +1

      I noticed this error was occurring also for other viewers - and I just wanted to ask you how did you get the component to be called "i§b1"... I'm sorry if I did not make this clear - it was a behavioral current source - only with that type of component can you add a formula; same goes for voltage sources - if you want a formula it needs to be of "behavioral" type.

  • @hedleyfurio
    @hedleyfurio 2 роки тому +2

    👍👏

  • @danielspaizman
    @danielspaizman Рік тому

    I was able to reproduce the single solarPV module IV curve but wasn't able to string them together in series and see double the voltage. Are there any other changes that have to be made to correctly measure the doubled voltage? Does the vout4 have to be defined a particular way?

    • @FesZElectronics
      @FesZElectronics  Рік тому

      Did you use component blocks or was it with a discrete implementation? Also regarding net names, in case the same name appears multiple time in the circuit, the nets will be short-circuited - maybe there are multiple instances of "vout4"

    • @danielspaizman
      @danielspaizman Рік тому

      @@FesZElectronics It looks like my last response may have been removed. I attempted to make it with component blocks. I am not sure what a discrete implementation means exactly (newbie here). Net names are not overlapping, i don't think. Can net names within a component block be called from the graph viewer? If so, I will triple check that. When I use the solar cell model and connect multiple together, I DO see double the voltage, just not with the component blocks linked in series.

    • @FesZElectronics
      @FesZElectronics  Рік тому

      Hello Daniel, By discrete I was asking if you use the 4 component circuit to represent 1 solar cell, or the circuit block; but I think you cleared it up by saying you are using blocks; Net names from within the block should not matter; Maybe one thing to check is if the negative line of the block is ground - so the positive and negative lines should be independent of ground; you can look at the voltage in-between the 2 blocks in series - is it half the output or is it 0?

    • @danielspaizman
      @danielspaizman Рік тому

      @@FesZElectronics This was it! It looks like i had forgotten to delete the ground when making the pv_module component block. Once I edited the netlist to refer to v- instead of 0 for the diode, shunt resistor, and voltage source, it worked. Thank you!

    • @FesZElectronics
      @FesZElectronics  Рік тому

      Happy I could help :D

  • @CarlVanWormerAE7GD
    @CarlVanWormerAE7GD Рік тому

    Thanks for the video! I think your subcircuit file should have io=1e-6 instead of 1e06.

    • @CarlVanWormerAE7GD
      @CarlVanWormerAE7GD Рік тому

      I see that further on in the video you corrected the problem . . . never mind . . .

  • @LukaszTNT
    @LukaszTNT 2 роки тому

    In 10:20 what is the value taken to calculate Rs_t, in the denominator? Is it "Ib", or "16"? I can't either read it or think out..
    Also in Rsht, is it "5" in the numerator? If yes, where the magic numbers come from, I suppose they are the parameters of silicon?
    UPDATE: ok I used Your files and I see there is 5 and 16.

    • @FesZElectronics
      @FesZElectronics  2 роки тому

      5 and 16 are magic numbers :D I think I found somewhat different values in the documentation, but with these the model seemed to be more accurate. I will be honest, I did not look deep enough to see what exactly these numbers represent.

    • @DriftJunkie
      @DriftJunkie 11 місяців тому

      Well, 16/5 is very close to 14/5, which is also very close to e (Eulers number), used in Io_t calculation for some reason. Maybe this is the reason these coefficients exist.

  • @prathamg5026
    @prathamg5026 Рік тому

    i am getting no value of current value for B1. how to solve?

    • @hedleyfurio
      @hedleyfurio Рік тому +1

      I made same error for the current source select bi ( behavioral current source )

  • @naggorski
    @naggorski Рік тому

    I am having issues with the 'Arbitrary Behavioral Voltage or Current Source' "B1 and later B13 in your more complex example. The error log is:
    Error on line 8 : i§b13 0 n001 i=ipv_t*v(illu)/1000
    Unknown parameter "i"
    Fatal Error: Missing current value for "B13"
    Please help
    my netlist is:
    R5 illu 0 100Meg
    R2 N001 0 R=rsh_t
    R3 v+ N001 R=rs_t
    D1 N001 0 pvdiode2
    V1 illu 0 {illu}
    I1 v+ 0 PULSE(0 10 0 1 1) load
    I§B13 0 N001 I=ipv_t*v(illu)/1000
    .model D D
    .lib ...\standard.dio
    .tran 1
    .temp 25
    *.temp 10 25 70
    .step param illu list 200 600 1000
    *.param illu 1000
    .param voc 44.71
    .param isc 8.947
    .param vmp 37.23
    .param imp 8.06
    .param tk_voc -0.0034
    .param tk_isc 0.0005
    .param voc_t voc*(1-tk_voc*(25-temp))
    .param isc_t isc*(1-tk_isc*(25-temp))
    .param vmp_t vmp*(1-tk_voc*(25-temp))
    .param imp_t imp*(1-tk_isc*(25-temp))
    .param a_n 1.3*voc/0.7
    .param rs_t (voc_t-vmp_t)/(16*imp_t); 2 instad of 16 in original source
    .param rsh_t 5*vmp_t/(isc_t-imp_t); 1 instead of 5 in original source
    .param vt_t (1.38e-23*(273+temp))/1.6e-19
    .param io_t ((rs_t+rsh_t)*isc_t-voc_t)/(rsh_t*exp(voc_t/(a_n*vt_t)))
    .param ipv_t isc_t*(rsh_t+rs_t)/rsh_t
    .model PVDiode2 D(Is=io_t N=a_n Tnom=temp)
    .backanno
    .end

    • @FesZElectronics
      @FesZElectronics  9 місяців тому

      I tried to simulate the netlist you gave, and got the same error; however if I deleted "I§" and just left "B13 0 N001 I=ipv_t*v(illu)/1000 " it seems to work... do you know how the "I§" got there? I guess multiple people have the same issue...

  • @biswajit681
    @biswajit681 2 роки тому

    Please make videos on closed loop buck converter and different control algorithm

  • @rjrodrig
    @rjrodrig 2 роки тому

    when I try to parametrize my own simulation LTspice complains "LTspice cannot resolve .param ...." In other words if I put an expression for example: .param Rsh=((Vmp-(Imp*Rs))*(Vmp-(Rs*(Isc-Imp)))-(n*a*Vt))/(((Vmp-(Imp*Rs))*(Isc-Imp))-(n*a*Vt*Imp)). LTspice complains.. I don't know how to pass Resistances computed to the resistor, even though you explain in your video to say R=Rsh, it does not do it. Also, I can't have LTSpice compute any values, I have to use B(V) sources to do the math, as it refuses to multiply add, etc... the only way I have found to do it is through behavioral Voltage or current sources and put the equation. In your case, it works, and in my case it doesn't why? Any ideas?

    • @rjrodrig
      @rjrodrig 2 роки тому

      It turns out that If I use .param X = { Expression } it evaluates without issues.

  • @grautvornix11
    @grautvornix11 Рік тому

    Hi, great videos you are producing, many thanks for these.
    Regarding this one here I am trying to reproduce in LTSpice but I cannot find the Solardiode, you only quickly mention it as "built-in" into LTSpice, but I do not find any Solardiode, nor I can
    find any other hints on the internet. Please help, how can I include "SolarDiode" ?

    • @grautvornix11
      @grautvornix11 Рік тому

      please ignore this question, I found out by myself, I am quite a newbie with LTSpice

    • @prathamg5026
      @prathamg5026 Рік тому

      how and what did u figure out?@@grautvornix11

    • @FesZElectronics
      @FesZElectronics  9 місяців тому

      I just used the generic diode simbol present in the LTspice, which I named "SolarDiode". The model definition is in the simulation ".model solardiode d(is=io n=a_n tref=temp)"

  • @troy6882
    @troy6882 2 роки тому

    Stuff the cells if at one amp 6v at solaronix well since I got half anyway what about for a high current battery to replace acid types to run high current aultanator units or you could build like the bike kit we did 32v one amp input and after test hopefully it will draw charge at lower inputs on dynamo or solar??? should fit a 50mm frame but should with type design use run your 18650 charge each battery after a transformer HUD in your Tesla car??. Want to do a math with 3to seven band cells to see watt wise to length wether you can get a product for night time run use with a reflector or add a second cell on the laser pump laser beam lasers to a mm likely 10mm size to double it up to light absorbed by the cells silicone needs several depends on material types!. Where's them 9w cells I got! 😃😄😁😆😅5 Smiles.