A Multi-Time-Scale Scheduling Method for Photovoltaic Energy Storage Systems

CN122456675BActive Publication Date: 2026-09-01ANHUI WEILAN ZHICHENG ELECTRIC POWER TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202610933850.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-06-26
Publication Date
2026-09-01
Estimated Expiration
2046-06-26

AI Technical Summary

Technical Problem

[0004]本发明的目的在于提供一种光伏储能系统的多时间尺度调度方法,以解决上述背景中问题

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122456675B_ABST
    Figure CN122456675B_ABST
Patent Text Reader

Abstract

This invention relates to the field of photovoltaic energy storage system scheduling and control technology, specifically disclosing a multi-timescale scheduling method for photovoltaic energy storage systems. Each terminal collects local data to form an initial data packet; the elected master node uses counterfactual rolling deduction to generate a candidate sequence of energy storage power, and adds a smooth slope limit that adaptively changes with the state of charge segment to form a proposal instruction set; slave nodes use feasible domain template filtering and signature fragment aggregation for dual verification, locking sequences with more than the Byzantine fault tolerance threshold as global power control sequences; each terminal starts from the current actual power, divides an asymmetric transition window according to the smooth slope limit, approaches the target value with a variable step size, and uses a hysteresis band to suppress oscillations; when the state of charge deviates from the preset trajectory by more than the trigger threshold, adjacent terminals initiate rapid local voting to correct subsequent power settings; this invention can eliminate power bounce and tolerate communication uncertainties.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of photovoltaic energy storage system scheduling and control technology, and specifically to a multi-timescale scheduling method for photovoltaic energy storage systems. Background Technology

[0002] Photovoltaic energy storage systems typically require multi-timescale power dispatch based on photovoltaic power generation forecasts, load demand, and grid conditions to mitigate photovoltaic fluctuations and improve system operating economics. Existing multi-timescale dispatch methods often employ a hierarchical architecture: at the day-ahead or hourly level, a central energy management system formulates energy storage charging and discharging plans based on global forecast information; at the minute to second level, local controllers or model predictive control (MPC) are used to continuously revise the plans.

[0003] When communication delays or packet loss are recovered, the preset tracking penalty in the controller will force the energy storage power to catch up with the original plan in a large jump, resulting in a power rebound that is opposite to the grid frequency regulation demand. This rebound not only fails to smooth out frequency fluctuations, but also deteriorates frequency quality and may even lead to the virtual power plant being disqualified from ancillary services. However, this invention uses an asymmetric transition window, variable step size approximation, and hysteresis band constraints to make the power smoothly transition from the current actual value to the target value, thus eliminating the power rebound phenomenon from the mechanism. Summary of the Invention

[0004] The purpose of this invention is to provide a multi-timescale scheduling method for photovoltaic energy storage systems to solve the problems mentioned above.

[0005] The objective of this invention can be achieved through the following technical solutions: A multi-timescale scheduling method for a photovoltaic energy storage system includes the following steps: S1: Each photovoltaic energy storage terminal collects local real-time photovoltaic power, energy storage state of charge, ultra-short-term photovoltaic prediction sequence and load measurement data to form an initial state data packet; S2: The elected master node generates a candidate sequence of energy storage power for each photovoltaic energy storage terminal in the future consensus period based on the initial state data packet using counterfactual rolling deduction, and adds a smooth slope limit that adapts to the state of charge segment to form a proposal instruction set. S3: All slave nodes perform double verification on the proposed instruction set. First, they filter out the over-limit sequences through the preset feasible domain template, and then they aggregate the signature fragments of the sequences that pass the template. When the number of recognized signatures after aggregation exceeds the Byzantine fault tolerance threshold, the corresponding sequence is locked as a global power control sequence. The feasible domain template is a set of power constraints that is pre-calculated and stored locally for each photovoltaic energy storage terminal. S4: Each terminal starts from the current actual output power, divides an asymmetric transition window according to the smooth slope limit, and approaches the target value of the global power control sequence with a variable step size within the transition window, and uses the hysteresis band to constrain the oscillation of the actual tracking trajectory. S5: During the transition execution, when the energy storage state of charge deviates from the preset trajectory by more than the micro consensus trigger threshold, adjacent terminals initiate a fast local vote to correct the subsequent power setting value and continue execution; The energy storage power candidate sequence specifically includes: Based on the initial state data packet, the master node presets multiple virtual power drop events at different times within the future consensus period for each photovoltaic energy storage terminal. For each event, it independently and continuously optimizes the power adjustment trajectory for subsequent periods. Then, it selects the trajectory that minimizes the deviation of the terminal's state of charge from the preset band as the candidate sequence of energy storage power for the photovoltaic energy storage terminal.

[0006] As a further aspect of the present invention: the proposed instruction set specifically includes: The master node divides the state of charge of each photovoltaic energy storage terminal into an undervoltage region, a steady-state region, and an overvoltage region. When the state of charge is in the undervoltage region or the overvoltage region, the smoothing slope limit is set to zero to prevent accelerated power change. When in the steady-state region, continuous slope limits are calculated by inverse linear interpolation based on the distance from the state of charge to the steady-state center point, and appended to the end of the energy storage power candidate sequence of the corresponding terminal to form a proposal instruction set.

