Multifunction DAQ

Showing results for 
Search instead for 
Did you mean: 

scanning microscope vi

i'd like to use a multifunction board to control a Scanning Tunneling Microscope. Scanning topography and I-V spectroscopy would be the basic function from which tio expand. I am looking for a vi that would give me a head start on this project. Also if you have experience in this area, any suggestions, advices it will be appreciated. 
0 Kudos
Message 1 of 5



I don’t have any experience controlling Scanning Tunneling Microscopes with DAQ cards, or any other devices for that matter. But if you could describe what it takes to control such a device (e.g. what kind of signals, digital, analog, timing, etc.) and how it would be broken down at the DAQ level, I would be happy to try to point you in the right direction with sample programs and what not. Let us know, and we will try to help out, sounds quite interesting.



0 Kudos
Message 2 of 5
Thanks for your reply.
So in order to take an image ,let say 256x256, i'll need to sweep the tip in X and Y direction (in a raster manner), and record the Z position at each point. That will be two outputs and one input. This part i think i can do 🙂
I'd like to have the feedback loop (PI) that controls the tunneling current (keeping it constant by changing the tip-sample distance Z) also driven by labview (real time possible? or close to it). This will have to run all the time while taking the measurement. That is a bit new to me in labview...
That would be the basic part, from which to expand to do a lot more!
0 Kudos
Message 3 of 5
Hi nanodude,

As with GDE, I've never actually dealt with a STM before, but I know that some of our customers have in the past.  This might be one of those situations where it might save you time and effort to see if someone has created an STM routine before and see if you can borrow/buy their solution.

I actually found quite a few hits when searching Google "Scanning Tunneling Microscope" labview

You might also want to search for an Alliance Member that already has a pre-made solution. 

That being said, while I don't know the details of what's going on and how to do everything, I might be able to give you a general idea.

You need to essentially have at least 3 counters so that you can generate a finite pulse train (2 counters - X Position Scans) and generate repeated single pulses (1 counter - Y Position Scans).

You can then use those counters to control an analog output and or an analog input.  Where the output might be the motor controller and the analog input actually reads the Z values for the STM.  Since the counters only pulse when you plan on it, you could use them as the sample clock and take readings every nth of a second. 

The best bit of advice I can give you is to break everything down into simple states.  When do you want to do X?  How do you want to read the data?  How do you want to control your process?  Do you need to do point by point operations?

I don't know if you'll actually need a RT loop for control on this, but it's quite possible.  I would definitely take a look first at how others have done this and then work on your solution.

Feel free to post any particular questions that you may have.

0 Kudos
Message 4 of 5

Hi Otis,

Thx for your reply. Indeed, many people have already some kind of labiew VIs for this kind of application, but not one posted it on a web page or on the internet. I am trying to get in touch with some of them to share their knowledge.  

I'll try step by step with sub VIs for the programme, and build slowly fom there.

Thanks for the interest!


0 Kudos
Message 5 of 5