The Nanoscale World

Custom controller implementation in Nanoscope V

rated by 0 users
Not Answered This post has 0 verified answers | 9 Replies | 4 Followers

Top 75 Contributor
13 Posts
Points 152
umarkhan posted on Thu, Feb 17 2011 9:14 AM

hello,

          I have a question related to the Nanoscope V controller that comes with the Multimode 8 AFM. Is possible to implement using the Nanoscope a custom controller other than the proportional integral one already provided? For instance if I wish to try an H infinity controller or something else can I do that?

         Umar Khan.

  • | Post Points: 12

All Replies

Top 10 Contributor
288 Posts
Points 3,905
Bruker Employee


Sorry Umar, we don’t provide access to the DSP or FPGA on our systems. If you think I could help on a specific application you are trying to accomplish, let me know.

Steve

  • | Post Points: 12
Top 75 Contributor
13 Posts
Points 152

hello,

          I am working on applying an adaptive control method to the AFM. Ideally I would like to control the piezo input and read the PSD output in matlab, but if thats not possible I can modify the PI gains of the existing controller in Nanoscope. Is there a way I can change the PI gains from Matlab using for instance Nanoscript. Some one mentioned on the forum the vairables TMFbIgain and TMFbPgain which represent the gains. Can I set these from Matlab ?

Thanks,    

                Umar.

 

  • | Post Points: 12
replied on Mon, Mar 7 2011 4:16 PM

Hi Umar,

The only way I see it going to work, and maybe I am wrong, is that you take the deflection signal out of the system via the signal access module, multiply that signal with a factor derived by your custom algorythm, and feed the now modified deflection signal back into the NSV.

Stefan

  • | Post Points: 12
Top 10 Contributor
288 Posts
Points 3,905
Bruker Employee

Umar,

For what you describe I think Stefan’s recommendation is very good. You can interrupt the loop using the breakout box and inject your custom signals.

You can also control the PI gains via NanoScript or COM through Matlab, Labview, or other (and even read the PSD signal), however, this communication may be too slow for what you are trying to accomplish (~100ms).

Steve

Top 75 Contributor
13 Posts
Points 152

hello,

           Thanks for the information. Since I do not have a signal access module, I think modifying the PI gains through COM is the best option for me. Can you please suggest me a link or some other source where I can read about accesing the PI gains through COM.

Umar.

  • | Post Points: 12
Top 10 Contributor
288 Posts
Points 3,905
Bruker Employee

To do this, you need to have the COM interface SW key. Contact me offline with your system information at steve.minne (at) bruker-nano.com.

  • | Post Points: 10
Top 500 Contributor
2 Posts
Points 22

Dear Stephen,

 

I have a question related to this.

 

I am also using a custom designed controller for the controlling the cantilever deflection, which is programmed on a separate FPGA.  I make use of the In0-output of the SAM to read out the cantilever deflection signal and send it to the FPGA.

At the moment I managed to send the filtered signal from FPGA back to the NS5-controller via the In0-input of the SAM, and drive the Z with this signal by just setting  the P-gain of the NS-5 controller to 1. However, I noticed that although the controller in NS is only set to the P-action there is also quite some low-pass filtering action going on before driving the Z. This low-pass filter is hampering the things we want to do.

 

My question therefore is: Is it possible to drive the Z-drive directly from an external signal, without this low-pass filtering? Either, by modifying the low-pass filter within the feedback controller of the NS5 system, or by routing an external signal directly to the Z-drive?

 

Thanks in advance!

 

Stefan

  • | Post Points: 12
Top 100 Contributor
8 Posts
Points 94
Bruker Employee

Stefan,

The best way to drive Z would be to drive the Z Piezo directly. This would, of course, require High Voltage (+/- 220V). This method would give you ultimate Z-feedback control. You could accomplish this by piping the "In-0" Deflection signal to your FPGA Control system, then do your compensation (PID, Hinf, H2, etc) and output the control signal to a High Voltage Amplifier that meets your bandwidth requirements, then pipe the signal into the SAM's Z Input BNC (You'll need to toggle the switch to EXT -> MIC setting).

Hope this helps,

Fritz

  • | Post Points: 12
Top 500 Contributor
2 Posts
Points 22

Dear Fritz, 

Thanks a lot for your reply! We will use an external piezodriver for our experiments as you suggested. 

Stefan 

  • | Post Points: 10
Page 1 of 1 (10 items) | RSS
Copyright (c) 2011 Bruker Instruments