[etherlab-users] EL2252: SII eeprom and XML config mismatch
hamelin.philippe at ireq.ca
hamelin.philippe at ireq.ca
Tue Jan 22 20:22:20 CET 2013
Hello,
I'm still investigating the problem, but I think I've found some part of the problem. I traced the code which reads TxPDO/RxPDO (slave.c : ec_slave_fetch_sii_pdos(...)) from the SII and this seems correct:
TxPDO found (SII category 0x32):
- 0x1a00 'SysTime'
- 0x1a01 'Feedback'
RxPDO found (SII category 0x33):
- 0x1602 'DC Sync Activate' mapped to SM0
- 0x1603 'DC Sync Start' mapped to SM1
- 0x1600 'Channel 1' mapped to SM2
- 0x1601 'Channel 2' mapped to SM2
However, when using the command line tool I get the following:
$ ethercat -p1 pdo
SM0: PhysAddr 0x0981, DefaultSize 0, ControlRegister 0x00, Enable 12
TxPDO 0x1602 "DC Sync Activate"
PDO entry 0x1d09:81, 8 bit, "Activate"
SM1: PhysAddr 0x0990, DefaultSize 0, ControlRegister 0x00, Enable 4
TxPDO 0x1603 "DC Sync Start"
PDO entry 0x1d09:90, 64 bit, "StartTime"
SM2: PhysAddr 0x0f00, DefaultSize 0, ControlRegister 0x44, Enable 9
RxPDO 0x1600 "Channel 1"
PDO entry 0x7000:01, 1 bit, "Output"
PDO entry 0x7000:02, 1 bit, "TriState"
RxPDO 0x1601 "Channel 2"
PDO entry 0x7010:01, 1 bit, "Output"
PDO entry 0x7010:02, 1 bit, "TriState"
PDO entry 0x0000:00, 4 bit, ""
RxPDO 0x1604 "Reserved"
SM3: PhysAddr 0x0910, DefaultSize 0, ControlRegister 0x00, Enable 4
SM4: PhysAddr 0x1000, DefaultSize 0, ControlRegister 0x00, Enable 4
As we can see, 0x1602 and 0x1603 are reported as TxPDO instead of RxPDO. Moreover, 0x1602 and 0x1603 are not in the valid address range for TxPDO (0x1a00 -> 0x1bff). Looking at the command line tool source code, the direction (RxPDO vs. TxPDO) is deduced from the bit 2 of the sync manager 'Control Register'. I'm currently trying to validate that, but for the moment I think that the SII control register reports SM0 and SM1 as 'Inputs' (TxPDO) while the associated PDOs are rather RxPDO.
Thank you for your help!
Philippe
-----Message d'origine-----
De : Matthieu Bec [mailto:mbec at gmto.org]
Envoyé : 22 janvier 2013 13:55
À : Hamelin, Philippe
Cc : etherlab-users at etherlab.org
Objet : Re: [etherlab-users] EL2252: SII eeprom and XML config mismatch
Hello Philippe,
see Gavin's reply for clarification on in/out and Rx/Tx
> Outputs:
> - SM0: DC Sync Activate
> - SM1: DC Sync Start
> - SM2: Channel 1 & 2 outputs
Your `ethercat pdo` report seems in agreement
> Inputs:
> - SM3: SysTime and Feedback
Those show 'unticked' in my twcat by default (xml entries have no default SM). The mapping has to be done by hand, some
ecrt_slave_config_pdos() in your application startup.
Matthieu
On 1/22/13 7:39 AM, hamelin.philippe at ireq.ca wrote:
> Hi,
>
> as far as I know, given that the device doesn't support CoE, the PDO
> informations are fetched in the SII eeprom by Etherlab. Am I right?
>
> So if TwinCat doesn't give me the same PDO informations are Etherlab,
> there may be two reasons:
>
> a) Etherlab doesn't interpret the SII correctly (I would be surprised
> of
> that)
> b) TwinCAT doesn't interpret the SII, but the XML file which may be
> more complete
>
> Any comments are welcome, thank you!
>
> Philippe
>
> ----------------------------------------------------------------------
> -- *De :* etherlab-users-bounces at etherlab.org
> [mailto:etherlab-users-bounces at etherlab.org] *De la part de*
> hamelin.philippe at ireq.ca *Envoyé :* 21 janvier 2013 16:42 *À :*
> etherlab-users at etherlab.org *Objet :* Re: [etherlab-users] EL2252: SII
> eeprom and XML config mismatch
>
> Hi again,
>
> let me correct my interpretation:
>
> SM2 is and must be a RxPDO. The problem is rather on SM0 and SM1 which
> should be also RxPDO. Also, I generated a SII binary file using
> TwinCat, then uploaded the content to the slave. However, except that
> the description of the slave is now in english instead of deutch, I
> get the same result. It's very strange that the new SII didn't
> resolved the problem. In TwinCat, the sync manager and pdo mapping is
> correctly shown with respect to the XML file. However, it's like the
> generated SII binary file doesn't match?
>
> Thank you,
>
> Philippe
>
> ----------------------------------------------------------------------
> -- *De :* etherlab-users-bounces at etherlab.org
> [mailto:etherlab-users-bounces at etherlab.org] *De la part de*
> hamelin.philippe at ireq.ca *Envoyé :* 21 janvier 2013 15:48 *À :*
> etherlab-users at etherlab.org *Objet :* [etherlab-users] EL2252: SII
> eeprom and XML config mismatch
>
> Hi,
>
> I'm having troubles using the Beckhoff EL2252 with Etherlab. According
> to the documentation and the XML file, I should have 5 sync managers:
>
> Outputs:
> - SM0: DC Sync Activate
> - SM1: DC Sync Start
> - SM2: Channel 1 & 2 outputs
>
> Inputs:
> - SM3: SysTime and Feedback
>
> However, when connecting the slave to the Etherlab master I get the
> following config (which is fixed by the device):
>
> $ ethercat -p 1 pdo
> SM0: PhysAddr 0x0981, DefaultSize 0, ControlRegister 0x00, Enable 12
> TxPDO 0x1602 "DC Sync Activate"
> PDO entry 0x1d09:81, 8 bit, "Activate"
> SM1: PhysAddr 0x0990, DefaultSize 0, ControlRegister 0x00, Enable 4
> TxPDO 0x1603 "DC Sync Start"
> PDO entry 0x1d09:90, 64 bit, "StartTime"
> SM2: PhysAddr 0x0f00, DefaultSize 0, ControlRegister 0x44, Enable 9
> RxPDO 0x1600 "Channel 1"
> PDO entry 0x7000:01, 1 bit, "Output"
> PDO entry 0x7000:02, 1 bit, "TriState"
> RxPDO 0x1601 "Channel 2"
> PDO entry 0x7010:01, 1 bit, "Output"
> PDO entry 0x7010:02, 1 bit, "TriState"
> PDO entry 0x0000:00, 4 bit, ""
> RxPDO 0x1604 "Reserved"
> SM3: PhysAddr 0x0910, DefaultSize 0, ControlRegister 0x00, Enable 4
> SM4: PhysAddr 0x1000, DefaultSize 0, ControlRegister 0x00, Enable 4
>
> Is doesn't make any sense to me that SM2 is a RxPDO since this is the
> output state that the master should provides. Moreover, the PDO
> mapping is fixed by the device so I can't configure my own mapping. I
> see two possibles problems:
>
> a) The SII eeprom isn't correct;
> or,
> b) I don't understand the meaning of these lines :-)
>
> Any ideas?
>
> Thank you,
>
> ------------------------------------
> Philippe Hamelin, ing., M. Ing
> Chercheur / Researcher
>
> T: 450-652-8499 x2198
> F: 450-652-1316
>
> Expertise robotique et civil
> Institut de recherche d'Hydro-Québec (IREQ) 1740, boul. Lionel-Boulet
> Varennes (QC) J3X 1S1, Canada
>
>
>
> _______________________________________________
> 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