|
|
# Overview
|
|
|
All three simulink blocks use the same underlying logic in the RCG, they differ in how much control they expose to connected model logic.
|
|
|
|
|
|
Generally speaking the `cdsFilt*` blocks take a floating point value as input then processes that input according to the blocks configuration. The block is configured at run-time through associated EPICS channels, often controlled through medm screens. Configuration can be complex with a number of options that can be combined to achieve the desired output. These blocks contain 10 infinite impulse response (IIR) filters, but the filter coefficients can be enabled/disabled so it may only be a pass through under some configurations.
|
|
|
|
|
|
### Writable EPICS Configuration
|
|
|
|
|
|
| Channel Suffix | Function | Separate Enable/Disable Bit |
|
|
|
| `_OFFSET` | An offset that will be added to the sum of the input and excitation in the module.. | Yes |
|
|
|
| `_GAIN` | A value that will be multiplied but the output of the 10 filters in the module. | No |
|
|
|
| `_TRAMP` | The time (in seconds) that the module will ramp its output over. TODO: on a new config? | No |
|
|
|
| `_LIMIT` | An upper value that output of the module will be limited to. | Yes |
|
|
|
| `_SW1` | Momentary filter switch selections, lower 16 bits | No |
|
|
|
| `_SW2` | Momentary filter switch selections, upper 16 bits | No |
|
|
|
| `_RSET` | Momentary channel used to clear filter histories or (re)load coefficients. [bit 0 -> load coef, bit 1 -> reset history](https://git.ligo.org/cds/software/advligorts/-/blob/master/src/include/fm10Gen_types.h#L48) | No |
|
|
|
|
|
|
|
|
|
### Read Only EPICS Configuration
|
|
|
| Channel Suffix | Function | Sample Rate |
|
|
|
| ----------- | ------------------------------------------- |
|
|
|
| `_INMON` | The latest value inputted to the module. (In1 on medm) | 16 Hz |
|
|
|
| `_EXCMON` | The latest value from the excitation input to the filter. (EXC on medm) | 16 Hz |
|
|
|
| `_OUTMON` | The latest value of the filter, after all processing. (OUT on medm) | 16 Hz |
|
|
|
| `_OUT16` | The latest value of the filter, after all processing and filtered/decimated to 16 Hz. TODO: Add filter description (OUT on medm) | 16 Hz |
|
|
|
| `_OUTPUT` | The latest value of the filter, after all processing, taking into account filter output setting. `_OUTMON` will always have the calculated output, this channel will be 0 if the module's output is configured to be off. | 16 Hz |
|
|
|
| `_SW1R` | | 16 Hz |
|
|
|
| `_SW1R` | | 16 Hz |
|
|
|
| `_SW1S` | | 16 Hz |
|
|
|
| `_SW1S` | | 16 Hz |
|
|
|
| `_Name00` - `_Name09` | The names of the individual filters, set when coefficients are loaded from the filter file. | 16 Hz |
|
|
|
|
|
|
|
|
|
|
|
|
### cdsFilt
|
|
|
|
|
|
|
|
|
### cdsFiltCtrl
|
|
|
|
|
|
### cdsFiltCtrl2
|
|
|
|