NorthStar-HMI/MockCAN.py

36 lines
1.1 KiB
Python

import numpy as np
PUs_states = [{"PU_MODE": "OFF","ploop_setpoint":0.0},{"PU_MODE": "OFF","ploop_setpoint":0.0},{"PU_MODE": "OFF","ploop_setpoint":0.0}] # data[i] is PU_i dictionnary
# Placeholder for CAN backend
class CANBackend:
def __init__(self):
self.connected = False
def connect(self, node_id: int, eds_path: str) -> bool:
# Placeholder for connection logic
self.connected = True
return True
def shutdown(self):
self.connected = False
def read_current_state(self,pu_number: int):
# Placeholder for reading mode command
return PUs_states[pu_number-1]
def send_thermal_loop_cleaning(self, mode: str):
# Placeholder for thermal loop cleaning
pass
def send_state_command(self, state: str, pu_number : int, ploop_setpoint : float):
# Placeholder for sending mode command
PUs_states[pu_number-1] = {"PU_MODE": state, "ploop_setpoint":ploop_setpoint}
def get_latest_data(self):
# Placeholder for getting latest TPDO data
return {"FM2" : round(1000*np.random.random(),1),"PS1" : round(10*np.random.random(),2)}