PI Software Tools for Motion Control & Positioning: drivers for LabVIEW, Linux, TCP/IP, Text-Based Programming Languages, Matlab C++, USB, Ethernet, Support for NI DAQ Boards, C++, PIMikroMove™ Mikro-Move™

PI Software Tools for Precision Motion Control / Positioning

For LabView, C++, VB, Matlab, Image Acquisitiong Packages, NI DAC Cards, .....
PI provides high-level, robust, easy-to-use software tools for fast, seamless integration of motion systems into application control software.

Communication between PI components is based upon a universal command set (GCS - General Command Set). It decouples hardware and software, and is used for all drive systems.

The high quality of positioning systems is made apparent in daily operation by PI software. Starting with simple commissioning, through convenient operation with a graphical interface, to quick and simple integration in customized programs with high performance, PI software covers all aspects important to an application.

To learn more, take the tour

Software Updates
The PI Update Finder automaticaly finds the latest updates for you:
PI Update Finder

PI Software Component Matrix for Windows and Linux Operating Systems

Universal Command Set Simplifies Commissioning and Programming

For uniform operation of nano and micropositioning systems, the universal PI General Command Set (GCS) is used. GCS operation is independent of the controller or drive principle used, so that several positioning systems can be controlled together, or new systems can be introduced with a minimum of programming effort. With GCS the development of custom application programs is simplified and less prone to errors, because the commands for all supported devices are identical in syntax and function. Through the use of the GCS command set with its convenient functions, the orientation phase and application development process is significantly accelerated. The GCS commands are available at the controller terminal, in macros and in the form of a universal driver set for LabVIEW (VIs), Windows dynamic link libraries (DLL) and Linux libraries. This facilitates the development of custom macros, as well as integration with programming languages like LabVIEW, C++ or MATLAB.

Easy integration in LabView. Quick access to the full functionality. Contact PI for our extensive library of software examples.

Simple Commissioning and Optimization of System Dynamics

The commissioning of PI positioning systems is quick and easy with the NanoCapture™ and PIMikroMove™ host software.Controller and stages are selected and activated with a few clicks. Then the system can be used directly. Running the system from the NanoCapture™ or PIMikroMove™ host software graphical interface requires no programming knowledge, either for commissioning or direct operation.

Furthermore the system behavior is displayed graphically in easy-to-understand diagrams and allows fast and easy optimization of the operating parameters such as P-I-D terms, notch filter frequencies and slew rate limit.

Step response of a position-controlled micropositioning stage with optimized and non-optimized dynamic parameters

NanoCapture™ Software

Optimizing System Performance for Digital Piezo Controllers
NanoCapture™ provides basic and highly advanced functions for operating digital piezo servo-controllers. With its graphical interface, Nano-Capture™ enables convenient system optimization and can display settling behavior, resonance frequency, Bode plots, etc. If the nanopositioning system is equipped with directly measuring position sensors, these features are available with no additional external metrology.

Comprehensive System Optimization
The functions described above are especially useful when the mechanical properties of the system calibrated at the factory are changed, e.g. by applying a higher load.

In such a case,the adjustment of parameters like control-loop amplification (P-Iparameters), notch filter frequency or the zero-point of the integrated sensors, can optimize response behavior and system stability. In addition, NanoCapture™ supports numerous controller specific properties, like, for instance the Wave Generator, which offers synchronized operation of multiple axes with mathematically defined curves, or with arbitrarily costomized functions.

Convenient operation of piezosystems and optimization of motion parameters, shown here: the display of operating limits in a Bode plot

NanoCapture™ Application Software Offers Simple Interface
  • Enables Optimization of All Servo Parameters
  • Displays Response Behavior & Resonant Frequency, Creates Bode Plots
  • Function Generator for complex waveforms

PIMikroMove™ Software

Simple Operation of Positioning Systems
PI positioning systems can be controlled with PIMikroMove™ in a clear and simple manner; all connected controllers and axes are accessed via the same graphical interface. PIMikroMove supports quick commissioning of controllers and positioners, comprehensive system optimization as well as the programming of macros.

All Axes in One View
With PIMikroMove all axes connected can be controlled from one program instance. This, independent of which PI controller is connected to which axis. For example, it is possible to have two axes in an XY application connected to two different controllers, but still command them with PIMikroMove from the same window.

Optimal System Behavior
PIMikroMove also allows the user to optimize the system behavior through convenient servo tuning. This possibility is especially helpful if the mechanical properties of a system are changed, for example by applying a different load. The system response and stability can then be optimized with the convenient parameter tuning tool. For recurring tasks, different sets of optimized parameters can be saved as stage profiles and then activated as needed in custom-programmed applications.

Macros Ease Recurring Tasks
PIMikroMove considerably simplifies the creation of macros for recurring tasks. Execution of a macro, consisting of a previously stored list of GCS commands, can be commanded over the interface or, if supported by the controller, run automatically on power-up, with or without a host PC connected.

Controllers without their own macro facility, like the C-843, can be commanded by host macros which PIMikroMove edits and stores in the host PC. Host macro execution can be triggered with digital I/O lines and support multiple axes connected to different controllers. With the position pad, two or more independent axes can be moved by a mouse or joystick as an XY stage, also in vector moves.

