SerafinTech / node-red-contrib-eip-io

Ethernet/IP IO Controller Node
MIT License
1 stars 1 forks source link

Output Assembly Continuously Set to Zero #1

Open GrND-CNYON opened 8 months ago

GrND-CNYON commented 8 months ago

I am using this repo to interface with a Mass Flow Controller hooked up directly to an Ethernet Switch. The input Assemblies all read just fine. The Device Control Section of the Output Assembly seems to control fine. However, the Setpoint Section does not (it is 4 bytes out of 6 bytes in the Assembly). No matter what I do, I cannot set a value to it, as it is continuously being set to zero. It works fine in EIP Explorer, so it looks to be an issue specific to the software, not my setup.

SerafinTech commented 8 months ago

What is the model of the device? The 4 bytes is probably a floating point value. Current published NPM  library only supports integers. I have a new version that supports floaters. I’ll see if I can get it pushed out this coming up weekend.  On Jan 23, 2024, at 6:46 PM, Choukri N. @.***> wrote: I am using this repo to interface with a Mass Flow Controller hooked up directly to an Ethernet Switch. The input Assemblies all read just fine. The Device Control Section of the Output Assembly seems to control fine. However, the Setpoint Section does not (it is 4 bytes out of 6 bytes in the Assembly). No matter what I do, I cannot set a value to it, as it is continuously being set to zero. It works fine in EIP Explorer, so it looks to be an issue specific to the software, not my setup (AFAIK).

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

GrND-CNYON commented 8 months ago

Sounds good! Let me know when you push the new version.

On Tue, Jan 23, 2024 at 5:46 PM Jason Serafin @.***> wrote:

What is the model of the device? The 4 bytes is probably a floating point value. Current published NPM library only supports integers. I have a new version that supports floaters. I’ll see if I can get it pushed out this coming up weekend. On Jan 23, 2024, at 6:46 PM, Choukri N. @.***> wrote: I am using this repo to interface with a Mass Flow Controller hooked up directly to an Ethernet Switch. The input Assemblies all read just fine. The Device Control Section of the Output Assembly seems to control fine. However, the Setpoint Section does not (it is 4 bytes out of 6 bytes in the Assembly). No matter what I do, I cannot set a value to it, as it is continuously being set to zero. It works fine in EIP Explorer, so it looks to be an issue specific to the software, not my setup (AFAIK).

—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: @.***>

— Reply to this email directly, view it on GitHub https://github.com/SerafinTech/node-red-contrib-eip-io/issues/1#issuecomment-1907212188, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFLBWVMPPHDNMHCXWPD6GITYQBRYTAVCNFSM6AAAAABCH27AAOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBXGIYTEMJYHA . You are receiving this because you authored the thread.Message ID: @.***>

SerafinTech commented 8 months ago

New version on NPM. Datatype selection supported on input and output nodes.

GrND-CNYON commented 7 months ago

Received. Thanks!

