LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Control of an AKD: TCP Modbus

Hello everyone,

 

I am currently developping an application for a test bench that is supposed to control an AKD servodrive made by Kollmorgen. I am quite a begginer on LabVIEW and I have to admit that I am struggling a little bit with this issue. I see that this subject has been treated many times on community messages, however, none of them could solve my problem. 

 

The company, which provided me the actuator and the servodrive also gave me a document that allowed me to write the code I need in order to control the AKD via TCP Modbus. The thing is that I am not able to make the connection between Kollmorgen workbench (on which all my tasks are defined) and my LabVIEW program.

 

Does anyone have any suggestion on how I could create a connection between my LabVIEW program and my AKD? Maybe I am missing something ?

 

I attached hereby the document that the company provided me and 2 VI (the first VI allows to enable the motor and disable it a few seconds later / the second one allows to enable the motor, find a reference, perform the tasks which are created in the workbench and disable the motor).

 

Thanks in advance for your suggestions,

 

Azeni

Download All
0 Kudos
Message 1 of 3
(1,094 Views)

Hello again,

 

I found a solution to my problem. It seems that there was a problem with the IP adress of the drive.

 

I am now able to enable/disable my motor. Now my objective is too perform an actuator homing thanks to the attached program. I do actually have a small problem, which is related to the variable that comes in the VI "Write multiple Holding". I attached a screenshot of my code in which I circled these variables. Does any one know how does these variables works? I seems that we can choose how many bits we want to communicate to the VI. The thing is that, somehow, when I change the values of the bits, sometimes the homing occurs, sometimes not... 

 

Thanks in advance,

 

Azeni.

Download All
0 Kudos
Message 2 of 3
(1,079 Views)

That is the number of registers.  Not byte, and certainly not bits.

 

Each element of the array is a U16 integer which is the value going to one register.  Two elements is supplying 2 registers starting at register address 254 on one write, 946 on the next, ....

0 Kudos
Message 3 of 3
(1,058 Views)