30.11.2012 Views

AN1571, Digital Blood Pressure Meter - Freescale Semiconductor

AN1571, Digital Blood Pressure Meter - Freescale Semiconductor

AN1571, Digital Blood Pressure Meter - Freescale Semiconductor

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Freescale</strong> <strong>Semiconductor</strong><br />

Application Note<br />

<strong>Digital</strong> <strong>Blood</strong> <strong>Pressure</strong> <strong>Meter</strong><br />

by: C.S. Chua and Siew Mun Hin, Sensor Application Engineering<br />

Singapore, A/P<br />

INTRODUCTION<br />

This application note describes a <strong>Digital</strong> <strong>Blood</strong> <strong>Pressure</strong><br />

<strong>Meter</strong> concept which uses an integrated pressure sensor,<br />

analog signal-conditioning circuitry, microcontroller<br />

hardware/software and a liquid crystal display. The sensing<br />

system reads the cuff pressure (CP) and extracts the pulses<br />

for analysis and determination of systolic and diastolic<br />

pressure. This design uses a 50 kPa integrated pressure<br />

sensor (<strong>Freescale</strong> <strong>Semiconductor</strong>, Inc.P/N: MPXV5050GP)<br />

yielding a pressure range of 0 mm Hg to 300 mm Hg.<br />

CONCEPT OF OSCILLOMETRIC METHOD<br />

This method is employed by the majority of automated noninvasive<br />

devices. A limb and its vasculature are compressed<br />

by an encircling, inflatable compression cuff. The blood<br />

pressure reading for systolic and diastolic blood pressure<br />

values are read at the parameter identification point.<br />

The simplified measurement principle of the oscillometric<br />

method is a measurement of the amplitude of pressure<br />

change in the cuff as the cuff is inflated from above the systolic<br />

pressure. The amplitude suddenly grows larger as the pulse<br />

breaks through the occlusion. This is very close to systolic<br />

pressure. As the cuff pressure is further reduced, the pulsation<br />

increase in amplitude, reaches a maximum and then<br />

diminishes rapidly. The index of diastolic pressure is taken<br />

where this rapid transition begins. Therefore, the systolic<br />

blood pressure (SBP) and diastolic blood pressure (DBP) are<br />

© <strong>Freescale</strong> <strong>Semiconductor</strong>, Inc., 2005. All rights reserved.<br />

Vi<br />

C2<br />

0.33 µ<br />

+DC Offset<br />

R3<br />

1M<br />

R1<br />

C1<br />

1k<br />

33u<br />

3<br />

+<br />

2<br />

-<br />

Figure 1. Oscillation Signal Amplifier<br />

<strong>AN1571</strong><br />

Rev 1, 05/2005<br />

obtained by identifying the region where there is a rapid<br />

increase then decrease in the amplitude of the pulses<br />

respectively. Mean arterial pressure (MAP) is located at the<br />

point of maximum oscillation.<br />

HARDWARE DESCRIPTION AND OPERATION<br />

The cuff pressure is sensed by <strong>Freescale</strong>'s integrated<br />

pressure X-ducer‰. The output of the sensor is split into two<br />

paths for two different purposes. One is used as the cuff<br />

pressure while the other is further processed by a circuit.<br />

Since MPXV5050GP is signal-conditioned by its internal opamp,<br />

the cuff pressure can be directly interfaced with an<br />

analog-to-digital (A/D) converter for digitization. The other<br />

path will filter and amplify the raw CP signal to extract an<br />

amplified version of the CP oscillations, which are caused by<br />

the expansion of the subject's arm each time pressure in the<br />

arm increases during cardiac systole.<br />

The output of the sensor consists of two signals; the<br />

oscillation signal ( ≈ 1 Hz) riding on the CP signal ( ≤ 0.04 Hz).<br />

Hence, a 2-pole high pass filter is designed to block the CP<br />

signal before the amplification of the oscillation signal. If the<br />

