[etherlab-users] Error reassigning removed PDO
Graeme Foot
Graeme.Foot at touchcut.com
Tue Apr 29 01:47:04 CEST 2014
> Ideally what I really want is to (a) identify devices by their serial,
> without having to assign some other id to them, and (b) cope gracefully
> with
> any particular slave being offline (either due to being powered off in
> star
> topology, or manually bypassed in chain topology), mostly by ignoring the
> data they're no longer producing (and passing the fact they're offline to
> the higher level, so it can disable certain things). At the moment the
> only
> ways I can see to do (b) are to either constantly be checking
> ecrt_master_get_slave (which doesn't seem like it'd scale well, and only
> supports ring positions) or to deactivate/rescan/reactivate whenever the
> slave_count changes (to include only online slaves in the domain); which
> is
> fine for the most part as most changes would occur when not "live", but it
> does mean hotplugging wouldn't work.
>
One thing I'm doing with my devices is reading the "error code" pdo value on my motor amps. Just before sending the pdo data I set all of the amps "error code" values to 0xFFFF. After the pdo data is returned if the value is read successfully (ie in OP/SAFE-OP) then it is no longer 0xFFFF and the slave exists.
You could do similar using other PDO values as long as you use an invalid value for that parameter.
> I suppose I could make a domain per slave, but that doesn't sound very
> efficient. (Perhaps I'm wrong about that though.)
>
>
> _______________________________________________
> etherlab-users mailing list
> etherlab-users at etherlab.org
> http://lists.etherlab.org/mailman/listinfo/etherlab-users
>
Regards,
Graeme.
More information about the Etherlab-users
mailing list