WORK-E with WatchDog


This is the current block diagram of WORK-E robot.  I'm working on a new service called WatchDogTimer.  A WatchDogTimer is a common software concept for critical monitoring. This wikipedia article describes it in detail. The server part of the WatchDogTimer sits on a raspi and expects client checkpoints to check in at regular intervals.  If the clients do not check in within a certain amount of time, the Raspi will open a relay which cuts all the power to WORK-E (including the motors)

2 other instances of MRL are part of this system.  They both run checkpoint clients. One is on an onboard computer (Computer 2) and the other is on a remote instance controlled by a human (Computer 1).  Computer 2 is responsible primarily for direct control of the motors and autonmous mode.

When WALL-E runs by tele-operations from Computer 1, the WatchDogTimer will expect messages at a regular interval from both Computer 1 and Computer 2.  Failure to recieve messages from Computer 1 means a break in comunication from the teleoperator.  Failure from Computer 2 means the direct control of motors is blocked.  Either case the RasPi running MRL will open the relay and cut the power.

I have already had the opportunity of experiencing both types of outages.  Once when Computer 2's lid closed and it was configured to hibernate (and then rolled into a fence).  And once when the joystick dongle got pulled out of Computer 1.

There will be messages to re-enable the WatchDogTimer so once communication is re-established WORK-E can continue on its way...

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Kakadu31's picture

Hi GroG hows your progress,

Hi GroG hows your progress, maybe Work-E can get a snow-showel on his front to help clearing paths in winter? Do you use the cellphone on your pocket or did he got an own one.
One wuestion, why is the powercut relay done by a separate raspberry instead by the controlling pc. The pc should be able to track the loss of connecton itself or not?

GroG's picture

Hi Kakadu, progress was

Hi Kakadu,
progress was going pretty well,  Linux no longer stops when the laptop gets closed :)
However, right at the moment I don't have time - stuff to pack, parties to prepare for, gifts to make :P

I'm asking Santa for a inexpensive refurbished smartphone.  It's amazing how many sensors are packed in such a small space. Compass, accelerometer, light, temp AND it comes with its own connectivity - wifi .. even mobile if a subscription is bought.  Until he gets his own, I'll lend him mine for experimentation.

2 reasons why seperate raspberry pi.

  • Statistically, its less likely that both systems fail at the same time, instead of just one
  • "Separation of Concerns" - The purpose of the laptop is to be a normal brain. The ONLY purpose of the raspi is to concern itself with safety.