I am currently unable to connect to the device, however. That is, when I deploy my flow, the "conn" variable is null (I don't get a "disconnected" status either). The IP of my device is the same, and I have restarted Node RED a few times and redone the configuration. Have you seen this issue before?

SerafinTech commented 7 months ago

If you could post your flow and give the model of device your trying to use I may be able to help.

Make sure that you have selected a valid connection for your input or output node.

If that isn't it, try this:

  1. delete the Ehternet/ip nodes including the scanner and connection config node.

  2. Stop node-red

  3. then in the .node-red directory type:

npm remove @serafintech/node-red-contrib-eip-io
  1. and then:
npm install @serafintech/node-red-contrib-eip-io
  1. restart node-red

  2. re-configure the Scanner , Connection and Input or Output nodes. Make sure in the Scanner node, the IP address is either 0.0.0.0 or the IP address of the computer node-red is running on.

I just tried a fresh install and have no issues communicating to a E300 Overload Relay

GrND-CNYON commented 7 months ago

Model: CODA K-Series Mass Flow Controller

Node RED Flow is attached below PXL_20240205_163134238.jpg https://drive.google.com/file/d/1zOxVHaTyeqHdyT0SeCQUTru-DNXV6TWN/view?usp=drivesdk

On Thu, Feb 1, 2024, 3:34 PM Jason Serafin @.***> wrote:

If you could post your flow and give the model of device your trying to use I may be able to help.

Make sure that you have selected a valid connection for your input or output node.

If that isn't it, try this:

1.

delete the Ehternet/ip nodes including the scanner and connection config node. 2.

Stop node-red 3.

then in the .node-red directory type:

npm remove @serafintech/node-red-contrib-eip-io

  1. and then:

npm install @serafintech/node-red-contrib-eip-io

1.

restart node-red 2.

re-configure the Scanner , Connection and Input or Output nodes. Make sure in the Scanner node, the IP address is either 0.0.0.0 or the IP address of the computer node-red is running on.

I just tried a fresh install and have no issues communicating to a E300 Overload Relay

— Reply to this email directly, view it on GitHub https://github.com/SerafinTech/node-red-contrib-eip-io/issues/1#issuecomment-1922482002, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFLBWVMTNBWYZ4MGE2ZERZ3YRQRARAVCNFSM6AAAAABCH27AAOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRSGQ4DEMBQGI . You are receiving this because you authored the thread.Message ID: @.***>

GrND-CNYON commented 7 months ago

Additionally, I've reinstalled the library and remade the Connection/Scanner config.

On Thu, Feb 1, 2024, 3:34 PM Jason Serafin @.***> wrote:

If you could post your flow and give the model of device your trying to use I may be able to help.

Make sure that you have selected a valid connection for your input or output node.

If that isn't it, try this:

1.

delete the Ehternet/ip nodes including the scanner and connection config node. 2.

Stop node-red 3.

then in the .node-red directory type:

npm remove @serafintech/node-red-contrib-eip-io

  1. and then:

npm install @serafintech/node-red-contrib-eip-io

1.

restart node-red 2.

re-configure the Scanner , Connection and Input or Output nodes. Make sure in the Scanner node, the IP address is either 0.0.0.0 or the IP address of the computer node-red is running on.

I just tried a fresh install and have no issues communicating to a E300 Overload Relay

— Reply to this email directly, view it on GitHub https://github.com/SerafinTech/node-red-contrib-eip-io/issues/1#issuecomment-1922482002, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFLBWVMTNBWYZ4MGE2ZERZ3YRQRARAVCNFSM6AAAAABCH27AAOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRSGQ4DEMBQGI . You are receiving this because you authored the thread.Message ID: @.***>

SerafinTech commented 7 months ago

The image you shared doesn't work. Try exporting your flow as text and paste a comment.

From what I found, you will need to enter the following in your connection node:

Input Assembly: 101 Input Size: Go to 'Data IO' page of the device's Embedded webserver to calculate size Output Assembly: 100 Output Size: 4 Config Assembly: 1 Config Size: 0

This is the manual I found online https://www.alicat.com/wp-content/documents/manuals/DOC-MANUAL-EIP.pdf

GrND-CNYON commented 7 months ago

Unfortunately, the EIP Manual doesn’t fully apply to the device we’re using. Having talked with the Application Engineers, the device does not actually have an Embedded Webserver. There is a separate spreadsheet detailing the device assemblies. I’ll share it and try to reupload the picture tomorrow

On Mon, Feb 5, 2024 at 9:42 PM Jason Serafin @.***> wrote:

The image you shared doesn't work. Try exporting your flow as text and paste a comment.

From what I found, you will need to enter the following in your connection node:

Input Assembly: 101 Input Size: Go to 'Data IO' page of the device's Embedded webserver to calculate size Output Assembly: 100 Output Size: 4 Config Assembly: 1 Config Size: 0

This is the manual I found online https://www.alicat.com/wp-content/documents/manuals/DOC-MANUAL-EIP.pdf

— Reply to this email directly, view it on GitHub https://github.com/SerafinTech/node-red-contrib-eip-io/issues/1#issuecomment-1928823231, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFLBWVJPEGWK4M4YZSK3AF3YSG7CVAVCNFSM6AAAAABCH27AAOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRYHAZDGMRTGE . You are receiving this because you authored the thread.Message ID: @.***>

GrND-CNYON commented 7 months ago

Here is the Excel sheet. Could you share your email with me? Odd question, I know, but I would be able to send you the flow picture directly via Gmail, rather than through GitHub's system. Which should allow for a picture of its size to pass through.

On Mon, Feb 5, 2024, 9:44 PM Choukri Nyon @.***> wrote:

Unfortunately, the EIP Manual doesn’t fully apply to the device we’re using. Having talked with the Application Engineers, the device does not actually have an Embedded Webserver. There is a separate spreadsheet detailing the device assemblies. I’ll share it and try to reupload the picture tomorrow

On Mon, Feb 5, 2024 at 9:42 PM Jason Serafin @.***> wrote:

The image you shared doesn't work. Try exporting your flow as text and paste a comment.

From what I found, you will need to enter the following in your connection node:

Input Assembly: 101 Input Size: Go to 'Data IO' page of the device's Embedded webserver to calculate size Output Assembly: 100 Output Size: 4 Config Assembly: 1 Config Size: 0

This is the manual I found online https://www.alicat.com/wp-content/documents/manuals/DOC-MANUAL-EIP.pdf

— Reply to this email directly, view it on GitHub https://github.com/SerafinTech/node-red-contrib-eip-io/issues/1#issuecomment-1928823231, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFLBWVJPEGWK4M4YZSK3AF3YSG7CVAVCNFSM6AAAAABCH27AAOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRYHAZDGMRTGE . You are receiving this because you authored the thread.Message ID: @.***>

SerafinTech commented 7 months ago

I don't see the excel sheet

You can attach files to comments

plc

Export your flow from node-red and attach

https://github.com/SerafinTech/node-red-contrib-eip-io/assets/6587498/a54eef74-ce07-492b-a08a-1c3965c22fe6

Flow Example E1 Plus Overload Relay e1plus_simple_example.json

GrND-CNYON commented 7 months ago

Appended files here. They should go through now

EthernetIP rev 4.xlsx PXL_20240205_163135551 MP

GrND-CNYON commented 7 months ago

Here's a look at my EIP and scanner configs PXL_20240207_165011108 PXL_20240207_165005245

SerafinTech commented 7 months ago

I looked at all the info and created a flow that should work. You could download it and import it. Also see the steps below for troubleshooting.

CODA_K_MFC_FLOW.json

1 - update the package in the .node-red directory with npm update @serafintech/node-red-contrib-eip-io . I found an issue that could cause a problem with flows getting sluggish

2 - If you have a config assembly size > 0 then you should config that data on the Config tab. (See Video)

3 - Change the scanner IP address to 0.0.0.0 incase of binding issues.

4 - redo all the config nodes and input and output nodes (See Video)

5 - Restart node-red again after deleting and replacing nodes.

Here is a video with how I configured everything:

https://github.com/SerafinTech/node-red-contrib-eip-io/assets/6587498/3f7b480d-af30-4956-89cb-bde3ae35daaa

If you get it connected but the process values are weird, check the Big Endien box on any Float values

GrND-CNYON commented 7 months ago

Troubleshooted it yesterday. The connection works! I had to create a new connection with different input and output assemblies (no config) and then change that connection to what I had prior. The Setpoint changes, and it looks like air can flow through. Will run another test later to confirm.