[etherlab-users] R: Re: Re: R: Re: R: SDO stress

paluan.luca at tiscali.it paluan.luca at tiscali.it
Wed May 29 09:13:58 CEST 2013


Maybe some race conditions can happen if multiple reads or writes even 
on different 
drives take place at the same time due to datagram 
overlappings.
Writing my test program I improved a lot reliability 
reading or writing one SDO value 
at once.
This is just what I 
experienced.

----Messaggio originale----
Da: raziebe at gmail.com
Data: 
28/05/2013 16.51
A: "paluan.luca at tiscali.it"<paluan.luca at tiscali.it>

Cc: "etherlab-users at etherlab.org"<etherlab-users at etherlab.org>
Ogg: Re: 
Re: [etherlab-users] R: Re: R: SDO stress

I did not say i am sending 
R/W at the same super packet, and it is
impossible since there is a 
single datagram for coe.
I have the captures from the drives, and the 
packets are OK. ie, data does
arrive to the master interface card. yet 
there are no corruptions and no
unmatches.



On Tue, May 28, 2013 at 5:
22 PM, paluan.luca at tiscali.it <
paluan.luca at tiscali.it> wrote:

>
> 
Multiple Sdo read or write operation at once is for sure an error
> 
source:
> this is one of the advices I received from servos vendor
> 
(Kollmorgen support).
> Only one read or one write at once or you'll 
get
> an error almost immediatly.
> Thanks for your answer.
> Best 
Regards, Luca
> Paluan
>
> ----Messaggio originale----
> Da: 
raziebe at gmail.com
> Data:
> 28/05/2013 15.52
> A: "paluan.luca at tiscali.
it"<paluan.luca at tiscali.it>
>
> Cc: "etherlab-users at etherlab.org"
<etherlab-users at etherlab.org>
> Ogg: Re:
> [etherlab-users] R: Re: R: 
SDO stress
>
> this problem does not relate to
> R/W , it can happen 
with just reads.
> The problem lies somewhere in the
> datagram state, 
for some reason, a
> datagram may be
> sent to to gather
> the mailbox 
response, but its state remains BUSY. this is
> stops the
> entire
> 
fsm from performing any other sdo related tasks, as depicted
> here:
>

> void ec_fsm_slave_exec(
>         ec_fsm_slave_t *fsm /**< Slave
> 
state machine. */
>         )
> {
>     if (fsm->datagram->state ==
> 
EC_DATAGRAM_SENT
>         || fsm->datagram->state == 
EC_DATAGRAM_QUEUED)
> {
>         // datagram was not sent or received 
yet.
>         return;
>
> }
>
>     fsm->state(fsm);
> }
>
> code 
never executs fsm->state(fsm) because
> the top ( on queue) coe 
datagram
> remains in SENT state. i launched 8
> threads, each performs 
a sdo read, and
> got stuck in a few minutes. all
> but the top coe 
remained in the sdo_queue
> queue.
>
> Now, by capturing the
> network 
traffic i know that the packet is not sent.
> but i can see that
> the 
packet has changed its state to SENT, but it timed
> out ( i
> 
replaced  wait_event_interruptible to the timed wait version in
>
> 
ecrt_master_sdo_upload ) .
>
>
>
>
>
> On Thu, May 23, 2013 at 8:15 PM, 
paluan.
> luca at tiscali.it <
> paluan.luca at tiscali.it> wrote:
>
> > Yes 
I'm using
> Kollmorgen Servos, I'll try spacing Sdo operation with
> > 
some idle
> cycles and see if that improves the reliability.
> > I 
wrote
> > Kollmorgen
> support and they just recommended not to overlap 
Sdo
> > requests.
> >
> Unfortunatly I cannot avoid Sdo operations 
during normal
> > cycle since
> some variables cannot be pdo mapped.
> 
> Thanks Luca
> >
> > ----
> > Messaggio
> originale----
> > Da: 
tbj at automateddesign.com
> > Data: 23/05/2013
> > 16.19
>
> > A: "paluan.
luca at tiscali.it"<paluan.luca at tiscali.it>
> > Cc: "etherlab-
>
> > 
users at etherlab.org"<etherlab-users at etherlab.org>
> > Ogg: Re:
> 
[etherlab-
> > users] R: SDO stress
> >
> > This is probably a useless 
aside,
> but what servo
> > drive are you using? I
> > have nothing but 
problems
> with SDO reads and
> > writes on the Kollmorgen AKD
> > 
drive, regardless
> of the EtherCAT master
> > used. If I don't space 
them out by
> > 100ms or
> so, the drive gives
> > inconsistent 
responses. I've spent a year
> >
> trying to improve the
> > situation, 
but to no avail. My plan is to use
> the
> > EtherCAT master as
> > the 
controller so I can avoid SDO usage with
> the drive.
> >
> > Thomas C.

