1/15/2013 10:36 AM | |
Joined: 9/23/2005 Last visit: 9/19/2024 Posts: 4347 Rating: (1446)
|
Hi, forthe case of long time sums ("integrations"), I suggest adapt the sample program that stay on: How is numerical integration for the S7-1200 programmed in STEP 7 (TIA Portal) V11? http://support.automation.siemens.com/BR/view/en/42469594 |
Denilson Pegaia |
|
1/15/2013 11:35 AM | |
Posts: 15 Rating: (0) |
Thanks for answer, version of TIA is V11 SP2. As i Said, at this time i already have FB that calculate final power consumption but at the end of pulse the TONR timer is reseted and the final value is also reseted. So i need some function that hold the value or exactly before the end of pulse read final value just before reseting the TONR (to count next pulses). As time between pulses grows in miliseconds, the consumption at the and of calculator decreases. And just while next pulse comes, the final value is reseted. I thought to use some MOVE instruction to move the value to other memory adress and then use it (to use for webserver, etc.). But how to say to MOVE instruction when it has to read the value... I look at your link but i though i am too close to solve it :). I have not project here, later i attach the project to have a look. |
1/18/2013 5:40 PM | |
Joined: 9/8/2009 Last visit: 7/17/2023 Posts: 1410 Rating: (152) |
I made this applicatin nearly 15yrs ago, sorry only remainds. Maybe a look how bench instruments work will help you, I have found one link: http://www.leapsecond.com/pdf/an200.pdf From what I understand error is defined: (1/N)*100%, N is number of pulses that can be pulses of your signal that came in a period of measuring or number of pulses of internal source gerator (RTC timer) in a time beetwen two pulses of your source. Now this let me to one fast conclusion: If measured signal has 1Hz we get: 1. mesuring time from one pulse to other with rtc timer we get 1000 pulses (if rtc resloution is 1ms), error is (1/1000)*100%=0.1% 2. measuring number of pulses within a period of 10s (cyclic interrupt) gives 10 counts -> error =(1/10)*100%=10% If we measure inputsignal of 10Hz we get: 1. method1 : (1/100)*100%=1% 2 method2: (1/100)*100%=1% All higher frequencies will give better accuracy using method 2, all frequencies below 10Hz will give better result with method 1. You can improve measuring with syncronizing time base with end signal like described in link of instrument. I do not have a plug&play solution for you, so sorry. |
1/21/2013 2:34 PM | |
Posts: 15 Rating: (0) |
This is solution, but it is for LOGO system, Betel made all project from measuring pulses to measuring heat in kWh, thank you Betel. Is posible to convert this project or part of it to TIA V11 for S7-1200?? If so, there will be a little bit fixes and it will works :)
|
1/26/2013 12:44 PM | |
Posts: 15 Rating: (0) |
Thank you very much i will try this and let you know. |
11/5/2013 7:49 PM | |
Posts: 40 Rating: (0) |
Hello Marko, I tried to implement your solution but I was born a new problem .. How can I reset the variable NewDTL at the end of the cycle? Otherwise Intervalis always zero .. Thanks a lot Attachment1.pdf (347 Downloads) |
11/6/2013 12:13 PM | |
Posts: 40 Rating: (0) |
Thanks again Marko, I think I understand and I'm learning a lot of things. I created what you have shown me (triggering OB200with the rising edge), but I do not think that the OB200 is executed. What should I check? I'm simulating the rising edge with the SIMULATOR for I / O, switching I0.1 Thanks a lot AttachmentDocumento1.pdf (297 Downloads) |
11/7/2013 10:51 AM | |
Posts: 40 Rating: (0) |
Hello Marko, excuses the insistence, butthis are my first steps, have patience .. I created a DB (Global memory) as you suggested, but still does notwork OB200. What else can I check? Thanks AttachmentScreenshot 71113.pdf (327 Downloads) |
11/7/2013 8:00 PM | |
Joined: 9/8/2009 Last visit: 7/17/2023 Posts: 1410 Rating: (152) |
ATTACH |
11/8/2013 9:42 AM | |
Posts: 40 Rating: (0) |
I had already tried to do what you have shown me. Theinstruction ATTACH gives mean error, saying that "the operand Block_OB is not allowed for this instruction" and besides it doesn't result someEVENT that i can select. Attachment81113.pdf (301 Downloads) |
Last edited by: Emanuele78 at: 11/8/2013 9:49 AM |
|
11/8/2013 4:58 PM | |
Posts: 40 Rating: (0) |
Ok, i have done as you suggest, but remain the problem of te OB200 (hardware interrupt).. Haveitoupdate my TIA PORTAL version? Thank youvery much Attachment1.pdf (314 Downloads) |
11/8/2013 4:59 PM | |
Posts: 40 Rating: (0) |
.
Attachment2.pdf (433 Downloads) |
11/8/2013 5:02 PM | |
Joined: 7/7/2010 Last visit: 9/23/2024 Posts: 15216 Rating: (2417)
|
OB_NR is just the Number part of the OB right? In this case, 200, not OB200. |
science guy |
|
11/11/2013 2:53 PM | |
Posts: 40 Rating: (0) |
Great! Thank you, it was my mistake
I think I've solved the two things that you indicated but OB200still does not work .. AttachmentDocumento1.pdf (389 Downloads) |
11/12/2013 2:23 PM | |
Joined: 9/8/2009 Last visit: 7/17/2023 Posts: 1410 Rating: (152) |
Attach and detach are to be used only at pulse (event, ...) whenever you want to add or remove it, not to be executed every scan cycle. You also have an error of exeuction of attach function. Maybe if you search the forum you will find others that succeded to make interrupts working. In some links I have found there is either no mention the need to attach interrupt, I guess if you configure it in configuration it shall attach and enable automaticly when you dowload the program /tf/WW/en/Posts/90763 Compile everything and download to PLC, check your connections, monitor the input that has to trigger interrupt, do you see input changing state?It has to be a minor problem for sure. |
Follow us on