def __init__(self): self.dev = encodertest.encodertest() if self.dev.dev != 0: self.update_job = None self.root = tk.Tk() self.root.title('Motor Spin-Down Test GUI') self.root.protocol('WM_DELETE_WINDOW', self.shut_down) fm = tk.Frame(self.root) tk.Button(fm, text='Start Motor', command=self.dev.start_motor).pack(side=tk.LEFT) tk.Button(fm, text='Stop Motor', command=self.dev.stop_motor).pack(side=tk.LEFT) tk.Button(fm, text='Start Recording', command=self.dev.write_file).pack(side=tk.LEFT) fm.pack(side=tk.TOP)
def __init__(self): self.dev = encodertest.encodertest() if self.dev.dev is not None: self.update_job = None self.root = tk.Tk() self.root.title('Encoder Test GUI') self.root.protocol('WM_DELETE_WINDOW', self.shut_down) fm = tk.Frame(self.root) tk.Button(fm, text = 'LED1', command = self.dev.toggle_led1).pack(side = tk.LEFT) tk.Button(fm, text = 'LED2', command = self.dev.toggle_led2).pack(side = tk.LEFT) tk.Button(fm, text = 'LED3', command = self.dev.toggle_led3).pack(side = tk.LEFT) fm.pack(side = tk.TOP) self.sw1_status = tk.Label(self.root, text = 'SW1 is currently ?') self.sw1_status.pack(side = tk.TOP) self.sw2_status = tk.Label(self.root, text = 'SW2 is currently ?') self.sw2_status.pack(side = tk.TOP) self.sw3_status = tk.Label(self.root, text = 'SW3 is currently ?') self.sw3_status.pack(side = tk.TOP) self.enc_status = tk.Label(self.root, text = 'Anlge is ?????') self.enc_status.pack(side = tk.TOP) self.update_status()
def __init__(self): self.dev = encodertest.encodertest() if self.dev.dev >= 0: self.update_job = None self.root = tk.Tk() self.root.title('Haptic Feedback') self.root.protocol('WM_DELETE_WINDOW', self.shut_down) fm = tk.Frame(self.root) tk.Button(fm, text='Spring', command=self.dev.toggle_spring).pack(side=tk.LEFT) tk.Button(fm, text='Damper', command=self.dev.toggle_damper).pack(side=tk.LEFT) tk.Button(fm, text='Texture', command=self.dev.toggle_texture).pack(side=tk.LEFT) tk.Button(fm, text='Wall', command=self.dev.toggle_wall).pack(side=tk.LEFT) tk.Button(fm, text='Regular', command=self.dev.toggle_regular).pack(side=tk.LEFT) fm.pack(side=tk.TOP) self.mode_status = tk.Label(self.root, text='Mode is: ???????') self.mode_status.pack(side=tk.TOP) self.update_status()
def __init__(self): self.dev = encodertest.encodertest() if self.dev.dev >= 0: self.update_job = None self.root = tk.Tk() self.root.title("Encoder Test GUI") self.root.protocol("WM_DELETE_WINDOW", self.shut_down) fm = tk.Frame(self.root) tk.Button(fm, text="LED1", command=self.dev.toggle_led1).pack(side=tk.LEFT) tk.Button(fm, text="LED2", command=self.dev.toggle_led2).pack(side=tk.LEFT) tk.Button(fm, text="LED3", command=self.dev.toggle_led3).pack(side=tk.LEFT) fm.pack(side=tk.TOP) self.sw1_status = tk.Label(self.root, text="SW1 is currently ?") self.sw1_status.pack(side=tk.TOP) self.sw2_status = tk.Label(self.root, text="SW2 is currently ?") self.sw2_status.pack(side=tk.TOP) self.sw3_status = tk.Label(self.root, text="SW3 is currently ?") self.sw3_status.pack(side=tk.TOP) self.enc_status = tk.Label(self.root, text="Anlge is ?????") self.enc_status.pack(side=tk.TOP) self.update_status()
import encodertest as encoder import time import struct import csv myenc = encoder.encodertest() read_angle = 0x3FFF read_mag = 0x3FFE read_Error = 0x3FFD response = "1" real_angle_vec = [] measured_angle_vec = [] def getAngle(): rawangle = myenc.enc_readReg(read_mag) angle = struct.unpack("<h", rawangle) angle = int(angle[0]) anglemasked = angle & 0x3FFF anglemasked = float(anglemasked) * (360.0 / 16384.0) return anglemasked while str(response) != "0": response = input("Enter 1 to take data, or 0 to quit: ") if str(response) == "1": datavec = [] for i in range(100): datavec.append(getAngle())
import encodertest import time enc = encodertest.encodertest() enc.toggle_led3() while (True): angleBytes = enc.enc_readReg(enc.ENC_ANGLE_AFTER_ZERO_POS_ADDER) mask = 0x3FFF angle = int(angleBytes[0])+int(angleBytes[1])*256 print "Bin: {0:016b} Hex:{1:04x} Dec:{2:0f}".format(angle, angle, float(angle&mask)/mask*360) time.sleep(.02)
import encodertest as et import struct avg = range(10) while (1): e = et.encodertest() value = e.enc_readReg(address=0x3FFF) avg = avg[1:] temp = struct.unpack('<h',value) avg.append(int(temp[0])) print 720*(sum(avg)/len(avg))/(2.0**14) temp2=bin(temp[0]); # print (temp2[2:].zfill(16)) # print value
import encodertest import sys, time foo = encodertest.encodertest() while 1: sys.stdout.write('\x1b[2J\x1b[1;1f') enc = foo.enc_readReg(0x3FFF) print "START" print print enc print print "END" t0 = time.clock() while time.clock()<t0+0.05: pass
def __init__(self): self.dev = encodertest.encodertest() if self.dev.dev >= 0: self.update_job = None self.root = tk.Tk() self.update_status()
import encodertest import time import struct from numpy import * import pickle joy = encodertest.encodertest() samples = 5000 encpos = zeros(samples) encvel = zeros(samples) encD = zeros(samples) encdir = zeros(samples) times = zeros(samples) raw = 0 last = time.clock() step = 1e-3 i = 0 JOY_MODE_WALL = 0 JOY_MODE_SPRING = 1 JOY_MODE_DAMPER = 2 JOY_MODE_TEXTURE = 3 def readAngle(): bts = joy.joy_read_angle() chrs = ''.join(map(chr, bts)) res, = struct.unpack('f', chrs)