CP signal is not properly attenuated, the baseline of the<br />

oscillation will not be constant and the amplitude of each<br />

oscillation will not have the same reference for comparison.<br />

Figure 1 shows the oscillation signal amplifier together with<br />

the filter.<br />

11<br />

4<br />

+5.0V<br />

R2<br />

150k<br />

U1a<br />

1<br />

LM324N<br />

Vo


The filter consists of two RC networks which determine two<br />

cut-off frequencies. These two poles are carefully chosen to<br />

ensure that the oscillation signal is not distorted or lost. The<br />

Attenuation (dB)<br />

10<br />

0<br />

-10<br />

-20<br />

-30<br />

-40<br />

-50<br />

-60<br />

-70<br />

-80<br />

The oscillation signal varies from person to person. In<br />

general, it varies from less than 1 mm Hg to 3 mm Hg. From<br />

the transfer function of MPXV5050GP, this will translate to a<br />

voltage output of 12 mV to 36 mV signal. Since the filter gives<br />

an attenuation of 10 dB to the 1 Hz signal, the oscillation signal<br />

becomes 3.8 mV to 11.4 mV respectively. Experiments<br />

<strong>AN1571</strong><br />

CP Signal (0.04 Hz)<br />

0.01<br />

0.1<br />

f P1 =<br />

f P2 =<br />

1<br />

2πR1C1 1<br />

2πR3C2 Figure 2. Filter Frequency<br />

two cut-off frequencies can be approximated by the following<br />

equations. Figure 2describes the frequency response of the<br />

filter. This plot does not include the gain of the amplifier.<br />

10 100<br />

indicate that, the amplification factor of the amplifier is chosen<br />

to be 150 so that the amplified oscillation signal is within the<br />

output limit of the amplifier (5.0 mV to 3.5 V). Figure 3 shows<br />

the output from the pressure sensor and Figure 4 illustrates<br />

the extracted oscillation signal at the output of the amplifier.<br />

Sensors<br />

2 <strong>Freescale</strong> <strong>Semiconductor</strong><br />

1<br />

Frequency (Hz)<br />

Oscillation Signal (1 Hz)


Vi (Volts)<br />

Vo (Volts)<br />

3<br />

2.5<br />

2<br />

1.5<br />

1<br />

0.5<br />

0<br />

0 5 10 15 20 25 30 35 40<br />

3.5<br />

3<br />

2.5<br />

2<br />

1.5<br />

1<br />

0.5<br />

SBP<br />

Figure 3. CP Signal at the Output of the <strong>Pressure</strong> Sensor<br />

Figure 4. Extracted Oscillation Signal at the Output of Amplifier<br />

Referring to the schematic, Figure 5, the MPX5050GP<br />

pressure sensor is connected to PORT D bit 5 and the output<br />

of the amplifier is connected to PORT D bit 6 of the<br />

microcontroller. This port is an input to the on-chip 8-bit<br />

analog-to-digital (A/D) converter. The pressure sensor<br />

provides a signal output to the microprocessor of<br />

approximately 0.2 Vdc at 0 mm Hg to 4.7 Vdc at 375 mm Hg<br />

of applied pressure whereas the amplifier provides a signal<br />

from 0.005 V to 3.5 V. In order to maximize the resolution,<br />

separate voltage references should be provided for the A/D<br />

instead of using the 5 V supply. In this example, the input<br />

range of the A/D converter is set at approximately 0 Vdc to 3.8<br />

Vdc. This compresses the range of the A/D converter around<br />

0 mm Hg to 300 mm Hg to maximize the resolution; 0 to 255<br />

Time (seconds)<br />

Oscillation signal is extracted here<br />

0<br />

10 15 20 25 30 35<br />

Time (seconds)<br />

counts is the range of the A/D converter. VRH and VRL are the<br />

reference voltage inputs to the A/D converter. The resolution<br />

is defined by the following:<br />

Count = [(VXdcr - VRL)/(VRH - VRL)] x 255<br />

