1
\$\begingroup\$

I have asked this question previously: Why this pair of IGBT's died silently?

Some of those genius people advised me for not playing with high voltages, so I am here with another question with low voltages.

Please take a look at the circuit diagram below:

schematic

simulate this circuit – Schematic created using CircuitLab

Here is the Arduino code for turning ON and OFF the transistors to create an AC like signal.

int Phase1TransistorA = 3;
int Phase1TransistorB = 5;
int Phase2TransistorA = 6;
int Phase2TransistorB = 9;

int t = 50; //frequency
int p = 7; // pulse width
float GateDischargeTime = 0.000090f;

void setup()
{
  pinMode(Phase1TransistorA, OUTPUT);
  pinMode(Phase1TransistorB, OUTPUT);
  pinMode(Phase2TransistorA, OUTPUT);
  pinMode(Phase2TransistorB, OUTPUT);

}

void loop()
{
  for (int i = 1; i <= p - 1; i++)
  {
    digitalWrite(Phase1TransistorA, HIGH);
    digitalWrite(Phase2TransistorB, HIGH);
    delay(1000 / (4 * t * p * (256 - i)));
    digitalWrite(Phase1TransistorA, LOW);
    digitalWrite(Phase2TransistorB, LOW);
    delay((1000 / (4 * t * p)) - (1000 / (4 * t * p * (256 - i))));
  }

  for (int i = p - 1; i >= 1; i--)
  {
    digitalWrite(Phase1TransistorA, HIGH);
    digitalWrite(Phase2TransistorB, HIGH);
    delay(1000 / (4 * t * p * i));
    digitalWrite(Phase1TransistorA, LOW);
    digitalWrite(Phase2TransistorB, LOW);
    delay((1000 / (4 * t * p)) - (1000 / (4 * t * p * i)));
  }

  delay(GateDischargeTime);

  for (int i = 1; i <= p - 1; i++)
  {
    digitalWrite(Phase2TransistorA, HIGH);
    digitalWrite(Phase1TransistorB, HIGH);
    delay(1000 / (4 * t * p * (256 - i)));
    digitalWrite(Phase2TransistorA, LOW);
    digitalWrite(Phase1TransistorB, LOW);
    delay((1000 / (4 * t * p)) - (1000 / (4 * t * p * (256 - i))));
  }

  for (int i = p - 1; i >= 1; i--)
  {
    digitalWrite(Phase2TransistorA, HIGH);
    digitalWrite(Phase1TransistorB, HIGH);
    delay(1000 / (4 * t * p * i));
    digitalWrite(Phase2TransistorA, LOW);
    digitalWrite(Phase1TransistorB, LOW);
    delay((1000 / (4 * t * p)) - (1000 / (4 * t * p * i)));
  }
  delay(GateDischargeTime);
}

When I power up my Arduino and the Transformer, I thought, I should get LED strip working. But it doesn't. So, I checked the voltage across the two terminals of LED strip & I surprisingly got 1.5V instead of 12V. But just after the Rectifier circuit, I always get 12V. Then why am I not getting the required voltage across the two terminals of load??

\$\endgroup\$
7
  • \$\begingroup\$ what is the purpose to use a h-bridge for powering the led strip? \$\endgroup\$ Dec 13 '15 at 10:14
  • 2
    \$\begingroup\$ So, you got "genius" advise and that deserves that original answer to be formally "accepted" - press the button under the up/down arrows alongside the answer given by @jp314 \$\endgroup\$
    – Andy aka
    Dec 13 '15 at 10:14
  • \$\begingroup\$ @Marko I know that I don't require an H-Bridge for powering LED strip. But I got a diagram from some site which was for a Three phase variable frequency drive. I am also trying to make same thing but for a single phase. Thanks for any help. \$\endgroup\$
    – Vishal
    Dec 13 '15 at 10:16
  • \$\begingroup\$ @Andyaka Yup I got best advice from that guy but that was not the solution to my problem. So, Now I tried this thing with smaller voltages. \$\endgroup\$
    – Vishal
    Dec 13 '15 at 10:17
  • \$\begingroup\$ You got the right advice and just because it didn't give you a solution it doesn't necessarily exclude it from being a correct answer. Nobody is going to come to that question and give a better answer that gives a you a design solution. It's the best answer you will get. \$\endgroup\$
    – Andy aka
    Dec 13 '15 at 10:27
3
\$\begingroup\$

Q1 and Q3 are emitter followers - this means that the likely voltage coming from the emitter to the load is going to be the Arduino's GPIO logic level minus about 0.6 volts. You won't get 12 volts because those transistors are not configured to work as "switches".

Try PNP transistors and a level translator: -

enter image description here

Here's a typical example of a H bridge using this idea: -

enter image description here

This one drives a motor as load and uses quite powerful transistors but it's scalable to lower power needs. Note that the lower transistors (NPN) are driven directly from logic levels.

As an aside, you appear to have a 6V tapping on your secondary and this will produce a peak voltage of about 8.5 volts and, after rectification the DC voltage will be more like 7V and not 12V.

\$\endgroup\$
4
  • \$\begingroup\$ Thanks, for trying to answer my question. I will try it and let you know. \$\endgroup\$
    – Vishal
    Dec 13 '15 at 10:24
  • \$\begingroup\$ I didn't "try" to answer your question - I answered your question! \$\endgroup\$
    – Andy aka
    Dec 13 '15 at 10:27
  • \$\begingroup\$ As you said, you might have answered my question, but still I would like to implement it practically and if I find any failures from my side then I should tell you. Don't you think that. Anyways, I will accept your answer right now. Thanks for help. \$\endgroup\$
    – Vishal
    Dec 13 '15 at 10:31
  • 1
    \$\begingroup\$ The best way to get circuit ideas is using google and selecting images. Type in "H bridge using BJTs" and look at the images. Some will be weak in that they won't show the full circuit for driving the upper transistors but, if you find one that does and looks simpler to implement then come straight back with the link to the picture and I'll check it out (or someone will). \$\endgroup\$
    – Andy aka
    Dec 13 '15 at 10:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.