1D/2DScan and AutoFind
Scan 1D/2D can measure an input source while moving up to two axes. Moved axes and input source need not be controlled by the same controller. The input source to be measured can be an analog input, an axis position or a raw position sensor value. The measured data is visualized and can be saved to a file on the host PC. AutoFind tries to find the maximum of an intensity signal by modifying the position of two axes.

FFT, Profile Generator Data Recorder
PIMikroMove also supports controller-specific features. Data recorder: record various motion and system parameters, run FFT (fast Fourier transformation) on the data as well as export it to programs like Microsoft Excel (CSV format). Profile Generator: synchronize motion of several axes along multi-order, mathematically defined curves or customized arbitrary functions.

A uniform interface for all axes

  • Operation of PI Motor, Piezo, Piezomotor, Hexapod & Hybrid Controllers
  • Optimizing all Servo Parameters
  • Macros for Recurring Tasks and Automation
  • Profile Generator, Joystick control etc.
  • 1D/2D Scan and AutoFind

All axes and the position pad can be displayed in one window

Hexapod control and 3D visualisation of connected hexapod geometry with PIMikroMove. More information on hexapod software

Defining a Wave Table for a nanopositioning / scanning stage is very simple with the included PIMikroMove software.


Quick Integration in LabVIEW
The integration and control of PI positioning systems under LabVIEW is greatly simplified by the provision of comprehensive LabVIEW libraries. The LabVIEW drivers support all controllers from PI, independent of the type of connected stage or controller interface. Thus it is possible to operate piezo, DC motor, piezomotor, hybrid and hexapod controllers with one driver together in one application.

Full Support for NI DAQ Boards
The same LabVIEW programs (virtual instruments, VIs) that are available for PI digital controllers (e.g. set and read voltages and positions, velocity, etc.) can be used in conjunction with a National Instruments DAQ (data acquisition) board to operate positioning systems based on analog PI controllers. Furthermore, the patented HyperBitTM technology is available under LabVIEW for these systems. HyperBit™ allows attaining position resolution many times better than the resolution of the DAQ board used.

Quick and Easy System Setup
For commissioning a positioning system, the special Configuration Setup VI is executed once. This VI gathers all necessary system information for LabVIEW, including:
  • Communication parameters
  • Connected controller(s)
  • Types & configurations of the connected stages/axes and performs all necessary initialisation steps.

Integrate & Customize Configuration Setup Vis
With its connectors, the Configuration Setup VI can be customized completely to meet the application requirements; it is implemented as an initialization VI directly in the LabVIEW application. After it has been run, all command VIs and highlevel routines of the system

Quick access to the full functionality

can be used. Controller upgrades or changes usually require the exchange of the Configuration Setup VI only. The open source code of many VIs offers additional flexibility in the case of modification needs.

Using Powerful GUI Programs Directly
Beside the command VIs, highlevel VIs can be included directly. A comprehensive selection of GUI programs is provided, such as a terminal application, interface selection routine, wave generator samples, 1D and 2D scan and align functions, joystick control, etc.

Flexible Integration in Text-Based Programming Languages

The operation of PI positioning systems from customer applications running under Microsoft Windows or Linux is eased with Dynamic Link Libraries (DLLs) and sample code.

Maximum flexibility
The drivers which are provided support all current programming languages (see inset) and all positioning systems from PI. Since the drivers are based on the uniform PI GCS command set (see page 3), GCS functionality can be included directly in external programs. In addition to direct GCS commands, the driver sets also make more complex functionalities — with their own graphical interfaces — available to external programs. It is thus possible, for example, to use a DLL function call to include the Wave Editor or Profile Generator, complete with operator dialogs, in an external program.

Languages Supported by PI
  • Visual Basic, Delphi
  • C, C++, Python
  • µManager
  • Epics
  • MetaMorph
  • LabVIEW
  • All programming languages that support loading of DLLs

Back to Top
A PI positioning system is initialized with C++ and with Matlab using DLL calls

PI is a Mathworks Partner

US Head Office

PI USA complies with the US laws
for export controlled technologies.

PI (Physik Instrumente) LP
16 Albert St.
Auburn, MA 01501
Phone 508-832-3456
Fax 508-832-0506
E-Mail Info Request

US West Coast Offices
San Francisco Area
1 Harbor Drive, Suite 108
Sausalito, CA 94965
Phone 408-533-0973
Fax 949-679-9292
E-Mail Info Request

Los Angeles Area
5420 Trabuco Road, Suite 100
Irvine, CA 92620-5743
Phone 949-679-9191
Fax 949-679-9292
E-Mail Info Request

Direct Offices


 Social Media

Sign up for PI newsletters Sign up for PI

International HQ

Physik Instrumente (PI)
GmbH & Co. KG

Auf der Römerstrasse 1
76228 Karlsruhe/Palmbach, Germany
Phone +49 721 4846-0
E-Mail  info(at)pi.ws

Ask a PI Engineer     PI - MOTION | POSITIONING.   ISO 9001-2008 certified.
© 1996-2017 PI (Physik Instrumente) LP All rights reserved.  Specifications subject to change without notice.