Description
This is the source code package for the labbench python module, version 0.20, which is its first public release. The purpose of labbench is to streamline and organize complicated laboratory automation tasks that involve large-scale benchtop automation, concurrency, and/or data management. It is built around a system of wrappers that facilitate robust, concise exception handling, type checking, API conventions, and synchronized device connection through python context blocks. The wrappers also provide convenient new functionality, such as support for automated status displays in jupyter notebooks, simplified threaded concurrency, and automated, type-safe logging to relational databases.Together, these features help to minimize the amount of "copy-and-paste" code that can make your lab automation scripts error-prone and difficult to maintain.The python code that results can be clear, concise, reusable and maintainable, and provide consistent formatting for stored data. The result helps researchers to meet NIST's open data obligations, even for complicated, large, and heterogeneous datasets.Several past and ongoing projects in the NIST Communication Technology Laboratory (CTL) published data that were acquired by automation in labbench. We release it here both for transparency and to invite public use and feedback. Ongoing updates to this source code will be maintained on the NIST github page at https://github.com/usnistgov/labbench.The code was developed in python, documented with the python sphinx package and markdown, and shared through the USNISTGOV organization on GitHub.INSTALLATIONlabbench can run on any computer that supports python 3.6. The hardware requirements are discussed here: https://docs.anaconda.com/anaconda/install/#requirements1. Install your favorite distribution of a python version 3.6 or greater2. In a command prompt, pip install git+https://gitlab.nist.gov/gitlab/ssm/labbench3. (Optional) install an NI VISA [1] runtime, for example this one for windows.USAGEThe source distribution contains detailed information including README.md - documentation to get started using labbench LICENSE.md - license and redistribution information* doc/labbench-api.pdf - complete listing of the module and documentation
Resources
| Name | Format | Description | Link |
|---|---|---|---|
| Source code and documentation | Unknown | This zip file contains version 0.20 of the source code and documentation for labbench. | Open resource |
| SHA256 File for Source code and documentation | Text | Open resource | |
| API Reference - documentation for each function, object, and method | Unknown | labbench-api.pdf | Open resource |
| SHA256 File for API Reference - documentation for each function, object, and method | Text | Open resource | |
| Licensing information | Text | The source code license for this package and dependencies (on its original 2019 release) | Open resource |
| SHA256 File for Licensing information | Text | Open resource | |
| README | Text | getting started guide; links to documentation and installation | Open resource |
| SHA256 File for README | Text | Open resource | |
| DOI Access for Source code for labbench 0.20 release | Unknown | Open resource |