Robot multifunções

Alguém tem a programação dos motores DC controlados por Bluetooth?
Obrigado

Mas vai depender da bridge em h que controla os motores, do módulo Bluetooth e do aplicativo Bluetooth que envia os comandos. O que você planeja usar o hardware?

Eu vou usar o hc-05 e a controladora de motores l298n e arduino mega

Meu carro usa esse código, talvez você precise alterar uma biblioteca para o seu caso específico.

#include <car_bluetooth.h>
#include "MotorDriver.h"

#define RxD 2//D2 of Arduino should connect to TX of the Serial Bluetooth module
#define TxD 3//D3 of Arduino should connect to RX of the Serial Bluetooth module
CarBluetooth bluetooth(RxD, TxD);
#define CMD_INVALID     0XFF
#define CMD_FORWARD     'F'
#define CMD_RIGHT_FRONT 'R'
#define CMD_BACKWARD    'B'
#define CMD_LEFT_FRONT  'L'
#define CMD_STOP        'S'
#define SPEED_STEPS 20
uint8_t speed0 = 100;
#define BIN1 8
#define BIN2 7
#define PWMB 6
#define AIN1 9
#define AIN2 10
#define PWMA 11
#define CAR_STOP 0
#define CAR_FORWARD 1
#define CAR_BACK 2
uint8_t car_status = CAR_STOP;
uint8_t new_status = car_status;
uint8_t bt_command;



void setup() {
  motordriver.init(BIN1, BIN2, PWMB, AIN1, AIN2, PWMA);
  motordriver.setSpeed(100, MOTORA);
  motordriver.setSpeed(100, MOTORB);
  bluetooth.waitConnected();
  Serial.begin (9600);
}



void loop() {
  bt_command = bluetooth.readByte();
  if(bt_command != CMD_INVALID){
  controlCar(bt_command);
 }
}

void controlCar(uint8_t cmd) {
  switch (cmd){
    case CMD_FORWARD:     motordriver.goForward(); break;
    case CMD_RIGHT_FRONT:
      //  if(car_status != CAR_STOP)new_status = CAR_FORWARD;
      motordriver.goRight();
      // delay(200);
      break;
    case CMD_BACKWARD:    motordriver.goBackward(); break;
    case CMD_LEFT_FRONT:
      motordriver.goLeft();
      // delay(200);
      break;
    case CMD_STOP:        motordriver.stop(); break;
    default: break;
  }
  if ((cmd >= '0') && (cmd <= '9'))
  {
    speed0 = cmd - 0x30;
    Serial.print(speed0);
    Serial.print(">");
    speed0 = map(speed0, 0, 9, 0, 255);
    Serial.println(speed0);
    motordriver.setSpeed(speed0, MOTORA);
    motordriver.setSpeed(speed0, MOTORB);
  }
}

void speedUp() {
  if (speed0 < 236)speed0 += SPEED_STEPS;
  else speed0 = 255;
  motordriver.setSpeed(speed0, MOTORA);
  motordriver.setSpeed(speed0, MOTORB);
}

void speedDown() {
  if (speed0 > 70)speed0 -= SPEED_STEPS;
  else speed0 = 50;
  motordriver.setSpeed(speed0, MOTORA);
  motordriver.setSpeed(speed0, MOTORB);
}

vou tentar
Obrigado

voce usou os mesmos componentes que eu?

e onde encontro essa biblioteca?

Não sei, comprei o carro em kit e os números de referência e o chip estão apagados, mas deve ser muito compatível já que para lidar com isso utilizo o aplicativo "Bluetooth RC Controler" para smartphone.
Obviamente, é um programa muito genérico que você pode ter que modificar com as bibliotecas apropriadas para seus componentes. Quanto às bibliotecas que utilizo, espere um pouco para ver se as encontro na rede, se não der o link que o fabricante quer dizer, não sei agora onde o tenho. Em qualquer caso, eu lhe daria o arquivo.

Eu espero um pouco então.

Este é o LINK que o fabricante me deu com tudo que preciso.
Saudações.

nao dá para abrir

Eu apenas tentei e eles baixaram e descompactaram sem problemas. Clique para baixar tudo,

Não consegue mandar só a biblioteca do carro bluetooth?

O sistema só permite o upload de imagens. Você deve baixá-lo e descompactá-lo do link que lhe dei antes. Dentro do arquivo você terá uma pasta "4WD Smart CarX", dentro dela outras duas, escolha a da sua placa. Do arquivo compactado que aparecerá para você e dentro da pasta "ArduinoLib", descompacte as pastas, (as pastas completas não os arquivos que contém), "CarBluetooth" e "MotorDriver" na pasta da biblioteca do seu IDE.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.