[0007] As a further aspect of the present invention: the signature fragment aggregation specifically includes: Each slave node will divide the proposed instruction set filtered by the feasible domain template into multiple consecutive segments according to the timestamp, generate a local signature for each segment independently, and then concatenate all the local signatures into a signature chain in the order of the segments and broadcast it to the other slave nodes. After receiving the signature chain broadcast by other nodes, any slave node performs bitwise operations to superimpose the local signatures at the same segment position. When the number of recognized signatures corresponding to the complete proposal instruction set after superposition exceeds the Byzantine fault tolerance threshold, the proposal instruction set is locked as a global power control sequence.

[0008] As a further aspect of the present invention: the step of concatenating all local signatures into a signature chain in fragment order specifically includes: Each slave node appends a truncated hash value from the end of a one-cycle global control sequence to each fragment as a salt value, and then uses its own stored asymmetric private key to sign the concatenation of the fragment and the salt value to obtain a local signature of the fragment. All local signatures are arranged alternately with the original data hash values ​​of the corresponding fragments in fragment order to form a signature chain that can be verified level by level, and then broadcast to the remaining slave nodes; The receiving node verifies the validity of each local signature in turn according to the nesting relationship of adjacent hashes in the signature chain, and retains the proposal instruction set corresponding to the signature chain only when all verifications pass.

[0009] As a further aspect of the present invention: the step-size approximation of the target value of the global power control sequence within the transition window specifically includes: Each terminal divides the difference between the current actual output power and the target value into a positive deviation region and a negative deviation region, allocates a first transition time to the positive deviation region, and allocates a second transition time greater than the first transition time to the negative deviation region; Within each transition window, the approximation step size is adjusted at equal intervals according to the magnitude of the real-time power deviation, so that the power change decreases as the deviation decreases. Simultaneously, upper and lower rise difference thresholds are preset for the actual tracking trajectory. When the power value crosses either threshold, the current output is forced to maintain a stable interval before continuing to move towards the target value.

[0010] As a further aspect of the present invention: S5 specifically includes: Terminals that deviate from the preset trajectory generate a voting request, including the direction of deviation and a suggested correction amount, based on the extent of the deviation in the state of charge. This request is then broadcast only to one-hop reachable neighboring terminals in the communication topology. After receiving the request, each adjacent terminal independently casts a vote of approval or disapproval based on the deviation sign between its own state of charge and the preset trajectory, and returns the vote value with a local timestamp attached. Once the initiating terminal receives more than two-thirds of the votes from its neighboring terminals, it adds the correction amount to the remaining unexecuted portion of the current global power control sequence to form a new subsequent power setting value.

[0011] As a further aspect of the present invention: the broadcasting only to adjacent terminals reachable by one hop in the communication topology specifically includes: Terminals that deviate from the preset trajectory will be divided into mild, moderate and severe zones based on the absolute value of the excess state of charge. A request will be triggered only when the terminal is in the moderate or severe zone. The correction amount is set to a fixed percentage increment or decrement of the value at the corresponding moment of the current power control sequence, depending on whether the deviation direction is positive or negative, and is encoded into a request body along with the deviation magnitude; The system obtains a list of neighboring terminal addresses that can be reached in one hop by querying the locally maintained adjacency table, and then sends the request body in the form of an unacknowledged one-way datagram to each address in the list in sequence.

[0012] The beneficial effects of this invention are: (1) By combining master node election with dual verification of slave nodes, photovoltaic energy storage terminals can achieve consistent power control commands without relying on a single central controller. When some terminals experience communication interruption or data abnormality, as long as the number of surviving nodes exceeds two-thirds, the system can still generate and lock the global power control sequence normally, avoiding the risk of overall loss of control caused by single point failure in traditional centralized scheduling, while reducing the bandwidth occupation of long-distance communication links.

[0013] (2) During the instruction execution phase, a tracking method combining an asymmetric transition window and a hysteresis band is adopted. This allows the energy storage power to automatically adjust the approximation speed according to the deviation direction when transitioning from the current actual value to the target value. Different transition windows of different durations are used in the positive and negative deviation regions, and a variable step size decreasing strategy is employed to effectively suppress repeated power jumps caused by sensor noise or control hysteresis. This reduces the frequency of switching operations of the energy storage converter transistors, extends the service life of power devices, and avoids the instantaneous impact of power surges on the power grid. Attached Figure Description

[0014] The invention will now be further described with reference to the accompanying drawings.

[0015] Figure 1 This is a flowchart of the method of the present invention; Figure 2 This is a flowchart illustrating the specific process of signature fragment aggregation in this invention. Detailed Implementation

