3/6/2019 7:44 PM  
Posts: 3 Rating: (0) 
I hope anyone can help me about LMN_D of FB41 in S7 300. I tried to get the value of LMN_D, Here are my settings for FB41: GAIN = 1.0 CYCLE = 50MS TD = 1S TM_LAG = 1S This is the value that i got from 0 error to 40.00289 error, the LMN_D is 39.02721 until it slowly decreases to 0.0 This is the value that i got from 0 error to 38.00275 error, the LMN_D is 37.07586 until it slowly decreases to 0.0 This is the value that i got from 0 error to 29.00029 error, the LMN_D is 28.29297 until it slowly decreases to 0.0 This is the value that i got from 0 error to 18.00130 error, the LMN_D is 17.56225 until it slowly decreases to 0.0 This is the value that i got from 0 error to 6.000435 error, the LMN_D is 5.854083 until it slowly decreases to 0.0 What is the step by step solution on how did siemens get the initial value of LMN_D before it slowly decreases to 0.0? 
3/6/2019 10:01 PM  
Joined: 12/4/2009 Last visit: 2/27/2023 Posts: 452 Rating: (132) 
Hi! LMN_D is derivation part of controller output. Controller output is calculated as sum of P, I and D part. For the sake of explanation simplicity, let's assume that your error signal changes suddenly (from 0.0 to 10.0). Let's also assume that there is no integration part and that controller gain equals one (1.0). In that simple case initial controller output will equal your error derivation multiplied with (TD / TM_LAG), and this peak value will descend to zero over a certain time. Descending rate will depend on TM_LAG value  the higher the TM_LAG value is output will descend slower. For first order response it is often said that transient vanishes after approximately 5~6 Tau (tau is TM_LAG in this case). Since picture says more than thousand words, I'd suggest you to create a trend. Program a simple PID loop with TD = 10.0, TM_LAG = 20.0, G = 1.0 and TI = 0.0. After that bring 10% change to controller input (create error signal) and observe controller response. One such response can be found here: Hope this helps. 
If this post actually helped, you may consider using the Rate button above. 

3/7/2019 12:12 AM  
Posts: 3 Rating: (0) 
But how do I compute/calculate for the error derivation peak value? With GAIN = 1.0, CYCLE = T#50MS, TD = T#1S, TM_LAG = T#1S From 0.0 error to 40.00289 error, I got error derivation peak value 39.02721. How do I compute/calculate for the derivation peak value 39.02721? And how does CYCLE(SAMPLING TIME) affect the error derivation peak value and the descending rate? With the same settings but different CYCLE(SAMPLING TIME), the error derivation peak value and the descending rate are different.

Last edited by: JDC1357 at: 3/7/2019 12:15:06 AM 

3/7/2019 12:27 AM  
Joined: 12/4/2009 Last visit: 2/27/2023 Posts: 452 Rating: (132) 
Hi again. Cycle time affects derivation value, since derivation is being calculated as (current value  previous value). Previous value vs current value thus heavily depends on sampling cycle (sampling time). Hope you understand this. Regards. 
If this post actually helped, you may consider using the Rate button above. 

3/7/2019 5:51 AM  
Posts: 3 Rating: (0) 
But the derivation value I got is 39.02721, not 40.00289 minus 0.0 = 40.00289. Can you show me how do you calculate the derivation value?

Last edited by: JDC1357 at: 3/7/2019 5:55:16 AM 

3/8/2019 8:23 AM  
Joined: 12/4/2009 Last visit: 2/27/2023 Posts: 452 Rating: (132) 
Hi again! I can't help you on that  function block is locked and thus only the author can provide the actual calculation algorithm with all the details. Regards. 
If this post actually helped, you may consider using the Rate button above. 

Follow us on