You are not registered yet. Please click here to register!


 
 
plc storereviewsdownloads
This board is for PLC Related Q&A ONLY. Please DON'T use it for advertising, etc.
 
Try our online PLC Simulator- FREE.  Click here now to try it.

---------->>>>>Get FREE PLC Programming Tips

New Here? Please read this important info!!!


Go Back   PLCS.net - Interactive Q & A > PLCS.net - Interactive Q & A > LIVE PLC Questions And Answers

PLC training tools sale

Reply
 
Thread Tools Display Modes
Old September 27th, 2016, 10:17 AM   #1
ryangriggs
Supporting Member
United States

ryangriggs is offline
 
Join Date: Jun 2016
Location: USA
Posts: 104
Open-source PLC Data Access server

I was just reading Archie's post about the open source AdvancedHMI system they have developed. This is a great system, but in order to grow in popularity, it needs to be able to talk to a wide array of PLC brands and families.

I think there needs to be a good open source server available to facilitate communication between existing architecture and new open-source HMI software. OPC could be supported, but it would be great to expose the PLC tag data in various other formats too (i.e. JSON, CSV, XML, etc).

As an example, with the advent of Linux it became cheap and easy to spin up your own servers for nearly any purpose. However, this move to open source has not yet overtaken the PLC industry, and every piece of the puzzle carries a large cost and restrictive licensing terms, as did server architecture in the past. An open-source data access server would allow HMI development to take place in a wide range of languages and architectures and would potentially kickstart widespread open-source projects in this industry.

I've tried to find such an open-source server, but with very little success. So, since I'm a programmer, I have been tossing around the idea of building one.

Would anyone like to join me? Initially I would like to support Ethernet/IP so that the AB PLC families are supported, since that's the brand with which I'm most familiar. But if done properly, such a project could support driver plugins for various brands and families.

Any thoughts/suggestions welcome!

Last edited by ryangriggs; September 27th, 2016 at 10:54 AM.
  Reply With Quote
Old September 27th, 2016, 10:28 AM   #2
Epy
Lifetime Supporting Member
United States

Epy is offline
 
Join Date: Jul 2012
Location: no
Posts: 371
I have no time for programming anymore, but the last project I helped might be of use to you for your new project: https://github.com/kyle-github/libplctag
  Reply With Quote
Old September 27th, 2016, 10:36 AM   #3
Archie
Member
United States

Archie is offline
 
Join Date: May 2002
Location: Orangeburg, SC
Posts: 1,727
I'm not a fan of OPC DA because it is Windows-centric, complex, and problematic, but I will be more than willing to offer my expertise in Ethernet/IP, CIP, and the AB PLCs to help get such a project off the ground.
__________________
Expectations lead to disappointment. Appreciation leads to satisfaction.

AdvancedHMI - Software without the license key hassles
  Reply With Quote
Old September 27th, 2016, 10:43 AM   #4
ryangriggs
Supporting Member
United States

ryangriggs is offline
 
Join Date: Jun 2016
Location: USA
Posts: 104
@epy: This looks like a really great library. I am perusing it now. Thanks for sharing and thanks for your contributions to libplctag!

Last edited by ryangriggs; September 27th, 2016 at 10:55 AM.
  Reply With Quote
Old September 27th, 2016, 10:52 AM   #5
ryangriggs
Supporting Member
United States

ryangriggs is offline
 
Join Date: Jun 2016
Location: USA
Posts: 104
Thanks Archie. I think "OPC" may have been too specific/platform-dependent. My real goal is a data access server which exposes the data in various formats (i.e. JSON, CSV, XML, TCP sockets, as a database supporting queries, OPC, etc), and possibly which supports historization, logging, back-end databases, etc.

It would be really brilliant to have one open-source server software which could pull together all the tags from multiple PLC families/brands, log the data, expose it in lots of formats for consumption/modification, and support multiple operating systems/platforms.

I edited the original title and post to clarify that it's not specific to OPC.

Last edited by ryangriggs; September 27th, 2016 at 10:55 AM.
  Reply With Quote
Old September 27th, 2016, 12:12 PM   #6
Archie
Member
United States

Archie is offline
 
Join Date: May 2002
Location: Orangeburg, SC
Posts: 1,727
Along with the aforementioned, there have been quite a few open source Ethernet/IP implementations showing up:

https://github.com/dmroeder/pylogix

http://eipnet.codeplex.com/

https://github.com/EPICSTools/etherip

https://github.com/EIPStackGroup/OpENer

https://github.com/scy-phy/scapy-cip-enip

https://github.com/digitalpetri/ethernet-ip

https://github.com/paperwork/pyenip



The OpENer is based on an implementation originally developed by Rockwell. It's probably not geared so much as a client, but more so for creating Ethernet/IP adapters.

EPICSTools is part of a government project.
__________________
Expectations lead to disappointment. Appreciation leads to satisfaction.

AdvancedHMI - Software without the license key hassles
  Reply With Quote
Old September 27th, 2016, 12:18 PM   #7
ryangriggs
Supporting Member
United States

ryangriggs is offline
 
Join Date: Jun 2016
Location: USA
Posts: 104
Thanks @Archie. It appears I was searching for the wrong thing: I have been trying to find open source OPC servers, when I should have been looking for open source Ethernet/IP implementations. These may be a great start to implementing a data access server.

