- LabRAD
Infobox Software
name = LabRAD
developer = Markus Ansmann and Matthew Neeley (UCSB )
latest_release_version = [http://downloads.sourceforge.net/labrad/LabRAD-v1.0.5.exe v1.0.5]
latest_release_date = May 17th, 2008
operating_system =Cross-platform
genre =SCADA
license =GNU General Public License
website = [http://www.labrad.org/ LabRAD SourceForge Project Wiki]LabRAD (RAD =
Rapid Application Development ) 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 theGNU General Public License fromSourceForge.net .Motivation
LabRAD was developed in response to an increasingly complex software effort needed to run experiments in the [http://www.physics.ucsb.edu/~martinisgroup/ Martinis Group] at
UC Santa Barbara . The group's effort is focused on building aQuantum Computer usingsuperconducting integrated circuits . The experiment will eventually include a large number ofQubits , 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 . Developers can update modules to fit new functional requirements without compromising existing projects.
Wikimedia Foundation. 2010.