AB7697-F Configuration Help

From the Help Section in the App:

Step by Step Guide

Step by Step Guide

  1. Connect the EtherCAT module directly (not over switch or hub) to the computer with an Ethernet cable.
  2. Make sure the module is on.
  3. Start the EtherCAT ESI Generator.
  4. Enter an expedient vendor name. All devices from the same vendor should have identical vendor name entries. Example: “Drive Manufacturer”.
  5. Enter the group type. This value is used as a handle within the ESI file for connecting a device entry with a group name (see below). It is mainly intended for ESI files that contain several devices, so it is of less importance in this application. A relevant value should nonetheless be chosen. Example: “Drive”.
    Note: Since this name is used as a handle it shall not contain any spaces.
  6. Enter group name. This information can be displayed in configuration tools when presenting devices in a structured tree view based on device types. Example: “Drives”.
  7. Select the network card to which the module is connected.
  8. Enter the slave address. Position addressing is used, so with the module connected directly to the computer the address should be 0. (This value has no bearing on the contents of the ESI file.)
  9. Make sure that attributes 3, 4, 11 and 12 of instance 0 of the Application Data object are supported correctly by the host application.
  10. Click on the “Create ESI file…” button, in the save file dialog select output catalog and name the file.
  11. Click “Save”.
  12. Wait for the file to get generated.
    Note: for large configurations generating the file may take up to 30 minutes.
  13. Done

Optional Information

The "Load ESI file button…(Optional)"

The information from an old ESI file can be loaded with the “Load ESI file… (Optional)” button. Only information shown by the GUI will be added to the generated file.

The “Use loaded file as base” check button

If checked, the generated file will be a modified version of the loaded file. This can be useful when there are elements in the loaded file that the ESI generator does not support. All information that can be collected from the module will be updated. The Object dictionary, DataTypes and RxPDO/TxPDO mapping will be recreated from scratch.

Image Data

The Image Data can be used by a master to give the device some icons. The files need to be in .BMP format, 16x14 pixels with 16bit color. A file can be added in 2 ways. By browsing the computer with the “Browse…” button or entered directly in the text field. If the file is entered directly in the text field its the hex content of the file not the file path that should be entered. This can be useful if you have a old ESI file to copy from. If the fields are left blank no image data information will be added to the file.

I can give that a try. It seems like that would be more for generating a channel list than changing something that would allow me to transition to safe-op, but I’m admittedly not a low-level Ethercat expert.

It’s going to take me a day or two to coordinate the changes remotely to get the gateway directly attached to the PC.

In the meantime, could you check to see if you have any records from April 2016 about modifying ESI files to work with an NI CompactRIO controller on your end? NI said there were actually two different cases that month with the same issue.

I haven’t been able to find anything on those cases, but I may be able to generate the ESI file for you if you know the Input and Output sizes.

I just have the Ethercat side set to 128/128 for now (see previous screenshot). I’m still not sure why that would help with a problem with operational mode switching. Going to try to get the cable moved over tomorrow.

So that process produced a much larger ESI file (233KB vs 3KB). I can still see/connect to the gateway with it. It added in an for each of the 128 bytes of Rx and Tx. It also added a large <Dictionary><DataTypes> section with a lot of datatype names and bitsizes. It also added PdoUpload="1" CompleteAccess="0" to the <CoE> tag list near the end of the file (in addition to SdoInfo="1" PdoAssign="0" PdoConfig="0" that was already in the base ESI file). I’ll attach a copy here, you can compare it at greater length to the base ABX_V_3_29.xml yourself. HMS Industrial NetworksESI.xml (232.2 KB)

At any rate, this seems to have worsened my problem. I can see the device, I can tell when it’s turned off, but now I can’t transition from Idle to pre-op, it doesn’t even throw an error, just nothing happens when I hit the transition button.

Sorry for the delay. I’m going to escalate the case so you will get an email from our ticketing system. I should be able to get you some information on Monday morning and some other things to try.

I was trying to explain the LED status’ to a colleague and from what you’ve said, it sounds like the RUN LED never lights up? I think this is a problem with the controller failing to communicate the operation mode correctly to the gateway. Are there any other diagnostics that you can give me from the controller?

No, see message 12 from Aug 4. The 3rd LED does light up with ~50% duty cycle (maybe 1-1.5 Hz?) when I transition from idle to PreOp. At the time I had misidentified that as the ERR LED due to the ordering in the documentation, but the order is reversed on the label of the actual product, so that was the RUN LED. The ERR LED lit up at the same time I got the error from my controller when trying to transition to safe op. ERR LED would go back out either when I issued the ‘clear error’ command or when I transitioned back to idle.

Any updates?

Have you just tried using the OMRON file and changing your data size to 256/256?

Have you tried using this master with a different slave device?

It really appears to be an issue with the master not being able to change the operation mode of the slave. I would recommend working with NI to find out what the error messages are caused by and why this is not working. There isn’t much else we can try from the slave point of view.

The OMRON file has the Outputs ControlByte set to x24 and not x64 like the ‘master’ ESI file. Which is correct? It seems like through some brief experimentation, that I cannot even transition from idle to pre-op if the ControlByte on that line is set to x24.

Also, the OMRON file defines PDO’s for 128 Rx and 128 Tx, not 256/256, which should I be using?

I have not used this particular controller with another Ethercat slave since this is the only Ethercat device I’m trying to talk to. However, I have used this controller model with other Ethercat slaves in the past (mostly motor drives) as have my coworkers on at least a dozen projects without this issue.

The error message indicates that it’s the slave that has thrown an emergency. I will reach back out to NI in order to try to get the exact technical reasons why that error would be thrown.

So this took a while, but we finally got some Wireshark traces of the interaction between the gateway and the cRIO Ethercat master.

In packet 486 of the trace, the Anybus gateway communicates back that the Mailbox data length is incorrect (Expected:10 Actual:0).

It looks like that was preceded by a bunch of successful 1e00 mailbox queries, but it was immediately after the SafeOp request (packets 483&484).

Can you help me locate what is going wrong using this information?

Thanks,
Mike

AnybusGateway_TransitionFailureTrace.pcapng (66.8 KB)

I am going to open a case in our ticketing system so that I can escalate it to the proper engineers. You will get an email about a new case being opened.

Hi @mwebster,

I checked with a colleague and he confirmed some things:

It appears that the EtherCAT master sets the size of sync manager 2 & 3 to 0 and disables them, this causes it to become impossible to enter the SAFE-OP state.

It might be because of incorrect PDO mapping in the ESI file.

I submitted a reply on the mysupport.hms.se site with the support ticket you opened on November 9th, but received no reply back. I redid the ESI file in several configurations and submitted the Wireshark capture on that ticket. Reference 202010-22329
Should I still be expecting a reply there or do I need to funnel everything through this forum?

I think you may have already tried this, but I was looking at another thread where a customer had a similar issue to yours and was able to resolve it:

In your case though, it seems there may possibly be an additional issue with the Sync manager. From the pcaps we can see the EtherCat controller sets the size of sync manager 2 & 3 to 0 and disables them.

The error message you got translates to this:

ESM Transition Error

  • Transition PRE-OPERATIONAL to SAFE-OPERATIONAL not successful.
  • “Sync Manager 3” Settings Error, Settings of the Sync Manager channel are not matching.

The “64 00 64 00” portion of the emergency data further describes the “sync Manager Settings Error” which can be interpreted from ETG1000.6 specifications table below:

MicrosoftTeams-image

Do you have any documentation from NI that explains how the Sync Manager setting is handled?

Even better - Can you export an ENI file from the controller?

I forwarded your previous email to NI to see if they have a response. I don’t know what an ENI file is.

It’s the EtherCAT Network Information file that describes the full configuration of the network that the master will apply, and the actions to take on each state transition. We should be able to find out why it’s setting Sync Manager 2 and 3 to 0 with it.

I don’t see anything in the NI literature about being able to produce an ENI file and only one post asking if it’s possible to import one, which it wasn’t. I’ll forward the question along though.