[etherlab-users] Enhanced mode for EL5101
Graeme Foot
Graeme.Foot at touchcut.com
Tue Jan 27 22:28:11 CET 2015
Hi,
Did you figure out how to set up enhanced mode for the EL5101 modules?
Regards,
Graeme.
From: etherlab-users [mailto:etherlab-users-bounces at etherlab.org] On Behalf Of Roland Pastorino
Sent: Tuesday, 13 January 2015 9:50 p.m.
To: etherlab-users at etherlab.org
Subject: Re: [etherlab-users] Enhanced mode for EL5101
Thank you Gentlemen for your input.
I will try to make it work today.
I keep you posted with the results.
Best Regards
Roland Pastorino
2015-01-12 22:49 GMT+01:00 Graeme Foot <Graeme.Foot at touchcut.com<mailto:Graeme.Foot at touchcut.com>>:
From: etherlab-users [mailto:etherlab-users-bounces at etherlab.org<mailto:etherlab-users-bounces at etherlab.org>] On Behalf Of Roland Pastorino
Sent: Sunday, 11 January 2015 12:31 p.m.
To: etherlab-users at etherlab.org<mailto:etherlab-users at etherlab.org>
Subject: [etherlab-users] Enhanced mode for EL5101
Hello everyone,
I have prepared an application using an EK1101 and an EL5101, both from Beckhoff.
Everything works as expected.
Now I would like to use the enhanced operating mode of the EL5101 in order to get a 32 bit value for the encoder.
Despite many hours of searching and reading I haven't found a single piece of information in the Beckhoff manuals that explains how to do that.
Could someone give me a hint on how to enable the enhanced operating mode?
Thanks you.
Best Regards
P.S.: this question has already been asked in 2011 but it has no answer (http://lists.etherlab.org/pipermail/etherlab-users/2011/001390.html)
Roland Pastorino
Hi,
I’m using the following pdo entries:
// revision 0x03FF0000 and newer
ec_pdo_entry_info_t EL5101_current_pdoEntries[] = {
// control (rw)
{0x7010, 0x01, 1}, // enableLatchC
{0x7010, 0x02, 1}, // enableLatchExternP
{0x7010, 0x03, 1}, // setCounter
{0x7010, 0x04, 1}, // enableLatchExternN
{0x0000, 0x00, 4}, // spacer
{0x0000, 0x00, 8}, // spacer
{0x7010, 0x11, 32}, // setCounterPos (rw)
// status (r)
{0x6010, 0x01, 1}, // latchCValid
{0x6010, 0x02, 1}, // latchExternValid
{0x6010, 0x03, 1}, // setCounterDone
{0x6010, 0x04, 1}, // counterUnderflow
{0x6010, 0x05, 1}, // counterOverflow
{0x6010, 0x06, 1}, // statusOfInputStatus
{0x6010, 0x07, 1}, // openCircuit
{0x6010, 0x08, 1}, // extrapolationStall
{0x6010, 0x09, 1}, // statusOfInputA
{0x6010, 0x0A, 1}, // statusOfInputB
{0x6010, 0x0B, 1}, // statusOfInputC
{0x6010, 0x0C, 1}, // statusOfInputGate
{0x6010, 0x0D, 1}, // statusOfExternLatch
{0x6010, 0x0E, 1}, // syncError // for revision 0x03ff0000
{0x6010, 0x0F, 1}, // txPDOState // for revision 0x03ff0000
{0x6010, 0x10, 1}, // txPDOToggle // for revision 0x03ff0000
{0x6010, 0x11, 32}, // actual position (r)
{0x6010, 0x12, 32}, // latchPos (r)
};
ec_pdo_info_t EL5101_current_pdos[] = {
{0x1603, 7, EL5101_current_pdoEntries + 0},
{0x1a04, 18, EL5101_current_pdoEntries + 7},
};
ec_sync_info_t EL5101_current_syncs[] = {
{0, EC_DIR_OUTPUT, 0, NULL, EC_WD_DISABLE},
{1, EC_DIR_INPUT, 0, NULL, EC_WD_DISABLE},
{2, EC_DIR_OUTPUT, 1, EL5101_current_pdos + 0, EC_WD_ENABLE},
{3, EC_DIR_INPUT, 1, EL5101_current_pdos + 1, EC_WD_DISABLE},
{0xff}
};
Using 0x1603 and 0x1a04 gives you access to the enhanced 32 bit data. However, I have not figured out how to actually put it into enhanced mode, which is required if you want to use the distributed clock.
Also of note, the above pdo configuration is for revision 0x03FF0000 and newer modules. For revision 0x03fe0000 and older modules three of the entries are different:
{0x1C32, 0x20, 1}, // syncError // for revision 0x03fe0000 and older
{0x1804, 0x07, 1}, // txPDOState // for revision 0x03fe0000 and older
{0x1804, 0x09, 1}, // txPDOToggle // for revision 0x03fe0000 and older
Let us know if you figure out how to set up enhanced mode for the distributed clocks.
Regards,
Graeme.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.etherlab.org/pipermail/etherlab-users/attachments/20150127/e393b180/attachment-0004.htm>
More information about the Etherlab-users
mailing list