METHOD AND APPARATUS FOR KIDNEY DIALYSIS

Abstract: Methods are disclosed for providing operationial instructions to a hemodialysis circuit (10) having a dialysis filter (48) and a capability of operating according to a time-varying parameter such as variable ultrafiltration. According to the methods, entered are a desired time period, a target cumulative value of the parameter, such as target ultrafiltration volume, and a proposed time-varying profile of the parameter that is representable as a plot of coordinates in a region defined by an ordinate of values of the parameter and a time-based abscissa defining a profile cumulative value of the parameter. If the profile cumulative value is not equal to the target cumulative value, then the proposed time-varying profile is changed along the ordinate to make the cumulative values equal. The circuit (10) then operates according to the changed profile to achieve the entered target cumulative value within the time period.

Description: METHOD AND APPARATUS FOR KIDNEY DIALYSIS FIELD OF THE INVENTION The present invention relates to improvements in kidney dialysis machines. BACKGROUND OF THE INVENTION Kidney dialysis machines are well known in the art and are illustrated, for example, in U.S. Patents 3,598,727 ,4,172,033,4,267,040,and 4,769,134. While machines according to the prior art provide a number of advantageous features, they nonetheless have certain limitations. The present invention seeks to overcome certain drawbacks of the prior art and to provide new features not heretofore available. A discussion of the features and advantages of the present invention is deferred to the following detailed description, which proceeds with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS FIGS. IA and IB comprise a schematic hydraulic diagram of a preferred embodiment of a kidney dialysis machine according to the present invention. FIG. 2 is a schematic diagram showing flow path locations and components of a pre-dialyzer flow sensor and a post-dialyzer flow sensor according to the present invention. FIGS. 3A and 3B are isometric and schematic diagrams, respectively, of a concentrate-line proximity sensor comprising a portion of the automatic proportioning mode setting feature of the present invention. FIG. 4 is a schematic diagram showing the interconnection of input and output pressure equalizers into the hydraulic flow path of the present invention. FIG. 5 is a schematic diagram of the automated drip-chamber level adjusters of the present invention. FIG. 6 is a schematic diagram of a preferred embodiment of a means for increasing dialysate flow velocity through the dialyzer without increasing the dialysate flow rate. FIG. 7 shows a block diagram of a computer system used in the preferred embodiment. FIG. 8 shows a touch screen display used in the preferred embodiment. FIG. 9 shows the touch screen of FIG. 8 with a calculator window for data entry. FIG. 10 shows a profile entry screen used in the preferred embodiment. FIG. 11 shows a programming screen used in the preferred embodiment. DETAILED DESCRIPTION Hydraulic Circuit A hydraulic circuit 10 representing a preferred embodiment of an improved hemodialysis machine according to the present invention is illustrated in FIGS. IA and IB. The hydraulic circuit 10 is comprised of the following principal components: an incoming water pressure regulator 12, a water on/off valve 14, a heat exchanger 16, a heater 18, a safety thermostat 20, an "A "concentrate pump 22, a supply valve 24, an air gap chamber 26, an "A" rinse fitting 28, a "B" rinse fitting 30, a deaeration sprayer 32, an air removal pump 34, a vented air trap 36, an "A" conductivity probe 38, a "B" concentrate pump 40, a supply pump 42, a "B"mix chamber 44, a "B" conductivity probe 46, a dialysate filter 48, a supply regulator 50, an input pressure equalizer 52, a flow equalizer 54, an output pressure equalizer 56, end-of- stroke sensors 59, a dialysate conductivity probe 60, a pre-dialyzer flow sensor 62, a dialysate pressure transducer 64, a bypass valve 66, a dialysate sample port 68, a post-dialyzer flow sensor 70, a dialysate pressure pump 72, a UF removal regulator 74, a UF flow meter 76, a blood-leak detector 78, and a rinse valve 80. The aforementioned components are interconnected as shown in FIGS. IA and IB. The incoming water pressure regulator 12 is coupled to a pressurized water source 82 and reduces and stabilizes the water supply pressure to a level of about 20 psig. The water on/off valve 14 opens when machine power is on, thereby allowing water to flow from the source 82 into the hydraulic circuit 10. When the machine power is off, the water on/off valve 14 is closed. The heat exchanger 16 transfers heat from "spent" or effluent dialysate, passing through conduit 84, to the cooler incoming water passing through conduit 86 as these two liquids pass countercurrently through separate but adjacent compartments in the heat exchanger 16. In this way, the incoming water is warmed, which reduces the amount of heat energy that must be supplied to the water by the heater 18. The heater 18 further warms the incoming water to a suitable temperature for hemodialysis, which is about 38 °C. A typical heater 18 is a resistance type known in the art, rated at about 1500 watts. The heater 18 includes a downstream thermistor 20 or analogous temperature-sensing device. A thermistor as known in the art is essentially a temperature- sensitive resistor which experiences a change in electrical resistance that is inversely proportional to a corresponding change in temperature. The thermistor 20 is coupled to the machine's microprocessor (not shown in FIGS. IA and IB) which utilizes signals from the thermistor for turning the heater 18 on and off as required to maintain the water temperature at the proper level. The "A" concentrate pump 22 propels either "acid" or "acetate" concentrate as known in the art from a container thereof 88 into the air gap chamber 26. The "A" concentrate pump 22 is a fixed-volume cam-driven pump. A stepper motor 90 calibratable to rotate a precise number of rotations per minute is preferably used to drive the "A" concentrate pump 22. The stepper motor includes a shaft (not shown) to which is mounted a cam (not shown) which engages a flexible diaphragm 92, thereby delivering a known volume of "A" concentrate per each rotation of the cam. An optical sensor (not shown) on the cam monitors the angular rotation of the cam for processing by the microprocessor (not shown). The microprocessor, using information pertaining to dialysate flow rate and concentrate parameters entered by the machine operator using a touch screen (described in detail hereinbelow), calculates the amount of concentrate necessary to achieve a correct ratio of water and "A" concentrate for hemodialysis therapy. The microprocessor thereby adjusts the angular velocity of the stepper motor shaft. An "A" concentrate line 94 is used to deliver "A" concentrate from the supply 88 thereof to the "A" concentrate pump 22. When rinsing the machine, the "A" concentrate line 94 is coupled to the "A" rinse fitting 28 which serves as a source of rinse water for the "A" concentrate line. When disinfecting the machine, the "A" concentrate line 94 is coupled to a disinfect fitting 96 which enables the "A "concentrate pump 22 to deliver a chemical disinfectant to the "A" concentrate line 94. Heated water enters the air gap chamber 26 through the supply valve 24. The supply valve 24 is actuated by a lever 98. The lever 98 is coupled to a float 100 inside the air trap 36. Thus, the float 100 controls water flow into the hydraulic circuit 10 by opening the supply valve 24 when the water level supporting the float drops and by closing the supply valve 24 when the water level in the air trap 36 rises. The air gap 102 in the chamber 26 is at atmospheric pressure. The air gap 102 helps prevent incoming water from flowing backward (upstream) in the event of a pressure drop in the water supply 82. A proximity sensor (not shown in FIGS. IA and IB but described in further detail hereinbelow) is built into the "A" rinse fitting 28. The proximity sensor senses when the "A" concentrate line 94 is coupled to the "A" rinse fitting 28 and when it is not, thereby serving as an important safety interlock feature which prevents unsafe operation of the machine. The "B'rinse fitting 30 supplies water for rinsing the "B" concentrate line 104. During rinse, the "B" concentrate line 104 is coupled to the "B"rinse fitting 30. During acetate dialysis, the "B" concentrate line 104 is also coupled to the "B" rinse fitting 30 for recirculation of acetate dialysate solution therethrough. The "B" rinse fitting 30 is also provided with a proximity sensor (not shown in FIGS. IA and IB but described in further detail hereinbelow) similar to that provided with the "A"rinse fitting 28. The hydraulic circuit includes components operable to remove dissolved gases from the liquid passing therethrough. Otherwise, if the liquid were not deaerated, dissolved gases therein could adversely affect the course of a dialysis treatment, including the accuracy at which the machine performs ultrafiltration of the patient. To facilitate deaeration, liquid flows through the air-removal sprayer 32 at a rate of about 1500 mL/min at a subatmospheric pressure (about 500 mmHg). The reduced pressure is attained by aspirating the liquid via the air-removal pump 34 through a flow restrictor 106 upstream of the air-removal sprayer 32. The air-removal sprayer 32 breaks the liquid into small droplets as it is subjected to the subatmospheric pressure, which favors the formation of air bubbles. The air trap 36 vents air bubbles liberated from the liquid by the deaeration sprayer 32 through a vent opening 108 open to the atmosphere. The air trap also contains the float 100 discussed hereinabove. The "A" conductivity probe 38 measures the electrical conductivity of the mixture of water and "A" concentrate. Conductivity is an accurate way to ascertain whether the "A" concentrate solution has been correctly proportioned. The conductivity measured at the "A" conductivity probe 38 can vary depending upon the ionic strength and electrolytic profile of the "A" concentrate. Since conductivity will be affected by temperature, the "A" conductivity probe 38 is also provided with a thermistor 110. The thermistor 110 is coupled to the microprocessor (not shown) which performs the necessary temperature compensation. The "B" concentrate pump 40 delivers bicarbonate concentrate from a supply thereof 112 and is operable only during bicarbonate dialysis therapy. The "B" concentrate pump 40 is a fixed-volume cam-driven pump similar to the "A" concentrate pump 22. The "B" concentrate pump 40 is driven by a stepper motor 114. As with the "A" concentrate pump, the angular velocity of the stepper motor shaft is monitored by an optical sensor. The optical sensor is connected to the machine's microprocessor which calculates the amount of "B" concentrate necessary to achieve a correct dialysate composition for safe hemodialysis therapy and correspondingly controls the angular velocity of the cam. The "B" concentrate pump 40 will automatically compensate for changes in dialysate flow rate in the event that said flow rate is changed during a dialysis treatment by increasing or decreasing the pump rate. FIGS. IA and IB also shows an optional third concentrate supply 116, a third fixed-volume cam-driven concentrate pump 118 operable in the same manner as the "A"and "B" concentrate pumps 22, 40, a corresponding mixing chamber 120 and conductivity probe 122. The "B" mix chamber 44 provides thorough mixing of the "B" concentrate with the proportioned mixture of "A" concentrate and water to form dialysate before the dialysate enters the "B" conductivity probe 46. The "B" conductivity probe 46 monitors dialysate conductivity. Electronic circuitry (not shown) coupled to the "B" conductivity probe 46 subtracts the conductivity measured at the "A" conductivity probe 38 from the conductivity measured at the "B" conductivity probe 46. During acetate dialysis, the difference in these conductivity readings should be zero. Since conductivity measurements are affected by temperature, a thermistor 124 is included with the "B" conductivity probe 46 to provide temperature compensation of the "B" conductivity reading. The thermistor 124 also comprises a portion of a redundant high temperature alarm subsystem. Before describing the hydraulic circuit any further, it is appropriate to briefly describe the flow equalizer 54. The flow equalizer 54 comprises a first chamber 126 and a second chamber 128 of substantially equal volume. Each chamber 126, 128 is comprised of two compartments, one termed a "pre-dialyzer" or "pre" compartment 130, 132 and the other a "post-dialyzer" or "post" compartment 134, 136. Each pair of opposing "pre" and "post" chambers is separated by a flexible diaphragm 138, 140. Solenoid-actuated valves 142-149 control the filling and emptying of each compartment. In general, each compartment 130, 132, 134, 136 is completely filled before its contents are discharged. Also, the "pre" compartments 130, 132 are alternately filled and discharged and the "post" compartments 134, 136 are alternately filled and discharged. Also, filling a "pre" compartment 130, 132 causes a corresponding discharge of an opposing "post" compartment 134, 136, respectively. The "pre" compartments 130, 132 alternately fill from the supply pump 42 and alternately discharge to the dialyzer. The "post" compartments 134, 136 alternately fill with "spent" dialysate returning from the dialyzer and discharge the spent dialysate to a drain line 150. For example, dialysate from the supply pump 42 enters the "pre" compartment 132, thereby displacing the diaphragm 140 in FIGS. IA and IB to the right, causing the "post" compartment 136 to empty. Simultaneously, "post" compartment 134 fills while "pre" compartment 130 empties. The flow equalizer 54 operates via a four-phase cycle. In the first phase, valves 142, 145, 147, and 148 turn on, thereby filling the "pre" compartment 130 with fresh dialysate and displacing the diaphragm 138 to the right in FIGS. 1 A and IB. Such displacement of the diaphragm 138 expels "spent" dialysate contained in the "post" compartment 134, which has a volume equal to the volume in the "pre" compartment 130, to pass to the drain line 150. At the same time, effluent dialysate from the dialyzer enters the "post" compartment 136, thereby forcing the diaphragm 140 to be displaced to the left in FIGS. IA and IB to expel an equal volume of fresh dialysate from the "pre" compartment 132 to the dialyzer. In the second phase, all the solenoid valves 142-149 turn off for a short period of time (about 125 msec). This brief shut-off eliminates adverse affects on ultrafiltration accuracy that would otherwise result if at least two of said valves were open at the same time. In the third phase, solenoid valves 143, 144, 146, and 149 are energized, causing the "post" compartment 134 to fill with effluent dialysate from the dialyzer, thereby expelling fresh dialysate from "pre" compartment 130 to the dialyzer. Also, the "pre" compartment 132 simultaneously fills with fresh dialysate from the supply pump 42, thereby expelling effluent dialysate from the remaining "post" compartment 136 to the drain line 150. In the fourth phase, all the solenoid valves 142-149 are again turned off for about 125 msec. Since the volumes of opposing "pre" and "post" compartments 130, 134 and 132, 136 are equal, the flow equalizer 54 volumetrically balances the flow of dialysate to and from the dialyzer. A further benefit of such volumetric equality is that dialysate flow to the dialyzer can be accurately measured over a wide range of flow rates. The supply pump 42 has two functions: (a) to supply an adequate dialysate flow volume and pressure to fill the flow equalizer compartments with dialysate, and (b) to create a flow of dialysate through a loop 152 comprised of the dialysate filter 48, the supply regulator 50, the "B" mix chamber 44, and the "B" conductivity probe 46. The supply pump 42 delivers dialysate at a maximum regulated pressure of 12.5 psig and at a flow rate approximately 50 mL/min higher than the dialysate flow rate set by the operator using the touch screen. The dialysate filter 48 is used to occlude downstream passage of particulate foreign material into the flow equalizer 54. The supply regulator 50 is adjusted to an output pressure of approximately 16 psig. Whenever the "pre" and "post" compartments of the flow equalizer 54 reach the end of a fill cycle during phases 1 or 3, pressure builds up in the loop 152. As the pressure increases to about 16 psig, the supply regulator 50 opens sufficiently to pass the dialysate output of the supply pump 42 through the loop 152 until the next phase 1 or 3. The input pressure equalizer 52 equilibrates hydraulic pressures at the inlets 155 of the flow equalizer 54 so that the compartments 130, 132, 134, 136 fill at the same rate. Likewise, the output pressure equalizer 56 equilibrates hydraulic pressures at the outlets 156 of the flow equalizer 54. The input and output pressure equalizers are discussed in greater detail hereinbelow. The input pressure equalizer 52 also automatically equilibrates the pressure of the dialysate flowing through the downstream lines 158, 160 with the pressure of dialysate at the flow equalizer inlets 154. Whenever the pressure at the flow equalizer inlets 154 exceeds the pressure generated ,by the dialysate pressure pump 72, the input pressure equalizer 52 restricts the flow of dialysate in lines 158, 160. Such equilibration of pressures allows both chambers 126, 128 in the flow equalizer 54 to be filled at identical rates. End-of-stroke sensors 162, 164 are provided at the outlets 156 of the output pressure equalizer. The end-of-stroke sensors 162, 164 verify when the flow equalizer compartments have reached the end of a fill cycle (end of stroke). When the compartments are full, the end-of-stroke sensors 162, 164 send a no-flow signal to the machine's microprocessor, indicating that the compartments are full. The dialysate conductivity probe 60 measures the conductivity of the dialysate before it enters the dialyzer. The machine's microprocessor compares the measured conductivity with an expected conductivity value (discussed in detail hereinbelow) based upon concentrate formulation information entered by the operator using the touch screen. If the measured dialysate conductivity is excessively above or below the expected conductivity value, the machine's microprocessor activates a conductivity alarm. Also, the bypass valve 66 is triggered during a conductivity alarm to divert dialysate away from the dialyzer through conduit 166. The dialysate conductivity probe 60 includes a thermistor 168 which allows temperature compensation of the conductivity reading. The electronic signal from the thermistor 168 is also utilized to provide a dialysate temperature display on the machine's touch screen as well as primary high and low temperature alarm limits. The dialysate conductivity as measured by the conductivity probe 60 is also displayed on the machine's touch screen. The dialysate flow sensor 62 includes a self-heating variable thermistor as well as a reference thermistor (not shown in FIGS. IA and IB, but discussed in detail hereinbelow). The dialysate flow sensor 62 is used mainly as a bypass momtor. Whenever the machine is in bypass, the resulting lack of dialysate flow past the flow sensor 62 serves as a verification that the bypass valve 66 is functioning correctly. The dialysate pressure transducer 64 senses dialysate pressure and converts the pressure reading into an analog signal proportional to the dialysate pressure. The analog signal is utilized by the machine's microprocessor as the basis for a dialysate pressure display on the touch screen, pressure alarms, and other dialysate control functions (not shown in FIGS. IA and IB). The bypass valve 66 protects the hemodialysis patient in the event of a temperature or conductivity alarm by diverting dialysate flow away from the dialyzer. The bypass valve 66 is a three-way solenoid valve which, when triggered, occludes the conduit 170 leading to the dialyzer and shunts the dialysate flow through conduit 166 to a location 172 downstream of the dialyzer. The dialysate sample port 68 is an appliance which allows the operator to obtain a sample of the dialysate using a syringe for independent testing. A second dialysate flow sensor 70 is located in the post-dialyzer ("venous") line 174. The second flow sensor 70 is constructed similarly to the first flow sensor 62 and is discussed in detail hereinbelow. The second flow sensor 70 is utilized for checking the accuracy of the machine's ultrafiltration capability. The dialysate pressure pump 72 is situated downstream of the dialyzer. An accompanying recirculation loop comprising lines 158, 160 conducts effluent dialysate to the inlet pressure equalizer 52. The recirculation loop 158, 160 thereby helps equilibrate pressure differences that might otherwise be transmitted to the flow equalizer 54 and also serves as a source of hydraulic pressure sufficient to fill the UF flow meter 76 when demanded thereby. The dialysate pressure pump 72 circulates dialysate at a constant flow rate of 1500 mL/min through the recirculation loop 158, 160 without affecting the overall dialysate flow rate through the hydraulic circuit 10. As a result, the dialysate pressure pump 72 is usable to adjust pressure differences across the dialyzer membrane. As long as the dialysate pressure pump 72 receives an adequate volume of dialysate for pumping, the flow dynamics of dialysate through the hydraulic circuit 10 are unaffected. However, should liquid be removed from the recirculation loop 158, 160, the dialysate pressure pump will attempt to replace that lost volume by demanding more volume from the dialyzer. Since the flow equalizer 54 maintains volumetric constancy of dialysate passing to and from the dialyzer, the only fluid available to replace any fluid lost from the loop 158, 160 must come from the dialyzer itself. Hence, by precisely controlling the amount of liquid removed from the recirculation loop 158, 160 (using the UF flow meter 76), the operator can precisely control the amount of liquid that must be removed from the hemodialysis patient via the dialyzer. Since the dialysate pumped by the dialysate pressure pump 72 has a partially restricted flow, a sufficient pressure is thereby provided at the input of the UF removal regulator 74. The UF removal regulator 74 regulates hydraulic pressure at the input 178 of the UF flow meter 76. The UF flow meter 76 is comprised of a chamber 180 separated into two subcompartments 182, 184 via a diaphragm 186. Each subcompartment 182, 184 has a corresponding valve 188, 190, respectively, associated therewith. Either subcompartment 182, 184 of the UF flow meter 76 can only fill when the corresponding valve 188, 190 is opened. Whenever a first subcompartment 182 is filling, the opposing second compartment 184 is emptying its contents to a drain line 192. The rate of UF removal through the UF flow meter 76 is governed by the rate at which the corresponding valves 188, 190 are alternately opened and closed. Whenever liquid leaves the recirculation loop 158, 160 through the UF flow meter 76, correspondingly less liquid is recirculated through the recirculation loop 158, 160. This causes a corresponding "starvation" at the input 172 of the dialysate pressure pump 72 which generates a corresponding decrease in dialysate pressure in the dialyzer. The decreased dialysate pressure causes a volume of liquid to be removed from the patient that is equal to the volume of liquid removed from the recirculation loop 158, 160 via the UF flow meter 76. These volumes will be equal so long as the dialyzer has an ultrafiltration capability sufficient to remove said volume from the patient at the desired rate. Effluent dialysate expelled from the flow equalizer 54 passes through and is monitored for the presence of blood by the blood-leak detector 78. The blood-leak detector 78, discussed in further detail hereinbelow, comprises a light source 194 and a photocell 196 which monitors light transmitted through the effluent dialysate solution passing therethrough. If blood leaks through the dialyzer membrane from the patient into the dialysate, the dialysate passing through the blood-leak detector 78 will absorb a portion of the light passing therethrough. The corresponding decrease in the amount of light reaching the photocell 196, if the decrease is excessive, triggers a blood-leak alarm by the machine. Effluent dialysate from the blood-leak detector 78 is routed through conduit 84 to the heat exchanger 16, then to a drain 198. The rinse valve 80 allows the UF flow meter 76 to remove rinse water from the recirculation loop 158, 160 at a rate of about 4 L/h. Such rinsing ensures an adequate flushing of the recirculation loop 158, 160 and UF flow meter 76. However, since liquid is removed from the loop 158, 160 at a relatively high rate during rinse, the rinse valve 80 also allows an equivalent volume of liquid to be added back to the loop 158, 160. User Interface In the preferred embodiment, a touch screen user interface is employed. Touch screens are known in the art and are commercially available from a number of sources, including Elographics West of San Diego, Cal. The use of touch screens in user interface applications for medical equipment is also known, as shown for example in US Patents 4,974,599and 4,898,578-the disclosures of which are incorporated herein by reference. In the prior art, as illustrated by the above-referenced patents, touch screens have been used in conjunction with computers and CRTs to provide a control panel that can be changed under computer control. The means by which a computer, a CRT, and a touch screen can be cooperatively operated in this fashion is well known and does not, per se, form a part of this invention. FIG. 7 shows a block diagram of the computer system 500 that is used to control the touch screen 501, CRT display 503, and other components of the apparatus. This computer is programmed in the language 'C in a conventional manner to accomplish the dialogue and other functions subsequently described. FIG. 8 shows the touch screen display that is usually presented to the operator of the system of FIG. 7. As can be seen, the primary treatment parameters are displayed. These include the heparin pump rate, the dialysate flow rate, the dialysate conductivity, the dialysate temperature, the elapsed treatment time, the total ultrafiltrate removed, the transmembrane pressure, and the ultrafiltration rate. Also displayed are the patient's arterial and venous blood pressure (both in column of mercury form and in numeric form). A linear indicator at the bottom of the screen indicates the blood pump flow rate. A space at the top of the screen is reserved for alarm and help messages. Most of these display elements are in a bordered box. The border serves as a visual alarm indicator and changes color and flashes if a corresponding alarm limit is violated. A number of buttons are displayed on the right hand side of the display. The first is a RESET button and is used to reset alarm conditions after an alarm condition is corrected. HELP guides the user through a variety of help messages. SET LIMITS sets the alarm limits for various parameters including arterial pressure, venous pressure and TMP. MENUS replaces the buttons on the right hand side of the display with additional buttons corresponding to additional control functions, while maintaining the displayed parameters elsewhere on the screen. RINSE initiates the rinse mode, provided the interlocks are met. MUTE silences most audio alarms for 100 seconds. Additional buttons can appear in this part of the screen. Button locations are reprogrammable and can have multiple legends associated with them. Also, their positions on the touch screen can be varied by reprogramming. If it is desired to change one of the displayed parameters, such as the heparin pump rate, the operator simply touches the corresponding indicator. A calculator-like keyboard then pops up in a window superimposed on the display, as shown in FIG. 9. On this keyboard, the user can enter the new value for the selected parameter. Once the desired parameter is entered in this fashion, the operator presses ENTER on the calculator display and the calculator display disappears. The revised parameter is substituted in the corresponding indicator (with its border highlighted) and the user is prompted, through a button that appears at the lower right hand side of the screen, to verify the entered change. If the VERIFY button is not touched shortly after displayed, the VERIFY button disappears and the machine continues with its previous parameter. If timely verified, the change takes effect. In the preferred embodiment, the user has between one and five seconds to verify the parameter. Some parameters are not susceptible to representation by a single number displayed in a parameter window. Exemplary are parameters that are programmed to change over time (so-called profiled parameters). In this class are the sodium concentration of the dialysate solution, the bicarbonate concentration of the dialysate solution, kT/V, and the ultrafiltration rate. In the preferred embodiment, such profiled parameters are selectably displayed in the form of bar graphs on the display screen. Using sodium as an example, the Y-axis represents sodium concentrations in the range of 130 - 160 mEq/L. The X-axis represents the treatment period, broken down into fifteen minute intervals. Such a display is shown in FIG. 10. The use of bar graphs to display profiled parameters is known in the art. The prior art fails, however, to provide a convenient manner by which data characterizing the profile curve may be entered into the machine. Typically, such data entry has been accomplished through a keypad on which data for each discrete time period is entered. However, this approach requires dozens of key presses and provides numerous opportunities for error. In the preferred embodiment, in contrast, profiled parameters are entered by simply tracing the desired profile curve on the touch screen. In more detail, programming of profiled parameters is performed as follows: From the main touch screen display of FIG. 8, the user presses MENUS. The programming screen of FIG. 11 then appears, which includes along its right hand side buttons corresponding to the programming of sodium, bicarbonate, kT/V, and ultrafiltration. The parameter desired to be programmed is then selected by touching the corresponding button. In response to this touch, the screen of FIG. 10 appears. If a profile has already been programmed, it is displayed in bar graph fashion on this screen. Otherwise, the graph is empty. Before permitting the user to program the sodium profile, the machine first solicits the sodium value of the sodium concentrate being used. This data is entered on a pop¬ up keypad. If the treatment time was not earlier programmed, the machine also solicits this data by means of a pop-up keypad. The user then traces the desired profile curve on the touch screen, and the computer virtually simultaneously displays a series of bars corresponding to the traced curve. Alternatively, the user can touch the screen at discrete points on the desired profile curve. To program a linear increase in sodium from 140 to 160 mEq/L, for example, the user would touch the graph at 140 at the ordinate corresponding to the beginning of the treatment interval, and 160 at the ordinate corresponding to the end of the treatment interval. The computer would then fit a linearly increasing series of bars between these points. Discrete touches can also be used to program stepped profiles. If the first hour of treatment is to be at 150 mEq/L and the second hour is to be at 135 mEq/L, the user would first touch the screen at 150 at the ordinate corresponding to the beginning of the first hour. At the ordinate corresponding to the end of the first hour, the user would press at two locations. First at 150 (to cause the computer to fill in the intervening period with bars corresponding to 150), and again at 135. Finally, the user would touch the screen at 135 at the ordinate corresponding to the end of the second hour. The computer would then fill in the second hour with bars corresponding to 135. After the desired profile curve has been entered, the ENTER button is pressed to set the program in the machine. In the preferred embodiment, the computer "snaps" the height of each bar to one of a series of discrete values. In the case of sodium, these discrete values are spaced in 1 mEq/L steps. Displayed on the screen during this programming operation is a numeric data window in which the numeric counterpart to a particular bar may be displayed. When the curve is first traced, the computer displays in this window the numerical parameter corresponding to each bar as it is defined. After the profile has been programmed, the numeric counterpart to any bar can be displayed by first touching a LOCK button that locks the curve, and then touching the bar in question. After the profile has been set, the user may wish to alter it in certain respects. One way, of course, is to simply repeat the above-described programming procedure. Another is to adjust the height of a particular bar. This can be accomplished in one of two ways. The first is simply to touch the bar to be altered. The height of the bar tracks movement of the user's finger. The second way of adjustment is to first select a bar to be adjusted by repeatedly touching (or pressing and holding) a Right Arrow button until the desired bar is highlighted. (The Right Arrow button causes highlighting to scroll through the bars, left to right, and cycles back to the left-most bar after the right-most bar. The highlighting indicates the bar that is selected.) The numeric parameter corresponding to the selected bar is displayed in the numeric data window. This value can then be adjusted by Up and Down arrow keys that cause the displayed parameter to increase and decrease, respectively. In the preferred embodiment, the Up and Down arrow keys cause the sodium parameter to change in steps of 0.1 mEq/L, one-tenth the resolution provided in the original data entry procedure. A similar ratio holds with other parameters programmed in this fashion. Again, the ENTER button is pressed to complete the programming operation. As with other parameters, profiled parameters must also be Verified before they take effect. After the above-detailed data profiling operations are completed, data corresponding to the programmed profile is stored in the computer's memory. Periodically, such as once every fifteen minutes, a timed interrupt in the system's software program causes the computer to poll this memory for the value of the programmed parameter for the next time interval (here fifteen minutes). The physical parameter is adjusted accordingly using conventional adjustment mechanisms. Once treatment has begun, the system only permits bar graph-bars corresponding to upcoming time intervals to be programmed. Bars corresponding to past time intervals reflect treatment history and cannot be changed. To readily distinguish past from future, the bars corresponding to each are displayed in different colors. In all aspects of the interface, the user is guided from one touch to the next by a feature of the preferred embodiment wherein the button that the user is most likely to press next is highlighted. For example, when the machine is in Rinse mode and is nearing completion of these operations, the Self-Test button is highlighted, indicating that this is the next likely operation. Similarly, when the Self-Test operation is nearing completion, the Prime button is highlighted. By this arrangement, even novice users are easily guided through the machine's various phases of operations. In addition to the above-described user interface, communications with the dialysis machine can also be effected by an RS-232C serial data interface 530 and by a data card. Data cards (also known as memory cards or RAM cards) are known in the art, as represented by U.S. Patents 4,450,024,4,575,127,4,617,216,4,648,189,4,683,371,4,745,268, 4,795, 898,4,816,654,4,827,512,4,829,169,and 4,896,027 he disclosures of which are incorporated herein by reference. In the preferred embodiment, a data card can be used both to load treatment parameters into the machine and to download logged patient parameters from the machine for therapy analysis. Among the treatment parameters that can be provided to the machine by a data card are the ultrafiltration profile, the sodium profile, the bicarbonate profile, the blood pump flow rate, the treatment time, the desired ultrafiltration removal volume, the dialysate flow rate, the dialysate temperature, the blood pressure measurement schedule and alarms, and the heparin prescription. Among the patient parameters that are logged by the machine and that can be downloaded to a memory card for later therapy analysis are: temporal data relating to dialysate temperature and conductivity (both of which are typically measured at several points in the fluid circuit), venous, arterial, dialysate, systolic and diastolic pressures, blood flow rate, total blood processed, ultrafiltration rate, total ultrafiltrate removed, the ultrafiltrate goal, and the machine states. Additionally, the data card can convey to the machine certain codes that, when read by the machine, initiate special operations. These operations include calibration mode, technician mode, enabling the blood pressure monitoring function, modifying the parameters transmitted over the serial port for diagnostics, and others. The card used in the preferred embodiment is commercially available from Micro Chip Technologies under the trademark ENVOY and provides 32K of data storage in EEPROM form. Similar cards are also available from Datakey. When a card containing treatment parameters is read by the machine, the stored parameters do not immediately take effect. Instead, each is displayed on the screen and the operator is asked, through prompts that appear on the screen, to verify each individually. If a parameter is not verified, that aspect of machine operation is left unchanged. In the preferred embodiment, the parameters loaded from a memory card are displayed in their respective parameter windows and each is highlighted in sequence, with the system soliciting verification of the parameter in the highlighted window. In alternative embodiments, a plurality of parameters are be displayed for verification as a group. Returning now to FIG. 7, the computer system 500 that controls the user interface and other aspects of machine operations is built around an IBM-AT compatible motherboard 502 that includes an Intel 80286 microprocessor 504 and 256K of RAM 506 interconnected by an AT bus 508. Into expansion slots in this motherboard plug seven additional boards: a memory board 510, an RS-232 board 512 (which is dedicated to controlling a patient blood pressure momtor), an Input/Output system controller board 514, an ultrafiltration/proportioning system controller board 516, a blood pump system controller board 518, a touch screen interface board 520, and an EGA display adapter board 522. The computer system has five primary responsibilities: (1) user interface (i.e., through the CRT display and the touch screen); (2) state machine control (i.e., rinse, prime, dialyze, etc.); (3) microcontroller communications; (4) conducting of self-tests; and (5) calibrations. These functions are carried out by the AT-computer in conjunction with the above-listed expansion boards. Turning now to a more detailed description of each component, the memory board 510 contains the firmware for the 80286 microprocessor. The memory board can hold up to 384K of read only memory (ROM) 524 and 8K of nonvolatile static random access memory (RAM) 526. Also included on the memory board is a memory interface 528, an RS- 232C interface 530, and a time of day clock 532. The interface 528 is conventional and simply handles the addressing of memories 524 and 526. The RS-232C interface is for general purpose use (as opposed to the RS-232 interface 512 that is dedicated to use with a blood pressure momtor) and is typically used to remotely provide programming instructions to, and to interrogate patient treatment data from, the machine. The time of day clock 532 is used, inter alia, to time/date stamp patient data as it is acquired and to provide a time of day reference by which automated machine operations (such as unattended warm-up) may be controlled. The host control program is written in the 'C programming language. This code is compiled, linked and loaded into the ROM 524. The purpose of the host control program is to: Gather data from the Input/Output, Blood Pump and Ultrafiltration controller sub-systems, and output control functions to the various controller sub¬ systems; Input data from the user interface touch screen; Monitor the data for violation of alarm limits and usage operating conditions, and to set the appropriate program alarm condition indicators; Evaluate the data to determine the current operating state of the control program, i.e., Standby, Rinse, Self-Test, Prime, and Dialyze; and Update the display data to the CRT portion of the user interface. The RAM memory 526 is used to store calibration and machine parameters. In order for the memory board to operate without conflict with the host AT- motherboard, the motherboard must be modified by disabling the data buffers above address 256K. The memory controller's ROM space is mapped into the address space from 256K to 640K, with the portion between 256K and 312K being mapped also to address range 832K to 888K. The code at this upper address range is configured as a BIOS extension, which results in the ROM being given control by the motherboard's BIOS software following power-on initialization. Unlike the standard BIOS extensions, the host code does not return to the BIOS after being given control. The RS-232 board 512 permits computerized remote control of a patient blood pressure monitor. Suitable blood pressure monitors that are adapted for RS-232 control are available from Spacelabs of Hillsboro, Oregon. The touch screen interface board 520 is commercially available as part number E271-400 from Elographics and is designed to operate with the E272-12 touch panel 501 that is used in the preferred embodiment. The function of the interface board 520 is to translate signals returned from the touch screen into a data format suitable for use by the 80286 microprocessor 504. Terminate and stay resident software for driving the interface board 520 is available from Elographics. The EGA display adapter card 522 is conventional and provides RGB signals to the CRT display 503. The three microcontroller subsystems (the blood pump system 518, the ultrafiltration/proportioning system 516, and the I/O system 514) are particularly detailed in the following discussion. Blood Pump System The blood pump controller 518 is built using an Intel 8040 microcontroller and is responsible for controlling or monitoring five subsystems. They are (1) the blood pump; (2) the blood pressure measurement (arterial, venous and expansion chamber); (3) heparin delivery; (4) level adjust; and (5) ambient temperature. The blood pump controller operates in conjunction with a blood pump power board (not shown) that controllably provides operating power to devices controlled by the blood pump controller. In still more detail, the primary operation of the blood pump controller 518 is to supply power to the blood pump motor such that the pump head will turn and pump at a rate selected by the operator. The blood pump controller system consists of the following major components: Description Location User parameter entry Host controller Software Speed Error Control Blood Pmp Controller Hardware Speed Error Control BP Power Board Optical speed sensor On motor shaft Motor Power Driver Circuitry BP Power Board The operator enters the desired blood pump rate information on the video screen (CRT) touch panel. The host controller (80286 microprocessor) converts this information to the appropriate motor rate which it then sends to the Blood Pump controller (8040) on the Blood Pump Controller board. The 8040 controller converts the motor rate information to an analog level, which is fed to a motor speed control IC (LM2917-8) on the Blood Pump Power board. An optical speed sensor is mounted on the rear shaft of the blood pump motor, with an LED being positioned on one side of the shaft, and a photo transistor on the opposite side. The shaft has two holes drilled through it, with each hole being perpendicular to the shaft and to each other. This results in four optical pulses received per shaft revolution. This tachometer signal is monitored by both the LM2917-8 and the 8040 controller. The LM2917-8 provides quick responding speed control by comparing the motor speed with the desired speed information from the 8040. The result of this comparison is an error signal which provides an input to the motor power driver circuit. The motor power driver provides a +24 V pulse width modulated drive to the motor at a frequency of approximately 30 KHz. This drive is current limit protected, to prevent damage in the event of a stalled motor. The 8040 compares the tachometer motor speed information with the desired speed commanded by the 80286 and corrects the level provided to the LM2917-8 accordingly. In this way the 8040 guarantees the ultimate accuracy of the pump, with the LM2917-8 circuit not requiring any calibration. In addition, the 8040 can monitor for control problems, such as under speed or over speed, which may result from failures in the LM2917-8 or motor drive circuitry. The 8040 also monitors the motor speed independent of the tachometer signal using the motor's back EMF. Periodically (every 0.5 second) the motor drive is turned off for approximately 6 millisecond and the voltage at the motor terminals is measured. Though this does not result in as precise an indication as the tachometer signal, gross failures can be determined, such as when the tachometer signal is lost. Blood Pressure Measurement The blood pressure measurements include the venous, arterial and expansion chamber (for Single Needle treatment) pressures. All three measurement systems include identical hardware. Each pressure is sensed by a SenSym SCX15 gauge sensing pressure transducer mounted to the Blood Pump Power board. Each transducer is connected to a differential amplifier designed to provide a measurement range from -400 to +600 mmHg. The output of each amplifier drives an A/D input channel of the Blood Pump Control system, at which point it is converted to a 10 bit digital value. The calibration of each of the pressure inputs is handled entirely in software, requiring that the design of each amplifier guarantee that its output remain within the A/D input range of 0 to +5 V over the input pressure range and over all component tolerances. Heparin Delivery Heparin delivery is accomplished by stepping a stepper motor which rotates the pinion of a rack and pinion mechanism. The pinion moves the rack, and the mechanical fixture is such that the plunger of the heparin syringe moves the same distance. The stepper motor is controlled by the 8040 microcontroller located on the Blood Pump Controller board 518. When the operator enters a desired heparin rate in milliliters per hour (mL/h) via the front panel touch screen, the host 80286 microprocessor converts this information to the appropriate motor step rate and passes it to the Blood Pump microcontroller. The Blood Pump microcontroller outputs a motor step rate logic signal to the Blood Pump Power board where the heparin motor power drive circuitry energizes the appropriate stepper motor coil. The motor step rate logic signal from the Blood Pump microcontroller 518 is also input to the I/O Controller board 8040 microcontroller 514. The I/O microcontroller monitors this signal to determine if the heparin motor is going the appropriate speed. If it determines that an overspeed condition exists, it disables the heparin motor via a disable line that goes to the Blood Pump Power board. There are two optical sensors to provide information about the state of the heparin pump. The disengage sensor detects when the front panel syringe holder arm is in the disengage position. The end-of-stroke sensor detects when the pinion is raised up on the rack, which occurs when the gear teeth are not meshed. This is an indication of an overpressure condition. The Blood Pump microcontroller monitors the state of these sensors and passes the information to the host 80286 microprocessor. Level Adjust The level adjust system allows the operator to change the blood level in the arterial and venous drip chambers. A level up and level down button exists for each drip chamber. The 8040 microcontroller on the Blood Pump Controller board 518 monitors the button positions. When a button is pressed, a valve selects that drip chamber and power is supplied to the motor such that the pump head of a peristaltic pump rotates to apply a positive or negative pressure to the drip chamber. The software logic only accepts one button press at a time. If two buttons are pressed simultaneously, both are ignored. The motor drive circuitry is located on the Blood Pump Power Board. The motor may be driven in the forward or reverse direction. A direction signal from the Blood Pump Controller Board, along with a pulse width modulated motor rate signal controls two bipolar half bridge motor drivers. Both half bridge motor drivers receive the same motor rate signal, while the motor direction signal is high at one and low at the other to determine the direction the motor runs. The half bridge drivers provide a 24 V pulse width modulated drive voltage of approximately 30 KHz to the motor. Other details of the level adjusts are described hereinbelow. Ambient Temperature Control The purpose of the cabinet cooling system is to keep the internal temperature of the cabinet lower than the 50 °C maximum temperature at which the electronic components are guaranteed to operate. (Most electronic components are rated to operate at 60 °C, the exception is the solid state relay used for heater control.) A fan is located at the base of the cabinet and exhausts the warm cabinet air. An intake vent for the ambient room temperature is located below the CRT on the back of the machine. The cabinet cooling system consists of the following major components: Description Location Cabinet Fan Base of cabinet Blood Pump Temperature IC Blood Pump Power Board Misc I/O Temperature IC Misc I/O Electronics Pwr Bd. Software Fan Control Host controller Cabinet Fan Drive Blood Pump Power Board The two LM35DZ temperature ICs are located on the Blood Pump and Misc I/O Electronics power boards. This IC outputs a voltage linear with temperature in °C (10.0 mV/ °C). These temperature readings are input to the fan control software. The fan control software always responds to the higher of the two temperatures. Typical values are as follows. At 46 °C the fan turns on in the low speed mode and at 48 °C it turns on in the high speed mode. There is a 2 °C of hysteresis at these threshold temperatures, i.e., the fan returns to low speed at 46 °C and turns off at 44 °C. In addition, at 60 °C a cabinet temperature alarm occurs that results in the machine shutdown state. The fan power driver is located on the Blood Pump Power board. A motor rate signal from the Blood Pump Controller board determines the duty cycle of a 30 KHz pulse width modulated signal. This signal is input into a passive filter to provide a DC signal to the motor. UF/Proportioning Control System The ultrafiltration/proportioning (UF/PROP) controller 516 is built using an Intel 8040 microcontroller and is responsible for controlling the systems associated with ultrafiltration and dialysate preparation. This controller operates in conjunction with an ultrafiltration/ proportioning power card (not shown) that controllably provides operating power to devices controlled by the ultrafiltration/proportioning controller. Six subsystems are controlled or monitored by the UF/Proportioning controller 516. They are: a. Temperature Control b. Proportioning Control c. Flow Control d. UF Removal Control e. Conductivity Monitoring f. Temperature Monitoring Temperature Control The UF/PROP system 516 controls the dialysate temperature by enabling a zero voltage crossing solid state relay, which provides the power to a 1500 W heater (item 18 in FIGS. IA and IB), with a 5 Hz pulse width modulated digital signal (heater-enable signal). The duty cycle of the heater-enable signal is updated every 0.5 seconds with the sum of the past duty cycle and a temperature error correction value. The correction value is proportional to the difference between the desired temperature (stored by the host) and the measured control temperature (measured immediately down stream of the heater housing). The host-determined desired temperature is calculated using the user-entered desired temperature and the stable "B" conductivity probe (item 46 in FIGS. IA and IB) temperature. If the stable "B" conductivity probe temperature is different from the user- entered desired temperature by more than 0.05°C, then the control temperature threshold sent to the UF/PROP controller is updated so that the "B" conductivity probe temperature will equal the user-entered desired temperature. In this way, the dialysate temperature at the "B" conductivity probe will be adjusted so that flow rate and ambient temperature effects on the "B" conductivity probe temperature (and the primary temperature, displayed on the video screen) will be compensated. This control temperature adjustment is performed a maximum of every 5 minutes. Proportioning Control The UF/PROP system 516 controls the concentrate(s) to water proportioning ratios by controlling the dialysate flow rate, the "A" concentrate flow rate, and the "B" concentrate flow rate. The "A" and "B" concentrate pumps (items 22 and 40, respectively, in FIGS. IA and IB) are stepper-motor driven (each by a cam/follower) diaphragm pumps which deliver a calibrated volume of concentrate per stepper motor revolution. Their flow rates are controlled by controlling the speed of the stepper motors. The concentrate pumps are umdirectional and utilize the proper actuation of a three-way valve for their intake and output pumping strokes. The intake stroke is synchronized by a signal that is generated by an optical interrupter sensor which senses a pin mounted on the cam of the pump assembly. Further details pertaining to the "A" and "B" concentrate pumps are described hereinbelow. The UF/PROP controller 516 utilizes the fact that the stepper motors require 200 motor steps per revolution (between each synchronization pulse) to check the concentrate pumps for stepping errors. If late or early synchronization pulses are received then the associated error conditions are reported on the screen during the Technician Mode of the machine (further details provided hereinbelow). During the Rinse Mode, the host determines the concentrate treatment mode based on the "A" and "B" rinse port interlock information (further details provided hereinbelow). If the "B" concentrate line (FIGS. IA and IB, item 104) is not coupled to the "B" rinse port (FIGS. IA and IB, item 30), a bicarbonate treatment is initiated by setting the proportioning ratios and the conductivity alarm limits appropriately. Conversely, if the "B" concentrate line is coupled to the "B" rinse port, an acetate treatment is initiated (further details provided hereinbelow). Using the dialysate flow rate and the proportioning ratios, the host determines the associated concentrate flow rates and stores the two concentrate pump speeds in the UF/PROP controller. The proportioning mode (for acetate or bicarbonate dialysis) cannot be changed in the Prime or Dialyze Modes. The control of the dialysate flow rate is described in the following Flow Control section of the UF/PROP controller description. Flow Control The UF/PROP system 516 controls the dialysate flow rate by controlling the time between the switching of the flow equalizer (FIGS. IA and IB, item 54) valves (provided that all the fluid within the flow equalizer chambers has been exchanged). The average flow equalizer volume is calibrated (measured) during the Calibration Mode. The time between the switching of the flow equalizer valves (FIGS. IA and IB, items 142- 149) is scaled by the host (according to the calibration constant) and stored in the UF/PROP controller so that the user entered desired dialysate flow rate is achieved. To guarantee the complete fluid transfer to/from the flow equalizer chambers (FIGS. IA and IB, items 126, 128) two flow sensors (FIGS. IA and IB, items 58, 59; described in further details hereinbelow) are located within the fluid path to detect the absence of dialysate flow. The time at which both sensors detect no flow has been defined as end of stroke. The end-of-stroke time has been defined as the time between the moment an end of stroke was sensed and the desired flow equalizer valve switch time. Since the supply pump speed controls the instantaneous dialysate flow rate, the UF/PROP controller servos the supply pump speed in order to maintain a consistent end-of-stroke time. Since the flow equalizer volume is calibrated and the end-of-stroke time is controlled, the UF/PROP system 516 can accurately control the dialysate flow rate to the user- entered value. UF Removal Control The UF/PROP system 516 controls the UF removal rate by controlling the time between the switching of the UF flow meter valves (FIGS. IA and IB, items 142-149). The UF/PROP system controls the accumulated UF volume by counting the number of UF flow meter strokes. Since the UF flow meter volume is calibrated (measured) in the Calibration Mode, the rate which the host (80286 microprocessor) passes to the UF/PROP controller (number of seconds between valve switches) is scaled so that the user-entered UF removal rate is achieved. In the same way, the user-entered UF removal volume is scaled by the UF flow meter's stroke volume to a number of UF meter strokes. The host passes the number of UF meter strokes to the UF/PROP controller. The UF/PROP controller will then switch the UF flow meter valves and decrement the stroke number, at the desired rate, as long as the stroke number is greater than zero. The host can then calculate the UF removal volume accumulated by subtracting the number of UF flow meter strokes remaining, scaled by the stroke volume, from the operator-entered desired UF removal volume. The accumulated volume is displayed during the Dialyze Mode. This value remains during the Rinse Mode and is cleared upon the entry of the Self Test Mode. In Rinse, the UF removal rate is 3.6 L/h and the video screen indicates no UF volume accumulated. During the Self Test Mode, no UF removal occurs except during specific self tests performed by the machine (no UF volume is accumulated). In the Prime Mode, the UF removal rate is set by the operator and is no greater than 0.5 L/h (no UF volume is accumulated). During the Dialyze Mode, the UF removal rate is set by the operator and is limited to between 0.1 and 4.00 L/h. For UF removal to occur in the Dialyze Mode the following conditions must be met: 1. A target UF volume and a UF rate have been entered (or treatment time and target UF volume have been entered and a machine-calculated UF rate is used). 2. The blood pump is pumping. 3. The target UF volume has not been reached. Conductivity Monitoring Conductivity is used as a measurement of the electrolyte composition of the dialysate. Conductivity is usually defined as the ability of a solution to pass electrical current. The conductivity of dialysate will vary due to the temperature and the electrolyte composition of the dialysate. The UF/PROP system measures conductivity at two locations (conductivity probes) in the hydraulic circuit using alternating-current resistance measurements between each of the conductivity probes' electrode pairs. The two flow path locations are at the "A" conductivity probe (FIGS. IA and IB, item 38) and the "B" conductivity probe (FIGS. IA and IB, item 46). One electrode of each of the probes is stimulated with a 1 kHz ac voltage while the other is held at virtual ground (current sense electrode). Two voltages are produced by the resistance measurement circuit. The ratio of the voltages is proportional to the resistance of the respective probe. The resistance of the probes has been modeled as a function of temperature and conductivity. Since each of the conductivity probes contains a thermistor, the temperature at each of the probes is known. Using the model that was derived for the probes, the temperature measured at the probes, and the resistance measured at the probes the conductivity is calculated. Each conductivity probe is calibrated during the Calibration Mode, at which time the resistance of each probe is measured at a known conductivity and temperature (by the use of an external reference meter) for the scaling of the probe's base resistance in the relationship described previously. The UF/PROP system 516 generates alarms from the measured conductivities at the "A"and "B"probes. Since these conductivity alarms are used to verify the proportioning ratios, the alarms are generated by testing the "A" conductivity and the "B'portion of the total conductivity ("B" portion = "B" conductivity - "A" conductivity). The alarm limits are determined from the concentrate treatment mode and are stored in the UF/PROP controller by the host. Therefore only during a bicarbonate dialysis treatment would the host store a non-zero expected "B" conductivity portion. The host determines the concentrate treatment mode during the Rinse Mode by reading the "A" and "B" rinse port interlock information. If the "B" concentrate line is not on the "B" rinse port, a bicarbonate treatment is initiated by setting the proportioning ratios and the conductivity alarm limits appropriately. Conversely, if the "B" concentrate line is coupled to the "B" rinse port, an acetate treatment is initiated. Upon exiting the Rinse Mode the concentrate treatment mode is set for the remainder of the dialysis treatment (concentrate treatment mode is only adjusted in the Rinse Mode). Temperature Monitoring The UF/PROP system 516 measures the dialysate temperature at three locations in the fluid path. The first location is directly after the heater (FIGS. IA and IB, item 18) and this thermistor, the heater thermistor (FIGS. IA and IB, item 20), is used for the primary temperature control feedback. The next two thermistors (FIGS. IA and IB, items 110 and 124) are contained in the "A"and "B" conductivity probes (FIGS. IA and IB, items 38 and 46, respectively). These temperatures are used to temperature-compensate the "A"and "B" conductivity measurements. The "B" conductivity temperature is also used to generate a backup high temperature alarm. The temperature measurement circuit used throughout the machine consists of a voltage divider with a Thevenin Equivalent circuit of 30620 in series with a 7.55 V supply. The voltage divider circuit when connected to the thermistor used in the temperature measurement system referenced to ground produces the voltage to temperature relationship of T( °C) = (3.77V-VtempX12.73)( °C/V) + 37 °C. The tolerance on the component parameters used in the temperature measurement system can be as great as 10%, therefore the temperature-to-voltage relationship must be calibrated. Calibration of the temperature measurements is a two-point calibration done at 30 and 40 °C. The calibration procedure results in a calibration constant for both the slope and the offset for each temperature probe/circuit. In the UF/PROP controller the voltage described above as Vtemp is measured for the three temperature probes in its system on a scheduled basis (every 0.2 seconds for the "A"and "B" temperatures and every 1 second for the heater temperature). The temperature that is displayed on the video screen is measured at the primary ("dialysate") conductivity probe, located just before the bypass valve (see FIGS. IA and IB), by the I/O controller. Input/Output Control System Nine subsystems are controlled or monitored by the I/O control system 514. They are: • Air detector • Blood leak detector • Dialysate pressure monitor • Heparin pump overspeed monitor • Bypass system and flow sensor • Conductivity monitor • Temperature monitor • Line clamp • Power fail alarm Air Detector The air detector assembly utilizes a set of 2 MHz piezo crystals. One crystal functions as an ultrasonic transmitter and the second crystal functions as a receiver. The transmitter and receiver are housed in separate but identical assemblies. There is a distance of 0.20 inch between these assemblies into which the venous blood line is placed during dialysis. The emitter is driven by a 2 MHz squarewave that is derived from a crystal oscillator located on an I/O Electrical Power board 536 that is connected to the I/O controller 514 by a ribbon cable. When there is fluid in the blood line between the crystal assemblies, the 2 MHz signal is coupled to the detector assembly. The return signal from the detector assembly is amplified and rectified by two independent circuits also located on the I/O Electrical Power board 536. These dc output levels are monitored using two different methods. The first method is the software generated alarm and the second is the hardware generated alarm. Software Alarm Detection (Primary Alarm) One output is fed from the I/O Electrical Power board 536 to an A to D converter and read by the 8040 microcontroller on the I/O Controller board 514. This value is averaged over a 400 msec time period and reduced by multiplying it by 15/16 and subtracting 50 mV (for noise immunity). This new value is then converted back to an analog level to be used as an alarm limit. This software generated limit is compared to the rectified dc signal from the detector. The output state of this comparator is monitored by the on-board 8040. When the unaveraged signal falls below the software generated limit for longer than a calibratable time period, an alarm occurs. Sensitivity of the software alarm is 10 microlitres at 300 mL/min blood flow. Hardware Alarm Detection (Secondary Alarm) The hardware alarm is redundant to the software generated alarm. This alarm uses two comparators on the I/O Electrical Power board 536. One comparator looks for a minimum dc level from the rectified detector signal which guarantees the presence of fluid in the venous tubing. The second comparator is ac-coupled to react to a large air bubble in the tubing. Sensitivity of this detector is approximately 300 microlitres at 300 mL/min blood flow. Both comparator outputs are wire OR'd together so that either comparator will generate an alarm. Blood Leak Detector The detector assembly consists of a high-efficiency green LED and a photocell. These components are installed into a housing through which spent dialysate passes. Both of these components connect to the I/O Hydraulic Power board. The LED is connected to a voltage-to-current converter on an I/O Hydraulic Power board 534 (which is also connected to the I/O controller 514 by a ribbon cable). The input to this circuitry comes from the I/O Controller board 514. The photocell is tied to the +5 V reference supply through a 750k ohm resistor. This provides a voltage divider which is monitored on the I/O Controller board. The current through the LED is adjustable and controlled via a D to A output from the I/O Controller board. The light intensity of the LED is adjusted to illuminate the photocell to a point where its resistance is below the alarm threshold. During a blood leak, the presence of blood in the housing attenuates the light striking the photocell which causes an increase in both the photocell resistance and voltage. The increase in voltage (monitored by the microcontroller on the I/O controller board) results in a blood-leak alarm. Further details on the blood-leak detector are provided hereinbelow. Dialysate Pressure Monitor The dialysate pressure is sensed by a resistive bridge pressure transducer (FIGS. IA and IB, item 64) located just upstream of the dialyzer. The transducer is connected to a differential amplifier circuit on the I/O Hydraulics Power board 534 designed to provide a measurement from -400 to +500 mmHg. The differential amplifier circuit also has an offset input that comes from a software calibratable variable, DAC OFFSET. The output of the amplifier drives an A/D input channel of the I/O Controller system, at which point it is converted to a 10 bit digital value. The calibration of the pressure input is handled entirely in the software, requiring that the design of the amplifier guarantee that the output remains within the A/D input range of 0 to +5 V over the input pressure range and over all component tolerances. Heparin Pump Overspeed Monitor To ensure that the heparin pump does not exceed its set speed, the I/O controller board software monitors a clock signal from the Blood Pump Controller board that is equivalent to l/4th the heparin pump step rate. In the event that a heparin pump overspeed occurs, the I/O controller board disables the heparin pump via a hardware line that goes to the Blood Pump Power board and notifies the host of the alarm. To determine if the heparin pump is running at the correct speed, the time required for ten clock signals to occur is measured (and stored in variable HEPTIMER) and compared against a minimum time period that is set by the host (HP_P_MIN). If the measured period is less than the host set limit, a normal-speed alarm occurs. The host is notified of the normal-speed alarm and the heparin pump is disabled via the hardware line to the Blood Pump Power board. When the heparin pump rate changes, the host resets the minimum time period, HP_P_MIN, and the I/O controller waits for the first clock signal to restart the timer (this first clock is not counted as one of the ten). In this way, the alarm logic is resynchronized with the heparin pump stepper motor. The I/O controller board 514 also monitors the total amount of heparin delivered in the high-speed bolus mode. When it receives clock signals at a rate faster than a predetermined speed, it assumes the pump is operating in the high-speed mode. It has a high¬ speed counter, H_SPD_CNTR, that is set by the host. If more high-speed counts occur than are in the counter, a high speed alarm occurs. The host is notified of the high-speed alarm and die heparin pump is disabled via the hardware line to the Blood Pump Power board. Bypass System and Flow Sensor The bypass mode is initiated when a primary dialysate alarm is detected by the I/O Controller board, when a redundant dialysate alarm is detected by the UF/PROP Controller board 516, when die host requests bypass, or when the manual bypass button is pushed. The bypass valve (FIGS. IA and IB, item 66) is in the bypass position when deenergized. It is driven from the nominal +24 V supply with a straight on/off transistor control on the I/O Hydraulics Power board. To verify that there is not a failure in the bypass system, a flow sensor (FIGS. IA and IB, item 62) located upstream of the dialyzer and just downstream of the bypass valve checks for flow. If flow exists during bypass, a Bypass Fail Alarm is triggered and die machine is put in the safe, nonfunctional, Shutdown state. If there is no flow when not in the bypass mode, a No Flow alarm is generated. (Further details on the flow sensor are provided hereinbelow.) This flow sensor consists of two thermistors. The first is a reference thermistor used to determine the fluid temperature. The second thermistor uses thermal dilution to sense the fluid flow. The voltage outputs from the thermistors on the I/O Hydraulics Power board 534 drive A/D input channels on the I/O Controller board where diey are converted to 10 bit digital values. A software algorithm in the I/O Controller code uses these inputs to determine the flow condition. The design of the voltage divider guarantees that the output remains within the A/D input range of 0 to +5 V over the input temperature/flow range and over all component tolerances. Conductivity Monitoring The dialysate conductivity probe (FIGS. IA and IB, item 60) comprises two stainless steel probes inserted into the flow path just prior to the dialyzer. The drive signal for the conductivity probes is a capacitive-coupled squarewave generated on the I/O Hydraulic board 534. This signal is sent to the conductivity probe and a monitor circuit. Both the monitor circuit and the return signal are rectified and filtered. These dc values are routed to I/O Controller board 514 along with the temperature signal. On the I/O controller board, the temperature, conductivity, and conductivity reference signals are input to an A-to-D converter that is monitored by the on-board 8040 microcontroller. The microcontroller calculates the temperature-compensated conductivity. This value is then displayed on die CRT as the conductivity in milliSiemens per centimeter (mS/cm). Temperature Monitoring The thermistor (FIGS. IA and IB, item 168) installed in the dialysate conductivity probe (FIGS. IA and IB, item 60) changes its resistance in response to changes in temperature. The values for dialysate conductivity and temperature measured at this probe are displayed on the CRT and are used to generate the primary alarms for patient safety. If either value is outside preset alarm limits, a bypass condition and an audio alarm occur. The thermistor is wired to a resistor divider network on the I/O hydraulic board. The output of this divider network is sent to the Miscellaneous I/O controller board 514 where it is monitored by the on-board 8040 microcontroller via an A-to-D converter network. From this information, the controller calculates the temperature using offset and gain parameters stored in the host from the calibration. Calibration of the temperature measurement is a two- point procedure done at 30 and 40 °C. Line Clamp The line clamp opens with a solenoid and clamps with a spring return. When the solenoid is not energized, the spring pushes the plunger away from the solenoid. This causes the plunger to clamp the blood tubing. When the solenoid is energized, it pulls die plunger in with enough force to overcome the spring force. This imclamps the blood tubing. In the event of a power failure, the solenoid is de-energized causing the blood line to be clamped. The solenoid is controlled by the line clamp board. On the line clamp board is a pulse-width modulated current controller. This circuit applies sufficient current to the line clamp solenoid to pull in the plunger. After pull in, the controller ramps the current down to a level capable of holding the line clamp open. This cut-back in current reduces the temperature of the solenoid, resulting in a more reliable device. Also located on the line clamp board, is a quick-release circuit which helps dissipate the power stored in the solenoid. The result of this circuitry is a quicker and more repeatable clamp time over the life of the machine. Control for the line clamp comes from the Miscellaneous I/O controller board 514 via the I/O power board 536. The control signal for clamp and unclamp is optically coupled on die line clamp board. This provides electrical isolation between the high voltage used to operate the line clamp and the low voltage used for the control signals from the microprocessor. Power Fail Alarm The power-fail alarm circuitry is located on the Misc I/O Electrical Power board 536, and includes a CMOS power state flip flop powered by a 1 Farad (F) capacitor. The flip flop, which can be toggled by either the front panel power button or the 80286 system controller, provides the following functions: • Whenever power is not supplied to the machine (i.e., when the +5 V supply is off) and the flip flop is in the on state, power is supplied from the 1 F capacitor to the audio alarm device. Whenever power is supplied to the machine, the flip flop's output state is ready by die 80286, which provides indication of the intended machine power state. Also, when the flip flop is in the on state, power is supplied to the front panel power switch LED. • The first function listed above results in the power fail alarm. The alarm occurs either if the machine loses power while it is running, or if the front panel power button is pressed "on" when there is no power supplied to the machine. The alarm can be silenced by toggling the flip flop off via pressing "off" the front panel power button. Reference is made herein to seven appendices (A - G) which form part of the specification hereof and which further detail certain aspects of the preferred embodiment. Bypass Valve Flow Sensor The dialysis machine of the present invention includes a bypass valve flow sensor which is utilized to confirm that dialysate flow to the dialyzer is completely interrupted during bypass. The bypass valve flow sensor comprises a first thermistor 202 and a second dieπnistor 204, as shown schematically in FIG. 2. FIG. 2 also shows in simplified schematic form the flow equalizer 54, the bypass valve 166, and a dialyzer 208. The first and second thermistors 202, 204 are of a negative-temperature-coefficient (NTC) type known in the art. The first, or "sensing, "thermistor 202 is energized with a 20 mA constant current while the second, or "reference," thermistor 204 is driven with a negligibly small current. The electrical resistance of both thermistors 202, 204 is measured using electronic circuitry (not shown). The resistance R(T) of each thermistor 202, 204 at a given temperature T is determined by the following relationship: ROD = (K,) exp(-K 2 T) where K, and K 2 are constants. Hence, the thermistor resistance is a function of its temperature. Since the electrical power input to the reference thermistor 204 is negligibly small, the temperature of the reference thermistor 204 will be substantially equal to that of the liquid surrounding it, whedier flowing or not, at all times. The sensing thermistor 202, on the other hand, is powered by a substantial constant current. Hence, the sensing thermistor 202 will undergo appreciable self-heating. During conditions of no dialysate flow past the thermistors 202, 204, such as during bypass, the temperature of the reference thermistor 204 will be equal to the temperature of the dialysate surrounding the reference thermistor 204. However, the no-flow temperature of the sensing thermistor 202, as a result of self-heating, will be substantially greater than the temperature of the reference thermistor 204. During conditions when dialysate is flowing past the thermistors 202, 204, the temperature of the reference thermistor 204 will, again, be equal to the temperature of the dialysate. The temperature of the sensing thermistor 202, while greater than that of the reference thermistor 204, will be somewhat lower than the temperature thereof would otherwise be during no-flow conditions. This is because dialysate flowing past the sensing thermistor 202 will conduct a portion of the self-heating energy away from the thermistor 202, thereby lowering the temperature of the thermistor 202. The bypass flow sensor can detect flow as low as about 3 mL/min. Since the sensing thermistor 202 is driven with a constant-current source, the amount of power input into the thermistor 202 is limited according to die relationship P = I 2 R. As a result, the ultimate self-heating temperature achievable by the sensing thermistor 202 will self-limit, thereby protecting the sensing thermistor 202 from a damaging thermal runaway condition. The two thermistors 202, 204 are calibrated by measuring the electrical resistance across them individually under conditions of no dialysate flow at both 30 and 40 °C. A mathematical relationship is utilized during calibration which equates the resistance of the sensing thermistor 202 and the resistance of the reference thermistor 204 at any temperature between 30 and 40 °C. If Rh(t) represents the sensing thermistor resistance at T = t, and Rr(t) represents the reference thermistor resistance at T = t, then, at no dialysate flow, Rh(t) = A Rr(t) + B, where A and B are calibration constants determined by die equations shown below (since Rh(30), Rh(40), Rr(30), and Rr(40) are measured during calibration): Rh(30) = A Rr(30) + B Rh(40) = A Rr(40) + B Hence, if the thermistor resistances are equal, then the electronic circuitry (not shown) coupled to die thermistors 202, 204 recognizes such equal resistance as indicating a "no dialysate flow" condition. However, if the resistances of the first and second thermistors 202, 204 are not equal, which occurs when any dialysate flow (greater dian about 3 mL/min) is passing by the first and second thermistors 202, 204, the electronic circuitry recogmzes a "dialysate flow" condition. Therefore, whenever the machine is in bypass, if the electronic circuitry senses that the resistances across the first and second thermistors 202, 204 is unequal, indicating flow, the machine will trigger an alarm condition to notify the operator of failure of the bypass valve 66. The advantage of the bypass valve flow sensor 62 as described hereinabove is that it enables the dialysate bypass valve 66 to be tested functionally, i.e., via a determination of whedier or not the bypass valve 66 actually shut off the flow of dialysate to die dialyzer 208. This is the first known use of such a flow sensor in a hemodialysis machine. Other bypass valve sensors known in die relevant art merely test whether or not, for example, the bypass valve has been energized. One example of such a mechanism is a sensor that determines whether or not a solenoid controlling the valve has shifted position in response to application of current thereto. In the present invention, in contrast, the bypass valve flow sensor verifies that the bypass valve 66 has actually seated properly. No-Ultrafiltration-During-Bvpass Sensor This feature, shown schematically as item 70 in FIGS. 1 and 2, utilizes a first and a second thermistor 210, 212 in a manner similar to the bypass valve flow sensor 62 discussed above. The first and second diermistors 210, 212 are exposed to dialysate flowing through conduit 174 just downstream of the dialyzer 208 but upstream of die bypass line 166. This feature 70 is utilized during automatic testing of machine functions, as controlled by the machine's microprocessor. During such a test, dialysate flow is bypassed from die dialyzer 208. The flow equalizer 54 volumetrically matches the volume of dialysate that would ordinarily enter the dialysate compartment (not shown) of the dialyzer 208 with die volume of dialysate exiting the dialyzer 208. During bypass, the volume of dialysate passing through the bypass valve 66 and bypass line 166 is equal to the volume passing back through the flow equalizer 54 via line 158. Since the UF line 178 is occluded by the UF flow meter 76, any dialysate flow past the first and second thermistors 210, 212 in either direction must be due to dialysate flow passing through the dialyzer membrane (not shown) into the blood compartment (not shown) thereof or from the blood compartment thereof into the dialysate compartment thereof. If such flow is detected, the machine triggers an operator alarm. Automatic Testing of Ultrafiltration Function This feature is utilized during automatic testing of machine functions that occurs before the machine is used for patient treatment. This automatic test is controlled by the machine's microprocessor along with other self-test routines. One example of when ultrafiltration-function testing is automatically engaged is when the machine is in rinse and producing dialysate widiout any prevailing dialysate alarms such as temperature and conductivity. A complete self-test routine begins when the operator touches the "test" button on die touch screen before beginning a dialysis treatment. In order to test die ultrafiltration function, the dialysate lines 174, 206 (FIGS. 1 and 2) must be connected togedier, enabling dialysate to circulate therethrough without having to use a dialyzer. Because a dialyzer is not used, the flow equalizer 54 discharges a volume of dialysate into line 206 that is substantially equal to the volume of dialysate passing through line 174. Hence, a volumetrically closed loop is formed wherein dialysate exits die flow equalizer 54 through the outlets 156 thereof, passes through lines 206 and 174 coupled together, and reenters the flow equalizer 54 through the inlets 154 thereof. Included in this closed loop is die UF flow meter 76. The UF flow meter 76 permits a discrete volume of fluid to be removed from die closed loop. Also included in the closed loop is the dialysate pressure transducer 64. To perform the test, the UF flow meter 76 removes about 3 mL of dialysate from the closed loop. This removal of 3 mL is sufficient to lower the dialysate pressure measured at the transducer 64 by about 200 to 300 mmHg. If there are no leaks in the closed loop, this lowered pressure will remain substantially constant. The machine will momtor the depressed dialysate pressure for about 30 seconds during which die pressure must remain within a ±_ 50 mmHg limit of the initial low value. If die pressure rises and passes a limit, the machine will trigger an operator alarm. Automatic Setting of Proportioning Mode Based Upon Connection of Concentrate Lines As described hereinabove, the concentrate rinse fittings, e.g., the "A"and "B" rinse fittings 28, 30, respectively (FIGS. IA and IB), are equipped with proximity sensors which sense whether or not die corresponding concentrate lines 94, 104, respectively, are connected thereto. Such information regarding whether or not a concentrate line is coupled to a corresponding rinse fitting is utilized by the machine's microprocessor to set the correct proportioning mode, e.g., acetate or bicarbonate dialysis. For example, during die machine's "dialyze" mode, if the machine's microprocessor receives a signal indicating that the "B" concentrate line 104 is coupled to die "B"rinse fitting 30, the machine will operate only the "A" concentrate pump 22. If the "B" concentrate line 104 is not coupled to the "B" rinse fitting 30, die machine will operate both the "A'and "B" concentrate pumps 22, 40, respectively. Such connections of the "A"and "B" concentrate lines 94, 104 also dictate die proportioning ratio, of "A" concentrate. During acetate dialysis, the volumetric ratio of "A" concentrate to dialysate is 1:35. During bicarbonate dialysis with Drake Willock brand concentrates, for example, the volumetric ratio of "A" concentrate to dialysate is 1:36.83. Hence, the machine automatically adjusts the pumping rate of the "A" concentrate pump 22 in response to whether or not the "B" concentrate line 104 is coupled to die "B" rinse fitting 30. The proximity sensors are shown in FIGS. 3A and 3B. FIG. 3A is an isometric depiction of, for example, the "A"and "B"rinse fittings 28, 30 situated on the right side 218 of the machine. On the annular surface 220, 222 of each rinse fitting is an angled depression 224, 226, respectively. As depicted in die right-side elevational view of die "A" rinse fitting 28 shown in FIG. 3B, beneath the angled depression 224 is a light-emitting diode (LED) 228 (shown schematically). A photosensor 230 of a type known in the art is also situated beneath die angled depression 224. The LED 228 is energized widi a pulsatile signal in the kilohertz range (so as to not be fooled by 60 Hz illumination). The LED 228 and photosensor 230 are oriented such that light 232 from the LED 228 passes through a first face 234 of the angled depression 224, is reflected off an annular surface 236 of a connector 238 on the end of die "A" concentrate line 94, passes through a second face 240 of the angled depression 224 to be sensed by the photosensor 230. So long as the photosensor 230 receives reflected light from the LED 228, the machine's microprocessor circuitry (not shown) "interprets" such a condition as indicating that the "A" concentrate line 94 is coupled to die "A" rinse fitting 28. If the light 232 does not reflect so as to impinge the LED 230, the microprocessor circuitry "interprets" such a condition as indicating that the "A" concentrate line 94 is not coupled to die "A" rinse fitting 28 but is coupled to, e.g., a supply of "A" concentrate. Prediction of Dialysate Conductivity The software controlling die operation of the machine's microprocessor includes a routine for predicting correct dialysate conductivity. Such predictions automatically reflect the particular brand of concentrate being used, since different groups of concentrate brands require different proportioning to yield a dialysate having a correct ionic strength and electrolytic profile. Various groups of concentrates are currently marketed. These include: (1) bicarbonate concentrates manufactured by Cobe (utilizable for variable sodium and variable bicarbonate dialysis and intended to be diluted at a ratio of 1 part "A" concentrate to 1.43 parts "B" concentrate to 45 parts dialysate); (2) bicarbonate concentrates manufactured by Drake Willock (utilizable for variable sodium dialysis only and intended to be diluted at a ratio of 1 part "A" concentrate to 1.83 parts "B" concentrate to 36.83 parts dialysate); and (3) acetate concentrates intended to be diluted at a ratio of 1 part acetate concentrate to 35 parts dialysate. The machine is "instructed" or programmed by a technician as to which brand of concentrate is being used. Such programming is done using the touch screen with the machine in the "calibration" mode. The software utilizes a different algorithm for each group of concentrates and for acetate or bicarbonate dialysis using concentrates within any single group, to calculate a baseline "calculated" conductivity value. Each algorithm requires that certain data be entered by die operator using the touch screen. For example, for bicarbonate dialysis, die machine will "ask" the operator to enter baseline (i.e., not adjusted up or down relative to a standard, or non-variable, proportioning ratio) values for sodium and bicarbonate ion concentrations. Assuming proper proportioning of the concentrates, the machine will determine a "calculated" dialysate conductivity. Before beginning a dialysis treatment, when die machine is proportioning concentrate and producing dialysate at the proper temperature, the touch screen will display an "actual" dialysate conductivity value as measured by the dialysate conductivity probe 60 (FIGS. IA and IB) and "ask" the operator to verify the correctness of that value against the value stated to be correct by the concentrate manufacturer on the concentrate label. If the operator responds that the displayed conductivity value is correct, the machine will compare the displayed "actual" value with the "calculated" value. If die "calculated" value is different from die displayed value, the machine will regard d e displayed baseline value as correct since the operator "told" the machine that die displayed value is correct. The machine will also calculate the ratio of the displayed baseline value over the calculated baseline value and will multiply any subsequently determined calculated value during the dialysis treatment by die ratio to obtain new "expected" conductivity values. For example, for variable sodium dialysis, the operator will program the variable sodium profile to be delivered to a patient over die course of the upcoming dialysis treatment. Whenever the machine changes the sodium concentration during the course of treatment as programmed by die operator, which accordingly changes the dialysate conductivity, the machine will redeteπnine a "calculated" conductivity value and apply said ratio to determine a new "expected" conductivity value. These expected conductivity values are used by the machine to calculate and set upper and lower conductivity alarm limits at .+.5% of the initial or adjusted "expected" conductivity value. For Cobe brand bicarbonate concentrates, die calculated baseline dialysate conductivity is determined by the following algorithm: calculated conductivity in mS/cm = [-.036 + 3.7x10^ ([Na + ] - 130)][HCO 3 -] + [14.37 + .101([Na + ] - 130)] where the operator enters the baseline concentrations of sodium and bicarbonate using me touch screen. For Drake Willock brand bicarbonate concentrates, die calculated baseline conductivity of bicarbonate dialysate is determined by the following algorithm: calculated conductivity in mS/cm = .1038[Na + ] - .54 where the operator enters the baseline concentration of sodium using die touch screen. For all brands of acetate concentrates, the calculated baseline conductivity of acetate dialysate is determined by die following algorithm: calculated conductivity in mS/cm = .0895[Na + ] + 1.41 where the operator enters the baseline concentration of sodium using the touch screen. For bicarbonate dialysis, the machine will also automatically set alarm limits around the conductivity measured at the "A" conductivity probe 38 (FIGS. IA and IB) in a similar manner. (During acetate dialysis, the conductivity at die "A" conductivity probe 38 is equal to the conductivity at the dialysate conductivity probe 60, so setting of alarm limits around the conductivity at die "A" conductivity probe is not necessary.) For bicarbonate dialysis, the machine "assumes" mat the "A" concentrate is being proportioned properly (at the correct proportioning ratio), based upon the operator having verified that the displayed dialysate conductivity value is correct. The machine determines a baseline "calculated" conductivity at die "A" conductivity probe based on baseline sodium and bicarbonate concentrate information provided by the operator via the touch screen. The machine then calculates a ratio of the actual conductivity as measured at d e "A" conductivity probe 38 over die calculated conductivity at the "A" conductivity probe. Then, whenever die machine changes the sodium concentration during the course of a dialysis treatment as programmed by die operator, the machine will determine a new calculated conductivity value and apply said ratio to determine a new "expected" conductivity value at the "A" conductivity probe. For Cobe brand bicarbonate concentrates, the calculated baseline conductivity at the "A" conductivity probe is determined by die following algorithm: calculated conductivity in mS/cm = [-.110 + 9.7xlCr ([Na + ] - 130)][HCO 3 -] + [15.04 + .105([Na + ] - 130)] where the operator enters the baseline sodium and bicarbonate concentrations using d e touch screen. For Drake Willock brand bicarbonate concentrates, die calculated baseline conductivity at the "A" conductivity probe is determined by the following algorithm: calculated conductivity in mS/cm = .1114[Na + ] - 5.90 where the operator enters the baseline sodium concentration using die touch screen. Controlling Flow Equalizer End-Of-Stroke Time As discussed hereinabove, the flow equalizer 54 (FIGS. IA and IB) operates via a four-phase cycle. In the first and tiiird phases, "pre" compartments 130, 132 and "post" compartments 134, 136 alternately fill and discharge dieir contents. In the second and fourth phases, the valves 142-149 controlling liquid ingress and egress from the "pre" and "post" chambers are all in die off position for about 125 msec. During these brief second and fourth phases, therefore, no dialysate is flowing to die dialyzer. Preferably, at the beginning of die second and fourth phases, the diaphragms 138, 140 will have already reached end of stroke. Further preferably, the diaphragms 138, 140 will have reached end of stroke at die same instant. End of stroke is the moment when, for example, the "post" compartment 134 has reached a completely full condition during a phase after starting from a completely empty condition at die start of the phase. In accordance with the above, it is preferable, for example, that the filling of the "post" compartment 134 reach end of stroke at the same instant as filling of die "pre" compartment 132 during a phase and diat filling of die "post" compartment 136 reach end of stroke at die same instant as filling of the "pre" compartment 130 during a different phase. Such simultaneous reaching of end of stroke eliminates ultrafiltration inaccuracies that otherwise could result if the "pre" and "post" compartments (e.g., 130 and 136) being, say, filled during a phase are not filled at exactly die same rate. Since valves 143, 144, 146, and 149 all turn on at the same instant mat valves 142, 145, 147, and 148 turn off, and vice versa, and since each pair of compartments 130, 134 and 132, 136 have exactly the same volume, it is possible to have pairs of compartments (130, 136, and 134, 132) reach end of stroke at die same instant. However, assuming mat each chamber 126, 128 has exactly the same flow restriction therethrough, achieving simultaneous end of stroke requires at least that pressures at die inlets 154 be matched and that pressures at the outlets 156 be matched. To achieve such pressure matching, the inlets 154 are provided with an input pressure equalizer 52 and the outlets 156 are provided with an output pressure equalizer 56, as shown in FIG. 4. The input pressure equalizer 52 is comprised of a flexible diaphragm 246 separating first and second enclosed cavities 248, 250. A stem 252 is attached to die center of die diaphragm 246 and terminates with a flow-restricting element 254. The output pressure equalizer 56 is likewise comprised of a flexible diaphragm 256 separating first and second enclosed cavities 258, 260. Extending from the center of the diaphragm 256 on both sides thereof are stems 262, 264, each terminating with a flow-restricting element 266, 268. Dialysate from die supply pump 42 flows unimpeded through the second cavity 250 on into a "pre" compartment of the flow equalizer 54. The first cavity 248 passes dialysate from die dialyzer to a "post" compartment of the flow equalizer 54. The first cavity 248 is also part of a loop including the dialysate pressure pump 72. This hydraulic configuration has been found to maintain identical pressures and therefore identical flow rates at the inlets 154 of the flow equalizer 54. With respect to the output pressure equalizer 56, when the pressure is equal in both cavities 258, 260, the flow rates through each is identical. When die pressure, say, in the first cavity 258 exceeds that in the second cavity 260, die flow-restricting element 268 impedes flow into line 150, tiiereby increasing the pressure in the second cavity 260. This hydraulic configuration has been found to maintain identical pressures and therefore identical flow rates at the outlets 156 of die flow equalizer 54. Therefore, since pressures and flow rates are identical as described above, bodi diaphragms 138, 140 (FIGS. IA and IB) come to end of stroke at the same time. The time required to attain end of stroke can also be controlled. The dialysate flow rate is set by the operator using the touch screen. This flow rate determines die shift frequency of the valves 142-149. The higher the dialysate flow rate, the more frequently die valves 142-149 shift. However, a machine malfunction or occlusion of a hydraulic line could cause an excessive end-of-stroke time for one or both diaphragms 138, 140. As discussed hereinabove, flow sensors 162, 164 (FIGS. IA and IB) are provided at the outlets 156 of die flow equalizer 54 for verifying when die diaphragms 138, 140 have reached end of stroke. When a diaphragm 138 or 140 has reached end of stroke, the corresponding flow sensor 162 or 164, respectively, sends a no-flow signal to the microprocessor. The flow sensors 162, 164 are each comprised of a reference and sensing thermistor (not shown) and work in a manner similar to the bypass valve flow sensor 62 and sensor 70 discussed hereinabove. If the valves 142-149 receive a signal from the microprocessor to shift before the flow sensors 162, 164 have detected end of stroke, die valves are prevented by die microprocessor from shifting until die end-of-stroke signal(s) are received by die microprocessor. In the event of an excessively long end-of-stroke time, the microprocessor triggers an increase in the pumping rate of the supply pump 42 to speed up die time to end of stroke. Controlling die end-of-stroke time not only increases the UF removal accuracy of die machine but also keeps dialysate flowing through the dialyzer as much as possible to maintain the desired osmotic gradient therein, and ensures accurate proportioning and mixing of concentrates with water to form dialysate. Timed Mode Initiate From Power-Off The microprocessor programming as described herein can be conventionally implemented to accomplish a timed mode initiation from a power-off condition. As is known in the art, machine disinfection, rinsing, and "coming up" on concentrate and temperature to produce dialysate in a condition to begin treatment are burdensome tasks that typically must be performed before the start of a treatment day. In large clinics having multiple dialysis machines, performing these tasks manually can require a substantial expenditure of time and other personnel resources. The electronics of the machine are continuously powered, even when die machine is "off, "unless die mains switch has been turned off or unless the machine's power cord is unplugged. As a result, the programming is readily adapted to include use of the key pad display on the touch screen by die operator to enter the desired time at which certain designated machine functions are automatically initiated. These functions include disinfection (such as heat-cleaning), rinsing, and beginning the production of dialysate at die desired temperature and ionic strength for dialysis treatment. Preservation of Machine Parameters During Brief Power-Off The hemodialysis machine of die present invention is provided widi a battery back-up which preserves certain operational parameters previously entered by die operator in die event of a temporary power interruption (less than about 20 minutes). Upon restoration of power, the machine is in the stand-by mode. All of the following parameters are saved in static RAM every 30 seconds or upon any major change in machine state. Upon restoration of power after less than 20 minutes after the last "time stamp" (time at which parameters were saved) by die machine, the following parameters are restored: Temperature correction Accumulated UF volume removed Desired UF removal volume UF removal rate UF override flag Current machine state Previous machine state Self-test pass/fail flag Time .stamp Prescribed dialysis time Elapsed treatment time Prescribed or elapsed treatment time display flag Manual or calculated UF rate display flag Heparin pump rate Accumulated blood Accumulated heparin Alarm window limits for conductivity, temperature, prescribed treatment time, heparin, etc. Profile settings for variable sodium and bicarbonate Upon restoration of power, the "dialyze" mode can be restored by the operator touching the appropriate "button" on the touch screen. Drip-Chamber Level Adjusters As is known in die art, hemodialysis treatment requires use of an extracorporeal blood-line set. Blood-line sets are available from a number of manufacturers in a variety of different configurations. Virtually all blood-line sets have at least a venous drip chamber. Usually, an arterial drip chamber is also included. The drip chambers serve several functions, including providing a means for removing air and foam from the extracorporeal blood before the blood is returned to die patient, and providing convenient sites at which extracorporeal arterial and venous blood pressure can be measured. A portion of the extracorporeal blood-line set, including drip chambers, is normally fitted to die front of a hemodialysis machine in an orderly and convenient arrangement using special clips and the like. Each drip chamber typically includes a short tubing segment terminated with a female fitting of a type known in the art as a Luer fitting. The female Luer is adapted for connection to a male Luer fitting on or near the front of die machine, thereby providing d e requisite connection of die drip chamber to a pressure- measuring component in die machine. Drip chambers must be provided with a means for adjusting the blood level therein, particularly to ensure that the blood level does not drop so low in the drip chamber that air becomes re-entrained in die blood. Dialysis machines as currently known in die art require that the operator manually rotate one or more knobs on the machine to rotate a peristaltic pump coupled to die corresponding drip chamber. Such a manual operation has proven to be a cumbersome annoying task, especially since die peristaltic pumps can be difficult to rotate. The machine of die present invention overcomes diis problem by providing, as shown schematically in FIG. 5, an electrically driven reversible positive-displacement pump such as a peristaltic pump 272 which replaces the hand-operated peristaltic pumps found on conventional hemodialysis machines. The peristaltic pump 272 is fitted with flexible tubing 274, one end 276 of which is open to the atmosphere. The opposite end 278 is coupled in parallel to an "arterial" valve 280 and a "venous" valve 282 coupled to an arterial drip chamber 284 and a venous drip chamber 286, respectively. The valves 280, 282 are preferably solenoid valves of a type known in the art. Each drip chamber 284, 286 is coupled via a corresponding Luer fitting 288, 290 to the corresponding valve 280, 282. Included upstream of each Luer fitting 288, 290 is a pressure-measuring device 292, 294, such as a pressure transducer, which communicates with die microprocessor (not shown). On the front of the machine are arterial and venous "up" buttons 296, 298, respectively, and arterial and venous "down'buttons 300, 302, respectively, which control operation of the corresponding valves 280, 282 and the peristaltic pump 272. For example, pressing the arterial "up "button 296 opens valve 280 and initiates rotation of die peristaltic pump 272 so as to raise the blood level in the arterial drip chamber 284. Pressing the arterial "down "button 300 opens valve 280 and initiates an opposite rotation of the peristaltic pump 272 so as to lower the blood level in the arterial drip chamber 284. The venous "up" and "down"buttons 298, 302 operate in die same way to control the blood level in die venous drip chamber 286. Increasing Dialysate Flow Velocity Through the Dialyzer Without Increasing Dialysate Flow Rate Most hemodialyzers currently in use are hollow-fiber types which generally have a more compact shape than parallel-plate or coil dialyzers used previously. Hollow-fiber dialyzers as known in the art typically comprise a bundle of fine hollow fibers, each fiber made of a semi permeable membrane material, encased in an outer cylindrical shell. The shell defines a space surrounding the fibers termed die "dialysate compartment" through which flows die dialysate prepared by a dialysis machine. The patient's blood is conducted through the lumens of the hollow fibers, propelled by a blood pump on the dialysis machine. Clearance of metabolic solutes from the blood through the fiber membrane to the dialysate depends on a number of factors, including die osmotic gradient across the semipermeable membranes. The osmotic gradient is dependent on a number of factors including ionic strength and ionic profile of the dialysate, dialysate flow rate through the dialysate compartment, and flow dynamics of the dialysate as it flows through die dialysate compartment. It is important mat the dialysate flow rate be high enough to expose the fibers to a sufficient supply of fresh dialysate to effect satisfactory clearance of toxic solutes from the patient's blood at a satisfactory rate. Any dead spaces or areas of blockage in the dialysate compartment which are not exposed to a continuous supply of fresh dialysate will adversely affect clearance. Such dead spaces can be reduced by merely increasing the dialysate flow rate. However, increasing the dialysate flow rate also increases die rate at which expensive dialysate concentrates are consumed. Therefore, it is advantageous, especially with large dialyzers, to increase dialysate flow velocity through die dialysate compartment without necessitating a corresponding increase in net dialysate flow through the dialysate compartment. An embodiment of the dialysis machine of the present invention solves this problem by incorporating a dialysate recirculation pump parallel with the dialyzer as shown schematically in FIG. 6. FIG. 6 depicts a typical hollow-fiber dialyzer 208 having an outer shell 306 defining a dialysate compartment. Extracorporeal blood is pumped by the machine's blood pump (not shown) through an arterial blood line 308 from the patient (not shown), through the hollow fibers (not shown) of the dialyzer 208, then returned through a venous blood line 310 to the patient. FIG. 6 also shows the "arterial" dialysate line 206 and "venous" dialysate line 174 (see also FIGS. IA and IB). A dialysate recirculation pump 312, such as an electrically driven gear pump, is coupled to die dialysate lines 206, 174 parallel with die dialyzer 208. The pump 312 can be driven with a variable-speed controller to adjust die pumping rate of die pump 312 relative to the flow rate of the dialysate as delivered by the dialysis machine (not shown). By recirculating a portion of die "spent" dialysate from the "venous" dialysate line 174 to the "arterial" dialysate line 206 for repassage through die dialysate compartment 306, the flow velocity of the dialysate d rough the dialysate compartment can be increased without making a corresponding increase in dialysate flow. Hence, it is possible with this feature to improve clearances with a particular dialyzer without increasing the consumption of expensive dialysate concentrates. Blood-Leak Detector Virtually all dialysis machines in current use employ a blood-leak detector to monitor dialysate flowing from the dialyzer for the presence of blood that might have leaked from the blood compartment into the dialysate compartment of the dialyzer. Most dialysis machines currently in use are capable of delivering only a fixed rate of dialysate flow, usually 500 mL/min. The blood-leak detectors on tiiose machines operate with a detection sensitivity that is set at a fixed level and not changed during the course of treating a patient or even a series of patients. At a dialysate flow rate of 500 mL/min, many conventional blood-leak detectors are set to detect blood having a 25 % hematocrit flowing at 0.35 mL/min into the dialysate. The dialysis machine of the present invention is capable of delivering dialysate at flow rates ranging from 500 to 1000 mL/min, adjustable in 100 mL/min increments. At various dialysate flow rates, a fixed leak rate of blood from the patient will be diluted a different amount by the dialysate. Therefore, a blood-leak detector having a fixed sensitivity level enabling it to detect a small blood leak in dialysate flowing at 500 mL/min may not be able to detect the same blood leak in dialysate flowing at 1000 mL/min. The dialysis machine of the present invention is provided with a blood-leak detector 78 employing a green LED 194 and a photosensor 196 (FIGS. IA and IB). (A green LED is used because of the strong absorbance of green light by red blood, yielding a greater contrast in the blood-leak detector between the presence and absence of blood.) The blood- leak detector has a sensitivity that is automatically adjusted in a proportional manner to sense a given leak rate of blood into dialysate having any dialysate flow rate between the 500 to 1000 mL/min adjustability range. Such automatic adjustment of the blood-leak detector sensitivity is performed by the microprocessor in response to the operator selecting a desired dialysate flow rate. The microprocessor adjusts the blood-leak detector sensitivity by altering the illumination level of the LED 194. Calibration Scheduler and Data Logger And Warning Message Logger The dialysis machine of die present invention has a technician-activatable "calibration" mode and is programmed to permit entry of calibration data, dates on which certain calibrations or adjustments are performed, and dates on which a particular dialysis center may desire to have certain calibrations or adjustments performed. The machine also automatically logs warning messages that can be of substantial help to a technician servicing the machine. The calibration mode can be activated by turning on an internal calibration switch. When the calibrations are completed, die machine is returned to die operational mode by turning off the internal calibration switch, and restarting the machine using die mains power switch. Upon entering die calibration mode, the touch screen displays tables of various calibrations and makes provision for the operator to enter data or dates pertaining to any of the listed calibrations. The machine includes a number of component monitors which are used by die microprocessor to note and "record" incidents wherein die respective components experience an operational anomaly of interest to a machine technician. For example, the "A" and "B" proportioning pumps 22, 40 (FIGS. IA and IB) are each driven with a stepper motor 90, 114, respectively. The stepper motors 90, 114 utilize 200 "steps" per revolution of die motor shaft. The stepper motors 90, 114 are provided with optical encoders by which the machine's microprocessor not only accurately monitors and controls die rate of concentrate delivery, but also monitors stepper motor operation. If the stepper motor experiences one full rotation per 190 "steps, "the microprocessor will "note" and log tiiis anomaly, even if no adverse effect on dialysate conductivity resulted dierefrom. A list of warning messages is provided below. In the list, system names above groups of messages are for reference only. Messages having parendieses indicate software functions. While actual failure of such functions would not be expected to occur during machine operation, the messages were useful while debugging die software. Messages having particular value to die technician, especially for troubleshooting mechanical malfunctions, are denoted with an asterisk. BLOOD PUMP SYSTEM "illegal qlen in BP_XMIT" "Blood Pump Low Speed" * "BP Control Shutdown" * "BP Command Error" * "Blood Pump Overspeed Alarm" * "BId Pmp Overspeed Alarm" * "Illegal index in bp_xmit()" "Illegal index in bp_input()" "long timer error" UF/PROP SYSTEM "Too much time between EOS signals" * "Early EOS detection" "UF SHUTDOWN" * "UF Command Error" * "UF Time scheduled Event Error" * "Unidentified Error in MISC_ERRFLG" "A Pump Noise" * "A Pump Missed Steps" "B Pump Noise" * "B Pump Missed Steps" * "C Pump Noise" * (for three pump system) "C Pump Missed Steps" "A temperature probe error" "B temperature probe error" * 10 SYSTEM "illegal qlen in IO_XMIT" "IO_XMIT: bad stat chnge %d, %d" "Illegal io_xmit() index" "Illegal index in io_input()" "Illegal index in ioport_xmit()" IOPORT SYSTEM "No 8255...port terminated " "Set_pwr_state: hw_ver= 1 " "Set_pwr_state: hw_ver=2" "Set_power_state: Can't power on" "Set_power_state: Can't power off" "Converse: illegal return from uccom()" "Switch failure in reset_port() function" "Command buffer full in add_cmd()" "Unrecognizable command in make_cmd()" "Illegal number of data bytes in make_cmd()" "Illegal number of data bytes in make_cmd()" UF Profiling The UF profiling feature according to die present invention provides die operator with a method for programming a UF profile that can vary over time during a dialysis treatment to achieve a target UF removal volume. This feature is similar to variable sodium and variable bicarbonate features discussed hereinabove. Specifications of the UF Profiling feature are set forth in Appendix A. A detailed description of the user interface pertaining to the UF profiling feature is set forth in Appendix B. Having described and illustrated the principles of our invention with reference to a preferred embodiment, it will be apparent tiiat the invention can be modified in arrangement and detail without departing from such principles. Accordingly, we claim as our invention all such embodiments as may come within the scope and spirit of the following claims and equivalents thereto. UF PROFILING SPECIFICAΗON APPENDIX A APPLICATION OF GROGAN ET AL. HEET (BULE 26) Screen Operation: When the Target UF meter is touched from the Prime or Dialyze screens, a new set of buttons will appear on the right side of die display, referred to as the UF screen. The buttons will be labeled MAIN SCREEN, TARGET UF, BLANK, UF DATA REPORT, PROFILE UF, BLANK (RESTART PROFILE), and BLANK (Verify). The functions for each button will be as follows; UF Screen MAIN SCREEN - Returns to main Dialyze or Prime screen. TARGET UF - Brings up the calculator for Target UF entry. DATA REPORT - Brings up a data report widi UF parameters. PROFILE UF - Brings up the profiling graph and buttons. RESTART PROFILE - Brings up the profiling graph and buttons with the previous profile after a treatment change. Note: The Target UF window is accessible only in Prime or Dialyze modes. When the PROFILE UF button is touched, a new set of buttons will appear on die screen, referred to as the UF Profile Screen, and die profiling graph will overlay the main screen. The buttons will be labeled LAST SCREEN, GRAPH UNLOCK/VERIFY (dual function), UF ONLY/VERIFY, SET CALC PROFILE, SET AVERAGE PROFILE, TEMPLATE PROFILES, and BLANK (Verify). The RESTART PROFILE button will appear only in Dialyze mode after the user entered profile has been aborted by one of die following events; Target UF changed, Treatment time changed, UF rate changed manually, or UF rate set to minimum due to an alarm. When touched, die UF Profile screen will appear, as when die PROFILE UF button is touched. In addition, die graph will be initialized to the previous verified profile. The functions of the UF Profiling Screen buttons will be as follows; UF Profiling Screen: LAST SCREEN - Returns to UF screen. GRAPH UNLOCK - Unlocks profiling graph. GRAPH VERIFY - Lock graph if profile meets target UF, otherwise brings up Profile Adjust screen. SET CALC PROFILE Sets a constant UF profile at a rate which will reach target UF (must be unlocked). UF ONLY Enables die graph for UF Only profiling (must be unlocked). UF ONLY VERIFY Locks the profiled UF Only segments. SET AVERAGE PROFILE Averages entire treatment profile with a straight line between die first uncompleted time segment and die last time segment of the treatment (must be unlocked). TEMPLATE PROFILES Brings up the template profile screen. Initialization: The minimum initial entry prior to UF profiling will be the treatment time and target UF. These will be entered via die calculator. If die prescribed treatment time is not set prior to graph operation, the message TIME NOT SET will be displayed in the lower left hand corner of die graph. If the time is set and die target UF volume is not set, me message TARGET UF NOT SET will be displayed. Graph Operation: The graph will have a vertical axis scaled for 0 to 4.0 Liters/hour with 0.1 L/h resolution, indicating UF removal rate. The horizontal axis indicates treatment time and will be scaled for 0 to 6.0 hours, in 15 minute intervals. A highlighted bar on d e Y-axis will indicate die UF rate limits. A similar highlighted bar on die X-axis will indicate die prescribed treatment time. A graph mode indicator will display die alternate function of die GRAPH LOCK/VERIFY button. It will be located in the lower right of the graph, displaying GRAPH MODE: X, where X is LOCK or UN-LOCK. Arrows at the top and bottom of the graph will indicate die current active touch zones within the graph. Above the top arrow will be a number indicating the current UF rate for that time segment. Each time segment will have a marker which graphically indicates die removal rate for that segment. While the graph is unlocked, touching a location on die graph between the maximum and minimum UF rates will cause the marker for that segment to move to the location of the touch. While the graph is in the locked state, a continuous line will join the segment markers and the markers will not move. The profiling segment size is selected in calibration to 15, 30 or 60 minute intervals. For segment sizes other than 15 minutes, die individual markers and touchzones for each 15 minute time interval will operate collectively. The selectable segment size will be added to die Sodium and Bicarbonate profiling options for overall machine consistency. Three UF volume indicators will be displayed at die top of die graph: TARGET: This will indicate die entered target value. PROFILED: This will indicate die calculated volume represented by die profile at any time, updated each time a segment is altered. It will be used for comparison to the target volume while entering the profile, and when die GRAPH VERIFY button is touched. REMOVED: This will show the actual calculated UF volume removed during die treatment, up to the current time. When the prescribed time and target UF have been set, the profiling graph will initially be set to a constant rate which will meet target UF over the prescribed time. This will appear as a straight horizontal line. It is intended to be a guideline, to assist the operator in selecting a profile that will meet the target UF volume. At this time d e operator has three options to select a UF profile. The first two options involve manually adjusting a profile. The third Option is to recall a predetermined profile template, which is described in the next section. To manually select a profile the operator can touch GRAPH UNLOCK, which will remove the line from the graph and enable user profiling. The operator has two options at this point, to profile UF rate for each time segment manually, or to set the starting and/or ending points of an average rate. Average Method: The user can choose an averaged straight line profile by touching a graph location within the first and/or last time segments. Then by touching die SET AVERAGE PROFILE button, the remaining segment markers will be positioned in approximately in a straight line between the starting and ending markers. Manual Method: By touching die graph at various points within the UF rate and treatment time limits, the user can "draw" a profile for the entire treatment. As the profile is drawn, die PROFILE value at die top of die graph will update continuously. This will assist the operator in selecting a profile that will come close to reaching die target UF. Once a profile has been selected through one of these methods, die operator will touch GRAPH VERIFY. At this time die total profiled volume, or PROFILE value, will be compared to die target UF volume. If a difference exists, a new set of buttons will appear on the screen. Their labels will read LAST SCREEN, BLANK, ADJUST PROFILE, ADJUST TARGET, BLANK, BLANK, BLANK (VERIFY). This will be referred to as the UF profile verify screen. Adjust UF Profile Screen ADJUST TARGET - Brings up die verify button. If touched, the target UF value is changed to the PROFILE value, and the display goes back to UF profiling screen with graph locked. ADJUST PROFILE - Automatically shifts graph up or down to meet target UF, using die following rules, and brings up die verify button. If die verify button is touched, die display will go to UF profiling screen with graph locked. 1. All segments of the profile will be adjusted equally, with the following exception: Any segment set to minimum UF or maximum UF rate will be "anchored. " Those segments will not be changed to meet the target UF volume. 2. If die adjustment causes any segment(s) to violate the minimum or maximum rates, those segments will be set to the minimum or maximum, and die remaining segments will be equally adjusted by the excess volume using Rule 1 meet target UF. 3. Values will be rounded to one decimal places for graphical representation. However d e actual UF rate is executed and displayed in 0.01 L/hr resolution. 4. If die target UF cannot be met following these rules, an error condition will be indicated, and the button will "honk" and not change back to GRAPH UNLOCK. The profiling graph can be altered at any time during die treatment. Completed time segments will be represented as shaded bars, which of course cannot be altered. The operator can unlock the graph as before and select an average or manual profile to be performed over the remainder of d e treatment. The current rate can be changed, and UF only can be started or stopped at any time during the treatment. By touching the SET CALC PROFILE button while the graph is unlocked, all uncompleted profile segments will be set to a constant rate which will reach target UF removal. This can be used at any time the graph is unlocked, and will function as "clear" button during profiling, as it represents the initial profile prior to operator intervention. If the graph has been entered and verified and is altered because of a change in target UF volume, total treatment time, or an alarm causes minimum UF, touching the RESET LAST PROFILE button on the UF Screen will cause die previous profile to appear on the graph. Completed time segments will indicate die last rate performed during that segment. If the Profile does not meet Target, die operator can then touch GRAPH UNLOCK and GRAPH VERIFY, which will take the normal action described above. Profile-Template Operations: When button # 6 on die UF Profile screen is touched (TEMPLATE PROFILES), the following buttons appear on the right side of the screen; LAST SCREEN, MIRROR SODIUM, RECALL PROFILE #n, SAVE PROFILE #n, BLANK, BLANK, BLANK (Verify). The fiinctions of the Template Profile screen will be as follows; Template Profile Screen LAST SCREEN Goes back to the UF Profile screen MIRROR SODIUM Sets a UF profile that resembles the Na profile RECALL PROFILE #n Recalls a profile from SRAM SAVE PROFILE #n Saves the cuπent profile to SRAM When the MIRROR SODIUM button is touched, the UF graph will be set to approximately die same XY coordinates as the Na profile, witii no shifting to accommodate target UF goal. The operator will be required to verify and adjust die profile as needed. The profile templates are intended to function as the name implies, as templates or basic shapes only. The operator will be required to verify and adjust die profile as needed. When the RECALL PROFILE button is touched, die graph will be set to the stored profile, and the VERIFY button will appear. If no profiles have been stored, die button will honk and a message will appear in the instruction window indicating no profiles available. If at least one profile is available, it will be displayed in die unlocked state, and die profile number on the button will increment if another profile is available. Each subsequent button touch will recall the next available profile and increment the button, until die 6th or last available profile is displayed. The button will then wrap around to the first profile. When the desired profile is displayed, die operator can touch VERIFY and LAST SCREEN to activate the profile. The SAVE PROFILE #n button will initially be set to SAVE PROFILE prior to any button touches. On the first button touch it will highlight, change to SAVE PROFILE #1, and die verify button will appear. Each subsequent button touch will increment the profile position on die button, until die 6th position is reached, which will then wrap around to die first. When the Verify button is touched, die current profile will overwrite any previous profile stored in the memory position displayed on die button. Button position #5 should be saved for future expansion. Standard ROM'd profiles could be recalled with this button, as with the RECALL PROFILE #n button feature, when and if those are developed. UF Onlv: When the UF ONLY button is touched from the UF profile screen the graph will be enabled for UF Only profiled entry. The UF ONLY button will change to UF ONLY VERIFY. When a segment is touched in this mode it will highlight a "B" in the Dialysis time bar, indicating UF only during that time segment. Conversely, when a highlighted segment is touched, it will remove the "B" from the time bar and turn off UF only during tiiat segment. If the UF ONLY VERIFY button is touched, die button will change back to UF ONLY and the selected segments will become active. The highlighted "B's" will remain on the prescribed time axis indicating the selected UF Only segments. Completed, current, and future bypass time segments will be displayed this way. When the machine is in UF Only the dialysate flow rate will be automatically lowered to 300 ml/min. It will be reset to the previously set flow rate automatically upon completion of the bypass sequence. 5 UF Only will override manual bypass. If manual bypass is active and the operator selects UF Only for the current time segment, the manual bypass will be canceled. The manual bypass button will be disabled during UF only, and will flash as in manual bypass. The machine state indicator in the lower left corner of the main screen will indicate UF ONLY 10 when UF Only is active. UF Only will be a sub-state of Dialyze. Clocks and Treatment Parameters: 15 The prescribed treatment time will be entered via die calculator as before. This time will represent total treatment time, which will include UF Only time as well as dialysis time (blood and dialysate circulating through the dialyzer). Separate clocks will be maintained for UF Only time and dialysis time. The elapsed treatment 20 time in the treatment time window will display elapsed total treatment time during dialyze. Both UF Only time and dialysis time will be displayed on die UF data report. Dialysis time will not increase during UF Only, or during extracorporeal or dialysate alarms. 25 UF Only time will accumulate only during profiled UF Only time periods. It will not accumulate during extracorporeal alarms and when UF rate is set to zero. UF removal will continue during manual and dialysate alarm bypass. Therefore, UF target may be reached prior to total treatment time. If so, UF rate will go to mmimum until end of treat- 30 ment time. Total blood processed will accumulate only during dialysis time. Total infused heparin will accumulate any time heparin is infused, including while in UF only. 35 Alarms and messages: If the profiled UF volume does not meet the target volume, because a parameter has been changed or if die user entered profile will not adjust to meet target volume when ADJUST PROFILE is touched, a message will appear in die warning window prompting the operator to readjust die profiling graph. In addition, die audio alarm will sound intermittently, approximately every 90 seconds. If the UF rate was changed manually, d e graph will be set to the new rate for the remaining treatment. If the target volume or treatment times are changed, the graph will be set to a constant rate which meets target volume. When this occurs, the RESTART PROFILE button will appear on the UF screen and operate as described above. When the UF, UF profile, UF profile verify, or UF profile template screens are active and an extracorporeal or dialysate alarm occurs, the machine will go back to the main screen (PRIME or DIALYZE). If the profiling graph is unlocked, die most recent locked profile will be saved and will be displayed in the locked mode die next time the UF profiling screen is entered. If die UF Only mode is active, the last verified UF Only profiled segments will be active. If the graph is unlocked when the UF Profile Screen is exited, because of all alarm or a LAST SCREEN button touch, an error beep will occur and a message will appear in the instruction window indicating "UF profile not verified. " UF Data Report: This data report will overlay the Instruction Window and Alarm windows. The data included will be as follows: Times: Treatment Time Elapsed Dialysis Time Remaining Dialysis Time Elapsed UF Only Time Remaining UF Only Time Volumes: UF Target UF Removed UF Remaining UF Only Target UF Only Removed UF Only Remaining USER INTERFACE FOR UF-PROFILING APPENDIX B APPLICATION OF GROGAN ET AL. FIGS. 12-18 depict a sequence of screen displays accompanying the following actions: 1. FIG. 12: main screen in die Prime Mode, with all windows in the default state. Touch the TARGET UF window. The UF control buttons appear. The maximum and minimum Target UF values are displayed in the TARGET UF window. 2. FIG. 13: Touch die TARGET UF VOLUME button. 3. FIG. 14: The keypad appears. Enter die volume to be removed in liters. The System 1000™ will calculate the required UF rate. 4. FIG. 15: To view die UF Data Report, touch the UF DATA REPORT button. 5. FIG. 16: The UF Data Report appears. 6. FIG. 17: To profile UF, touch the PROFILE UF button. 7. FIG. 18: The UF profile controls appear. FIG. 19: FIG. 19 is an illustration of die main profiling screen, or UF Profile screen. When the prescribed treatment time and target UF volume to be removed are entered, die UF profile is set to a calculated value which will meet target volume over die treatment time. In FIG. 19, the prescribed treatment time is 5.0 hours (represented by a highlighted bar on the X axis), and the target volume is 9.50 liters. The rate has been calculated to 9.5L/5hr = 1.9 L/hr. If prescribed treatment time and/or target volume are not set an error message will appear in the lower left hand corner of the graph. The minimum and maximum UF rates are represented by a highlighted bar on the Y axis (0.50 and 3.50 L/hr, respectively). They are set in the calibration mode. FIG. 20: The buttons GRAPH UNLOCK/GRAPH VERIFY and UF ONLY/UF ONLY VERIFY buttons are dual function, which will be explained later. The VERIFY button (position 7) appears at appropriate times, when a operator confirmation is required. In FIG. 20, GRAPH UNLOCK has been touched, which removes the connecting line from the indicator "blips" and enables the graph for profiling. The GRAPH UNLOCK button has changed to GRAPH VERIFY, and die mode indicator in the lower right hand corner of the graph indicates UNLOCK'ed status. Notice that all blips beyond die 5 hour treatment time are set to the minimum UF rate. These cannot be altered unless die treatment time is extended. FIG. 21: In FIG. 21, the operator has touched die profiling graph at approximately of 2.7 L/hr (Y axis) in the first 15 minute time segment (X axis). The blip for that time segment immediately moves to e location of the touch. In the unlocked mode die operator can "draw" a profile by touching any area on die graph. The corresponding blip for each time segment immediately moves to die location of the touch in that time segment. If the touch occurs above the maximum UF rate (above the imaginary horizontal line at 3.5 L/hr), but within the graph area (below the imaginary horizontal line at 4.0 L/hr), the blip will be moved to die maximum rate. The opposite is true for touches below the minimum UF rate, and above the graph limit of O L/hr. The "Profiled" value at die top of die graph has been changed to 9.54 L, reflecting the slight increase in the profile volume due to die change in the first time segment. This value represents the integral of the profile curve, or amount of fluid that would be removed by this profile. FIG. 22: In FIG. 22, die operator has touched SET AVERAGE PROFILE, which causes the profile to be set to an approximate straight line between die first and last time segments. This feature can be used at any time mat the profile is unlocked, and either the first or last time segment can be adjusted. In the DIALYZE mode, die first uncompleted time segment would be the starting point for the average profile. Completed time segments are not altered at any time. The Profiled value has been changed to 11.50, representing die large increase in the profile integral. FIG. 23: In FIG. 23, die operator has touched the GRAPH VERIFY button. If die Profiled value and Target value are equal, the graph will lock, the GRAPH VERIFY button will changed back to GRAPH UNLOCK, and a line is draw through each of the blips. FIGS. 24-25: In this case the Profile and Target values are unequal. Therefore, when the GRAPH VERIFY button is touched, die UF Profile Adjust screen appears (FIG. 24). Once a profile has been selected, either manually or with die AVERAGE or CALCULATED buttons, it must be verified to insure proper UF removal. With the screen shown in Fig. 24, the operator has two options: Change the Target value to die Profiled value, or make the profile adjust to the Target value. In this example the operator has touched ADJUST PROFILE, which causes the profile to shift downward to match Target, and die Profiled value indicates die shift. The VERIFY button appears once die profile has shifted and meets the Target. If allowed to time out (approximately 5 seconds) die profile will shift upward to its original state. In this example the VERIFY button is touched, causing die display to go back to the UF Profile screen with the graph locked (FIG. 25). The profile is adjusted by shifting each blip up or down in equal amounts, so that die original shape of the profile is maintained. If for some reason die profile will not adjust, an error honk sounds and an error message appears in the Instruction Window. From the screen of FIG. 24, die LAST SCREEN button can be touched to go back to the UF Profile screen with no adjustments to die profile or Target value. In FIG. 25, the shifted profile has been verified and die UF profile screen is present in die locked mode. If die operator had touched die ADJUST TARGET button on die screen of FIG. 24, the Target value would change to 11.50 and the VERIFY button would appear. Touching die VERIFY button would cause die display to go to die UF Profile screen, with die Target volume set to 11.50 L, and with the graph locked in its previous condition . If die VERIFY button times out widiout being touched (approximately 5 seconds), die Target value will go back to 9.50 and die UF Profile Adjust screen would be active. In FIG. 25, the GRAPH UNLOCK button is touched, leading to the unlocked profile shown in FIG. 26. FIGS. 26-27: In FIG. 26, the SET TO CALC PROFILE button is touched. This button functions as a "clear" button after the original profile has been altered, resetting die profile to the original shape (FIG. 27). From here the operator can draw a profile using the profile as a reference, as it represents the target removed. In FIG. 27, the profile has been "cleared" by the SET TO CALC button. In some cases the calculated profile will differ slightly from the Target value, which will be indicated by a difference in the Profiled and Target values. In this case, if GRAPH VERIFY and ADJUST PROFILE are touched, die profile may not shift to a perfectly straight horizontal line. This is due to the algorithm used to match the profile to die Target value. It is "front weighted", which means that if the volume to shift is not evenly divisible by die number of remaining time segments, the earliest (front) time segments will be shifted by the minimum resolution until the profile meets the target. FIG. 28: In FIG. 28, the operator has "drawn" a profile by touching the graph in the arrangement indicated by die blips. The blips pointed out by arrows have been set to the maximum and minimum UF rates, because the touches were at or outside those limits. Also in FIG. 28, the operator has profiled, and has touched GRAPH VERIFY to lock the profile. Notice tiiat die Profiled and Target values are not equal. Now, when the GRAPH VERIFY button is touched, die Adjust screen will appear (FIG. 29). FIG. 29: In FIG. 29, the UF Profile Adjust screen has been displayed, and the ADJUST PROFILE button has been touched. The segments that were previously set to maximum and minimum values remain at those values. The shifting logic will not move a blip that has been set to a limit, and will not move a blip past a limit. If, in the process of shifting a profile, any blip meets or exceeds die rate limits, those blips are set to the limit, and die excess volume is evenly distributed (shifted) over die rest of the profile. FIG. 30: In FIG. 30, the shifted profile has been verified and die graph is in the locked mode. The UF ONLY button is used to program UF Only time segments. "UF Only" is a machine state in which the UF system continues to remove fluid from die patient while the dialysate system is in bypass, during which the dialysate in the dialyzer is stationary. The UF ONLY button works similar to the GRAPH UNLOCK/GRAPH VERIFY button. It enables the graph for UF Only profiling. The UF ONLY button is disabled when die graph is in the locked state. To begin UF Only profiling, the GRAPH UNLOCK and UF ONLY buttons are touched in sequence. FIG. 31: In FIG. 31, the graph is in the unlocked, UF Only entry mode. The UF ONLY button has changed to UF ONLY VERIFY, which works much like die GRAPH VERIFY button in that it locks the profiled values when touched in this state. Unlike the GRAPH VERIFY button, no shifting or adjustments take place with die UF Only feature. In the UF Only profile mode, die blips will not respond to graph touches. FIG. 32: In FIG. 32, the graph has been touched in the tiiird and fifteenth time segments. Any touch on die graph will toggle UF only during that segment, regardless of die UF rate limits (indicated by die dashed boxes). If a segment is previously set to UF Only when touched, it will change back to non-UF Only, and vice-versa. The segment status is indicated by a "B" (Bypass) in the prescribed time bar. Time segments beyond the prescribed treatment time cannot be set to UF Only. Once UF Only segments have been selected, the UF ONLY VERIFY button is then touched, locking the indicated segments to perform UF Only, and die UF Profile screen is displayed (FIG. 33). FIG. 33: In FIG. 33, the UF Only time segments have been verified. The machine will enter die UF Only state at the :45 and 3:45 times in die treatment. These UF Only time segments can be changed at any time, as long as that time segment has not been completed. Also in FIG. 33, the TEMPLATE PROFILES button has been touched, leading to the UF Profile Templates screen (FIG. 34). FIG. 34: In FIG. 34, the SAVE PROFILE button touch has caused the VERIFY button to appear and "#1 " to be appended to the SAVE PROFILE button. If the SAVE PROFILE #1 button is touched again before the VERIFY button times out (approximately 5 seconds), it will change to SAVE PROFILE WI, and the VERIFY button timeout will be reset to 5 seconds. Subsequent touches (prior to VERIFY button timeout) will cause die "#n" to increment up to 6, and tiien loop back to 1, and so on. If the VERIFY button is touched, die current profile will be stored in the memory location indicated on the SAVE PROFILE #n button, and will overwrite the profile previously stored diere. If the VERIFY button times out, the profile is not saved and the SAVE PROFILE #n changes back to SAVE PROFILE. Also in FIG. 34, the VERIFY button is touched, and the profile is stored in location #1. FIG. 35: In FIG. 35, the Profile templates feature allows die operator to store and retrieve profile templates from treatment to treatment. The templates are stored in static RAM where they remain even after power loss. The SYSTEM 1000 will store and retrieve up to 6 templates. Also in FIG. 35, the SAVE PROFILE has been touched, as the operator intends to store this profile. From the screen of FIG. 35, the LAST PAGE button can be touched to return to die UF Profile screen. FIG. 36: In FIG. 36, the operator has entered a new profile manually. This is possible any time die graph is unlocked. FIG. 37: In FIG. 37, the operator has touched SAVE PROFILE twice, causing it to indicate SAVE PROFILE #2. The VERIFY button is then touched, storing the current profile in location 2. FIG. 38: In FIG. 38, the operator has touched RECALL PROFILE, which caused die button to change to RECALL PROFILE #1, and caused die VERIFY button to appear. In addition, the profile stored in location #1 was drawn on die graph. If die RECALL PROFILE button is touched again prior to the VERIFY button timing out, the next stored profile will be displayed and die number on die button will increment (much like the SAVE PROFILE button). If die verify button is allowed to time out, regardless of d e number on the RECALL PROFILE button, die graph will go back to the original profile, prior to the first RECALL PROFILE button touch (FIG. 35). If the VERIFY button is touched, the current profile (indicated on the RECALL PROFILE button) remains on die graph and becomes the active profile. FIG. 39: In FIG. 39, the operator has touched the MIRROR SODIUM PROFILE button, which causes a profile to appear on die graph which resembles the Sodium profile, and causes the VERIFY button to appear. The Mirror Sodium feature is similar to Recall Profile, in that an unadjusted profile is made available to the operator. To determine die mirror profile, the Sodium profile is scaled to die current UF rate limits. The sodium profile illustrated in FIG. 39 actually started at the extreme upper left hand corner of the Sodium graph, and extended to die lower right hand corner (the Sodium profile is allowed to exceed the treatment time limit). The mirrored profile has been scaled to fit within the UF rate limits which caused the upper left corner of the mirror profile to start at UF rate 3. SOL. The lower right corner has been truncated, due to the required minimum UF rate beyond the treatment time. Touching die VERIFY button makes the mirror profile the active profile (like RECALL PROFILE/VERIFY). Allowing the VERIFY button to time out returns die original profile to the graph. The profile interval defaults to 15 minute segments, and can be changed to 30 or 60 minutes in the calibration program. When the interval is set to 30 or 60 minutes, blips within each segment move concurrently when that segment is touched. FIG. 40: FIG. 40 shows both 30 and 60 minute intervals. The dashed box on the left shows the segment area for the 30 minute interval. Any touch within the dashed box will cause both blips to move to that position. Likewise, the dashed box on the right shows the segment area for a 60 minute interval. The UF Only time segments are also adjustable in calibration. FIG. 41: FIG. 41 shows the same segment areas, with the graph in the UF Only entry mode. The "B's" for each segment operate concurrently, as do die blips while profiling UF rate.