The count at 0 mm Hg = [(0.2 - 0)/(3.8 - 0)] x 255 ≈ 14<br />

The count at 300 mm Hg = [(3.8 - 0)/(3.8 - 0)] x 255 ≈ 255<br />

Therefore the resolution = 255 - 14 = 241 counts. This<br />

translates to a system that will resolve to 1.24 mm Hg.<br />

The voltage divider consisting of R5 and R6 is connected to<br />

the +5 volts powering the system. The output of the pressure<br />

sensor is ratiometric to the voltage applied to it. The pressure<br />

sensor and the voltage divider are connected to a common<br />

<strong>AN1571</strong><br />

Sensors<br />

<strong>Freescale</strong> <strong>Semiconductor</strong> 3<br />

MAP<br />

DBP


supply; this yields a system that is ratiometric. By nature of this<br />

ratiometric system, variations in the voltage of the power<br />

supplied to the system will have no effect on the system<br />

accuracy.<br />

The liquid crystal display (LCD) is directly driven from I/O<br />

ports A, B, and C on the microcontroller. The operation of a<br />

LCD requires that the data and backplane (BP) pins must be<br />

driven by an alternating signal. This function is provided by a<br />

software routine that toggles the data and backplane at<br />

approximately a 30 Hz rate.<br />

Other than the LCD, there are two more I/O devices that are<br />

connected to the pulse length converter (PLM) of the<br />

microcontroller; a buzzer and a light emitting diode (LED). The<br />

buzzer, which connected to the PLMA, can produce two<br />

different frequencies; 122 Hz and 1.953 kHz tones. For<br />

<strong>AN1571</strong><br />

instance when the microcontroller encounters certain error<br />

due to improper inflation of cuff, a low frequency tone is alarm.<br />

In those instance when the measurement is successful, a high<br />

frequency pulsation tone will be heard. Hence, different<br />

musical tone can be produced to differential each condition. In<br />

addition, the LED is used to indicate the presence of a heart<br />

beat during the measurement.<br />

The microcontroller section of the system requires certain<br />

support hardware to allow it to function. The MC34064P-5<br />

provides an undervoltage sense function which is used to<br />

reset the microprocessor at system power-up. The 4 MHz<br />

crystal provides the external portion of the oscillator function<br />

for clocking the microcontroller and provides a stable base for<br />

time based functions, for instance calculation of pulse rate.<br />

Sensors<br />

4 <strong>Freescale</strong> <strong>Semiconductor</strong>


R10<br />

+5.0 V<br />

10M<br />

+5.0 V<br />

5.0 V Regulator<br />

MC78L05ACP<br />

+5.0 V<br />

X1<br />

4MHz<br />

1<br />

Input Output<br />

3<br />

2<br />

R9<br />

4.7k<br />

C4<br />

C3<br />

GND<br />

22p<br />

22p<br />

100u<br />

C5<br />

MC34064<br />

Reset Input<br />

GND<br />

1<br />

C6<br />

C8<br />

2<br />

0.33u<br />

9.0 V Battery<br />

100n<br />

3<br />

+5.0 V<br />

LCD5657<br />

16<br />

OSC1<br />

OSC2<br />

17<br />

10<br />

37<br />

36<br />

35<br />

34<br />

7<br />

6<br />

5<br />

18<br />

19<br />

G4<br />

F4<br />

A4<br />

B4<br />

C4<br />

D4<br />

E4<br />

/RESET<br />

/IRQ<br />

VDD<br />

+5.0 V<br />

+5.0 V<br />

Buzzer<br />

4<br />

22<br />

23<br />

50<br />

TCAP1<br />

TCAP2<br />

RD<br />

TCMP1<br />

TCMP2<br />

2<br />

1<br />

100R<br />

R8<br />

<strong>Pressure</strong> Sensor<br />

MPXV5050GP<br />

52<br />

51<br />

TDO<br />

SCLK<br />

