draft: Do not process PDOs whose work counter is invalid
This is a first draft for fixing the problem that potentially invalid frames have been processed
The problems imply:
- Assessing errors in slaves etc might be flawed if wkc is not valid
- PDOs might be garbage, so don't calculate sensor values or run controllers etc.
This draft does NOT WORK though, since the realtime loop is inherently flawed in the implementation:
Current realtime loop looks something like this:
update sensors
update controllers
update actuators
bus send
bus receive
update timestamps etc...
repeat
instead of (as one would expect and as implemented in the new realtime unit):
update timestamps etc...
bus receive
update sensors
update controllers
update actuators
bus send
repeat
So we cannot easily skip an iteration with this design. We need to further investigate how we can do this elegantly without having to guard each update_whatever()
call.
Edited by Christian Dreher