1/19/2010 11:38 PM | |
Joined: 10/7/2005 Last visit: 9/19/2024 Posts: 3021 Rating: (1054)
|
Hello cbcX and Mike121 perhaps this FAQand Example may be of help for both of you: How can you access an element indirectly in STL in a two-dimensional array (e.g. a value in line 2 and column 5)? I hope this helps |
Cheers |
|
1/20/2010 4:20 AM | |
Posts: 43 Rating: (0) |
I should have also said I am using LAD not STL. |
1/20/2010 6:27 AM | |
Joined: 10/7/2005 Last visit: 9/19/2024 Posts: 3021 Rating: (1054)
|
Hello cbcX I'm afraid but if you need to indirect addressing you will have to use either STL and/or SCL (it's one of the few things that you can NOT do in LAD and/or FBD). While it may appear daunting having to to resort to STL to begin with, it really isn't all that tricky (in my humble opinion anyhow). The key is to firstly understand/appreciate the Byte.Bit format of the address pointer, followed by a fewtrial and error sample programs. Anyway, below are a couplemore links which will hopefully come in handy: Information on the topic of "Indirect addressing" How to program a loop with indirect addressing in STEP 7? I hope this helps |
Cheers |
|
1/20/2010 11:16 AM | |
Posts: 43 Rating: (0) |
It isn't a question of being tricky - it is a question of "what my customer's needs are - he wants a PLC program written in LAD not STL". |
1/20/2010 1:21 PM | |
Joined: 10/7/2005 Last visit: 9/19/2024 Posts: 3021 Rating: (1054)
|
Hello again cbcX little suprise that I'll need to agree with Aret on this one. Having said that, I wonder if the following "trick" could be of help: Create an FC or FB that contains the (STL)indirect addressingcode and inputs/ouputs as per your needs (e.g if you want to read a value from an array, you'll have at least an input for the index value and one for the declaration of the array as well as one outputwhich will contain the read value). Fully test/debug the functionality (and make sure to have a range check of the index valueto avoid runtime program errors in case anout of range index value is supplied) and then Know_How_Protect the block. This way it'll become a "black box background" blockwhich you call in your LAD code with a once off development effort and many many times reusable factor forthis and future projects (and your customer will be non the wiser). I hope this helps |
Cheers |
|
1/21/2010 11:11 AM | |
Joined: 1/29/2006 Last visit: 9/11/2024 Posts: 446 Rating: (64) |
Hey, guys! Something, that looks likewhatfritzproposed, can be seen on: http://support.automation.siemens.com/WW/view/en/17672567 Unfortunately, it is not free of charge.... have fun! uel123 |
This contribution was helpful to1 thankful Users |
Follow us on