def pwm_init (channel) : # Set channel for brushed and start motor global inited global board if (board == -1) : return if inited == 0 : gb.open_uart(0) version = gb.get_version(board) print("Board version {}".format(version)) inited = 1 gb.set_mode(board,channel,gb.MODE_BRUSH) gb.move_brushed(board,channel,gb.MOVE_B)
def stopMotor(self, motorId): gb.move_brushed(BOARD, motorId, STOP) # Left stop
def runMotor(self, motorId, direction, speed=1, freq=DEFAULT_PWM_FREQ): gb.pwm_brushed(BOARD, motorId, freq, 70 + speed * 10) gb.move_brushed(BOARD, motorId, direction)
dsep = binascii.b2a_hex(ser.read()).decode('utf-8') if dsep == 'a1': dtyp = binascii.b2a_hex(ser.read()).decode('utf-8') if dtyp == '07': for i in range(len(btn)): btn[i] = 0 for i in range(len(btn)): dbtn = int( binascii.b2a_hex(ser.read()).decode('utf-8'), 16) if dbtn == 0 or dbtn == 1 or dbtn == 2 or dbtn == 3: btn[dbtn] = 1 # Stop/Up/Down if btn[0] == 0 and btn[1] == 0: print('Stop') ard.write(str(2).encode()) # green cycle gb.move_brushed(BOARD_A, BRS_A, STOP) elif btn[0] == 0 and btn[1] == 1: print('Up') ard.write(str(0).encode()) # red cycle gb.move_brushed(BOARD_A, BRS_A, FORWD) elif btn[0] == 1 and btn[1] == 0: print('Down') ard.write(str(1).encode()) # yellow cycle gb.move_brushed(BOARD_A, BRS_A, BACKW) #print('[A B C D : X Y] = [' + str(btn[0]) + ' ' + str(btn[1]) + ' ' + str(btn[2]) + ' ' + str(btn[3]) + ' : ' + str(dxax) + ' ' + str(dyax)+ ']') elif dtyp == '08': dyax_old = dyax dxax_old = dxax val = ser.read() dyax = -int(binascii.b2a_hex(ser.read()).decode('utf-8'), 16) if dyax <= -128:
screen.addstr(" 1 2 3 \n") screen.addstr(" Reverse \n") screen.addstr("Left Both Right\n") screen.addstr("Don't forget to set numlock on!!!!\n") screen.addstr("Use Q or q to quit\n") screen.addstr("\n") run = 1 while run==1 : key = screen.getch() # Key? if key==ord('q') : run = 0 # stop running if key==ord('1') : gb.move_brushed(BOARD,LEFT,BACKW) # Left backwards if key==ord('2') : gb.move_brushed(BOARD,LEFT,BACKW) # Left backwards gb.move_brushed(BOARD,RIGHT,BACKW) # Right backwards if key==ord('3') : gb.move_brushed(BOARD,RIGHT,BACKW) # Right backwards if key==ord('4') : gb.move_brushed(BOARD,LEFT,STOP) # Left stop if key==ord('5') : gb.move_brushed(BOARD,LEFT,STOP) # Left stop gb.move_brushed(BOARD,RIGHT,STOP) # Right stop
def pwm_init (channel) : # Set channel for brushed and start motor gb.set_mode(board,channel,gb.MODE_BRUSH) gb.move_brushed(board,channel,gb.MOVE_B)