industrialNETworXnetx

pwhiteis

pwhiteis

| 07.01.2009 | 21:06 | 3 replies

Controlling Ethercat Master cycle times

Hello,

I've recently used to the C-Toolkit to create a Hilscher Master (cifx50), and have it communicating with a C-Toolkit controlled Slave (comX). Master and Slave are currently running on separate Win32 machines.

I have observed that the Master seems to send data at a fixed 1mSec rate regardless of what my application program is doing. For example, my application executes the following sequence FOREVER 1) Sleep 5mSec 2) xChannelIOWrite 3) xChannelIORead . I am sending a sequence number from the Master, which the Slave increments it by 1 and sends back. The Master always gets the sequence number back that it expects. The concern I have is that the slave will get between 5-6 identical messages before the sequence number changes. Also, I have noticed that the message Rx period of the Slave seems fixed at 1mSec regardless of what period I set my Master application to run at.

Is there a way I can control this so that the data exchange is synchronized with my application?

Also, is there a way for us to control the netX Master bus cycle time? 1mSec data exchanges meets our requirements, but it might be nice to go down to 500uSec to give ourselves some headroom if necessary.

Thanks,

--
Peter Whiteis
National Radio Astronomy Observatory
PO Box 2
Green Bank, WV 24944
http://www.nrao.edu

Johnny

Johnny

| 09.01.2009 | 09:28

Hello pwhiteis,

you are right, the master generates the frames with a cycle time of 1 msec. This means, that the bus cycle is NOT synchronized to your (Host-)application. The master always sends the last data which the host has written. The problem is, that the host does not know when a bus cycle starts.

Is is planned to make the bus cycle time selectable by the user. But now the cycle time is always fixed.

pwhiteis

pwhiteis

| 09.01.2009 | 15:47

Johnny wrote:
Hello pwhiteis,

you are right, the master generates the frames with a cycle time of 1 msec. This means, that the bus cycle is NOT synchronized to your (Host-)application. The master always sends the last data which the host has written. The problem is, that the host does not know when a bus cycle starts.

Is is planned to make the bus cycle time selectable by the user. But now the cycle time is always fixed.

We need to run a motion control application on our Master node which requires synchronous communication with the Slave at ~1mSec. Currently is there no way to accomplish this using the netX?

You mentioned that you plan to make the bus cycle time selectable by the user. Is there an expected time frame for this?

Andreas Jacob

Andreas Jacob

Hilscher Gesellschaft fuer Systemautomation mbH

| 13.01.2009 | 06:30

Hi pwhiteis,

as far as I understand the answer from Johnny, is there currently no way to adjust the cycle time.
But there are plans to implement this feature but there is no time schedule available right now.

Login