开云体育

How to create IEC 61000-4-5 surge waveform in time & s behavioral ?


 

Hi, :
?
May I ask a question about to generate the surge waveform using time equation & s-equation, on how to do that in LTspice ?
?
For example, I asked the ChatGPT, about the 6.0KV surge waveform of time domain, then same as the s-domain equation, but I don't quite know how to express the s-equation exactly. I presume maybe some initial condition needed to be given, but brain twisted. And not sure if that's supported in BV's laplace expression, often it's for transfer function. In the following, it shows the equation for time & s as well.
?
Then since I can't upload the file , (the policy of ... some confidential reason, though I don't know what needed to be confidential), I beg your pardon, please allow me to paste the .asc content in the tail if this thread.
?
Have a nice day. Thank you very much.
Best regards.
?
the image about equation description here. (I don't know how to insert picture correctly here, it said me don't have the privilege.)
?
Version 4
SHEET 1 1120 680
WIRE 0 112 0 96
WIRE 192 112 0 112
WIRE 672 112 672 96
WIRE 864 112 672 112
WIRE 0 208 0 192
WIRE 192 208 192 192
WIRE 672 208 672 192
WIRE 864 208 864 192
FLAG 0 208 0
FLAG 192 208 0
FLAG 0 96 V_time
FLAG 672 208 0
FLAG 864 208 0
FLAG 672 96 V_s
SYMBOL bv 0 96 R0
WINDOW 3 -274 178 Left 2
SYMATTR InstName B1
SYMATTR Value V=6000*( ?exp(-3.5e6*time) - exp(-0.14e6*time) ?)
SYMBOL res 176 96 R0
SYMATTR InstName R1
SYMATTR Value 1
SYMBOL bv 672 96 R0
WINDOW 3 -274 178 Left 2
SYMATTR InstName B2
SYMATTR Value V=1*u(time) laplace=6000*( 1/(s+3.5e6) - 1/(s+0.14e6) )
SYMBOL res 848 96 R0
SYMATTR InstName R2
SYMATTR Value 1
TEXT 148 -90 Left 2 !.tran 200u startup


 

开云体育

On 14/03/2025 07:32, ericsson.sunshine via groups.io wrote:
Hi, :
?
May I ask a question about to generate the surge waveform using time equation & s-equation, on how to do that in LTspice ?
?
For example, I asked the ChatGPT, about the 6.0KV surge waveform of time domain, then same as the s-domain equation, but I don't quite know how to express the s-equation exactly. I presume maybe some initial condition needed to be given, but brain twisted. And not sure if that's supported in BV's laplace expression, often it's for transfer function. In the following, it shows the equation for time & s as well.
?
Then since I can't upload the file , (the policy of ... some confidential reason, though I don't know what needed to be confidential), I beg your pardon, please allow me to paste the .asc content in the tail if this thread.
?
Have a nice day. Thank you very much.
Best regards.
?
the image about equation description here. (I don't know how to insert picture correctly here, it said me don't have the privilege.)
The solution I came up with a few years ago was to use a simple look-up table. At the time, I needed IEC 61000-4-2. I don't know what the differences are compared to IEC 61000-4-5, but you could simply replace the look-up table, as necessary.

Here is a Test Schematic.

--
Regards,
Tony


 

On Fri, Mar 14, 2025 at 02:32 AM, <ericsson.sunshine@...> wrote:
Then since I can't upload the file , (the policy of ... some confidential reason, though I don't know what needed to be confidential), I beg your pardon, please allow me to paste the .asc content in the tail if this thread.
I uploaded your file for you, in "IEC_61000-4-2_Surge_6KV_ericsson_sunshine.asc" in the Temp folder.
?
It is curious that you can upload a Photo but not a File.? Does groups.io actually allow one but block the other?? What is the message you see when attempting to upload a file?
?
Tony uploaded "IEC_61000-4-2_Test.zip", but it has a symbol that LTspice might not have and can't be opened in older versions.
?
Andy
?


 

开云体育

On 14/03/2025 11:30, Andy I via groups.io wrote:
Tony uploaded "IEC_61000-4-2_Test.zip", but it has a symbol that LTspice might not have and can't be opened in older versions.
Oops. Zip file updated with symbol.

--
Regards,
Tony


 