[0016] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0017] Please see Figure 1 As shown, this invention provides a multi-timescale scheduling method for a photovoltaic energy storage system, comprising the following steps: S1: Each photovoltaic energy storage terminal collects local real-time photovoltaic power, energy storage state of charge, ultra-short-term photovoltaic prediction sequence and load measurement data to form an initial state data packet; S2: The elected master node generates a candidate sequence of energy storage power for each photovoltaic energy storage terminal in the future consensus period based on the initial state data packet using counterfactual rolling deduction, and adds a smooth slope limit that adapts to the state of charge segment to form a proposal instruction set. S3: All slave nodes perform double verification on the proposed instruction set. First, they filter out the over-limit sequences through the preset feasible domain template, and then they aggregate the signature fragments of the sequences that pass the template. When the number of approved signatures after aggregation exceeds the Byzantine fault tolerance threshold, the corresponding sequence is locked as the global power control sequence. S4: Each terminal starts from the current actual output power, divides an asymmetric transition window according to the smooth slope limit, and approaches the target value of the global power control sequence with a variable step size within the transition window, and uses the hysteresis band to constrain the oscillation of the actual tracking trajectory. S5: During the transition execution, when the energy storage state of charge deviates from the preset trajectory by more than the micro consensus trigger threshold, adjacent terminals initiate a fast local vote to correct the subsequent power setting value and continue execution.

[0018] In S1, each photovoltaic energy storage terminal collects local real-time photovoltaic power, energy storage state of charge, ultra-short-term photovoltaic forecast sequence, and measured load data to form an initial state data package, which specifically includes: Each photovoltaic energy storage terminal is equipped with a DC voltage sensor and a DC current sensor, which are installed on the output bus of the photovoltaic array and the input and output buses of the energy storage battery pack, respectively.

[0019] The real-time photovoltaic power is obtained by reading the instantaneous values ​​of the voltage and current sensors at the output of the photovoltaic array and multiplying them. The sampling frequency is 10 times per second, and the arithmetic mean of the most recent second is taken as the real-time photovoltaic power value at that moment.

[0020] The state of charge of energy storage is estimated by the coulomb counter and voltage monitoring circuit equipped in the energy storage battery pack: the coulomb counter accumulates the charge and discharge capacity in real time, the voltage monitoring circuit collects the battery terminal voltage every 100 milliseconds, and the processor built into the terminal performs a fusion calculation of the accumulated value of the coulomb counter and the voltage correction value every 5 seconds to output the current state of charge percentage.

[0021] The ultra-short-term photovoltaic (PV) forecast sequence is generated by a solar intensity meter and a cloud detector deployed locally at the terminal: the solar intensity meter is installed facing south at a 45-degree tilt angle and outputs a total radiance value on the horizontal plane every 15 seconds; the cloud detector uses an infrared thermal imaging probe to take pictures of the sky and outputs a cloud movement image every 60 seconds. The prediction program built into the terminal extrapolates the PV power prediction value at a point every 5 minutes for the next 15 to 60 minutes based on the radiance change trend and cloud movement vector in the last 15 minutes, forming an ultra-short-term PV forecast sequence containing 12 prediction points.

[0022] The measured load data is acquired through AC voltage and current transformers installed at the grid connection point of the terminal. The sampling frequency is 128 points per cycle. After accumulating for three consecutive power frequency cycles, the effective value of active power is calculated as the measured load data at that moment. The above-mentioned real-time photovoltaic power, energy storage state of charge, ultra-short-term photovoltaic prediction sequence, and measured load data are aligned according to the set consensus cycle start time, packaged into a start-state data packet, and stored in the terminal's local cache for use in the next step.

[0023] In S2, the elected master node generates a candidate sequence of energy storage power for each photovoltaic energy storage terminal within the future consensus period based on the initial state data packet using counterfactual rolling deduction. This sequence is then supplemented with a smooth slope limit that adaptively varies with the state of charge segment, forming a proposal instruction set, which specifically includes:

[0024] The master node is elected as follows: Before the start of each consensus cycle, each photovoltaic energy storage terminal reads the integer second value of its local clock, performs a bitwise XOR operation with an election seed value (e.g., a fixed integer 2025) pre-stored in each terminal, and obtains the election priority value for each terminal. All terminals broadcast their respective priority values ​​through point-to-point communication. After each terminal collects the values ​​from other terminals, the terminal with the highest priority value is selected as the temporary master node for the current consensus cycle using the longest chain rule. This master node is responsible for collecting the initial state data packets from all terminals and performing subsequent deduction and generation operations.

