[etherlab-users] Enhanced mode for EL5101
Roland Pastorino
roland at rolandpastorino.com
Tue Feb 3 08:59:14 CET 2015
Hi,
As I wrote in my previous message, I didn't try to set up the EL5101
in enhanced mode as the only thing I wanted to do was to use the 32
bit encoder.
Subsequently I cannot provide you with more details. If I have to do
it in the near future I will keep you posted.
Best Regards
Roland
2015-01-27 22:28 GMT+01:00 Graeme Foot <Graeme.Foot at touchcut.com>:
> 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>:
>
>
>
> From: etherlab-users [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
> 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.
>
>
>
>
>
>
>
>
More information about the Etherlab-users
mailing list