the car motors is working properly while the serial cable is connected to the computer but when I pulled out the cable and tried it with the battery, the motors did not work properly and turned constantly. Whats is wrong?
I use transmitter, gyro, 433 Mhz receiver, Af motors, two arduino uno, two batteries
my receiver codes here:
//ALICI
#include <VirtualWire.h> // RF modül için gerekli Arduino kütüphanesi
#include <AFMotor.h>
AF_DCMotor motor1(1,MOTOR12_64KHZ);
AF_DCMotor motor2(2,MOTOR12_64KHZ);
AF_DCMotor motor3(3,MOTOR12_64KHZ);
AF_DCMotor motor4(4,MOTOR12_64KHZ);
char*mesaj; // Alınan mesajın yazıldığı değişken
int ledPin = 2; //Ledin bağlı olduğu arduino pini
void setup() {
motor1.setSpeed(255);
motor2.setSpeed(255);
motor3.setSpeed(255);
motor4.setSpeed(255);
Serial.begin(9600);
vw_set_ptt_inverted(true);
vw_set_rx_pin(6); //RF alıcı modü data çıkışı bağlı olduğu arduino pini
vw_setup(4000);
vw_rx_start();
}
void loop() {
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
Serial.println((char)buf[0]);
if (vw_get_message(buf, &buflen)) //
{
//STOP
if ((char)buf[0] == '0')
{
motor1.run(RELEASE);
motor2.run(RELEASE);
motor1.setSpeed(0);
motor2.setSpeed(0);
// motor3.run(RELEASE);
// motor4.run(RELEASE);
}
//FORWARD
else if ((char)buf[0] == '1')
{
motor1.run(FORWARD);
motor2.run(FORWARD);
motor1.setSpeed(255);
motor2.setSpeed(255);
// motor3.run(FORWARD);
// motor4.run(FORWARD);
}
//BACKWARD
else if ((char)buf[0] == '2')
{
motor1.run(BACKWARD);
motor2.run(BACKWARD);
motor1.setSpeed(255);
motor2.setSpeed(255);
// motor3.run(BACKWARD);
// motor4.run(BACKWARD);
}
//FORWARD LEFT
else if ((char)buf[0] == '3')
{
motor1.run(FORWARD);
motor2.run(RELEASE);
motor1.setSpeed(255);
motor2.setSpeed(0);
// motor3.run(RELEASE);
// motor4.run(FORWARD);
}
//FORWARD RIGHT
else if ((char)buf[0] == '4')
{
motor1.setSpeed(0);
motor2.setSpeed(255);
motor1.run(RELEASE);
motor2.run(FORWARD);
// motor3.run(FORWARD);
// motor4.run(RELEASE);
}
}
}