for_developers:signal_live_monitoring
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
for_developers:signal_live_monitoring [2018/04/18 21:17] – [Overview] graf | for_developers:signal_live_monitoring [2018/05/31 12:03] (current) – removed graf | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Live Monitoring of Signals ====== | ||
- | ===== Overview ===== | ||
- | With the following method a signal can be monitored while the application is running. | ||
- | |||
- | But this method should be used with caution, because it can degrade the real time performance of the system. For this reason only one or two signals can be monitored at a time, if the real time performance is needed. | ||
- | |||
- | To keep the real time performance on an acceptable level, // | ||
- | |||
- | ===== Implementation ===== | ||
- | The following example adds a periodic task which once each 1000 times outputs two attributes: | ||
- | * the maximum period of the task | ||
- | * a signal from the control system | ||
- | |||
- | <code cpp> | ||
- | ... | ||
- | |||
- | eeros:: | ||
- | |||
- | td.monitors.push_back([& | ||
- | static int count = 0; | ||
- | |||
- | if (++count < 1000) return; | ||
- | count = 0; | ||
- | |||
- | eeros:: | ||
- | c.reset(); | ||
- | std:cout << "CS: period max: " << setw(7) | ||
- | << " | ||
- | << std::endl; | ||
- | }); | ||
- | |||
- | eeros:: | ||
- | |||
- | ... | ||
- | </ |
for_developers/signal_live_monitoring.1524079067.txt.gz · Last modified: 2018/04/18 21:17 (external edit)