From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Real-Time Measurement and Control

cancel
Showing results for 
Search instead for 
Did you mean: 

NI 9144 EtherCAT and NI 9213 settings using 3rd party EtherCAT master

Solved!
Go to solution

I want to change a setting (the speed setting) on the 9213 when using the 9144 EtherCAT module. I am using a 3rd party EtherCAT master.  I can use an EtherCAT configuration tool to change the speed setting.  I want the 9144 9213 hardware to always start up with this (non-default) mode.

 

My questions are:

  1. Does this speed setting in the 9213 get saved?  If yes, where?
  2. Does this speed setting get saved in the EtherCAT  ENI file?
  3. Or do I have to specifically send the setup commands via CoE every time I initialize the EtherCAT using the 3rd-party master?

thanks

0 Kudos
Message 1 of 6
(6,216 Views)

Hi there,

 

The 9144 settings are stored internally and are XML based, which means that if your 3rd party master is capable to pull the XML configuration via File over EtherCAT(FoE) you should be fine.

 

Regarding the modules, the configuration is stored on a XML file as well (is an User-Defined Variables profile) that you can copy to the master’s IO configuration folder (I don’t believe it will be necessary to send commands via CoE).

 

The following online documents elaborate more on this topic and provide the necessary XML files:

 

How Do I Use the NI 9144 EtherCAT Slave Chassis with 3rd Party EtherCAT Master Tools?
-  Can I Use a Beckhoff EtherCAT Device as a Master For NI 9144?
-  How Can I Programmatically Discover and Access EtherCAT I/O Items?

 

I hope this answer your questions

 

Regards,

Alejandro C. | National Instruments
0 Kudos
Message 2 of 6
(6,199 Views)

Thank you for your reply. 

 

But I am not quite sure that you answered my question.  I already have the XML hardware configuration file for the 9144 - I used the NI XML configuration tool,and this tool will output an ESI (EtherCAT Slave Information) file.  The ESI is read into a 3rd-party configuration tool.  I used the 3rd party tool to change the speed setting on the 9213.  The 3rd party configuration tool is only used to make an ENI (EtherCAT Network Information) file, which is used by another EtherCAT master to run the 9213.

 

My questions refer to the 9144/9213 power-up state.  If I change the speed setting, will this information get stored anywhere on the 9144/9213, so the power-up state will be the new (non-default) speed setting?  Or do I have to send a command to set the speed every time that the 9144/9213 is powered up, and initialized by the EtherCAT master?

 

There is a section in the ENI file where there are initialization commands.  the EtherCAT master would be responsible for sending these commands.

 

<!--Commands added by user:-->
<InitCmd Fixed="0" CompleteAccess="0">
	<Transition>PS</Transition>
	<Comment><![CDATA[CoE Port Override]]></Comment>
	<Timeout>1000</Timeout>
	<Ccs>1</Ccs>
	<Index>24575</Index>
	<SubIndex>0</SubIndex>
	<Data>01000000</Data>
</InitCmd>
<InitCmd Fixed="0" CompleteAccess="0">
	<Transition>PS</Transition>
	<Comment><![CDATA[Speed Control high speed]]></Comment>
	<Timeout>1000</Timeout>
	<Ccs>1</Ccs>
	<Index>8194</Index>
	<SubIndex>0</SubIndex>
	<Data>0f000000</Data>
</InitCmd>
<InitCmd Fixed="0" CompleteAccess="0">
	<Transition>PS</Transition>
	<Comment><![CDATA[CoE Port Override]]></Comment>
	<Timeout>1000</Timeout>
	<Ccs>1</Ccs>
	<Index>24575</Index>
	<SubIndex>0</SubIndex>
	<Data>00000000</Data>
</InitCmd>

 

 

 

0 Kudos
Message 3 of 6
(6,163 Views)

In traditional NI setups, the configurations are store in the Real-Time OS that communicates with the Ethercat Master. When running the application you deploy these settings (if they are not already embedded in a Real-Time Executable) to the target. All the control is made through Real Time programming and the XML only includes the location of the module in the 9144.

 

As the manual states (pag. 11), the channels are multiplexed and have an open thermocouple detection (OTD) circuit, If an open thermocouple is connected to the channel, the current source forces a full-scale voltage across the terminals (Figure 5).

 

It sounds like you are not using LabVIEW so I'm not 100% sure about the overall behavior, you may want to play around with the XML file and check if the configurations required a reload when power up.

 

Regards,

 

Alejandro C. | National Instruments
0 Kudos
Message 4 of 6
(6,127 Views)

Thank you.

 

I am not using LabView; I am using a 3rd-party EtherCAT master. Actually, most of the modules that mount into the 9144 have options, so this (EtherCAT setup) information is not exclusive to the 9213 and its speed control.

 

I do plan to experimentally determine if I need to adjust the EtherCAT ENI (xml), and, if necessary, how to adjust the ENI. I will post the results when I get there…. I plan to start with the xml I posted previously.

 

Last - we are aware of the potential accuracy issues using the high-speed option – we want to quantify these effects.  In addition to the speed control option, there is another option “Channels to Convert”.   We want to try changing this option, and it presents the same EtherCAT setup issue as the speed control.

0 Kudos
Message 5 of 6
(6,112 Views)
Solution
Accepted by topic author Mike4695

This is a follow-up to my previous post.

 

The above xml, when added to the EtherCAT ENI file, will correctly set the speed control. I tested this on a 9213.

 

If you are using a 3rd-party EtherCAT master with the 9144 modules, you will have to connect to some form of EtherCAT configuration tool to generate the EtherCAT ENI file.  The configuration tool will have an option to add Startup commands to the ENI file. These Startup commands result in the additional xml that I listed above.

0 Kudos
Message 6 of 6
(5,867 Views)