Skip to main content

FCR

Overview​

Every resource must pass pre-qualification before it can trade in Japan's balancing markets. For an FCR resource registered for offline monitoring, the aggregator, usually Tensor Energy, submits performance data collected at the site to the area TSO.

An FCR resource responds to grid frequency on its own, through its droop setting, instead of following dispatch commands. To collect the data, a simulated frequency signal replaces the live frequency measurement in the resource's control system, and the power response is compared with the values registered for the resource. The signal can come from a hardware signal source wired into the control system or be generated in software on the EMS. Either way, the EMS must measure and publish the same value that goes into the control system.

About this page​

This page explains how to collect the performance data. It is for the EMS integrator, the EPC contractor, and the injection operator, who feeds the simulated frequency into the control system. With a hardware signal source the injection operator is usually the EPC contractor or the battery OEM; with software generation it is the EMS integrator.

The aggregator handles everything involving the area TSO and OCCTO.

Procedure​

Download

Simulated frequency profiles for the injection operator: fcr-prequalification-mock-frequency.xlsx.

The workbook has one sheet per test slot, with one row per second showing the frequency to inject and the baseline the battery should hold. The procedure is on the first sheet.

Before the run​

ByWhoStep
3 weeks before the runAggregatorAgree the date with the EMS integrator and the injection operator
2 weeks before the runEMS integratorComplete integration testing with Tensor Cloud, so that telemetry is known to arrive
1 week before the runEMS integratorConfirm with the aggregator that the droop and deadband configured in the controller match the values registered with EPRX. See registered values
1 week before the runEMS integrator, EPC contractorSend the documents to the aggregator
1 week before the runAggregatorSet the charging baseline for test slots 1 and 3 based on the size of the resource
Day before the runTensor CloudSend the baseline schedule on the normal command topic and an FCR schedule covering the hour before the first slot and all three slots, with charging and discharging scheduled so the battery is at 75 % SoC when the first slot starts. The FCR schedule switches the site to 1 Hz publishing, so nothing needs to be switched on manually

On the day​

WhenWhoStep
During each test slotInjection operatorFeed the profile from the workbook into the control system in place of the live frequency measurement
During each test slotEMSMeasure the injected signal and publish it as 1 Hz frequency, together with 1 Hz power as 1-second average kW at the sending end, with pre_qualification: true. Clear the flag after the slot
Throughout the runEMS integratorStay reachable. The aggregator is not on site

All run data reaches Tensor Cloud through normal telemetry.

After the run​

ByWhoStep
3 months before the resource starts tradingAggregatorCalculate the response from the power, the frequency and the baseline, and apply for pre-qualification with the area TSO. The area TSO reviews within three months of the application
After the runInjection operatorKeep the injection log

Documents​

Pre-qualification also needs documents describing how the resource and the site are built and configured. Telemetry cannot carry them, so send them to the aggregator before the run.

From the EMS integrator​

RequirementWhat is neededFormat
Command and control, control interval (local autonomous control)A description of the droop control function: control block diagram, computation interval, and that its input is the locally measured frequency. Where the droop control lives in the PCS, obtain it from the battery OEMPDF
Frequency measurement interval (0.1 s or shorter)The frequency meter's specificationPDF
Frequency measurement error (within ±0.02 Hz)The same specification, with a test or calibration certificate where one existsPDF
Deadband, droopThe values as configured in the controller, and whether a frequency-deviation compensation function is fittedPDF
Delay time (2 s or less)The breakdown: frequency measurement delay, control logic computation delay, equipment control delay. Obtain the PCS share from the battery OEMPDF

The frequency meter's specification or data sheet must show the measurement or update interval and the accuracy. If it does not, also send a short raw log recorded at the device's native rate, showing samples 0.1 s apart or closer with their values.

From the EPC contractor​

What is neededFormat
Single-line diagramPDF
Site planPDF
Continuous operating voltage range, upper and lower limits in %Values in writing (email is fine)
Confirmation that the metering equipment meets the metering requirements in Article 13 of the balancing market trading rulesIn writing (email is fine)
Number of units, location of the TSO's wheeling meter, and its metering voltage (sending end or generator end)Values in writing (email is fine)

Requirements​

