Tabela de conteúdos
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:
- 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.
- Quando os componentes são conectados corretamente, o LED Emissor sempre fica aceso.
- 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:
- Primeiro foram feitas 2 funçoes para analisar a quantidade de rotaçoes que cada roda fazia.

- - 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.

- 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

- 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.
