06-09-2014 02:05 PM
I found a driver that runs my ESP300 stages from Position 1 to Position 2. However, I need to move them incrementally in steps and have a time base for these movements. Is there a way I could use most of the same code from the driver but change the positioning method?
06-10-2014 11:59 AM
I downloaded the drivers you included but I'm pretty overwhelmed by all the different VIs. How are you managing your position? Would it be possible to simply send it many different positions the way you're getting it from point A to point B? I'm thinking, instead of saying "Go to Point B" tell it "Go to point B, then C, then D..." and end up at your original destination?
Feel free to include your code or at least let me know which of the VI's you're using in that library.
06-10-2014 01:00 PM
The specific VI I am working with is ESP300 GPIB Comm Test.vi. What I am really trying to do is program step movements of a set distance (e.g. 5mm) with a time delay between each step. I would like to be able to write out to a measurement file position vs time data to facilitate an experiment. I am an intern and have relatively little experience with LabVIEW so I am having difficulty understanding the code in this VI and hence do not yet know how to alter it to change the positioning code.
I did consider adding more positions like you said, however I thought it would be better to have a programmed movement distance and then just repeat that as many times as needed. At this point, either way will be acceptable. Let me know what you think after you look at the specific VI.
Thank you
06-11-2014 12:57 PM
Hi strider9315,
It's not just you - I've looked at the VI and honestly it is very difficult to understand and is not coded in a readable fashion. I'm not sure how we could modify it to get the functionality you want. Assuming it works correctly as it is, I would recommend simply putting it in a loop and running it for a short distance multiple times, as you said. If the lag is too much using this method, I would recommend looking through the VI with Highlight Execution turned on (it is the little lightbulb button at the top left of the LabVIEW UI). This will slow down the execution of your program and allow you to see the dataflow as it is going through the program, which should help you with a better understanding of what is going on.
06-16-2014 10:22 AM - edited 06-16-2014 10:48 AM
I have made a handler that deals with this Newport controller and I run the motors from one position to the next and back to start again in several steps, and I didn't have to use too many commands to make this work. My program run the motors by absolute values (i.e. by first finding the home position and then moving to an absolute position) or by relative values.
I ended up with using only these commands to control the axes:
Read Actual Position
Get Axis Motion Status
Get Motor Status
Motors On
Write to motor controllers (using compact command structure):
Axis 1=1OL0.01;1OH0.05
Axis 2=2OL0.01;2OH0.05
Move Home (Either by "Find Negative Limit Signal" or "Find +0 Position Count")
Move Absolute
Move Relative
Motors Off
The Axis setup above shows only an example of what I needed to set. The manual explains the exact syntax to be used.
The difficult part of my program was not to control the motors, but to keep track of my desired end-positions and when to move back and stop. Anyway, it seems you will come best out by using only relative movements in a loop.
There is one thing I discovered when investigating the controller and its software: You can program the controller to do most of the stepping and have LabVIEW to only start, monitor and maybe stop the motors. Maybe that would be an easier solution?
In any case it could be helpful to intall the ESP-Util program that's part of the software that ships with the controller. Along with the installation I think will also come the default setup-files for the controller axes in text-format. If not, you can use the ESP-Util to generate the text files containing the current setup for the axes. By reading the various settings in the files along with the commands in the manual you may get an idea of how the axes are currently configured and what parameters to maybe change.
06-17-2014 03:04 PM
Variorex,
Thanks for your reply.
What program did you write your commands in?
Also, when you said you can program the controller to do the stepping did you mean through the conrols on the front of the ESP300?
Thanks,
strider9315
08-28-2014 03:41 AM - edited 08-28-2014 03:43 AM
I used the ESP 301 LabVIEW library, so I just called its command VI's from LabVIEW.
When you install the ESP 300 software, it contains some helper programs for making advanced scripts which you then can upload to the controller.