Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CIP Connection Class #127

Open
raurban opened this issue Apr 21, 2020 · 3 comments
Open

CIP Connection Class #127

raurban opened this issue Apr 21, 2020 · 3 comments

Comments

@raurban
Copy link

raurban commented Apr 21, 2020

Hello. It looks like pylogix establishes a CIP Class 3 "explicit" connection with the ControlLogix PLC. Is it possible to establish a Class 1 "implicit I/O" connection with the ControlLogix using pylogix?

Thank you.

@dmroeder
Copy link
Owner

Unfortunately you cannot establish class 1 connections., Class 3 only.

@kyle-github
Copy link

Note that implicit data, such as used by produced/consumed tags, uses a form of Forward Open that I have not fully decoded, but then it usually requires multicast UDP support. In Python, that's probably not too horrible.

In order to keep the connection open, you need to keep a heartbeat from the client to the server. What I normally see is that these need to be sent every 500ms, but I think that is part of the negotiation in the Forward Open.

I suspect, but am not sure, that implicit I/O works the same way. Of course, this is Rockwell, so it is probably 95% similar except that every single thing is slightly different.

@raurban
Copy link
Author

raurban commented Apr 22, 2020

Thanks for the replies.

Produce/Consume would be an excellent feature for pylogix.

When I'm working on a large automation upgrade with lots of drives, I typically offload drive simulations into a temporary ControlLogix processor and use produce/consume to the main PLC. The main PLC simply thinks its talking to a drive with real feedback. It would be awesome to do the same but with pylogix running on a SBC.

Also, for high speed synchronous data logging, produce/consume is the way to go.

Looks like Rockwell has given their blessing to OpENer Ethernet/IP open source stack project, which I'm sure you guys are familiar with. I'm curious if this is of any help to the pylogix project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants