.. |ImAFM (TM)| unicode:: ImAFM U+2122 .. |(TM)| unicode:: U+2122 .. |MLA (TM)| unicode:: MLA U+2122 .. index: Advanced setup, drive frequencies, base tone, drive amplitudes, measurement bandwidth .. _advanced-setup-label: Advanced Setup ============== .. image:: ../Icons/setup_panel.png :width: 20mm :align: left The ``Advanced Setup`` view is initially selected in the ``Advanced`` pull-down menu. Here you can control the drive for standard Intermodulation AFM using two drive tones, set the feedback, and measure the response in real time. ``Requested`` fields are the desired, or target values of: * ``f1 [kHz]`` the frequency of drive 1 * ``f2 [kHz]`` the frequency of drive 2 * ``df`` the measurement bandwidth, df = abs(f2-f1) / n, where n = 1,2,3... * ``A1 [%]`` the amplitude of drive 1, in percent of full output * ``A2 [%]`` the amplitude of drive 2, in percent of full output ``Actual`` show the values that you get, which depends on which algorithm you choose for frequency tuning. .. index: frequency tuning .. _frequency-tuning-label: Frequency tuning '''''''''''''''' Frequency tuning is key to performing measurements with the **Multifrequency Lockin Amplifier (MLA)**\ |(TM)| (|MLA (TM)|). Tuning is the process of selecting the base tone **df** and the actual drive tones, so that they meet the criteria for |ImAFM (TM)|; that all frequencies are integer multiples **df** (see :ref:`intermodulation-measurement-label`). This interface offers three different tuning schemes: * ``None`` takes the requested frequencies and does not tune them at all. Without tuning, multi-frequency linear response will be corrupted by Fourier leakage between drive tones and it is not possible to get an accurate measurement of intermodulation. * ``Rounding`` selects the closest frequencies to the requested values, such that all frequencies will be near-integer multiples of one base frequency. Rounding gives a very small amount of Fourier leakage between tones, but in almost all cases this leakage is well below the dynamic range of the measurement, and therefore considered negligible. The phase error is corrected at the end of each measurement time (T=1/df), so there should be no noticeable phase drift. With this algorithm there is considerable freedom in the choice of frequencies. * ``Integer`` is a more strict algorithm, where the condition of integer multiples is met exactly. This algorithm gives no Fourier leakage between tones and no phase error, but it is more restrictive in the choice of the possible values of df. You should use this algorithm when the |MLA (TM)| is synchronized to external frequency generators. To avoid phase drift, you should make sure that the frequency of the external generator is an exact integer multiple of **df** given in the AFM Suite, to as many significant figures as possible with your generator. The exact properties of these different tuning options have to do with the way in which frequencies are synthesized and analyzed in the |MLA (TM)| which we do not discuss in detail here. It suffices to say that the small errors induced in the **Rounding** algorithm are negligible for |ImAFM (TM)|, and we recommend that you use this tuning. The automatic setup uses this algorithm. .. _feedback-setup-label: Setup Feedback '''''''''''''' Before you engage a sample, and after you have made any changes to the drive configuration, you must setup the feedback. Feedback for |ImAFM (TM)| is controlled by the amplitude of response at one of the frequencies measured by the |MLA (TM)| (see :ref:`feedback-label` section). For the basic two-frequency drive, feedback is run at frequency **f1**. With the :ref:`drive-constructor-label` you have more control over which frequency to set as the feedback frequency. * ``Setup`` will adjust the feedback so that zero volts at the feedback output port corresponds to the given set-point. * ``Set-point`` is the desired response amplitude, given as a percentage of the free response amplitude. Adjusting the set-point to more than 100% will cause the probe to lift away from the surface. The new set-point values are active as soon as they are entered in the field, and you hit return (or tab). The feedback port sends out an error signal for PID control of the Z-scanner. This feedback error signal is put back in to the host AFM controller, in the place of the cantilever deflection signal. If the host AFM is set to contact mode with the feedback set-point in the AFM software set at zero volts, the AFM's PID control will adjust the Z piezo to keep the error signal at zero volts, or the value of the set-amplitude. The feedback gains are adjusted in the host AFM which is actually performing the feedback, using the error signal is calculated by the |MLA (TM)|. For example: If the set-point is set to 85%, the system will engage the sample until the response amplitude at the feedback frequency drops to 85% of its free value. When this 85% condition is met, the |MLA (TM)| will have zero volts at the feedback output. In our experience this amplitude feedback scheme is sufficient for tracking most surfaces. When scanning large areas on rough surfaces, the feedback has to respond rapidly in order to track the surface, and rapid adjustments of the cantilever base height are necessary. Force measurement is very difficult when the cantilever base is rapidly accelerated by an over-active feedback. This acceleration gives rise to additional forces on the tip which are not taken in to account in the reconstruction algorithms. Hence overactive feedback means inaccurate force measurement. Improving feedback and actually incorporating the feedback signal in to the force reconstruction is a subject for future research and development. .. _measure-label: Measure ''''''' You can measure and plot the response in real time using two different modes: * ``Run time mode`` starts the measurement of the response in the :ref:`time-mode-label`, and plots the sampled stream of data in the time domain and its discrete Fourier transform (DFT) in the frequency domain. The discrete data is plotted with a connected blue line. You will notice a jumping of the phase of the oscillation envelope in the time-domain signal. This is normal as the data are analyzed and plotted in asynchronous chunks, and not as one continuous stream. The DFT of the time-sampled data is however stable as each chunk as the same sampling frequency and same number of samples. * ``Run freq. mode`` starts the measurement of the response in the :ref:`frequency-mode-label` and plots the amplitude at the measured frequencies (vertical red bars) in the frequency domain, and the oscillation envelope in the time domain (connected red lines) * ``Stop`` will terminate the measurement. You must stop the measurement before you start other measurements, for example scanning a sample or taking stream data. Units ''''' You can select between displaying the cantilever response signal in Analog-to-Digital Units ``ADU`` , or in nanometers ``nm``. You must have a :ref:`current-calibration-label` in order to display in nanometers. .. _manual-setup-label: Manual Setup '''''''''''' The |MLA (TM)| allows for driving with more complex drive waveforms involving more than two tones, and measuring with lockin schemes that do not simply measure closely spaced tones around one resonance. The AFM Suite offers a few tools to aid in configuring the |MLA (TM)| for such measurements. Select ``Manual setup`` from the Advanced pull-down menu. You can dock this panel, for example in the Advanced Setup frame. * Select a ``Measurement time window`` or ``Measurement bandwidth``. These quantities are the inverse of one another, and when you change only one of these, the system will calculate the other to match your change. * Input the frequencies of all tones where you either want to drive, or listen for response. These frequencies can be given as ``Freq. kHz``, or as ``n`` , the later being integer multiples of the measurement bandwidth (see :ref:`intermodulation-measurement-label`). * Set the ``Amplitude`` and ``Phase`` of the tones only where you wish to drive. If the amplitude is set to zero, there is obviously no drive at that frequency. Setting Phase does not effect the measurement of response phase, regardless of the drive amplitude. * The check-boxes for ``Out 1`` and ``Out 2`` control the output mask. When checked, the drive will be applied at that output port. * You can select which of the four input ports ``In 1`` ... ``In 4`` where the MLA will listen for response at any tone. When you input all of your target values in to the table, select the tuning algorithm that you would like to apply (see :ref:`frequency-tuning-label`): * ``tune 0 (no tuning)`` will give you your target values, but this tuning will suffer from Fourier leakage, and it will not be possible to lock in on harmonics or intermodulation products without phase drift. * ``tune 1, prio f, (default)`` will tune the measurement bandwidth and frequencies, putting priority on getting as close as possible to the selected frequencies. This is the default tuning scheme that works well for most applications. * ``tune 1, prio df`` will tune the measurement bandwidth and frequencies, putting priority on getting as close as possible to the selected measurement bandwidth. * ``tune 2, prio f, (perfect)`` will tune the measurement bandwidth and frequencies, putting priority on getting as close as possible to the selected frequencies. In contrast to the ``tune 1`` options, the ``tune 2`` options are 'perfect' in that they create exact matches between bandwidth and frequencies. ``tune 1`` gets very close to a match, but not exact, so that there will be a very small, and for most purposes negligible, amount of Fourier leakage. ``tune 1`` options also use a periodic correction method to avoid phase drift. The correction is not necessary for ``tune 2`` options. * ``tune 2, prio df, (perfect)`` will tune the measurement bandwidth and frequencies, putting priority on getting as close as possible to the selected measurement bandwidth. Finally, press the ``Write to MLA`` button. This will apply the tuning algorithm and configure the |MLA (TM)|. In order to see what you actually got after the tuning, you need to press ``Read from MLA``, and the table will show the values actually used by the |MLA (TM)|. With so many tones at your disposal, manual configuration of the |MLA (TM)| is obviously impractical when the measurement becomes more complex. In this case you will want to use the Python scripting interface contained in the :ref:`drive-constructor-label`. .. _out-of-range-label: Out of Range Error '''''''''''''''''' The |MLA (TM)| is designed to handle signals within a 'normal range' for a 'typical AFM'. Depending on your AFM and our experiment, these normal range settings may need to be adjusted. When an input signal exceeds the maximum, 'clipping' occurs inside the |MLA (TM)| and this induces harmonic and intermodulation distortion in the spectrum. One way to avoid this problem is to simply attenuate the input signal. Intermodulation Products provides attenuators to place at the SIGNAL IN port for this purpose. Note however that a large signal coming from an AFM detector may bring the detector close to saturation, which also gives harmonic and intermodulation distortion of the spectrum. Furthermore, a cantilever will behave with a nonlinear restoring force when it is driven to very large response amplitude. One should be careful not to confuse these sources of nonlinearity, which result in harmonic and intermodulation distortion of the free cantilever oscillation, with harmonic and intermodulation due to a tip-surface force. Any output signal should also not exceed the maximum or be too small, in order to avoid distortion in the |MLA (TM)|. Often drive amplitudes are shown in percent of full output. The drive waveform coming from an output port of the |MLA (TM)| can be conditioned with external amplifiers or attenuators to suit the application. Internal adjustments can be made inside the |MLA (TM)| to give more or less output voltage. Contact Intermodulation Products regarding these adjustments.