Claims: CLAIMS 1. A method of providing operational instructions to a hemodialysis machine, having a programmable memory and having ultrafiltration capability, so as to enable the machine to perform ultrafiltration of a patient according to a time-variable ultrafiltration profile, die method comprising: (a) entering into die programmable memory a prescribed time for dialysis; (b) entering into d e programmable memory a target-UF volume to be removed from die patient; (c) entering into the programmable memory a proposed UF profile being representable as a plot of coordinates on a UF-rate axis and a time axis and defining a profile- UF volume; and (d) if die profile-UF volume is not equal to die target-UF volume, shifting the proposed UF profile along die UF-rate axis until die profile-UF volume is equal to the target-UF volume, men entering the shifted UF profile into the programmable memory in place of the proposed UF profile so as to allow the hemodialysis machine to achieve, while ultrafiltrating the patient according to die shifted UF profile, the entered target-UF volume within the entered prescribed time. 2. A method of providing operational instructions to a hemodialysis machine having a programmable memory and having ultrafiltration capability so as to enable the machine to perform ultrafiltration of a patient according to a time-variable ultrafiltration profile, the method comprising: (a) providing a user/machine interface configured as a touch screen operably connected to die hemodialysis machine; (b) using die touch screen, entering into die programmable memory a prescribed time for dialysis; (c) using the touch screen, entering into the programmable memory a target-UF volume to be removed from the patient; (d) displaying on die touch screen first and second intersecting axes defining a UF-profile region, the first axis corresponding to UF rate, and die second axis corresponding to time; (e) touching die touch screen at a plurality of points within the UF-profile region so as to define a proposed continuous UF-rate-versus time profile defining a profile-UF volume; and (f) if the profile-UF volume is not equal to die target-UF volume, shifting die proposed profile along die first axis to produce a shifted profile, tiien entering the shifted profile into the programmable memory so as to allow the hemodialysis machine to achieve, while ultrafiltrating the patient according to the shifted profile, the entered target UF volume within the entered prescribed time. 3. A method of providing operational instructions to a hemodialysis machine having a programmable memory and having a capability of ultrafiltrating a patient according to a time-variable ultrafiltration profile, the mediod comprising: (a) providing a user/machine interface configured as a touch screen operably connected to the hemodialysis machine; (b) using the touch screen, entering into die programmable memory a prescribed time for dialysis; (c) using the touch screen, entering into die programmable memory a target-UF volume to be removed from the patient; (d) displaying die target-UF volume; (e) while displaying die target-UF volume, displaying on die touch screen first and second intersecting axes defining a UF-profile region, the first axis corresponding to UF rate, and die second axis corresponding to time; witiiin which UF-profile region a UF-rate- versus-time profile can be displayed which defines a profile-UF volume; (f) providing a display of profile-UF volume; and (g) while observing the displayed target-UF and profile-UF volumes, touching the touch screen at a plurality of points within the UF-profile region so as to define a UF-rate- versus time profile defining a profile-UF volume equal to the target-UF volume. 4. A method of providing operational instructions to a dialysate-producing machine having a user-programmable memory, a capability of changing sodium concentration in the dialysate according to a time-variable sodium profile, and a capability of ultrafiltrating a patient according to a time-variable ultrafiltration profile, so as to enable the machine to produce dialysate having particular sodium and ultrafiltration characteristics at various times during use of die machine for a dialysis procedure, die method comprising: (a) providing a user/machine interface configured as a touch screen operably connected to die dialysate-producing machine; (b) programming into the user-programmable memory a desired sodium profile; (c) providing on die touch screen an indicium enabling a user of die machine to create an ultrafiltration profile that substantially conforms to the sodium profile; (d) using the touch screen, displaying on die touch screen first and second intersecting axes defining a UF profile region, the first axis corresponding to UF rate, and die second axis corresponding to time; and (e) touching the indicium provided in step (c) to cause die touch screen to display within the UF profile region an ultrafiltration profile substantially conforming to the sodium profile programmed in step (b). 5. A mediod of providing operational instructions to a dialysate-producing machine having a memory and a capability of ultrafiltrating a patient according to a time-variable ultrafiltration profile, so as to enable die machine to produce dialysate having particular ultrafiltration characteristics at various times during use of the machine for a dialysis procedure, the mediod comprising: (a) providing a user/machine interface configured as a touch screen operably connected to the dialysate-producing machine; (b) programming into the memory a first ultrafiltration profile; (c) providing on die touch screen an indicium enabling a user of die machine to recall the first ultrafiltration profile from die memory; (d) using the touch screen, displaying on die touch screen first and second intersecting axes defining a UF profile region, die first axis corresponding to UF rate, and d e second axis corresponding to time; and (e) touching die indicium provided in step (c) to cause die touch screen to display within the UF profile region a second ultrafiltration profile substantially conforming to the first ultrafiltration profile. 6. A method of providing operational instructions to a hemodialysis machine equipped with a programmable memory, so as to enable the machine to operate according to an operational parameter that can vary over time, the mediod comprising: (a) entering into the programmable memory a time period; (b) entering into the programmable memory a target cumulative value corresponding to die operational parameter to be achieved while operating the machine during die time period; (c) entering into die programmable memory a proposed time-varying profile of me operational parameter to be executed by die machine during the time period, die profile being representable as a plot of coordinates in a region defined by an ordinate of values of d e parameter and a time-based abscissa, the plot defining a profile cumulative value of the parameter; and (d) if die profile cumulative value is not equal to die target cumulative value, changing die proposed time-varying profile along the ordinate so that the profile cumulative value is made equal to die target cumulative value, then entering the changed profile into the programmable memory in place of the proposed profile so as to allow the hemodialysis machine to achieve, while operating, the entered target cumulative value within the time period. 7. In an apparatus for performing hemodialysis comprising means for circulating dialysate through a dialysate compartment of a hemodialyzer and means for effecting extracorporeal circulation of blood through a blood compartment of the hemodialyzer, an improvement comprising: (a) programmable memory means; (b) means for entering a time period into said memory means; (c) means for entering into said memory means a target cumulative value of a time-varying parameter to be achieved while operating the apparatus during die time period; (d) means for entering into said programmable memory means a proposed time- varying profile of the operational parameter to be executed by die apparatus during die time period, die proposed profile being representable as a plot of coordinates in a region defined by an ordinate of values of the parameter and a time-based abscissa, the plot defining a profile cumulative value of die parameter; (e) means, responsive to the entered time period and entered proposed profile, for comparing the profile cumulative value with the target cumulative value; (f) means, responsive to said means defined in (e), for changing die proposed profile along the ordinate so that profile cumulative value is made equal to die target cumulative value; (g) means for entering the changed profile into said memory means in place of the proposed profile; and (h) means, responsive to said means defined in (g), for causing die apparatus to operate according to the changed shifted profile so as to enable the apparatus to achieve, while operating, the entered target cumulative value within the time period. AMENDED CLAIMS [received by the International Bureau on 11 April 1994 (1.1.04.9O ; original claims 1-7 replaced by amended claims 1-7 (4 pages)] 1. A method of providing operational instructions to a hemodialysis machine, having a programmable memory and having ultrafiltration capability, so as to enable the machine to perform ultrafiltration of fluid from a patient according to a time-variable ultrafiltration profile, 5 the method comprising: (a) entering into die programmable memory a prescribed time for dialysis; (b) entering into the programmable memory a target-ultrafiltration volume of fluid to be removed from die patient; (c) entering into the programmable memory a proposed ultrafiltration profile 10 being representable as a plot of coordinates on an ultrafiltration-rate axis and a time axis and defining a profile-ultrafiltration volume; and (d) shifting die proposed UF profile along die ultrafiltration-rate axis to the degree necessary to make the profile-ultrafiltration volume equal to d e target-UF volume so as to allow the hemodialysis machine to achieve, while ultrafiltrating the fluid according to die shifted 15 ultrafiltration profile, die entered target-ultrafiltration volume within the entered prescribed time. 2. A mediod of providing operational instructions to a hemodialysis machine having a programmable memory and having ultrafiltration capability so as to enable die machine to perform ultrafiltration of fluid from a patient according to a time-variable ultrafiltration profile, the method comprising: 20 (a) providing a user/machine interface configured as a touch screen operably connected to the hemodialysis machine; (b) using the touch screen, entering into the programmable memory a prescribed time for dialysis; (c) using die touch screen, entering into the programmable memory a target- 25 ultrafiltration volume of fluid to be removed from die patient; (d) displaying on die touch screen first and second intersecting axes defining an ultrafiltration-profile region, the first axis corresponding to ultrafiltration rate, and die second axis corresponding to time; (e) touching die touch screen at a plurality of points within the ultrafiltration- 30 profile region so as to define a proposed continuous ultrafiltration-rate-versus time profile defining a profile-ultrafiltration volume; and (f) shifting the proposed profile along die first axis to the degree necessary to make die profile ultrafiltration volume equal to die target ultrafiltration volume so as to allow the hemodialysis machine to achieve, while ultrafiltrating the fluid according to the shifted profile, 35 the entered target ultrafiltration volume within the entered prescribed time. 3. A method of providing operational instructions to a hemodialysis machine having a programmable memory and having a capability of ultrafiltrating fluid from a patient according to a time-variable ultrafiltration profile, the method comprising: (a) providing a user/machine interface configured as a touch screen operably connected to die hemodialysis machine; (b) using die touch screen, entering into the programmable memory a prescribed time for dialysis; (c) using die touch screen, entering into die programmable memory a target- ultrafiltration volume of fluid to be removed from d e patient; (d) displaying die target-ultrafiltration volume; (e) while displaying the target-ultrafiltration volume, displaying on die touch screen first and second intersecting axes defining an ultrafiltration-profile region, the first axis corresponding to ultrafiltration rate, and the second axis corresponding to time; within which ultrafiltration-profile region an ultrafiltration-rate-versus-time profile can be displayed which defines a profile-ultrafiltration volume; (f) providing a display of profile-UF volume; and (g) while observing the displayed target-ultrafiltration and profile-ultrafiltration volumes, touching die touch screen at a plurality of points within the ultrafiltration-profile region so as to define a ultrafiltration-rate-versus time profile defining a profile-ultrafiltration volume equal to the target-ultrafiltration volume. 4. A mediod of providing operational instructions to a dialysate-producing machine having a user-programmable memory, a capability of changing sodium concentration in the dialysate according to a time-variable sodium profile, and a capability of ultrafiltrating fluid from a patient according to a time-variable ultrafiltration profile, so as to enable die machine to produce dialysate having particular sodium and ultrafiltration characteristics at various times during use of die machine for a dialysis procedure, the method comprising: (a) providing a user/machine interface configured as a touch screen operably connected to die dialysate-producing machine; (b) programming into die user-programmable memory a desired sodium profile; (c) providing on die touch screen an indicium enabling a user of die machine to create an ultrafiltration profile that substantially conforms to the sodium profile; (d) using die touch screen, displaying on the touch screen first and second intersecting axes defining a ultrafiltration profile region, the first axis corresponding to ultrafiltration rate, and die second axis corresponding to time; and (e) touching the indicium provided in step (c) to cause die touch screen to display within the ultrafiltration profile region an ultrafiltration profile substantially conforming to die sodium profile programmed in step (b). 5. A method of providing operational instructions to a dialysate-producing machine having a memory and a capability of ultrafiltrating fluid from a patient according to a time-variable ultrafiltration profile, so as to enable the machine to produce dialysate having particular ultrafiltration characteristics at various times during use of the machine for a dialysis procedure, the method comprising: (a) providing a user/machine interface configured as a touch screen operably connected to the dialysate-producing machine; (b) programming into the memory a first ultrafiltration profile; (c) providing on the touch screen an indicium enabling a user of die machine to recall the first ultrafiltration profile from the memory; (d) using die touch screen, displaying on die touch screen first and second intersecting axes defining a ultrafiltration profile region, die first axis corresponding to ultrafiltration rate, and the second axis corresponding to time; and (e) touching the indicium provided in step (c) to cause the touch screen to display within the ultrafiltration profile region a second ultrafiltration profile substantially conforming to the first ultrafiltration profile. 6. A method of providing operational instructions to a hemodialysis machine equipped with a programmable memory, so as to enable the machine to operate according to an operational parameter mat can vary over time, the method comprising: (a) entering into die programmable memory a time period; (b) entering into the programmable memory a target cumulative value corresponding to the operational parameter to be achieved while operating the machine during die time period; (c) entering into the programmable memory a proposed time-varying profile of die operational parameter to be executed by the machine during the time period, the profile being representable as a plot of coordinates in a region defined by an ordinate of values of die parameter and a time-based abscissa, the plot defining a profile cumulative value of the parameter; and (d) changing the proposed time-varying profile along the ordinate to the degree needed to make the profile cumulative value equal to the target cumulative value so as to allow the hemodialysis machine to achieve, while operating, the entered target cumulative value within die time period. 7. In an apparatus for performing hemodialysis comprising means for circulating dialysate through a dialysate compartment of a hemodialyzer and means for effecting extracorporeal circulation of blood through a blood compartment of the hemodialyzer, an improvement comprising: (a) programmable memory means; (b) means for entering a time period into said memory means; (c) means for entering into said memory means a target cumulative value of a time-varying parameter to be achieved while operating the apparatus during the time period; (d) means for entering into said programmable memory means a proposed time- varying profile of the operational parameter to be executed by the apparatus during die time period, die proposed profile being representable as a plot of coordinates in a region defined by an ordinate of values of die parameter and a time-based abscissa, the plot defining a profile cumulative value of die parameter; (e) means, responsive to die entered time period and entered proposed profile, for comparing die profile cumulative value with the target cumulative value; (f) means, responsive to said means defined in (e), for changing die proposed profile along die ordinate so that the profile cumulative value is made equal to die target cumulative value; (g) means for entering the changed profile into said memory means in place of the proposed profile; and (h) means, responsive to said means defined in (g), for causing the apparatus to operate according to the changed shifted profile so as to enable the apparatus to achieve, while operating, the entered target cumulative value within the time period.

Inventors: FALKVALL THORE, GROGAN JEFFREY B, JOHNSON HARLEY D, KELLY THOMAS D, WOLFE ALAN GEORGE, FALKVALL, THORE, GROGAN, JEFFREY, B., JOHNSON, HARLEY, D., KELLY, THOMAS, D., WOLFE, ALAN, GEORGE
Applicants: ALTHIN MEDICAL INC, ALTHIN MEDICAL, INC.
Application year: 1993
Main classification: B01D61
IPC codes: A61M1, A61M39, B01D61, G06Q50