Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

Is it possible to use a cRIO with a EPOS2 maxon motor controller connected to the PC through USB ?

Hi everyone,

 

I want to control a motor in position with an EPOS2 24/2 maxon motor controller which is connected to the computer through USB.

 

To do that I used a VI (in attached piece) taken from the EPOS2 library "EPOSLibrary.llb" given by Maxon (link : http://www.maxonmotor.com/maxon/view/product/363407) and it works fine.

 

Now I want to use this VI with a cRIO 9030 because I want to set the motor position depending on the values sensed by an AI module (NI 9220) read by the FPGA. But unfortunately I cannot compile my VI because I obtain such error 

LabVIEW:  Failed to load shared library EposCmd.dll:_VCS_GetErrorInfo@12:C . Ensure that the library is present on the RT target. Use either MAX to install NI software or FTP to transfer custom libraries to the RT target.

I search a lot to find a solution but actually could not find one. Therefore :

1) Is it possible to use the EPOS library and a VI embedding EPOS subVIs on a cRIO if the EPOS controller is connected to the PC through USB and not connected through the cRIO with a CAN module ?

2) How to upload a library on the cRIO and above all where ?

3) Does the fact to use variables from the FPGA can induce further issues ?

 

Thank you in advance for your help

 

Nico

 

0 Kudos
Message 1 of 4
(4,685 Views)

Dear Nico,

 

the  "EposCmd.dll" will not work, I guess, since the RT OS of your cRIO should be "NI Linux Real-Time (Intel x64-based)"

 

What Operating System Is My Real-Time Controller Running and Why? - National Instruments

http://digital.ni.com/public.nsf/allkb/35F1FD98520D6E0E8625783A005AF557

 

According to

 

Can LabVIEW Real-Time Interface With External Code? - National Instruments
http://digital.ni.com/public.nsf/allkb/2EA49B05E67DDECF86256F9A006FB315

 

Linux RT can only call libraries of type ".so" and no ".dll"s.

 

Maybe you can find a .so file? Or get the sourcecode and find out how to compile it to get the right library?

 

Best regards

 

Kathrin

 

 

Message 2 of 4
(4,632 Views)

Dear Katrin,

 

Thank you very much for this information. I went through many but I did not see these.

I will contact Maxon to see if the same library is available with the ".so" extension.

 

I was still wondering if using the same VI but putting it under the host computer in the project tree could work ? I would need DMA FIFO to read and send data to the FPGA but I don't know if there are other possible issues ?

 

Thanks again !

 

Nico

0 Kudos
Message 3 of 4
(4,630 Views)

Hi Nico,

I think in prinicple you could have two VIs one on the host using the .dll and one on the cRIO doing the rest. However you will have to implement the data transfer to provide the host VI with the data from the real-time target. Depending on your requirements regarding latency & data rate you will have to check if that turns out a bottleneck.

 

See the following KB for further information about network communication methods (section "Networked"): 

Data Communication Methods in LabVIEW - LabVIEW 2014 Help - National Instruments
http://zone.ni.com/reference/en-XX/help/371361L-01/lvconcepts/data_comm/

 

Best regards

Kathrin

0 Kudos
Message 4 of 4
(4,612 Views)