[etherlab-users] PDO mapping without 0x1c12 0x 1c13 method
Richard Hacker
ha at igh.de
Mon Jan 18 10:41:39 CET 2016
I also had a similar issue where "it works with TwinCAT" but not with
EtherLab Master. This happens so often.
Now TwinCAT is not the reference implementation of an EtherCAT master -
it is a master implementation in a pool of a bunch of master
implementations, albeit from the inventors of EtherCAT themselves.
Nevertheless, TwinCAT needs to adhere to the standard just like _all_ of
them.
When things "work with TwinCAT" but not with EtherLab Master, more often
than not it is a problem where the slave does not conform to the
standard. Amongst this non-conformance is mostly that the SII data
stored in the slave's EEPROM is incorrect. TwinCAT retrieves its
information about the slave from the ESI xml files, while EtherLab
Master uses SII information.
This is just one failure scenario amongst many others. When you see the
master failing to reconfigure PDO's, this may be the case.
You can install the correct SII information in the EEPROM yourself using
TwinCAT. Select the slave in the tree, go the "EtherCAT" tab sheet, hit
"Advanced Settings -> ESC Access -> Smart View -> Write E2PROM" and
you're ready.
You can also do that offline using EtherLab Master. In that case, you
can write a bin file using TwinCAT with "Advanced Settings -> ESC Access
-> Hex Editor -> Write to File" and then upload the file with
ethercat -pX sii_write <file>
ethercat rescan
<wait a while for scan to complete>
and try again. Replace -pX with the correct slave address.
See
http://www.etherlab.org/en/ethercat/faq.php
- Richard
Am 2016-01-14 um 23:37 schrieb Gavin Lambert:
> On 14 January 2016 21:31, quoth Thomas Paoloni:
>> I've had a phone conversation with the German people who developes PSD
>> firmware at the middle of December and after this, we also had a
>> TeamViewer session so that they could show me how they take the control
>> trough Twincat (they failed even in this goal) and nobody told me that as
>> special firmware is available for this drive, they simply told me that
> this
>> mapping method is not implemented.
>
> If you can see PDOs in the "ethercat pdos" view, then that mapping method
> must be supported. Otherwise either someone has misinterpreted something or
> the device is not actually EtherCAT conformant and you should use something
> else instead. (Slave vendors are required to sell only conformant devices.)
>
> It's possible that some things are available only via SDOs (CoE) though, but
> this is usually limited to up-front configuration settings and acyclic
> statistical and other informational data rather than data that would
> normally be read/written cyclically.
>
> Also note that some devices may not allow you to actually change the
> assignment, but all such CoE-enabled devices are required to accept writes
> to the assignment registers provided that they match the "correct" values.
> So make sure that they are being registered in the correct order (use
> "ethercat debug 1" and look at the syslog to see what order Etherlab is
> trying to write them in).
>
>> Anyway, at the end Twincat works and it would be good nice if etherlab
> could
>> behave as Twincat and map the domain in the same way, without the
>> needing of a special firmware.
>
> It should be possible, but you'll need to determine what is different about
> the configuration set in TwinCAT vs. what you're trying to set in Etherlab.
> After successfully configuring and communicating with the device in TwinCAT,
> export and review the ENI init sequence, and make your Etherlab application
> do the equivalent.
>
>
> _______________________________________________
> etherlab-users mailing list
> etherlab-users at etherlab.org
> http://lists.etherlab.org/mailman/listinfo/etherlab-users
>
More information about the Etherlab-users
mailing list