From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

How can I make MG17Piezo ActiveX automated without using jog to move the Nanomax stage

Hi 

 

I am using Labview to control the Nanomax Stage from Thorlabs via Benchtop Piezo Controller (BPC203). I tried to write code with the help of user guide given by Thorlabs (www.thorlabs.com/images/TabImages/GuideToLabVIEWandAPT.pdf) and I could get position change when I use Jog with perticular step size. I need to measure hundreds of ponts using this stage motion ( I use it as a scanner) and need to make the code for automatic motion without using Jog for every movement. Also I need to control the timing between each and every movement( say 5 sec for example) without any jerks in motion. Please advise me to make the motion automated with out using Jog. Find attached inage of Labview BD

 

 

0 Kudos
Message 1 of 39
(7,823 Views)

Hi Mahendar,

 

Thanks for your question. I’ve had a look at your block diagram and have come up with a few suggestions that may be of assistance to you.

 

Firstly, I see you’ve wired a cluster constant into the property node that controls your serial number. As this is the beginning of your code, this is unnecessary and may be removed. Furthermore, when you’ve exited the loop, there’s no need for a feedback node before your error out indicator. The feedback node is primarily relevant within loops and, as you’ve utilised shift registers, are redundant here.

 

Secondly, in order to obtain some timing in your VI, you can place a flat sequence structure in your while loop, as shown in the picture attached. This wait function causes your loop to wait until 5 seconds has passed before executing another iteration of the while loop. In terms of connecting, it would be the same as you’ve done, with putting the code within the while loop within the second sequence structure as shown in the attached image.

 

Also, what are the functionalities of the sub VI’s?

Unfortunately, I don’t have access to any of the hardware that you’re using as neither of them are National Instruments products, so I won’t be able to go any further into that side of the issue. However, if you have any more questions regarding your programming, do let me know. Perhaps you could contact Thorlabs, for those issues? I’m also sure if another member of community has had experiences with these products, they’d be happy to help.


ShalimarA | CLA
0 Kudos
Message 2 of 39
(7,787 Views)

Hi Shalimar

 

  Thank you very much for reply. I have some pogress after I had posted this. I could get automatic motion using step size addition for each iteration. But I want motion speed to be controlled without jerks. For that, I have tried with slew rate but not getting any progress. Please see my recent post for the details. i waill be very glad if anybody suggest me some tips to control piezo speed as I am not getting proper support from Thorlabs technical team.

 

 

Kind regards

Mahendar

 

0 Kudos
Message 3 of 39
(7,781 Views)

Hi Mahendar,

 

Did you figure this out? I am facing the same problem! Could you share your labview code please?

 

Many thanks!

 

Tania

0 Kudos
Message 4 of 39
(7,406 Views)

Hi Tania,

 

Yes. I figured out this one. I will share you code this evening 🙂

0 Kudos
Message 5 of 39
(7,401 Views)

Thanks Mahendar!

 

Tania

0 Kudos
Message 6 of 39
(7,398 Views)

Hi Tania,

 

Find attached files as promised. Hope these will be helpful. If you have any further questions, please let me know.

 

Mahnedar

0 Kudos
Message 7 of 39
(7,385 Views)

Hi Mahendar!

 

Thank you so much!

 

Could you just explain the code to me in words as well because I'm slightly lost! Also in the block diagram, have you placed the flat sequence structure inside a while loop? How did you manage to split the flat sequence structure into two windows?

 

Many thanks,

 

Tania

0 Kudos
Message 8 of 39
(7,379 Views)

Hi Mahendar!


I have figured out the things I asked you in my previous message. I can't run the code that you have attached because I have an older version of Labview (8.6) but it's fine since I'm almost done with it.


What exactly is the arrow and star thing before the error out bit and how did you get it? And how did you get the stepsize variable before the divide sign?

 

Many Thanks!

0 Kudos
Message 9 of 39
(7,352 Views)

Hi Tania,

 

Arrow and star might be there just to indicate the flow of code, indeed it is not of any importance, simply you can ignore it. Step size is the input value, what you have seen in the box is the local variable of step size, generally you create this one, when you need one input at many times to avoid messy wiring, Hopw this help

 

Mahendar

0 Kudos
Message 10 of 39
(7,339 Views)