[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