Script execution

This commit is contained in:
gac-x03da
2020-03-10 11:55:29 +01:00
parent 914b98544f
commit fc698153bf

View File

@@ -0,0 +1,40 @@
import ch.psi.pshell.device.ControlledSpeedable as ControlledSpeedable
class PseudoMotor(RegisterBase, ControlledSpeedable):
def __init__(self):
self.velocity = self.getDefaultSpeed()
self.readback = 0.0
self.setpoint = 0.0
self.settime = time.time()
def doRead(self):
offset = self.setpoint - self.readback
d = (self.speed * (time.time() - self.settime))
d = min(d, abs(offset))
self.position = self.readback + d if offset>0 else self.readback -d
return self.position
def doWrite(self, val):
self.settime = time.time()
self.setpoint = val
def getSpeed(self):
return self.velocity
def setSpeed(self, speed):
self.velocity=speed
def getDefaultSpeed(self):
return 1.0
def getMinSpeed(self):
return 0.1
def getMaxSpeed(self):
return 10.0
positioner = PseudoMotor()
add_device(positioner, True);
cscan(positioner, MachineCurrent, 0, 10, 1.0, time=5.0)