Virtual Source#

While Shepherd v1 was built around an actual harvesting-IC the new version virtualizes most parts like the harvester, storage capacitors and voltage converters. By switching to a software defined system the sourcing of energy becomes fully configurable. The simulation loop runs in real-time with 100 kHz and allows to emulate a wide variety of voltage converter circuits.

Note

TODO: WORK IN PROGRESS

Harvester#

With one of the latest additions of sampling IV-curves during harvest, it is now possible to also emulate the actual harvesting. The harvesting options are

  • constant voltage (CV)

  • maximum power point tracking (MPPT) based on

    • open circuit voltage (MPPT_VOC), or

    • perturb & observe (MPPT_PO)

As an actual YAML-Example:

- datatype: VirtualHarvesterConfig
  parameters:
    id: 1040
    name: mppt_voc
    description: MPPT based on open circuit voltage for solar
    inherit_from: neutral
    algorithm: mppt_voc
    setpoint_n: 0.76
    interval_ms: 100     # between measurements
    duration_ms: 1.2     # solar can overshoot when load is removed
    current_limit_uA: 5  # boundary for detecting open circuit in emulated version (working on IV-Curves)

References#

Emulator#

../_images/virtual_source_schemdraw.png

fully customizable power supply toolchain#

As an actual YAML-Example describing a simple diode & capacitor circuit:

- datatype: VirtualSourceConfig
  parameters:
    id: 1011
    name: diode+capacitor
    description: Simple Converter based on diode and buffer capacitor
    inherit_from: neutral
    V_input_drop_mV: 300  # simulate input-diode
    C_intermediate_uF: 10  # primary storage-Cap

Sim-Example 1#

Setup:

  • TI BQ25504 (with default slow pwr-good & fast schmitt-trigger)

  • I_inp = 100 uA @ 1200 mV

  • I_out = 1 mA (active MCU), 200 nA (sleep)

  • V_power_good = 2.2 V

The only difference between the two runs is the altered power-good-circuit. The original BQ25504 is too slow to inform the MCU about the low energy level and therefore the MCU drains the capacitor. Note the small voltage drop in the first picture. The BQ disconnects the output for very low voltages and reconnects it on a certain voltage. The drop is caused by the simulated output-capacity.

../_images/vsource_sim_BQ25504_1200mV_5000ms.png

BQ25504 with default slow pwr-good#

../_images/vsource_sim_BQ25504s_1200mV_5000ms.png

BQ25504 with fast schmitt-trigger#

Source

Sim-Example 2#

Setup:

  • diode + cap circuit with immediate schmitt-trigger for power-good

  • I_inp = 100 uA @ 1200 mV

  • I_out = 1 mA (active MCU), 200 nA (sleep)

  • V_power_good = 2.2 V

The input-voltage is too small to charge the circuit up to V_power_good, so the capacitor is slowly discharging from its own leakage and the MCUs current-draw during sleep.

../_images/vsource_sim_diode%2Bcapacitor_1200mV_500ms.png

diode + cap circuit with fast schmitt-trigger for power-good#

Source

References#