20 PLMA VRH<br />

21<br />

PLMB VRL<br />

49 PC0 PA0<br />

48 PC1 PA1<br />

47 PC2/ECLK PA2<br />

46 PC3 PA3<br />

45 PC4 PA4<br />

44 PC5 PA5<br />

43 PC6 PA6<br />

42 PC7 PA7<br />

14 PD0/AN0 PB0<br />

13 PD1/AN1 PB1<br />

12 PD2/AN2 PB2<br />

11 PD3/AN3 PB3<br />

9543 PD4/AN4 PB4<br />

PD5/AN5 PB5<br />

PD6/AN6 PB6 33<br />

PD7/AN7 PB7 32<br />

MC68HC05B16CFN<br />

34<br />

35<br />

36<br />

37<br />

24<br />

39<br />

38<br />

25<br />

26<br />

27<br />

28<br />

29<br />

30<br />

31<br />

8<br />

7<br />

Vs<br />

1<br />

Vout<br />

3<br />

DP<br />

16<br />

23<br />

22<br />

21<br />

20<br />

19<br />

18<br />

17<br />

LED<br />

3<br />

DP1<br />

G1<br />

F1<br />

A1<br />

B1<br />

C1<br />

D1<br />

E1<br />

R5 R6<br />

4.7k + 36R<br />

15k<br />

+5.0 V<br />

GND<br />

28<br />

L<br />

40<br />

1<br />

2<br />

BP<br />

BP<br />

DP L L<br />

24k<br />

R4<br />

8<br />

32<br />

31<br />

30<br />

29<br />

11<br />

10<br />

9<br />

12<br />

27<br />

26<br />

25<br />

24<br />

15<br />

14<br />

13<br />

Figure 5. <strong>Blood</strong> <strong>Pressure</strong> <strong>Meter</strong> Schematic Drawing<br />

<strong>AN1571</strong><br />

Sensors<br />

<strong>Freescale</strong> <strong>Semiconductor</strong> 5<br />

DP3<br />

G3<br />

F3<br />

+5.0 V<br />

10k<br />

R0<br />

A3<br />

A<br />

B3<br />

C3<br />

D3<br />

E3<br />

2<br />

DP2<br />

G2<br />

F2 DP E F<br />

A2<br />

D 1 G<br />

B2<br />

C2<br />

C B<br />

D2<br />

E2<br />

1M<br />

R3<br />

11<br />

C2<br />

3<br />

1<br />

LM324N<br />

0.33u<br />

330u<br />

2<br />

C7<br />

+5.0 V<br />

4<br />

R2<br />

150k<br />

1k<br />

R1<br />

33u<br />

C1


<strong>AN1571</strong><br />

SOFTWARE DESCRIPTION<br />

Upon system power-up, the user needs to manually pump<br />

the cuff pressure to approximately 160 mm Hg or 30 mm Hg<br />

above the previous SBP. During the pumping of the inflation<br />

bulb, the microcontroller ignores the signal at the output of the<br />

V O (volt)<br />

-8.5<br />

-8.3<br />

450 ms<br />

First of all, the threshold level of a valid pulse is set to be<br />

1.75 V to eliminate noise or spike. As soon as the amplitude<br />

of a pulse is identified, the microcontroller will ignore the signal<br />

for 450 ms to prevent any false identification due to the<br />

presence of premature pulse "overshoot" due to oscillation.<br />

Hence, this algorithm can only detect pulse rate which is less<br />

than 133 beats per minute. Next, the amplitudes of all the<br />

pulses detected are stored in the RAM for further analysis. If<br />

the microcontroller senses a non-typical oscillation envelope<br />

shape, an error message (“Err”) is output to the LCD. The user<br />

will have to exhaust all the pressure in the cuff before repumping<br />

the CP to the next higher value. The algorithm<br />

ensures that the user exhausts all the air present in the cuff<br />

before allowing any re-pumping. Otherwise, the venous blood<br />

