Ferramentas do usuário

Ferramentas do site


cursos:introrobotica:2019-1:grupo08:tp3:sensor_break_bean

Sensor Break Beam(Chave Óptica)

Peças

Foram montados 2 sensores Break-Beams(Um para cada motor) com cada sensor tendo os seguintes itens:

  • 1x Sensor Break Beam 125C51
  • 1x Resistor 330 ohms

Conexão

  • O sensor 125C51 possui 4 pinos, 2 para o LED Emissor ( Anodo(+) e Catodo (-)) e 2 para o fototransistor (Coletor e Emissor).
  • Como tanto o Catodo do Emissor quanto o emissor do fototransistor precisam ser ligados ao negativo, a conexão foi feita soldando esses 2 pinos, e direcionando apenas um cabo negativo ao arduino para diminuir a quantidade de fios.
  • O Anodo do LED Emissor, foi ligado ao 5V do arduino com um resistor de 330 ohms entre eles.
  • O Coletor foi ligado ao input 25 para a chave óptica da direita e ao input 27 para a chave óptica da esquerda.
  • O Sensor foi acoplado em uma peça LEGO 2×2 por meio de cola quente.

Funcionamento

O funcionamento do sensor de distância funciona da seguinte maneira:

  1. Existem 2 componentes no sensor 125C51, um LED Emissor infravermelho e um fototransistor, virados um de frente para o outro e separados por uma distância pequena.
  2. Quando os componentes são conectados corretamente, o LED Emissor sempre fica aceso.
  3. Quando há um obstáculo entre os sensores (no caso o buraco dentro da roda), a luz infravermelha do emissor vai em direção do fototransistor, alterando seu sinal binário.

Esse sensor foi montado com a finalidade de analisar quantas rotações cada roda faz, para assim poder ter um controle bem mais preciso do quanto cada roda girou.

Controlador PD

Após toda a montagem foi feito um controle PD através da leitura das chaves ópticas. Esse controle foi feito da seguinte maneira:

  1. Primeiro foram feitas 2 funçoes para analisar a quantidade de rotaçoes que cada roda fazia.
  2. - Caso uma roda tivesse dado mais rotações que a outra, seu erro ia para 1, caso elas estivessem iguais, o erro ia para 0.
  3. Assim o valor dessas rotacoes e do erro foi passado para uma função PD que possuia a fórmula kp*erro +Kd* erro - erro_anterior
  4. Com isso, o valor da correção é passado para o motor.

Os valores Kd e Kp tiveram que ser definidos experimentalmente, o que foi bem trabalhoso para garantir um funcionamento ideal.

Com esse controlador, caso um motor esteja rodando mais rápido que o outro o controle PD vai corrigindo essa falha, garantindo uma movimentação mais suave e mais precisa.

cursos/introrobotica/2019-1/grupo08/tp3/sensor_break_bean.txt · Última modificação: por 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki