<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {mso-style-priority:99;
        mso-style-link:"D\00FCz Metin Char";
        margin:0cm;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.DzMetinChar
        {mso-style-name:"D\00FCz Metin Char";
        mso-style-priority:99;
        mso-style-link:"D\00FCz Metin";
        font-family:"Calibri",sans-serif;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body lang="TR" link="blue" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US">Hi again,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">I still work on running Mitsubishi JET servo drives. We managed to run with DC synchronized to slave reference clock. When we check Wireshark data,<span style="color:black">
</span></span><span lang="EN-US" style="color:black;mso-fareast-language:EN-US">“System Time Register” 0x910 is transferred with FRMW command. But e</span><span lang="EN-US">ngineers from Mitsubishi had told us Beckhoff Ethercat master is using
</span>ARMW command for “System Time Register” 0x910. <span lang="EN-US">Honestly, I don’t have any idea why, but they claim this command difference causes synchronization problem. What do you think about this topic?<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Also, I checked the source, but couldn’t found usage of ARMW command. Is there any example for ARMW command?
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Best regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Celil</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal" style="border:none;padding:0cm"><o:p> </o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoPlainText"><span style="color:black">Hi, <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">How should we use DC to synchronize to the slave reference clock? I implemented it by looking at the rtai_rtdm example. But it's not working as desired. <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">I guess I'm missing something. I would expect to change my sleep times to synchronize to slave clock. I couldn't see something like that. <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">* How can I stop drifting my send time relative to slave clock? <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">* Also, how can I measure the time I'm sending relative to cycle start of the slave clock? Can I just modulo the value returned by ecrt_master_reference_clock_time() to the cycle time? <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">For a little background: <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">We are using EtherCAT master for several years. We are using PREEMPT_RT patch with ubuntu 16.04, kernel 4.9.178. We had downloaded Gavin Lambert's unofficial patch sets a few years ago. <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">Normally we are using master PC as the master clock. This option is mentioned as option a in various mails in the mail list. <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">With this method we successfully integrated many servo motor drives from several vendors. We are generally using 1ms and 2ms cycle times on different machines. <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">We have recently added Mitsubishi Jet EtherCAT series to our database. Although this drive is working fine under lab conditions, somehow it gave synchronization errors from time to time at the machine. There
 are 4 drives and several IOs from Beckhoff on the bus. <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">Mitsubishi engineers claim that, the problem occurs because we are not synchronized to the slave reference clock. And ask us to change our mechanism to synchronize the master PC to the reference slave. This
 method is also described as the option b in mail list. <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">So I copied the related blocks from rtai_rtdm example in the examples folder. I modified RTAI specific functions to user space functions. At our lab we are testing two Jet drives connected to our master PC.
 The drives are changing to OP mode and I can control the position and speed.  <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">There is no error in dmesg messages. Also no error on the display of the drives. But I hear knocking sounds in every few minutes while rotating.  <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">It seems my send time is drifting relative to slave clock. But I don't see how can I stop drifting. <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">Best regards, <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black"> <o:p></o:p></span></p>
<p class="MsoPlainText"><span style="color:black">Celil <o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:12.0pt;color:black"><o:p> </o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>