# How to do the frequency response of the nonlinear vibration of a flexible PCB?

• 2K Views
• Last Post 20 September 2018
• Topic Is Solved
xiaofuli posted this 24 August 2018

I am currently doing the analysis of the frequency response of the nonlinear vibration with flexible PCB by using the module transient structural. But the problem is that I always get the linear results, I turn on the large deflection and nonlinear effects, I use the nonlinear mechanical with the element order of quadratic and the sizing function of adaptive to do the mesh. could someone give me some help, I had tried for a very long time, while I still did not get any satisfactory results.

Attached Files

xiaofuli posted this 20 September 2018

1. The attachment file will give you a clear explanation of the input and the output.

2.  That was my bad, I make a mistake on that, the IC displacement will be the output.

3. The input to the shaker, as far as he told me before, should be a displacement function. since I had shown him the nonlinear transient analysis with acceleration and fixed support, he said the result is close to the nonlinear vibratory effect(we call it also as hysteresis phenomenon), that is the reason why he would like me to check the result with displacement and fixed rotation as the BCs.

Attached Files

peteroznewman posted this 20 September 2018

If I turn off the Large Deflection switch and run the Transient Analysis as a linear solution, the first 0.5 seconds of that 94 Hz 1.4 mm amplitude input is 64 mm!

In the long term, after the transients die out in several seconds, that would become a 23 mm amplitude.

Inputs/Outputs

Your sketch shows tracking of the IC displacement as an "input", but that is an "output" or Result of the Transient simulation. The input to the Transient simulation is a displacement of the edges of the PCB, that is set to 1.4 mm of amplitude at a 94 Hz frequency.  Similarly, the input to the Shaker controller is either a displacement of X mm and a frequency, or it could be an acceleration input of some number of G's. That is what I want to know. What is the setting on the controller for the shaker table that creates the motion of the shaker that the fixture is attached to.

1. What is the "it" that might be helpful?  While you are there, ask him what the inputs are to the shaker.

2. If you link the Modal analysis Solution to the Transient Structural, then you inherit the supports that are in the Modal, which are Fixed Supports. The only load allowed then is Acceleration on the masses.

3. ANSYS 18.1 attached.

4. You can put any file in a zip file and it is allowed to be attached if it is < 120 MB.

If you have another question, please start a New Discussion, as this topic was marked as "Is Solved" long ago. When a discussion is very long and marked as Solved, fewer people are going to look at it.  There are members here beside me who have deep experience in Dynamics and it would be good to have their comments as well.

Regards,

Peter

Attached Files

• Liked by
xiaofuli posted this 20 September 2018

I would like to attach the video, but the file extension is not allowed. if you would like to take a look at it, I can send it to you by email.

Thanks

xiaofu

xiaofuli posted this 20 September 2018

I am so sorry that I make you feel confused about the input and the output.

I had attached a figure to show what they are.

Thanks

xiaofu

Attached Files

xiaofuli posted this 20 September 2018

Thanks for working so late to help me solve my questions, very grateful for that.

1. I will discuss with my academic professor tomorrow and ask him whether it is helpful or not.

2. There is one more question: if you link the modal analysis with the harmonic response, you could link the engineering data, geometry, setup and the solution, but if you link the solution, you will find out that there is no way to add the fixed rotation as the BCs. if it is this case, does it means that the fixed support will be automatically considered as the BCs of your frequency response?

3. Could you please send me a ANSYS version of  18.1, since I could not open the attached file with higher version

Thanks

Best Regards

peteroznewman posted this 20 September 2018

Hi,

The rule of thumb is that a minimum of 20 samples per cycle are required to reconstruct a time history plot. So for a 100 Hz frequency, the minimum number of samples is 2000.  I doubled that to get 4000 samples.

I created a 1 second input sample of 1.4 mm displacement amplitude at 94 Hz to run in the nonlinear transient model. I took the time history of one corner of the IC as the output. In the first few hundred milliseconds, higher modes are excited by the start of the vibration, but by 0.5 seconds, the transients have died down. Below is a spectrogram of the frequency content.

