11/15/2017 1:10 PM | |
Posts: 75 Rating: (0) |
So, GSD file is necessary for every profibus communication? I have problems with s7300 cpu 315F 2PN/DP about profibus, and I didn't see gsd files in many profibus examples. Best regards. ------------------------------------------------------------------------------------------ |
Last edited by: Jen_Moderator at: 11/16/2017 8:58:10 AMNew subject after splitting |
|
11/15/2017 5:49 PM | |
Posts: 75 Rating: (0) |
Hello Cristoph. Thank you for help a lot.
My profibus project is communication between 2 identical S7 300 CPUs (315F 2 PN/DP). And after establishing communication I need to program pneumatic machine (from attachment) which is connected on slave device. I have not CP modules (communicattion procesor), only AS Interfaces: CP 343-2, and it's not usable for profibus. So I have to make CPU-CPU communication, and I found that information in this book: In that book on page 242, Table 41-2, I found out that I need to use System function blocks (SFC14 and SFC15). In Slave OB1 I should write this commands: //reading consistent data = 3 byte or > 4 byte CALL "DPRD_DAT" LADDR :=W#?#? RET_VAL:=MW? RECORD :=P#DB14.DBX3.0 BYTE ?
And in Master OB1: //reading consistent data = 3 byte or > 4 byte CALL "DPRD_DAT" LADDR :=W#?#? RET_VAL:=MW? RECORD :=P#DB14.DBX3.0 BYTE ? Is this true? But I don't know what values I need to write instead "?". I guess it's in realtion with values from HW config from master and slave devices? In card Adresses default value is 2047, why? Need to change? In attachment are my hw configs. I would ask you to look. AttachmentFor Cristoph.zip (307 Downloads) |
Last edited by: Jen_Moderator at: 11/16/2017 8:52:37 AMInserted right link. |
|
11/15/2017 6:59 PM | |
Joined: 9/27/2006 Last visit: 9/26/2024 Posts: 12283 Rating: (2685) |
Hello Gujaa; You are still working on this issue? One important point that has already been pointed out in an earlier thread: You do not need SFC 15/SFC14 to read and write between a master and a slave on Profibus. It is not required, unless you need to transfer consistent data between the two (consistent data definitions have already been discussed). You can easily read and write with Load/Transfer (in SCL) (or MOVE, in LAD) instructions for example. Now on your question about what the ? represent in the example you show: the ? acts as a place holder for the data required in your application. See the example for SFC15/SFC14 in this document, page 12, and attached below.
https://support.industry.siemens.com/cs/ww/en/view/6518938 LADDR: You choose the correct inputand output addresses and write them i Hex format (you have them in your exchange configuration, such as you show with your slave Hardware configuration screenshot). RECORD: You choose the source or destination area address, along with the number of bytes you want to transfer. RET_VAL: You choose the address of the register that will contain the error message in case you made an error in programming these values. Once more: you do not need SFC15 and SFC14 for your test application. I suggest you try searching and reading more on the subject before you attempt to use ANY pointers (such as the RECORD parameter above). until you are familiar with this data structure you will only get more confused. Hope this helps, Daniel Chartier |
Last edited by: Jen_Moderator at: 11/16/2017 9:26:13 AMInserted right link. |
|
11/16/2017 5:20 PM | |
Posts: 75 Rating: (0) |
Hi Daniel. The goal of my project is profibus communication between 2 plc, and it does not matter on what way. So, I will accept your suggestion and make first test application in the easiest way (with Load/Transfer instruction). Now, in this example: I'm confused about DB14 and DB15 blocks. Is that necessary for this configuration in attachment? Please help.
|
Last edited by: Jen_Moderator at: 11/17/2017 9:09:12 AMInserted right link. |
|
11/16/2017 11:34 PM | |
Posts: 75 Rating: (0) |
I did it already, so many times. I have spent a lot of time. Some items I can't understand. I will try again. |
Follow us on