trapped in the distal arm may affect the next measurement.<br />

Therefore, the user has to reduce the pressure in the cuff as<br />

soon as possible in order for the arm to recover. Figure 7 on<br />

the following page is a flowchart for the program that controls<br />

the system.<br />

SELECTION OF MICROCONTROLLER<br />

Although the microcontroller used in this project is<br />

MC68HC05B16, a smaller ROM version microcontroller can<br />

also be used. The list below shows the requirement of<br />

-8.1<br />

Premature Pulse<br />

-7.9<br />

-7.7<br />

Time (second)<br />

Figure 6. Zoom-In View of a Pulse<br />

amplifier. When the subroutine TAKE senses a decrease in<br />

CP for a continuous duration of more than 0.75 seconds, the<br />

microcontroller will then assume that the user is no longer<br />

pumping the bulb and starts to analyze the oscillation signal.<br />

Figure 6 shows zoom-in view of a pulse.<br />

microcontroller for this blood pressure meter design in this<br />

project.<br />

• On-chip ROM space: 2 kilobytes<br />

• On-chip RAM space: 150 bytes<br />

• 2-channel A/D converter (min.)<br />

• 16-bit free running counter timer<br />

• LCD driver<br />

• On-chip EEPROM space: 32 bytes<br />

• Power saving Stop and Wait modes<br />

CONCLUSION<br />

This circuit design concept may be used to evaluate<br />

<strong>Freescale</strong> pressure sensors used in the digital blood pressure<br />

meter. This basic circuit may be easily modified to provide<br />

suitable output signal level. The software may also be easily<br />

modified to provide better analysis of the SBP and DBP of a<br />

person.<br />

REFERENCES<br />

Lucas, Bill (1991). “An Evaluation System for Direct<br />

Interface of the MPX5100 <strong>Pressure</strong> Sensor with a<br />

Microprocessor,” <strong>Freescale</strong> Application Note AN1305.<br />

Sensors<br />

6 <strong>Freescale</strong> <strong>Semiconductor</strong><br />

-7.5<br />

-7.3<br />

1.75<br />

-7.1


Output a high<br />

frequency<br />

musical tone<br />

Display pulse rate.<br />

Display "SYS" follow by SBP.<br />

Display "dlA" follow by DBP.<br />

Y<br />

Main Program<br />

Initialization<br />

Clear I/O ports<br />

Display "CAL" and<br />

output a musical tone<br />

Clear all the variables<br />

Take in the amplitude of all the<br />

oscillation signal when the<br />

user has stop pumping<br />

Repump?<br />

N<br />

Calculate the SBP and DBP<br />

and also the pulse rate<br />

N<br />

Is there any error<br />

in the calculation or the<br />

amplitude envelope<br />

detected?<br />

Y<br />

N N<br />

Exhaust cuff<br />

Exhaust cuff<br />

Y Y<br />

before repump<br />

before repump<br />

Figure 7. Main Program Flowchart<br />

Display "Err"<br />

Output a low<br />

frequency alarm<br />

<strong>AN1571</strong><br />

Sensors<br />

<strong>Freescale</strong> <strong>Semiconductor</strong> 7


How to Reach Us:<br />

Home Page:<br />

www.freescale.com<br />

E-mail:<br />

support@freescale.com<br />

USA/Europe or Locations Not Listed:<br />

<strong>Freescale</strong> <strong>Semiconductor</strong><br />

Technical Information Center, CH370<br />

1300 N. Alma School Road<br />

Chandler, Arizona 85224<br />

+1-800-521-6274 or +1-480-768-2130<br />

support@freescale.com<br />

Europe, Middle East, and Africa:<br />

<strong>Freescale</strong> Halbleiter Deutschland GmbH<br />

Technical Information Center<br />

Schatzbogen 7<br />

81829 Muenchen, Germany<br />

+44 1296 380 456 (English)<br />

+46 8 52200080 (English)<br />

