Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Locked PDO CAN

moshtaraq
2020-05-22
2020-06-03
  • moshtaraq - 2020-05-22

    Hi,

    I need to add some new CAN messages to my program but I can't change the ID's on them. The PDO's are greyed out for some reason.

    Any help is appreciated!
    Jens

    3.5.14 btw

     
  • eschwellinger

    eschwellinger - 2020-05-22

    Could you add the EDS file?

     
  • moshtaraq - 2020-05-22

    Here you go. I have two messages that aren't greyed out and those are the first ones I added.

     
  • sgronchi - 2020-05-22

    Subindices of indices 1600h - 1603h, that store RPDOs mappings (and for what is worth their cousins 1A00 - 1A01 for TPDOs), all have AccessType const.
    The EDS says "you can change the IDs (140x and 180x), but not the mappings", and Codesys respects that.

     
  • moshtaraq - 2020-05-22

    How can I fix that or is it a fixed thing that those are not changeable?

     
  • sgronchi - 2020-05-22

    Since it was created by Codesys a couple of hours ago:

    CreatedBy=CODESYS V3.X, DeviceEditorCANbusDevice.plugin, V3.5.14.0
    ModificationTime=08:30PM
    ModificationDate=05-22-2020
    ModifiedBy=CODESYS V3.X, DeviceEditorCANbusDevice.plugin, V3.5.14.0

    I assume that you can change the PDOs in the CANopen slave editor and then reexport and reimport the EDS.

     
  • moshtaraq - 2020-05-22

    I had never heard of a EDS file to be honest.... I edited them with add i/o area and the mapped them to the GVL...

     
  • sgronchi - 2020-05-23

    Well, you have imported an EDS to have PDO mappings locked.

     
  • moshtaraq - 2020-05-23

    So how do I change it? Was my original question.

     
  • sgronchi - 2020-05-23

    If I understand correctly, you are locked up now.
    I'd bet you did the following:
    1) Created a CANopen local (slave) device in your Codesys project.
    2) Did the mapping.
    3) Exported its EDS.
    4) Installed the EDS as a device into the Codesys device repository.
    5) Added a CANopen Manager (master) in the tree.
    6) Added the just installed device underneath the CANopen Manager.
    7) Maybe deleted the local device (wrong thing)
    Just redo points 2, 3, 4, and 6 and you will be fine.

     
  • moshtaraq - 2020-05-23

    I had not heard of a EDS file till yesterday so I didn't do anything with exporting or importing...

     
  • moshtaraq - 2020-05-24

    sgronchi, could you elaborate on that some more? I did the following:
    1. added the CANbus device
    2. added CAN local device
    3. edit I/O area, add area and then the variables
    4. mapping to gvl variables

    That's all I did and the first ones I did aren't locked.... When you asked for the EDS file, I had to look it up.

     
  • sgronchi - 2020-05-24

    Could you post your project?

     
  • eschwellinger

    eschwellinger - 2020-05-24

    Hi,
    if you are using your plc as Canopen Device - no need to change the EDS file,
    just add additional PDOs here:

    BR
    Edwin

     
  • moshtaraq - 2020-05-24

    eschwellinger that's exactly what I did but now I can't change the ID's

     
  • sgronchi - 2020-06-03

    If you add data through the I/O area, the PDOs in your project result locked, whereas if you manually add indices into the Object Dictionary and then proceed to mapping onto your GVL, then they are editable. Though I do not know why.
    P.S.: the .project file is enough ;-)

     

Log in to post a comment.