From e4f01fb263e63124fbd4c08390a102cc4af02185 Mon Sep 17 00:00:00 2001 From: Ryan Park Date: Sat, 2 Jul 2022 13:59:36 -0400 Subject: [PATCH] controlSystem --- .../Control System/controlSystem.py | 118 ++++++++++++++++++ 1 file changed, 118 insertions(+) create mode 100644 control_systems/Control System/controlSystem.py diff --git a/control_systems/Control System/controlSystem.py b/control_systems/Control System/controlSystem.py new file mode 100644 index 0000000..4a34724 --- /dev/null +++ b/control_systems/Control System/controlSystem.py @@ -0,0 +1,118 @@ +import threading +import time + +class IMU: + def __init__(self, num): + self.val = num + +class ping: + def __init__(self, num): + self.val = num + +class mode: + def __init__(self, num): + self.val = num + +class jointAngles: + def __init__(self, num): + self.val = num + +class position: + def __init__(self, num): + self.val = num + +class velocity: + def __init__(self, num): + self.val = num + +class registry: + def __init__(self): + self.registry = {IMU : None, ping : None, mode : None, jointAngles : None, position : None, velocity : None} + + def addRegister(self, key, value, timestamp): + temp = self.registry.get[key] + self.registry[key] = temp.append([value, timestamp]) #[value, timestamp] + + def get(self, register): + return self.registry.get(register) + +class flag: + def __init__(self): + self.flag = {'motorActuation' :None, 'mode change' : None, 'movement' : None, 'pathCoords' : None} + + def addFlag(self, key, value, priority, timestamp): #priority is going to be from range 1-5 + temp = self.flag.get[key] + self.flag[key] = temp.append([value, priority, timestamp]) #[value, priority, timestamp] + + def get(self, fl): + return self.flag.get(fl) + + +def gaitGen(): + if flag[] + + +def balance(): + + +def telemetry(): + + +def cv(): + if flag['pathCoords'] != None: + + + + + + + +def gaitGen(): + if flag['balanced'] != None: + + if flag['movement'] != None: + + + + + +def automatic(): + cv() + gaitGen() + + +def manual(): + telemetry() + addFlag('motorActuation', False, time.time()) + executor() + +def sendAuto(): + telemetry() + addFlag('movement', False, time.time()) + executor() + + +def executor(): + + +def loop(): + executor() + + +class mode: + def __init__(self, num): + self.val = num + +class commands: + def __init__(self, num): + self.mode = mode(3) + + + + def changeMode(mode m): + print() + + def shutDown(): + + +