fig2 is a block diagram of an exemplary automatic blood pressure gauge according to the present invention . this gauge includes a conventional blood pressure cuff 210 which may be inflated by an electric pump 212 using an air channel 211 . the pump motor is turned on and off by a motor controller 214 which is responsive to signals provided by a microprocessor 216 . a suitable pump for use in this embodiment of the invention is a diaphragm type , driven by a dc motor . the cuff is deflated using two digitally controlled solenoid valves , dv1 and dv2 . when open , the valve dv1 has a flow rate of 570 standard milliliters per minute ( std ml / min ) at 170 mmhg differential pressure , and the valve dv2 has a flow rate of 1 , 341 std ml / min at 20 mmhg differential pressure . these valves may be opened and closed in 1 . 4 milliseconds ( ms ) and 6 ms , respectively . in this embodiment of the invention , the valves are controlled by a pulse width modulated signal having a set nominal frequency . only one of the valves is open at any given time during normal operation . by controlling the percentage of time that the valve is opened and closed within each cycle of the control signal , the time - aperture of the valve can be effectively controlled . this time - aperture determines the average rate of airflow through the valve . the microprocessor 216 controls the valves dv1 and dv2 using a duty cycle modulator 230 . the modulator 230 , which is described in greater detail below with reference to fig4 produces a 20 . 35 hz signal which controls a selected one of the valves dv1 and dv2 . the duty cycle of this signal is controlled to determine the effective aperture of the selected valve , and thus , the rate at which the cuff 210 is deflated . the microprocessor 216 monitors the air pressure in the cuff using a conventional pressure transducer 218 which is coupled to the air channel 211 via a tube 217 . in the exemplary embodiment of the invention , the pressure transducer is of the conventional semiconductor strain gauge type . the signal produced by the transducer 218 is amplified by a low - noise instrument quality amplifier 220 which produces a signal that is applied to an analog to digital converter ( adc ) 222 . in this embodiment of the invention , the adc 222 is a 16 - bit sigma - delta type analog to digital converter . the adc 222 produces samples at a rate of approximately 50 hz . a frequency divider 226 is coupled to receive an 8 mhz clock signal clk provided by a resonant crystal controlled clock signal generator 224 . this signal is divided in frequency as needed to produce the clock signal for adc 222 . the sampled data pressure signal provided by the adc 222 is monitored by the microprocessor 216 to stop the pump 212 when the desired initial cuff pressure has been obtained , to control the flow through the deflation valves dv1 and dv2 and to extract , from the pulse signal , the systolic and diastolic blood pressure measurements for the person under test . the blood pressure measurements are presented on a display device 231 . to produce these values , the microprocessor 216 operates under the control of a program stored in a memory 228 . the memory 228 also contains cells which may be used for storing temporary data values . in the exemplary embodiment of the invention , the program storage portion of the memory 228 is a read - only memory ( rom ) while the data storage portion is a random - access memory ( ram ). the microprocessor 216 captures samples produced by the adc 222 at a 50 hz rate . the collected samples are processed in groups of 45 to obtain a noise - reduced cuff pressure signal and its first derivative , representing the actual rate of change of the cuff pressure . these signals have an effective sampling rate of 1 . 11 hz . for each sample of this signal , the microprocessor 216 calculates new settings for the deflation valve dv1 or dv2 according to the algorithm shown in fig3 . in the first step in this algorithm , step 310 , the initial cuff volume , v , is calculated , one of the deflation valves dv1 or dv2 is selected and an initial flow setting for the selected valve is calculated . the process used to determine the initial cuff volume is shown in fig3 a . in fig3 a at step 350 , the microprocessor 216 sets a variable p to the current pressure reading obtained from the pressure transducer 218 , and a variable i to the current inflation rate . the inflation rate is a differential pressure value which is obtained by numerically differentiating the pressure signal provided by the transducer 218 over the last 45 sample values . new values of p and i are available at 900 ms intervals as set forth below . at step 352 , the value stored in the variable p is compared to a target final pressure value . if the value in p is less than this target value , then control passes back to step 350 . if , at step 352 , the value in the variable p is greater than or equal to the target final pressure value , control is transferred to step 356 . in this step , the microprocessor 216 signals the motor controller 214 to stop the pump 212 and , thus , stop inflating the cuff . in addition , the microprocessor 216 uses the current pressure value , as stored in the variable p , as an index into a table which provides the current pump flow rate , pf . at step 358 , the values pf and i are substituted into the equation ( 1 ) to calculate the initial volume of the cuff . in this equation pf is the pump flow rate when the cuff pressure has reached its target final pressure value , i is the inflation rate , and the factor 760 represents the pressure of the fluid that is being pumped into the cuff ( the flow is specified under standard conditions -- 1 atmosphere = 760 mmhg ). the inflation rate is obtained , as set forth above , from the differential signal value generated by the last group of 45 sample values . the value pf is determined from a table of pump flow versus cuff back pressure ( bp ). an exemplary table is given as table 1 . in this table , the pump flow values are divided by a factor of 50 . thus , the table values are pf / 50 . table 1______________________________________pf / 50 bp pf / 50 bp pf / 50 bp pf / 50 bp______________________________________58 0 48 67 41 133 32 20057 5 48 72 40 138 32 20556 10 47 77 39 143 31 21055 15 47 82 38 148 31 21554 21 46 87 37 154 31 22053 26 46 92 37 159 31 22552 31 45 97 36 164 30 23051 36 45 102 36 167 30 23650 41 44 107 35 174 30 24150 46 44 113 35 179 30 24649 51 43 118 34 184 29 25149 56 43 122 34 189 29 25648 61 42 128 33 195 29 261______________________________________ the values in this table were generated experimentally . to generate a table for a different pump than was used in the exemplary embodiment , the pump is connected to a pressure gauge and to a controllable flow restrictor , such as a needle valve . the output of the needle valve is connected to a flow meter . the flow restrictor is adjusted to generate a given back pressure measurement on the pressure gauge . the flow produced by the pump at that back pressure is measured on the flow meter and recorded . these steps are repeated for all back pressure values to which the pump may be subject in normal operation . to determine the pump flow for a given measured cuff pressure , the table is indexed by the cuff pressure . for values not represented in the table , the value of the next lower entry is used . as an alternative to using this table , a single value may be maintained which represents the nominal flow rate of the pump in a range of back pressures likely to be encountered when the cuff volume is to be determined . this value may be obtained experimentally , for example , the average flow rate of the pump at back - pressures between 150 mmhg and 200 mmhg may be a suitable value for adult cuffs . the initial cuff volume is an important parameter for flexible blood pressure cuffs . this volume will vary with the size of the cuff , the size of the patient &# 39 ; s arm or leg , the way in which the cuff is wrapped around the patient &# 39 ; s arm or leg and the patient &# 39 ; s position while the measurement is being taken . since , as set forth above , the volume of the cuff is an important factor in achieving a desired deflation rate , it is important that this initial cuff volume be determined accurately . once the initial cuff volume has been determined , the initial valve control variable , f a , for the deflation valve dv1 or dv2 is calculated using equations ( 2 ) and ( 3 ). the initial value of f a is a combination of a calculated predictive valve control variable , f p , and a feedback term , f fb . in equation ( 2 ), r is the desired deflation rate , for example , 6 mmhg / s and k p is an experimentally determined factor which produces the desired flow rate for different cuff pressures . the value of this term depends on whether an adult cuff or a neonatal cuff is being used . exemplary values of k p for different adult cuff pressure values ( acp ) are given below in table 2 . the values in this table are suitable for use with a full range of adult cuffs ( e . g . arm to thigh ). table 3 is a list of exemplary values for standard neonatal cuffs in terms of neonatal cuff pressure ( ncp ). the cuff pressure in both tables is in units of mmhg . table 2______________________________________k . sub . p acp k . sub . p acp k . sub . p acp k . sub . p acp______________________________________500 0 126 67 64 133 51 200500 5 118 72 62 138 51 205500 10 108 77 60 143 50 210500 15 100 82 59 148 49 215450 21 92 87 58 154 49 220350 26 84 92 57 159 48 225300 31 76 97 56 164 48 230250 36 73 102 55 167 47 236210 41 69 107 55 174 47 241180 46 68 113 54 179 46 246160 51 67 118 53 184 45 251146 56 66 122 53 189 44 256136 61 65 128 52 195 44 261______________________________________ table 3______________________________________k . sub . p ncp k . sub . p ncp k . sub . p ncp k . sub . p ncp______________________________________163 0 92 67 64 133 51 200163 5 89 72 62 138 51 205163 10 86 77 60 143 50 210163 15 83 82 59 148 49 215163 21 80 87 58 154 49 220152 26 77 92 57 159 48 225144 31 74 97 56 164 48 230132 36 71 102 55 167 47 236122 41 69 107 55 174 47 241112 46 68 113 54 179 46 246101 51 67 118 53 184 45 251 98 56 66 122 53 189 44 256 95 61 65 128 52 195 44 261______________________________________ in equation 3 , the term f fb ( o ) is the initial value of a feedback correction term , f fb ( t ). the algorithm for determining the value of this term while the cuff is being deflated is set forth below . the value of f fb ( o ) is set to - 0 . 25 * f p for adult cuffs , and to 0 for neonatal cuffs . this term compensates for an initial drop in cuff pressure at the end of the inflation cycle which is due to the release of thermal energy from the compressed air in the cuff . for neonatal cuffs , the pressure drop caused by this energy release is negligible . consequently , for these cuffs , the initial feedback term is set to zero . the value f a defines the actual valve setting for dv1 . if this value is beyond the range of dv1 , the value of f a is multiplied by a scale factor for the use of dv2 . this value is translated into duty cycles for one of the two valves dv1 and dv2 as described below with reference to fig4 . the next step in the flow - chart diagram shown in fig3 step 314 is to wait until the start of the next update period . in the exemplary embodiment of the invention , the setting for the valve dv1 or dv2 is updated at 900 ms intervals . during this time , the microprocessor is determining the current cuff pressure value from the 45 most recent pressure sample values provided by the adc 222 . as described above , these sample values are processed to eliminate spurious noise spikes . the result of this processing is a noise - reduced cuff pressure signal . at step 316 , this cuff pressure signal is numerically differentiated over the 45 sample interval to produce a signal representing the actual deflation rate . this step may , for example , subtract each pressure sample value from the preceding sample value and average the results to provide a sampled data deflation rate signal for the interval in which the 45 pressure samples were taken . also at step 316 , the predictive valve setting , f p , is determined by applying equation ( 2 ) using the most recent cuff pressure sample as the index into table 2 or table 3 , depending on whether an adult cuff or a neonatal cuff is being used . the difference , r e , between the actual deflation rate , calculated at step 316 , and the desired deflation rate is calculated at step 318 . in this embodiment of the invention , the desired deflation rate is 6 mmhg / s . at step 320 , the microprocessor 216 uses the r e value calculated in step 318 and the equation ( 4 ) to compute a feedback term , f fb ( t ), for the current time interval , t . in the equation ( 4 ), k g is a feedback gain factor . this factor is experimentally determined to produce a desired loop time constant for the feedback loop . in the exemplary embodiment of the invention , this factor has a value of 0 . 31 . this gain factor enables the loop to respond to changes in the volume of the cuff caused by patient motion but to be relatively insensitive to the pulse signal component of the pressure signal . the initial volume factor , v , in the first term of the equation normalizes the transient response of the feedback controller for different cuff volumes . because of this factor , cuffs having relatively large initial volumes are allowed to have relatively large feedback correction terms while cuffs having relatively small initial volumes are only allowed to have small feedback correction terms . as described above , the initial cuff volume depends on a number of factors such as the size of the patient &# 39 ; s arm and how the cuff is wrapped around the arm . the feedback term f fb ( t ), as defined by equation ( 4 ), is an integrated value since the first term in equation ( 4 ), ( v * r e * k g ), is summed with the value of the feedback term from the previous time period , f fb ( t - 1 ), to obtain the feedback term for the current time period , f fb ( t ). in addition , the amplitude of the feedback term is limited as shown in steps 322 through 326 of fig3 based on the value of the predictive valve setting , f p . step 322 determines if the calculated feedback term , f fb ( t ), is less than - 0 . 75 * f p . if so , then at step 324 the value - 0 . 75 * f p is substituted for f fb ( t ). otherwise , step 325 determines if f fb ( t ) is greater than f p . if this condition is met , step 326 assigns the value f p to f fb ( t )&# 39 ;. the result of these calculations is a final feedback term , f fb ( t )&# 39 ;. this term is summed with the predictive valve setting f p as shown in equation ( 5 ) to obtain a new actual valve setting f a . the feedback term is limited to prevent large correction terms from being applied when there is a large transient change in the actual cuff deflation rate . if , for example , the cuff volume is changed because the patient flexed his or her arm , there may be , for a short time interval , a relatively large difference between the actual deflation rate and the desired deflation rate . if the system corrects for this difference in a single step , there would be a continuing error when the flexed muscle is relaxed . this continuing error is caused by the integral nature of the feedback term . in the exemplary embodiment of the invention , the magnitude of these continuing errors is reduced by limiting the amount by which the feedback term may change . the feedback term f fb ( t )&# 39 ; tends to match the actual deflation rate to the desired rate . it compensates for volume changes in the cuff during the deflation process and for valve and pump flow inaccuracies . since the gain of the feedback loop is relatively low and since the feedback correction term is updated only once every 900 ms , it does not tend to interfere with the pulse signals . this occurs because the pulse signal frequencies of , for example , 0 . 5 to 6 hz , are outside of the range of frequencies that can be tracked by the feedback loop . if the actual valve setting calculated in step 328 is different from the current valve setting , step 330 changes to the new valve setting gradually over the next 900 ms sample interval . this step is described in greater detail below , with reference to fig5 . following step 330 , the program branches back to step 316 to begin the calculations that determine the valve settings for the next interval . fig4 shows exemplary circuitry which may be used as the duty cycle modulator 230 shown in fig2 . in this circuitry , a new 12 - bit data value , representing the most recently calculated value for f a , is loaded into a register 410 by the microprocessor 216 , to change the time - aperture of the currently selected valve dv1 or dv2 . as described above , these valves are solenoid valves which may be opened or closed , responsive to a control signal . the valve dv1 or dv2 is open when its control signal is logic - high and closed when its control signal is logic - low . the valves dv1 and dv2 are selected so that , when both valves are open , the flow through dv2 is approximately eight times the flow through dv1 . in this embodiment of the invention , valve dv1 is selected when low valve flow rates are desired and dv2 is selected to achieve higher valve flow rates . the control signal for the selected valve is provided by a comparator 412 . this comparator compares the value held in the register 410 with a value provided by a 12 - bit counter 414 . the clock input signal to the counter is the 8 mhz signal clk divided , in frequency , by a factor of 96 by a frequency divider 416 to produce a clock signal having a frequency of 83 . 33 khz . responsive to this clock signal , the counter cycles through all of its 4 , 096 values 20 . 35 times per second . the comparator 412 is configured so that it produces a logic - high output signal when the value provided by the register 410 is less than or equal to the value provided by the counter 414 and produces a logic - low output signal otherwise . this signal is provided to a demultiplexer 416 , which , responsive to a signal dc provided by the microprocessor 216 , routes the control signal to either dv1 or dv2 . when the process shown in fig3 selects and adjusts the valve dv1 or dv2 at step 330 , it does not make the entire adjustment in one step . instead , it adjusts the valves gradually over the next 900 ms interval . this is done to prevent artifact pulses which may occur if the flow were to change suddenly . fig5 is a flow - chart diagram which illustrates the method by which the microprocessor 216 controls the valves dv1 and dv2 to in response to a new valve setting calculated at step 328 . in the exemplary embodiment of the invention , new values for the valve setting are calculated at 900 ms intervals . the valve settings , however , are each in terms of a duty cycle of a square wave having a period of 49 ms ( i . e . 1 / 20 . 35 hz ) and the microprocessor can update the value held in the register 410 , shown in fig4 at the end of each 49 ms interval . thus , during each 900 ms interval , the settings for the selected deflation valve dv1 or dv2 can be adjusted as many as 18 times . the first step in the process which adjusts the settings for these valves , step 506 , selects which of the two valves , dv1 or dv2 is to be adjusted . when low flow settings are required to provide the desired deflation rate , such as when a small cuff is deflated at high pressure , dv1 is selected . when higher flow settings are desired , such as when a relatively large cuff is deflated at low pressure , dv2 is selected . when valve dv1 is selected and the value f a applied to the register 410 is greater than 3 , 932 , step 508 is executed . in this step , the microprocessor 216 changes the signal dc , which is applied to the demultiplexer 416 of fig4 to select valve dv2 . at the same time , the microprocessor 216 multiplies the current valve setting value ( old f a ) and the new valve setting value ( f a ) by 0 . 128 . it then stores the new value for old f a into the register 410 . these steps cause an immediate switch to valve dv2 from valve dv1 . step 510 is executed after step 508 , or after step 506 if the comparison in 506 is negative . step 510 subtracts the new valve setting value , f a , from the current valve setting value , old f a , to obtain a value , ds , which indicates the amount by which the current setting must be changed to reach the new setting . step 512 determines if the absolute value of ds is less than or equal to 8 . if so , then at step 514 , the microprocessor 216 invokes a procedure which changes the 12 bit number stored in the register 410 of fig4 in unit steps at intervals corresponding to alternate ones of the 20 . 35 hz pulses until the desired setting value is reached . if , at step 512 , the absolute value of ds is greater than 8 , then step 516 is executed . this step determines if ds is less than or equal to 16 . if it is , then step 518 is executed . this step invokes a procedure which changes the 12 - bit value stored in the register 410 in unit steps for each pulse of the 20 . 35 hz signal until the desired setting value is reached . if , at step 516 , the absolute value of ds is greater than 16 , step 520 is executed . this step divides the value ds by 16 to produce a value ids . step 520 then invokes a procedure which changes the value in the register 410 by ids for each pulse of the 20 . 35 hz signal until the desired valve setting is reached . it is noted that the amount by which the valve setting is to be changed may be either positive or negative . accordingly , in fig5 and the accompanying description , any change in the value held in register 410 may be positive or negative . in the exemplary deflation control system described above , a blood pressure cuff , which has been inflated to a preset initial pressure and has an initial volume of fluid , is deflated at a substantially constant rate by controlling the time - aperture of two deflation valves . the apparatus which controls these valves monitors the pressure in the cuff and periodically changes the time - aperture of the valves to maintain the desired deflation rate . this control apparatus uses a table which relates the current cuff pressure to a predictive valve setting to produce a desired deflation rate for the next interval . a feedback control loop is also employed to modify the actual valve settings to be used within predefined limits to maintain the desired deflation rate . the feedback signals are normalized by the initial cuff volume so that the time constant of the loop is substantially independent of the cuff volume . while this invention has been described in terms of an exemplary embodiment , it is contemplated that it may be practiced as outlined above within the scope of the appended claims .
a deflation control system for the pressurized cuff of an automatic blood pressure gauge uses a pressure sensor to control solenoid valves . the solenoid valves are responsive to respective pulse signals having variable duty cycles to change their time - apertures and , thus , their flow rates . the duty cycles of the pulse signals are controlled to maintain a desired constant rate of pressure reduction in the cuff . a microprocessor generates a control value which determines the duty cycles of the pulse signals . this value is proportional to the initial volume of fluid in the cuff and to a predictive term which is provided from a table that is indexed by cuff pressure . this value is then augmented by a feedback term , generated by a feedback control loop to ensure an accurate deflation rate . the gain of the feedback loop is selected so that the feedback correction signals do not interfere with pulse signals modulating the pressure signal . the feedback term is normalized by the initial volume measurement . in addition , any new valve setting is applied in small steps over a time interval to further ensure smooth changes in the flow rate .