INTERMITTENT SIGNAL ACTUATED NEBULIZER SYNCHRONIZED WITH EXHALATION

Abstract: A self-contained, high capacity nebulizer (10), having automatic mixing (28) and temperature control (34) features is provided. The nebulizer is designed for use in conjunction with mechanical respirators (70), ventilators, or breathing machines, and for this purpose will use electrical signals (8) generated by or received from the respirator (70) to automatically control and synchronize the nebulizing and mixing functions such that nebulization occurs only during the exhalation phase of the respiratory function to load the gas passageway of the respirator (70) to the patient with a standardized dose of medicinal aerosol. Upon commencement of the inhalation phase, the aerosol in the gas passageway is ventilated into the lungs of the patient to which it is attached.

Description: INTERMITTENT SIGNAL ACTUATED NEBULIZER SYNCHRONIZED WITH EXHALATION This application is a σontinuation-in-part of copending U.S. Patent Application Serial No. 07/585,616, filed on September 20, 1990, which is a continuation of U.S. Patent Application Serial No. 270,520, filed on November 14, 1988, now abandoned, which is a continuation of U.S. Patent Application Serial No. 07/071,202, filed on July 8, 1987, now U.S. Patent 4,832,012. Technical Field The present invention relates to nebulizers for creating medicinal aerosols for inhalation therapy. In particular, the present invention relates to nebulizers used during the exhalation phase of the breathing cycle in conjunction with and without interfering with mechanical breathing machines which are used to ventilate the lungs of patients who cannot breathe unaided. Background Art The thin membrane of the lungs provides an easily penetrated, convenient and generally safe means for obtaining rapid absorption of medication by the body. This is especially desirable where the lungs themselves are diseased or injured. Such medication or drugs are generally delivered to the lung membrane in the form of a fine mist or aerosol which is breathed into the lungs through the nose or mouth of the patient. A variety of devices, called nebulizers by those skilled in the art, have been developed for converting liquids into fine aerosols for this purpose. The simplest of these devices is the hand-held atomizer which converts a liquid to an aerosol when a bulb is compressed to produce a jet of air which atomizes the medication and propels it out of the atomizer. To be effective, the aerosols need to be provided at high concentrations and with droplet size in the respirable range (mass median aerodynamic diameter less than 3 micrometers) . Nebulizers are particularly useful for initiating and continuing respiratory therapy in conjunction with respirators, mechanical ventilators or breathing machines (hereinafter referred to generically as respirators) used to ventilate the lungs of patients having serious respiratory impairment. While some respirators incorporate nebulizers in their design, many do not. Nebulizers incorporated into the structure of such respirators often suffer from many disadvantages. One such disadvantage is severely limited capacity for medication to be nebulized, requiring frequent interruptions in the therapy as new medication is added to the nebulizer reservoir. Most, if not all, such nebulizers are incorporated in respirators in which the inhalation and exhalation phases of the breathing cycle are triggered by changes in air pressure caused by the patient himself. Such •• demand" respirators are not useful for patients whose respiratory systems are paralyzed and incapable of causing even slight changes in air pressure. These patients are aided by mechanical respirators in which the phases of the breathing cycle are triggered by electrical signals. There is now no effective means for patients on such respirators to receive aerosol treatment. Thus, the need exists for a nebulizer which can be attached to a mechanical respirator, especially those in which the breathing cycle is controlled by an electrical signal, which has a reservoir capacity sufficient to enable several hours of continuous treatment, which can prevent the settling of suspensions or mixtures without creating nebulization-destroying turbulence. U.S. Patent 4,832,012 discloses the principal of signal actuated synchronization of nebulization for delivery of aerosolized medicine to patients whose breathing is supported or augmented by a mechanical respiratory. In that reference, nebulization could be effected during inhalation or exhalation, but the primary trust of that reference was to provide aerosols during the inhalation phase of the breathing cycle to mix with the inhalation tidal volume provided by the respirator, and in synchrony with the normal operation of the respiratory. However, it has been found that the addition of volume of gas to mix with the inhalation tidal volume provided by the respirator, may interfere with the normal operation of the respirator in certain operating modes, and the medicinal aerosol is diluted by the portion of gas delivered by the respirator. Summary of the Invention The present invention is based upon the nebulization of medicine during and synchronized with the exhalation portion of each breath of the breathing cycle to fill the airline leading from the nebulizer to the patient with a standardized dose of medicinal aerosols that are delivered to the lung by the force of the flow of breathing gas (oxygen- enriched air) delivered by the respirator during the inhalation portion of the breathing cycle. One advantage of this invention is that more concentrated standardized dose of aerosol is delivered to the patient with the first parcel of gas that enters the lungs for each breath during the inhalation process. In addition, the signal used to actuate the nebulizer may be obtained from the ventilator or from an independently generated signal established by the nebulization system utilizing the readily detected respiratory air line pressure or pressure drop across filter from exhaled gas flow. Also, certain safety monitoring features are incorporated into such a system to detect aerosol clogging of respiratory filters and prevent interference with the normal operation of the respirator. The nebulization system of the present invention can be attached to or operated with a mechanical respirator utilizing either a breathing cycle electrical signal obtained from the respiratory or an independent electrical signal generated by the nebulizer system which detects and responds to the exhalation initiation of the respirator. Such a synchronized signal actuated nebulizer system is designed to operate during the exhalation phase of the breathing cycle while treating a sick patient and efficiently providing, in the short time available, a medicinal aerosol in the appropriate and desired volume, concentration, and particle size distribution for deposition in the respiratory airways of the lungs. An important feature of such a system is that all of the aerosol is generated quickly (in about 1 second or less) and in a way that does not interfere with the control system of the respirator. The nebulizer system has a reservoir of capacity sufficient to enable several hours of continuous treatment and with provision to prevent the settling of suspensions or mixtures without creating nebulization-destroying turbulence, and provides a precisely measured volume of medicinal aerosol generated during patient exhalation in a manner to reach the patient at the precise moment when inhalation begins. In one embodiment, the present invention provides a nebulizer for use with mechanical respirators which use electrical signals to control the breathing cycle. The nebulizer of this embodiment uses the existing electrical signals from the mechanical respirator to synchronize aerosol generation to fill the gas passageway from the respirator to the patient during the exhalation cycle. Upon the initiation of the inhalation cycle, the aerosol is delivered from the gas passageway to the patient. Nebulization is obtained in this embodiment using the premixed oxygen-enriched air provided at high pressure to the respirator. Automatic temperature regulation and stirring of the liquid medication is optionally provided to preclude concentration change, separation or settling of the medication. Finally, a large volume reservoir is provided to eliminate the need for refilling during lengthy treatment protocols. Brief Description of the Drawings Figure 1 is a schematic side view of a nebulizer of the present invention operationally attached to a mechanical respirator; Figure 2 is a perspective view of the intermittent signal actuated system of the present invention. Detailed Description of the Invention Figure 1 shows a nebulizer apparatus 10 of the present invention operably connected to a mechanical respirator 70. The nebulizer apparatus 10 comprises, in a housing, compressed gas inlet 2, at one end of a compressed gas conduit 4, adapted to be connected to a compressed gas source at pressure indicated by gauge 5. Preferably this compressed gas source is the same source which is furnishing oxygen-enriched air to the respirator 70, and provides compressed air or oxygen mixture to the nebulizer ranging up to about 50 psig. Compressed gas conduit 4 is connected at the other end to a first electrically operated nebulizer valve 7, and a plurality of second electrically operated nebulizer valves 6, all of which are substantially similar. Examples of such valves which have been found useful include the Honeywell Skinner K4M ultraminiature 4-way solenoid operated pneumatic valve and Numatics HS series 2-way solenoid operated valves. Three valves 6 are shown in Figure 1. Nebulizer valves 6 and 7 are connected by a plurality of electrical lead wires 8 to a microprocessor 9 and are controlled by the microprocessor 9. The microprocessor 9 receives the signals from a signal source 72 on the respirator 70 which controls the inhalation/exhalation phase of the breathing cycle. The microprocessor 9 controls the valves 6 and 7 to provide for a safe and effective operation. Examples of signal source 72 include a respirator solenoid, such as a solenoid actuated inhalation valve, an external electronic monitoring system, or an electronic interface attached to a signal generator on respirator 70, such as an interface connected to a logic circuit in the respirator. A control unit 80, whose control panel is shown in Figure 2, is connected to the microprocessor 9. The control unit 80 controls the functions of the nebulizing apparatus 10 of the present invention. Each of the nebulizer valves 6 connects the compressed gas source 4 to nebulizer conduits 12 leading to aerosol nozzles 22. Each nebulizer valve 6 switches between two positions as electrical on/off signals are received. In the first position, during the exhalation phase of the respirator 70 when the electric signal is "on", a passageway is opened between compressed gas conduit 4 and nebulizer conduits 12 and remain open until the desired aerosol volume has generated or until the inhalation phase is initiated by the respiratory 70 as controlled by microprocessor 9. In the second position, when the electric signal is "off* 1 , the nebulizer conduits 12 are sealed off. Nebulizer conduits 12 are attached at their other ends to aerosol nozzles 22, which include liquid feed tubes 24 extending into reservoir 26. Reservoir 26 includes magnetic stirring bar 28 which is located in the bottom of the reservoir. The liquid medicine contained in reservoir 26 is preferably kept at constant temperature by a reservoir heater or cooler 34. A chamber 14 houses an AC motor 11 which rotates a cooling fan 13 and a magnet 18. The rotation of the magnet 18 causes the stir bar 28 to rotate to prevent sedimentation or separation of medicinal constituents. The liquid medicine in the reservoir 26 is drawn via the liquid feed tubes 24 and is converted by the aerosol nozzles 22 into an aerosol having droplets with a mass median aerodynamic diameter less than about 3 micron. The aerosol is generated into the air space 25 above the reservoir 26. The aerosol generated in the air space 25 enters into an aerosol tube 31. The temperature of the aerosol in the aerosol tube 31 is controlled by a temperature controller 33. In one embodiment, the temperature controller is simply an electric heater having a control unit. Within the aerosol tube 31 is also a neb-flow sensor 35. The neb-flow sensor 35 detects the amount of aerosol being delivered through the aerosol tube 31. The output of the neb-flow sensor 35 is supplied as a signal to the microprocessor 9 via neb-flow sensor pressure/vacuum lines 17. The respirator 70 has an inhalation tube 71 and an exhalation tube 73. The inhalation tube 71 fluidically connects the respirator 70 to a patient and during the inhalation phase, breathing gas is supplied from the respirator 70 along the inhalation tube 71 into the respiratory tract of the patient. The aerosol tube 31 connects the air space 25 above the liquid 26 to the inhalation tube 71 at a nebulizer input 30. In addition, a pop-off valve 13 is also located in the inhalation tube 71. The function of the pop-off valve 13 is to relieve any pressure which is generated to dangerous levels within the inhalation tube 71. It functions purely as an emergency safety valve. Finally, an airway pressure sensor 15 is also positioned in the inhalation tube 71. The airway pressure sensor 15 generates a signal which is also supplied to the microprocessor 9 via airway pressure monitoring line 16. A humidifier 37 whose output is water vapor ixed with the breathing gas is also connected to the inhalation tube 71. The exhalation tube 73 fluidically connects the patient to the respirator 70. Located within the exhalation tube 73 is an exhalation filter 75. Upstream from the exhalation filter 75, i.e., between the exhalation filter 75 and the patient is an upstream filter pressure sensor 77. Downstream from the exhalation filter 75, i.e., between the exhalation filter 75 and the ventilator 70 is a downstream filter pressure sensor 79. The upstream filter pressure sensor 77 and the downstream filter pressure sensor 79 each provide a signal which is supplied to the microprocessor 9. The solenoid 7 is also connected to receive gas from the gas conduit 4 and is adapted to supply gas to a decay flow line 11 to the exhalation tube 73, upstream from the upstream filter pressure sensor 77. Thus, the solenoid 7, when activated, provides a stream of compressed gas which is supplied into the exhalation tube 73, between the patient and the upstream filter pressure sensor 77. The function of the decay solenoid 7 is also controlled by the microprocessor 9. The operation of the nebulizer apparatus 10 of the present invention will be understood as follows. The practitioner first determines the amount of volume per breath of the standardized dose of aerosol which is to be generated by the apparatus 10 of the present invention which is to be supplied to the inhalation tube 71. The amount is entered on the control unit 80. The microprocessor 9 receives the signal and based upon its knowledge of the gas pressure from the compressed gas conduit 4, and the cross-sectional area of each of nebulizing nozzles 22, the microprocessor 9 calculates the amount of time which the solenoids 6 would have to be activated in order to introduce the desired amount of aerosol into the inhalation tube 71. Alternatively, the signal from the neb-flow sensor 35 is used by the microprocessor 9 to turn off the nebulizer solenoids 6 when the desired charging volume has been generated. When the mechanical respirator 70 begins the exhalation phase of the respiratory cycle, electrical signal 72 supplies the signal to the microprocessor 9. (As will be discussed hereinafter, a number of other signals are supplied to the microprocessor 9 to indicate the beginning of the exhalation cycle. These additional signals are used in the event the ventilator 70 cannot provide the electrical signal source 72 or is used as a safety backup to the electrical signal source 72.) When the mechanical respirator 70 begins the exhalation phase, the inhalation port 76 is closed. The exhalation port 74 is opened, opening the exhalation tube 73. After the electrical signal source 72 generates the signal indicating the beginning of the exhalation phase, the microprocessor 9 activates the solenoids 6 to the three nebulizing nozzles 24. Thus, after the commencement of the exhalation phase, and after the detection of the electrical signal, maximum generation of the aerosol from the apparatus 10 commences and continues until the standardized volume or dose of aerosol has been generated. Compressed gas flows through the compressed gas conduit 4 into the three nebulizer conduits 12 and into the nozzles 22, which draw liquid via liquid feed tube 24 from the liquid reservoir 26. The aerosol is then generated and is supplied into the air space 25 above -li¬ the reservoir 26. The aerosol generated in the air space 25 then enters into the aerosol tube 31 where the temperature thereof is controlled by the temperature controller 33. The aerosol then leaves the aerosol tube 31 and enters into the inhalation tube 71 through port 30. Generation of the standardized dose of aerosol fills the charging volume space 40 between the nebulizer input port 32 and the patient 41 in the inhalation tube 71. Any excessive aerosol will enter the exhalation tube 73 and return to the respirator 70. During the exhalation phase, the pressure in the inhalation tube 71 is monitored by the airway pressure sensor 15 and is supplied to the microprocessor 9. This provides a safety signal to the microprocessor 9 to shut off the function of the aerosolization in the event pressure within the inhalation tube 71 builds to an excessive level or if inhalation begins. In addition, a mechanical safety pop-off valve 13 is provided wherein in the event the pressure in the inhalation tube 71 exceeds the pressure regulation of the pop-off valve 13, the valve 13 would automatically open relieving the pressure in the inhalation tube 71. During the exhalation cycle, the respirator 70 continuously monitors the pressure on the exhalation tube 73. In order to provide for a smooth decay flow of gas entering into the exhalation tube 73 from the patient, and thereby simulating smooth exhalation reduction from the patient, the solenoid 7 is activated during the exhalation cycle. When the solenoid 7 is activated, the gas from the compressed gas conduit 4 fills a fixed volume chamber 82. The fixed volume chamber 82 has a calibrated orifice which is connected to the decay flow line 11 and is supplied to the exhalation tube 73. During the time period in which the aerosol is being generated, the fixed volume chamber 82 is filled with breathing gas to a predetermined pressure. At the end of the charging period, the compressed gas from the gas conduit 4 is turned off. The gas from the fixed volume chamber 82 is then allowed to flow in a decay manner into the exhalation tube through the orifice connecting the chamber 82 to the decay flow line 11. When the pressure in the fixed chamber 82 gradually reduces, the flow entering the decay flow line 11 simulates a natural first order decay. Synchronous with the beginning of the exhalation cycle, the three nebulizing nozzles 22 are turned on simultaneously or one at a time to produce the desired charging volume during a portion of the exhalation period to allow the respirator 70 to maintain and/or support the patient's spontaneous breathing effort without interference from the charging flow. When the respirator 70 begins the inhalation phase of the respiratory cycle, the electrical signal source 72 switches to an "off" position. In the "off" position, the respirator inhalation port 76 opens; the respirator exhalation port 74 is closed. The solenoid valves 6 are controlled by microprocessor 9 when first, the desired standardized dose is reached (usually only takes a portion of the exhalation phase) , or secondly when microprocessor 9 detects the electrical signal source 72 turn to an "off" position. In the first priority, the solenoids 6 can be turned off one at a time. In the second case, the solenoids 6 are turned off immediately to allow respirator 70 to begin the inhalation phase. The gradual turning off of the plurality of solenoids 6 generates a gradual pressure reduction and flow shaping that prevents spurious triggering of the respiratory ventilator 70 caused by rapid flow changes. Because the aerosol generated by the apparatus 10 of the present invention fills the inhalation tube 71 between the nebulizer input 30 and the patient with the desired standardized volume or aerosol dose, when the ventilator 70 begins the inhalation phase and pushes the gas in the inhalation tube 71 into the respiratory tract of the patient, the aerosol in the charging volume space 40 would be the first gas pushed into the lungs of the patient. Thus, the medicine produced by the aerosol would be first delivered to the patient during the inhalation cycle. The advantage of the apparatus 10 and method of the present invention is that generating the aerosol and introducing it into the charging volume space 40 during the exhalation phase means the aerosol is pre- charged in the inhalation tube. Further, the amount of aerosol in the charging volume space 40 can be metered or controlled by the microprocessor 9. In addition, the introduction of aerosol during the exhalation phase does not perturb the pressure of the gas from the respirator 70 delivered during the inhalation phase. As previously discussed, the source of electrical signal 72 may not be provided by all ventilators 70. The upstream filter sensor 77 and the downstream filter sensor 79 each provides a signal via the exhalation filter sensor pressure/vacuum lines 19, the difference of which indicates the commencement of the exhalation phase. Thus, upon the immediate commencement of the exhalation phase, a pressure differential would be detected between the upstream filter sensor 77 and the downstream filter sensor 79, respectively. This pressure differential, supplied as a signal to the microprocessor 9, would indicate to the microprocessor 9 that the exhalation cycle has commenced. This signal can be used by microprocessor 9 to begin nebulization when no respirator electrical signal is available. Alternatively, the airway pressure sensor 15 supplies a signal to the microprocessor 9 indicating the beginning of the exhalation and also the beginning of the inhalation for control of the nebulization by microprocessor 9 when no respirator electrical signal is available. In addition, there are many safety considerations with the apparatus 10 of the present invention. With the upstream and downstream filter sensor 77 and 79 respectively having an exhalation filter 75 therebetween, the condition of the exhalation filter 75 can be continuously checked. As the apparatus 10 of the present invention is continuously used, and as the filter 75 becomes increasingly clogged, the pressure differential between the upstream filter sensor 77 and the downstream filter sensor 79 would increase. Alternatively, the loading/clogging of the exhalation filter can be detected using the airway pressure sensor 15 which supplies a signal to microprocessor 9 via line 16. This is because airway pressure during nebulization is a function of the resistance of the exhalation filter, The filter loading/clogging can be detected by the microprocessor 9 and can be signaled on the control unit 80 as an alarm that the exhalation filter 75 needs to be examined and/or changed. As previously discussed, the airway pressure sensor 15 provides an independent airway pressure measurement upstream to exhalation filter to monitor the patients safety. Finally, the control unit 80 can control the apparatus 10 to cause it to pause its operation. This provides an independent check on the respirator system 70. The control unit shown in Figure 2 provides for setting of charging volume, respirator selection (for different commercial respirators) , heater temperature, nebulizer hold option, alarm test option, alarm reset, and alarm silence. Further, the control unit displays respirator selection, charging volume, alarm, warning, and caution, indication of exhalation filter loading, patient peak inspiratory pressure, heater temperature and nozzle gas pressure. Signals from the neb-flow sensor 35 are used to alarm if either inadequate charging volume is generated or if the nebulizer nozzle 24 malfunction in the "on" position. The microprocessor 9 provides yet additional safe and effective operation for the apparatus 10 of the present invention. In the preferred embodiment, the microprocessor 9 is an Intel 8751 available from Intel Corporation. A copy of the program, written in the assembly language, for execution by the microprocessor 9 is attached as Exhibit A. -. VISAN9P, STITLE SAMPLE SIGNALS AND CONTROL VISAN <? .SAMPLE VENTILATOR ANALOG SIGNAL AND PRESSURE AND FLOW SIGNALS FROM NEBULIZEP AND CONTROL 3 NEBULIZER VALVES. CONTROL SERIAL INTERFACE WITH OPERATOR SWITCHES AND DISPLAYS. OOOB FLOTIM EQU 11 :TIME=2.2S 0032 NOFLOTIM EQU 50 :TIME=10S 002D FLO_TH EQU 45 :FLO 18LPM.0.14CMWC,0.I7V,2DH 008C NOFLO_TH EQU 140 :FLO 35LPM.1.12CMWC.0.5V,8CH 00E0 PIP_THRESH SET 120*8/5+32 ;THR=4.4V,EOH,120CM 0037 FILTAWP_THRESH EQU 55 :PRES=34CM,1.07V.37H 008D FILTDP_THRESH EQU 141 :PRES=5.5CM,2.75V,SDH 0008 PATINSP_THRESH SET 5*8/5 ;PEEP-AWP= 5 CM WC 00A0 TEMP_HI SET 80*2 ;UPPER LIM 80C.A0H 0000 FSEG ;B NKO 0001 ALTNAME R1.RVENT_SIG ; ENTILATOR SIGNAL 0002 ALTNAME R2,RFLT_FL0 ;EXH FILT DP SIGNAL 0003 ALTNAME R3,RAW_PRESS ;AWP TAP AT VENT 0004 ALTNAME R4,RNEB_FL0 ;NEB OUTPUT DP 0005 ALTNAME R5.RTEMP ;TEMP DEG C * 2 0006 ALTNAME R6.RVENT :VENTILATOR ft SELECTED ;BANK1 0001 ALTNAME R1-RCHG__TIM ;NEB CHARGE TIME 0002 ALTNAME R2.RDIV10 :TIMER DIV BY 10 0003 ALTNAME R3.RDIV5 ;TIMER DIV BY 5 0004 ALTNAME R4,R0N_TIM ;NEB FLOW ON TIME 0005 ALTNAME R5,R0FF_TIM ;NEB FLOW OFF TIME 0006 ALTNAME R6.RSIL_TIM ;AUDIO OFF TIME 0007 ALTNAME R7,RH0LD_TIM ;NEB OFF TIME 0000 ENDS 0000 DSEG 0023 LED1 DATA 23H :LED BANKS 0026 LED2 DATA 26H 0025 LED3 DATA 25H 0028 CHG_VOL DATA 28H :HUNS DEC DISPLAY 002*3 DECJHUN DATA 29H ■ :NUMBER FOR DISPLAY 002A DEC_TEN DATA 2AH 002B DECJDNE DATA 2BH 002C FLTLD_HUN DATA 2CH ; FILTER LOAD SETTING 002D FLTLD_TEN DATA 2DH 25% , 50% OR 75% 002E FLTLD_ONE DATA 2EH 002F THREE_CYCLE DATA 2FH :THREE BREATH COUNTS 0040 FLTFLO_LO DATA 40H :RUNNING AVG CALC 0044 FLTFLO_AVG DATA 44H 0045 CLOG_LO DATA 45H 0046 CLOG_HI DATA 46H 0048 AWP_LO DATA 48H 004C <_.WP_AVG DATA 4CH 004D AWO MAX DATA 4DH EXHIBIT A 004E PIP_STDRE DATA 4EH 0050 POSSUM DATA 50H ;NEB POS SUM 0051 NEGSUM DATA 51H ;NEB NEG SUM 0055 FLTLD25 DATA 55H ; PERCENT FILTER LOAD 0056 FLTLD50 DATA 56H 0057 FLTLD75 DATA 57H 0058 PIP_LO DATA 58H 005B PIP_AVG DATA 5BH 0060 PEEP_LO DATA 60H 0063 PEEP_AVG DATA 63H 0011 TEMP_SET DATA 11H 0012 TEMP_DEC DATA 12H 0014 ONTIMER DATA 14H 0015 OFFTIMER DATA 15H 0019 SET_CHGTIM DATA 19H ;CONTROLS CHARGE VOL 001A VENT_LO DATA 1AH LOWER THRESH 001B VENTJHI DATA 1BH ;UPPER THRESH 001C TEMP_STORE DATA ICH TEMPORARY STORE 001D DIVIDE1 DATA 1DH ;TRANS DEL 001E DIVIDE2 DATA 1EH 0068 VENT_LOW DATA 68H 006C VENT_AVG DATA 6CH 0028 ENDS 0000 BSEG 0000 WAIT BIT OH ;FIVE BREATH WAIT 0001 EXH BIT 1H ;EXHALATION PERIOD 0002 DIV21 BIT 2H ;TIMER 0003 VOL_CHG BIT 3H ;0P CHANGING VOL SET 0004 VEN_SEL BIT 4H ;0P SELECTING VENTILATOR 0014 BEEP BIT 14H ;AUDIO ON/OFF 0006 SIL BIT 6H ;TWO MIN SILENCE 0007 SPON_BR BIT 7H ;PATIENT BREATH 0008 HOLD BIT 8H ;NEB OFF 0009 SEE_PIP BIT 09H ;DISPLAY PIP OOOB DIV22 BIT OBH ;TIMER OOOC ALM BIT OCH ;AUDIO ALM SET OOOD OFF_ALM BIT ODH :BLINK_BEEP OOOA ALM_TST BIT OAH :SET DURING TEST OOOE DIV24 BIT OEH ;START DELAY OOOF FLOW BIT OFH ;NEB FLOW ON 0010 SEE_TEMP BIT 10H ' 0011 SEE_LD BIT 11H 0012 DELI BIT 12H 0013 DEL_4TENTHS BIT 13H .TIMER 0015 INSP BIT 15H ;INSP TIME 0016 CL0G1 BIT 16H :COUNT FLT LD SAMP 0017 CL0G2 BIT 17H * 001C L14 BIT ICH LO BAT LED1 001D FILTER CHANGE 001Ξ WAIT 5 CYCLES 001F LO FLOW 0034 NO FLOW LED2 0035 NEB HOLD 0036 FILT CLOG 0037 = L27 BIT 37H :CONT FLOW 002C = L34 BIT 2CH :HI PRESS LED3 0020 = L35 BIT 20H :HI TEMP 0038 = DIV23 BIT 38H ;TIMER 0039 = CLK BIT 39H ;TIMER 0.2S 003A = HEAT BIT 3AH :HEATER ON 003B = TEMP BIT 3BH 0025 ENDS 0000 CSEG ; MACRO DEFINITIONS ANALOG MACRO SAVE :ANALOG-DIGITAL CONVERSION NOP DELAY TIME FOR MUX NOP NOP NOP NOP CLR P2.3 ;START CONVERSION NOP ; LLOW CONV. TIME 5 MICROSEC NOP NOP MOV SAVE,PI ;SAVE DIGITAL OUTPUT SETB P2.3 ENDM RUNNING_AVG MACRO LODATA,N.INSIG, VG CALCULATES RUNNING AVERAGE OF N BYTES IN DATA MEMORY ;WITH A LOW ADDRESS OF LODATA. INPUT SIGNAL IS LOCATED :AT INSIG. AVERAGE OUTPUT IS AT AVG. PUSH PSW PUSH ACC PUSH B CLR PSW.3 ;BANKO CLR PSW.4 MOV A.ftLODATA ;SET RO ADD A,#N DEC A MOV RO.A NEXT1: DEC RO MOV A.SRO :SHIFT UP INC RO MOV @Rt).A " DEC RO CJNE RO,ftLODATA,NEXTl : LODATA ADDRESS MOV A. INSIG ;MOV NEW DATA TO LODATA MOV B.#N DIV AB MOV (3R0.A MOV A.8L0DATA :ADD TO CALC AVG ADD A.ftN DEC A MOV TEMD STORE. MOV A,@RO XCH A,RO NEXT2: XCH A.RO INC RO ADD A,_RO XCH A,RO CJNE A,TEMP_ST0RE,NEXT2 XCH A.RO MOV AVG, A POP B POP ACC POP PSW ENDM FIFO MACRO NEW_IN ,N1 , NEW_DATA REGISTER STORES SUCCESSIVE DATA FIFO FROM NEW_DATA SOURCE INTO REGISTER ADDRESS NEW_IN. Nl IS THE NUMBER OF DATA STORED. CLR PSW.3 :BANKO CLR PSW.4 MOV A,ftNEW_IN ;SET RO ADD A.ftNl DEC A MOV RO,A NEXT3: DEC RO MOV A.ΘRO ;SHIFT UP INC RO MOV _RO,A DEC RO CJNE R0.ftNEW_IN,NEXT3 ;NEW_IN ADDR MOV NEW_IN,NEW_DATA ENDM BINARY_BCD MACRO HUN,TEN,ONE :CONVERTS BYTE LOCATED IN ACC TO DECIMAL • AND STORES RESULT IN HUN, TEN AND ONE. MOV HUN.ftO :CLEAR REGISTERS MOV TEN,ftO MOV ONE,ftO CALC__HUN: ;:SUBTRACT 100 MOV B.A NEXTSUB1: CLR C SUBB ATftlOO JC CALC_TEN INC HUN MOV B.A .SAVE SJMP NEXTSUB1 CALC_TEN: —SUBTRACT 10 MOV A.B NEXTSUB2: CLR C SUBB A,ftlO JC CALC ONE INC TEN MOV B . A SJMP NEXTSUB2 CALC_ONE: MOV ONE,B MOV A,HUN JNZ BCD_OUT MOV HUN.ftOFH ;BLANK MOV A,TEN JNZ BCD_OUT MOV TEN.ftOFH ;BLANK BCD_OUT: ENDM 1000 ORG 1000H ;%S BEGIN: 1000 0130 AJMP INITIALIZE 1003 ORG 1003H :MANUAL SWITCH INT..INTO 1003 0219CC LJMP MAN_SW 100B ORG 100BH ;TIMER 0 INT..TFO 100B 61F3 AJMP TIM_SAMP 1013 ORG 1013H :LOW BATTERY INT.,INT1 1013 C28B CLR IE1 1015 D21C SETB L14 1017 852399 MOV SBUF.LEDl 101A D125 ACALL TRANS_DEL 101C 32 RETI 1030 ORG 1030H INITIALIZE: ;:SET REGISTERS 1030 D212 SETB DELI INIT1: 1032 538700 ANL PC0N,#00H ; SMOD = 0 1035 758920 MOV TMOD.ftOOlOOOOOB ; TIME 1 MODE 2, TIME 0 MODE 0 1038 759850 MOV SC0N,#01010000B ; SERIAL PORT MODE 1 103B 758C70 MOV TH0,ft70H ;SET TIMER 103E 758DFD MOV THl.ftOFDH ; BAUD RATE 9600 1041 75A078 MOV P2,#78H ; OUTPUTS OFF 1044 75A887 MOV IE,ft87H ;ENABLE EX1,ET0,EX0 1047 75B802 MOV IP,ft02H ; FIRST PRIORITY TIMER 0 104A 758850 MOV TCON.ftSOH :TIMERS ACTIVE, ITl δ. ITO ;LOW LEVEL TRIGGGER 104D 758000 MOV PO.-#OOH- 1050 758130 MOV SP.830H STACK ADDRESS 1053 752000 MOV 20H,#00H ;CLEAR BITS 1056 752100 MOV 21H,ftOOH 1059 752200 MOV 22H,ft00H 105C 752700 MOV 27H,ftOOH 105F D2D3 SETB PSW.3 BANK1 lOcl 7B05 MOV RDIV5.ft5 R3 10to3 7A0A MOV RDIVlO.ftlO R2 1065 7E78 MOV RSIL_TIM,S12C :R6,DΞL 2 MIN (3CH) 1067 7F78 MOV RHOLD TIM.ftl20 :R7 MOV ROFF_TIM.ftNOFLOTIM ;R5, CLEAR REGISTER MOV RON_TIM,ftFLOTIM ;R4 MOV RCHG_TIM,ftO ;R1 MOV OFFTIMER.ftNOFLOTIM MOV ONTIMER.ftFLOTIM MOV POSSUM.«0 MOV NEGSUM,ftO MOV TEMP_SET.ft40 :DEFAULT MOV FLTLD_HUN.«OOH MOV FLTLD.TEN.ftOlH MOV FLTLD_0NE,«02H MOV DIVIDEl,ftOFFH :TRANS DEL MOV DIVIDE2,ft04H SETB DIV21 ;TIMER SETB DIV22 MOV VENT_HI,#45H ;THRESH = 2.7V/2 = 1.35V MOV VENT_L0,ft3BH ;THRESH = 2.3V/2 = 1.15V MOV SET_CHGTIM,#40 ;CASE8 GIVES 60 CLR PSW.3 BANKO MOV RVENT,ftl3H R6.VENT ft MOV SBUF,RVENT ACALL TRANS_DEL MOV LED1,#44H ;WAIT LED ON MOV SBUF,LED1 ACALL TRANS_DEL MOV LED2,#05H MOV SBUF.LED2 ACALL TRAN≤_DEL MOV LED3,ft06H MOV SBUF.LED3 ACALL TRANS_DEL MOV CHG_VOL,ft40H :CASE8 GIVES 600ML JNB DEL1.C0NT5 CLR DELI CLR DIV22 CLR DIV24 DELAY1: JB DIV24,DELAY2 SJMP DELAY1 DELAY2: JNB DIV24 , END_DEL SJMP DELAY2 END_DEL: AJMP INIT1 C0NT5: LCALL CASE81 NOP NOP NOP MAIN .OOP: ;:INSP/EXP CYCLE LCALL SERVICE " JB ALM.ALARM CLR PSW.3 :BANKO CLR PSW.4 MOV A.VENTJ-.I ;WAIT FOR SOI CLR C SUBB A.VENT_AVG :R1 JNC MAIN_LOOP ;?NOT INSP 10E° D215 SETB INSP EOI: ; :WAIT FOR EOI LCALL SERVICE JB ALM. LARM MOV A.VENT_LO CLR C SUBB A,VENT_AVG ;R1 JC EOI ;?N0T EOI CLR INSP SETB PSW.3 ;BANK1 CLR PSW.4 MOV RCHG_TIM,ftOOH ;R1 CHK_EXH: ; :FIND AWP PEAK & DROP MOV A.AWP_MAX CLR C SUBB A.AWP_AVG JC DELAYS ;?AWP MAX > AWP AVG CHK_AWP: ; :CHK AWP DROP MOV B,A ;SAVE MOV A,AWP_MAX CLR C SUBB A,PEEP_AVG ;AWP MAX - PEEP JC SET_EXH ;AWP<PEEP DIV AB SUBB A, #5 JC SET_EXH ;?DROP 20% AJMP DELAY5 SET_EXH: SETB EXH MOV PIP_STORE,AWP_MAX ;NEW PIP MOV AWP IAX.ftO ; RESET AJMP CHK PEAK 1121 00 NOP DELAYS: ;:WAIT 0.5S 1122 D2D3 SETB PSW.3 ;BANK1 1124 C2D4 CLR PSW.4 1126 7432 MOV A,#50 1128 C3 CLR C 1129 99 SUBB A,RCHG_TIM 112A 50D4 JNC CHK_EXH ;?NOT 0.5S 112C 00 NOP 112D 00 NOP 112E 00 NOP ALARM: 112F D20C SETB ALM 1131 43A070 ORL P2,ftOlilOOOOB .OFF VALVES 113^ 200605 CHK_SIL: JB SIL.CONT 1137 200802 JB HOLD.CONT 113A D2A7 SETB P2.7 :BUZZER ON 113C D200 CONT: SETB WAIT 113E D21Ξ SETB L16 :WAIT 1140 8523 < -'9 MOV SBUF.LΞ 1 1143 D125 ACALL TRANS_DEL 1145 12156E LCALL SERVICE 1148 200CE9 JB ALM.CHK_SIL 114B 752F00 MOV THREE_CYCLE,#0 114E 01D8 AJMP MAIN LOOP CHK_PEAK: ;:PRESS LIMIT 120 CM 1150 20000A JB WAIT,CALC_PIP 1153 E54E MOV A,PIP_STORE 1155 C3 CLR C 1156 9563 SUBB A.PEEP_AVG 1158 C3 CLR C 1159 94E0 SUBB A,ftPIP_THRESH 115B 5046 JNC HIPRESS CALC_PIP: 115D RUNNING_AVG PIP_LO,3, PIP_STORE,PIP.AVG CALCULATES RUNNING AVERAGE OF 3 BYTES IN DATA MEMORY WITH A LOW ADDRESS OF LODATA. INPUT SIGNAL IS LOCATED + AT INSIG. AVERAGE OUTPUT IS AT AVG. +115D CODO PUSH PSW +115F COEO PUSH ACC +1161 COFO PUSH B +1163 C2D3 CLR PSW.3 :BANKO +1165 C2D4 CLR PSW.4 +1167 7458 MOV A,ftPIP_LO :SET RO +1169 2403 ADD A,#3 +116B 14 DEC A +116C F8 MOV RO,A + NEXT10001: +116D 18 DEC RO +116E E6 MOV A,@RO .SHIFT UP +116F 08 INC RO +1170 F6 MOV @RO,A +1171 18 DEC RO +1172 B858F8 CJNE R0.ftPIP_L0,NEXT10001 ; ODATA ADDRESS +1175 E54E MOV A.PIP_STORE ;MOV NEW DATA TO PIP_LO +1177 75F003 MOV B.#3 +117A 84 DIV AB +117B F6 MOV QRO.A +117C 7458 MOV A,ftPIP_LO ;ADD TO CALC PIP_AVG +117E 2403 ADD A,ft3 +1180 14 DEC A +1181 F51C MOV TEMP_STORE,A +1183 E6 MOV A,@RO +1184 C8 XCH A.RO -t- NEXT20001: +1185 C8 XCH A.RO +1186 08 INC RO +1187 26 ADD A,@RO +1188 C8 XCH A.RO +1189 B51CF9 CJNE A,TEMP_ST0RE,NEXT2OO01 +118C C8 XCH A.RO *118D F55B MOV PIP_AVG.A ->-118F DOFO POP B +1191 DOEO POP ACC POP PSW NOP NOP NOP JB WAIT . STRT_EXH JB HOLD , STRT_EXH ANL P2 , ftl0001111B ;0N VALVES AJMP STRT_EXH HI PRESS : SETB L34 ;HI PRESS MOV SBUF,LED3 ACALL TRANS.DEL NOP ALARM1: AJMP ALARM NOP STRT_EXH: SETB PSW.3 ;BANK1 CLR PSW.4 MO V RCHG_TIM,ftOOH ;R1,RST CHARGE TIME CHARGE: CLR PSW.3 ;BANK 0 LCALL SERVICE JB ALM.ALARM1 MOV A,VENT_HI V ENTILATOR INSPIRATION' CLR C SUBB A,VENT_AVG JNC CHK_CHGTIM ;?N0 VENT INSP1 ORL P2,#01H0000B ;OFF VALVES CHK_VOL: SETB PSW.3 ;BANK1 CLR PSW.4 JB WAIT,CHK_WAIT1 MOV A,SET_CHGTIM A,RCHG_TIM ;R1 K_WAIT1 ;:VOL>SET MOV B.A MOV A,SET_CHGTIM DIV AB SUBB A.ftlO JNC CHK_WAIT1 SETB L17 ;L0 FLOW LED MOV S8TF.LED1 ACALL TRANS_DEL CHK_W A IT1: AJMP CHK_WAIT NOP CHK_CHGTIM: M O V A, SET_CHGTIM ;SET VOLUME REACHED ? SETB PSW.3 :BANK1 CLR C SUBB A.RCHG_TIM ;R1 J N C C HARGE ;?VOL < SET VOL OR L P2. f tOlllOOOOB ;OFF VALVES 11F1 20004B JB WAIT,CHK_EOEXHl 11F4 101629 JBC CLOGl. IRST_SAMP :MEAS FLT LD SAMP 11F7 30172B JNB CL0G2,FLT_LD UFA C217 CLR CL0G2 :SECOND SAMPLE HFC E544 MOV A,FLTFLO_AVG HFE 2545 ADD A.CLOG_LO 1200 F546 MOV CLOG_HI,A ;UPPER LIM FILT CLOG 1202 C3 CLR C 1203 13 RRC A ;DIV BY 1204 F545 MOV CLOG_LO ,A LOWER LIM FILT CLOG 1206 Z CLR C 1207 13 RRC A ;HALF CLOG LO 1208 F5F0 MOV B.A ;SAVE 120A 2545 ADD A,CLOG_LO 120C F556 MOV FLTLD50.A ;STORE 50% LEVEL 120E E5F0 MOV A,B 1210 C3 CLR C 1211 13 RRC A ;ONE FOURTH CLOG LO 1212 F5F0 MOV B.A ;SAVE 1214 2545 ADD A,CLOG_LO 1216 F555 MOV FLTLD25.A ;STORE 25% LEVEL 1218 E5F0 MOV A.B 121A 2556 ADD A.FLTLD50 121C F557 MOV FLTLD75.A :STORE 75% LEVEL 121E 4142 AJMP CHK_DPTHRESH FIRST_SAMP: ;:FIRST FLT LD SAMP 1220 854445 MOV CLOG_LO,FLTFLO_AVG ;SAVE 1223 4142 AJMP CHK DPTHRESH FLT_LD: ;:SAVE FILT LOAD % MOV A.FLTFLO_AVG CLR C SUBB A,CLOG_HI JC TEST75 SETB L26 ;FILTER CLOG LED MOV SBUF.LED1 ACALL TRANS_DEL MOV FLTLD_HUN,#10H ;SET FILTER LOAD 100% MOV FLTLD_TEN.ft01H MOV FLTLD_0NE,ft02H AJMP ALARM 123E 00 NOP 123F 41A7 CHK_E0EXH1: AJMP CHK_EOEXH 1241 00 NOP CHK_DPTHRESH: 1242 E544 MOV A.FLTFLO_AVG 1244 C3 CLR C 1245 948D SUBB A.«FILTDP_THRESH 1247 40F6 JC CHK_E0EXH1 ;BELOW THRESH 124 Q D236 SETB L26 :FILT CLOG LED 124B 852C.99 MOV SBUF.LED2 ACALL TRANS_DEL MOV FLTLD_HUN.ftlOH MOV FLTLD_TEN.ft01H MOV FLTLD_0NE.ft02H AJMP ALARM TEST75: ;:TEST 75% CLOG MOV A.FLTFLO_AVG CLR C SUBB A.FLTLD75 JC TEST50 SETB L15 ;FILTER CHANGE LED MOV SBUF,LED1 ACALL TRANS_DEL MOV FLTLD_HUN,ftOFOH ;BLANK MOV FLTLD_TEN,ft71H MOV FLTLD_0NE,#52H AJMP CHK_DPTHRESH TEST50: ;:TEST 50% CLOG MOV A,FLTFLO_AVG CLR C SUBB A,FLTLD50 JC TEST25 MOV FLTLD_HUN,ftOFOH MOV FLTLD_TEN,ft51H MOV FLTLD_0NE,ft02H AJMP CHK_DPTHRESH TEST25: ;:TEST 25% CLOG MOV A,FLTFLO_AVG CLR C SUBB A.FLTLD25 JC TESTO MOV FLTLD_HUN,#OFOH MOV FLTLD_TEN,«21H MOV FLTLD_0NE,ft52H AJMP CHK_DPTHRESH TESTO: MOV FLTLD_HUN,ftOFOH MOV FLTLD_TEN,ftOFlH MOV FLTL _0NE,ft02H AJMP CHK_DPTHRESH NOP ALARM2: AJMP ALARM NOP CHK_EOEXH: LCALL SERVICE JB ALM, LARM2 ' CLR PSW.3 ;BANKO CLR PSW.4 MOV A,VENT_HI SUBB A,VENT_AVG :R1 JNC PAT_INSP CLR EXH :END OF EXHALATION RUNNING_AVG PE£P_LO, .AWP_AVG.PEE°_AVG PAT_INSP: 12F6 E563 MOV A.PEEP_AVG 12F8 C3 CLR C 12F9 954C SUBB A.AWP_AVG :PEEP - AWP 12FB 40AA JC CHK_EOEXH ;AWP > PEEP 12FD 9408 SUBB A.«PATINSP_THRESH 12FF 40Ao JC CHK_EOEXH :?N0 PAT INSP 1301 C201 CLR EXH 1303 D207 SETB SPON 6R 1305 00 NOP 1306 00 NOP 1307 00 NOP AIT INC3: 1336 052F INC THREE_CYCLE 1338 00 NOP G0J3N: ;:START MAIN LOOP 1339 01D8 AJMP MAIN_LOOP 133B 00 NOP 133C 61EB 0UT1: AJMP OUT 133E 00 NOP BLINKJ3EEP: ::ON/OFF DISPLAY & BUZZER 133F 1038FA JBC DIV23.0UT1 ;PERIOD 0.4S 1342 D238 SETB DIV23 1344 200AF5 JB ALM_TST,0UT1 1347 C2D3 CLR PSW.3 ;BANKO 1349 C2D4 CLR PSW.4 134B 100D50 JBC OFF_ALM, TURN_OFF TURNJ3N : ~ z : DISPLAY/ ALM ON 134E D20D SETB OFF_ALM 1350 301F05 JNB L17,CHK_LED21 1353 852399 MOV SBUF,LED1 ' .RESTORE LED'S 1356 D125 ACALL TRANS_DEL CHK_LED21: 1358 £526 MOV A.LED2 135A 54F0 ANL A.ftOFOH 135C 6005 JZ CHK_LED31 135E S52699 MOV SBUF,LED2 1361 D125 ACALL TRANS DEL CHK_LED31: MOV A.LED3 ANL A.ftOFOH JZ CHK_V0L1 MOV SBUF.LED3 ACALL TRANS_DEL CHK_V0L1: JNB VOL_CHG.TST_VENTSEL1 MOV SBUF.CHG_VOL ;SET HUNS ACALL TRANS_DEL MOV SBUF,#01H :SET TENS TO 0 ACALL TRANS_DEL MOV SBUF.#02H :SET ONES TO 0 ACALL TRANS_DEL TST_VENTSEL1: JNB VEN_SEL,TST_TEMP1 MOV SBUF.RVENT ACALL TRANS_DEL TST_TEMP1: JNB TEMP,TST_BEEP1 MOV SBUF,TEMP_DEC ;TENS ACALL TRANS_DEL MOV SBUF,#02H :ONES ACALL TRANS_DEL TST_BEEP1: JNB BEEP,OUT JB SIL,OUT SETB P2.7 ;BUZZER ON AJMP OUT TURN_OFF: : :DISPLAY/ALM OFF JNB L17,CHK_LED22 MOV A.LED1 ANL A.«7FH ;MASK LED'S MOV SBUF.A ACALL TRANS_DEL CHK_LED22: MOV A.LED2 ANL A,ft0F0H JZ CHK_LED32 MOV SBUF,»05H ACALL TRANS_DEL CHK_LED32: MOV A.LED3 ANL A.ftOFOH JZ CHK_V0L2 MOV SBUF.ft06H ACALL TRANS_DEL CHK_V0L2: JNB VOL_CHG,TST_VENTSEL2 MOV SBUF.ftOFOH ;OFF HUNS ACALL TRANS_DEL MOV SBUF.ftOFlH :OFF TENS ACALL TRANS_DEL MOV SBUF.80F2H ;OFF ONES ACALL TRANS_DEL TST_VENTSEL2: JNB VEN SEL.TST TEMP2 MOV SBUF.#0F3H VENT SEL OFF ACALL TRANS_DEL TST_TEMP2: JNB TEMP.TST_BEEP2 MOV SBUF.ftOFlH :OFF TENS ACALL TRANS_DEL MOV SBUF.#0F2H :0FF ONES ACALL TRANS_DEL TST_BEEP2: 13E6 301402 JNB BEEP.OUT 13E9 C2A7 CLR P2.7 :AUDIO OFF OUT: 13EB 758C70 MOV TH0.#70H ;RST TIMERO 13EE D2A9 SETB ETO 13F0 D28C SETB TRO 13F2 22 RET TIM_SAMP: ;:TIMER 0 INTERRUPT PUSH ACC ;SAVE SFR'S PUSH B PUSH PSW MOV TH0,ft70H ;RESET TIMER SETB PSW.3 ;SELECT REGISTER BANK 1 CLR PSW.4 JBC DIV21,CLEAR SETB DIV21 ;FREQ 100HZ AJMP RETURN CLEAR: INC RCHG TIM ;R1 DJNZ RDIVIO,SAMPLE :R2 MOV RDIVIO,ftlO ;RESET RDIVIO JBC DIV22,SET_CLK SETB DIV22 AJMP SAMPLE SET_CLK: ;:SET .2S CLOCK SETB CLK JBC DIV24,C0NT6 SETB DIV24 C0NT6: DJNZ RDIV5,SAMPLE ;R3 MOV RDIV5.ft5 ;FREQ 1 HZ ;SILεNCε 2 MIN JNB SIL.CHKJHOLD CLR P2.7 ;BUZZER OFF DJNZ RSIL_TIM.CHK_HOLD :?NOT 2 MIN MOV RSIL_TIM,#120 :R6. RESET 2 MIN CLR SIL CHK_HOLD: : :STOP NEB? JNB HOLD,SAMPLE DJNZ RHOLD_TIM.SAMPLE ;R7 MOV RHOLD_TIM.#120 JB SIL.SAMPLE SETB P2.7 :0N BUZZER IO N MICROSEC IGITAL OUTPUT T_FLO.FLTFLO_ AV G OF 4 BYTES IN DAT A MEMOR Y TA. INPUT SIGNAL IS LOC A TED S AT A VG. FT UP O,NEXT10006 ;LODATA A DDRεSS :MOV NEW DATA TO FLTFLO_LO ;ADD TO CALC FLTFLO_ AV G XT20008 NOP INC P2 ANALOG RNEB_FLO N OP ;DELAY TIME FOR MUX NOP NOP NOP NOP CLR P2.3 ;START CONVERSION NOP ;ALLOW CONV. TIME 5 MICROSEC NOP NOP MOV RNEB_FL0,P1 ;SAVε DIGITAL OUTPUT SETB P2.3 NOP MOV A . RNEB_FLO : R4 CLR C SUBB A,#50 JC NEGFLO CLR C :DIV BY 4 RRC A CLR C RRC A A DD A ,POSSUM ;SUN POS FLOW MOV POSSUM,A ;SAVE JNC C0NT1 SεTB FLO W ;0VεRFL0W CONDITION SJMP C0NT1 N εGFLO: : :NεG FLOW RRC A CLR C RRC A A DD A.NεGSUM M OV NεGSUM.A ;SAVε C0NT1: NOP INC P2 ANALOG RTεMP NOP :DELAY TIME FOR MUX NOP NOP NOP NOP CLR P2 3 ;START CONVεRSION NOP :ALLOW CONV. TIME 5 MICROSEC NOP NOP MOV RTEMP,P1 ;SAVE DIGITAL OUTPUT SεTB P2.3 NOP RεTURN: ; :RET FROM INT POP PSW POP B POP ACC Rετι SεRVICE: ;CHK FLOW,SER-REC,BLINK JBC CLK,TEMP_CONT NOP TεMP_CONT : ; CONTROL HEATER CLR PSW.3 ;BANKO CLR PSW.4 MOV A.RTEMP ;R5 CJNE A,#TEMP_HI,NOT_EQ HITEMP: ;:OVER 80C CLR PO.l ;HεAT OFF SεTB L35 ;HI T MP LεD MOV SBUF,LεD3 SεTB ALM RεT NOT_EQ: JNC HI_TEMP ;RTεMP>TEMP_HI MOV A.TEMP.SET CJNE A , #40 , HEAT_CHK CLR PO . l ; HEAT OFF JB HεAT,SW_OFF CLR C SUBB A-,#10 ;LOW LIMIT SUBB A,RTεMP ;R5 JC FLO_TST ;?LεAVε OFF? SεTB PO.l ;TURN ON sεTB H AT AJMP FLO_TST SW_OFF: ADD A.#10 ;UPPεR LIMIT CLR C SUBB A.RTEMP JNC FLO TST ;?LEAVE ON? CLR PO.l :TURN OFF CLR HEAT HI_TEMP: ;:TEMP ALARM SεTB L35 :HI TεMP LED MOV SBUF,LED3 ACALL TRANS_DEL SETB ALM FLO_TST : ; : TεST N B FLOW JB WAIT,CHK_SεRPORT SETB PSW.3 BANK1 CLR PSW.4 JBC FLOW,FLO MOV A,POSSUM CLR C SUBB A.NεGSUM ;CALC SFLO JNC C0NT2 DJNZ R0FF_TIM,C0NT4 AJMP NOFLO_ALM C0NT2: SUBB A.#NOFL0_TH :SFLO-THRESH NOFLO: DJNZ R0FF_TIM,CONT3 AJMP NOFLO_ALM C0NT3: MOV A,B ;SFLO CLR C SUB8 A,#FLO_TH ;SFLO-THRεSH JC C0NT4 ;?SFLO<THRεSH FLO: DJNZ RON_TIM,C0NT4 AJMP FLO_ALM C0NT4: : CHεCK TIMε MOV POSSUM,#0 ;RESεT FLOW SUM MOV NεGSUM,#0 DJNZ ONTIMεR CHK_OFFTIM MOV ONTIMER . #FLOTIM MOV RON_TIM , #FLOTIM CHK_OFFTIM : DJNZ OFFTIMER.CHK_SERPORT MOV OFFTIMεR,#NOFLOTlM MOV ROFF_TIM,#NOFLOTIM AJMP CHK_SεRPORT NOFLO^ALM:- ;?NεB OFF > 10S MOV POSSUM.#0 MOV NEGSUM.#0 MOV OFFTIMER.ftNOFLOTIM MOV ROFF_TIM,#NOFLOTIM SETB ALM SETB L24 :N0 FLOW LED MOV SBUF.LED2 ACALL TRANS_DEL RET 1623 613F BLINK_BEEP1: AJ* = ΞJ_.IN _3ΞΪ-- TRANS_DEL: ; :DEL V 2.25MS CC = : 1625 0219BE LJMP TRANS_DεLl CHK_SERPORT: ; :N£* CHAR =.Ξ_ 1628 3098F8 JNB RI,BLINK_BEE=1 162B C298 CLR RI 162D C2A9 CLR TO ;DISABLΞ TT £=. Q. I'- 162F C28C CLR TRO ;DISABLE "r*E= 0 1631 ε599 MOV A.SBUF ;Rε.i CODE RE3Ξ 1633 C4 SWAP A 1634 23 RL A ;MULTIPLY = v 2 1635 901639 MOV DPTR,#JUMP_T=LΞ1 1638 73 JMP QA+DPTR 1639 C17D JUMP TBLE1: AJMP CASΞO 163B C1F4 163D E19F 163F εi9D 1641 εi26 1643 E1A1 1645 C15D 1647 C161 1649 E169 164B C165 164D C169 164F C16D 1651 C171 1653 C175 1655 C179 1657 C15A 1659 00 165A 613F 165C 00 165D 02186D 1660 00 1661 021867 1664 00 1665 021818 1668 00 1669 02187A 166C 00 166D 02186A - D ON . JC CALCJDNEOOll INC DEC TEN MOV B , SJMP NEXTSUB20011 MOV DEC_ONE,B MOV A.DεC_HUN JNZ BCD_0UT0011 MOV DEC_HUN,#OFH CLANK MOV A,DEC_TEN JNZ BCD_0UT0011 MOV DEC_TEN.#OFH CLANK BCD DUTOOll: MOV SBUF,#OFOH ;HUN BLANK ACALL TRANS_DEL MOV A,DEC_TEN SWAP A ORL A,#01H MOV TEMP_DEC,A ;SAVE TεNS MOV SBUF.A ACALL TRANS.DEL MOV SBUF,#02H ;ONES ACALL TRANS_DEL AJMP BLINK_BEεP CASεi: ;:NεBULIZεR HOLD SεTB PSW.3 :BANK1 CLR PSW. JBC HOLD,HOLD_OFF SεTB HOLD ;HOLD FLAG SεTB L25 N B HOLD LεD MOV SBUF,LεD2 ACALL TRANS_DεL ORL P2,#01H0000B ;OFF VALVεS SJMP HOLD_OUT HOLD.OFF: CLR HOLD .HOLD FLAG CLR BEEP CLR L25 ;OFF HOLD LED MOV SBUF.LεD2 ACALL TRANS_DεL HOLD_OUT: MOV RHOLD_TIM.#120 ;R7 Rεs T SεTB L16 ;WAIT LεD MOV SBUF.LSDl ACALL TRANS_DEL MOV THREE_CYCLE,#0 AJMP BLINK BEEP CASE4: —SELECT VENT ORL P2.*01110000B :VALVES OFF SETB VEN _SEL SETB WAIT N O . NUMBεR OLDS FOR V εNTILATOR SELECTED THRESH THRεSH 175D 83 VENT_TBLE: MOVC A, @A +PC 175ε 22 R T ;THRεSHOLDS 1 7 5F 3B 4 5 8 1 DB 3BH, 4 5H,81H,86H,3BH,45H ;SSRVO LO 2.3V, HI 2.7 V 1762 86 38 45 ;PB7200 LO 5.05V, HI 5.25V, HAM LO 2.3 V , HI 2.7V CASε81: ^INITIALIZATION εNTRY CLR ετo CLR TRO CASεS: ;CHANGε VOLUMε SSTB VOL_CHG MOV A,CHG_VOL SWAP A RL A MOV B.A ACALL CHGVOL_TBLε MOV SεTjCHGTIM.A MOV A,B ACALL CHGVOL_TBLE MOV CHG_VOL.A M O V SBUF,CHG_ OL ACALL TRANS_DEL SETB WAIT M O V THREE . YCLE,#0 SETB Life 1788 85239<-5 MOV SBUF.LεDl 178B D125 ACALL TRANS_DεL 178D 613F AJMP BLINK_BεεP CHGVOL_TBLE: ;:SELECT NEW VOL 178F S3 MOVC A.ΘA+PC 1790 22 RET 1791 20 14 40 DB 20H ,20,40H,40,0,0,60H .60,0,0.10H , 10 1794 28 00 00 60 3C 00 00 10 OA ;SHIFT TO NεW VOLUMε CASE3: ; :N0 ACTION 179D 613F AJMP BLINK_BεEP CASE2: ;N0 ACTION 179F 613F AJMP BLINK_BEEP CASε5: ; :DISPLAY TεMP 17A1 10105B JBC Sεε_TεMP,RESTORE_VOLl 17A6 C2D3 CLR PSW . 3 ; BANKO 17A8 C2D4 CLR PSW .4 17AA εD MOV A . RTεMP ; R5 17AB C3 CLR C 17AC 13 RRC A ; DIV BY 2 17AD BINARY_BCD D8C_HUN , DεC_TEN , D CJDNε CON RTS BYTE LOCATED IN ACC TO DεCIMAL ; AND STORεS RεSULT IN DεC_HUN , DEC_TεN AND ONε . +17AD 752900 MOV DEC_HUN , #0 -, CI_εAR REGISTεRS +17B0 752A00 MOV DEC_TεN , #0 +17B3 752B00 MOV Dεc_θNε,#o + CALCJHUN0012: ::SUBTRACT 100 +17B6 F5F0 MOV B,A 4- NεXTSUB10012: +17B8 C3 CLR C +17B9 9464 SUBB A,#100 +17BB 4006 JC CALC_TεN0012 +17C1 80F5 SJMP NEXTSUB10012 CALC_TEN0012: ;:SUBTRACT 10 +17C3 ε5F0 MOV A,B •4- NEXTSUB20012: +17C5 C3 CLR C +17C6 940A SUBB A-,#10- +17C8 4006 JC CALC_ONE0012 +17Cε 80F5 SJMP NεXTSUB20012 -17D0 85F02B MOV DEC_ONε,B +17D3 ε529 MOV A.DEC_HUN *17D5 700A JNZ BCD_0UT0012 ■ •-17D7 75290F MOV DEC_HUN , #OFH CLANK +17DA E52A MOV A , DEC TEN JNZ BCD_OUT0012 MOV DEC_TEN , #OFH CLANK BCD_0UT0012: NOP ACALL TRANS_DEL ACALL TRANSJ εL ORL A,#02H MOV SBUF,A LCALL TRANS_DεL LJMP BLINK_BεεP RESTORε_VOLl: —DISPLAY VOL CLR PSW.3 ;BANK2 MOV SBUF,CHG_VOL LCALL TRANS_DεL MOV SBUF,#01H LCALL TRANS_DεL MOV SBUF,#02H LCALL TRANS_DεL OUT_TεMP: 1815 02133F LJMP BLINK βεεp CASε9: ;:DISPLAY FLT LOAD 1818 101113 JBC sεε_LD,RεsτoRε_voL2 181D 852C99 MOV SBUF,FLTLD_HUN 1820 121625 LCALL TRANS_DEL 1823 852D99 MOV SBUF,FLTLD_TEN 1826 121625 LCALL TRANS_DεL 1829 852ε99 MOV SBUF,FLTLD_ONε 182C 0140 AJMP OUT_DISPLD RεST0Rε_V0L2: ::DISPLAY VOL 182ε 852899 MOV SBUFCHG_VOL 1831 121625 LCALL TRANS_DεL 1834 759901 MOV SBUF,#01H 1837 121625 LCALL TRANSJDεL 183A 759902 MOV SBUF,#02H 183D 121625 LCALL TRANSJ εL OUT_DISPLD: 1840 02133F LJMP BLINK sεεp CASεC: ;:ENTER KEY 1843 C204 CLR VEN_SEL 1845 C203 CLP VOL_CHG 1847 C23B CLR TEMP CLR PSW.3 CANKO CLR PSW.4 MOV SBUF.RVENT LCALL TRANSJDEL MOV SBUF,CHG_VOL S T HUNS LCALL TRANS_DεL MOV SBUF,#01H SεT TENS LCALL TRANS_DEL MOV SBUF,#02H S T ONεS LCALL TRANS_DεL LJMP BLINKJBEEP CASε7: ; :N0 ACTION 1867 02133F LJMP BLINK_BεεP CASEB: ; :N0 ACTION 186A 02133F JMP BLINKJBEEP CASE6: ; SIL ALM 2 MIN SεTB PSW.3 ;BANK1 CLR PSW.4 CLR P2.7 ;OFF BUZZεR SεTB SIL ;SILεNCε FLAG MOV RSIL_TIM,#120 ;R6,TWC LJMP BLINK_BεεP CASEA: ;:ALM RST MOV P2.#78H CUTPUTS OFF MOV 20H,#0 CLEAR BITS MOV 21H,#0 MOV 22H,#0 MOV 27H.#0 SεTB L16 .WAIT CLR L15 ;FILT CHANGε CLR L17 ;LOFLOW MOV SBUF.LεDl ACALL TRANS_DEL1 MOV SBUF,CHG_VOL ; NORMAL LCD ACALL TRANS_DEL1 MOV SBUF,#01H ACALL TRANS_DELl' MOV SBUF,#02H ACALL TRANS_DεLl CLR PSW.3 - ; BANKO CLR PSW. MOV SBUF.RVENT ;R1 ACALL TRANS_DEL1 ANL LεD2,#0FH ;OFF MOV SBUF.LED2 ACALL TRANS_DEL1 CLR L34 ;HI PRεSS MOV SBUF.LED3 ACALL TRANS_DεLl MOV THRεE_CYCLE,#0 :RESE _ 18BF 22 SεTB PSW.3 CANK1 18C1 Z2 CLR PSW.4 18C2 —, MOV RON_TIM,#0 18C5 T MOV ROFF_TIM,#0 18C7 " MOV POSSUM.#0 18CA -= MOV NεGSUM,#0 18CD 75. MOV TH0,#70H :RST TIMER 18D0 "• MOV iε,#87H :SET ETO 18D3 ^≡: MOV TC0N,#50H ;SET TRO 18D6 22 R T CASED: ::DISPLAY PIP ;MULTIPLY BY SCALE FACTOR OF 5/8, CONVERT TO BCD AND DISPLAY PIP. RETURN TO VOLUMε DISPLAY WHEN ;SWITCH IS PRESSED A SECOND TIME. JBC Sεε_PIP,LCD_VOL ;RRC 3 TIMεS TO DIVIDε BY 8 ;LSB IN A ;SεCOND ROTATION :THIRD ROTATION RRC A SUBB A . #14H ; ZεRO OFFSET BI RY_BCD DEC_HU , DEC_TεN , DEC_ONε CONVεRTS BYTε LOCATεD IN ACC TO DεCIMAL ; AND STORES RεSULT IN DEC_HUN , DεC_TEN AND ONε . MOV DεC_HUN , #0 CLεAR RεGISTεRS MOV DEC_TEN , #0 OV Dεc DNε, #o CALC_HUN0013: ;:SUBTRACT 100 MOV B,A NEXTSU810σi3: CLR C SUBB A,#100 JC CALC_TEN0013 INC DEC_HUN MOV B . A CAVE SJMP NEXTSUB10013 CALC_TεN0013: ::SUBTRACT 10 MOV A.3 NεXTSUB20013: +1910 3! CLR C SUBB A . # 10 JC CALC_0NE0013 INC DECJTEN MOV B . A SJMP NEXTSUB20013 MOV DεCJDN ε . B MOV A , DεC_HUN JNZ BCD_0UT0013 MOV DεC_HUN,#OFH ;BLANK MOV A,DεC_TEN JNZ BCD_0UT0013 MOV DEC_TεN , #OFH CLANK BCD_0UT0013: MOV A,DεC_HUN ;DISPLAY PIP MOV SBUF,A ACALL TRANS_DεLl MOV A.Dεc rεN SWAP A ORL A,#01H MOV SBUF.A ACALL TRANS_DεLl MOV A,DEC_ONE SWAP A ORL A,#02H MOV SBUF,A SJMP OUTPIP LCD_VOL: ;:DISPLAY VOL MOV SBUF,CHG_VOL ACALL TRANS_DεLl MOV SBUF,#01H ACALL TRANS_DEL1 MOV SBUF,#02H OUTPIP: 1952 02133F LJMP BLINK BEEP CASEε: ; :ALM TEST :PUSH SW TO TEST & PUSH TO RETURN 1955 100A33 JBC ALM_TST,NORMAL 1958 D20A SETB ALM_TST 195A D2A7 SETB P2.7 ;0N BUZZεR 195C 7480 MOV A,#80H 195ε F599 MOV SBUF,A ;HUNS LCD TεST 1960 1219BE LCALL-TRANS_DEL1 1963 04 INC A -TENS 1964 F599 MOV SBUF,A I960 1219BE LCALL TRANS_DEL1 1969 04 INC A NεS 196A F599 MOV SBUF,A 196C I219BE LCALL TRANS._DEL1 196F 04 INC A :VENT # 1970 5 Q MOV SBUF.A 1972 121«BE LCALL TRANS DELI 1975 74F4 MOV A.#0F4H ;LED1 TέST ~*QV SBUF, A -CALL TRANS_DEL1 INC A ;LED2 CALL TRANS_DEL1 INC A MOV SBUF, A .-LED3 -CALL TRANS_DEL1 JMP OUTJTST NORMAL: ;: NORMAL DISPLAY CLR P2.7 ; RESTORE ALARM & DISPLAYS CLR PSW.3 : BANKO CLR PSW. MOV SBUFCHGJ OL LCALL TRANS JELl MOV SBUF,#01H LCALL TRANS_DεLl MOV SBUF,#02H LCALL TRANS_DεLl MOV SBUF.RVεNT LCALL TRANS_DεLl MOV SBUF, εD 1 CALL TRANS _DEL1 MOV SBUF,LεD2 LCALL TRANS_DεLl MOV SBUF.LεD3 CALL TRANS_DεLl OUTJTST : LJMP BLINK_BEEP NOP TRANS_DEL1: ;: DELAY 2.25MS,CC=80EH DJNZ DIVIDE1, TRANS JDEL1 COUNT 255 MOV DIVIDE1,*0FFH :RESST DJNZ DIVIDE2.TRANS_DEL1 COUNT 4 MOV DIVIDε2,#04H ; RESET RET NOP MA JSW: ;:0N VALVES PUSH ACC PUSH PSW CLR EXO CISABLE INT ώ L P2,#1000HHB ;0N VALVεS HOLDUP LCALL SεRVICE JNB P3.2.H0LDIT SETB WAIT SETB L16 ;WAIT LED MOV SBUF.LED1 ACALL TRANS_DεLl : L P2.#0H10000B FF VALVεS -*0V THREE_CYCLE.#OOH ΞETB EXO :ENABLE INTO =πp sw =0P ACC F0 32 RETI %E F1 ENDS CODE SEGMENT 00 END BEGIN -, °-o'T1 Svmbol Name Type Value ALARM L 112F ALARM1 L 11AB ALARM2 L 12A4 ALM B OOOC ALMJTST B OOOA ANALOG M OOOO AWP_AVG D 004C AWP_LO D 0O48 AWP_MAX D 004D BANKO U 0000 BCD_0UT00H L 16DD BεGIN L 1000 BINARY_BCD M 0000 BLINK_BEεP L 133F BLINKJ3EEP1 L 1623 CALCJHUN0011 L 16B2 CALC_HUN0012 L 17B6 CALC_HUN0013 L 1901 CALCJTEN0011 . . . L 16BF CASE5 L 17A1 CASεό L 186D CASE61 L 165D CASεβ L 1769 CASεSl L 1765 CASεA L 187A CASεAl L 1669 CASεB L 186A CASεBl L 166D CASεC L 1843 CASεcl L 1671 CASεD L 18D7 CASED1 L 1675 CASEΞ L 1955 CASEE l L 167<-> CASεF L 165A CHARGε L 11B4 CHGVOL_TBLE L 178F CHG_VOL D 0028 CHK_AWP L 1107 CHK_CHGTIM L 11E6 CHK_DPTHRεSH L 1242 CHK_εθεXH L 12A7 CHK_εθεXHl L 123F CHKJCD31 L 1363 CHK_OFFTIM L 15ED CHK_PEAK L 1150 CHK_SERPORT L 1628 CHK_SIL L 1134 CHK_VOL L 11C6 CHK_V0L1 L 136E CHK_V0L2 L 13BF CHKJ AIT L 1308 CHK_WAIT1 L 11E3 CLεAR L 1407 CLK B 0039 CLOGl B 0016 CL0G2 B 0017 CLOGJHI D 0046 CLOG_LO D 0045 CONT L 113C C0NT1 L 1555 C0NT2 L 15CA C0NT3 L 15D4 C0NT4 L 15DF C0NT5 L 10D2 C0NT6 L 141A DELAY1 L 10C6 DεLAY2 L 10CB DεLAY5 _ L 1122 DεL_4TεNTHS B 0013 DISPLAY_TεMP L 16A7 DIV21 B 0002 DIV22 B OOOB DIV23 B 0038 DI 2 B oooε DIVIDE1 D 001D DIVIDE2 D 001E ENOJ.E- L 10D0 £01 L 10EB EXH B OOO l FIFO M OEB4 FILTAWPJTHRεSH I 0037 FILTDPJTHRεSH I 008D FIRST _SAMP L 1220 FLO . . . L 15DB FLOTIM I OOOB FLOW B OOOF FLTLD_HUN D 002C FLTLD _ONε . . D 002E FLTLD IΕN D 002D FLT_LD L 1225 HI_TEMP L 15AB HOLD B 0008 HOLDIT L 19D5 HOLDJOFF L 170B HOLDJDUT L 1716 INC3 L 1336 IN ITl L 1032 INITIALIZε L 1030 INSP B 0015 JUMPJTBLεi L 1639 L14 B 001C L15 B 001D L16 B 001E L17 B 001F L24 B 0034 L25 B 0035 L26 ' B 0036 L27 B 0037 L34 B 002C L35 _. ._ . . - B 0020 MAIN_LOOP L 10D8 MAN_SW L 19CC NεGFLO L 154A NEGSUM D 0051 NEW _TEMP L 1699 NEXTIOOOI L 116D NEXT20002 L 12E1 NεXTSUBlOOll L 16B4 NεXTSUB10012 L 17B8 NεXTSUB10013 L 1903 NεXTSUB20011 L 16C1 NεXTSUB20012 L 17C5 NEXTSUB20013 L 1910 NOFLO L 15D0 NOFLOTIM I 0032 NOFLO.ALM L 15F7 NOFL0_TH I 008C NORMAL L 198B NOT_EQ L 1587 OFFTIMER D 0015 OFF_ALM B OOOD OFF_STATE L 1687 ONTIMER D 0014 OUT L 13EB 0UT1 L 133C OUTPIP L 1952 OUT_DISPLD L 1840 OUTJTEMP L 1815 OUTJTST L 19BA PATINSPJTHRESH I 0008 PIP_STORE D 004ε PIP ΓHRESH i ooεo POSSUM D 0050 RAW_PRεSS ' R 0003 RCHGJTIM R 0001 RDIVIO R 0002 RDIV5 _ R 0003 RεSTORε_VOLl L 17FF RεTURN L 1567 RFLT_FLO R 0002 RHOLDJTIM R 0007 RN EB ..FLO R 0004 ROFFJTIM R 0005 RONJTIM R 0004 RSILJTIM R 00O6 RTEMP R 0005 RUNNING_AVG M OOOO RVENT R 0006 RVENT_SIG R 0001 SAMPLE L 1435 SEE_LD B 0011 SEE_PIP B 0009 SEE_TEMP B 0010 SEE_VENT L 1743 SERVICε L 1565 SεT_CHGTIM. . D 0019 TESTO L 1298 TEST25 L 1286 TEST75 L 125B ;%z 00 Errors ( 0000 )