[0025] A counterfactual rolling extrapolation method is used to generate candidate power sequences for each photovoltaic energy storage terminal within the future consensus period. The specific process is as follows: The master node reads the start time of the current consensus period, which is set to 15 minutes in length. The master node divides this 15-minute period into 15 equal-length control intervals, each interval lasting 1 minute. For each photovoltaic energy storage terminal, the master node, based on the ultra-short-term photovoltaic prediction sequence (containing a prediction point every 5 minutes within the next 15 minutes) in its initial state data packet and the actual load measurement data, presets multiple virtual power drop events that may occur at different times within the future consensus period. Specifically, the master node sets a virtual power drop event at the start point of each control interval (i.e., the start of minute 1, minute 2, ..., minute 15), with each event defined as follows: the real-time photovoltaic power of the terminal decreases by 30% of the terminal's rated power within 1 second. For each preset virtual power drop event, the master node independently runs a rolling optimization: taking the time when the event occurs as the starting point, and using the current value of the energy storage state of charge of the terminal, the maximum charging and discharging power limit of the energy storage (100% of the rated power), and the ultra-short-term photovoltaic prediction data of the remaining events that have not occurred as constraints, the energy storage power adjustment trajectory of each control interval in the subsequent period is deduced. Each simulation employs a step-by-step backtracking method: starting from the first control interval after the event (i.e., the first minute after the event), the difference between the current energy storage state of charge (SOC) and the preset band center value (50% SOC) is calculated. If the SOC is below 50%, the discharge power is increased within that control interval by multiplying the difference by the total energy storage capacity of the terminal and dividing by the duration of one minute, but this must not exceed the maximum discharge power limit. If the SOC is above 50%, the charging power is increased within that control interval by multiplying the absolute value of the difference by the total energy storage capacity and dividing by the duration of one minute, but this must not exceed the maximum charging power limit. After completing the adjustment for one control interval, the SOC is updated, and then the process is repeated for the next control interval until the SOC returns to the preset band (50% ± 10% SOC) or the consensus cycle ends (ending at the 15th minute). For each virtual event, the master node obtains a complete power adjustment trajectory containing 15 control interval power values ​​(positive values ​​indicate discharge, negative values ​​indicate charging). After completing the simulations for all 15 virtual events, the master node obtains 15 candidate trajectories. Then, the master node calculates the cumulative absolute deviation of the terminal's state of charge from the preset range (centered on 50% state of charge, fluctuating by 10% above and below, i.e., the allowable range of 40% to 60%) within the entire 15-minute consensus period for each candidate trajectory: for the state of charge at the end of each control interval, if it is below 40%, the deviation is 40% minus the state of charge; if it is above 60%, the deviation is the state of charge minus 60%; otherwise, the deviation is 0; the deviation values ​​of the 15 intervals are summed.The master node selects the candidate trajectory with the smallest cumulative absolute deviation value as the candidate sequence of energy storage power for the terminal. This sequence contains the power value that the energy storage should output in each of the next 15 control intervals (positive value is discharge, negative value is charging).

[0026] An adaptively varying smoothing slope limit, which varies with the state of charge (SOC) segment, constitutes the proposed instruction set. The specific process is as follows: The master node divides the SOC range of each photovoltaic energy storage terminal from 0% to 100% into three consecutive segments: the undervoltage zone (0% to 30%), the steady-state zone (30% to 70%), and the overvoltage zone (70% to 100%). A center point is set within the steady-state zone, corresponding to an SOC of 50%. When the master node reads that the terminal's current SOC is in the undervoltage zone (0% to 30%) or the overvoltage zone (70% to 100%), it directly sets the smoothing slope limit to 0. This indicates that any accelerated change in the terminal's energy storage output power is prohibited within this consensus period; that is, the power change rate must be 0, and in actual execution, only a constant power output is maintained. When the current state of charge (SBC) is in the steady-state region (30% to 70%), the master node first calculates the distance between the current SBC and the steady-state center point (50%). The distance is equal to the absolute value of the current SBC minus 50%. Then, a smoothing slope limit is calculated by inverse linear interpolation based on the distance: a maximum slope limit is preset, set at 5% per second of the terminal's rated power; when the distance is 0, the smoothing slope limit is this maximum slope limit of 5% per second; when the distance is 20% (i.e., the maximum distance from the 30% or 70% boundary to the center point), the smoothing slope limit is 0; for distance values ​​between 0 and 20%, the smoothing slope limit is calculated according to the rule of linearly decreasing from 5% per second to 0, that is, the smoothing slope limit is equal to 5% per second multiplied by 1 (within parentheses) minus the quotient of the distance divided by 20%. The master node appends the calculated smoothing slope limit to the end of the corresponding terminal's energy storage power candidate sequence as a control attribute of the terminal. Finally, the master node summarizes and packages the energy storage power candidate sequences of all terminals and their accompanying smoothing slope limits into a complete set of proposal instructions, ready to be sent to all slave nodes for further verification.

[0027] Please see Figure 2 As shown, in S3, all slave nodes perform double verification on the proposed instruction set. First, they filter out out-of-bounds sequences using a pre-set feasible region template. Then, they aggregate signature fragments from the sequences that pass the template. When the number of approved signatures after aggregation exceeds the Byzantine fault tolerance threshold, the corresponding sequence is locked as a global power control sequence, specifically including: After receiving the proposal instruction set broadcast by the master node, each slave node performs the first verification, which is to filter out the out-of-limit sequences by using a pre-set feasible region template. This feasible region template is a set of power constraints pre-calculated and stored locally for each photovoltaic energy storage terminal.

[0028] Specifically, for each control interval (15 intervals in total, each interval lasting 1 minute), the feasible domain template includes the upper and lower limits of the energy storage power within that interval. The upper limit is the minimum of the following three values: the rated discharge power of the terminal energy storage (in kilowatts), the maximum dischargeable power calculated based on the current energy storage state of charge and the minimum allowable state of charge (set to 20%) (equal to the total energy storage capacity multiplied by the current state of charge minus 20%, then divided by the interval duration of 1 minute to convert to power), and the power safety boundary corrected based on the ultra-short-term photovoltaic prediction value for the next interval (the safety boundary is set to ±20% of the prediction value). The lower limit of power (i.e., the negative of the maximum charging power) is the maximum of the following three values ​​(i.e., the maximum absolute value of the charging power): the negative of the rated charging power of the terminal's energy storage, the negative of the maximum rechargeable power calculated based on the current energy storage state of charge and the maximum allowable state of charge (set to 90%) (equal to the difference between the total energy storage capacity multiplied by 90% and the current state of charge, divided by the interval duration of 1 minute, and taken as a negative value), and the charging safety boundary corrected based on the predicted load value of the next interval (20% of the predicted load value). Each slave node compares the energy storage power candidate sequence corresponding to each terminal in the proposal instruction set with the feasible domain template of the terminal, interval by interval: if the power value of a certain interval in the candidate sequence is greater than the upper limit of the power of the interval or less than the lower limit of the power of the interval, the sequence is determined to be out of limit, the entire proposal instruction set is discarded and the verification process is terminated; if the power values ​​of all intervals are within the template limit, the first verification is passed and the second verification is entered.

