A programmable system for acquisition and reduction of respiratory physiological data

Abstract
A portable software package (TIDAL—Tools for Intelligent Data Acqusition in the Laboratory) for acquiring and analyzing respiratory physiological data is described. TIDAL supports flow-, volume-, and concentration-measuring devices, and any other instruments that produce linear analog outputs. The system allows users to specify the names and types of channels to be sampled, and the calculations involved in reducing samples to breath-to-breath values. The specification of channels and calculations is given in EDL, and Experiment Description Language designed for respiratory physiology. EDL comprises a set of internal functions (primitives) which can be combined into arbitrarily complex expressions. To simplify EDL programming, TIDAL includes a macro processor and a standard macro library; the library contains definitions for a wide variety of respiratory variables. Examples are inspiratory and expiratory times and total volumes, mean inspired and expired gas volumes and concentrations, and end-tidal concentrations. Variables that are derived from these primary data, such as respiratory quotient, are also easily specified. TIDAL is written entirely in the C programming language, with special attention to portable coding practices. The code is organized in a modular structure that eases porting to multiple hardware/compiler/operating system environments.