LabRAD
Encyclopedia
LabRAD is an open source data acquisition and instrument control platform targeted at (university) research laboratories. It provides a framework to modularize the software required to control experiments. The modules can be distributed on different computers linked with a standard network connection, immediately allowing for remote access and management. LabRAD is available for download under the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

 from SourceForge.net
SourceForge.net
SourceForge is a web-based source code repository. It acts as a centralized location for software developers to control and manage open source software development. The website runs a version of SourceForge Enterprise Edition, forked from the last open-source version available...

.

Motivation

LabRAD was developed in response to an increasingly complex software effort needed to run experiments in the Martinis Group at UC Santa Barbara. The group's effort is focused on building a Quantum Computer
Quantum computer
A quantum computer is a device for computation that makes direct use of quantum mechanical phenomena, such as superposition and entanglement, to perform operations on data. Quantum computers are different from traditional computers based on transistors...

 using superconducting integrated circuits. The experiment will eventually include a large number of Qubits, each requiring dedicated control mechanisms. To prevent frequent duplication of effort, a scalable software architecture was needed to provide the required control.
This architecture needed to accommodate multiple users and developers, since many different graduate students and post docs are sharing the software and hardware resources required to run their respective experiments.
LabRAD was specifically designed to alleviate the problems inherent in designing a complex, scalable control system managed by several developers and users.
As science advances, novel experiments in all fields are becoming increasingly involved, making LabRAD a generally useful tool beyond the developing group.

Approach

LabRAD provides a platform to efficiently separate code into reusable modules. The modules communicate with each other over the network making the system inherently distributed. This strong separation allows each module to be independently maintained by a different developer. A well-specified interface allows other developers to easily use the available modules in their projects. The interface was designed to enable the addition of features to individual modules while maintaining backward compatibility
Backward compatibility
In the context of telecommunications and computing, a device or technology is said to be backward or downward compatible if it can work with input generated by an older device...

. Developers can update modules to fit new functional requirements without compromising existing projects.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK