3/30/2020 2:27 PM | |
Joined: 9/27/2006 Last visit: 9/27/2024 Posts: 12283 Rating: (2685)
|
Hello Sven; SFC 22 is part of a group of functions available in Step 7 v5.x that manipulate CPU memory (SFC 20 BLK_Mov, SFC 21 Fill, SFC 25 Compress) or DBs in work memroy (SFC 22 Creat_DB), SFC 23 Del-DB, SFC 24 Test-DB). You will find basic information on them in chapter 3 of the following manual: System Software for S7-300/400 System and Standard Functions Volume 1 and Volume 2 https://support.industry.siemens.com/cs/ww/en/view/44240604 First, using SFC 22, the number of the created DB is chosen from a range of available numbers (see the block parameters LO_LIMIT and HI_LIMIT; the number of reserved bytes is specified with the parameter COUNT. if a DB with a selected number already exists, another is created from the available range. Second, a DB created woith SFC 22 only has a byte length, not a variable structure and no values in the reserved structure. You must program the variables you want to access, as one example shows below. Presetting variables after "CREAT_DB- (SFC 22) https://support.industry.siemens.com/cs/ww/en/view/189016 You should check your CPU to see if there is still enough work memory available to create your required DB, and if the SFC 22 generates an error code when processed (parameter RET_VALUE). Error codes are described in the manual above, section 3.4. Hope this helps, Daniel Chartier |
3/30/2020 3:04 PM | |
Joined: 3/20/2017 Last visit: 3/14/2022 Posts: 8 Rating: (0) |
Hi Daniel, thank you for responding so fast! This raises some other questions for me though. If i recall correctly the work memory was at 90(ish)%
Thank you, your answer sheds some light, but unfortunately raises a few more questions. AttachmentLendo.zip (86 Downloads) |
3/31/2020 5:14 AM | |
Joined: 10/7/2005 Last visit: 9/27/2024 Posts: 3023 Rating: (1054)
|
Hi Sven Your program uses SFC82 (create DB in load memory) and SFC83 (load DB from load memory) which I suspect are responsible for the CPU-DB's that you see. Usage of SFC23 (delete DB) in the program can explain how they go missing. Being an online upload without comments or symbols makes evaluation of what is actually going on in your program a bit of too much time consuming "fun" though, but I hope this helps anyhow. |
Cheers |
|
Follow us on