News:

  • May 05, 2026, 10:06:24 PM

Login with username, password and session length

Author Topic: EIPMSG Conceptual Understanding Help Needed  (Read 6932 times)

Mike Nash

  • Hero Member
  • *****
  • Posts: 652
EIPMSG Conceptual Understanding Help Needed
« on: December 03, 2015, 11:45:21 AM »
I have been trying out the Ethernet/IP Explicit Message with a Yaskawa V1000 VFD with SI-EN3 Ethernet/IP card. With ControlLogix, I would setup an I/O Module that would read and write a series of registers automatically. I could also do explicit messages in ladder. Forgive me if my terminology is incorrect - I sometimes feel 10 different definitions for a term are used concurrently with networking stuff.

So I don't have that polling read and write with Do-more as far as I understand it. The EIPMSG with Get Attribute (14,0x0E) allows me to read in 44 bytes with a single EIPMSG for Class 0x4, Instance 0xA6, Attribute 0x3 which works as the equivalent for polling in Assembly 166 (which is the 0xA6 in my Instance  ::) )

I can also use EIPMSG with Set Attribute (16, 0x10) to write a 2 byte value at 0x7D, 0x1, 0x2 just fine to set a speed reference and 0x7D, 0x1, 0x1 to set command bits but this requires two separate EIPMSG instructions.

What I don't seem to be able to do is EIPMSG to an Output Assembly of 23 (0x17) which would write 6 bytes to the VFD. I have tried both Set Attribute (16, 0x10) and Set ALL Attributes (2,0x02) and always get an error from the EIPMSG.

So is this last thing just not possible with the EIPMSG, just not possible with the VFD or am I just not filling in the blanks correctly? I can access the PLC from home (where I am today, vacationing) but did not leave the VFD powered up to test any suggestions. :'(

BobO

  • Host Moderator
  • Hero Member
  • *****
  • Posts: 6154
  • Yes Pinky, Do-more will control the world!
Re: EIPMSG Conceptual Understanding Help Needed
« Reply #1 on: December 03, 2015, 12:06:17 PM »
EIPMSG is just returning errors that the drive returns to it, and through the Generic Service, we've given you as flexible an interface as possible. Which is to say that if the drive supports it through explicit messaging, we should be able to do it. EIP is a bit finicky at times though, and it is likely that you aren't holding your mouth quite right. If you'll post the spec or a link to it, we're happy to look at it.
"It has recently come to our attention that users spend 95% of their time using 5% of the available features. That might be relevant." -BobO

Mike Nash

  • Hero Member
  • *****
  • Posts: 652
Re: EIPMSG Conceptual Understanding Help Needed
« Reply #2 on: December 03, 2015, 06:55:03 PM »
EIPMSG is just returning errors that the drive returns to it, and through the Generic Service, we've given you as flexible an interface as possible. Which is to say that if the drive supports it through explicit messaging, we should be able to do it. EIP is a bit finicky at times though, and it is likely that you aren't holding your mouth quite right. If you'll post the spec or a link to it, we're happy to look at it.

Thanks BobO. The Yaskawa SI-EN3 manual is SIEPC73060058.pdf which is what the link below downloads from their website.

https://www.yaskawa.com/pycprd/lookup/getdocument/jvgyvE5ZTUY_5CC1znzBoQyEo3SqZemHjObFjj7E9eVXAhZsKPZL8q7TtW7G4EH3JxGd-ET5DGnj8QZsFVAv4c0URcJlYxORc-6F7Bt9egc

The item of interest for me (I think) is on page 43. Assembly Object 4 (Class 0x04), Instance ID 22, Attribute 3. I know it shows it supports Service Codes 0E and 10 hex only, but I did try the Set ALL also. If you can tell me where to find the error from the drive in DMD I'll try this again next week and let you know.

I don't know if this PDF is what you are looking for when you say "spec".
I must also warn you that Yaskawa manuals tend to have quite a few typos and just plain wrong info. (Sore point.)

Everything else works great and was pretty quick to get working, even if it took some guesswork on my part figuring out equivalent terms to fill in the EIPMSG. I like the counters for successes and errors in the EIPMSG. This was a quick way to tell when I got things right or not.

With just a single EIP drive and another device doing Modbus TCP I am seeing about 8mS update rate to the drive. (Just for fun, the Modbus TCP device is generating a sine wave that I am reading and then sending to the drive as a speed reference.) Scan time is just under 1mS average.

BobO

  • Host Moderator
  • Hero Member
  • *****
  • Posts: 6154
  • Yes Pinky, Do-more will control the world!
Re: EIPMSG Conceptual Understanding Help Needed
« Reply #3 on: December 03, 2015, 09:46:39 PM »
At first blush, it appears that it should've worked. What error is the drive returning?
"It has recently come to our attention that users spend 95% of their time using 5% of the available features. That might be relevant." -BobO

Mike Nash

  • Hero Member
  • *****
  • Posts: 652
Re: EIPMSG Conceptual Understanding Help Needed
« Reply #4 on: December 04, 2015, 10:29:42 AM »
Well, I was doing something wrong. I had a coworker turn the drive on so I could try from home. Changed the EIPMSG parameters and it worked. I obviously did not have the right parameters before. I checked the timing again and seem to be about 5mS per EIPMSG. This is just how many success counts I get per 1 second timer iteration. So 10mS for both.

Sorry for the false alarm and thanks for looking. The top instruction is read, the bottom is write in the picture.

« Last Edit: December 04, 2015, 10:33:56 AM by Mike Nash »

BobO

  • Host Moderator
  • Hero Member
  • *****
  • Posts: 6154
  • Yes Pinky, Do-more will control the world!
Re: EIPMSG Conceptual Understanding Help Needed
« Reply #5 on: December 04, 2015, 11:18:23 AM »
Cool, glad it worked. Seemed like your understanding was correct, but sometimes things get fat-fingered.
"It has recently come to our attention that users spend 95% of their time using 5% of the available features. That might be relevant." -BobO