Two-level control of a real-time data acquisition and control system for studying the electrical activity of the heart
A high speed data acquisition system for experiments investigating the electrical activity of the heart is discussed with emphasis on the method of specifying and controlling the experiment in progress. Provision is made for control by the investigator during the experiment of such things as sampling rate, initiation and duration of sampling, control of temperature of tissue preparations, pacing rates of various stimuli, etc. For many experiments direct investigator control works well, but where sequences of control are complicated, or where changes in control must occur in real time (e.g. sampling duration changes within a single heart beat), or where sequences of pacing outputs must vary depending upon values of immediately preceding data, direct investigator control is not feasible. Our approach to this problem is to use a Master Program - a small separate module tailored to each particular experiment which can monitor the progress of the experiment and make control choices automatically - in effect, an automated operator, Master Programs are subroutines prepared independently from the data acquisition program and allow the investigator to continue to exert whatever control he desires while the Master Program is running. A Master Program and an associated set of system parameters are stored together in a "workspace" on auxiliary storage with other workspaces. Any workspace can be loaded, if required, during execution of the data acquisition program, quickly changing the experiment's environment. Master Programs operate as coroutines with the existing modules of the data acquisition program. A general description of the data acquisition system is given along with an example of a specific Master Program. The implementation method is briefly discussed.