> > Bitsky Jr. | Lead Developer
> > ADC |
> automateddesign.com
> > P: 
630-783-1150
> > F: 630-783-1159 M: 630-632-6679
>
> >
> >
> > On Thu, 
May 23, 2013 at 5:10 AM,
> > paluan.luca at tiscali.it <
> >
> paluan.
luca at tiscali.it> wrote:
> >
> > >
> > >
> > > Hello,
> > >
> > I've 
been
> struggling with Sdo write since 3 mounths without a
> > >
> > 
solution up
> to now.
> > > I wrote a stress test which writes and 
reads what
> >
> > >
> written on three Sdo for three Servos in a 
preemptive real time loop:
> >
>
> > >
> > > after some hours of work 
the application hangs and the ethercat
>
> > master
> > > shows a 
download/upload Sdo Timeout error problem.
> > >
> I've
> > checked 
that
> > > only one read or one write takes place at a
> time, for
> > 
example:
> > > start
> > > write SDO1 for first servo
> > > end
> write 
SDO1 for
> > first servo
> > > start read
> > > SDO1 for first servo
> 
>
> > end read SDO1 for
> > first servo
> > > start write SDO2 for
> > 
> first
> servo
> > > end write SDO2 for
> > first servo
> > > start 
read SDO2 for
> first
> > > servo
> > > end read SDO2 for
> > first 
servo
> > > ...
> > > start
> write SDO1 for second
> > > servo
> > > 
end write
> > SDO1 for second servo
> >
> > start read SDO1 for second 
servo
> > >
> > > end read
> > SDO1 for second
> servo
> > > start 
write SDO2 for second servo
> > > end
> > > write
> > SDO2
> for second 
servo
> > > start read SDO2 for second servo
> > > end read
> > >
>
> > 
SDO2 for second servo
> > > ....
> > > So each write doesn't overlap 
each
> read
> > for
> > > each servo.
> > > As far as I know managing 
Sdo inside
> real time loop
> > is not
> > > reliable: I mean it 
usually works, but for
> a software which
> > manages
> > > Servos is 
not enough.
> > > If someone has
> advices or suggestions
> > is 
welcome.
> > >
> > > Best Regards, Luca Paluan
>
> > >
> > > ----
Messaggio
> > originale----
> > > Da:
> > > RBenYehuda at manz.com
> >
> > 
Data: 22/05/2013 13.36
> > > A:
> > "etherlab-users at etherlab.
> > > 
org"
> <etherlab-users at etherlab.org>
> > > Ogg:
> > [etherlab-users] 
SDO stress
> >
> >
> > > Hey
> > >
> > >
> > > I have been tracking the

> > following problem:
> > >
> I generate bulk of sdo
> > > reads and 
sdo writes (
> > upload /
> downloads).  after some time the sdo
> > > 
read
> > > hangs.  I made a
> >
> capture with tcpdump and noticed that 
the
> > > failure lies in etherlab.
>
> > it appears that
> > > after 
some time etherlab
> > > does not try to send
> a
> > mail box response 
read from the mailbox, even
> > > though
> > > the
> slave
> > "said" 
he has the data available ( by replying to read
> > >
> request).
> > >

> > Why this bug fixed ?
> > >
> > > thank you
> > > raz
> > >
> > >
>

> > >
> > _______________________________________________
> > > 
etherlab-
> users
> > mailing
> > > list
> > > etherlab-users at etherlab.
org
> > > http:
> //lists.etherlab.
> > >
> > 
org/mailman/listinfo/etherlab-users
> > >
> > >
> > >
>
> > >
> > > 
Senza L’IMU il mercato
> > immobiliare potrebbe riprendersi.
> Inizia 
ora la
> > > ricerca della tua
> > Casa!  http://tiscali.casa.
> 
it/vendita?partner=Tiscali
> > >
> >
> 
_______________________________________________
> > > etherlab-users
> 
>
> mailing list
> > > etherlab-users at etherlab.org
> > > http://lists.
etherlab.
>
> > org/mailman/listinfo/etherlab-users
> > >
> >
> >
> >
> 
>
> > Senza L’IMU il
> mercato immobiliare potrebbe riprendersi. Inizia 
ora la
> > ricerca della
> tua Casa!  http://tiscali.casa.it/vendita?
partner=Tiscali
> >
> _______________________________________________
> 
> etherlab-users
> mailing list
> > etherlab-users at etherlab.org
> > 
http://lists.etherlab.
> org/mailman/listinfo/etherlab-users
> >
>
>
>

> --
> https://sites.google.
> com/site/ironspeedlinux/
>
>
>
>
>
> 
Senza L’IMU il mercato immobiliare potrebbe riprendersi. Inizia ora la

> ricerca della tua Casa!  http://tiscali.casa.it/vendita?
partner=Tiscali
>



-- 
https://sites.google.com/site/ironspeedlinux/






Senza L’IMU il mercato immobiliare potrebbe riprendersi. Inizia ora la ricerca della tua Casa!  http://tiscali.casa.it/vendita?partner=Tiscali



More information about the Etherlab-users mailing list