Custom Programming for Nanopositioning Stages
nPoint uses digital control electronics in its nanopositioning systems. Electrical, mechanical, and software engineering are all done in-house. This flexibility allows for custom development to meet the requirements set forth by an external user. The following provides an example of custom software features programmed at nPoint directly for a customer application.
An engineer came to nPoint with a need for a customized programming solution to solve issues they were facing in an imaging application. The customer wanted to run a 2D raster scan with the nPoint controller. For this application a sine wave is used for the fast axis, with a continuous ramp for the slow axis. A traditional raster scan will step and settle the slow axis for each new line of the scan. This caused too much mechanical disturbance in their system. The goal was to keep the motion of the stage as smooth as possible while scanning. Less mechanical disturbance would allow the customer to run faster raster scans and speed up their overall process.
A programming example was created for the customer to meet their requirements using the internal waveform functionality of the LC.402 controller. The static digital position command is used to set the XY coordinates of the upper left corner of the raster scan. This provides a simple way to start the scan smoothly rather than needing to define a smooth ramp from the center XY coordinates when the scan starts. After the scan has completed the requested number of lines, the slow axis smoothly ramps back down to the original XY coordinates. The time period of the end ramp is adjustable, and can be modified with the specified velocity units.
In this instance USB commands from the user’s integrated PC software application are used to start and stop the internal waveform. TTL digital I/O triggering is also an option providing a variety of ways to synchronize with other data acquisition equipment. The scan can be started and stopped by receiving TTL signals from other equipment, or the nPoint controller can output start and stop pulses at the beginning and end of the scan. The controller can also output pulses for specified travel increments based on the real time sensor reading of the stage. In some applications this allows a significant scan speed increase because the stage no longer has to perfectly track the input dynamics in order to get an accurate image.
Flexibility is key to the addition of a nanopositioning system to a new application. The ability to design a stage in-house while providing custom software, firmware, and hardware allows easy integration of nPoint systems into customer applications and OEM products.