You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.2 KiB
Python

import os
from pathlib import Path
from utils.WorkModels import PointModel
class IOMapping:
def __init__(self, path, number):
super().__init__()
if number == 1:
from Agreement.FQ.skio.manage import SkIO
elif number == 2:
from Agreement.modus.skio.manage import SkIO
elif number == 3:
from Agreement.SM.skio.manage import SkIO
elif number == 4:
from Agreement.CS.skio.manage import SkIO
self.skio = SkIO()
self.skio.setup(Path(os.path.join(path, 'demo')))
self.current_value = {point.sig_name: None for point in PointModel.all_points()}
self.force_value = {point.sig_name: None for point in PointModel.all_points()}
def setforce(self, name, value):
self.force_value[name] = self.skio.write(name, value)[0]
def dumpforce(self, name):
self.force_value[name] = None
def setcurrent(self, name):
self.current_value[name] = self.skio.read(name, remote=True)
def setupvalue(self):
self.current_value = {point.sig_name: None for point in PointModel.all_points()}
self.force_value = {point.sig_name: None for point in PointModel.all_points()}