1. IntroductionΒΆ

The software package consists of three separate programs. The Instrument Server handles the communication with the instruments, the Measurement program allows instrument values to be controlled and measured in used-defined sequences, while the Log Browser is used to organize and analyze the acquired data. The relation between the parts is visualized in Fig. Overview.

_images/OverviewAPI_all.png

Overview and structure of the components in the Labber software package.

In a typical experimental setup, the Instrument Server keeps track of and communicates with all the instruments and equipment available in the setup. The communication can be over GPIB, serial, USB, TCPIP, or any other interface. During an experiment, the Measurement program will connect to an Instrument Server to output values to one specific instrument, or to read data from another one. Note that the Measurement program only talks to the Instrument Server, and not directly with the instruments. This modular approach allows the same generic procedure to be used for setting/reading values, regardless of the instrument type or the communication interface.

The Measurement program saves the experimental configuration, the instrument settings and the acquired data into a central log database. The Log Browser provides a fast and efficient method for browsing, visualizing and organizing the measured data. Finally, the Log Viewer provides functionality for data analysis and for generating high-quality plots and figures.

In addition to the Instrument Server, Measurement and Log Browser programs, there is a Python API which allows all functionality to be accessed programmatically for scripting purposes or for writing custom applications.