Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
tum
Level 1
Level 1
First like given 10 sign-ins 5 sign-ins

Hello, i'm trying to drive a linear piezo actuator (PI P-820.30) with two Mosfets (IRFB4115) but it doesn't work. Only the lower Mosfet Q2 switches, and i can only shoot with 10V. What might be the problem?

Note: When a voltage is applied to the piezo, it changes its length and elongates. It is acting so fast that a metal ball can be shot away with a pendulum. When the voltage is removed, the piezo contracts again.

HIN LIN.png

In this picture you see only the Mosfets without the gatedriver, the signals come from a Raspberry Pico to the IR2110 which drives the Mosfets.

 

Here is a more detailed picture:

tum_0-1711986006207.png

 

My Arduino code:

const int hinPin = 13; // Digital pin for HIN (Higher) MOSFET gate
const int linPin = 14; // Digital pin for LIN (Lower) MOSFET gate
const int freq = 1; // Frequency in Hz (1Hz)
#define DELAYTIME1 20 //in ms
#define DELAYTIME2 3000
void setup() {
pinMode(hinPin, OUTPUT);
pinMode(linPin, OUTPUT);
digitalWrite(linPin, LOW); //charge bootstrap capacitor}
void loop() {
// Turn on higher side MOSFET (Q1)
digitalWrite(hinPin, HIGH);
delay(DELAYTIME1); //
// Turn off higher side MOSFET (Q1)
digitalWrite(hinPin, LOW);
delay(DELAYTIME2); //
// Turn on lower side MOSFET (Q2)
digitalWrite(linPin, HIGH);
delay(DELAYTIME1); //
// Turn off lower side MOSFET (Q2)
digitalWrite(linPin, LOW);
}

 

I should note that the circuit did work as intended with some code before but i did not save the code, i already replaced the high side mosfet Q1 because it was defective, i couldn't get it working no more.

THANK YOU A LOT, nice team from Infineon.

0 Likes
1 Solution
yifei_y
Moderator
Moderator
Moderator
250 sign-ins 250 replies posted 25 likes received

Hi tum, the input waveform according to your code is as follows, the frequency is not 1Hz but 1/3.02Hz, is it what you pan to generate?

yifei_y_0-1712030567441.png

two issues you need to take a look:

1. I did not see deadtime between low-side on and high-side on, meaning shoot through risk

2. D_boot must have BV>VP

 

 

 

View solution in original post

4 Replies
yifei_y
Moderator
Moderator
Moderator
250 sign-ins 250 replies posted 25 likes received

Hi tum, the input waveform according to your code is as follows, the frequency is not 1Hz but 1/3.02Hz, is it what you pan to generate?

yifei_y_0-1712030567441.png

two issues you need to take a look:

1. I did not see deadtime between low-side on and high-side on, meaning shoot through risk

2. D_boot must have BV>VP

 

 

 

tum
Level 1
Level 1
First like given 10 sign-ins 5 sign-ins

yifei_y, thank you, i really missed the deadtime at the end... I exchanged the Q1 Mosfet again, and it works, but i had to change the code:

void setup() {
pinMode(hinPin, OUTPUT);
pinMode(linPin, OUTPUT);


digitalWrite(linPin, HIGH); //charge bootstrap capacitor
delay(DELAYTIME1); //
digitalWrite(linPin, LOW);

delay(DELAYTIME1); //

digitalWrite(hinPin, HIGH);
delay(DELAYTIME1); //
// Turn off higher side MOSFET (Q1)
digitalWrite(hinPin, LOW);
delay(DELAYTIME1); //

 

2. D_boot must have BV>VP

What do you mean, the deadtime of the bootstrap capacitor ...?

Thank you

0 Likes
yifei_y
Moderator
Moderator
Moderator
250 sign-ins 250 replies posted 25 likes received

Hi tum, 

The current flows as follows when high-side is on and low-side is off

yifei_y_0-1712111759368.png

We have following formulas

Vs = Vbus                                                                     (1)

V_Cboot = Vcc                                                           (2)

VB = Vbus + V_Cboot = Vbus + Vcc                    (3)

D_boot must have BV>VP means the bootstrap diode D2 must have the max. reverse voltage > Vbus+Vcc=100V + 10V =110V.

Regards,

YF

 

 

 

 

tum
Level 1
Level 1
First like given 10 sign-ins 5 sign-ins

oh thank you yifei, you did answer me the best way possible, on both mistakes. i've wrongly used a 40V diode, now i've replaced it with a higher one.😀 have a nice day

 

But the 

 

 

 

0 Likes