Hi, Tony, Andy:
?
Thank you for your opinions and sharing files.
?
The file uploading issue was not about technical, it's about company policy, they will log the uploaded files, and trace the content maybe (I am not sure what detailed will be done.)
So that, the picture is not about 'confidential material' it's public knowledge, no 'confidential issue', but *.asc, I am not so sure, any insignificant thing could damage huge, says 'A single spark can start a prairie fire'.
Just to avoid any suspect.?
?
In fact, the main concern of this topic is about the s-equation, if you have ran the simulation , you will see the amplitude of time domain is about 5KV, but only? 40mV in the s-domain, though the s-equation was surely correct by matlab or ChatGPT by doing laplace tranform from its time's.
?
If you have any idea, why their output are different, please kindly share some opinions.
(Is it bug or something else .... ? After some time, I presume the initial condition of the voltage should be 0V same as time-domain....., the different is the scale mV vs. KV...)
?
Thank you very much.
Best regards.


 

开云体育

On 14/03/2025 15:07, ericsson.sunshine via groups.io wrote:
So that, the picture is not about 'confidential material' it's public knowledge, no 'confidential issue', but *.asc, I am not so sure, any insignificant thing could damage huge, says 'A single spark can start a prairie fire'.
Just to avoid any suspect.?
.asc files are sometimes used in public key cryptography. This might be the reason they are restricted - might be on the IT department's blacklist. Just like there are many types of files you can't attach in emails any longer. (Well, you can attach them, but they get stripped out by the mail server, without notifying the sender.)

--
Regards,
Tony


 

I'm curious as to why you want to (inaccurately) do this in the s-domain?
Your equation is available in the time domain, and it perfectly fits
the way of working of the EXP() voltage source:
Vxxx n+ n- EXP(V1 V2 Td1 Tau1 Td2 Tau2).

-marcel


 

On Sat, Mar 15, 2025 at 02:09 AM, <mhx@...> wrote:
I'm curious as to why you want to (inaccurately) do this in the s-domain?
Your equation is available in the time domain, and it perfectly fits
the way of working of the EXP() voltage source:
Vxxx n+ n- EXP(V1 V2 Td1 Tau1 Td2 Tau2).

-marcel
Hello, Marcel:
?
At first, it's the ideal in sketch the applied circuitry in s-domain on how to attenuate the surge amplitude. Sometimes, in math domain, possibly solutions will be clear to see, though not everytime.
?
Some reasons else maybe:
?
1. For fun to see more ways to implement on simulator.
2. Curiosity the capability of LTspice's Laplace.
3. Puzzle for group ? (puzzle or not , not sure.)
?
Thank you , wish you happy and healthy.


 

On Fri, Mar 14, 2025 at 06:35 PM, Tony Casey wrote:
On 14/03/2025 11:30, Andy I via groups.io wrote:
Tony uploaded "IEC_61000-4-2_Test.zip", but it has a symbol that LTspice might not have and can't be opened in older versions.
Oops. Zip file updated with symbol.

--
Regards,
Tony
?
?
Just to note, in the latest LTspice 24.1.5, it will have the following message... It seems 'SCOPEDATA=' is forced to replace the 'file='.
Looks like, compatible issue between newer & older...was used to the older XVII...
?
"Monotonically increasing value expected. You may want to use SCOPEDATA=<filename> instead. (See the LTspice help for more details.)
1.00E-09,0.9088###>
1.00E-09<###,0.9110"
?
And, Thanks for the inspiration of varistors.


 

Hi, :
?
You know what ? I'm surprised about I do have the memory about using this in Matlab.
It got the same result. I worship the math as some kind of religion, but this time, I can't get the desired answer, what's going on ?
?
Is the math wrong ?
?
Can someone tell any configuration wrong ? It almost broke my religion. Hope someone recognize it.
?
I am wondering, how many people are you here...
?
Wish you all happy & healthy.
?
Best regards.


 

In simple words, ...
The user's fault or math's fault ?
?
Beg your pardon first, so noisy, definitely my fault.
?
In fact, my default thoughts is 99% belong to user's fault, but I don't know what's wrong.
?
If any hint,?
?
Thank you very much.


 

The transfer function and time domain expressions look OK to me but the scope plot is obviously "wrong".
This could be caused by the sample-based Simulink implementation. What is the sample-rate / solver
algorithm? If there is aliasing all three representations could be correct.

-marcel


 

I don't know, in my domain what I can do the best is to spend the tiny time step = 1ps. (already the smallest when considering the computing performance.)
But neither LTspice nor Matlab/simulink has the expected answer. (Thay have the same output ~ 40mV)
?
About the algorithm inside transfer function, I really have no idea, maybe not enough decimal digits been calculated. Can't find any where to configure that.
?
Best regards.
?
On Mon, Mar 17, 2025 at 04:02 PM, <mhx@...> wrote:

The transfer function and time domain expressions look OK to me but the scope plot is obviously "wrong".
This could be caused by the sample-based Simulink implementation. What is the sample-rate / solver
algorithm? If there is aliasing all three representations could be correct.

-marcel
?
?


 

I think I found it. When the time-domain waveform is plotted from t=0 to t=50us, it
shows a *negative-going* exponential pulse reaching -5.037kV at 960ns. (The shape is
approximately waht your picture shows, the scale is not.) At 41us it is about -20V. I am
sure that when Simulink is told to use a sample-rate of 10ns and an accuracy of 10e-9
or better, it will show the same thing. As should LTspice.

-marcel


 

Hi, Marcel:
?
In fact, it doesn't matter to add a '-' sign in time or s-domain.
It just changes the positive/negative, instead of the amplitude.
?
Best regards.
?
On Mon, Mar 17, 2025 at 08:43 PM, <mhx@...> wrote:

I think I found it. When the time-domain waveform is plotted from t=0 to t=50us, it
shows a *negative-going* exponential pulse reaching -5.037kV at 960ns. (The shape is
approximately waht your picture shows, the scale is not.) At 41us it is about -20V. I am
sure that when Simulink is told to use a sample-rate of 10ns and an accuracy of 10e-9
or better, it will show the same thing. As should LTspice.

-marcel
?
?
?


 

Sorry, forgot, I have used 1e-9 today in Matlab, I didn't wait it ran all 200us, Just 23% to see the most shape of the leading, the scale is the same, peak approx 40mV.
?
Best regards.
?
On Mon, Mar 17, 2025 at 09:14 PM, <ericsson.sunshine@...> wrote:

Hi, Marcel:
?
In fact, it doesn't matter to add a '-' sign in time or s-domain.
It just changes the positive/negative, instead of the amplitude.
?
Best regards.
?
On Mon, Mar 17, 2025 at 08:43 PM, <mhx@...> wrote:
I think I found it. When the time-domain waveform is plotted from t=0 to t=50us, it
shows a *negative-going* exponential pulse reaching -5.037kV at 960ns. (The shape is
approximately waht your picture shows, the scale is not.) At 41us it is about -20V. I am
sure that when Simulink is told to use a sample-rate of 10ns and an accuracy of 10e-9
or better, it will show the same thing. As should LTspice.

-marcel
?
?
?


 

On Mon, Mar 17, 2025 at 02:19 AM, <ericsson.sunshine@...> wrote:

Sorry, forgot, I have used 1e-9 today in Matlab, I didn't wait it ran all
200us, Just 23% to see the most shape of the leading, the scale is the same,
peak approx 40mV.
You only need the first 40us, and even 1us should already be enough...

-marcel


 

Hi,
Same thing with 24.1.4
C:\Users\NAME\Documents\Simulation\ESD\IEC_61000-4-2_Test (1)\IEC_61000-4-2.inc(201): Monotonically increasing value expected.
1.00E-09,0.9088###>
1.00E-09<###,0.9110


 

Your are telling LTspice that you want the y-value to be 0.9088 and 0.9110 simultaneously at time 1ns. What would be the correct behavior here that universally applies to all use cases?
?
Best Regards,
Mathias
?
On Tue, Mar 18, 2025 at 08:27 AM, <emilien.sabard@...> wrote:

Hi,
Same thing with 24.1.4
C:\Users\NAME\Documents\Simulation\ESD\IEC_61000-4-2_Test (1)\IEC_61000-4-2.inc(201): Monotonically increasing value expected.
1.00E-09,0.9088###>
1.00E-09<###,0.9110


 

开云体育

On 18/03/2025 10:27, Mathias Born via groups.io wrote:
Your are telling LTspice that you want the y-value to be 0.9088 and 0.9110 simultaneously at time 1ns. What would be the correct behavior here that universally applies to all use cases?
?
Best Regards,
Mathias
?
On Tue, Mar 18, 2025 at 08:27 AM, <emilien.sabard@...> wrote:
Hi,
Same thing with 24.1.4
C:\Users\NAME\Documents\Simulation\ESD\IEC_61000-4-2_Test (1)\IEC_61000-4-2.inc(201): Monotonically increasing value expected.
1.00E-09,0.9088###>
1.00E-09<###,0.9110
This is my fault, my spreadsheet truncated the number of decimal places in the table. I'll upload a fixed version, presently. Interesting that it was previously accepted without error.

--
Regards,
Tony