Skip to main content

Kollmorgen Support Network

To better serve our Kollmorgen users with questions too complex to be addressed in this space, we made the painful decision to close this Community forum.

Please submit your question using the contact us form to reach our application engineering team.

For the immediate future, you can still access and read past posts.

Thank you for understanding and for participating in the community over the years.

Read Driver Temperature | 18 Apr 2016 | |

Read Driver Temperature

How to read AKD PDMM driver and motor temperature using command in project? 

I do come across documentation using DRV.Temperatures, Motor.Temp but when  I 

try to key in that command in ST program and it prompt me to declare that variable.

Please advice me how to apply this command in Project using ST.


Comments & Answers

Joe Parks said ...

Joe Parks | Mon, 04/18/2016 - 11:44

To read drive parameters that are not setup as PDO parameters that are updated at the cyclic EtherCAT cycle rate, you can use DriveParamRead and DriveParamWrite function blocks. These are found in the library of hte KAS IDE software under Fileld Bus>EtherCAT

You will enter the string based parameter names like 'Motor.Temp' as inputs to the function block, as well as the EtherCAT address for the device you want to read with 1001 being the first device on the network, 1002 the second, and so on. You will have to continue to recall the function blockc (cycle the Execute input) if you want to read a parameter more than once, so if you want to continually monitor temperature you can tie it to a timer that calls the function block at a certain rate. It can take around 20ms to execute one of these functions, and only one can be active for each AKD drive at a time. This means you cannot read or write multiple parameters at the same time for a single drive, but you can read the same parameter for multiple drives at once.

NayanDodhia | Thu, 04/21/2016 - 14:37

DriveParamRead can block the ASCII channel. An alternative is to read it via SDO using block ECATReadSdo. You can use index 3612, sub index 0 to read MOTOR.TEMP value and the index 3610 subindex 0 to read DRV.TEMPERATURES. SDOs can be read in an seperate ST cycle running at a normal priority.

About this Question