예제 #1
0
class Controle_Remoto:
    try:
        while (True):
            clock.tick(30)
            key = pygame.key.get_pressed()
            motor.parar_movimento(controle_velocidade_direita,
                                  controle_velocidade_esquerda)

            if key[pygame.K_UP]:
                motor.movimento_frente(var.velocidade,
                                       controle_velocidade_direita,
                                       controle_velocidade_esquerda)
            if key[pygame.K_RIGHT]:
                motor.movimento_direita(var.velocidade,
                                        controle_velocidade_direita,
                                        controle_velocidade_esquerda)
            if key[pygame.K_LEFT]:
                motor.movimento_esquerda(var.velocidade,
                                         controle_velocidade_direita,
                                         controle_velocidade_esquerda)
            if key[pygame.K_DOWN]:
                motor.movimento_tras(var.velocidade,
                                     controle_velocidade_direita,
                                     controle_velocidade_esquerda)
            for event in pygame.event.get():
                if event.type == pygame.QUIT:
                    sys.exit()
                elif event.type == KEYDOWN and event.key == K_ESCAPE:
                    sys.exit()
    finally:
        print("Cleaning up")
        GPIO.cleanup()
예제 #2
0
        # ------------------ Seguir em frente ou manter robô parado  --------------------
        if (MOVIMENTO_FRENTE is True):
            gerencia.movimento_frente(var.velNormal, ctr_vel_motor_dir,
                                      ctr_vel_motor_esq)
        # -------------------------------------------------------------------------------

        # ---------- Metodo para fazer correcao de extrema emergencia (DIREITA) -----------
        elif ((a3 <= var.CONST_A3) and (a0 >= var.CONST_A0)
              and (a1 >= var.CONST_A1) and (b3 >= var.CONST_B3)
              and (b0 >= var.CONST_B0) and (b1 >= var.CONST_B1)):
            A3_ATIVADO = True
            print("ALERTA MAXIMO!!! O robo esta saindo da faixa Direita... ")
            while (A3_ATIVADO is True):
                a0, a1, _, a3, _, _, _, _ = sensor.fototransistores()
                motor.movimento_tras(var.velEmergencia, ctr_vel_motor_dir,
                                     ctr_vel_motor_esq)
                if ((a3 >= var.CONST_A3) and (a1 <= var.CONST_A1)):
                    print("Correcao estabelecida!")
                    A3_ATIVADO = False
        # -------------------------------------------------------------------------------

        # ---------- Metodo para fazer correcao de extrema emergencia (ESQUERDA) -----------
        elif ((b3 <= var.CONST_B3) and (b0 >= var.CONST_B0)
              and (b1 >= var.CONST_B1) and (a0 >= var.CONST_A0)
              and (a1 >= var.CONST_A1) and (a3 >= var.CONST_A3)):
            B3_ATIVADO = True
            print("ALERTA MAXIMO!!! O robo esta saindo da faixa Esquerda... ")
            while (B3_ATIVADO is True):
                _, _, _, _, b0, b1, _, b3 = sensor.fototransistores()
                motor.movimento_tras(var.velEmergencia, ctr_vel_motor_dir,
                                     ctr_vel_motor_esq)
예제 #3
0
try:
    while (True):
        motor.movimento_frente(var.velNormal, controle_velocidade_direita,
                               controle_velocidade_esquerda)
        time.sleep(3)
        motor.parar_movimento(controle_velocidade_direita,
                              controle_velocidade_esquerda)
        time.sleep(0.8)
        '''
		motor.movimento_direita(var.velReacao, controle_velocidade_direita, controle_velocidade_esquerda)
		time.sleep(2)	
		motor.parar_movimento(controle_velocidade_direita, controle_velocidade_esquerda)
		time.sleep(0.8)


		motor.movimento_esquerda(var.velReacao, controle_velocidade_direita, controle_velocidade_esquerda)
		time.sleep(2)	
		motor.parar_movimento(controle_velocidade_direita, controle_velocidade_esquerda)
		time.sleep(0.8)
		'''

        motor.movimento_tras(var.velNormal, controle_velocidade_direita,
                             controle_velocidade_esquerda)
        time.sleep(3)
        motor.parar_movimento(controle_velocidade_direita,
                              controle_velocidade_esquerda)
        time.sleep(0.8)
finally:
    print("Cleaning up")
    GPIO.cleanup()