Discussion:
[etherlab-dev] Slave to Slave communication
Koch Daniel
2015-05-11 08:13:04 UTC
Permalink
Hi everyone,



currently i am looking for a safety-plc-solution in combination for our plc which is running rtai and etherlab master with the latest pull from the source-forge hg repository.
Moreover, I have not engaged in this, and don't know, what is necessary
to make slaves communicate with each other... Do you have more
background information than I do?
Not that I'm aware of. In principle, nothing more should have to be done
than to tell the relevant slaves to read/write from/to the same logical
address by configuring the sm/fmmus accordingly. Everything else should
then depend on the bus topology. Afaik this is the theory, :).
I spoke to a few people about this, in the meantime. The general way to

allow slave to communicate with each other is simply to exchange their

Pdos as usual and to copy the data of the sending slave into the data

range of the receiving slave. At least this is the way,

Safety-over-EtherCAT (FSoE) is operated.



Your proposal is possible, in principle, but it depends on the bus

topology, as you said. The master currently has no interface for this.

The current implementation provides disjunctive logical process data

ranges for each slave, by default.

<<





Did anyone tried it out if the slave-to-slave communication works (i.e. in an earlier version of the etherlab-master)?

I know, I am self-responsible configuring the FSOE-Master and slave, but that is not the point. Will I am be successful by buying fsoe-components, implement them in my module and run it without doing any changing on the etherlab-master code itself?



Have anyone ever run a Safety-over-Ethercat solution via the etherlab-master?





Mit freundlichen Grüßen / Best Regards



i.A. Daniel Koch


Elektronik/Software
------------------------------------------------------------------------------------------------------------------------------------------------
Paul Maschinenfabrik GmbH & Co. KG
Max-Paul-Str. 1 | 88525 Duermentingen | Deutschland/Germany
Phone: +49 (7371) 500 - 0 | Fax: +49 (7371) 500 - 111
Mail: ***@paul.eu <mailto:***@paul.eu> | Web: www.paul.eu <http://www.paul.eu/>
------------------------------------------------------------------------------------------------------------------------------------------------

Kommanditgesellschaft, Sitz Duermentingen, Registergericht Ulm HRA 650073, Pers. haftende Gesellschafterin:
Paul Maschinenfabrik GmbH, Sitz Riedlingen, Registergericht Ulm HRB 650013, GF: Werner Paul, USt-IdNr. DE146544409
Dave Page
2015-05-11 10:23:07 UTC
Permalink
Post by Koch Daniel
Have anyone ever run a Safety-over-Ethercat solution via the etherlab-master?
I have successfully used the EL6900 FSoE PLC, EL1904, and EL2904
via the IgH master. It is necessary to use TwinCAT to program the PLC
initially, and to identify all the PDO data which must be coped.

There is nothing fundamentally difficult about FSoE, except
understanding how all the pieces fit together is not easy. Suggest
reading the FSoE specification (ETG5100) first for an overview. The
specification does not disclose anything about the specific EL6900
implementation in terms of how to burn your PLC code onto the EL6900 --
this is a black box for which TwinCAT is mandatory.

In every cycle of the domain, the application (your code) must copy
short byte arrays of data from the PLC TxPDO to each FSoE slave, and
from each FSoE slave to the PLC. This is easy to arrange with, for
example, memcpy(). The use of fancy datagram commands like FRMW or
overlapped mapping of the PDOs in logical space is not at all useful
with regards to FSoE -- the data movement is simply copying bits between
ordinarily mapped PDOs in the application software and nothing more. The
protocol is designed to accept multiple process data cycles of latency
between updates, as the fault condition is detected using a watchdog timer.

Best regards - Dave
PAUL-SOFTWARE
2015-05-12 06:51:54 UTC
Permalink
Thanks!
I find your information helpful!


-----Ursprüngliche Nachricht-----
Von: etherlab-dev [mailto:etherlab-dev-***@etherlab.org] Im Auftrag von Dave Page
Gesendet: Montag, 11. Mai 2015 12:23
An: etherlab-***@etherlab.org
Betreff: Re: [etherlab-dev] Slave to Slave communication
Post by Koch Daniel
Have anyone ever run a Safety-over-Ethercat solution via the etherlab-master?
I have successfully used the EL6900 FSoE PLC, EL1904, and EL2904 via the IgH master. It is necessary to use TwinCAT to program the PLC initially, and to identify all the PDO data which must be coped.

There is nothing fundamentally difficult about FSoE, except understanding how all the pieces fit together is not easy. Suggest reading the FSoE specification (ETG5100) first for an overview. The specification does not disclose anything about the specific EL6900 implementation in terms of how to burn your PLC code onto the EL6900 -- this is a black box for which TwinCAT is mandatory.

In every cycle of the domain, the application (your code) must copy short byte arrays of data from the PLC TxPDO to each FSoE slave, and from each FSoE slave to the PLC. This is easy to arrange with, for example, memcpy(). The use of fancy datagram commands like FRMW or overlapped mapping of the PDOs in logical space is not at all useful with regards to FSoE -- the data movement is simply copying bits between ordinarily mapped PDOs in the application software and nothing more. The protocol is designed to accept multiple process data cycles of latency between updates, as the fault condition is detected using a watchdog timer.

Best regards - Dave

Loading...