If I want to see what the nonlinear response is at 94 Hz, then I should throw away the first 0.5 seconds of data. This calls into question the sine sweep rate of 18 Hz/sec.  The military test specs I looked at took minutes to sweep from 50 to 500 Hz.

Here is the first 100 ms of the output.

Here is the last 100 ms of the output for the 1 second simulation.

It looks like the amplitude of the IC is 2 mm, while the amplitude of the fixture is 1.4 mm so the Relative Displacement amplitude of the IC is 0.6 mm.  This is the nonlinear result that matches the 23 mm from the linear harmonic analysis.

Hope this helps.

Best regards,

Peter

Attached Files

• Liked by
xiaofuli posted this 20 September 2018

Hi,

There is a question that I am not sure how could you get it. you mentioned that I could give the frequency range from 74hz to 110hz with 4000 data points. but how could you know that 4000 data points is good enough to get the right result?

you are right, as I perform the linear harmonic response with the first natural frequency of 92hz, there is no need to give 20000 data points with the frequency range from 80hz to 200hz.

thanks very much for helping me.

Best Regards

Xiaofu

peteroznewman posted this 20 September 2018

I am convinced that the very slow response of Mechanical was not due to the number of data points, but due to the number of Steps. When I ran the model with 2 seconds on a sweep from 74 to 110 Hz in 1 step, the solution only took 43 minutes. You can get 20,000 data points in 1 step by having a 10 second end time and a Maximum Time Step of 5e-4 seconds.  When you do this, I don't think you will get the slow script warning.

2. I don't understand why you don't know what the input to the shaker is.  It's an input. That means you set it!  How do you not know what the input is???

What do you mean that 1.4 mm is the amplitude of the output?  Where exactly is the output? Are you calling the motion of the fixture an output? I'm confused. Can you please clearly define what the input is and what the output is.

Yes, as I said above, a linear solution of 23 mm for a 50 G acceleration input is ridiculous. You can run the nonlinear Transient Structural with a 1.4 mm 94 Hz displacement input and see what the response of the IC will be.  The problem with a displacement input of 1.4 mm is that that value is included in the displacement of the IC, so you have to subtract 1.4 mm off the maximum displacement of the IC to get the displacement of the IC relative to the fixture.

For example, say you put in a 1 Hz frequency of 1.4 mm on the fixture. The IC is going to have a 1.4 mm displacement also, but the relative displacement is zero.

I agree there is another resonance for Mode 2 at 190 Hz.   That is fine, just do a sweep from 170 Hz to 210 Hz in a second analysis to complement the first mode of 93 Hz with a sweep from 74 to 110 Hz.

Kind regards,

Peter

• Liked by
xiaofuli posted this 19 September 2018

I just saw your updated information, and very thankful that you give me a lot of help

Best Regards

xiaofu

xiaofuli posted this 19 September 2018

I really learn a lot from your comprehensive explanation and thanks again for your patient help.

1. what I mean is exactly clicking No at the slow script dialog.

2. I also ask my academic professor about the amplitude of the 1.4mm, since it is the amplitude of the output but not input, what you had mentioned is very reasonable that 1.4mm input will cause very large deformation, but here comes a question, since with the large deflection turned on, the whole structure will be stiffened, which means the 23mm result from linear frequency response is not accurate. if large deflection is turned on, will it be possible that the 23mm deformation will be reduced to 2mm?

3. The reason why I pick the 20000 data points with 10s is because we are doing a sine sweep from 50 to 220hz and the nonlinear effect happens at around 190hz, therefore I have no choice to shorten the range from 50-210 to 70-110.

peteroznewman posted this 19 September 2018

In this Transient Structural, I changed the Analysis settings to have 1 step with a 2 second end time.

I wonder is some of the slow down was because you specified 20000 steps?

I created a 1.4 mm displacement that sweeps from 74 to 110 Hz in 2 seconds, but I used 2000 samples/ second.

I'm going to run that now.

ANSYS 18.2 archive attached.

Attached Files