[0029] For the proposed instruction set that passes the first verification, all slave nodes perform a signature fragment aggregation process. Each slave node divides the proposed instruction set into multiple consecutive fragments according to the timestamp. The division rule is: each control interval within a consensus cycle is an independent fragment, for a total of 15 fragments. Each fragment contains the energy storage power values ​​of all terminals within that interval. For each fragment, the slave node independently generates a local signature. The specific steps for generating a local signature are as follows: each slave node first reads the original data hash value corresponding to the last fragment of the global power control sequence locked in the previous consensus cycle (i.e., the 15th interval of the previous cycle), and extracts the first 64 bits (binary bits) of the hash value as the salt value; then, it concatenates the original data of the current fragment (i.e., the binary string formed by concatenating the power values ​​of all terminals in the fragment in terminal number order) with the salt value to form an augmented data body; then, it uses the asymmetric private key stored by the slave node itself (using elliptic curve algorithm, key length of 256 bits) to perform digital signature operation on the augmented data body to obtain the local signature of the fragment (a binary string of length of 512 bits). After completing the partial signatures of 15 segments, the slave nodes alternately arrange all the partial signatures with the original data hash values ​​of the corresponding segments in segment order, forming a signature chain. The specific arrangement is as follows: first, the original data hash value of the first segment (calculated from the original data of that segment using the secure hash algorithm SHA-256) is placed; then, the partial signature of the first segment is placed; then, the original data hash value of the second segment is placed; then, the partial signature of the second segment is placed, and so on, until the original data hash value and partial signature of the 15th segment are all placed. The total length of this signature chain is 15 times (256-bit hash + 512-bit signature), which is 11520 bits. Each slave node broadcasts the generated signature chain to all other slave nodes.

[0030] Upon receiving a signature chain broadcast by another slave node, any slave node performs signature aggregation and approval counting. The receiving node first verifies the validity of each local signature sequentially according to the nested relationship of adjacent hashes in the signature chain. The verification method is as follows: For the i-th segment (i from 1 to 15), the receiving node uses the public key of the slave node broadcasting the signature chain (obtained in advance through a key exchange protocol) to decrypt the local signature of the i-th segment, obtaining the decrypted augmented data body; then, it extracts the original data hash value of the i-th segment and the first 64 bits of the original data hash value of the previous segment (i.e., the (i-1)-th segment; when i=1, the previous segment is the truncated hash value at the end of the previous consensus period) as a salt value to recalculate the local augmented data body; if the decrypted augmented data body is completely consistent with the locally calculated augmented data body, the verification passes; otherwise, the signature chain is deemed invalid and discarded. Only when the local signatures of all 15 segments pass verification does the receiving node retain the proposal instruction set corresponding to the signature chain and continue executing the approval counting.

[0031] The specific process of the recognition counting is as follows: For each segment position, the receiving node collects the local signatures of the corresponding segment from all the signature chains broadcast by the slave nodes, and performs bitwise superposition. Bitwise superposition uses a bitwise AND operation: Assume the entire network has... There are several slave nodes (including the receiving node itself), and each slave node contributes a 512-bit local signature to the i-th segment. The receiving node will then... Each local signature undergoes a bitwise AND operation to obtain a 512-bit superposition value. The number of bits that are 1 in this superposition value represents the number of slave nodes that recognize the fragment as valid. The receiving node pre-calculates the Byzantine fault tolerance threshold, calculated as follows: ;in, For the Byzantine fault tolerance threshold, The total number of slave nodes in the entire network (including the receiving node itself), symbol This indicates rounding down to the nearest integer. For example, if... If it equals 7, then 2 / 3 is approximately 4.666, rounded down to 4, then added to 1. The value equals 5, meaning at least 5 slave nodes are required to approve it. The receiving node compares the number of binary bits that are 1 in the superimposed value with a threshold T: if the number is greater than or equal to... If the number of approved signatures for a given segment exceeds the Byzantine fault tolerance threshold, the receiving node locks the entire proposal instruction set as a global power control sequence and stores it in its local log for subsequent step S4. If the number of approved signatures for any segment does not reach the threshold, the proposal instruction set is discarded, and a view change protocol is triggered to re-elect a master node.

[0032] Through the aforementioned dual verification, signature fragment aggregation, and bitwise operation superposition, all slave nodes can reach consensus on the proposed instruction set initiated by the master node without relying on a central trust authority, effectively resisting malicious nodes from forging or tampering with instructions. Specifically, the bitwise operation superposition recognition counting method avoids the computational overhead of comparing signatures one by one, and the Byzantine fault tolerance threshold ensures that even if no more than one-third of the nodes experience Byzantine failures, the system can still correctly lock the global power control sequence.

