RPICT Minimum Output Rate: Difference between revisions
No edit summary |
|||
Line 24: | Line 24: | ||
The minimum output rate is given by | The minimum output rate is given by | ||
[[File:Screenshot 2023-11-10 19-58-58.png]] | [[File:Screenshot 2023-11-10 19-58-58.png | 450px]] | ||
Where | |||
* Ntasks is the number of channel of the number of node the mcu has to compute. | |||
* Ncycle is the number of cycles used to compute the RMS value. | |||
* Frequency is the expected frequency of the signal. (This is usually 50 or 60Hz). |
Revision as of 20:01, 10 November 2023
Why is there a minimum output rate?
The micro-controller performs task once after the other. It must complete the sampling of all configured channels before sending another serial output out.
The example below show the task scheduling where 3 channels are computed. The output rate must be larger than the time it takes to sample all channels.
What happen if the output rate is too low
If a low output rate is set the microcontroller will respect what is configured and output serial data at the given rate. The output stream will show duplicate values in subsequent output.
Take a look at the example below with a RPICT8 card sampled at 2 seconds where the minimum output rate is 3.2 seconds.
Some of the duplicated values are circled in red.
In this case because the micro-controller is not able to sample all channels it outputs the result in memory twice for some of them.
Calculating the minimum output rate
The minimum output rate is given by
Where
- Ntasks is the number of channel of the number of node the mcu has to compute.
- Ncycle is the number of cycles used to compute the RMS value.
- Frequency is the expected frequency of the signal. (This is usually 50 or 60Hz).