• Liked by
peteroznewman posted this 19 September 2018

1. When the Transient Structural model finished, the folder had 38 GB of data.

2. The solver was limited to the maximum time step and did not use the minimum time step, so the change I made was not needed and made no difference.  The warning about the slow script has to do with processing 20,000 data points of output. It is a very heavy load to manipulate.

3. Do you mean clicking No at the slow script dialog?

You are doing a sine sweep from 20 to 200 Hz in 10 seconds or 18 Hz/second. Looking at the Modal results, you know the first natural frequency is at 92 Hz. Rather than spend 14 hours computing 10 seconds or 20000 points of data, why don't you instead spend 2.8 hours computing 2 seconds worth of data from 74 to 110 Hz. Then you can see the change in response as the frequency passes through the first natural frequency of 92 Hz.  You will also only end up with only 4000 points of data instead of 20000 points and that will not slow the script to the point where you get warnings.

4. Looking at the attached Harmonic Response file and your comment 4 above, you do not understand what the Harmonic Response analysis is or how to use it. I Deleted the Tabular data in system D and replaced it with a  98 m/s^2 (10 G) harmonic acceleration load.

Going with the suggestion above to look around the frequency of Mode 1, I changed the analysis settings to plot 50 points between 75 and 125 Hz.

I requested the Frequency Response of the Z axis Directional Deformation of a vertex on the corner of the IC.

The solve takes 22 seconds, but it is a linear solution.

What this says is that the corner of the IC will vibrate with an amplitude of 4.6 mm when a 10 G periodic acceleration is applied at 94 Hz.

But because it is a linear model, we know that the nonlinear solution for z-displacement is much less due to stress stiffening.

I only picked 10 G, but your displacement amplitude of 1.4 mm has an acceleration of 50 G at 94 Hz. With a 50 G input, the linear frequency response says the deformation amplitude would be 23 mm, but that is an absurd value. The nonlinear effects are going to keep it from getting that large.

I suppose that is why Dr. Perkins want a nonlinear Transient Dynamics solution that can have Large Deflection turned on.

Regards,

Peter

ANSYS 18.2 archive attached.

Attached Files

• Liked by
xiaofuli posted this 19 September 2018

1.I remembered that you mentioned it might be the problem of the disk space. if it is this case, how many disk space will be good enough to solve the problem?

2.I did it in my laptop, the warning came up a lot of times, if I minimize the time step from 5e-4 to 5e-5, will the warning come up again?

3. I will try with the solution you recommend to me, thanks for your help.

4. As for the harmonic response of the linear frequency response of the PCB, you mentioned that I could give the acceleration to see what it looks like, while there is an issue that should I give the acceleration as the form of components and give the z-axis with tabular data, but at the same time I also need to assign the corresponding frequencies. besides I could also do it with the vector form and give the magnitude with the direction. there are two different ways to do it, are they almost the same thing? I also attach the file with it. Thanks

Best Regards

xiaofu

Attached Files

peteroznewman posted this 18 September 2018

[EDITED]

Hi Xiaofuli,

I got the same Dialog warning message that you did.

The correct answer is No, I don't want to stop running the script.

Once I did that, I waited and it came up two more times and I kept picking No, then Mechanical eventually finished and it has solved all the way to 10 seconds.

The only change I made to the model, I don't know if this was required, was to change the minimum time step, I added a zero the make it ten times smaller at 5e-5 s.

The amount of data in the results is huge, which makes the computer take a long time to load or save results after the solve.

Regards,

Peter

xiaofuli posted this 18 September 2018

Hi,

I met a problem from ANSYS simulation, every time when I run the simulation for the PCB model which was given the fixed rotation with displacement as the BCs. A warning will pop up that will make the simulation very slow and sometimes just stuck there. but I could get the result if I give the fixed support with acceleration. do you have some suggestion about how could I get through this problem? I also attached the warning and the archive file. Thanks

Best Regards

xiaofu

Attached Files

peteroznewman posted this 02 September 2018

1. Acceleration is applied to all bodies, so don't try to change it to selected surfaces.