[0033] In S4, each terminal starts from the current actual output power, divides an asymmetric transition window according to the smoothing slope limit, and approximates the target value of the global power control sequence with a variable step size within the transition window. The hysteresis band is used to constrain the oscillations of the actual tracking trajectory, specifically including:

[0034] After receiving the global power control sequence, each photovoltaic energy storage terminal reads the target power value corresponding to its own terminal's first control interval (i.e., the first minute in the future). Simultaneously, the terminal collects the actual output power value at the current moment, in kilowatts, through the AC power sensor at the grid connection point. The terminal calculates the difference between the current actual output power and the target power value, recording it as the current power deviation. If the current power deviation is positive, it indicates that the actual output power is greater than the target value, requiring a reduction in output, i.e., transitioning towards charging; if it is negative, it indicates that the actual output power is less than the target value, requiring an increase in output, i.e., transitioning towards discharging.

[0035] The terminal divides the transition window into asymmetric sections based on the sign of the power deviation. Two transition durations are preset: a first transition duration of 2 seconds for the positive deviation region and a second transition duration of 4 seconds for the negative deviation region. Starting from the current moment, the terminal determines the end time of the transition window according to the transition duration corresponding to the deviation sign. Within this transition window, the terminal approximates the target power value using a variable step size method. The variable step size is implemented by dividing the absolute value of the current power deviation by 0.1 kW and rounding down to obtain the level number, with a minimum of 1 and a maximum of 10. The approximation step size for each level is equal to the level value multiplied by 0.01 kW per millisecond. In each millisecond interrupt, the terminal calculates the power change to be increased within that millisecond based on the level corresponding to the current remaining deviation: if the remaining deviation is greater than the step size, the step size is increased by one; otherwise, the remaining deviation is increased directly. As the power gradually approaches the target value, the remaining deviation decreases, the level number automatically decreases, and the approximation step size decreases accordingly.

[0036] To prevent oscillations in the actual tracking trajectory due to noise or control lag, the terminal presets a hysteresis band. This hysteresis band is defined by an upper hysteresis threshold and a lower hysteresis threshold: the upper hysteresis threshold is set to +5% of the target power value, and the lower hysteresis threshold is set to -5% of the target power value. When the actual output power crosses the upper hysteresis threshold from below during the approximation process (i.e., changes from less than the target value plus 5% to greater than the target value), the terminal forcibly maintains the current output power unchanged for a stabilization interval set to 50 milliseconds. When the actual output power crosses the lower hysteresis threshold from above (i.e., changes from greater than the target value minus 5% to less than the target value), the terminal is also forcibly kept unchanged for 50 milliseconds. After the stabilization interval ends, the terminal resumes the variable step size approximation process. If the power crosses the same threshold again within the stabilization interval, the timing restarts for 50 milliseconds. Through the aforementioned hysteresis band, the actual output power smoothly transitions to the target value.

[0037] In S5, during the transition execution period, when the energy storage state of charge deviates from the preset trajectory by more than the micro-consensus trigger threshold, adjacent terminals initiate a rapid local vote to correct subsequent power settings and continue execution. Specifically, this includes:

[0038] During the transition approximation process in step four, each photovoltaic energy storage terminal monitors its own energy storage state of charge (SOC) in real time and compares it with a preset SOC trajectory in the locked global power control sequence. The preset trajectory is a theoretical SOC change curve pre-calculated using the ampere-hour integral method based on the power values ​​of the terminal in each control interval within the consensus period. Every 0.5 seconds, the terminal calculates the absolute value of the deviation between the actual SOC and the preset trajectory at the same moment and pre-sets a micro-consensus trigger threshold, which is fixed at 5% of the absolute value of the SOC. When the absolute value of the deviation exceeds 5%, the terminal determines that a fast local vote needs to be initiated.

