Hello Everyone,
I have made an H Bridge using BD139, BD140 transistors and Arduino Nano. The PWM signal from receiver is being fed to D5 pin on Nano and D3, D4 pins control forward and reverse motion of the motor.
However, It works only when connected to PC. If I disconnect it, It doesnt work. I am providing 7.4v supply using 2s battery to power the circuit.
Here's the code
#define forwardpin 3
#define reversepin 4
int pwm;
float x;
void setup() {
Serial.begin(9600);
pinMode (forwardpin, OUTPUT);
pinMode (reversepin, OUTPUT);
}
void loop() {
x = pulseIn(5, HIGH);
//Serial.print(x);
// Serial.print(" ");
if (x>1550)
{
pwm = map(x, 1550, 2000, 0, 255);
if(pwm<0)pwm = 0;
if(pwm>255) pwm=255;
analogWrite (forwardpin, pwm);
// Serial.println(pwm);
}
else if(x<1450)
{
pwm = map (x, 1450, 1000, 0, 255);
if(pwm<0)pwm = 0;
if(pwm>255) pwm=255;
analogWrite (reversepin, pwm);
//Serial.println(pwm);
}
else
{
analogWrite (reversepin, 0);
analogWrite (forwardpin, 0 );
}
}