plcpeople / nodepccc

Library for node.js to communicate with some Allen-Bradley programmable controllers (PLCs)
MIT License
81 stars 24 forks source link

Do you use real in real application #5

Closed joaomello-zz closed 5 years ago

joaomello-zz commented 9 years ago

Hi! Very cool your project, and works (: Are you using it, in any real application?

plcpeople commented 9 years ago

Yes, we have a couple of installations that use this to send data via websocket so users can see (on an internal network) some process values and alarms in a browser. It's been running for a long time now without problems.

joaomello-zz commented 9 years ago

Nice! How do you discover the protocol specification? I would like to help, maybe implementing unit tests, es6/babel/typescript... (:

plcpeople commented 9 years ago

There are basically two protocols implemented - a small subset of DF1/PCCC commands for requesting and writing data, described at https://en.wikipedia.org/wiki/DF-1_Protocol with a link to the full documentation, and Ethernet/IP, which is described at http://www.rockwellautomation.com/resources/downloads/rockwellautomation/pdf/sales-partners/technology-licensing/eipexp1_2.pdf. Wireshark was somewhat useful although it does not decode the PCCC commands themselves.

This was originally written with node 0.8 in mind with no ES6 support so I haven't re-visited the code to see how it might benefit from that, which could be interesting.

What do you think is the best way to implement unit tests without requiring a PLC to run them?

joaomello-zz commented 8 years ago

Simulate the messaging, like test if is creating the right package message and extracting the right data...

KalenAnson commented 8 years ago

I am also looking at using this module for an upcoming project. Have you run this on Node 4.X or above?

Very nice job btw. Can't wait to use this code :)

+1 on unit testing.

plcpeople commented 8 years ago

I test-ran it on node 5.3.0 with our test setup and it worked fine. Our clients that run this in production are still running node 0.12.x.

I understand the need for unit tests but am still not sure how to proceed. If anyone could point me to a similar project with unit tests implemented or submit a PR with some tests it would be much appreciated.

plcpeople commented 5 years ago

Closing this issue due to lack of activity. This is now used in many real applications. The lack of tests should be posted as a separate issue with an appropriate title.