[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