View Single Post
  #4   Spotlight this post!  
Unread 03-04-2010, 11:56
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,065
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: Feeding the Watchdog in "Periodic Tasks"

Quote:
Originally Posted by Mark McLeod View Post
Personally, I wouldn't put Watchdog handling in a Periodic task unless you really understand everywhere the Watchdog is being used and why.
Periodic tasks do not typically require a Watchdog at all.

The main error I see is that using the Watchdog in a Periodic Task generally invalidates all other uses of the Watchdog in the parallel Auto or Teleop tasks.
Parallel Watchdogs just tend to preempt each other.

Generally, you want the Watchdog to be handled in a single critical path.
I agree with Mark on this one.

If you are concerned about the safety of a periodic task, then monitor its health from a task (like TeleOP or Auto) which is protected by watchdog.

For example, increment a global variable in the periodic task, and test the variable in TeleOP (or Auto). If the variable stops incrementing or is not incrementing at the expected rate, then trip the watchdog within TeleOp (or Auto).


~
Reply With Quote