<html xmlns:v="urn:schemas-microsoft-com:vml" 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=us-ascii"><meta name=Generator content="Microsoft Word 14 (filtered medium)"><style><!--
/* Font Definitions */
@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;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-NZ link=blue vlink=purple><div class=WordSection1><p class=MsoNormal>Hi,<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I would like to detect whether my Yaskawa SGDV amps have been repowered (as opposed to just a loss of communication).  Is there any way to nicely do so?<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The amps have 32bit DC clocks so I can’t tell based on the clock time.<o:p></o:p></p><p class=MsoNormal> <o:p></o:p></p><p class=MsoNormal>What I was thinking I could do was:<o:p></o:p></p><p class=MsoNormal>- Set a unused value to a random number on startup (via an sdo)<o:p></o:p></p><p class=MsoNormal>- Read the value via a pdo<o:p></o:p></p><p class=MsoNormal>If communications are up but the pdo based value does not match the random number then the amp has been repowered.  (Needs to be a random number incase the amp settings get saved).<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The reason I would like to do this is that our amps/motors have incremental encoders so if power is lost the axis position gets reset to zero.  However subsequent axes in the EtherCAT chain also loose communications, but not their positions.  Rather than having to rehome the entire machine if there is a loss of comms to the amps I would only like to rehome the repowered ones.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>This situation is particularly relevant when commissioning the machine where changing certain configuration parameters requires the amps to be repowered.  It is also relevant where we have some remote axes which may either loose comms or power and I need to know which case it is.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Also, to really quickly detect that an amp has lost comms I’m reading the amps error code value via a pdo.  If the amp misses a frame the read values do not get written by the amp.  So just before I queue and send the amps domain information I set each amps errorcode in the domain data to a value of 0xFFFF.  Once I receive the response if the value is still 0xFFFF then the amp has had a comms error.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Is this a good way to do it, or is there a better way?<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Regards,<o:p></o:p></p><p class=MsoNormal>Graeme.<o:p></o:p></p></div></body></html>