Purchased in 1999 by UMD's Computer Science department
Specs: Pentium III, 64MB RAM,
Lots of neat specialty hardware
Objectives
Drive the robot over wifi
Keep original hardware
Don't break things!
Methods
Hardware improvements
Kernel/driver tweaks
Software protocol improvements
Methods – Software
#!/usr/bin/python3
import time
from threading import Timer
last_cmd_received = time.time()
WATCHDOG_THRESHOLD = 0.100 # seconds
# Runs every (100 plus the time elapsed
# in the function)ms
def run_watchdog():
elapsed = time.time() - last_cmd_received
if elapsed > WATCHDOG_THRESHOLD:
set_robot_drive(0,0)
Timer(0.1,run_watchdog).start()
def on_cmd(cmd):
global last_cmd_received
last_cmd_received = time.time()
...
if __name__ == "__main__":
run_watchdog()
server.run_forever()