2. Okay, please start a new discussion if you have more questions, as this discussion has gotten too long.

3. Great.

Best regards,

Peter

xiaofuli posted this 02 September 2018

some other questions I need to ask you:

1. As for the transient structural, If I apply the fixed support with acceleration, it seems that the acceleration is locked automatically when I try to change the default applying geometry from All bodies to surfaces on the two sides, can I change it? besides, last time as you mentioned, it does not matter that whether you apply the acceleration to the all bodies or the two surfaces on the two sides, but the real BCs is that we will clamp the two surfaces on the corner and apply the external excitation, if we make the input for the whole bodies, it will change the BCs, then the results will be different, am I correct?

2. I will check the input and find it out whether it is constant force or not. If I have some other questions, I will let you know.

3. I use the acceleration data you post it before, and got the exact the same result as you did, thanks for your suggestion.

Best Regards

xiaofu

peteroznewman posted this 02 September 2018

Sine Sweep on Shaker Table: Is it constant amplitude or constant acceleration?

If the constant displacement is 1.4 mm, then the acceleration is 36 G at 80 Hz, while it is 225 G at 200 Hz . That is a lot more reasonable than 3000 G.

If the constant acceleration is 36 G acceleration, then the displacement amplitude is 1.4 mm at 80 Hz and reduces to 0.2 mm at 200 Hz.

Find out what the shaker table settings were for the experiment. I think you will find is it a constant G force input with the start and end frequency. What three values were input into the shaker controller?

If the shaker input was a constant G force input, then use an acceleration input with fixed supports in the model.

If you find the shaker input was a constant displacement of 1.4 mm, then use a displacement input with fixed rotation in the model.

2. The exceedingly high G acceleration caused the solver to fail to converge, which may be because of the plasticity in the model. The high acceleration causes a high stress that stretched an element so far out of shape that it could no longer compute stress and strain.  If you delete the Multilinear plasticity and rerun the solver, you might find it gets further in time than it did before, but as I said, the final value of 3000 G is ridiculous and the solver may not converge later in time even with a linear material.

The solver doesn't stop when the nonlinear material Total Strain exceeds the material property of Elongation at Break. It just keeps stretching the material. You have to plot the Total Strain and see if the maximum value has exceeded Elongation in order to predict failure.  This is just like a linear elastic material, the solver will continue to run to values of stress far exceeding the Ultimate Strength. It is up to you to plot the von Mises equivalent stress and compare it with the Ultimate Strength to see if the part is predicted to fail.

3. I don't know what you saw in the video that was 15 mm. If the shaker was set to 1.4 mm, that is what is important.

Regards,

Peter

• Liked by
xiaofuli posted this 01 September 2018

This is the error I got from the solve.out file

The element has excessive distortion, is the reason that the mesh is not fine enough, or the element type is wrong, or the time step is not small enough? could you please give me some suggestion? since I meet this kind of problems more than one time. it is archive file I sent it to you last time, you could also take a look at it. Thanks

Best Regards

xiaofu

xiaofuli posted this 01 September 2018

1. Like you mentioned, I should not use the 15mm displacement for the input, instead, I will use the acceleration data and integrate it two times to get the displacement. does it matter that whether I use the acceleration or the displacement as the input? one thing as I know is that if I give the displacement, the only thing different is that I could not use the fixed support as the BCs. instead, I need to use the fixed rotation. am I correct?

2. One thing I feel confused is that, If I give the input displacement with +/- 15mm, the largest acceleration seems close to 3000G, the reason why I got some errors concerning the convergence is because the acceleration exceeds some limited value that might make the PCB fail? or it might be a case that the iteration times is not enough to reach the equilibrium conditions?

3. In fact, the amplitude of the displacement from the experiment is 1.4mm, but the reason why I use the 15mm is because I check the video recorded by the high-speed camera. While I need to let the professor to double check the results he got from the experiment.

Thanks

Best Regards

xiaofu

peteroznewman posted this 01 September 2018

Dear Xiaofu,

