Skip to content

Commit 1d7fef9

Browse files
committed
オフセットをconfigから変更できるように変更
1 parent 181f271 commit 1d7fef9

2 files changed

Lines changed: 18 additions & 9 deletions

File tree

uiflow2/libs/DynamixelDriver.py

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,7 @@ def init(self):
201201
print("Fail to initialize")
202202
return
203203
self.goalPosition = 0
204+
self.servo.setTorque(False)
204205
self.servo.setOperatingMode(OPERATING_MODE['CURRENT_BASED_POSITION'])
205206
self.servo.setTorque(True)
206207
return
@@ -235,17 +236,23 @@ def setGoalPosition(self, angle):
235236
class DynamixelDriver:
236237
#
237238
#
238-
def __init__(self):
239+
def __init__(self, pan_off=None, tilt_off=None):
239240
self._pan = Dynamixel(1)
240241
self._tilt = Dynamixel(2)
241242
#print("get current_pos")
242-
pan_offset = self._pan.readPresentPosition()
243-
tilt_offset = self._tilt.readPresentPosition()
244-
#if pan_offset:
245-
# tilt_offset = self._tilt.readPresentPosition()
246-
#else:
247-
# tilt_offset = None
248-
#print("check")
243+
if pan_off is None:
244+
pan_offset = self._pan.readPresentPosition()
245+
else:
246+
pan_offset = pan_off
247+
248+
if pan_offset:
249+
if tilt_off is None:
250+
tilt_offset = self._tilt.readPresentPosition()
251+
else:
252+
tilt_offset = tilt_off
253+
else:
254+
tilt_offset = None
255+
print(f"Offset: {pan_offset}, {tilt_offset}")
249256
if pan_offset and tilt_offset:
250257
self._controls = [
251258
PConrtol(self._pan, 0.15, 80, 'pan', pan_offset, -180, 180),

uiflow2/libs/StackChan.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,9 @@ def set_motor(self):
226226
try:
227227
if motor_type == 'Dynamixel':
228228
import DynamixelDriver
229-
self.motor = DynamixelDriver.DynamixelDriver()
229+
pan_offset_ = util.get_config(self.config, 'Dynamixel/pan_offset', None)
230+
tilt_offset_ = util.get_config(self.config, 'Dynamixel/tilt_offset', None)
231+
self.motor = DynamixelDriver.DynamixelDriver(pan_offset_, tilt_offset_)
230232
if self.motor._controls is None:
231233
self.motor = None
232234
elif motor_type == 'SG90':

0 commit comments

Comments
 (0)