Adding custom PDO entries

Hello team,
I’m integrating a new motor/drive. The motor is from Nanotec, part number: PD4-E601L42-E-65-1 PD4-E601L42-E-65-1 - Stepper motor with… | NANOTEC
Manual can be found here: https://en.nanotec.com/fileadmin/files/Handbuecher/Plug_Drive/PD4-E/fir-v2139/PD4E_EtherCAT_Technical-Manual_V1.5.0.pdf

I have the motor up and running and can command movements from RapidSetup succesfully.
I want to map object 0x6077 (Torque actual value) to PDO. But I can’t get it to show up in RapidSetup → Network data → PDO inputs.
I have edited my EtherCATNodeInfo.xml to include a PDO assignment, see my later link.

I have deleted ESICache.xml and I have checked that object 0x6077 can be PDO-mapped.

Is there any more steps I need to take?

Link to excerpt from my EtherCATNodeInfo.xml https://admin.igems.se/support/files/EtherCATNodeInfo.txt
Link to device ESI file: https://admin.igems.se/support/files/PD4-E601L42-E-65-1.txt

Hi Jesper,

Please try the following…

<Vendor Id="0x0000026C">
  <VendorName>Nanotec Electronic GmbH Co. KG</VendorName>
  <Product Code="0x0000003C">
    <ProductName>PD4-Ex-E-65-1 EtherCAT Drive (CoE)</ProductName>
    <ShortName>Nanotech PD4</ShortName>
    <AxisCount>1</AxisCount>
    <ItemSubType>Drive</ItemSubType>
    <StatusWord>Transmit PDO 1 Mapping Parameter.Statusword</StatusWord>
    <PositionActual>Transmit PDO 2 Mapping Parameter.Position actual value</PositionActual>
    <TorqueActual>Transmit PDO 1 Mapping Parameter.Torque actual value</TorqueActual>
    <ControlWord>Receive PDO 1 Mapping Parameter.Controlword</ControlWord>
    <PositionDemand>Receive PDO 2 Mapping Parameter.Target Position</PositionDemand>
    <TorqueActual>Transmit PDO 1 Mapping Parameter.Actual Torque</TorqueActual>
    <PDOs>
      <PDOAssignment Index="0x1A00" IsOutput="False" Include="True">
        <AddEntry Name="Torque actual value" Index="0x6077" SubIndex="0" BitLen="16" DataType="INT" />
      </PDOAssignment>
    </PDOs>
  </Product>
</Vendor>

Areas of note:
You want to wrap PDO manipulations in a Tag.
I recommend using the same strings as those of the ESI file though it isn’t required. (Adjustment made)
I removed the IO block as there was no associated exchanges Digital IO entries.

Please let me know if you have any additional questions.

Thank you Jacob,
Your vendor tag looks much better. I copied it and pasted it into my EtherCATNodeInfo.xml but I get this exception in RapidSetup when I “Discover network nodes”.

Error in File: EtherCATNodeInfo.xml and Vendor ID:0x0000026C. 
Error Message: Could not find any recognizable digits.

Hi Jesper,

I normally always do hex numbers as 0x. I left the PDO one as x to try to suit your preference but I bet that is it. I’ve edited the above to reflect my thoughts on what went wrong.

Thanks alot, I will give it a try Monday.

I just wanted to get back to you and confirm that it is now working.

1 Like