Menu

Error: Dynamic Channel for datatype

Help
2016-03-29
2016-03-30
  • Kevin Redeker

    Kevin Redeker - 2016-03-29

    Hello everybody,

    I am struggling with the setup of my network. I have created my own XDD files with the support of the two specifications that are available on the POWERLINK website. I tried to add my own objects with the corresponding mappings, however I continue to run into this (or a similar) error:

    [ERROR] Dynamic channel for datatype: 'UNSIGNED16' and direction: 'Rx' not found on MN.
    

    I tried to do a static mapping as described by the XML Device Description Guideline and have boiled down the XDD files to the bare minimum (everything, that is marked mandatory in the POWERLINK specification), so I don't know at which point the dynamic channel error occurrs.

    Any help would be appreciated

     
  • Powerlink-team Kalycito

    Hello Kevin,

    You have created your own XDD files, for

    • Only for CN
    • Only for MN
    • Both CN and MN

    What is your case?

    This problem can occur if you have removed the <dynamicChannels> section available in the default MN XDD.

    Can you please compare your MN XDD with the default MN XDD available with the openCONFIGURATOR project.

    If you are not able to figure out the solution, please post the XDD files you created manually for us to have a deeper look into the problem.

    Regards,
    Powerlink-team
    Kalycito

     
    • Kevin Redeker

      Kevin Redeker - 2016-03-30

      Hi there,

      I am using both a modified CN and MN.

      I did have the <dynamicChannels> section removed, as I was under the impression, that the were in some form associated to the demo. I reinserted the section from the XDD file that I found in the openPOWERLINK package in the <OPLKroot>/apps/common/openConfiguratorProjects and at least the error changed to:

      [ERROR] Dynamic channel for datatype: 'REAL32' and direction: 'Rx' not found on MN.
      

      I think that is, because there is no dynamic Channel defined for the data type REAL32 (which has the hex code 0x0008 I think?!). So I will go ahead and do that right now and hope that solves my issue.

      Regardless, as I stated in my previous post, I worked with the XML Device Description - Implementation Guidelines V1.0.0, which I got from the http://www.ethernet-powerlink.org/en/downloads/technical-documents/ webiste. I used the guideline, the example in the annex and the "general" Powerlink specification to build an understanding of the matter and to create my own files, but could not yet find the description of the dynamicChannels section or what it actually is used for. Can you point me to information about this, as I would like to understand the file structure completely. Generally I think the guideline is missing a little bit information about the MN side.

      Also I would like to know, if there is any description on how to work with the objdict.h files. I know that I have to adapt them according to the created XDD/XDC files and recompile the stack with the modfied files. I can probably figure out how to edit the files from the source code itself, but I found a linked resource on this forum a while back, which seems to be what I'm asking for; however that link is not working anymore. (Here is a link to where I found it: https://sourceforge.net/p/openconf/discussion/help/thread/e5439a0e/#e770/094b

      Thank you for your support ;)

       

      Last edit: Kevin Redeker 2016-03-30
  • Powerlink-team Kalycito

    Hello Kevin,

    You got it right!.

    Dynamic Channels:

    • The dynamic channels are described in section "6.8.2 Dynamic index assignment" of the Ethernet POWERLINK Communication Profile Specification EPSG DS 301 V1.2.0.
    • The XML device description guidelines mainly concentrates on the CN XDDs and AFAIK dynamicChannels are only for MNs, otherwise the document is applicable for both MN and CN.
    • The object range of objects are similar to CiA 302-4 version 4.1.0 specification part4. Network variables.
    • For Real32: inputVariable range is A240h to A27Fh and outputVariable range is A6C0h to A6FFh.

    ObjectDictionary:

    Please let us know if you were able to get it working!

    BTW: If you could share us your end objective, we'll be able to support you in a better way.
    Thanks.

    Regards,
    Powerlink-team
    Kalycito

     
  • Romain Naour

    Romain Naour - 2016-03-30

    Hi Kevin, all,

    I'm using REAL32 datatype with openpowerlink v2.2.2 and I had to slightly modify the objects dictionnary, please see:

    https://github.com/RomainNaour/openPOWERLINK_V2/tree/develop-2.4-fixes

    I'm testing these patches.
    Best regards,
    Romain

     
  • Kevin Redeker

    Kevin Redeker - 2016-03-30

    Hi everyone,

    thank you for the information and the link to the ressources. I have modfied my files according to the new informations. In addition I took a new approach from a "fresh" demo file and modfied it according to the files that can be found in Romains repository and added objects for my own needs in the manufacturer area.

    My end objective is to collect some data on the CNs and bring them together on the MN for further use. For each instance of data collection, the CN has one object of type record with several sub-entries. At the moment I plan to use 4 instances on one CN and 4 CNs in total. on the MN there are a total of 16 (custom) objects, that are similar to the ones on the CNs. I would like to use 4 Pres/Preq frame combinations for the communication.

    I can add the files to a POWERLINK project in the eclipse project without a problem, but when I try to do the mapping in the mapping view, two things don't work:

    1. I cannot choose any object on the TPDO tab on either the CN or the MN
    2. I can setup Objects in the RPDO tab of both CN and MN, but when I try to do it on the MN I get the following error:

      Mapping operation is not supported for managing or redundant managing node.

    I tried it earlier with a static mapping approach, but there too I got the error on the RPDO site. On the TPDO view I could see the objects I manually mapped, but all of them had a yellow warning sign in the status field. Maybe I am missing some elementary mistake I made, but I hope you can help me out here.

     
    • Powerlink-team Kalycito

      Hello Kevin,

      The warning status image indicates error on following conditions:

      • The objects/sub-objects mapped in TPDO section is/are RPDO mappable.
      • The objects/sub-objects mapped in RPDO section is/are TPDO mappable.

      Please check the "pdoMapping" attribute (available in the CN's XDD/XDC) of the corresponding manufacturer specific object(s).

      Well, generally openCONFIGURATOR does the MN and RMN mapping for you. :-)

      • You'd have to concentrate only the CN mapping, CN node properties and MN node properties.
      • Then the corresponding mapping values and the configurations are automatically generated after a build of the openCONFIGURATOR project.
      • For Redundant managing node all the configurations should be same as the MN. So it is copied.

      Thanks.

      Regards,
      Powerlink-team
      Kalycito

       
      • Kevin Redeker

        Kevin Redeker - 2016-03-30

        Thank you for your help; I think it worked now, as I have gotten output without any error messages ;)

         
        • Powerlink-team Kalycito

          Hello Kevin,

          Happy for you!
          Please post us if you have any queries.

          Regards,
          Powerlink-team
          Kalycito

           

Log in to post a comment.