blockBooleanTable
Generate a Boolean output signal based on a vector of time instants
Extends from Interfaces.partialBooleanSO (Partial block with 1 output Boolean signal).
Information
The Boolean output y is a signal defined by parameter vector table. In the vector time points are stored. The table interpolation has the following properties:
- At every time point, the output y changes its value to the negated value of the previous one.
- Values outside of the table range, are computed by
extrapolation according to the setting of parameter extrapolation:
extrapolation = 1: Hold the startValue or last value of the table, if outside of the table scope. = 2: Extrapolate by using the derivative at the first/last table points if outside of the table scope. (This setting is not suitable and triggers an assert.) = 3: Periodically repeat the table data (periodical function). = 4: No extrapolation, i.e. extrapolation triggers an error - Via parameter shiftTime the curve defined by the table can be shifted in time. The time instants stored in the table are therefore relative to shiftTime.
- If time < startTime, no interpolation is performed and false is used as ordinate value for the output.
The precise semantics is:
if size(table,1) == 0 then y = startValue; else // time < table[1]: y = startValue // table[1] ≤ time < table[2]: y = not startValue // table[2] ≤ time < table[3]: y = startValue // table[3] ≤ time < table[4]: y = not startValue // ... end if;
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Table data definition | |||
| SI.Time[:] | table | {0, 1} | Vector of time points. At every time point, the output y gets its opposite value (e.g., table={0,1}) |
| Table data interpretation | |||
| Boolean | startValue | false | Start value of y. At time = table[1], y changes to 'not startValue' |
| Modelica.Blocks.Types.Extrapolation | extrapolation | Modelica.Blocks.Types.Extrapolation.HoldLastPoint | Extrapolation of data outside the definition range |
| SI.Time | startTime | -Modelica.Constants.inf | Output = false for time < startTime |
| SI.Time | shiftTime | 0 | Shift time of table |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Blocks.Interfaces.BooleanOutput | y (from partialBooleanSO) | Connector of Boolean output signal |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| CombiTimeTable | combiTimeTable | ||
| Modelica.Blocks.Math.RealToBoolean | realToBoolean |
Contents
| Name | Description |
|---|---|
| Check if table is valid |