1 from dynamic_graph
import plug
2 from dynamic_graph.sot.core
import GainAdaptive, Task
3 from dynamic_graph.sot.core.feature_pose
import FeaturePose
9 lambda x: x.getName().split(
":")[-1] == opPoint, self.
dyndyn.signals()
12 lambda x: x.getName().split(
":")[-1] ==
"J" + opPoint, self.
dyndyn.signals()
14 return len(sigsP) == 1 & len(sigsJ) == 1
27 self.
featurefeature.selec.value =
"111111"
33 self.
gaingain = GainAdaptive(
"gain" + self.
namename)
34 self.
gaingain.set(0.1, 0.1, 125e3)
40 plug(self.
tasktask.error, self.
gaingain.error)
41 plug(self.
gaingain.gain, self.
tasktask.controlGain)
44 self.
featurefeature.faMfb.recompute(self.
dyndyn.position.time)
45 self.
featurefeature.faMfbDes.value = self.
featurefeature.faMfb.value
47 def __init__(self, name, dyn, opPoint, opPointRef="right-wrist"):
58 return self.
featurefeature.faMfbDes.value
62 self.
featurefeature.faMfbDes.value = m