# (async function () { # // Reset uArm to its home position. # await UArm.reset(); # await UArm.set_position({"x": 200, "y": 100, "z": 50}); # }()); #logger_init(logging.DEBUG) #logger_init(logging.INFO) import time import numpy from uf.wrapper.swift_api import SwiftAPI from uf.utils.log import * logger_init(logging.VERBOSE) swift = SwiftAPI() time.sleep(2) positions = numpy.linspace(-200, 200, 5) swift.set_gripper(True) time.sleep(5) swift.set_gripper(False)
H_max = 10 S_max = 255 V_max = 255 # could not open port 'COM4': PermissionError(13, 'Access is denied.', None, 5) accessed = False while not accessed: try: swift = SwiftAPI() accessed = True except Exception as e: time.sleep(0.2) print('device info: ') print(swift.get_device_info()) swift_r = swift.set_gripper(True) swift.set_position(x=200, y=0, z=5, relative=False, speed=20000, wait=True) swift_r = swift.send_cmd_sync("M204 P700 R700 T700\n") swift.set_position(x=200, y=0, z=3, relative=False, speed=20000, wait=True) for i in range(15): _, frame = cap.read() #r = cv2.selectROI(frame) #print(r) #time.sleep(555) if RESCALE_FACTOR == 0.5: r = (66, 21, 560, 270) elif RESCALE_FACTOR == 1.0: r = (104, 36, 1136, 557)
class XYZSlider(QWidget): def __init__(self): print('here') self.a = QApplication(sys.argv) super().__init__() self.initUI() def show_ux(self): sys.exit(self.a.exec_()) def initUI(self): self.setGeometry(10, 10, 1500, 500) self.addSliderZ() self.addSliderX() self.addSliderY() self.addGripperButton() self.connectButton = QPushButton('Connect', self) self.connectButton.clicked.connect(self.handleConnectButton) self.exitButton = QPushButton('Exit', self) self.exitButton.clicked.connect(self.handleExitButton) self.setGeometry(300, 300, 1500, 500) self.setWindowTitle('Control Sliders') self.sld1.setEnabled(False) self.sldX.setEnabled(False) self.sldY.setEnabled(False) self.gripperButton.setEnabled(False) self.mylayout() self.show() def mylayout(self): self.qwsld = QWidget() self.qwsld.setStyleSheet("Background-color: red") self.grid = QGridLayout(self.qwsld) self.setLayout(self.grid) self.subW = QWidget() self.grid.addWidget(self.subW, 1, 1) self.subGridW = QGridLayout(self.subW) self.setLayout(self.subGridW) self.dummyW = QWidget() connectButtonPos = {"r": 1, "c": 1} exitButtonPos = {"r": 1, "c": 2} gripperButtonPos = {"r": 2, "c": 1} self.grid.addWidget(self.dummyW, 2, 2) zSliderPos = {"r": 2, "c": 1} zLabelPos = {"r": zSliderPos['r'], "c": 2} xSliderPos = {"r": zSliderPos['r'] + 1, "c": zSliderPos['c']} xLabelPos = {"r": zLabelPos['r'] + 1, "c": zLabelPos['c']} ySliderPos = {"r": zSliderPos['r'] + 2, "c": zSliderPos['c']} yLabelPos = {"r": zLabelPos['r'] + 2, "c": zLabelPos['c']} print(connectButtonPos["r"], " ", connectButtonPos["c"]) self.subGridW.addWidget(self.connectButton, connectButtonPos["r"], connectButtonPos["c"]) self.subGridW.addWidget(self.exitButton, exitButtonPos["r"], exitButtonPos["c"]) self.subGridW.addWidget(self.gripperButton, gripperButtonPos["r"], gripperButtonPos["c"]) self.grid.addWidget(self.l1, zLabelPos["r"], zLabelPos["c"]) self.grid.addWidget(self.sld1, zSliderPos["r"], zSliderPos["c"]) self.grid.addWidget(self.lX, xLabelPos["r"], xLabelPos["c"]) self.grid.addWidget(self.sldX, xSliderPos["r"], xSliderPos["c"]) self.grid.addWidget(self.lY, yLabelPos["r"], yLabelPos["c"]) self.grid.addWidget(self.sldY, ySliderPos["r"], ySliderPos["c"]) def addGripperButton(self): self.gripper = True self.gripperButton = QPushButton('Gripper', self) self.gripperButton.clicked.connect(self.handleGripperButton) def handleConnectButton(self): print('In ConnectButton ') self.swift = SwiftAPI(dev_port='COM4') sleep(2) print(self.swift.get_device_info()) print('set x=150, y=0, z=150') self.uarmZ = 150 self.uarmX = 150 self.uarmY = 0 self.swift.set_position(x=self.uarmX, y=self.uarmY, z=self.uarmZ, wait=True, speed=2000) self.swift.set_gripper(self.gripper) self.sld1.setValue(self.uarmZ) self.sldX.setValue(self.uarmX) self.sldY.setValue(self.uarmY) self.sld1.setEnabled(True) self.sldX.setEnabled(True) self.sldY.setEnabled(True) self.gripperButton.setEnabled(True) self.connectButton.setEnabled(False) def handleGripperButton(self): self.gripper = False if self.gripper else True #toggle self.swift.set_gripper(self.gripper) sleep(4) def handleExitButton(self): sys.exit() #----------------------Z---------------- def changeValueSld1(self): txt = "Z: " + str(self.sld1.value()) self.l1.setText(txt) #print('changeValue slider is: ', self.sld1.value()) def sliderReleaseSld1(self): print('sliderreleased slider is: ', self.sld1.value()) self.uarmZ = self.sld1.value() self.swift.set_position(z=self.uarmZ, wait=True, speed=2000) def addSliderZ(self): self.sld1 = QSlider(Qt.Horizontal, self) p = self.sld1.palette() p.setColor(self.sld1.backgroundRole(), Qt.red) self.sld1.setPalette(p) self.sld1.setFocusPolicy(Qt.NoFocus) self.sld1.setGeometry(30, 40, 1000, 30) self.sld1.setMaximum(150) self.sld1.setMinimum(0) self.sld1.setTickPosition(QSlider.TicksBelow) self.sld1.setTickInterval(5) self.sld1.sliderReleased.connect(self.sliderReleaseSld1) self.sld1.valueChanged.connect(self.changeValueSld1) self.l1 = QLabel(self) self.l1.setForegroundRole(QPalette.Dark) self.l1.setText('Z:') #-----------x----------------------------------------------- def addSliderX(self): self.sldX = QSlider(Qt.Horizontal, self) p = self.sldX.palette() p.setColor(self.sldX.backgroundRole(), Qt.red) self.sldX.setPalette(p) self.sldX.setFocusPolicy(Qt.NoFocus) self.sldX.setGeometry(30, 40, 1000, 30) self.sldX.setMaximum(350) self.sldX.setMinimum(100) self.sldX.setTickPosition(QSlider.TicksBelow) self.sldX.setTickInterval(5) self.sldX.sliderReleased.connect(self.sliderReleaseSldX) self.sldX.valueChanged.connect(self.changeValueSldX) self.lX = QLabel(self) self.lX.setForegroundRole(QPalette.Dark) self.lX.setText('X:') def changeValueSldX(self): txt = "X: " + str(self.sldX.value()) self.lX.setText(txt) #print('changeValue slider is: ', self.sld1.value()) def sliderReleaseSldX(self): print('sliderreleased X slider : ', self.sldY.value()) self.uarmX = self.sldX.value() self.swift.set_position(x=self.uarmX, wait=True, speed=2000) #-----------Y----------------------------------------------- def addSliderY(self): self.sldY = QSlider(Qt.Horizontal, self) p = self.sldY.palette() p.setColor(self.sldY.backgroundRole(), Qt.red) self.sldY.setPalette(p) self.sldY.setFocusPolicy(Qt.NoFocus) self.sldY.setGeometry(30, 40, 1000, 30) self.sldY.setMaximum(100) self.sldY.setMinimum(-100) self.sldY.setTickPosition(QSlider.TicksBelow) self.sldY.setTickInterval(5) self.sldY.sliderReleased.connect(self.sliderReleaseSldY) self.sldY.valueChanged.connect(self.changeValueSldY) self.lY = QLabel(self) self.lY.setForegroundRole(QPalette.Dark) self.lY.setText('Y:') def changeValueSldY(self): txt = "Y: " + str(self.sldY.value()) self.lY.setText(txt) #print('changeValue slider is: ', self.sld1.value()) def sliderReleaseSldY(self): print('sliderreleased Y slider : ', self.sldY.value()) self.uarmY = self.sldY.value() self.swift.set_position(y=self.uarmY, wait=True, speed=2000)
swift.set_wrist(w, wait=True) print('R rechts') if event.code == 'ABS_RY' and event.state < -20000: swift.set_position(z=-1, speed=20000, relative=True, wait=True) print('R unten') if event.code == 'ABS_RY' and event.state > 10000: swift.set_position(z=+1, speed=20000, relative=True, wait=True) print('R oben') if event.code == 'BTN_SOUTH' and event.state == 1: swift.set_pump(False) print('A Button') if event.code == 'BTN_WEST' and event.state == 1: swift.set_gripper(True, timeout=10) print('X Button - Start Position') if event.code == 'BTN_EAST' and event.state == 1: swift.set_gripper(False, timeout=10) print('B Button') if event.code == 'BTN_NORTH' and event.state == 1: swift.set_pump(True) print('Y Button') if event.code == 'BTN_START' and event.state == 1: print('Back Button') if event.code == 'BTN_SELECT' and event.state == 1: swift.set_position(150, 0, 150, speed=20000, timeout=20) swift.set_wrist(90, wait=True) # lang print('Start Button')