When you say that displacement is "my real BC", that is only from the frame-of-reference of an observer standing on the ground next to the shaker. The fixture appears to move up and down, carrying the PCB with it.

Change your frame-of-reference and put yourself on the fixture. From that point of view, the fixture doesn't move at all, but you feel the acceleration go positive and negative, causing the PCB to flex up and down. This is just as real as the frame-of-reference of the observer standing on the ground.

I opened your archive and I looked at the system C, that has the displacements. It is showing +/- 15 mm of displacement.  That is way too much. Where did you get 15 mm from?  Have you computed the acceleration from that data?

I can tell that you have a sine sweep from 80 Hz to 200 Hz in the displacement data.

Because the displacement magnitude is constant over the frequency range, the acceleration must increase to meet the displacement requirement. The plot below shows the acceleration in G required to meet this 15 mm displacement.

I'm sure you don't want your PCB subjected to nearly 3000 G of acceleration.

Why don't you define the sine sweep requirements in terms of G force and let the displacement be calculated?

Regards,

Peter

• Liked by
xiaofuli posted this 01 September 2018

1. I meet a convergence issue when I give the BCs as the fixed rotation and the displacement at the 2 surfaces on the corner(since that is my real BCs when I was running the experiment). I tried to change the iteration times from default 26 to 60, but it does not work and as for the command, I give the selection mode ALL, which is marked in black color on the following figures. besides I also upload the workbench file with it. thanks very much for your help

Best Regards

Xiaofu

Attached Files

peteroznewman posted this 31 August 2018

Damping
You will have to assume some value of damping.  Since you are clamped so tightly to the PCB using a steel fixture and clamping bars, it is probably lightly damped. Try 5% damping. That means typing 0.05 in the Direct Input. There are experimental methods to measure the actual damping, like a pluck test.

1) In a Transient Structural, you are free to choose to apply a Force, Acceleration, Velocity or Displacement to the fixture. It is entirely up to you. These boundary conditions can be applied to the fixture that is bolted to the armature of the shaker, but if you use Force, then the mass of the fixture determines what the resulting acceleration is going to be. You can put the entire mass of the armature that drives the shaker table if you wish.

2) You can do a waterfall FFT and take blocks of data over the 10 second simulation and show how the frequency content shifts versus time.

You can output the displacement data of any point on the PCB or chip or fixture that you want.  In a 3D model, where a chip stands above the PCB and there are lead lines coming out the side of the package and are bent down to be soldered into via in the PCB, then you can have motion of the chip separate from the motion of the PCB under the chip, but in your 2D model, that is simplified away into a single point.

3) Yes, you can have a Tabular input to the Displacement boundary condition that specifies the x, y, z coordinates of an edge or face vs. time.

4) In Transient Structural, you can run for a few seconds at a particular frequency, let a displacement amplitude develop, then change the frequency for the next few seconds.  That is what we are doing in the Sine Sweep.  Gradually changing the frequency from 20 to 200 Hz over 10 seconds.

Best regards,

Peter

• Liked by
xiaofuli posted this 31 August 2018

1. In fact, I have not done ant damping test for the flexible PCB with IC chips, therefore, could I just assume a reasonable damping for my model? since there is two choices for the damping. (1) direct input (2) damping VS frequency. I have no idea how to use the setting of damping VS frequency. Instead I put a value to the direct input for the damping. could you please give me some advice? is it necessary that I have to test the damping from the experiment.

sorry that here are some of the information and questions that given from my major professor, could you please help me to answer it?

1) Is it possible to apply force only to fixture, and not to the entire PCB simultaneously?

2) The FFT is a time-invariant technique, so it does not show nonlinear vibratory hysteresis. It is necessary to have the displacement data of the center of the PCB vs. time, so that it can be plotted against the displacement data of the chirp vs. time.

3) Is tabular displacement support a transient simulation?

4) As a different direction, is it possible to run a simulation at a particular frequency, then use the maximum displacement as the initial conditions for another simulation at a particular frequency? This should also work to find the vibratory hysteresis.

Best Regards

