SIEMENS S7-1200 as PROFINET i-device

y2kmfic

Lifetime Supporting Member
Join Date
Apr 2011
Location
California
Posts
70
Hi all..

I'm working on something that is bugging the heck out of me. I have a S7-1200 setup as an i-device with 128 bytes in, 128 bytes out. I'm using a third party PROFINET Controller, and the output data from the S7-1200 is making it to the controller, but the controllers output data isn't making it to the 1200's input data. Using diagnostics on the PN controller, I can see the controller is sending the data, and I can also see the correct message and data on Wireshark. The controller and the 1200 are not showing any errors. I do have PUT/GET enabled on the 1200, but I'm not sure it's needed for PROFINET.

What really gets me is that I've done his before, but don't remember exactly what I had to do. I think it had something to do with the OB86 or 83, or something. I've read so much documentation, and nothing has helped yet.

I'm using TIA Portal v14, and S7-1200 fw v4.1

Any ideas?

TIA
CH
 
Last edited:
So obviously you made a gsdxml file out of Portal
Can you show us some screenshots from your io controller?
Otherwise we are guessing and asking a bunch more questions
 
I lost my VPN connection, so I'll post some on Monday, or at least follow up to what the issue was.

Yes, I did export the GSDML from TIA and imported in the controller software. I'm pretty sure it's on the 1200/TIA side since I can see the data in Wireshark, and the controller (which is certified) or 1200 don't show any errors.

It's pretty simple to setup.. assign 1200 as I/O device, assign name if not already done, create area I and O area mappings, compile and export GSDML.

I'm going to start from scratch tomorrow, and contact some hard-hitting contacts at Siemens if needed.

TIA
CH
 
Andrew,

I meant to reply to this the same day and lost track. I did resolve this when I started over. There's a checkbox “Parameter assignment of PN interface by higher-level IO controller” that needed to be checked, and I simply missed it. Once checked, that resolved my issue.

CH
 
CH,

If I can ask, in your application you were trying to pass data back and forth between a s7-1200 PLC and a 3rd party Profinet controller? We are trying to do the same thing between a s7-1500 and a GE RX3i without any luck. Did you have to make your 3rd party controller the IO controller and the S7-1200 as the "IO" device? Does your S7-1200 also act as an IO controller and have its own IO devices on it? We have even tried a PN/PN coupler but can only send data from the RX3i but it cant recieve data from the S7-1500.
 
Just a thought, but what are the addresses you're trying to read/write on the 1200 side? It sounds like they might not be in the process image, so the inputs aren't being scanned in...
 
Sorry, one more question, was the checkbox “Parameter assignment of PN interface by higher-level IO controller” done in the S7-1200?

Short answer is: Yes.

I've bumped into this before. When you are setting up I-Device, there are a bunch of Profinet parameters besides just the device name and IO sizes that need to match up on both sides. Things like update rates, watchdog time, topology settings, and more. You can A) manually set all of those yourself and hope you did it right or B) check the box, and have the I-Device do whatever its controller tells it to do. If there is a mismatch, I've seen really weird error messages.

If the I-Device has its own IO, there are certain situations in which it needs certain specific settings, and then the checkbox will be unavailable (or maybe it doesn't compile, whichever).
 
CH,
but can only send data from the RX3i but it cant recieve data from the S7-1500.

Sounds like the exact same issue I had.

The 1200 is still a controller to its own I/O, but it's an IO Device on the PROFINET network, being controlled by the PROFINET controller.

In TIA Portal, go to the properties of the 1200, and in Operating mode, check “Parameter assignment of PN interface by higher-level IO controller”.

s71200_IOdevice.png
 
I-device S7-300 x GE Rx3i Controller

CH,

If I can ask, in your application you were trying to pass data back and forth between a s7-1200 PLC and a 3rd party Profinet controller? We are trying to do the same thing between a s7-1500 and a GE RX3i without any luck. Did you have to make your 3rd party controller the IO controller and the S7-1200 as the "IO" device? Does your S7-1200 also act as an IO controller and have its own IO devices on it? We have even tried a PN/PN coupler but can only send data from the RX3i but it cant recieve data from the S7-1500.

Good Morning!! I'm having trouble communicating a plc s7-300 as an i-device, and a PLC GE Rx3i as a controller. Do you have any example projects of these configurations? My intention is to read the information from the S7-300 on the RX3I. I have little knowledge on i-device. is it necessary to create a logic block to send the values to the transfer area?
 
Good Morning!! I'm having trouble communicating a plc s7-300 as an i-device, and a PLC GE Rx3i as a controller. Do you have any example projects of these configurations? My intention is to read the information from the S7-300 on the RX3I. I have little knowledge on i-device. is it necessary to create a logic block to send the values to the transfer area?


This might be worth starting a new thread for. To set the s7-300as an i-device, you have to set it up in the hardware config and then you write to the input and output words in the same way you would use the I/O of any other device. In your program, if you turn on the Q#.#, then it should turn on in the I#.# in the other PLC.
 
Hi Guys, I am trying to establish communication over profinet between Siemens S7-1200 PLC as IO device and codesys plc as IO controller. But I am facing the error of IO device failure. Could you guys please help me with the process to establish the communication. Thanks in advance.
 
Hi raghu... That's a pretty generic error description. If you can post a Wireshark capture of the comms, that should help in determining the issue.
 
raghu_k, I think I may have a bit of good news for you.
Does the attachment look like what you need? I had to enable send and receive firewall rues for the service below:
%ProgramFiles%\CODESYS 3.5.19.50\GatewayPLC\CODESYSControlService.exe
Please see attachment. Before enabling the rules the firewall would not let CoDeSys cyclit data out.
The PC did not require reboot.
 

Attachments

  • 2024-03-02_CodesysController_S7-1200_iDevice.png
    2024-03-02_CodesysController_S7-1200_iDevice.png
    1 MB · Views: 16

Similar Topics

Hi Guys, I am trying to establish communication over profinet between Siemens S7-1200 PLC as IO device and codesys plc as IO controller. But I am...
Replies
43
Views
2,571
Hi I'm wanting to basically get data from a Siemens S7-1200 PLC and write it in to my D registers on my Q series PLC. If I went for profinet...
Replies
6
Views
2,235
Hi all, Quoting a system which calls for a Siemens S7-1200 and a Danfoss FC280. Cost-wise, it's much the same whether I use a higher-spec PLC...
Replies
8
Views
4,228
Afternoon all, I'm using TIA Portal V12 SP1 to program a Siemens S7-1200 (Part No. 212 1AE31-0XB0) to control a Siemens Sinamics G120 (Part No...
Replies
4
Views
8,704
Hi all, Currently having trouble getting a speed reference to write over modbus to an Omron M1... I can successfully write a run command and...
Replies
2
Views
23
Back
Top Bottom