+49 89 92103 559 (German)<br />

+33 1 69 35 48 48 (French)<br />

support@freescale.com<br />

Japan:<br />

<strong>Freescale</strong> <strong>Semiconductor</strong> Japan Ltd.<br />

Headquarters<br />

ARCO Tower 15F<br />

1-8-1, Shimo-Meguro, Meguro-ku,<br />

Tokyo 153-0064<br />

Japan<br />

0120 191014 or +81 3 5437 9125<br />

support.japan@freescale.com<br />

Asia/Pacific:<br />

<strong>Freescale</strong> <strong>Semiconductor</strong> Hong Kong Ltd.<br />

Technical Information Center<br />

2 Dai King Street<br />

Tai Po Industrial Estate<br />

Tai Po, N.T., Hong Kong<br />

+800 2666 8080<br />

support.asia@freescale.com<br />

For Literature Requests Only:<br />

<strong>Freescale</strong> <strong>Semiconductor</strong> Literature Distribution Center<br />

P.O. Box 5405<br />

Denver, Colorado 80217<br />

1-800-441-2447 or 303-675-2140<br />

Fax: 303-675-2150<br />

LDCFor<strong>Freescale</strong><strong>Semiconductor</strong>@hibbertgroup.com<br />

<strong>AN1571</strong><br />

Rev. 1<br />

05/2005<br />

Information in this document is provided solely to enable system and software<br />

implementers to use <strong>Freescale</strong> <strong>Semiconductor</strong> products. There are no express or<br />

implied copyright licenses granted hereunder to design or fabricate any integrated<br />

circuits or integrated circuits based on the information in this document.<br />

<strong>Freescale</strong> <strong>Semiconductor</strong> reserves the right to make changes without further notice to<br />

any products herein. <strong>Freescale</strong> <strong>Semiconductor</strong> makes no warranty, representation or<br />

guarantee regarding the suitability of its products for any particular purpose, nor does<br />

<strong>Freescale</strong> <strong>Semiconductor</strong> assume any liability arising out of the application or use of any<br />

product or circuit, and specifically disclaims any and all liability, including without<br />

limitation consequential or incidental damages. “Typical” parameters that may be<br />

provided in <strong>Freescale</strong> <strong>Semiconductor</strong> data sheets and/or specifications can and do vary<br />

in different applications and actual performance may vary over time. All operating<br />

parameters, including “Typicals”, must be validated for each customer application by<br />

customer’s technical experts. <strong>Freescale</strong> <strong>Semiconductor</strong> does not convey any license<br />

under its patent rights nor the rights of others. <strong>Freescale</strong> <strong>Semiconductor</strong> products are<br />

not designed, intended, or authorized for use as components in systems intended for<br />

surgical implant into the body, or other applications intended to support or sustain life,<br />

or for any other application in which the failure of the <strong>Freescale</strong> <strong>Semiconductor</strong> product<br />

could create a situation where personal injury or death may occur. Should Buyer<br />

purchase or use <strong>Freescale</strong> <strong>Semiconductor</strong> products for any such unintended or<br />

unauthorized application, Buyer shall indemnify and hold <strong>Freescale</strong> <strong>Semiconductor</strong> and<br />

its officers, employees, subsidiaries, affiliates, and distributors harmless against all<br />

claims, costs, damages, and expenses, and reasonable attorney fees arising out of,<br />

directly or indirectly, any claim of personal injury or death associated with such<br />

unintended or unauthorized use, even if such claim alleges that <strong>Freescale</strong><br />

<strong>Semiconductor</strong> was negligent regarding the design or manufacture of the part.<br />

<strong>Freescale</strong> and the <strong>Freescale</strong> logo are trademarks of <strong>Freescale</strong> <strong>Semiconductor</strong>, Inc.<br />

All other product or service names are the property of their respective owners.<br />

© <strong>Freescale</strong> <strong>Semiconductor</strong>, Inc. 2005. All rights reserved.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!