Claims: HAT IS CLAIMED IS; 1. A nebulizer comprising: a housing containing a reservoir for holding a liquid to be nebulized and an air space above the reservoir for holding aerosol; means for generating said aerosol by nebulizing said liquid; means for attaching said housing to a mechanical respirator having an inhalation phase, an exhalation phase, a gas flow passageway to a patient, and an external electrical signal source capable of generating a first electrical signal during said exhalation phase; means responsive to said first electrical signal for introducing said aerosol into said gas flow passageway, such that said aerosol fills said gas flow passageway during a portion of said exhalation phase. 2. The nebulizer of Claim 1 further comprising means for monitoring the amount of said aerosol introduced into said gas flow passageway. 3. The nebulizer of Claim 1 wherein said mechanical respirator further being capable of generating a second electrical signal during said inhalation phase. 4. The nebulizer of Claim 3 wherein said aerosol generating means further comprising a plurality of nebulizer nozzles each having means for controlling the gas flow therethrough. 5. The nebulizer of Claim 4, wherein said introducing means further comprises: a gas flow for directing compressed gas from a compressed gas source to each of said plurality of controlling means for said nebulizer nozzles; said gas flow means including means responsive to said first electrical signal for opening a conduit of said nebulizer nozzles and for closing the conduit to said nebulizer nozzles simultaneously or one at a time, in response to said second electrical signal. 6. The nebulizer of Claim 5 further comprising: means responsive to said second electrical signal for generating a decreasing flow of gas; and means for directing said decreasing flow of gas into said mechanical respirator. 7. A method of operating a nebulizer of the type having means for generating an aerosol and means for supplying said aerosol to a mechanical respirator having an inhalation phase, an exhalation phase and a gas passageway to a patient, and an external electrical signal source capable of generating a first electrical signal during said exhalation phase, method comprising: generating said aerosol; and introducing said aerosol into said gas passageway during a portion or all of the said exhalation phase. 8. The method of Claim 7 wherein said introducing step further comprising: opening a valve, in response to said first signal, to introduce said aerosol from said nebulizer to said gas passageway. 9. The method of Claim 7 wherein said generating step further comprises: entraining a liquid into a source of compressed gas to generate said aerosol, in response to said first signal and continuing until standardized volume of aerosol dose has been delivered. 10. The method of Claim 7 wherein said external electrical signal source is capable of generating a second electrical signal during said inhalation phase. 11. The method of Claim 10 further comprising: ceasing the generation of said aerosol in response to said second electrical signal. 12. A nebulizer for use with a respirator means having an inhalation phase and an exhalation phase, a first tubing means connecting said respirator means with a patient wherein during said inhalation phase said respirator means is fluidically connected to said patient through said first tubing means for introducing breathing gas in said first tubing means into respiratory tract of the said patient, a second tubing means connecting said respirator means with said patient wherein during said exhalation phase said respirator means is fluidically connected to said patient through said second tubing means for receiving exhaled gas from said patient to said respirator means, said respirator means further having means for generating a first electrical signal during said exhalation phase; said nebulizer comprising: means for generating an aerosol; aerosol connecting means for connecting said generating means to said first tubing means; and means for introducing said aerosol into said first tubing means in response to and synchronized with said first electrical signal. 13. The nebulizer of Claim 12 further comprising: housing means containing a reservoir for holding a liquid to be nebulized and an air space above the reservoir for holding said aerosol. 14. The nebulizer of Claim 13 wherein said aerosol connecting means connects said air space to said first tubing means. 15. The nebulizer of Claim 14 wherein said generating means comprising: a plurality of nebulizing nozzles each having means for controlling the gas flow therethrough. 16. The nebulizer of Claim 15 wherein said respirator means for generating a second electrical signal during said inhalation phase. 17. The nebulizer of Claim 16 wherein said introducing means for all of said nebulizing nozzles, in response to said first electrical signal, de- activates said controlling means, either simultaneously or one at a time. 18. The nebulizer of Claim 14 further comprising means for monitoring said aerosol introduced into said first tubing means. 19. The nebulizer of Claim 16 further comprising: means for generating a decreasing flow of gas; and means for directing said decreasing volume of gas into said second tubing means. 20. The nebulizer of Claim 12 wherein said means for generating said first electrical signal further comprises: a filter pressure sensor for detecting the pressure differential in said second tubing means, and for generating a filter pressure signal in response thereto; an airway pressure sensor for detecting the pressure in said first tubing means, and for generating an airway pressure signal in response thereto; and means for receiving said filter pressure signal and said airway pressure signal and for generating said first electrical signal synchronized with the commencement of said exhalation phase.

Inventors: HATHAWAY JAMES CALVIN, LEE JAMES I C, RAABE OTTO G, HATHAWAY, JAMES, CALVIN, LEE, JAMES, I., C., RAABE, OTTO, G.
Applicants: VORTRAN MEDICAL TECHNOLOGY INC, VORTRAN MEDICAL TECHNOLOGY, INC.
Application year: 1992
Main classification: F16K31
IPC codes: A61M11, A61M13, A61M15, A61M16