Xiaofu

peteroznewman posted this 31 August 2018

1. Make the number of steps 1 and the End Time 10 seconds, make the Time Step 5e-4 seconds.

2. Acceleration applies to all bodies everywhere. There is no need to pick anything except one surface to point the acceleration vector. That is the Z-axis. Pick any surface for that.

3. If you put the data into matlab and do an FFT, you will get the frequency content in the data. There will be a big spike at the first natural frequency from the modal analysis, or near to there for the nonlinear case. That is not Frequency Response Function, which is a ratio of input to output.

4. You would have to try the transient structural both ways: fixed+tabular acceleration or fixed rotation+tabular displacement support. Note that you have to double integrate the acceleration signal to have a different table for the displacement.

peteroznewman posted this 31 August 2018

Here is the Linear MSUP (red) and the Nonlinear Full Transient (green) deformation response vs. Time.

It seems the Linear had a lot more damping that the Full Transient.  What data do you have about the damping in your PCB?

Also, you can see some of the nonlinear geometric effect that has stiffened the structure, leading to higher natural frequencies, leading to a later time when the resonance develops.

xiaofuli posted this 31 August 2018

Thanks very much for your reply, you really help me a lot.

1. It seems that when I was doing the mode superposition by using the modal and transient structural, there is a limit for the time steps, I could not set it to 20000, instead the maximum I could put is 10000, do you have any idea why it will happen?

2. when I use the mode superposition with both the modal and harmonic response, there is a problem that I could not change the position where the acceleration applied from the whole body to the two surfaces on the two sides or corners, do you have any idea that how could I apply the acceleration on the two surfaces on the sides?

3. After I have done the full transient analysis, just insert the data I got into the matlab and  deal the data with the FFT in matlab to get the frequency response. am I right?

4. one last thing is that: As for the BCs, we do have two choices like you stated before, either fixed support with acceleration or fixed rotation with displacement.

it does not matter which choice you pick but still will get to the same result at last. am I correct?

Best Regards

thanks very much again since you never feel impatient to answer my questions

xiaofu

peteroznewman posted this 30 August 2018

Here is the Linear solution of the Transient Structural.

• Liked by
peteroznewman posted this 30 August 2018

I see you have two surface bodies.

• Body      Thickness   Material      Mass
Outer      0.15 mm    substrate     0.454 g
Center     2.68 mm   IC chip         1.239 g

The bending stiffness of a beam depends on the factor EI, where E is Young's Modulus and I is area moment of inertia.

While both materials have the same value of E, 5000 MPa, they have very different thickness values. For a rectangular cross section of thickness t and breadth b, the formula for I is bt^3/12.  So you can see that the IC is going to be much stiffer than the PCB substrate.

The thickness of 0.15 mm seems very thin for a board that has a span of 45 mm. Is it correct?

In the Static Structural model, do Fixed Supports like you did in the Modal, instead of the Displacment and Fixed Rotation you had.  Then add an Acceleration load in the Z direction of 200 m/s/s. With Large Deflection turned On, you will get this plot of Deformation

In the Modal analysis, you set the stiffness behavior of the IC to rigid, but there is no need because it is already much stiffer than the PCB, and the Modal solution won't solve with a Rigid body.  Set it back to Flexible.  You can use a finer mesh in Modal.

After you solve the Modal, you can drag and drop a Transient Structural onto the solution cell of the Modal.  Then you can apply an acceleration load to the Transient Structural to do the sine sweep for a Linear Modal Superposition Solution. No Large Deformation!

Paste the data from the attached text file, which is a 5g acceleration sweep from 20 Hz to 200 Hz sampled at 2000 Hz.

Analysis Settings, set the Time step to 5e-4 and Solve to get the Linear solution.

Duplicate the Transient Structural system and add the Fixed Supports, then you can turn on Large Deflection and perform the Full Transient solution.

You may as well add a Harmonic Analysis off the Modal to see what the frequency response is from the linear system.

Good Luck!

Attached Files

• Liked by
xiaofuli posted this 29 August 2018