News ID

New Data Acquisition Support for Python

Microstar Laboratories, Inc.
    DAPtools for Python integrates the flexibility of Python with the real-time rigor of DAPL.  (Snake image: Julien Tromeur/Shutterstock.com)
DAPtools for Python integrates the flexibility of Python with the real-time rigor of DAPL. (Snake image: Julien Tromeur/Shutterstock.com)

Bellevue, WA, April 28, 2016 - Microstar Laboratories, Inc., maker of Data Acquisition Processor (DAP) systems for PC-based high-performance measurement applications, has released DAPtools for Python, a software API extension that enables high-performance data acquisition applications written using the Python programming language. This is not a reduced or specialized language variant -- it supports the complete, full-featured Python environment. Typical applications would be ad hoc quick tests, or configurable scripting for test automation not bound to specific large application platforms.

Critical Data Acquisition Under Python? -- Maybe Not Crazy

Python is probably not the language you would first consider for an application where late service to a data acquisition or control process means a system failure. Like the fabled hare, Python can be quick, but never as reliable as the fabled tortoise.

In contrast, the DAPL operating system running on-board in a Microstar Laboratories Data Acquisition Processor system is dedicated to taking care of critical real-time details: never late, and never missing a sample. The high-rate, multi-channel data capture operations run in parallel with the host environment supporting the Python system. The DAPL system provides automatic data buffering and supports all data transfers. The Python system can receive the data on its terms, at whatever moments it is ready. About the only major concern is that eventually the Python application script must either accept all of the data it asks for, or clean up the leftovers.

The Programming Interface

The DAPIO programming interface behind DAPtools for Python provides the same stable connections to the DAPL system that C, C++, C#, Basic, Excel, and various other high-level programming environments have used over the last 20 years. It is packaged in DLL form, allowing access from the Python environment through the ctypes library. The special objects and data types of that library can be awkward for programmers to use directly. DAPtools for Python merely "wraps" the actual low-level interface, exposing a simple "interface object" and some utility functions that make the DAP interactions work like familiar Python objects and functions. The programming is a lot like connecting to a networked resource: open a connection, specify the data acquisition and preprocessing activity to perform, run the configuration, take the requested data, and close the connection when finished.

Availability

The DAPtools for Python interface is available now with the DAPtools Basic software package. This is provided at no added charge with purchase of any DAP or xDAP data acquisition system from Microstar Laboratories, and upgrades are available for download from the Web as they are issued. There are no ongoing maintenance subscription fees, no license renewal requirements, and no deployment restrictions for applications you develop. DAPtools for Python works with the DAPL 2000 system and DAP boards for PCI and PCI-X host systems, and also with the DAPL 3000 system and the xDAP data acquisition engines, on host systems operating Windows 10, Windows 8, Windows 7, Windows XP, or Windows Server. Contact Microstar Laboratories to obtain a copy of DAPtools Basic with the DAPtools for Python interface.

Resources

For more information, contact Microstar Laboratories via telephone, USA 425-453-2345, or via the Web form.

www.mstarlabs.com/contact.html

Background information about the DAPL operating system is available online. www.mstarlabs.com/software/dapl/tabs.html

More about the xDAP data acquisition systems.

www.mstarlabs.com/daq-usb/xdap.html

Conclusion / Editorial Overview

The DAPtools for Python API module from Microstar Laboratories extends capabilities previously accessible in C, C++, C#, Basic, and other programming environments, so that data acquisition applications operating under strict time constraints can be developed using the Python language. It is supplied as part of the DAPtools Basic Software that is provided with each DAP or xDAP product. This combines the best of worlds, the regularity and precision of DAP systems, with the software flexibility of the Python environment.