motor_controller
Classe motor_controller
Section titled “Classe motor_controller”A classe motor_controller instancia dois objetos motor (esquerdo e direito) e oferece uma interface única para dirigir o robô com velocidades independentes.
Assinatura
Section titled “Assinatura”class motor_controller;Construtor
Section titled “Construtor”motor_controller(unsigned int left_forward_pin, unsigned int left_backward_pin, unsigned int right_forward_pin, unsigned int right_backward_pin);left_forward_pineleft_backward_pin: canais do motor esquerdo.right_forward_pineright_backward_pin: canais do motor direito.
Método principal
Section titled “Método principal”void walk(int left_speed, int right_speed)
Section titled “void walk(int left_speed, int right_speed)”Define simultaneamente a velocidade dos dois lados:
left_speed: comando para motor esquerdo.right_speed: comando para motor direito.
Isso permite movimentos como frente, ré, curvas e rotação no próprio eixo.
Exemplo de uso
Section titled “Exemplo de uso”#include <compkit.h>
motor_controller base(5, 6, 9, 10);
void setup() {}
void loop() { base.walk(180, 180); // frente delay(1000);
base.walk(180, 80); // curva suave para a direita delay(800);
base.walk(180, -180); // gira no próprio eixo delay(700);
base.walk(0, 0); // para delay(500);}