Motor DC - Robo4al/robot GitHub Wiki

Definição

O motor DC (direct current), também é chamado de motor CC (corrente contínua), devido ao fato de ser alimentado por uma corrente contínua proveniente de uma bateria ou outras formas de fornecimento de energia nesta condição. A maioria dos aparelhos eletrônicos possui recursos mecânicos automatizados, os quais, grande parte das vezes, são constituídos por motores de corrente contínua.

O princípio básico de operação do motor DC é que sempre que um condutor, que é percorrido por uma corrente elétrica, é colocado em um campo magnético, ele experimenta uma força eletromagnética, gerando o torque e, consequentemente, o giro do eixo do motor. Desta forma, o motor DC funciona aproveitando as forças de atração e repulsão geradas por eletroímãs ou imãs permanentes.

Funcionamento do motor DC

A classe do motor dc serve, basicamente, para realizar movimento. A classe fornece um método, chamado move(), que recebe quatro parâmetros, conforme descrito abaixo.

Parâmetros de movimento

  1. indica o motor A (0 parado, 1 movimentando)
  2. indica o sentido de A (0 frente e 1 trás)
  3. indica o motor B (0 parado, 1 movimentando)
  4. indica o sentido de B (0 frente e 1 trás)

Utilização

O método move() pode ser utilizado de diversas formas, conforme observado abaixo.

# A parado, B parado
move(0,0,0,0)

# A parado, B frente
move(0,0,1,0)

# A parado, B trás
move(0,0,1,1)

# A frente , B parado
move(1,0,0,0)

# A frente, B frente
move(1,0,1,0)

# A frente , B trás
move(1,0,1,1) 

# A trás, B parado
move(1,1,0,0)

# A trás , B frente
move(1,1,1,0)

# A trás, B trás
move(1,1,1,1)

Além do método move(), a classe disponibiliza outros três métodos para facilitar o uso de Roberval. São eles: front(), que faz Roberval andar para frente; back(), que faz Roberval andar para trás; stop(), que faz Roberval parar.

OBS.: os métodos front() e back() fazem os motores girarem para lados opostos, pois os motores que dão movimento a Roberval estão inversamente posicionados!!! Exemplo de uso:

#Criando o objeto
motor = MotorDC()

#Fazendo o robô andar para frente:
motor.front() ou motor.move(1,1,1,0)

#Fazendo o robô girar para a direita :
motor.move(0,0,1,0)

#Fazendo o robô andar para trás:
motor.back() ou motor.move(1,0,1,1)

#Fazendo o robô girar para a esquerda:
motor.move(1,0,0,0)

#Fazendo o robô parar:
motor.stop() ou motor.move(0,0,0,0)

Referências

https://www.vidadesilicio.com.br/robotica/motores/motor-dc