예제 #1
0
    Rr = {'alpha': 90, 'A': 210, 'D': chi * 1225}
    Br = {'alpha': 90, 'A': 0, 'D': 0}
    Tr = {'alpha': -90, 'A': 0, 'D': 0}
    Fr = {'alpha': 0, 'A': 0, 'D': 175}

    Sn = {'alpha': 0, 'A': 0, 'D': 540}  #(alpha, A, D, theta)
    Ln = {'alpha': 90, 'A': 140, 'D': 0}
    Un = {'alpha': 0, 'A': 1150, 'D': 0}
    Rn = {'alpha': 90, 'A': 210, 'D': 1225}
    Bn = {'alpha': 90, 'A': 0, 'D': 0}
    Tn = {'alpha': -90, 'A': 0, 'D': 0}
    Fn = {'alpha': 0, 'A': 0, 'D': 175}

    dhParamsR = {'S': Sr, 'L': Lr, 'U': Ur, 'R': Rr, 'B': Br, 'T': Tr, 'F': Fr}
    dhParamsN = {'S': Sn, 'L': Ln, 'U': Un, 'R': Rn, 'B': Bn, 'T': Tn, 'F': Fn}
    NrkSDK = SDK.SDKlib("SDKMFC2015.dll")
    NrkSDK.connToSA()
    homePoseSA = (0, 90, 0, 0, 90, 0, 0)
    rN = robot.robot('NominaLRobot', NrkSDK, 'SA', *homePoseSA, **dhParamsN)

    targs = ['T0', 'T1', 'T2']
    for t in targs:
        T = NrkSDK.GetWorkingTransformOfObjectFixedXYZ('A', t)
        p = getPoseForFrame(T, rN)
        input('Hit Enter to Move to Target')
        rN.setPose(*p)

    input('Hit Enter to Go Home')
    rN.setPose(*homePoseSA)
    input('Hit Enter to Kill Robot')
    NrkSDK.DeleteCollection(rN.col)
예제 #2
0
    self.win.show()
    self.win.raise_()

  def runApp(self):
    self.parameters.sigTreeStateChanged.connect(self.change)
    
if __name__ == '__main__':
  try:
    app = QtGui.QApplication.instance()
    if app is None:   #Qt cannot be called twice.  Checks if been created.  If so, doesn't create a new one.  Executes existing one on pendant.runApp()
      app = QtGui.QApplication([])
    else:
      print('QApplication instance already exists: %s' % str(app))
    path = "C:\\Users\\mallman\\Documents\\git\\SDKDlls\\SDKMFC2015\\Release"
    dllFile = "SDKMFC2015.dll"
    NrkSDK = SDK.SDKlib(os.path.join(path, dllFile))
    NrkSDK.connToSA()
    pendant = Pendant(NrkSDK = NrkSDK)
    if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
      if not (app is None): 
        app.exec_()
  finally:
    for r in pendant.robots:
      r.killRobot()
    Cleanup()