I wonder if all these are based on a common library or code example, since the Ethernet/IP specs are paywalled...

Last edited by ryangriggs; September 27th, 2016 at 12:42 PM.
  Reply With Quote
Old September 27th, 2016, 01:26 PM   #8
Archie
Member
United States

Archie is offline
 
Join Date: May 2002
Location: Orangeburg, SC
Posts: 1,727
Quote:
Originally Posted by ryangriggs View Post
I wonder if all these are based on a common library or code example, since the Ethernet/IP specs are paywalled...
From what I have seen, they all use their own architecture. The Ethernet/IP (CIP) specifications avoid any suggestion of implementation. I really think a good thing would be to define a software architecture that would be open and freely available. That way all implementations, no matter which language, would have a common software design making it easier to understand any of the implementations.
__________________
Expectations lead to disappointment. Appreciation leads to satisfaction.

AdvancedHMI - Software without the license key hassles
  Reply With Quote
Old September 27th, 2016, 01:36 PM   #9
Iner
Member
France

Iner is offline
 
Join Date: Mar 2010
Location: France
Posts: 97
AB's PLC that supports Ethernet IP also support the use of sockets. Same for Siemens S7-1500/300/1200 and I assume a lot of the others vendors in the market if the goal is not be tied with Windows's OPC.
  Reply With Quote
Old September 27th, 2016, 01:41 PM   #10
ryangriggs
Supporting Member
United States

ryangriggs is offline
 
Join Date: Jun 2016
Location: USA
Posts: 104
@iner - that's cool. Do you know of any reference documentation that provides implementation details?


Quote:
Originally Posted by Iner View Post
AB's PLC that supports Ethernet IP also support the use of sockets. Same for Siemens S7-1500/300/1200 and I assume a lot of the others vendors in the market if the goal is not be tied with Windows's OPC.
  Reply With Quote
Old September 27th, 2016, 01:44 PM   #11
Iner
Member
France

Iner is offline
 
Join Date: Mar 2010
Location: France
Posts: 97
Quote:
Originally Posted by ryangriggs View Post
@iner - that's cool. Do you know of any reference documentation that provides implementation details?
For what? Siemens or AB's?

For Rockwell:

http://literature.rockwellautomation...t002_-en-p.pdf

By experience, Siemens is a bit easier to implement.
  Reply With Quote
Old September 27th, 2016, 01:52 PM   #12
ryangriggs
Supporting Member
United States

ryangriggs is offline
 
Join Date: Jun 2016
Location: USA
Posts: 104
@iner lol you beat me to it. I just found that document and was getting ready to post it.
Looks like this type of communication is only supported on ControlLogix and CompactLogix units. Nothing mentioned about SLC5. Also the ports have to be manually initialized and serviced in the plc program (which isn't a huge deal, just saying).
  Reply With Quote
Old September 27th, 2016, 02:08 PM   #13
Iner
Member
France

Iner is offline
 
Join Date: Mar 2010
Location: France
Posts: 97
Quote:
Originally Posted by ryangriggs View Post
@iner lol you beat me to it. I just found that document and was getting ready to post it.
Looks like this type of communication is only supported on ControlLogix and CompactLogix units. Nothing mentioned about SLC5. Also the ports have to be manually initialized and serviced in the plc program (which isn't a huge deal, just saying).

Yes sorry, I am not very knowledgable in Rockwell, having only programmed one Compactlogix and modified one or two contrologix. I don't know at all the other models.

The thing is that unless you convince the PLC makers to support another standard, you will have to make some set up from the PLC side.
  Reply With Quote
Old September 27th, 2016, 02:10 PM   #14
jgreenewv
Lifetime Supporting Member + Moderator
United States

jgreenewv is offline
 
Join Date: Aug 2002
Location: Jacksonville, NC, USA
Posts: 219
I saw this in a trade mag e-mail the other day:

http://opcconnect.opcfoundation.org/...pc-ua-support/
  Reply With Quote
Old September 27th, 2016, 02:15 PM   #15
ryangriggs
Supporting Member
United States

ryangriggs is offline
 
Join Date: Jun 2016
Location: USA
Posts: 104
@jgreenevw - Nice!
  Reply With Quote
Reply
Jump to Live PLC Question and Answer Forum

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Topics
Thread Thread Starter Forum Replies Last Post
Issues with Gageport OPC server does not support cimplicity OPC client nitin.salvi LIVE PLC Questions And Answers 10 April 28th, 2010 08:21 AM
WinCCFlexRT OPC server connection problem idell LIVE PLC Questions And Answers 5 April 26th, 2010 09:58 AM
Setting up OPC server for a SLC500, won't connect with RSlogix OPC Test BigTom209 LIVE PLC Questions And Answers 9 March 22nd, 2010 09:06 AM
OPC? Connecting S7-312C - PC. pietervdb LIVE PLC Questions And Answers 6 August 7th, 2008 01:34 PM
OPC Server and Linx Gateway kbradray LIVE PLC Questions And Answers 1 March 11th, 2008 02:51 PM


All times are GMT -5. The time now is 06:38 PM.


.