Hi Vincent,

You are going down the wrong path by stopping to send frames.

Torque setpoint is variable inside the drive and it doesn't disappear just because you're not sending frames any more to update it.

The only one that will notice that the torque setpoint is junk when you stop sending frames, is the SM watchdog that triggers after 100ms. Thereafter the drive will need to do whatever it needs to do to stop the drive, but without the help of the master.

On the other hand, what does stop mean? No torque, no movement or home position? It quite depends on your application, any of which is perfectly valid.

And this fallback strategy must be built into the slave any way. Just think about the case when the ethernet cable is pulled. What will your drive do then if it doesn't get help from the control application in the master? In that case the drive needs some kind of backup strategy in any case!

In my opinion you have 2 options in order of preference:
1) Let the control application in the master stop the motor, whatever that means, but keep sending frames 2) If the master can't stop the drive because communication is ruptured, the motor needs a fallback strategy to stop.

Richard

------------------------------------------------------------------------

On 9/18/20 9:40 AM, BUSSIERES Vincent wrote:
Hi Graeme,

I think it’s a good idea to split input and output into two different domains. 
My drive is probably able to do that.
On the other side, I can’t swap the drive into velocity mode directly because 
swapping can only be done when drive is in the state « switch on disabled ». So 
I need to stop the drive, swap mode and restart the drive, it is not very 
safety either.

Regards

Vincent BUSSIERES
Responsable Technique Logiciel

[1572337113342]
ZE Ma Campagne
36, Impasse Félix Nadar
16000 ANGOULEME
Tel: 33 (0)9.72.40.35.08
www.hemeria-group.com<https://webmail.nexeya.fr/owa/redir.aspx?C=GK_BqKCZef7LtPZnqnd_LGYr1NG9sz4Smy3iKIwO-pXqtJC7VgzXCA..&URL=http%3a%2f%2fwww.hemeria-group.com%2f>
P Afin de contribuer au respect de l'environnement, merci de n'imprimer ce 
courriel qu'en cas de nécessité.
Ce message et les fichiers pouvant être attachés sont confidentiels, réservés à 
l'usage unique des destinataires et n'engagent HEMERIA sous aucune forme que ce 
soit.
This email and any files transmitted with it are confidential, intented solely 
for the unique use of the recipients and don't commit HEMERIA.



De : Graeme Foot <graeme.f...@touchcut.com>
Envoyé : vendredi 18 septembre 2020 01:06
À : BUSSIERES Vincent <vincent.bussie...@hemeria-group.com>; Sebastien BLANCHET 
<blanc...@iram.fr>; etherlab-users@etherlab.org
Objet : Re: [Etherlab-users] dynamic PDO unmapping


Hi Vincent,



Some further thoughts:



- If your drive can handle splitting your input PDOs and your output PDOs into 
two different domains (i.e. put the drives inputs into your common domain and 
the drives outputs into its own domain that can be stopped) then you can still 
read your drives status while not sending the outputs.  The input domains 
watchdog can then probably also remain active and the drive can handle a 
communication loss.



- If you can map the operation mode request index/subindex (and maybe target 
velocity, updated from your actual velocity) into your drives output PDO as 
extra items, then you could continue all PDO communications (from a common 
domain) and swap the drive into velocity mode and let the drives internal 
controlled stop routine decelerate the motor.  You then also shouldn't need a 
custom routine installed on the drive.



Of course none of these options are actually safety rated as they all rely on 
the EtherCAT master doing something.  It might still be worth investigating 
further a drive logic only solution (maybe similar to the second option above, 
but where the slave logic puts the drive into velocity mode, so the torque from 
the PDO may be ignored anyway).

Regards,
Graeme.

________________________________
From: Etherlab-users 
<etherlab-users-boun...@etherlab.org<mailto:etherlab-users-boun...@etherlab.org>> on behalf 
of BUSSIERES Vincent 
<vincent.bussie...@hemeria-group.com<mailto:vincent.bussie...@hemeria-group.com>>
Sent: Friday, 18 September 2020 03:01
To: Sebastien BLANCHET; 
etherlab-users@etherlab.org<mailto:etherlab-users@etherlab.org>
Subject: Re: [Etherlab-users] dynamic PDO unmapping

Dear All,

Thanks a lot for your help. I placed servo drive slave into its own domain. 
Obviously I needed to desactivate heartbeat.
It may not be the best solution but it works....

Regards

Vincent BUSSIERES
Responsable Technique Logiciel


ZE Ma Campagne
36, Impasse Félix Nadar
16000 ANGOULEME
Tel: 33 (0)9.72.40.35.08
www.hemeria-group.com<http://www.hemeria-group.com>
• Afin de contribuer au respect de l'environnement, merci de n'imprimer ce 
courriel qu'en cas de nécessité.
Ce message et les fichiers pouvant être attachés sont confidentiels, réservés à 
l'usage unique des destinataires et n'engagent HEMERIA sous aucune forme que ce 
soit.
This email and any files transmitted with it are confidential, intented solely 
for the unique use of the recipients and don't commit HEMERIA.




-----Message d'origine-----
De : Etherlab-users 
<etherlab-users-boun...@etherlab.org<mailto:etherlab-users-boun...@etherlab.org>>
 De la part de Sebastien BLANCHET
Envoyé : jeudi 17 septembre 2020 12:29
À : etherlab-users@etherlab.org<mailto:etherlab-users@etherlab.org>
Objet : Re: [Etherlab-users] dynamic PDO unmapping

Hi,

I think that it would be preferable to stop the drive without 
breaking/modifying the EtherCAT communication, so that you can continue to 
monitor the drive when it is stopping.

Which servo drive do you have ?

If you have a Kollmorgen AKD,

- You can configure DRV.DISMODE to trigger a controlled stop when the drive is 
disabled. In this case you can stop the motion by disabling the drive with the 
ControlWorld Object (0x6040:0x0),

- You can also trigger a MACRO with a digital input. In this case it opens many 
other possibilities.

Regards,
--
Sebastien BLANCHET


On 9/17/20 10:14 AM, BUSSIERES Vincent wrote:
Thank you for your answers. I'll try to place each slave into its own domain 
and I'll keep you informed of the result.

To my mind, the best solution, would be the servo slave itself, when it detects 
a fault condition, should go into a state where it ignores whatever values the 
master is sending. I have already asked to the slave vendor, I'm still waiting 
for his answer. I don't this it will be possible

Best regards

Vincent BUSSIERES
Responsable Technique Logiciel


ZE Ma Campagne
36, Impasse Félix Nadar
16000 ANGOULEME
Tel: 33 (0)9.72.40.35.08
www.hemeria-group.com<http://www.hemeria-group.com>
--
Etherlab-users mailing list
Etherlab-users@etherlab.org<mailto:Etherlab-users@etherlab.org>
http://lists.etherlab.org/cgi-bin/mailman/listinfo/etherlab-users
--
Etherlab-users mailing list
Etherlab-users@etherlab.org<mailto:Etherlab-users@etherlab.org>
http://lists.etherlab.org/cgi-bin/mailman/listinfo/etherlab-users


--
Etherlab-users mailing list
Etherlab-users@etherlab.org
http://lists.etherlab.org/cgi-bin/mailman/listinfo/etherlab-users

Reply via email to