﻿ cFos eMobility - cFos Charging Manager - formulas

# cFos Charging Manager - formulas

The cFos Charging Manager allows the dynamic evaluation of formulas. This functionality is available for a counter of the "Expression" type and for loading rules of the "Formula" type.

So you can set up meters that calculate values from other meters or wall boxes and keep them ready and display them. The charging rules can also dynamically calculate the charging current using formulas and also access meters and wall boxes (including meters of the "Expression" type).

The following operations are possible with the formulas:
 `+ - * /` Addition, subtraction, multiplication, division `^` Power calculation, e.g. 10 ^ 2 = 100 `min(x,y)` Minimum of x and y, more than 2 arguments possible `max(x,y)` Maximum of x and y, more than 2 arguments possible `abs(x)` Absolute amount of x, e.g. abs (-2) = 2 `sqrt(x)` Square root of x

The following logical expressions are also possible:

`==` (equal to) `!=` (not equal to), `<` (less than), `<=` (less than or equal to), `>` (greater than), `>=` (greater than or equal to) `!` (not), `||` (logical or), `&&` (logical and) `?` (Conditional operator, `x ? y : z`, returns y if x is true, otherwise z)

`M1.current >= 6500 ? M1.current : 0` off the current depending on the conditions: `M1.current >= 6500 ? M1.current : 0` supplies the current from M1 if it is greater than 6.5A and 0 otherwise, which pauses charging.

The following names are possible:
 Mx Counter with device ID x, e.g. M1 Ex EVSE with device ID x, e.g. E1

It is also possible to access virtual meters such as solar surplus, purchased electricity or "Power avail. For EVSEs" (power available for wall boxes) by setting up the meter and then using the corresponding device ID in the formula.

Individual values of the devices can then be accessed using a point. These are called as follows:
 current_l1 Phase 1 current in mA current_l2 Phase 2 current in mA current_l3 Phase 3 current in mA current Current of the current phase in mA (with charging rules, the Charging Manager queries all phases one after the other; with meters of the "Expression" type, the respective phase to which the formula refers applies. If you have specified a formula for "Current L1", you can omit the fields for stream L2 and L3. Then the formula for stream L1 is used) power_va Current power in watts/VA (depending on the meter type, apparent power or real power can be supplied here) import_wh Related energy in Wh export_wh Energy fed in in Wh German The time since the last last update (in seconds)

##### example
 M1.current_l1 Current of meter M1, phase 1 E2.import_wh Used Wh of the EVSE E2 E3.power_va Current charging power of E3

If you use the formulas for a counter of the "Expression" type, you can omit the device ID. Then the field names refer to this meter, eg 'power_va' is then the power of this meter in watts/VA. With 'dt' you can implement a few additional functions, for example in a counter of the "Expression" type:

• As a formula for 'import_wh': `import_wh + M1.power_va * dt / 3600` updates the drawn energy based on the power during the last update time
• As a formula for 'power_va': `(power_va * (20 - dt) + M1.power_va * dt) / 20` smooths the power over the last 20 seconds.

##### Application example

You would like to additionally limit the charging current with regard to a consumption meter in an apartment. To do this, you can set up `16000 - M1.current`
M1 is the meter that measures the consumption of the home. The charging manager first tries to provide the EVSE with the maximum power for the house connection power, but then limits this to 16A minus the consumption of the apartment.