[0039] The terminal initiating the vote is divided into three zones based on the magnitude of the deviation: the mild zone (absolute deviation greater than 5% but less than or equal to 8%), the moderate zone (greater than 8% but less than or equal to 12%), and the severe zone (greater than 12%). The terminal only generates a voting request when the deviation falls within the moderate or severe zone. The specific process for generating a voting request is as follows: The terminal determines the deviation direction. If the actual state of charge is higher than the preset trajectory, the deviation direction is positive, indicating a need to reduce charging or increase discharging; if it is lower than the preset trajectory, the deviation direction is negative, indicating a need to increase charging or reduce discharging. Based on the sign of the deviation direction, the suggested correction amount is set to a fixed percentage of the power value at the corresponding moment in the current global power control sequence: when the deviation direction is positive, the correction amount is -10% of the current power value (i.e., a 10% reduction in power); when the deviation direction is negative, the correction amount is +10% of the current power value (i.e., a 10% increase in power). The terminal encodes the deviation magnitude (expressed as a percentage) together with the suggested correction amount into a binary request body. The request body is 16 bits long, with the first 8 bits recording the deviation magnitude value (integer part) and the last 8 bits recording the suggested correction amount value (signed and represented using two's complement).

[0040] The initiating terminal broadcasts its voting request only to its one-hop reachable neighboring terminals in the communication topology. During system initialization, each terminal builds a local adjacency table by exchanging network addresses and communication ports. This adjacency table records the IP addresses and port numbers of all neighboring terminals directly physically connected to it (i.e., one-hop reachable, without requiring forwarding from other terminals). The initiating terminal queries its own adjacency table to obtain a list of neighboring terminal addresses. Then, it encapsulates the 16-bit binary request body into a User Datagram Protocol (UDP) data packet and sends it sequentially to each address in the list as an unacknowledged, one-way datagram. One-way datagrams do not require acknowledgment messages from the receiver to reduce communication latency.

[0041] Upon receiving a voting request, each neighboring terminal parses the deviation magnitude and suggested correction amount, and independently makes a voting decision based on the sign of its own state of charge deviation from the preset trajectory. The neighboring terminal first calculates the sign (positive or negative) of its own state of charge deviation relative to the same preset trajectory at the current moment. If its own deviation sign is the same as the deviation direction in the initiating terminal's request (i.e., both require reducing charging or both require increasing charging), it casts a vote in favor; if the signs are opposite, it casts a vote against. The neighboring terminal appends its voting result (1 for favor, 0 for dissent) to its local timestamp (an integer value accurate to milliseconds), encapsulates it into a response data packet, and returns it to the initiating terminal.

[0042] After sending a voting request, the initiating terminal starts a timeout timer with a timeout period of 50 milliseconds. During the timeout period, the initiating terminal collects response packets returned by all neighboring terminals. Let the total number of neighboring terminals be M, the initiating terminal counts the number of affirmative votes received. When the number of affirmative votes is greater than M multiplied by 2 / 3 (i.e., exceeding 2 / 3 of the total number of neighboring terminals), the initiating terminal determines that the vote has passed. At this time, the initiating terminal adds the suggested correction amount (positive or negative 10% of the current power value) from the request body to the remaining unexecuted portion of the current global power control sequence. Specifically, from the current moment until the end of this consensus period, the power setting value of each remaining control interval is multiplied by (1 plus the correction ratio), where the correction ratio is 0.1 or negative 0.1. If the added power value exceeds the power limit in the feasible domain template pre-stored by the terminal, it is automatically pruned to the limit boundary. After forming a new subsequent power setting value, the terminal continues execution according to the transition method in step S4. If the vote fails (less than 2 / 3 of the votes are in favor) or if insufficient response is received within the timeout period, the initiating terminal will not modify the power setting, will continue to operate on the original trajectory, and will wait for the next 0.5-second detection cycle to determine whether to trigger micro-consensus. Through the above-mentioned rapid local voting, adjacent terminals can collaboratively correct local state of charge deviations with extremely low communication overhead and latency, thereby maintaining the overall energy balance of the system without relying on the master node.

[0043] The working principle of this invention is as follows: Each photovoltaic energy storage terminal collects local real-time power, state of charge, ultra-short-term forecast, and load data to form an initial data packet; the elected master node uses counterfactual rolling deduction to generate a candidate sequence of energy storage power for each terminal within the future consensus period, and adds a smooth slope limit that adapts to the state of charge segment to form a proposal instruction set; all slave nodes sequentially perform feasible domain template filtering and signature fragment aggregation dual verification on the proposal instruction set, and when the number of recognized signatures exceeds the Byzantine fault tolerance threshold, the sequence is locked as a global power control sequence; each terminal starts from the current actual power, divides an asymmetric transition window according to the smooth slope limit, approaches the target value with a variable step size within the window, and uses the hysteresis band to suppress oscillations; when the state of charge deviates from the preset trajectory and exceeds the trigger threshold during execution, adjacent terminals initiate a fast local vote, and the passed correction amount is superimposed on the remaining sequence to form a new set value before continuing execution.

[0044] The foregoing has provided a detailed description of one embodiment of the present invention, but this description is merely a preferred embodiment and should not be construed as limiting the scope of the invention. All equivalent variations and modifications made within the scope of the present invention should still fall within the scope of the present invention.

Claims

1. A multi-timescale scheduling method for a photovoltaic energy storage system, characterized in that, Includes the following steps: S1: Each photovoltaic energy storage terminal collects local real-time photovoltaic power, energy storage state of charge, ultra-short-term photovoltaic prediction sequence and load measurement data to form an initial state data packet; S2: The elected master node generates a candidate sequence of energy storage power for each photovoltaic energy storage terminal in the future consensus period based on the initial state data packet using counterfactual rolling deduction, and adds a smooth slope limit that adapts to the state of charge segment to form a proposal instruction set. S3: All slave nodes perform double verification on the proposed instruction set. First, they filter out the over-limit sequences through the preset feasible domain template, and then they aggregate the signature fragments of the sequences that pass the template. When the number of recognized signatures after aggregation exceeds the Byzantine fault tolerance threshold, the corresponding sequence is locked as a global power control sequence. The feasible domain template is a set of power constraints that is pre-calculated and stored locally for each photovoltaic energy storage terminal. S4: Each terminal starts from the current actual output power, divides an asymmetric transition window according to the smooth slope limit, and approaches the target value of the global power control sequence with a variable step size within the transition window, and uses the hysteresis band to constrain the oscillation of the actual tracking trajectory. S5: During the transition execution, when the energy storage state of charge deviates from the preset trajectory by more than the micro consensus trigger threshold, adjacent terminals initiate a fast local vote to correct the subsequent power setting value and continue execution; The energy storage power candidate sequence specifically includes: Based on the initial state data packet, the master node presets multiple virtual power drop events at different times within the future consensus period for each photovoltaic energy storage terminal. For each event, it independently and continuously optimizes the power adjustment trajectory for subsequent periods. Then, it selects the trajectory that minimizes the deviation of the terminal's state of charge from the preset band as the candidate sequence of energy storage power for the photovoltaic energy storage terminal.

2. The multi-timescale scheduling method for a photovoltaic energy storage system according to claim 1, characterized in that, The proposed instruction set specifically includes: The master node divides the state of charge of each photovoltaic energy storage terminal into an undervoltage region, a steady-state region, and an overvoltage region. When the state of charge is in the undervoltage region or the overvoltage region, the smoothing slope limit is set to zero to prevent accelerated power change. When in the steady-state region, continuous slope limits are calculated by inverse linear interpolation based on the distance from the state of charge to the steady-state center point, and appended to the end of the energy storage power candidate sequence of the corresponding terminal to form a proposal instruction set.

3. The multi-timescale scheduling method for a photovoltaic energy storage system according to claim 1, characterized in that, The process of aggregating signature fragments specifically includes: Each slave node will divide the proposed instruction set filtered by the feasible domain template into multiple consecutive segments according to the timestamp, generate a local signature for each segment independently, and then concatenate all the local signatures into a signature chain in the order of the segments and broadcast it to the other slave nodes. After receiving the signature chain broadcast by other nodes, any slave node performs bitwise operations to superimpose the local signatures at the same segment position. When the number of recognized signatures corresponding to the complete proposal instruction set after superposition exceeds the Byzantine fault tolerance threshold, the proposal instruction set is locked as a global power control sequence.

4. The multi-timescale scheduling method for a photovoltaic energy storage system according to claim 3, characterized in that, The step of concatenating all local signatures into a signature chain in fragment order specifically includes: Each slave node appends a truncated hash value from the end of a one-cycle global control sequence to each fragment as a salt value, and then uses its own stored asymmetric private key to sign the concatenation of the fragment and the salt value to obtain a local signature of the fragment. All local signatures are arranged alternately with the original data hash values ​​of the corresponding fragments in fragment order to form a signature chain that can be verified level by level, and then broadcast to the remaining slave nodes; The receiving node verifies the validity of each local signature in turn according to the nesting relationship of adjacent hashes in the signature chain, and retains the proposal instruction set corresponding to the signature chain only when all verifications pass.

5. The multi-timescale scheduling method for a photovoltaic energy storage system according to claim 1, characterized in that, The step-size approximation of the target value of the global power control sequence within the transition window specifically includes: Each terminal divides the difference between the current actual output power and the target value into a positive deviation region and a negative deviation region, allocates a first transition time to the positive deviation region, and allocates a second transition time greater than the first transition time to the negative deviation region; Within each transition window, the approximation step size is adjusted at equal intervals according to the magnitude of the real-time power deviation, so that the power change decreases as the deviation decreases. Simultaneously, upper and lower rise difference thresholds are preset for the actual tracking trajectory. When the power value crosses either threshold, the current output is forced to maintain a stable interval before continuing to move towards the target value.

6. The multi-timescale scheduling method for a photovoltaic energy storage system according to claim 1, characterized in that, S5 specifically includes: Terminals that deviate from the preset trajectory generate a voting request, including the direction of deviation and a suggested correction amount, based on the extent of the deviation in the state of charge. This request is then broadcast only to one-hop reachable neighboring terminals in the communication topology. After receiving the request, each adjacent terminal independently casts a vote of approval or disapproval based on the deviation sign between its own state of charge and the preset trajectory, and returns the vote value with a local timestamp attached. Once the initiating terminal receives more than two-thirds of the votes from its neighboring terminals, it adds the correction amount to the remaining unexecuted portion of the current global power control sequence to form a new subsequent power setting value.

7. The multi-timescale scheduling method for a photovoltaic energy storage system according to claim 6, characterized in that, The broadcast only to neighboring terminals reachable by one hop in the communication topology specifically includes: Terminals that deviate from the preset trajectory will be divided into mild, moderate and severe zones based on the absolute value of the excess state of charge. A request will be triggered only when the terminal is in the moderate or severe zone. The correction amount is set to a fixed percentage increment or decrement of the value at the corresponding moment of the current power control sequence, depending on whether the deviation direction is positive or negative, and is encoded into a request body along with the deviation magnitude; The system obtains a list of neighboring terminal addresses that can be reached in one hop by querying the locally maintained adjacency table, and then sends the request body in the form of an unacknowledged one-way datagram to each address in the list in sequence.

Citation Information

Patent Citations

  • Distributed optical storage micro-grid control system based on large model and energy management method

    CN120566532A

  • Micro-grid optimization scheduling method and system for distributed energy

    CN121727000A