Concept

From SweepMe! Wiki
Revision as of 11:56, 17 January 2021 by Afischer (talk | contribs)
Jump to navigation Jump to search

SweepMe! combines the benefits of programs with a graphic user interface (GUI) that are easy to use with the benefits of programming languages that enable a high flexibility. Content that is added once to SweepMe! by skilled programmers can then be used by people with less experience in programming to perform measurements on a complex level. SweepMe! has two windows. The left window can be used to configure your measurement and contains the menu. The right window called "Dashboard" contains all plots and other widgets you can interact during a measurement.

Procedures

'Programming' is done in the Sequencer tab where Modules can be placed by drag&drop. You can create complex nested tree-like structures with multiple branches. Almost any procedure can be understood and represented that way. Modules of the same type can be added multiple times. Each module acts like a for-loop over its defined parameter variation. Thus, if you nest modules into each other, you are creating nested for-loops. For example, a Temperature module makes a variaton over a number of defined temperatures. An SMU module can make a variation over a number of defined voltags. If you nest the SMU module into the Temperature module, you will be able to measure temperature dependent current-voltage curves.

Modules

Each Module that is added to the sequencer comes with an own GUI that allows to configure it. There are different kinds of Modules. Basic Modules allow you to control the file generation of the measured data, doing repetitions, and to add some waiting time. Device Modules give you access to your measurement equipment by loading Device Classes. Whenever possible, Device Modules provide a common interface to a certain group of devices, e.g. SMU for source-measuring units, Spectrometer for spectrometers, Monochromator for monochromators and so on. Thus, the handling of the modules will be independent of the vendor. There also exist generic Device Modules that can be used to implement devices that merely return values (e.g. a thermometer, a sensor, etc.) using Logger or where you mainly set a value (e.g. a motor, a signal, etc.) using Switch. Further Add-on Modules that are not part of the free main program can extend the functionality of SweepMe! in any direction.

Device Classes

Device Classes can be freely created and added to the program. They must be prorammed in a way to fit to a certain "Device Module" that is able to call device classes. A well-designed device class can be used via the respective Device Module for different measurement tasks and procedures. Thus, device classes can be shared and used across all users, so that each instrument only needs to be included once. Device classes are versioned and shared via our SweepMe! server. However, you can also copy and distribute them by hand.

Each device class that has been uploaded to sweep-me.net automatically gets a webpage here [[1]]. One can find there further details about the instrument, the handling of the driver, and links to manufacturer or the manual. Feel free to contact us if further information are needed.

Widgets

After you have created a measurement procedure, you can add widgets to your measurement that display the results during the run. For example, Plot can be used to draw graphs or Monitor can be used to display important values.

Features

Features like saving data, and creating settings are done for each measurement procedure used in the same way. These features are optimized based on the feedback of all users and should be therefore convenient to use.