Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

More than 1 ms MOMO digital IO 7358 in LabView Real-Time 8.5, error downloading EPOS dll file into RT

Hi all,
I have several problems here, I tried to google but still I could not solve the problem. Here are my questions:

1. I tried to download an example program of EPOS which require to download a DLL file into the RT, but it failed, here's the error (I attached the picture) 01/02/2008 13:29:50.511 [error] LabVIEW: Failed to load shared library EposCmd.dll:_VCS_GetProtocolStackName@16:C on RT target device. From the NI.com forum, I found a similar problem and it said by installing Network Variable Engine and Variable Client Support into the LV-RT, and I did, but still failed. Any one can help me about this?

2. I posted a question also in lavag, I think this section is more appropriate. "I am trying to use the digital IO of the motion controller of 7358, but then I realized the delay is more that 1 ms (I checked using the oscilloscope), I attached the code (MOMO = Must On Must Off). Is this real, I mean the hardware delay between on-off is as big as this? Anyone knows the solution for this?"

Note: I am using LV-RT 8.5, PXI-7358 Motion Controller, EPOS 70/10

Thank you for any help


Message Edited by bono02 on 01-02-2008 05:47 AM
Download All
0 Kudos
Message 1 of 8
(8,800 Views)

Hello bono,

1.  From what I have seen, this error is usually caused by one of two things.  The first is the Shared Variable software components not being installed, which is covered in this Knowledgebase.  The other is due to a corruption of the ni-rt.ini file on the Real-Time controller.  You can follow the steps layed out in this Knowledgebase, which gives three possible remedies.  You could also try reinstalling the software (firmware) or create a PXI Uninstall disk from Measurement & Automation Explorer by selecting Tools»Remote Systems»RT PXI Disk Utilities»Create PXI Uninstall Disk.  Boot the PXI Controller from the PXI Uninstall Disk, which will erase the ni-rt.ini and ph_exec.exe on the target.  However, you will need to reconfigure the controller after doing this.

2.  Due to the nature of the digital I/O on motion controllers, it is not surprising that you are seeing around a 1ms delay.  It deals with the fact that it must update the motion controller with the new value on each control loop.  This Knowledgebase gives a little more clarification regarding the 7350 specs.

Carlton
CLA
0 Kudos
Message 2 of 8
(8,776 Views)
Hi Carlton,

I have installed the Engine for shared variable, and in my opinion the 2nd knowledge base is error caused when starting up the RT.
In my case I am trying to load a non-NI dll into the RT (EPOS DLL), is it possible to do this?

My 2nd question, I still do not understand. What so far I read is that the capture time means as input, but in my case is output.
Can you please give more explanation for this? And does it meant I can not get 1 ms pulse? Btw, I try to use the timed loop and set to 2 ms,
but still the signal output is shaking (not purely 2ms, sometimes more or less)

Thanks.

Bondhan

Note. At the moment I am trying to force the RT to load my DLL by copying the dll into /ni-rt and changing the ni-rt.ini file, I hope it is working.
0 Kudos
Message 3 of 8
(8,768 Views)
Here's my testing program and the output in oscilloscope.  Can anyone explain this? Thank you
Download All
0 Kudos
Message 4 of 8
(8,766 Views)

Yes, it is possible to load a non-NI dll onto a RT target, but just because it works on a PC does not necessarily mean it will be compatible with the Real-Time OS.  This Knowledgebase contains a utility that attempts to determine whether or not the dll will work in LabVIEW Real-Time.  Keep us updated on the results.

The digital I/O is software timed (single point) and can have jitter, even in LabVIEW RT.  The update delay also applies to the digital output on the motion controller.  Again, it's the nature of how motion controllers update the digital I/O bits on each control loop.  Are you wanting to do Pulse Width Modulation with the DIO?

Carlton
CLA
0 Kudos
Message 5 of 8
(8,743 Views)
I downloaded the program 8.2 version, though my RT is 8.5. It checked the DLL file and mentioned that it has many bad call. I attached the log file. Do you have any method to force the RT to load the DLL (EPOSCmd.dll) ? I believe many people are using EPOS for maxon motor.

Yes I tried, but I can not get a good signal output, it has jitter. I tried to control RC Servo, but it was shaking due to the unstable signal (jitter). Then I changed by using the PWM port. Do you have solution for DIO? I need to make sure the signal at least less than 1 ms?


Message Edited by bono02 on 01-05-2008 03:05 AM
0 Kudos
Message 6 of 8
(8,734 Views)
Hello bono02,
 
You are right that people are using the EPOS DLL with LabVIEW, but I have not read about a case where the DLL works in Real-Time.  I'm not sure if there is any workaround for this but I will do some more research and post a solution if one exists.
 
What frequency are you generating the signal at?  I believe most RC servos require a 50 Hz PWM frequency so the closest built-in frequency on a 7350 is 46.88 Hz by using the 524K clock divider value (from the NI-Motion Online Help).  As far as DIO, there is no solution to deterministically make the signal less than 1 ms.
Carlton
CLA
0 Kudos
Message 7 of 8
(8,654 Views)
Hi Carlton,

I have done the RC Servo control here
I am new to LabVIEW btw.

Anyway thank you for your help, any time I will come back if I have problems.

Bondhan
0 Kudos
Message 8 of 8
(8,652 Views)