[etherlab-dev] Some hints using the Beckhoff BK1120
Robert Hoffmann
r.hoffmann at proaut.eu
Tue Feb 26 10:21:57 CET 2008
Hi,
I had some troubles setting up the EtherCAT-stack with a Beckhoff
BK1120-unit recently, but with the good help of Florian I got it up
running. So if you like to use a BK1120, please regard the following hints:
The Sync-Manager-Information has to stored completely in the EEPROM. My
new BK1120 however didn't have this data and
ecrt_domain_register_pdo_range reported "EtherCAT ERROR: No sync manager
found for PDO range". Florian sent me a patched EEPROM-version; I
attached it to this post. The EEPROM is written to the controller by
setting the write_eeprom-flag to 1 and piping the eeprom-data to
/sys/ethercat/slave_xxx/eeprom:
echo 1 > /sys/ethercat/write_eeprom (if existing...)
cat eeprom.eep > /sys/ethercat/slave_xxx/eeprom XXX => position on
the bus
After a reboot of the controller the pdo-range should be addressed properly.
The next step is to find the correct address-ranges of the pdo. The
easiest way to do that is to open Beckhoff TwinCAT or KS2000 and find
the greatest input and output-address. The BK1120 uses a 2 Byte-Offset
for internal data that has to be added to the addresses. Furthermore the
addresses have to be even.
My PDO has the highest addresses:
IX 48.7 + 2 (Offset BK1120) + 1 (even address) = 52
QX 47.7 + 2 (Offset BK1120) + 0 (even address) = 50
Leave the index = 0 and try your determined address on the length-entry
of ecrt_domain_register_pdo_range. If you get an error-message just play
with +- 2 on your length-value...
Have fun!
Robert
-------------- next part --------------
A non-text attachment was scrubbed...
Name: BK1120_min.eep
Type: application/octet-stream
Size: 218 bytes
Desc: not available
URL: <http://lists.etherlab.org/pipermail/etherlab-dev/attachments/20080226/c2d178bf/attachment-0002.obj>
More information about the Etherlab-dev
mailing list