Microprocessor-based heart monitoring Continuous monitoring of cardiac behaviour is useful in intensive care wards of hospitals. Pawan Kapur describes a microprocessor-based monitoring system The application of microprocessors in designing a complete heart monitoring system is highlighted. Starting from the electrical analogue m o d e / o f the heart expressing the arterial pressure in terms o f the mode/parameters, a technique for determining the stroke volume, mean pressure, heart rate, cardiac output, etc is described. The mode/parameters are determined online during the diastole condition using actual patients' pressure profiles. The mode/dynamics are realized on a Z80 microprocessor and the results of the stroke volume, heart rate, cardiac output, mean pressure etc are printed out on every other beat. The technique suggested is more reliable and accurate than the other conventional methods for long term monitoring of the patient's clinical data and may be more suitable for use in intensive care units. microsystems medicine heart monitoring In intensive care units the need is to monitor continuously the patient's clinical data such as stroke volume, heart rate, systolic and diastolic periods, cardiac output etc for various diagnostic purposes. Of the above parameters, the stroke volume is particularly important. It provides useful information about cardiac activity of the heart. Careful determination of the stroke volume is needed to study specific haemodynamic consequences of arrhythmias which cause a large beat-to-beat variation of stroke volume t . The stroke volume may be determined either by measuring aortic flow or from the analysis of the patient's arterial pressure pulse contours z'3. The former method although simpler in theory but is difficult in practice due to lack of reliable and good performance sensors for pulsatile flow rate measurement. The second method complicated in theory involving a lot of omputations, but is simpler in practice to implement. Only pressure transducer for taking the patient's arterial pressure pulse contours is needed. Combining the capabilities of a microprocessor with techniques of biomedical engineering, a patient monitoring system which can display/print many of the critical patients data which are otherwise difficult to measure can be designed. This paper describes a technique for measuring the cardiac data of patients, namely stroke volume, heart rate, systolic and diastolic periods etc and is implemented on a 8-bit Z80 microprocessor.
FORMULATION OF THE TECHNIQUE The various cavities, arteries and veins of the heart can be represented with the help of elastic reservoirs separated by long columns of blood 4's . The electrical analogue of the Central Electronics Engineering Research Institute, Pilani, Rajasthan, 333 031 India
vol 7 no 1 january/february 1983
systemic circulatory system ~ is shown in Figure 1. Vt and I/2 are the voltage equivalent to the aortic pressure PI and arterial pressure P2 respectively. C1 is equivalent to the constant part of the compliance of the aorta and C2 is that of the artery. L is the element equivalent to the mass of the blood column existing between the aorta and arteries. R is the pheriphal resistance. Vs simulates the constant pressure Ps of the arterial system (tissue pressure) which acts as a load to the ventricular ejection. / is the summed components of current simulating the effects out of • the aortic inflow/f • / e taking into account the time varying compliance of the aorta and any changes, in the pressure surrounding the aortic chambers. The flow source / e incorporated in the basic model therefore, accounts for the effective nonlinearization of the circulation process. The equation describing the circulation dynamics during cardiac cycle can be expressed as LC2 I(t)=LCtC2"V2(t) + 1
+ - v2 R
R
I~z (t)+ (Ct + C 2 ) ' I / 2 (t)
(1)
(t)
where I(t) = If(t) + le(t )
z,
,l!
T
c2
vz
() Figure 1. Analogue schematic of arterial circulatory system
0 1 4 1 - 9 3 3 1 / 8 3 / 0 7 0 0 2 9 - 3 2 $03.00 © 1983 Butterworth & Co (Publishers) Ltd
29
Stroke volume (SV) is obtained by evaluating the integral of the eiected blood I(t) during the cardiac cycle to < t < ti.
Following the technique'suggested by the author s the roots of the characteristic equation are given by the following expressions
1 S V : - - [ ft V2dt ] + (C, +C2) [V2(tl)--V2(to)] R
LC, +
R
CO
to
(2)
[(/2(t)-V2(to)] +LC, C2 [ 9 2 ( t 2 ) - V 2 (to)]
Using the idealized arterial pressure characteristics (Figure 2) the above equation can be expressed as AT S V -- - - + (C, + C2) [EDPI -EDPo ] + E R
where V=d, and V2d~ are the pressures at time instants tx and t2 such that W(t2 t~) = nTr and the amplitude of the oscillatory term is zero.
w(t,-t~,)
(3)
LC,
[EbP1--EDPo] ;E2 = LClC2 [EL)P,-EL)Po]
Ot2 = - Ill nTr
W(t:-t~:)
(V2s2_Vs)_(V2d2_Vs) I VV2dl 2 d 2 --- VVs s l
with EDP1 = end diastolic pressure which ends the cardiac cycle EDPo = end diastolic pressure which begins the cycle AT = total area under the curve
I D E N T I F I C A T I O N OF M O D E L P A R A M E T E R S
(7)
w-
2nTr
(8)
td
where tsd is the total diastole period. The constant pressure Vs is obtained from the following quotation
w(h -to, )
V2(t) = Vs + (Vse-Vs) [Ao e-~' t - A e - a : t Cos (cot+O)]
(V2dol_Vs)_(V2dl_Vs) Vse is the end systolic pressure. Ao, Aand 0 are related to the system parameters. Assuming the roots of the characteristics equation as -~1 and -(~2 -- J(2) the model parameters C,, L, and C2 can be expressed as s
V2 d 2 -- Vs
--
+
X
W(l,-to~) (V2do2--Vs)--(V2dl
V2d, - V s
Vs)
nTT
V2dl-Vs
d]
W(t2-ts2)
al (a, +2et)(a~ +co 2) R
C: = [(oq L=
n/[
V2d'--Vs
(4)
2a= [(al +~=)~ +
n~
where V 2 S 1 and Vzs2 are the pressures at time instants tsl and ts2 at which the amplitude of oscillations in the decaying response shows two consecutive peaks and further W(ts2--tsl ) = n/r
During diastole condition of the heart there is no blood flow from the aorta and arteries, so / = 0, Assuming the diastole process to begin with V, (to) = 171 (to) = 0, the expression for the diastolic pressure pulse contour V2 (t) is obtained by putting / = 0 and solving equation 1.
C, =
n;T
(V2s' Vs)-(V2d'--Vs) [ lV2dl vd 2 --Vs 2- vs
where E = Ea + E2 E1 = ~ -
V2d, -Vs
oq = - - I n ( ) n~ V2d2 - Vs
V2d,--V s
2a2)R]-'
n~
(V2s2--Vs)-(V2d2-V2d2-Vs)
V2d 2 Vs
(a, + 2a~) R 2~2 [(~1 +~2) 2 +~o 2]
=1
W(tl--tsl)
(5)
V2d , --V s
(V~s,--V~)--(V~d , Vs)
nTr
V2d2 --Vs Systole
Diastole
=
Where V2d01 and V2do2are the pressures at the time instants t m and to2 respectively such that (to2-to 1) = mr and n is an integer giving the number of complete oscillations during the diastole period.
DNP)
o
CARDIAC
to =
tT t~
-
T
Time
,=
Figure 2. Idealized arterial pressure pulse contour
30
PARAMETER
COMPUTATION
The expression for the stroke volume can be obtained by combining equations 3 and 5 as
t¢ ts
(9)
J
_!
1
Sv = _R_ [AT + Bl (ED&-EDPo) +B2 (Eb&-EbPo) + B3 (EbP,-EbPo)I
(10)
where B, = (Cl +C2)R, B2 = LC1R, B3 = RLC1C2 and AT = Tx (mean pressure)
microprocessors and microsystems
Tis the total cardiac period and its reciprocal ( f = T -I ) gives the heart rate. The model parameters are computer from the knowledge of the various time instants (as mentioned above) and noting the corresponding pressure values. The systole pressure, diastole pressure and the mean pressure are calculated as described in the following sections. Knowing the various parameters entering equation 10 the stroke volume, heart rate, systolic and diastolic periods, cardiac output etc can also be computed as described below.
HARDWARE CONFIGURATION A universal system was used, based on Z80 microprocessor and having the following features 6 • • • • • •
Z80 CPU (2.5 MHz clock rate) memory, EPROM (16k) and RAM (16k) programmable counter and timer unit (CTC) arithmetic processing unit with floating point arithmetic functions analogue I/O interface TTY interface for data print out
The program ][OUTPTI[ checks the overflow conditions of the various data (32-bit format) and then finally converts into a 12-bit format for outting the data through a 12-bit D/A converter. The program IIMONTRII starts the above sequence of operations in the priority, as shown in Figure 3, each time an interrupt signal comes: There were two separate tasks. The first task scanned the input pressure at a high speed giving 3 0 - 5 0 samples (programmable) during the cardiac cycle (one complete heart beat). During the next beat second task is started which computed the model parameters and also the various cardiac data.
Algorithms The structogram of the algorithms is given in Table I. The essential process steps are as follows:
Step 1
Card Type No Z80 ECB/C (Kontron Electronics GmbH) was selected. It has a Z80 CPU (2.5 MHz), 2112A RAM (expanded to 16k), HM 7641 EPROM (expanded to 16k) Z80 CTC, 8251 USART. A type Am 9511 arithmetic processing unit was interfaced to this card. Card type number AN-/aP80E16 (Kontrol Electronics GmbH) was interfaced to the main CPU card which gave eight double ended A/D converter channels and another card type number AN-/aP81 E 16 gave eight double ended D/A channels.
The arterial pressure is sampled and stored in the memory (called Table A) in a 32-bit floating point format. The sampling rate can be programmed between 3 0 - 5 0 depending upon the particular cardiac abnormality IISUB-111.
Step 2 Scan Table A and find out the time t s at which the slope of the curve is maximum i.e. S >i Smax- This corresponds to the dicrotic notch pressure (DNP). Find ts, t s and T = f-l and also compute derivatives (first and second) at the start and at the end of the cardiac cycle IISUB-211 and IISUB-3[I.
Step 3 SOFTWARE STRUCTURE The software structure used is shown in Figure 3. The essential features of the program are IIINPUTll, IIALGRMII, IIOUTPTII and IIMONTRII. The program IIINPUTII samples the arterial pressure with the help of high speed 12-bit A/D converter (conversion time is less than 40/as) and stored the data at the successive locations of the memory. The data was then converted first into a 2-byte word and then finally expanded into a 4-byte word length in floating point format for subsequent computation of the algorithms. The program IIALGR]I computes the various cardiac data. This program is divided into several subprograms and are described separately below.
I Initialization
I
Input
J structure)
Output
Highest priority
Step 8 From the knowledge of to1, to2, ts~ , ts2 , t l, t2 and n find out al, o~2, co and Ps (equations 6 - 9 ) IISUB-1011 and IISUB-1111.
Step 9
I and
Compute BI, B2 and B 3 (e(10)) IISUB-1211.
serftest
(ot~onol) Lowest
priority D
Figure 3. Software structure for monitoring system
vol 7 no I januork,/february 1983
Compare the values of the pressures from Table A and Table B starting from t = ts and find out the times at which the pressures values are same within the limits of A = 0.5 mmH[ This gives tl and t2 IISUB-711.
From Step 3 also read the number of peaks. This gives n IISUB-911 •
I
I A, rithm,
Step 5
Step 7
Real-time monitor
I
At time t s and t t read the pressures and curve - fit a straight line equationy = mx + C. Compute m and C and then compute the intermediate points. Store these points in Table B. (The time chosen are same as that of the sampled times IISUB-511 and IlSUB-611.)
Select times tel and to2 such that to2 = to1 + nTr. Note the corresponding pressures. IISUB-811
¢
J
Step 4
Step 6
(timInterrupt ingsignal)
Reset
Starting from t s scan Table A and find times tsl and ts2 where two consecutive peaks in the pressure are obtained. Note the corresponding pressures IISUB-4ll.
Step 10 From Step 2, T is known. Add the pressures and divide by the total number of samples to get the mean pressure (MP) IISUB-1311.
Step 11 ComputeSV, CO, TIISUB-1411.
31
Table 1. Algorithm structogram
14~
Read the input data and store it at memory. Form Table A. IISUB--1 II Find slopes of the curves and establish DNP and its occurence time. IISUB-2II Read values of the derivatives at the start and end of the cycle.
13c 12C
IIO
Compute Ts, Td, Tand f(= l/T} IISUB-31I
IOC
E
Establish times tsl and ts2 IISUB-411
o_~ 90
Form Table B with the values of pressures computed from the expression y =mx + C m and C are computed before IISUB--511 and IISUB-611
80
o
7v
I
0.1
i
02
O.t3
1
0.4
[
0.5
t(s)
Compare Tables A and B (PA and PB) Such that PA = PB + A Compute the cones P times IISUB-711
I
t
0.6
0.7
t
0.8
=
Figure 4. Actual pressure contour of arterial circulation during the cardiac cycle
Select to1 and to2
CONCLUSIONS
Compute Ps
IISUB-811
The system described has potential in clinical diagnosis, particularly for cases of large beat to beat variations in the stroke volume. The given technique when compared with the other methods (Warner et al 1968, Guair et al 1974) has the advantage of not being dependent upon the separation of the stroke volume into the systolic uptake and drainage and also on the assumption that the successive EDPs in the patient's response (as considered by them) are the same. Since the expression for the stroke volume is normalized with respect to the mean peripheral resistance R the results are independent of the variations in the vascular conditions.
Compute %, e2 and W IlSUB--911, IlSUB-1011, IISUB--I I II Compute B l, B2 and Ba IISUB-1211 Compute mP and A T = T x (raP)
IISUB-1311 Compute SV
IISUB-1411 Compute CO and display SV, CO, T, f, Ps, Pd, Ts, Td. IISUB-1511 RETURN Step 12
Display/print the Cardiac parametersSV, CO, 7, MP, t~ t d llSUB-1511.
ACKNOWLEDGEMENTS The author thanks Dr Amarjit Singh, Director and Dr G N Acharya Deputy Director, CEERI, Pilani for their keen interest in the work. The author also thank Professor N G Nath, IN RAPHEL Calcutta, India for his suggestions.
REFERENCES
RESULTS The stroke volume and other cardiac data were determined from the patient's arterial pressure contour characteristics (Figure 4). The study of the typical arterial pressure profile considered in the present case (Figure 4) gives n = I, t d = 0.56, t s = 0.22 and co = 11.62 rod/s. The roots of the characteristics equation were computed as -2.305, -(3.025 + j 11.62). The model parameters computed are CI = 0.3561 fluid farad, C2 = 0.1197 fluid farad and L = 0.09706 fluid henry. The values of the arterial pressure and its first and second derivative computed at the time instants (as described in equation 3) were EDP = 81.0 mmHg
EDPI = 80.0 mmHg
EL~Po = - 6 5 mmHg/s
E b P l = --400 mmHg/s
EDPo = - 1 6 0 0 mmHg/s 2
EDPI = - 5 0 0 mmHg/s 2
Using numerical integration (as described above) the area under the arterial pressure curve is 80.2 mmHg/s and values of the coefficients BI, B2, B3 are BI = 0.4758, B2 = 0.0251 and B 3 = 0.03. Total cardiac cycle period and the corresponding heart rate are 0.78 and 76.923 s -] respectively. The stroke volume and cardiac o u t p u t of the patient concerned were S V = 74.649 ml and CO = 5.7422 1 respectively.
32
L
1 Alderman, E L et al 'Evaluation of the pulse contour method of determining stroke volume in man' Circulation Vol 46 (1972) pp 5 4 6 - 5 5 8
2 Guier, W H et al 'Beat by beat stroke volume from aortic pressure analysis' IEEE Trans. B M E Vol 21
(1974) pp 285-292 3 Kapur, P 'Technique for the determination of beat by beat stroke volume from the arterial pressure pulse contour analysis' Proc. Syrup. Part. Recog. Digit. Tech. ISI (February 1977) pp 324-332 4 Goldwyn, W H et al 'Arterial pressure pulse contour analysis via a mathematical model for the clinical quantification of hyman vascular properties' IEEE Trans. BME Vol 14 (1967) pp 11-17 5 Nath, N G e t al 'On modelling of physiological systems' Int. J. Syst. Sci. Vol 6 (1975) pp 746-751 6 Kapur, P 'Magnetic position control system' Tech. Rep. I_LSR Munich, FRG (October 1980) 7 ZSO ECB/C Hand Book Kontron Electronics GmbH Munich, FRG (1980}
microprocessors and microsystems