ItemRequirementChecked by
DeadbandWithin ±0.01 Hz (50 Hz areas) or ±0.012 Hz (60 Hz areas)Test b
Droop5 % or less, and constant regardless of deviation magnitude. The area TSO may permit an exception where equipment characteristics justify itTest b
Response time30 sTest a
Delay time2 s or lessTest a
Frequency measurement interval0.1 s or shorterDocuments
Frequency measurement errorWithin ±0.02 HzDocuments

Registered values​

The aggregator registers the resource's offered capacity, droop and deadband with EPRX, and both tests score the response against these registered values.

  • Offered capacity is the largest output change the resource reaches within 30 seconds of a 0.2 Hz frequency drop (0.3 Hz in the Hokkaido Electric Power Network area). It caps how much can be bid into FCR. Register a value the battery can deliver on the day. If it is too high, test a fails. If it is too low, test b is scored against a narrower tolerance than necessary.
  • Droop and deadband must match the values configured in the controller. Each test b point is scored against the registered droop, so if the battery's settings or actual saturation point differ, it can fail even when it follows its own curve exactly.

Tests​

Test slots​

The run uses three 30-minute test slots, each with its own baseline and frequency pattern. Scoring is done per slot.

SlotPatternBaselineShows
1Test b, staircaseCharging, held flatDroop and deadband while charging
2Test b, staircaseNot chargingDroop and deadband while not charging
3Test a, single stepMaximum chargeOffered capacity across the full range from maximum charge to maximum discharge

The slots do not have to be consecutive. The hour before each slot is also submitted.

Baseline​

  • Tensor Cloud sends each slot's baseline as a battery power setpoint on cmd/{siteId}/battery/power, the same command channel as in normal operation.
  • The setpoint must stay constant for the whole slot and for the hour before it. If it changes, the response cannot be separated from it and the slot cannot be scored.
  • Nothing else may move the battery. Any movement not caused by the baseline or the injected frequency shows up as response that the droop curve cannot explain.
  • Output change is measured from the baseline, not from zero. In slot 3, test a has to show the swing from maximum charge toward discharge, and offered capacity must be reachable across that range within 30 seconds.
  • Test b makes the battery charge and discharge in turn, so it needs room in both directions. The battery starts at 75 % SoC, and the charging baseline is chosen so the battery does not become full or empty before the slot ends.

Test a, abnormal conditions​

Test a holds base frequency for 60 seconds, steps down at t=60 s, and holds the lower frequency until t=660 s. It is the only test that confirms offered capacity.

AreaStepReach offered capacity within
Other than Hokkaido0.2 Hz30 s
Hokkaido Electric Power Network0.3 Hz30 s

The resource must reach at least the registered offered capacity minus 10 % within 30 seconds of the step. The response is scored without correction.

Test b, normal conditions​

Test b steps the frequency through six deviation levels, positive first in each pair, to check that output follows the registered droop outside the deadband. Each level is held for 120 seconds, with 30 seconds at base frequency in between.

Time (s)Deviation (Hz)Hold (s)
0030
30 / 180+0.010 / -0.010120 each
330 / 480+0.030 / -0.030120 each
630 / 780+0.050 / -0.050120 each
930 / 1080+0.080 / -0.080120 each
1230 / 1380+0.120 / -0.120120 each
1530 / 1680+0.160 / -0.160120 each
18000end

The deviations are the same for 50 Hz and 60 Hz areas. Inject base frequency plus the deviation, for example 60.010 Hz at a 60 Hz site or 50.010 Hz at a 50 Hz site.

Scoring works as follows:

  • The response in the 30 seconds after each step is scored, including the initial transient.
  • Each point must be within ±10 % of offered capacity of the droop curve value, and at least 90 % of the points in the slot must be within that range. The registered offered capacity therefore also sets the width of the tolerance.
  • The area TSO shifts the response back by the 2 s delay time before comparing it with the frequency, so a delay of up to 2 seconds does not count against the resource. Test a has no such correction.
  • Points inside the resource's deadband are not scored, so the ±0.01 Hz steps may produce no response.

The largest step is 0.16 Hz, below the 0.2 Hz (0.3 Hz in the Hokkaido Electric Power Network area) that defines offered capacity, so test b checks the droop line and not the output limit.