These settings deal with options specific to theparallel string control logic present on Orion BMS product lines. When 2 or more equal voltage strings need to be combined together to form a higher capacity DC bus, parallel string functionality is used to ensure that the strings are engaged safely and consistently together, and that the overall stack metrics are being communicated properly to the end application.
When multiple nodes are configured in parallel, one of the Orion BMS controlled strings will be configured as the ?master? node while the remaining parallel strings (each with their own BMS installed) are configured as ?slave? nodes. Each of the slave BMS nodes are responsible for directly monitoring the pack they are connected to, but also for sending relevant information about the battery pack to the master node.
The master node is responsible both for monitoring the local pack information that it is directly connected to, but also for receiving information from the available slave nodes. Based on this information, the master node is able to compute and provide the following values:
The combined (cumulative) battery current from all connected strings: This is effectively the summation of the average current from all the connected strings. The overall pack current limits The master node receives the charge and discharge current limits from each connected slave pack and calculates the overall current limits for the entire battery stack as a whole.
The overall pack state of charge: The master can be configured to either report the highest, lowest or average state of charge of all connected battery strings.
Cumulative error status: In the event that one or more connected strings encounters a fault condition, the master is able to provide a cumulative signal to represent this.
Active DC bus voltage: The master node is continuously aware of what the overall stack voltage is, even if the master node itself is not actively paralleled with other strings in the pack. This value can be sent to the application to represent the instantaneous DC voltage of the battery stack.
Highest and lowest temperature values: This represents the overall highest and lowest temperatures measured in any of the active strings (including the master node).
Total number of active strings: This can be used to determine how many battery strings are actively connected (engaged) in parallel.
In addition to calculating the above values / parameters, the master node is also responsible for interfacing with the main application. It can do this by a number of ways:
The master node is able to transmit the combined (cumulative) parameters listed above via CANBUS to applications that support such communication using the existing built-in custom CANBUS message capabilities. The master node can also interface with the application by using the three primary relay enable outputs (Charge Enable, Charger Safety and Discharge Enable). When configured as a master node, these relay enable outputs are reflective of the entire combined battery stack as a whole (meaning if the Charge Enable relay output switches off on any one string the master Charge Enable will also switch off).
Besides just calculating specific information and controlling the application, the master node is also responsible for determining when / if slave string nodes are permitted to connect (engage) with the DC bus by looking for a number of criteria.
These criteria include the following conditions: Verifying that the slave pack voltage is close to the active DC bus voltage to prevent large inrush current if the slave node were to be engaged (the exact maximum range it is looking for is programmable). Verifying that the slave pack is free from critical errors or faults that could compromise behavior or function.
The slave node itself will also validate that the above criteria are satisfied before requesting permission from the master node to join the DC bus. Both the slave node itself and the master node must agree in order for the slave node to engage. Once the negotiation is successfully completed, the slave will engage its contactor to join the DC bus.
APPLICATION NOTE: In applications where a shunt-trip breaker style connection is used instead of a traditional contactor, the negotiation must complete before the shunt trip breaker is manually engaged. If the breaker is manually switched on before permission is granted, the BMS will immediately terminate the breaker and remove itself from the DC bus.
During operation, if either the master or the slave node itself detects a problem (such as significant deviation in voltage from the main DC stack or some other critical fault code) the node will be immediately disconnected and removed from all cumulative calculated values. Only actively engaged (paralleled) strings are included in cumulative parameters (such as combined SOC, current limits, average current, etc).
In order to meet application specific requirements for power output or runtime capacity, the master node can be configured to require a specific number of active strings in order to engage the application. If used, this means that the master would prevent the application from activating until a minimum number of strings are brought online (paralleled). Additionally, if too many strings disconnect during normal operation it will also terminate the application (all three primary relay outputs on the master are switched off and the cumulative current limits are both held at 0A). This feature can be disabled (meaning that as long as at least 1 string is present then the application can be used).
Unit type: This allows the user to designate the node either as a master or slave string (selecting ?None? disables parallel string functionality for this node). It is very important that only ONE master be configured in an application. Having multiple master units on the same CANBUS network will produce erratic results.
Parallel String Maximum Delta Voltage: This parameter refers to the maximum deviation allowed between the main DC bus (that is, the voltage of the combined string[s]) and this particular packs voltage. If the deviation (delta) is too great, the pack will not be allowed to engage. For example, if the main DC bus is at 50vDC and this parameter is set to 3.0v, this node?s pack voltage would have to be less than 53v and greater than 47v in order to be allowed to engage. This feature helps protect against excessive current transfer when the packs engage with each other if the delta voltage is too great which can cause significant damage.
CRITICAL NOTE: In applications that use shunt trip breakers instead of contactors, the BMS units themselves CANNOT actually prevent the strings from initially engaging. They can cause the strings to immediately disconnect after the breaker is flipped on, but since shunt trip breakers are manually activated switches, once the operator engages the breaker the BMS itself cannot prevent the string from connecting to the main DC bus (besides tripping off again immediately, but by that point there may have already been extensive current transfer). Because of this, the operator must first manually verify that conditions are safe to engage before engaging the shunt breaker switch. Data provided by the BMS can be used in this decision process.
Parallel String SOC Algorithm: This one is pretty straight forward. The master can be configured to either use the lowest, the highest or the average SOC from all the connected strings when transmitting data to the CAN. This option only is relevant to the master (slaves just ignore it and we'll probably hide it entirely in the utility unless master is selected in the future).
Require a minimum of X strings in order to operate: This allows the master to require that a certain number of strings be present (paralleled / engaged) before the application is allowed to activate. For example, if there is an application with 6 strings in parallel in a situation where as few as 3 could still provide necessary power capabilities, by setting this value to "3' in that instance, the master would keep the application running even if 3 of the 6 strings dropped out (or were removed, etc). If a 4th string dropped out (meaning only 2 were available total) then it would suspend the outputs and switch the application off. Setting this parameter to ?1? or ?0? effectively allows the application to operate whenever any strings are available. Note that the master itself counts as a string (provided that it is engaged with the DC bus).
Master node uses combined parallel string values for 0-5v output signals: The BMS has 3x 0-5v analog outputs used to represent signals such as State of Charge, Charge Current Limit and Discharge Current Limit. If this option is enabled, these outputs will be reflective of the combined full stack (cumulative of all connected strings). Otherwise, these output signals will be reflective of just the master battery pack itself.
Allow slave nodes to drop out if Discharge Enable shuts off: In most cases it is desirable for all strings to remain engaged as much as possible and to stop the application if any one string gets dangerously close to their limits. This option allows for the master to ?boot out? or disconnect slave strings that are underperforming or reaching their operational limits and therefore are limiting or restricting the application performance as a whole. This may be useful if the application is trying to use every possible amount of energy in all strings to maximize runtime.
Only allow primary outputs to engage on master node alone: In situations where the master role may be floating (see Auto-discovery Role for details), it may be beneficial to only have the unit that is elected the role of master use its primary outputs. This would allow all connected BMS units to connect their primary relay output pins to a given contactor (or contactors), then only the unit actively running as master would activate them. These should not be considered functional safety outputs in such an arrangement, as it may be possible for 2 or more units to assume the role of master at once in the event of a communication bus failure. They can be used for auxiliary functions, such as drive enable or equivalent. If this option is not enabled, the BMS will activate its outputs as normal regardless of what parallel string role it has assumed.
Master gives up role if a critical fault is encountered: In certain conditions, it may be beneficial for the master to give up its role if its string becomes disabled. This option will force it to become a slave if the output is forced off due to a critical fault or error, and a new master will be elected. Note that a disconnected or disengaged master can still control other slave nodes even if its string is not active (unless this option is enabled).
Master activates lowest voltage string first when in Charge Mode: By default, the master will attempt to engage itself first on the DC bus when it powers up. This may not be ideal for all conditions though. If for example there are 1 or more strings that are substantially lower in voltage than the master and the application is prepared to start charging, it is more beneficial to engage the lowest charged string first, so that there are no orphaned or dangling strings that cannot be brought into circuit (if the higher charged string were engaged first, the lower voltage ones may not activate until the application switches to discharge). Likewise, when not in charge mode the BMS will activate the higher charged strings first for the same reason.