[etherlab-users] rtai_rtdm_dc example, "error: system_time_base less than system time" message

Graeme Foot Graeme.Foot at touchcut.com
Tue Jan 26 00:49:17 CET 2016


The “system_time_base less than system time” is from the rtai_rtdm_dc example code.

In the example it looks like system_time_base is initialised to zero and adjusted by a maximum of +-1001 each cycle.  A value of -58905492552780 indicates that system_time_base is not being correctly initialised or is being corrupted with any other values.

As to the motor “knock” every now and then, this is due to the motors dc clock not being correctly synchronized with the masters cycle time.  It is due to the master either missing or sending two messages to the amps in one cycle every now and then.  Sort out your dc timing and the knock will go away.


From: etherlab-users [mailto:etherlab-users-bounces at etherlab.org] On Behalf Of Bilko AS, Oguz Dilmac
Sent: Tuesday, 26 January 2016 4:37 a.m.
To: etherlab-users at etherlab.org<mailto:etherlab-users at etherlab.org>
Subject: [etherlab-users] rtai_rtdm_dc example, "error: system_time_base less than system time" message


We have been using EtherCAT master 1.5.2 for about two years. We have successfully implemented 4 machines. Each has 5 Kollmorgen AKD servo drives and some Beckhoff IO modules.
Now we are implementing a new machine. On this machine we usually get the following messages:
"system2count() error: system_time_base less than system time (system_time_base: -58905492552780, time:680659495658"
"system2count() error: system_time_base less than system time (system_time_base: -58905492552858, time:680660495658"
"system2count() error: system_time_base less than system time (system_time_base: -58905492552936, time:680661495658"
"system2count() error: system_time_base less than system time (system_time_base: -58905492553014, time:680662495658"

We implemented our system based on the rtai_rtdm_dc example. Only main difference is, we use kernel modules with RTAI instead of LXRT user mod.
We are using "cyclic positon" (8) mode with distributed clock.
We choose the first DC capable device as the reference clock by calling ecrt_master_select_reference_clock(master, 0);
The first node on the bus is a AKD servo drive.

The error occurs from the startup and not disappear until we reboot the PC and the drives.
When the error occurs, it seems sometimes drives can't update the new position reference. Therefore, if it is moving, it tries to stop for one sample and continues to the new reference at the next sample.
This causes a loud "knock" sound on the machine.

We didn't get this message with previous 4 machines.
We tried different FW versions of the AKD drives. Also tried to change the bus node order of the drives. But nothing changed.
Do you know what can be the cause for this message? How can we fix the problem?

Best regards,

Oguz Dilmac

ARGE Bolumu

Bilko AS, R&D Department


Perpa Ticaret Merkezi B Blok Kat 13 Nr. 2568

TR-34384 Okmeydani Istanbul Turkey

Tel : +90 212 220 07 40  Fax :   +90 212 210 47 01

e-mail : odilmac at bilko-automation.com<mailto:odilmac at bilko-automation.com>

web site : http://www.bilko-automation.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20160125/a781dd8e/attachment-0004.htm>

More information about the Etherlab-users mailing list