US20020044061A1 - Carbon monoxide and smoke detection apparatus - Google Patents

Carbon monoxide and smoke detection apparatus Download PDF

Info

Publication number
US20020044061A1
US20020044061A1 US10/008,671 US867101A US2002044061A1 US 20020044061 A1 US20020044061 A1 US 20020044061A1 US 867101 A US867101 A US 867101A US 2002044061 A1 US2002044061 A1 US 2002044061A1
Authority
US
United States
Prior art keywords
detector
block
alarm
smoke
routine
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US10/008,671
Inventor
Derek Johnston
Vincent Delia
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BRK Brands Inc
Original Assignee
BRK Brands Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BRK Brands Inc filed Critical BRK Brands Inc
Priority to US10/008,671 priority Critical patent/US20020044061A1/en
Publication of US20020044061A1 publication Critical patent/US20020044061A1/en
Assigned to GENERAL ELECTRIC CAPITAL CORPORATION reassignment GENERAL ELECTRIC CAPITAL CORPORATION INTELLECTUAL PROPERTY SECURITY AGREEMENT Assignors: BRK BRANDS, INC., COLEMAN COMPANY, INC., THE, COLEMAN POWERMATE, INC., SUNBEAM PRODUCTS, INC., THALIA PRODUCTS, INC.
Priority to US10/628,092 priority patent/US6819252B2/en
Assigned to GENERAL ELECTRIC CAPITAL CORPORATION reassignment GENERAL ELECTRIC CAPITAL CORPORATION INTELLECTUAL PROPERTY SECURITY AGREEMENT Assignors: BRK BRANDS, INC., COLEMAN COMPANY, INC., THE, SUNBEAM PRODUCTS, INC., THALIA PRODUCTS, INC.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B29/00Checking or monitoring of signalling or alarm systems; Prevention or correction of operating errors, e.g. preventing unauthorised operation
    • G08B29/18Prevention or correction of operating errors
    • G08B29/183Single detectors using dual technologies
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N33/00Investigating or analysing materials by specific methods not covered by groups G01N1/00 - G01N31/00
    • G01N33/0004Gaseous mixtures, e.g. polluted air
    • G01N33/0009General constructional details of gas analysers, e.g. portable test equipment
    • G01N33/0027General constructional details of gas analysers, e.g. portable test equipment concerning the detector
    • G01N33/0036Specially adapted to detect a particular component
    • G01N33/004Specially adapted to detect a particular component for CO, CO2
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B17/00Fire alarms; Alarms responsive to explosion
    • G08B17/10Actuation by presence of smoke or gases, e.g. automatic alarm devices for analysing flowing fluid materials by the use of optical means
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/02Alarms for ensuring the safety of persons
    • G08B21/12Alarms for ensuring the safety of persons responsive to undesired emission of substances, e.g. pollution alarms
    • G08B21/14Toxic gas alarms
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/02Alarms for ensuring the safety of persons
    • G08B21/12Alarms for ensuring the safety of persons responsive to undesired emission of substances, e.g. pollution alarms
    • G08B21/16Combustible gas alarms
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B29/00Checking or monitoring of signalling or alarm systems; Prevention or correction of operating errors, e.g. preventing unauthorised operation
    • G08B29/12Checking intermittently signalling or alarm systems
    • G08B29/14Checking intermittently signalling or alarm systems checking the detection circuits
    • G08B29/145Checking intermittently signalling or alarm systems checking the detection circuits of fire detection circuits
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02ATECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
    • Y02A50/00TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE in human health protection, e.g. against extreme weather
    • Y02A50/20Air quality improvement or preservation, e.g. vehicle emission control or emission reduction by using catalytic converters

Definitions

  • the present invention relates generally to detecting a condition in the environment. Particularly, the invention pertains to apparatus and methods to detect the presence of carbon monoxide and smoke in the atmosphere.
  • Carbon monoxide poisoning has increased dramatically in the past decade. Carbon monoxide is a colorless, odorless, tasteless gas, making it virtually impossible to detect its presence. Carbon monoxide can be produced by various fuel burning appliances, such as, fuel fired furnaces, gas hot water heaters, gas stoves, gas dryers, space heaters, charcoal grills, fireplaces, vehicles, lawn mowers, or snow blowers. Once present, this gas circulates freely throughout a building, such as a home. If this gas is not ventilated properly, carbon monoxide poisoning may result.
  • fuel burning appliances such as, fuel fired furnaces, gas hot water heaters, gas stoves, gas dryers, space heaters, charcoal grills, fireplaces, vehicles, lawn mowers, or snow blowers. Once present, this gas circulates freely throughout a building, such as a home. If this gas is not ventilated properly, carbon monoxide poisoning may result.
  • Carbon monoxide can act in the body in high concentrations, or slowly over a long period of time. Because it takes several hours to remove carbon monoxide from the body of a person, concentrations of carbon monoxide can gradually build up in the blood causing headaches, fatigue, dizziness, nausea, burning eyes, or unconsciousness.
  • CO detectors typically employ a solid state sensor which purges itself and resamples for carbon monoxide on a periodic basis.
  • conventional carbon monoxide detectors usually do not account for low levels of the carbon monoxide gas over long periods of time.
  • Known detectors of this type are intended to be plunged into AC receptacles and are not battery powered.
  • CO detectors utilize biomimetic sensors. Such devices are battery powered and detect changes in opacity of the biomimetic material.
  • Fire detectors operate on different principles than do carbon monoxide detectors. Known fire detectors respond to heat, flame or smoke.
  • the present invention provides methods and apparatus for monitoring the presence and changes in the concentration of carbon monoxide.
  • a detector that embodies the invention may also detect the presence of smoke.
  • a combined smoke and CO detector is battery operated.
  • the detector carries a carbon monoxide sensor that is sealed until it is to be used by a consumer.
  • the CO sensor is carried within a housing and is not user replaceable. Removable tape seals the CO sensor until the detector is put into service. The sealing tape is applied when the carbon monoxide sensor is assembled. When a user places the detector into service the tape is removed thereby exposing the CO sensor to the ambient air.
  • An ionization-type smoke sensor is also carried within the housing. Both sensors are coupled to a programmed processor. The detector is energized by a single replaceable battery.
  • the process in response to signals from the sensors, can produce an audible alarm indicative of the presence of carbon monoxide.
  • a different audible alarm for example in accordance with NFPA standard No. 72, can be produced to indicate the presence of smoke.
  • the processor can go immediately unto a fire alarm indicating state.
  • a test circuit can be provided. For example, activating the test button can test each sensor sequentially. In this instance, appropriate audible alarms can be alternately produced.
  • a smoke determination can be made independently of a CO determination.
  • the smoke determination can predominate and force the generation of visible and audible alarms.
  • Visual indicators of an alarm condition provide visual feedback to users.
  • a symbol indicates if smoke is present and can be illuminated in the presence of detected levels thereof.
  • a visual symbol indicative thereof can be illuminated.
  • the visual indicators can be sequentially illuminated during a test sequence.
  • the detector and both of the sensors can be energized by a single battery.
  • a removable battery door can be provided. If the door is mounted in a user accessible side of the detector it will be possible to replace the battery with removing the detector from its mounted location.
  • the detector periodically measures the output of a CO sensor.
  • the detector subtracts each sampled CO sensor output from the previous sampled sensor output. The difference of between the successive sampled sensor outputs are summed.
  • the detector unit determines the rate of change of the sampled sensor outputs to determine the level of CO in the atmosphere. The detector can actuate an alarm when a predetermined CO condition is detected.
  • the methods and applications of the present invention provide a highly efficient and low cost detector that is capable of detecting the presence of carbon monoxide at an early stage to allow persons to evacuate the area.
  • the detector can also detect low concentrations of carbon monoxide over long periods of time.
  • the detector unit may also detect the presence of smoke.
  • FIG. 1 is a block diagram of a combined carbon monoxide and smoke detector
  • FIG. 1 a is a plan view of the detector
  • FIG. 2 is a block diagram illustrating arrangement of FIGS. 2 - 1 . . . 2 - 4 which taken together are a schematic diagram of the detector of FIG. 1;
  • FIG. 2 a - 1 and 2 a - 2 taken together are a flow diagram of a main routine of the detector of FIG. 1;
  • FIG. 3 is a flow diagram of a SUB-ROUTINE OF THE MAIN ROUTINE of FIGS. 2 - a - 1 , - 2 ;
  • FIG. 4 is a flow diagram of a POWER-UP sub-routine of the main routine of FIG. 2 a - 1 , - 2 ;
  • FIG. 5 is a flow diagram of a WAKE sub-routine of the main routine of FIG. 2 a - 1 , - 2 ;
  • FIG. 6 is a flow diagram of a RES1 sub-routine of the main routine of FIG. 2 a - 1 , - 2 ;
  • FIG. 7 is a flow diagram of a RESET sub-routine and a RESET1 sub-routine of the main routine of FIG. 2 a - 1 , - 2 ;
  • FIG. 8 is a flow diagram of a LOOP sub-routine of the main routine of FIG. 2 a - 1 ,- 2 ;
  • FIG. 9 is a flow diagram of a NEG1 sub-routine of the main routine of FIG. 2 a - 1 , - 2 ;
  • FIG. 10 is a flow diagram of a TESTR sub-routine of the main routine of FIG. 2 a - 1 , - 2 ;
  • FIG. 11 is a flow diagram of a SMOKE CHECK sub-routine of the main routine of FIG. 2 a - 1 , - 2 ;
  • FIG. 12 is a flow diagram of a TEST sub-routine of the main routine of FIG. 2 a - 1 , - 2 ;
  • FIG. 13 is a block diagram of an alternate detector, carbon monoxide
  • FIG. 14 is a schematic diagram of the detector of FIG. 13;
  • FIG. 15 is a flow diagram illustrating the general operation of the detector of FIG. 13;
  • FIG. 16 is a flow diagram of a main routine of the detector of FIG. 13;
  • FIG. 17 is a flow diagram of a WAKE sub-routine of the main routine of FIG. 16;
  • FIG. 18 is a flow diagram of a TESTER sub-routine and a BYE1 sub-routine of the main routine of FIG. 16;
  • FIG. 19 is a flow diagram of an ACR1 sub-routine of the main routine of FIG. 16;
  • FIG. 20 is a flow diagram of a RESET sub-routine and a RESET1 sub-routine of the main routine of FIG. 16;
  • FIG. 21 is a flow diagram of a LOOP sub-routine of the main routine of FIG. 16;
  • FIG. 22 is a flow diagram of a NEG1 sub-routine of the main routine of FIG. 16;
  • FIG. 23 is a flow diagram of a TEST sub-routine of the main routine of FIG. 16;
  • FIG. 24 is a flow diagram of a BAT1 sub-routine of the main routine of FIG. 16;
  • FIG. 25 is a flow diagram of an INSPECT sub-routine of the main routine of FIG. 16;
  • FIG. 26 is a flow diagram of a POS1 sub-routine, a ACC3 subroutine, and ADJ1 sub-routine of the main routine of FIG. 16;
  • FIG. 27 is a flow diagram of an ACCUM sub-routine and a SET6 sub-routine of the main routine of FIG. 16;
  • FIG. 28 is a flow diagram of a CHKSP sub-routine of the main routine of FIG. 16;
  • FIG. 29 is a flow diagram of a SHOW sub-routine and a NOSHOW sub-routine of the main routine of FIG. 16;
  • FIG. 30 is a flow diagram of a XMITR sub-routine of the main routine of FIG. 16;
  • FIG. 31 is a flow diagram of a TIME sub-routine and TIME 1 subroutine of the main routine of FIG. 16;
  • FIG. 32 is a flow diagram of a DEL001 sub-routine, of the main routine of FIG. 16;
  • FIG. 33 is a flow diagram of a DEL225 sub-routine, and a DELPROG sub-routine of the main routine of FIG. 16; of the main routine of FIG. 16;
  • FIG. 34 is a flow diagram of a CLRREG sub-routine of the main routine of FIG. 16.
  • FIG. 35 is a flow diagram of a M16 sub-routine of the main routine of FIG. 16.
  • the detector 50 is a battery powered, single station, self-contained smoke and carbon monoxide alarm detector.
  • the detector 50 detects the presence and concentration of carbon monoxide in the atmosphere and provides a warning to indicate a hazardous condition of carbon monoxide.
  • the detector 50 also detects the presence of smoke in the air and provides a warning to indicate the presence of smoke.
  • the detector unit 50 includes a housing 50 a , control circuitry 100 , an ionization sensing chamber, electronic measurement and control circuitry 110 , audible and visual indicators, power circuitry, test/silence circuitry, temperature compensation circuitry, reset circuitry, low voltage detection circuitry, test switch/hush circuitry, output circuitry, interconnect circuitry and oscillator circuitry.
  • the detector 50 may be implemented utilizing one or more integrated or logic circuits, or a microprocessor which may be programmed to execute the operations or functions equivalent to those performed by the circuitry units shown. It is also contemplated that the detector can be carried out with any suitable hardware components and circuitry designs, computer programming, or a combination thereof.
  • FIG. 1 a shows a front plan view of the housing of the detector unit 50 .
  • the housing includes a CO alarm indicator 50 a , a smoke alarm indicator 50 b , a low battery indicator 50 c , and a service status visual indicator 50 d .
  • the housing also preferably includes a single test/silence button as further illustrated below.
  • the control circuitry 100 of the detector 50 includes a processing unit 102 .
  • the processing unit 102 includes a Microchip PIC16C57, available from microchip.
  • the processing unit 102 preferably has a 2 MHz internal clock, Read Only Memory (ROM), Random Access Memory (RAM), and a plurality of input/output (I/O) pins.
  • the processing unit 102 controls the overall operation of the detector unit 50 and processes information to determine a hazardous condition of carbon monoxide or smoke in the atmosphere. It will be understood that a variety of processing units or processors could be used without departing from the spirit and scope of the present invention.
  • the processing unit 102 preferably spends most of its time in a “sleep” mode in order to save power. While the processing unit 102 is in the “sleep” mode, the detector 50 typically consumes about 5 ⁇ A of current. In the sleep mode, the internal clock of the processing unit 102 is disabled and the program counter is stopped.
  • the processing unit 102 can be “awakened” either by an external low level signal on pin 28 of the processing unit 102 or an internal reset initiated by an on-board watchdog timer.
  • the watch dog timer is preferably used as an operational cycle clock to awaken the processing unit 102 about every 3 seconds to increment a time counter which requires about 2 ⁇ A.
  • the processing unit 102 takes sensor samples about every 30 seconds, battery and built-in tests occur about every 10 minutes. In order to limit the current drain of the detector unit 50 below 15 ⁇ A, the current used for sensor sampling cycle (which occurs once about every 30 seconds for approximately 25 ms) is usually kept to an average of about 5-6 ⁇ A. Unless the detector unit 50 is taking a sensor sample, checking the battery, performing a built-in test, or preforming a user-initiated push-button test, the processing unit 102 will usually not be turned on for more than 25 ms before the processing unit 102 is put back to sleep.
  • the electronic measurement circuitry 110 preferably includes carbon monoxide detection circuitry 112 , smoke detection circuitry 114 , and smoke calibration circuitry 116 .
  • the carbon monoxide detection circuitry 112 monitors the presence or absence of carbon monoxide.
  • a gas input port of the sensor 112 is covered by a removable protective tape 112 a to prevent contamination.
  • the tape 112 a is removed by the user when the detector 50 is first activated.
  • the carbon monoxide detection circuitry 112 includes resistors R 16 , R 17 , R 33 , and R 34 , a capacitor C 5 , a transistor Q 2 , and a biomimetic sensor S 1 .
  • the resistors R 16 , R 17 , R 33 and R 34 are about 100 ⁇ , 330K ⁇ , 3.3K ⁇ and 1K ⁇ , respectively, and the capacitor C 5 is preferably about 0.022 ⁇ F.
  • the sensor S 1 of the carbon monoxide detection circuitry 112 is utilized to detect the presence or absence of carbon monoxide in the surrounding atmosphere.
  • the sensor S 1 includes an infrared IR LED, a sensing device and a photo diode.
  • the sensing device S 1 is preferably a passive component that requires no additional power for its operation.
  • the sensor S 1 is preferably a S 30 model, manufactured by Quantum Group.
  • Temperature compensation circuitry or resistor/thermistor network 150 drives the IR LED of the sensor S 1 and acts as a constant current source, eliminating variations in the light output of the sensor S 1 which might otherwise be imparted by changes in the battery voltage.
  • the temperature compensation or circuitry 150 preferably includes resistors R 18 and R 20 and thermistor TH 1 .
  • the resistors R 18 and R 20 are each preferably about 33 ⁇ .
  • changes in the impedance of the thermistor TH 1 adjusts the current supplied to the IR LED of the sensor S 1 , stabilizing the light output.
  • the light emitted (940 nm) by the IR LED is passed through the sensor and detected by the photo diode to provide a measure of the absorbency of the sensor. Because the sensor darkens when exposed to carbon monoxide, increased absorbency of the light energy of the LED can be utilized to detect the presence of carbon monoxide in localized atmospheric environments, such as, for example, inside homes, offices, etc. As carbon monoxide molecules are absorbed by the sensor, the sensor becomes more opaque. In the absence of the carbon monoxide in the atmosphere, the sensor releases previously absorbed molecules (if any present) becoming more transparent in the process.
  • the photo diode of the sensor S 1 , the capacitor C 5 , the resistor R 16 , and the processing unit 102 comprise a pseudo analog-to-digital (A/D) converter capable of measuring the absorbency of the sensor S 1 with precision.
  • the processing unit 102 receives and processes data on pin 9 supplied by the A/D conversion to determine the level of carbon monoxide present in the surrounding atmosphere.
  • the pseudo A/D process measures the time needed to charge the capacitor C 5 when the IR LED of the sensor S 1 is enabled.
  • any residual charge on the capacitor C 5 is discharged to ground through the resistor R 16 to pin 8 of the processing unit 102 .
  • Pin 8 of the processing unit 102 is then configured as a high impedance state input.
  • the IR LED of the sensor device S 1 is enabled through pin 13 of the processing unit 102 and a software timer in the processing unit 102 is started.
  • the processing unit 102 supplies a constant bias voltage level to the photo diode of the sensor S 1 .
  • the voltage level is nearly the full value of the power supply voltage V cc since, even at the highest level of photo diode current, the voltage drop internal to the processing unit 102 (from supply pin 14 of the processing unit 102 to the output on pin 2 ) is minimal.
  • the absorbency of the sensor is sampled once about every 30 seconds. Each time the sensor absorbency is sampled, the sampling time value is compared with predetermined or programmable limits.
  • a FAULT routine is initiated by the detector unit 50 . Otherwise, the current value of the sample is compared with the value from the previous sample measurement, and the difference is stored in one of a plurality of storage registers. Subsequently, the storage registers are summed, and the value is placed in a sum register and also added to an alarm register.
  • the discrete sampling time values of the sensor S 1 are measured over time by an the processor 102 as further described below. Since the light output for the LED of the sensor S 1 is virtually constant over time, temperature, and voltage, the only mechanism by which the sampling time can change is relative absorbency of the sensor S 1 . When the concentration of carbon monoxide in the atmosphere surrounding the sensor increases, the sensor darkens and iterative sample times measured by the A/D converter lengthen or increase.
  • the sample time rate-of-change (dST/dt) is monitored by the processing unit 102 , and its magnitude is used to trigger an “alarm” condition (i.e., a high level alarm) when the carbon monoxide levels present a hazardous condition.
  • the sensor S 1 also responds to various carbon monoxide concentrations in the manner consistent with the ULTO34 standard.
  • a status flag (i.e., ALARM FLAG) is set when the value in the alarm register reaches full scale (i.e., 255 decibel). At this time a high level alarm is issued. When the carbon monoxide drops below about 50 ppm, the sensor begins to lighten and the values in the sum register become negative, causing a reduction in the value stored in the alarm register. If the value in the alarm register falls to about 48 or below, the sample, flag, and alarm registers in the high level alarm will be cleared, and the detector unit 50 will resume normal operation.
  • ALARM FLAG full scale
  • the A/D converter operation of the carbon monoxide detection circuitry 112 is verified by the processing unit 102 on power-up and about every 10 minutes thereafter (i.e., about every 20 sensor sampling cycles).
  • the integrating capacitor C 5 of the carbon monoxide detection circuitry 112 is discharged, and then allowed to charge by current supplied by pin 6 of the processing unit 102 through the A/D test resistor R 17 .
  • the software timer of the processing unit 102 executes a sample time measurements and the resultant value has to lie within program limits. This test checks for excessive leakage, shorting, or improper operation of the A/D measurement components. Any failure sets a fault flag and a fault condition is annunciated to notify the user.
  • the smoke detection circuitry 114 of the electronic measurement circuitry 110 detects the presence of smoke in the atmosphere.
  • the smoke detection circuitry provides a signal to the processing unit 50 that generates a warning signal.
  • the smoke detection circuitry 114 preferably includes a smoke detector D 1 , a smoke comparator unit U 2 , capacitors C 3 , C 10 , and C 14 , and resistors R 2 , R 3 , R 4 , R 5 , R 28 , and R 30 .
  • the smoke comparator unit U 2 is preferably a comparator such as Model No. SC41411PK available from Motorola (comparable to MC14467).
  • the capacitors C 3 , C 10 , and C 14 are each preferably about 0.1 ⁇ F, and the resistors R 2 , R 3 , R 4 , R 5 , R 28 , and R 30 are preferably about 1.5M ⁇ , 8.2K ⁇ , 1.5K ⁇ , 470K ⁇ , 1M ⁇ , and 33 ⁇ , respectively.
  • the smoke detector D 1 preferably includes a single source dual ionization chamber C 1 having an active chamber C 1 , a sensing electrode E 1 , and an ion chamber I 1 .
  • a 1.0 ⁇ Ci maximum source of American 241 is employed in the ionization chamber.
  • the active chamber C 1 is connected to ground by the parallel combination of the resistor R 28 and the capacitor C 10 .
  • the capacitor C 10 provides transient protection for the active chamber C 1 , and the resistor R 28 allows the active chamber C 1 of the smoke detector D 1 to be raised above ground by pin 18 of the processing unit Id SW 3 are closed, 3.3 volts is applied by pin 18 of the processing unit 102 to the resistor R 28 to simulate about 40-50 pA MIC.
  • the sensing electrode E 1 of the smoke detector D 1 is connected to the non-inverting input (pin 15 ) of the smoke comparator unit U 2 .
  • the connection of the sensing electrode, a very high impedance point, to the non-inventing input is preferably a flying connection to minimize leakage effects due to the presence of a printed circuit board.
  • Pins 14 and 16 of the smoke comparator unit U 2 are connected together internally to a voltage follower of a non-inventing input of the smoke comparator unit U 2 to provide an active guard output. This active guard reduces the effect of leakage between non-inventing input of the smoke comparator unit U 2 and adjacent pins.
  • An alarm feedback pin (pin 1 ) of the smoke comparator unit U 2 is monitored by the processing unit 102 to determine if a smoke condition exists.
  • the feedback pin is preferably pulled to about 3.3 volts by a pull-up resistor R 5 in a clean air condition. When smoke is present, the voltage across the dual chamber decreases and the voltage at the sensing electrode E 1 increases.
  • the alarm feedback pin of the smoke comparator unit U 2 will change to a low level state which is then read by the processing unit 102 .
  • the processing unit 102 will then go into a smoke alarm mode and turn on a smoke horn.
  • the horn pattern consists of an active phase lasting about 0.5 seconds+/ ⁇ 10% followed by an off-phase lasting about 0.5 seconds +/ ⁇ 10%, for three successive active periods, which are then followed by an off-phase lasting about 1.5 seconds +/ ⁇ 10%. This pattern is comparable to that specified by NFPA 72 .
  • Other patterns can be stored in the processor to use as needed.
  • the circuitry 114 establishes, using an alarm threshold established thereby, if enough smoke is present to warrant generating a smoke alarm. If so, the two state smoke alarm output signal goes from a high to a low which is indicative of a smoke alarm state.
  • the processor 102 will in turn activate the visible and audible smoke alarms. This is completely independent of processing for the presence of CO.
  • the smoke calibration circuit 116 of the electronic measurement circuitry 110 preferably includes resistors R 14 , R 32 , and R 36 .
  • the resistors R 14 , R 32 , and R 36 are preferably 1M ⁇ , 1M ⁇ , and 1.5M ⁇ .
  • the resistors R 14 , R 32 , and R 36 preferably form a resistive divider to provide a reference voltage for the inverting input (pin 13 ) of the smoke comparator unit U 2 .
  • the voltage division at the inverting input is designed so that under clean air conditions the two inputs are different to provide a nominal sensitivity of 67 pA MIC and that no alarm results.
  • the processing unit 102 applies about 3.3 volts to the resistor R 28 to simulate about 40-50 pA MIC.
  • the processing unit 102 then monitors the output of the smoke comparator U 2 about every 10 seconds or less. Any failure of the smoke comparator U 2 sets the fault flag and a fault condition is annunciated to notify the user.
  • a manual test mode is also provided for by the detector unit 50 .
  • This test mode is activated by the user, who simply pushes a test/silence button on the face of the detector unit until a horn chirp is issued and a yellow service LED flashes.
  • the processing unit 102 applies 3.3 volts to the resistor R 28 of the smoke detection circuitry 114 to simulate about a 40-50 pA MIC.
  • the processing unit 102 then monitors the output of the smoke comparator unit U 2 Every 10 seconds or less until it is pulled low, which signifies a smoke condition. Any failure sets a fault flag and a fault condition is annunciated to notify the user, and the carbon monoxide test is terminated.
  • the processing unit 102 will emit one cycle of the smoke alarm pattern. If the detector unit 50 passes, the processing unit 102 pauses for about one second to separate smoke and carbon monoxide tests. Then each green or yellow flash of a power LED depending on the battery status is preceded by a sensor sample cycle. Each of these samples is taken with pin 6 of the processing unit 102 configured as an input pulled to ground, stealing current through the resistor R 33 of the carbon monoxide detection circuitry 112 which is normally supplied by pin 13 of the processing unit 102 to the base of transistor Q 2 .
  • This activity “starves” the respective LED, reducing the light admitted through the sensor, and effectively simulates a carbon monoxide exposure, filling the alarm register with about 3 to 5 sample cycles.
  • a successful manual test results in a self-induced high level alarm state which is enabled for two cycles of the alarm pattern (i.e., on for 1.5 seconds and off for 1.5 seconds) indicating that the detector unit 50 is operating properly.
  • the audio and visual indicators 120 of the detector 50 are used in conjunction with various self-tests and user-initiated tests to indicate when the detector unit 50 is operating normally or has a problem which requires service.
  • the audio and visual indicators 120 also alert persons nearby when smoke and carbon monoxide concentrations are unhealthy or dangerous.
  • the audio and visual indicators 120 include carbon monoxide alarm indicator circuitry 122 , smoke alarm indicator circuitry 124 , horn driving circuitry 126 , service indicator circuitry 128 , and power/low battery indicator circuitry 129 .
  • the carbon monoxide alarm indicator circuitry 122 of the audio and visual indicators 120 preferably includes an indicator light LED 2 and resistor R 12 .
  • the light emitting diode LED 2 is preferably a red light emitting diode (LED), and the resistor R 12 is about 180 ⁇ .
  • the carbon monoxide alarm indicator circuitry 112 is electrically coupled to pin 23 of the processing unit 102 .
  • the processing unit 102 activates the indicator light LED 2 by pulling pin 23 to a low level state to provide a current path (typically, about 8 mA) from the power source through the indicator light LED 2 and the current limiting resistor R 12 to ground.
  • the smoke alarm indicator circuitry 124 of the audio and visual indicators 120 preferably includes an indicator light LED 3 and a resistor R 13 .
  • the indicator light LED 3 is preferably a red light emitting diode (LED), and the resistor R 13 is about 180 ⁇ .
  • the smoke alarm indicator circuitry 124 is electrically coupled to pin 22 of the processing unit 102 .
  • the processing unit 102 activates the indicator light LED 3 by pulling pin 22 to a low level state to provide a current path (typically, about 8 mA) from the power source through the indicator light LED 3 and current limiting resistor R 13 to ground.
  • the horn driving circuitry 126 of the audio and visual indicators 120 preferably includes a power oscillator U 4 , a piezoelectric alarm Hi, resistors R 19 , R 25 , R 37 and R 38 , and transistor Q 4 .
  • the power oscillator U 4 is preferably a MC14049VBCP available from Motorola is a known type used with smoke detectors.
  • the resistors R 19 , R 25 , R 37 , and R 38 are preferably about 1.5M ⁇ , 1.5M ⁇ , 1K ⁇ , and 1K ⁇ , respectively, the capacitor C 7 is preferably about 0.0022 ⁇ F.
  • the piezoelectric alarm H 1 is driven by the power oscillator U 4 .
  • Pin 2 of the piezoelectric alarm allows the power oscillator to resonate at a particular frequency, preferably within a range of about 3.5 kHz.
  • the processing unit 102 sets output pin 11 to a high level state, putting the transistor Q 4 into saturation, effectively connecting pin 8 of the power oscillator U 4 directly to ground.
  • the detector unit 50 has a special alarm silencing function that can be initiated by the user to silence the alarm. This function is activated by pressing a test/silence button on the detector unit 50 . When the detector is in a smoke alarm state, pressing the button will put the detector unit into a silence mode. This mode will silence the horn for about 8 minutes. During this time, the light indicator LED 3 of the smoke alarm indicator circuitry 124 will remain on. Pressing the test/reset button again while in silence mode, will reset a silence interval timer.
  • the processing unit 102 When in silence mode, the processing unit 102 desensitizes the ion chamber I 1 by turning on the transistor Q 5 of the hush/test circuitry 130 , pulling the ion chamber to ground. Increasing levels of smoke will kick the processing unit 102 out of hush mode and continue with a smoke alarm condition.
  • the power circuitry 130 of the detector unit 50 provides power to the various components of the detector unit 50 .
  • the power circuitry 130 includes a power supply and filter circuitry 132 , reverse bias protection circuitry 134 , and voltage regulator and filter circuitry 136 .
  • the power supply and filter circuitry 132 preferably includes a 9 volt battery BI and a capacitor C 2 .
  • the battery B 1 supplies power (i.e., about 8.4 volts) to the smoke comparator unit U 2 and other associated circuitry.
  • the battery is preferably a 9 volt alkaline type and the capacitor C 2 is about 0.1 ⁇ F.
  • the voltage regulator and filter circuitry 136 of the power circuitry 130 preferably includes a voltage regulator U 1 , and capacitors C 8 and C 9 .
  • the voltage regulator U 1 supplies a regulated 3.3 VDC to the processing unit 102 and its associated circuitry.
  • the 3.3 volt level minimizes overall current drain in the detector unit, which is typically about 5-7 ⁇ A.
  • the voltage regulator U 1 is preferably a Seiko S81233SG and the capacitors C 8 and C 9 are about 2.2 ⁇ F and 0.1 ⁇ F, respectively.
  • the reset circuitry 160 of the detector 50 insures proper reset of the processing unit 102 when the battery B 1 is removed by discharging any capacitance on the output of voltage regulator U 1 .
  • the reset circuit 160 of the detector unit 50 preferably includes resistors R 26 , R 27 , R 31 , and R 40 , a capacitor C 13 and a transistor Q 3 .
  • the resistors R 26 , R 27 , R 31 , and R 40 are preferably about 3.9K ⁇ , 10M ⁇ , 33K ⁇ , and 10M ⁇ , respectively, the capacitor C 13 is about 0.1 ⁇ F.
  • the reverse bias protection circuitry 134 of the power circuitry 130 provides protection for the circuitry of the detector unit 50 when the battery is installed improperly.
  • the reverse bias protection circuitry 134 preferably includes a diode D 5 and a resistor R 35 .
  • the diode D 5 of the reverse bias protection circuitry 134 prevents any damaging current flow through the voltage regulator U 1 and the capacities C 2 , C 8 , and C 9 if the battery is installed backwards.
  • the resistor R 35 is about 1K ⁇ .
  • the resistor R 35 of the reverse bias protection circuitry 134 limits current through a voltage detector U 3 to a non-damaging level when the battery B 1 is installed backwards, but is not large enough to substantially effect the level of the battery voltage at the input (pin 2 ) of the voltage detector U 3 .
  • the quiescent current drain through the voltage detector U 3 is typically about 1 ⁇ A, creating a voltage drop across the resistor R 32 of only about 0.001 V dc.
  • the battery B 1 is tested to insure it retains sufficient capacity to sustain operation after a low battery condition is detected as specified by UL2034 standards. During this test, the processing unit 102 enables the IR LED of the sensor S 1 for 10 mS (which consumes about 20 mA) to load the battery for an accurate measurement.
  • the processing unit 102 samples the state of pin 1 of the voltage detector U 3 .
  • the resistor R 23 pulls up the open collector output (pin 1 ) of the voltage detector U 3 to 3.3 volts.
  • a high logic level is detected by pin 16 of the processing unit 102 , which indicates the presence of a sufficient battery level.
  • the processing unit 102 sets a LOW BATTERY flag and indicates this condition to the user.
  • FIGS. 2 a - 1 , 2 a - 2 taken together illustrate as, a flow diagram a general overview of the operations carried out by the detector 50 .
  • the detector 50 initializes a watchdog timer and initializes one or more ports at block 250 c .
  • the detector 50 determines whether it was just powered up.
  • the detector 50 If the detector 50 was just powered up, it sets a power-up delay at block 250 e .
  • the detector 50 initializes one or more counters, clears one or more sample registers, clears one or more flag registers, and clears the alarm register. The detector 50 then obtains an initial sensor count at block 250 g and then goes into the sleep mode at block 250 h.
  • the detector 50 If the detector 50 was not just powered up at block 250 d , it will determine whether there is a smoke alarm condition a block 250 i (based on a binary, low, output signal for comparator U 2 ). If there is a smoke alarm condition, the detector 50 will flash the LED 3 of the smoke indicator circuitry 124 and sound the smoke horn pattern at 250 j . The process then proceeds to block 250 k as further described below.
  • the detector 50 will determine whether a manual test has been initiated at block 250 k . If a manual test has been initiated, the detector 50 will perform the manual test and then go into the sleep mode at block 250 h.
  • the detector 50 determines whether to perform a 30 second CO sample at block 2501 . If the detector 50 does not have to obtain a 30 second sample, it will go into the sleep mode at block 250 h.
  • the detector 50 determines whether to perform a 24 hour smoke test at block 250 n . If a 24 hour smoke test is to be performed, the detector 50 tests the smoke alarm indicator circuitry 124 . The process then proceeds to block 250 q as further described below.
  • the detector determines whether to perform a 10 minute A-to-D test at block 250 p . If the detector 50 does not have to perform the 10 minute A-to-D test, the process proceeds to block 250 r as further described below.
  • the detector 50 tests the A-to-D circuitry at block 250 q .
  • the detector 50 then checks the carbon monoxide rate of change at block 250 r and determines whether to activate the carbon monoxide alarm at block 250 s . This determination is independent of the output of the smoke detector circuit U 2 .
  • the detector 50 will determine whether to also activate a smoke alarm at block 250 t . If the smoke alarm is not to be activated, the detector 50 will flash the light indicator LED 2 of the carbon monoxide alarm indicator circuitry 122 and sound the carbon monoxide horn pattern at block 250 u.
  • the detector 50 will turn off the light indicator LED 2 and turn off the carbon monoxide horn pattern. The process will then proceed to block 250 x as further described below.
  • the detector 50 will turn off the light indicator LED 3 of the carbon monoxide alarm indicator circuitry 122 and the carbon monoxide horn pattern at block 250 w .
  • the data will be examined and the detector 50 will determine whether there are any faults at block 250 y.
  • the detector unit 50 will go into the sleep mode at block 250 h . If faults are detected at block 250 y , the detector 50 will determine whether the carbon monoxide or smoke alarm has been activated at block 250 z . If the carbon monoxide or smoke alarm is activated, the processing unit 102 will go into the sleep mode at block 250 h . If the carbon monoxide or smoke alarm is not activated, the detector unit 50 will initiate a trouble chirp at block 250 aa and then go into the sleep mode at block 250 h.
  • FIG. 3 illustrates a main routine 300 of the process carried out by the detector 50 to implement various tests, alarm conditions, and smoke and carbon monoxide checks.
  • the detector unit 50 sets a wake-up time at block 302 .
  • the detector unit 50 sets the wake-up time at about 3 seconds for normal mode, about 1.5 seconds for alarm mode, and about 0.75 seconds for test mode.
  • the detector unit 50 then initializes ports A-C at block 304 and then determines whether a TIME OUT bit has been cleared at block 306 . If the TIME OUT bit has been cleared, the process proceeds to the WAKE sub-routine as further described below.
  • the detector 50 determines whether a POWER DOWN bit has been set at block 312 . If the POWER DOWN bit has not been set, the process proceeds to a POWER UP routine as further described below. If the POWER DOWN bit is set at block 312 , the detector unit 50 increments a SPECIAL TEST counter at block 314 and then determines whether the SPECIAL TEST counter is greater than 2 at block 316 . If the SPECIAL TEST counter is greater than 2, the process proceeds to the WAKE sub-routine. If the SPECIAL TEST counter is not greater than 2 at block 324 , the detector unit 50 initializes a TEST counter, sets a START flag at block 318 , and then proceeds to a LOOP sub-routine as further described below.
  • FIG. 4 illustrates a POWERUP sub-routine 320 .
  • the POWERUP sub-routine initializes various counters, registers, and flags.
  • the detector 50 initializes a WAKE UP counter, a SAMPLE counter, and a TEST counter.
  • the detector 50 then clears the registers and flags and sets a START flag a block 320 b .
  • the detector 50 then waits about 255 ms at block 320 c and sets the ALARM TOGGLE counter CTR equal to 4 at block 320 d .
  • the detector 50 clears the ALARM register at block 320 e and then it goes into the sleep mode.
  • FIG. 5 illustrates a WAKE sub-routine 330 that is carried out when the detector 50 is awakened from the sleep mode.
  • the detector 50 determines whether the TEST mode flag is set. If a TEST mode flag is set, the process proceeds to a RESUMET sub-routine 330 b .
  • the detector 50 is kept STARVED (as described above) at block 330 c , the yellow light is kept on at block 330 d , and the WAKE UP counter is set equal to 1 at block 330 e .
  • the detector unit 50 determines whether the ALARM flag is set at block 330 f . If an ALARM flag is set, the process proceeds to a RESET sub-routine as further described below. If the ALARM flag is not set, the process proceeds to a LOOP sub-routine as further described below.
  • the detector 50 determines whether the ALARM flag is set at block 330 c . If the ALARM flag is set, the detector 50 determines whether there is a smoke or carbon monoxide condition at block 330 d . If the ALARM flag is not set at block 330 c , the detector 50 determines whether the TEST switch is pressed at block 330 e . If the TEST switch is not pressed, the process proceeds to a BYE1 sub-routine as further described below.
  • the detector 50 saves the ALARM register at block 330 f , sets a TEST flag, sets a WAKEUP counter equal to 1, and turns on the yellow LED 4 of the power/low battery indicator circuitry 129 at block 330 g .
  • the detector 50 determines whether the battery level is low at block 330 h . If the battery level is not low, the green LED 4 of the power/low battery indicator circuitry 129 is turned on at block 3301 .
  • the detector If the battery level of the detector 50 is low at block 330 h , the detector turns on the yellow LED at block 330 j . The detector then simulates a smoke alarm and turns on the smoke LED 3 of the smoke alarm indicator circuitry 124 at block 330 k and sound a smoke alarm pattern at block 3301 . The detector unit then turns off the smoke LED and simulates the carbon monoxide alarm at block 330 m . The detector 50 now turns on the carbon monoxide alarm horn pattern and the LED 2 of the carbon monoxide alarm indicator circuitry 122 at block 330 n . Thereafter, the detector 50 turns off the carbon monoxide alarm and the carbon monoxide alarm LED 3 at block 330 o . The detector will then enter the sleep mode.
  • FIG. 6 illustrates, a RS 1 sub-routine 340 .
  • the reset sub-routine 340 is utilized to flash the red and yellow LEDS as CO samples are taken during the test function and sound the alarm when the circuitry has passed the self test.
  • the detector 50 determines whether a QUIET flag is set. If the QUIET flag is set, the detector 50 turns off a BEEPER at block 340 b , reloads a TOGGLE register at block 340 c , and turns off the red LED 2 and yellow LED 3 at block 340 d.
  • the detector 50 decrements the TOGGLE register at block 340 e and then determines whether the TOGGLE register is equal to zero at block 340 f . If the TOGGLE register is equal to zero, the process proceeds to block 340 b as described above.
  • the detector 50 turns on the BEEPER at block 340 g and turns on the red LED 2 and yellow LED 3 at block 340 d . Subsequently, the process proceeds to the BYE1 subroutine as further described below.
  • FIG. 7 illustrates a RESET sub-routine 350 and a RESET1 subroutine 355 .
  • the RESET sub-routine and RESET1 sub-routine are utilized to restore registers after a manual test.
  • the detector 50 When the detector 50 carries out the RESET sub-routine 350 , it restores the ALARM value at block 350 a , reloads the WAKEUP counter at block 350 b , and calls CLRREG at block 350 c . The process then proceeds to a SHOW sub-routine as further described below.
  • the detector 50 When the detector 50 carries out the RESET1 sub-routine 355 , it reloads the wake-up counter at block 350 b and calls CLRREG at block 250 c . The process then proceeds to the SHOW sub-routine.
  • FIG. 8 illustrates a LOOP sub-routine 360 .
  • the LOOP sub-routine is utilized to determine if the CO alarm flag is set during a test, or if more samples must be taken.
  • the detector unit 50 retrieves the TIME and then determines whether the carbon monoxide ALARM flag is set at block 360 b . If the carbon monoxide ALARM flag is set, the process proceeds to a LOOP2 subroutine as further described below.
  • the detector determines whether the TEST flag is set at block 360 c . If the TEST flag is set, the process proceeds to the LOOP2 sub-routine.
  • the detector decrements the TEST counter at block 360 d and then determines whether the TEST counter is equal to zero at block 360 e . If the TEST counter is not equal to zero, the process proceeds to the LOOP2 sub-routine. If the TEST counter is equal to zero, the process proceeds to the TEST sub-routine as further described below.
  • FIG. 9 illustrates a NEG1 sub-routine 370 to carry out a reduction in the counts value to clear an alarm condition if the CO level is decreasing.
  • the detector 50 clears the DIRECTION flag and the subtracts a REDCT value from an ALARM register at block 370 b .
  • the detector 50 determines whether the carbon monoxide ALARM is negative.
  • the process proceeds to block 370 d as further described below. If the carbon monoxide ALARM is negative at block 370 c , the detector clears the carbon monoxide ALARM at block 370 e and then determines whether an ALARM value is less than an ALROFF value at block 370 d . If the ALARM is less than ALROFF, then the detector 50 clears the carbon monoxide ALARM at block 370 f.
  • the detector 50 decrements a NEGATIVE READING counter at block 370 g . If the NEGATIVE READING counter is equal to zero, the detector unit calls CLRREG and the process proceed to the SHOW sub-routine. If the NEGATIVE READING counter is not equal to zero, the process proceeds correctly to the SHOW sub-routine.
  • FIG. 10 illustrates a TESTR sub-routine 380 .
  • the TESTR subroutine 380 is utilized when the test switch is pressed by a user.
  • the detector unit 50 determines whether the test switch is pressed. If the test switch is not pressed, the process proceeds to the RES1 sub-routine 340 as described above. If the TEST SWITCH is pressed at 380 a , the detector 50 determines whether the unit is in a smoke alarm condition at block 380 b.
  • the detector 50 determines whether the counter has timed out. If the counter has not timed out, the process proceeds to block 380 h .
  • the detector 50 clears the QUIET flag at block 380 j and turns on the carbon monoxide ALARM at block 380 k . The process then returns to the beginning of the TESTR sub-routine 380 .
  • the detector 50 determines whether the smoke is increasing at block 380 g.
  • the detector activates the smoke alarm at block 380 r and the process proceeds to the beginning of the TESTR sub-routine 380 . If the smoke is not increasing at block 380 g , the detector 50 determines whether the counter has timed out at block 380 s.
  • the process proceeds to block 380 p . If the counter has timed out at block 380 s , the detector 50 clears the QUIET flag at block 380 f and activates the smoke alarm at block 380 r . The process then proceeds to the beginning of the TESTR sub-routine 380 .
  • FIG. 11 illustrates a SMOKE CHECK sub-routine 390 .
  • the SMOKE CHECK sub-routine determines whether the smoke sensor has detected the presence of smoke in the atmosphere and initiates a smoke alarm.
  • the detector 50 clears a ten minute SMOKE flag. The detector 50 then determines whether a smoke test is in progress at block 390 b.
  • the process proceeds to a SMKTEST sub-routine as further described below. If the detector 50 is not to carry out a smoke test, it checks a smoke feedback pin of the sensor at block 390 c . The detector unit then determines whether smoke is present in the atmosphere at block 390 d.
  • the detector 50 determines whether there has been a smoke glitch at block 390 e . If there has been a smoke glitch, the process proceeds to block 390 b . If there is not smoke glitch at block 390 e , the detector 50 clears the smoke at block 390 d and returns to the beginning of the SMOKE CHECK sub-routine 390 .
  • the detector unit 50 determines that smoke is present at block 390 d , it continues processing at block 390 f . The detector 50 then determines whether it is in a silence mode at block 390 g . If the detector unit 50 is in the hush mode, the process proceeds to a SMOKE PRIORITY sub-routine as further described below.
  • the detector 50 If the detector 50 is not in the silence mode at block 390 g , it the detector unit 500 sets a SMOKE flag at block 390 h and then determines whether to execute a Canadian horn pattern at block 390 i .
  • One of the advantages of the detector 50 is its ability to store a plurality of horn patterns and use one or more selected patterns.
  • the detector 50 will turn on the smoke LED 3 at block 390 l and will turn on the Canadian smoke beeper at block 390 m . The process then returns to the beginning of the SMOKE CHECK sub-routine 390 .
  • FIG. 12 illustrates a TEST sub-routine 400 to test smoke sensor functioning.
  • the detector 50 clears an ERROR flag and LOW TEMP flag at block 400 a , saves all the data at block 400 b , sets up a test current at block 400 c , and calls an TIME1 at block 400 d .
  • the detector 50 determines whether the sensor output is less than a BOTLIM value at block 400 e . If the sensor output is less than the BOTLIM value, the detector 50 sets an ERROR flag at block 400 f and the process proceeds to block 400 h as further described below.
  • the detector 50 determines whether the sensor output is greater than a TOPLIM value at block 400 g . If the sensor output is less than the TOPLIM value, the detector 50 sets the ERROR flag at block 400 f and the process proceeds to block 400 h . If the sensor output is not less than the TOPLIM value at block 400 g , the detector 50 determines whether an ALARM is greater than zero at block 400 h.
  • the detector 50 subtracts a REDMIN value from the ALARM register at block 400 i and then determines whether the ALARM register is negative at block 400 j . If the ALARM register is negative, the detector 50 sets the ALARM register equal to zero at block 400 k and the process proceeds to block 400 l as further described below. If the ALARM register is not negative at block 400 j , the process proceeds to block 400 l.
  • the detector 50 determines whether a HIGH BYTE value is greater than REF value at block 400 o.
  • the detector restores the saved data at block 400 p , and initializes the WAKEUP counter and restores the TEST counter at block 400 q . The process then proceeds to the BAT1 sub-routine as further described below.
  • the detector 500 sets the LOW TEMP flag at 400 r , restores the saved data at block 400 p , initializes the WAKEUP counter, and restores the TEST counter at block 400 q . The process then proceeds to the BAT1 sub-routine.
  • FIG. 13 a block diagram of another embodiment of a detector 500 is illustrated.
  • the detector 500 is a battery powered, single station, self-contained carbon monoxide alarm.
  • the detector 500 detects the presence and concentration of carbon monoxide in the atmosphere and provides a warning of potential hazardous carbon monoxide conditions.
  • the detector 500 corresponds in many respects in construction and function to the previously described detector 50 except that the detector 500 does not detected the presence of smoke.
  • the component of the detector 500 generally corresponding to those components of the detector unit 50 are designated by like-reference numerals in the six-hundred series.
  • the central processing unit 602 includes a microchip PIC16C58A, available from microchip.
  • FIG. 15 illustrates a flow diagram of the general operations carried out by the detector 500 .
  • the detector monitors the carbon monoxide in the atmosphere and sounds an alarm if a hazard condition is present.
  • the detector 500 After the detector 500 is awakened at block 800 a or powered up at block 800 b , the detector initializes a watchdog timer and initializes one or more ports at block 800 c .
  • the detector 500 determines whether the unit was just powered up. If the detector 500 was just powered up, the detector implements a power-up delay at block 800 e , and then initializes one or more counters, clears one or more sample registers, clears one or more flag registers, and clears an alarm register at block 800 f . The detector 500 then obtains an initial sensor count at block 800 g and then the detector 500 is put in the sleep mode at block 800 h.
  • the detector 500 determines whether to implement a manual test at block 800 i . If the manual test is to be implemented, the detector 500 performs the manual test at block 800 j and then the detector 500 is put in the sleep mode at block 800 h.
  • the detector 500 determines whether to obtain a 30 second sample at block 800 k . If the detector 500 is not to obtain a sample, the detector 500 will be put in the sleep mode at block 800 h.
  • the detector 500 If the detector 500 is to obtain a 30 second sample at block 800 k , the detector 500 obtains a sensor count at block 800 l and then determines whether to perform a 10 minute A-to-D test at block 800 m . If the detector 500 is not to perform the A-to-D test, the process proceeds to block 800 o.
  • the detector 500 If the detector 500 is to perform the 10 minute A-to-D test at block 800 m , the detector 500 tests the A-to-D circuitry at block 800 n and then checks the carbon monoxide rate of change at block 800 o.
  • the detector 500 determines whether to activate the carbon monoxide alarm. If the carbon monoxide alarm is to be activated, the detector 50 flashes the light indicator LED 2 of the carbon monoxide indicator circuitry 622 (see FIG. 15) and sounds the carbon monoxide horn pattern at 800 q . The process then proceeds to block 800 s as further described below.
  • the detector 50 turns off the carbon monoxide LED 2 and horn at block 800 r , and shows data at block 800 s.
  • the detect or 500 determines whether there are any faults at block 800 t . If there are not any faults at block 800 t , the detector 500 is put in the sleep mode at block 800 w.
  • the detector 500 determines whether to check the carbon monoxide alarm at block 800 u . If the carbon monoxide is to be checked, the detector 500 is put in the sleep mode at block 800 w . If there is no problem with the carbon monoxide alarm is not to be checked, the detector 500 generates a trouble chirp at block 800 v and then the detector is put into the sleep mode at block 800 w.
  • FIG. 16 shows a flow diagram of a main program carried out by the detector 500 .
  • the detector 500 sets a wake-up time (i.e., about 3 seconds for normal mode and about 1.5 seconds for alarm mode).
  • the detector 500 then initializes ports A and B at block 810 b and determines whether a TIME OUT bit is cleared at block 810 c . If the TIME OUT bit is cleared, the detector 500 proceeds to a WAKE sub-routine as further described below.
  • the process proceeds to a POWER UP sub-routine as further described below.
  • the detector 500 then waits about 300 ms at block 810 d .
  • the detector 500 initializes a WAKE UP counter, a SAMPLE counter, and a TEST counter at block 810 e .
  • the detector 500 then clears one or more registers and flags at block 810 f , clears an ALARM REGISTER at block 810 g , sets a START flag at block 810 h , and then goes into the sleep mode.
  • a WAKE sub-routine 820 is illustrated.
  • the WAKE sub-routine is performed when the processor is awakened from the sleep mode.
  • the detector 500 determines whether a TEST MODE flag is set. If the TEST MODE flag is set, the process will proceed to a RESUMET sub-routine 820 b . While carrying out the steps of the RESUMET sub-routine 820 b , the detector 500 is kept STARVED at block 820 c and a WAKEUP counter is set equal to 1 at block 820 d . The detector 500 then determines whether the ALARM flag is set at block 820 e . If the ALARM flag is set, the process proceeds to a RESET sub-routine as further described below. If the ALARM flag is not set at block 820 e , the process proceeds to a LOOP sub-routine as further described below.
  • the detector 500 determines whether an ALARM flag is set at block 820 f . If the ALARM flag is set, the process proceeds to a TESTR sub-routine as further described below.
  • the detector 500 determines whether a test switch is pressed at block 820 g . If the test switch is not pressed, the process proceeds to a BYE1 sub-routine as further described below.
  • the detector 500 determines whether an error flag is set at block 820 h . If the error flag is set, the process proceeds to a RESERR sub-routine as further described below.
  • the detector saves the data in an ALARM register at block 820 i , sets a TEST flag and sets the WAKEUP counter equal to 1 at block 820 j . Thereafter, the detector 500 turns on the yellow LED 1 at block 820 k , waits 100 ms at block 820 l , turns off the yellow LED 1 at block 820 m , and clears a START flag at 820 n . The process will then proceed to a BEEPX sub-routine as further described below.
  • FIG. 18 illustrates a BY 1 sub-routine 840 and the TESTR subroutine 830 .
  • the TESTR sub-routine 830 is utilized to determine if the test switch is being pressed during an alarm to silence the unit and the BYE1 sub-routine is utilized to decrement the WAKEUP counter to determine what WAKEUP routine to accomplish.
  • the detector 500 determines whether the test switch is pressed. If the test switch is not pressed, the process proceeds to an ALR1 subroutine as further described below. If the test switch is pressed at block 830 a , the detector 500 determines whether a QUIET INHIBIT flag is set at block 830 b . If the QUIET INHIBIT flag is set, the process proceeds to block 830 g as further described below.
  • the detector 500 sets a 4 minute delay at block 830 c , sets a QUIET ONCE flag at block 830 d , sets a QUIET flag at block 830 e , turns off the beeper at block 830 f , waits for a switch release at block 830 g , and then decrements the WAKEUP counter at block 830 h .
  • the detector 500 determines whether the WAKEUP counter is equal to zero at block 830 i . If the WAKEUP counter is not equal to zero, the detector 500 is put into the sleep mode.
  • the WAKEUP counter is reloaded (i.e., the WAKEUP counter is set to 10 for normal mode and equal to 20 for alarm mode) at block 830 j .
  • the detector 500 determines whether the ALARM flag is set. If the ALARM flag is not set, the process proceeds to a LOOP sub-routine as further described below.
  • the detector 500 decrements the TEST counter at block 830 l , and the process proceeds to a LOOP sub-routine. If the TEST counter is equal to zero at block 830 l , the detector 500 clears the QUIET flag at block 830 m and the process proceeds to the LOOP subroutine.
  • ALR1 sub-routine 840 is utilized to activate the carbon monoxide LED 2 and horn.
  • a TEST ALARM counter is set equal to 2 and an ALARM COUNTER is set equal to 3.
  • the detector determines whether the QUIET flag is set. If the QUIET flag is set, the process proceeds to block 840 d as further described below.
  • the detector 500 turns on the horn at block 840 e , turns on the carbon monoxide LED 2 at block 840 d , waits 100 ms at block 840 e , turns off the carbon monoxide LED 2 at block 840 f , waits about 400 ms at block 840 g , decrements the ALARM counter at block 840 h , and then determines whether the ALARM counter is equal to zero at block 840 i . If the alarm counter is not equal to zero, the process proceeds to block 840 b.
  • the detector 500 If the alarm counter is equal to zero at block 840 i , the detector 500 turns off the horn at block 840 j and then determines whether a TEST flag is set at block 840 k . If the TEST flag is set, the detector 500 decrements the test alarm counter by 1 at block 840 l and then determines whether the test alarm counter is equal to zero at block 840 m.
  • test alarm counter is equal to zero, the process proceeds to a RESET sub-routine as further described below. If the test alarm counter is not equal to zero at block 840 m , the detector will be put into the sleep mode.
  • the detector 500 will decrement the WAKEUP counter by 1 at block 840 n and then the detector 500 determines whether the WAKEUP counter is equal to zero at block 840 o . If the WAKEUP counter is not equal to zero, the detector 500 is put into the sleep mode.
  • the detector 500 reloads the WAKEUP counter with a ALARM DIV value at block 840 p . The process then proceeds to a sub-routine MIN4 as further described below.
  • FIG. 20 illustrates the RESET sub-routine 850 and a RESET1 subroutine 852 of the main routine.
  • the detector 500 restores the ALARM value.
  • the detector 500 then reloads the WAKEUP counter at block 850 b and then calls CLRREG at block 850 c .
  • the process then proceeds to ALRH X sub-routine as further described below.
  • the LOOP sub-routine 860 is illustrated.
  • the LOOP sub-routine 860 is implemented to determine if a manual self test needs to be performed.
  • the detector 500 calls TIME and then determines whether an ALARM flag is set at block 860 b . If the ALARM flag is set, the process proceeds to a LOOP2 sub-routine as further described below.
  • the detector 500 determines whether the TEST flag is set at block 860 c . If the TEST flag is set, the process proceeds to the LOOP2 sub-routine. If the TEST flag is not set at block 860 c , the detector 500 decrements the TEST counter at block 860 d and then determines whether the TEST counter is equal to zero at block 860 e . If the TEST counter is not equal to zero, the process proceeds to the LOOP2 sub-routine. If the TEST counter is equal to zero at block 860 e , the process proceeds to a TEST subroutine as further described below.
  • FIG. 22 illustrates a NEG1 sub-routine to a reduction in the counts value to clear an alarm condition if the CO level is decreasing.
  • the detector 500 clears a DIRECTION flag and subtracts a REDCT value from the ALARM register at block 870 b .
  • the detector 500 determines whether the ALARM register is negative at block 870 c . If the ALARM is not negative, the process proceeds to block 870 d as further described below. If the ALARM is negative at block 870 c , the detector 500 clears the ALARM register at block 870 e and then determines whether the ALARM is less than an ALROFF value at block 870 d . If the ALARM register is less than the ALROFF value, the detector clears the ALARM register at block 870 f.
  • the detector 500 decrements a NEGATIVE READING counter at block 870 g . If the NEGATIVE READING counter is not equal to zero, the process proceeds to the SHOW sub-routine as further described below. If the NEGATIVE READING counter is equal to zero, the detector 500 calls CLRREG at block 870 h . The process then proceeds to the SHOW sub-routine.
  • the TEST sub-routine 880 is utilized to test and exercise the carbon monoxide sensing electronics, while maintaining the previous samples and data acquired.
  • the detector 500 clears an ERROR flag at block 880 a , saves all the data at block 880 b , sets up a test current at block 880 c , calls TIME1 at block 880 d , and determines whether the sensor output is less than a BOTLIM value at block 880 e.
  • the detector 500 sets an ERROR flag at block 880 f , and then the process proceeds to block 880 g as further described below. If the sensor output is not less than the BOTLIM value at block 880 e , the detector 500 determines whether the sensor output is less than a TOPLIM value at block 880 h.
  • the detector 500 sets an ERROR flag at block 880 f , and the process proceeds to block 880 g . If the sensor output is not less than the TOPLIM value at block 880 h , the detector 500 determines whether the ALARM register is equal to zero at block 880 g.
  • the detector 500 subtracts a REDMIN register from the ALARM register at block 880 i , and then determines whether the ALARM register is negative at block 880 j . If the ALARM register is not negative, the process proceed to block 880 l as further described below. If the ALARM register is negative at block 880 j , the detector 500 sets the ALARM register equal to zero at block 880 k and then the process proceeds to block 880 l as further described below.
  • the detector 500 will restore the save data at block 880 l .
  • the detector 500 will then initialize the WAKEUP counter and restore the TEST counter at block 880 m .
  • the process then proceeds to the BAT1 sub-routine as further described below.
  • FIG. 24 illustrates the BAT1 sub-routine 890 and a Loop2 subroutine 900 .
  • the BAT1 sub-routine 890 determines whether the battery of the detector 500 is at a sufficient voltage level and the LOOP2 sub-routine turns off the IR LED and power LED after a sample has been taken and stores the current sample value.
  • the detector 500 turns on the IR LED of the carbon monoxide sensor at block 890 a and decrements a ALARM TOGGLE register at block 890 b . If the ALARM TOGGLE is equal to zero at block 890 b , the detector is put into the sleep mode with their LED on. If the ALARM TOGGLE is not equal to zero at block 890 b , the detector 500 clears a LOW BATTERY flag at block 890 c , turns on the red LED 2 at block 890 d , waits about 10 ms at block 890 e , and then determines whether the battery line is at a low level at block 890 f.
  • the process proceeds to block 890 g as further described below. If the battery line is at a low level at block 890 f , the detector 500 sets a LOW BATTERY flag at block 890 h , turns off their LED at block 890 g , turns off the red LED at block 890 i , and then determines whether a START flag has been set at block 890 k.
  • the process proceeds to a INSPECT sub-routine as further described below. If the START flag is set at block 890 k , the detector unit 500 copies a current sample to a last sample buffer at block 890 l , clears the START flag at block 890 m , and then the process proceeds to the INSPECT sub-routine.
  • FIG. 25 illustrates the INSPECT sub-routine 910 .
  • the INSPECT sub-routine 910 is utilized to evaluate the difference between the previous sample and the present sample.
  • the detector 500 determines whether a HIGH BYTE is greater than an HFAULT value. If the HIGH BYTE is not greater than the HFAULT value, the process proceeds to block 910 b as further described below. If the HIGH BYTE is greater than the HFAULT value at block 910 a , the detector 500 sets an ERROR flag at block 910 c and then determines whether the HIGH BYTE is greater than a HIVAL1 value at block 910 b.
  • the process proceeds to block 910 e as further described below. If the HIGH BYTE is not greater than the HIVLA1 value at block 910 b , the detector 500 sets the ERROR flag at block 910 d , saves a previous sample in registers A and B at block 910 e , and then determines whether the TEST flag is set at block 910 f.
  • the process proceeds to block 910 g as further described below. If the TEST flag is not set at block 910 f , the detector 500 moves the current sample to the last sample register at block 910 h , calculates the difference between the current sample and the last sample at block 910 g , and then determines whether the difference is negative at block 910 i.
  • FIG. 26 illustrates the POS1 sub-routine 920 to determine if we are in a high level alarm and a ACC3 sub-routine 922 to add the equate for the previous sample to the alarm register.
  • the detector 500 determines whether a HIGH BYTE is equal to zero. If the HIGH BYTE is not equal to zero, the process proceeds to a ADJ1 sub-routine 924 as further described below. If the HIGH BYTE is equal to zero, the detector 500 determines whether a LOW BYTE is equal to zero at block 920 b.
  • the detector 500 sets a DIRECTION flag at block 920 c and the process proceeds to block 920 d as further described below. If the LOW BYTE is equal to zero at block 920 b , the detector 500 determines whether the LOW BYTE is greater than a SUPRL value at block 920 d.
  • the process proceeds to the ADJ1 sub-routine 924 as further described below. If the LOW BYTE is not greater than SUPRL at block 920 d , the detector 500 assigns the difference to the current sample register at block 920 e , decrements a sample register pointer and reloads the register pointer to five when the sample register pointer is equal to zero at block 920 f . The detector 500 adds the five sample registers and stores the result in a SUMREG register at block 920 g . The process then proceeds to a ACCUM sub-routine as further described below.
  • the detector 500 adds the difference to the ALARM register at block 922 a , and then determines whether the ALARM register exceeds 255 at block 922 b . If the ALARM register does not exceed 255, the process proceeds to a CHKRDH sub-routine as further described below. If the ALARM register exceeds 255 at block 922 b , the process proceeds to the ADJ1 sub-routine 924 .
  • the detector unit 500 determines whether the ALARM is equal to 255 and sets an ALARM flag at block 924 a .
  • the detector 500 then sets up an ALARM TOGGLE at block 924 b and determines whether the QUIET flag is set at block 924 c.
  • the process proceeds to the SHOW subroutine as further described below. If the QUIET flag is not set at block 924 c , the detector 500 determines whether the TEST flag is set at block 924 d.
  • the process proceeds to the SHOW subroutine. If the TEST flag is set at block 924 d , the detector 500 turns on the red LED and turns on the beeper at block 924 e . The process then proceeds to the SHOW sub-routine.
  • FIG. 27 illustrates the ACCUM sub-routine 930 and a SET6 subroutine.
  • the ACCUM sub-routine 930 is utilized to determine what value to assign to the lower byte of the sum register, and the SET6 sub-routine is implemented to assign the sum 6 value to the low byte of the sum register.
  • the detector 500 obtains a SUMREGL value and then determines whether a TEST flag is set at block 930 b . If the TEST flag is set, the process proceeds to a ACC4 sub-routine as further described below. If the TEST flag is not set at block 930 b , the detector unit 500 determines whether a DIRECTION flag is set at block 930 c.
  • the process proceeds to block 930 d as further described below. If the DIRECTION flag is set at block 930 c , the detector unit 500 determines if an ALARM flag is set at block 930 e.
  • the process proceeds to block 930 d . If the ALARM flag is set at block 930 e , the detector 500 reloads the NEGATIVE counter at block 930 f.
  • the detector 500 determines whether a SUMREGH value is equal to zero. If the SUMREGH value is not equal to zero, the process proceeds to a SET6 sub-routine 930 . If the SUMREGH is equal to zero at block 930 d , the detector unit 500 determines whether the SUMREGL value is equal to zero at block 930 g.
  • the process proceeds to a CHKSP sub-routine as further described below. If the SUMREGL is not equal to zero at block 930 g , the detector 500 determines whether a LOW TEMP flag is set at block 930 h.
  • the detector 500 determines whether the SUMREGL value is less than 3 at block 930 i . If the SUMREGL value is less than three, the detector 500 sets the SUMREGL value equal to three at block 930 j , and will times the SUMREGL by two at block 930 k , and the process proceeds to block 9301 . If the SUMREGL is not less than 3 at block 930 i , the detector unit 500 times the SUMREGL by two at block 930 k , and the process proceeds to block 930 l.
  • the detector unit 500 compares the SUMREGL to LEVEL1 through LEVEL5 values. If the SUMREGL is less than the LEVEL1 value, the detector unit 500 sets the SUMREGL value equal to a SUM1 value at block 930 m . If the SUMREGL value is less than the LEVEL2 value at block 930 n , the detector 500 sets the SUMREGL value equal to a SUM2 value at block 930 o . If the SUMREGL value is less than the LEVEL3 value at block 930 p , the detector 500 sets SUMREGL value equal to a SUM3 value at block 930 q .
  • the detector 500 sets the SUMREGL value equal to a SUM4 value at block 930 t . If the SUMREGL value is less than a LEVEL5 value at block 930 v , the detector 500 sets the SUMREGL value equal to a SUM5 value at block 930 w.
  • the process proceeds to the ACC3 sub-routine as further described below. If the SUMREGL is not set to one of these values, the process proceeds to the SET6 subroutine 930 . Subsequently, the detector 500 sets the SUMREGL equal to SUM6 at block 930 a . The process then proceeds to the ACC3 sub-routine as further described below.
  • FIG. 28 illustrates the CHKSP sub-routine 940 and CHKRDH subroutine 950 .
  • the CHKSP sub-routine 940 is utilized to check if the present sample is at a flat level or if it has changed direction from the previous sample.
  • the detector unit 500 determines whether a DIRECTION flag is set. If the DIRECTION flag is not set, the process proceeds to the CHKRDH sub-routine 950 . If the DIRECTION flag is set at block 940 a , the detector 500 determines whether a ALARM counter is greater than a FLATLVL value at block 940 b.
  • the process proceeds to the CHKRDH sub-routine 950 . If the ALARM counter is greater than the FLATLVL value at block 940 b , the detector 500 adds the FLATLVL value to a SUMREG register at block 940 g , and the process proceeds to an ACC3 sub-routine as further described below.
  • the CHKRDH sub-routine 950 is utilized to determine the status of the sensor high flag.
  • the detector determines whether a SENSOR HIGH flag is set at block 950 a . If the SENSOR HIGH flag is not set, the process proceeds to the SHOW sub-routine as further described below. If the SENSOR HIGH flag is set at block 950 a , the process proceeds to a ADJ1 sub-routine as further described below.
  • FIG. 29 illustrates a flow diagram of the SHOW sub-routine 960 and a NOSHOW sub-routine 965 .
  • the SHOW sub-routine 960 is utilized to present the data stream through RS-237 communication to peripherals and the power LED.
  • the detector 500 determines whether an EOL line is at a low level. If the EOL line is at a low level, the process proceeds to a NOSHOW sub-routine 965 as described below. If the EOL line is not at a low level at block 960 a , the detector 500 switches a SERIAL line to an output at block 960 b.
  • the detector 500 clears a SYNC bit, waits for a predetermined amount of time, and sets the SYNC bit. The detector 500 then sets an REGC register equal to the last register plus 1 at block 960 d , decrements the REGC register at block 960 e , and then determines whether the REGC register is equal to zero at block 960 f.
  • the detector obtains the data pointed to by the REGC register and then the process proceeds to an XMITR sub-routine as further described below. If the REGC is equal to zero at block 960 f , the process proceeds to the NOSHOW sub-routine 965 .
  • the NOSHOW sub-routine 965 is utilized to determine if there is a low battery, error or power up flag set and sound the correct horn pattern.
  • the detector 500 determines whether an ALARM flag is set. If the ALARM flag is set, the process proceeds to block 965 b as further described below. If the ALARM flag is not set at block 965 a , the detector 500 determines whether an ERROR flag is set at block 965 c.
  • the detector 500 issues a double beep at block 965 d , and the process proceeds to block 965 b as further described below. If the ERROR flag is not set at block 965 c , the detector unit determines whether a LOW BATTERY flag is set at block 965 e.
  • the detector 500 issues a single beep at block 965 f . If the LOW BATTERY flag is not set at block 965 e , the detector determines whether a START flag is set at block 965 g.
  • the detector 500 issues a welcome wake-up chirp at block 965 h . If the START flag is not set at block 965 g , the detector 500 clears the START flag at block 965 b and the detector 500 is put into the sleep mode.
  • FIG. 30 illustrates the XMITR sub-routine 970 to synchronize the data stream.
  • a REGC register is loaded with 8 .
  • the detector 500 then rotates the value of a REGA register into a CARRY bit at block 970 b and then determines whether the CARRY bit is set a block 970 c.
  • the process proceeds to block 970 d as further described below. If the CARRY bit is not set at block 970 c , the detector 500 sets a TRANSMIT bit a block 970 e and then determines whether the CARRY bit is cleared at block 970 d.
  • the process proceeds to block 970 f as further described below. If the CARRY bit is not cleared at block 970 d , the detector 500 clears the TRANSMIT bit a block 970 g , waits a predetermined amount of time at block 970 f , clears a SYNC bit at block 970 h , waits another predetermined amount of time at block 970 i , sets the SYNC bit at block 970 j , and decrements a REGC register at block 970 k . The process then proceeds to block 970 b unless the REGC register is equal to zero. If the REGC register is equal to zero at block 970 k , the detector 500 sets the TRANSMIT bit at block 9701 , and byte has been sent, continue.
  • FIG. 31 illustrates the TIME sub-routine 975 and the TIME1 subroutine 977 .
  • the TIME and TIME1 sub-routines are utilized to take a carbon monoxide sample.
  • the detector unit 500 turns on the IR LED, sets a TRIS register to remove capacitor discharge, removes test current source, and enables the photo diode power source.
  • the detector 500 clears the time counters, a RTCC bit, and an OVERFLOW flag. The detector 500 then increments the time counters at block 975 c , and then determines whether the time counter equals an overflow value at block 975 d.
  • the detector 500 sets an overflow flag and sets counters to FFFF at block 975 e . The process then proceeds to block 975 g as further described below. If the time counter is not equal to the overflow value at block 975 d , the detector 500 determines whether the RTCC should be incremented at block 975 f.
  • the process proceeds to block 975 c . If the RTCC is to be incremented at block 975 f , the detector 500 will turn off the IR LED, disable the photo diode power source, and restore the capacitor discharge at block 975 g . The process then will proceed to the beginning of the TIME sub-routine 975 or TIME1 sub-routine 977 .
  • FIG. 32 illustrates a DEL001 sub-routine 980 .
  • the DEL001 subroutine 980 is utilized as a fixed time delay for the microcontroller timing.
  • the detector 500 loads a REGB register with 71H, NOP at block 980 b , decrements the REGB register at block 980 c , and then determines whether the REGB register is equal to zero at block 980 d.
  • FIG. 33 illustrates a DEL255 sub-routine 982 and a DELPROG subroutine 984 for a fixed timing delay on the microcontroller.
  • the detector 500 loads a TEMP register with FFh.
  • the detector 500 then calls DEL001 at block 982 b , decrements the TEMP register at block 982 c , and then determines whether the TEMP register is equal to zero at block 982 d.
  • FIG. 34 illustrates a CLRREG sub-routine 986 .
  • the CLRREG subroutine 986 is utilized to reset the microcontroller at power-up, and ensure LED's and horn are off.
  • the detector 500 clears one or more SAMPLE registers at block 986 a , clears one or more flags at block 986 b , sets a START flag at block 986 c , and clears Port B at block 986 d .
  • the detector 500 then turns off the red LED 2 and yellow LED 1 at block 986 e .
  • the process then returns to the beginning of the CLRREG sub-routine 986 .
  • FIG. 35 shows a M16 sub-routine 988 to add the determined weight to the low byte of the sum register.
  • the detector 500 adds W to the SUMREGL register.
  • the detector 500 determines whether a CARRIER register is set at block 988 b.
  • the process returns to the beginning of the M16 sub-routine 988 . If the CARRIER register is set at block 988 b , the detector 500 increments the SUMREG register at block 988 c and then the process returns to the beginning of the M16 sub-routine 988 .

Abstract

A smoke sensor and a carbon monoxide sensor are integrated into a common detector housing. The smoke sensor is coupled to a smoke detector control integrated circuit which generates a binary output signal indicative of the presence of smoke. This signal is coupled to a programmed microprocessor in the detector housing. The carbon monoxide sensor is also coupled to the microprocessor. Outputs from the two sensors are processed substantially independently. In the presence of smoke, the smoke alarm is generated by the microprocessor. In the presence of sufficient levels of carbon monoxide, in the absence of smoke, a carbon monoxide alarm will be generated.

Description

    RELATED APPLICATION
  • This is a continuation application of U.S. patent application Ser. No. 09/058,467, filed Apr. 9, 1998, entitled “CARBON MONOXIDE AND SMOKE DETECTION APPARATUS”, which claims priority from provisional U.S. patent application Ser. No. 60/055,009, entitled “SMOKE AND GAS DETECTORS,” filed Aug. 7, 1997, the subject matter and entire writings of which are incorporated herein by reference.[0001]
  • FIELD OF THE INVENTION
  • The present invention relates generally to detecting a condition in the environment. Particularly, the invention pertains to apparatus and methods to detect the presence of carbon monoxide and smoke in the atmosphere. [0002]
  • BACKGROUND
  • The threat of carbon monoxide poisoning has increased dramatically in the past decade. Carbon monoxide is a colorless, odorless, tasteless gas, making it virtually impossible to detect its presence. Carbon monoxide can be produced by various fuel burning appliances, such as, fuel fired furnaces, gas hot water heaters, gas stoves, gas dryers, space heaters, charcoal grills, fireplaces, vehicles, lawn mowers, or snow blowers. Once present, this gas circulates freely throughout a building, such as a home. If this gas is not ventilated properly, carbon monoxide poisoning may result. [0003]
  • Carbon monoxide inhibits the blood's ability to carry oxygen to body tissue, including vital organs such as the heart and brain. When carbon monoxide is inhaled, it combines with oxygen-carrying hemoglobin of the blood to form carboxyhemoglobin. Once combined with the hemoglobin, the hemoglobin is no longer available for transporting oxygen. The amount of carboxyhemoglobin that builds up is a factor of the concentration of the gas being inhaled and the duration of the exposure. [0004]
  • Carbon monoxide can act in the body in high concentrations, or slowly over a long period of time. Because it takes several hours to remove carbon monoxide from the body of a person, concentrations of carbon monoxide can gradually build up in the blood causing headaches, fatigue, dizziness, nausea, burning eyes, or unconsciousness. [0005]
  • Devices for sensing carbon monoxide and triggering an alarm in the presence of excess concentrations of carbon monoxide are presently available. These CO detectors typically employ a solid state sensor which purges itself and resamples for carbon monoxide on a periodic basis. However, conventional carbon monoxide detectors usually do not account for low levels of the carbon monoxide gas over long periods of time. Known detectors of this type are intended to be plunged into AC receptacles and are not battery powered. [0006]
  • Other types of known CO detectors utilize biomimetic sensors. Such devices are battery powered and detect changes in opacity of the biomimetic material. [0007]
  • In addition to being generated by operation of various products, carbon monoxide is produced along with smoke by fire. Fire detectors operate on different principles than do carbon monoxide detectors. Known fire detectors respond to heat, flame or smoke. [0008]
  • The range of presently available products includes separate carbon monoxide and fire detectors. It would be useful if the sensing characteristics of these separate units could be incorporated into a single, easy to use, easily installed, multi-mode product. [0009]
  • SUMMARY OF THE INVENTION
  • In view of the above, the present invention provides methods and apparatus for monitoring the presence and changes in the concentration of carbon monoxide. A detector that embodies the invention may also detect the presence of smoke. [0010]
  • In one aspect, a combined smoke and CO detector is battery operated. The detector carries a carbon monoxide sensor that is sealed until it is to be used by a consumer. [0011]
  • The CO sensor is carried within a housing and is not user replaceable. Removable tape seals the CO sensor until the detector is put into service. The sealing tape is applied when the carbon monoxide sensor is assembled. When a user places the detector into service the tape is removed thereby exposing the CO sensor to the ambient air. [0012]
  • An ionization-type smoke sensor is also carried within the housing. Both sensors are coupled to a programmed processor. The detector is energized by a single replaceable battery. [0013]
  • The process, in response to signals from the sensors, can produce an audible alarm indicative of the presence of carbon monoxide. A different audible alarm, for example in accordance with NFPA standard No. 72, can be produced to indicate the presence of smoke. In one aspect, if both carbon monoxide and smoke are present, the processor can go immediately unto a fire alarm indicating state. [0014]
  • In yet another aspect, a test circuit can be provided. For example, activating the test button can test each sensor sequentially. In this instance, appropriate audible alarms can be alternately produced. [0015]
  • In one aspect, a smoke determination can be made independently of a CO determination. The smoke determination can predominate and force the generation of visible and audible alarms. [0016]
  • Visual indicators of an alarm condition provide visual feedback to users. In one aspect, a symbol indicates if smoke is present and can be illuminated in the presence of detected levels thereof. Similarly, in the presence of pre-selected levels of carbon monoxide, a visual symbol indicative thereof can be illuminated. The visual indicators can be sequentially illuminated during a test sequence. [0017]
  • In yet another aspect, the detector and both of the sensors can be energized by a single battery. For example, a removable battery door can be provided. If the door is mounted in a user accessible side of the detector it will be possible to replace the battery with removing the detector from its mounted location. [0018]
  • The detector periodically measures the output of a CO sensor. The detector subtracts each sampled CO sensor output from the previous sampled sensor output. The difference of between the successive sampled sensor outputs are summed. The detector unit determines the rate of change of the sampled sensor outputs to determine the level of CO in the atmosphere. The detector can actuate an alarm when a predetermined CO condition is detected. [0019]
  • The methods and applications of the present invention provide a highly efficient and low cost detector that is capable of detecting the presence of carbon monoxide at an early stage to allow persons to evacuate the area. The detector can also detect low concentrations of carbon monoxide over long periods of time. The detector unit may also detect the presence of smoke. [0020]
  • The invention, together with further attendant advantages, will best be understood by reference to the following detailed description of the presently preferred embodiments of the invention, taken in conjunction with the accompanying drawings. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed.[0021]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a block diagram of a combined carbon monoxide and smoke detector; [0022]
  • FIG. 1[0023] a is a plan view of the detector;
  • FIG. 2 is a block diagram illustrating arrangement of FIGS. [0024] 2-1 . . . 2-4 which taken together are a schematic diagram of the detector of FIG. 1;
  • FIG. 2[0025] a-1 and 2 a-2 taken together are a flow diagram of a main routine of the detector of FIG. 1;
  • FIG. 3 is a flow diagram of a SUB-ROUTINE OF THE MAIN ROUTINE of FIGS. [0026] 2-a-1, -2;
  • FIG. 4 is a flow diagram of a POWER-UP sub-routine of the main routine of FIG. 2[0027] a-1, -2;
  • FIG. 5 is a flow diagram of a WAKE sub-routine of the main routine of FIG. 2[0028] a-1, -2;
  • FIG. 6 is a flow diagram of a RES1 sub-routine of the main routine of FIG. 2[0029] a-1, -2;
  • FIG. 7 is a flow diagram of a RESET sub-routine and a RESET1 sub-routine of the main routine of FIG. 2[0030] a-1, -2;
  • FIG. 8 is a flow diagram of a LOOP sub-routine of the main routine of FIG. 2[0031] a-1,-2;
  • FIG. 9 is a flow diagram of a NEG1 sub-routine of the main routine of FIG. 2[0032] a-1, -2;
  • FIG. 10 is a flow diagram of a TESTR sub-routine of the main routine of FIG. 2[0033] a-1, -2;
  • FIG. 11 is a flow diagram of a SMOKE CHECK sub-routine of the main routine of FIG. 2[0034] a-1, -2;
  • FIG. 12 is a flow diagram of a TEST sub-routine of the main routine of FIG. 2[0035] a-1, -2;
  • FIG. 13 is a block diagram of an alternate detector, carbon monoxide; [0036]
  • FIG. 14 is a schematic diagram of the detector of FIG. 13; [0037]
  • FIG. 15 is a flow diagram illustrating the general operation of the detector of FIG. 13; [0038]
  • FIG. 16 is a flow diagram of a main routine of the detector of FIG. 13; [0039]
  • FIG. 17 is a flow diagram of a WAKE sub-routine of the main routine of FIG. 16; [0040]
  • FIG. 18 is a flow diagram of a TESTER sub-routine and a BYE1 sub-routine of the main routine of FIG. 16; [0041]
  • FIG. 19 is a flow diagram of an ACR1 sub-routine of the main routine of FIG. 16; [0042]
  • FIG. 20 is a flow diagram of a RESET sub-routine and a RESET1 sub-routine of the main routine of FIG. 16; [0043]
  • FIG. 21 is a flow diagram of a LOOP sub-routine of the main routine of FIG. 16; [0044]
  • FIG. 22 is a flow diagram of a NEG1 sub-routine of the main routine of FIG. 16; [0045]
  • FIG. 23 is a flow diagram of a TEST sub-routine of the main routine of FIG. 16; [0046]
  • FIG. 24 is a flow diagram of a BAT1 sub-routine of the main routine of FIG. 16; [0047]
  • FIG. 25 is a flow diagram of an INSPECT sub-routine of the main routine of FIG. 16; [0048]
  • FIG. 26 is a flow diagram of a POS1 sub-routine, a ACC3 subroutine, and ADJ1 sub-routine of the main routine of FIG. 16; [0049]
  • FIG. 27 is a flow diagram of an ACCUM sub-routine and a SET6 sub-routine of the main routine of FIG. 16; [0050]
  • FIG. 28 is a flow diagram of a CHKSP sub-routine of the main routine of FIG. 16; [0051]
  • FIG. 29 is a flow diagram of a SHOW sub-routine and a NOSHOW sub-routine of the main routine of FIG. 16; [0052]
  • FIG. 30 is a flow diagram of a XMITR sub-routine of the main routine of FIG. 16; [0053]
  • FIG. 31 is a flow diagram of a TIME sub-routine and [0054] TIME 1 subroutine of the main routine of FIG. 16;
  • FIG. 32 is a flow diagram of a DEL001 sub-routine, of the main routine of FIG. 16; [0055]
  • FIG. 33 is a flow diagram of a DEL225 sub-routine, and a DELPROG sub-routine of the main routine of FIG. 16; of the main routine of FIG. 16; [0056]
  • FIG. 34 is a flow diagram of a CLRREG sub-routine of the main routine of FIG. 16; and [0057]
  • FIG. 35 is a flow diagram of a M16 sub-routine of the main routine of FIG. 16.[0058]
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • Before explaining the present embodiments in detail, it should be noted that the invention is not limited in its application or use to the details of construction and arrangement of parts illustrated in the accompanying drawings and description, because the illustrative embodiments may be implemented or incorporated in other embodiments, variations and modifications, and may be practiced or carried out in various ways. Furthermore, unless otherwise indicated, the terms and expressions employed herein have been chosen for the purpose of describing the illustrative embodiments for the convenience of the reader and are not for the purpose of limitation. [0059]
  • Referring now to the drawings and particularly to FIG. 1, a block diagram of a preferred embodiment of a [0060] detector 50 is illustrated. The detector 50 is a battery powered, single station, self-contained smoke and carbon monoxide alarm detector. The detector 50 detects the presence and concentration of carbon monoxide in the atmosphere and provides a warning to indicate a hazardous condition of carbon monoxide. The detector 50 also detects the presence of smoke in the air and provides a warning to indicate the presence of smoke.
  • As shown in FIG. 1, the [0061] detector unit 50 includes a housing 50 a, control circuitry 100, an ionization sensing chamber, electronic measurement and control circuitry 110, audible and visual indicators, power circuitry, test/silence circuitry, temperature compensation circuitry, reset circuitry, low voltage detection circuitry, test switch/hush circuitry, output circuitry, interconnect circuitry and oscillator circuitry. Although it is shown as being constructed with various types of independent and separate units or devices, the detector 50 may be implemented utilizing one or more integrated or logic circuits, or a microprocessor which may be programmed to execute the operations or functions equivalent to those performed by the circuitry units shown. It is also contemplated that the detector can be carried out with any suitable hardware components and circuitry designs, computer programming, or a combination thereof.
  • FIG. 1 a shows a front plan view of the housing of the [0062] detector unit 50. The housing includes a CO alarm indicator 50 a, a smoke alarm indicator 50 b, a low battery indicator 50 c, and a service status visual indicator 50 d. The housing also preferably includes a single test/silence button as further illustrated below.
  • With respect to FIGS. 1 and 2, the [0063] control circuitry 100 of the detector 50 includes a processing unit 102. As shown in FIG. 2, the processing unit 102 includes a Microchip PIC16C57, available from microchip. The processing unit 102 preferably has a 2 MHz internal clock, Read Only Memory (ROM), Random Access Memory (RAM), and a plurality of input/output (I/O) pins. The processing unit 102 controls the overall operation of the detector unit 50 and processes information to determine a hazardous condition of carbon monoxide or smoke in the atmosphere. It will be understood that a variety of processing units or processors could be used without departing from the spirit and scope of the present invention.
  • The [0064] processing unit 102 preferably spends most of its time in a “sleep” mode in order to save power. While the processing unit 102 is in the “sleep” mode, the detector 50 typically consumes about 5 μA of current. In the sleep mode, the internal clock of the processing unit 102 is disabled and the program counter is stopped.
  • The [0065] processing unit 102 can be “awakened” either by an external low level signal on pin 28 of the processing unit 102 or an internal reset initiated by an on-board watchdog timer. The watch dog timer is preferably used as an operational cycle clock to awaken the processing unit 102 about every 3 seconds to increment a time counter which requires about 2 μA.
  • The [0066] processing unit 102 takes sensor samples about every 30 seconds, battery and built-in tests occur about every 10 minutes. In order to limit the current drain of the detector unit 50 below 15 μA, the current used for sensor sampling cycle (which occurs once about every 30 seconds for approximately 25 ms) is usually kept to an average of about 5-6 μA. Unless the detector unit 50 is taking a sensor sample, checking the battery, performing a built-in test, or preforming a user-initiated push-button test, the processing unit 102 will usually not be turned on for more than 25 ms before the processing unit 102 is put back to sleep.
  • The [0067] electronic measurement circuitry 110 preferably includes carbon monoxide detection circuitry 112, smoke detection circuitry 114, and smoke calibration circuitry 116. The carbon monoxide detection circuitry 112 monitors the presence or absence of carbon monoxide. When initially assembled a gas input port of the sensor 112 is covered by a removable protective tape 112 a to prevent contamination. The tape 112 a is removed by the user when the detector 50 is first activated.
  • As shown in FIG. 2, the carbon [0068] monoxide detection circuitry 112 includes resistors R16, R17, R33, and R34, a capacitor C5, a transistor Q2, and a biomimetic sensor S1. Preferably, the resistors R16, R17, R33 and R34, are about 100 Ω, 330KΩ, 3.3KΩ and 1KΩ, respectively, and the capacitor C5 is preferably about 0.022 μF.
  • The sensor S[0069] 1 of the carbon monoxide detection circuitry 112 is utilized to detect the presence or absence of carbon monoxide in the surrounding atmosphere. The sensor S1 includes an infrared IR LED, a sensing device and a photo diode. The sensing device S1 is preferably a passive component that requires no additional power for its operation. The sensor S1 is preferably a S30 model, manufactured by Quantum Group.
  • Temperature compensation circuitry or resistor/[0070] thermistor network 150 drives the IR LED of the sensor S1 and acts as a constant current source, eliminating variations in the light output of the sensor S1 which might otherwise be imparted by changes in the battery voltage. The temperature compensation or circuitry 150 preferably includes resistors R18 and R20 and thermistor TH1. The resistors R18 and R20 are each preferably about 33 Ω. When the ambient temperature varies, changes in the impedance of the thermistor TH1 adjusts the current supplied to the IR LED of the sensor S1, stabilizing the light output.
  • The light emitted (940 nm) by the IR LED is passed through the sensor and detected by the photo diode to provide a measure of the absorbency of the sensor. Because the sensor darkens when exposed to carbon monoxide, increased absorbency of the light energy of the LED can be utilized to detect the presence of carbon monoxide in localized atmospheric environments, such as, for example, inside homes, offices, etc. As carbon monoxide molecules are absorbed by the sensor, the sensor becomes more opaque. In the absence of the carbon monoxide in the atmosphere, the sensor releases previously absorbed molecules (if any present) becoming more transparent in the process. [0071]
  • The photo diode of the sensor S[0072] 1, the capacitor C5, the resistor R16, and the processing unit 102 comprise a pseudo analog-to-digital (A/D) converter capable of measuring the absorbency of the sensor S1 with precision. The processing unit 102 receives and processes data on pin 9 supplied by the A/D conversion to determine the level of carbon monoxide present in the surrounding atmosphere. The pseudo A/D process measures the time needed to charge the capacitor C5 when the IR LED of the sensor S1 is enabled.
  • Initially, before the IR LED is enabled, any residual charge on the capacitor C[0073] 5 is discharged to ground through the resistor R16 to pin 8 of the processing unit 102. Pin 8 of the processing unit 102 is then configured as a high impedance state input. The IR LED of the sensor device S1 is enabled through pin 13 of the processing unit 102 and a software timer in the processing unit 102 is started.
  • The [0074] processing unit 102 supplies a constant bias voltage level to the photo diode of the sensor S1. The voltage level is nearly the full value of the power supply voltage Vcc since, even at the highest level of photo diode current, the voltage drop internal to the processing unit 102 (from supply pin 14 of the processing unit 102 to the output on pin 2) is minimal.
  • Because the charging current induced in the photo diode PD is nearly constant (over relatively short sampling intervals), the voltage on the capacitor C[0075] 5 rises linearly over time. When the ramping voltage of the capacitor reaches about 0.85 Vcc, the software timer is terminated and a sampling time (ST) count is thereby obtained.
  • The absorbency of the sensor is sampled once about every 30 seconds. Each time the sensor absorbency is sampled, the sampling time value is compared with predetermined or programmable limits. [0076]
  • If the sensor is too light or too dark or sample time is too short or too long, a FAULT routine, as further described below, is initiated by the [0077] detector unit 50. Otherwise, the current value of the sample is compared with the value from the previous sample measurement, and the difference is stored in one of a plurality of storage registers. Subsequently, the storage registers are summed, and the value is placed in a sum register and also added to an alarm register.
  • The discrete sampling time values of the sensor S[0078] 1 are measured over time by an the processor 102 as further described below. Since the light output for the LED of the sensor S1 is virtually constant over time, temperature, and voltage, the only mechanism by which the sampling time can change is relative absorbency of the sensor S1. When the concentration of carbon monoxide in the atmosphere surrounding the sensor increases, the sensor darkens and iterative sample times measured by the A/D converter lengthen or increase.
  • The sample time rate-of-change (dST/dt), is monitored by the [0079] processing unit 102, and its magnitude is used to trigger an “alarm” condition (i.e., a high level alarm) when the carbon monoxide levels present a hazardous condition. The sensor S1 also responds to various carbon monoxide concentrations in the manner consistent with the ULTO34 standard.
  • A status flag (i.e., ALARM FLAG) is set when the value in the alarm register reaches full scale (i.e., 255 decibel). At this time a high level alarm is issued. When the carbon monoxide drops below about 50 ppm, the sensor begins to lighten and the values in the sum register become negative, causing a reduction in the value stored in the alarm register. If the value in the alarm register falls to about 48 or below, the sample, flag, and alarm registers in the high level alarm will be cleared, and the [0080] detector unit 50 will resume normal operation.
  • The A/D converter operation of the carbon [0081] monoxide detection circuitry 112 is verified by the processing unit 102 on power-up and about every 10 minutes thereafter (i.e., about every 20 sensor sampling cycles). The integrating capacitor C5 of the carbon monoxide detection circuitry 112 is discharged, and then allowed to charge by current supplied by pin 6 of the processing unit 102 through the A/D test resistor R17.
  • The software timer of the [0082] processing unit 102 executes a sample time measurements and the resultant value has to lie within program limits. This test checks for excessive leakage, shorting, or improper operation of the A/D measurement components. Any failure sets a fault flag and a fault condition is annunciated to notify the user.
  • The [0083] smoke detection circuitry 114 of the electronic measurement circuitry 110 detects the presence of smoke in the atmosphere. The smoke detection circuitry provides a signal to the processing unit 50 that generates a warning signal.
  • As shown in FIG. 2, the [0084] smoke detection circuitry 114 preferably includes a smoke detector D1, a smoke comparator unit U2, capacitors C3, C10, and C14, and resistors R2, R3, R4, R5, R28, and R30. The smoke comparator unit U2 is preferably a comparator such as Model No. SC41411PK available from Motorola (comparable to MC14467). The capacitors C3, C10, and C14 are each preferably about 0.1 μF, and the resistors R2, R3, R4, R5, R28, and R30 are preferably about 1.5MΩ, 8.2KΩ, 1.5KΩ, 470KΩ, 1MΩ, and 33 Ω, respectively.
  • The smoke detector D[0085] 1 preferably includes a single source dual ionization chamber C1 having an active chamber C1, a sensing electrode E1, and an ion chamber I1. A 1.0 μCi maximum source of American 241 is employed in the ionization chamber.
  • The active chamber C[0086] 1 is connected to ground by the parallel combination of the resistor R28 and the capacitor C10. The capacitor C10 provides transient protection for the active chamber C1, and the resistor R28 allows the active chamber C1 of the smoke detector D1 to be raised above ground by pin 18 of the processing unit Id SW3 are closed, 3.3 volts is applied by pin 18 of the processing unit 102 to the resistor R28 to simulate about 40-50 pA MIC.
  • The sensing electrode E[0087] 1 of the smoke detector D1 is connected to the non-inverting input (pin 15) of the smoke comparator unit U2. The connection of the sensing electrode, a very high impedance point, to the non-inventing input is preferably a flying connection to minimize leakage effects due to the presence of a printed circuit board.
  • Pins [0088] 14 and 16 of the smoke comparator unit U2 are connected together internally to a voltage follower of a non-inventing input of the smoke comparator unit U2 to provide an active guard output. This active guard reduces the effect of leakage between non-inventing input of the smoke comparator unit U2 and adjacent pins.
  • An alarm feedback pin (pin [0089] 1) of the smoke comparator unit U2 is monitored by the processing unit 102 to determine if a smoke condition exists. The feedback pin is preferably pulled to about 3.3 volts by a pull-up resistor R5 in a clean air condition. When smoke is present, the voltage across the dual chamber decreases and the voltage at the sensing electrode E1 increases.
  • The alarm feedback pin of the smoke comparator unit U[0090] 2 will change to a low level state which is then read by the processing unit 102. The processing unit 102 will then go into a smoke alarm mode and turn on a smoke horn. The horn pattern consists of an active phase lasting about 0.5 seconds+/−10% followed by an off-phase lasting about 0.5 seconds +/−10%, for three successive active periods, which are then followed by an off-phase lasting about 1.5 seconds +/−10%. This pattern is comparable to that specified by NFPA 72. Other patterns can be stored in the processor to use as needed.
  • The [0091] circuitry 114 establishes, using an alarm threshold established thereby, if enough smoke is present to warrant generating a smoke alarm. If so, the two state smoke alarm output signal goes from a high to a low which is indicative of a smoke alarm state. The processor 102 will in turn activate the visible and audible smoke alarms. This is completely independent of processing for the presence of CO.
  • The [0092] smoke calibration circuit 116 of the electronic measurement circuitry 110 preferably includes resistors R14, R32, and R36. The resistors R14, R32, and R36 are preferably 1MΩ, 1MΩ, and 1.5MΩ. The resistors R14, R32, and R36 preferably form a resistive divider to provide a reference voltage for the inverting input (pin 13) of the smoke comparator unit U2. The voltage division at the inverting input is designed so that under clean air conditions the two inputs are different to provide a nominal sensitivity of 67 pA MIC and that no alarm results.
  • On power-up of the [0093] detector 50, and about every 24 hours thereafter, proper smoke detector operation is verified by the processing unit 102. Initially, the resistor R28 of the smoke calibration circuitry 116 is raised above circuit ground by pin 18 of the processing unit 102. As a result, the voltage across the dual chamber of the detector D1 is lowered and the voltage at the sensing electrode E1 is raised.
  • The [0094] processing unit 102 applies about 3.3 volts to the resistor R28 to simulate about 40-50 pA MIC. The processing unit 102 then monitors the output of the smoke comparator U2 about every 10 seconds or less. Any failure of the smoke comparator U2 sets the fault flag and a fault condition is annunciated to notify the user.
  • A manual test mode is also provided for by the [0095] detector unit 50. This test mode is activated by the user, who simply pushes a test/silence button on the face of the detector unit until a horn chirp is issued and a yellow service LED flashes. Once the test mode is entered, the processing unit 102 applies 3.3 volts to the resistor R28 of the smoke detection circuitry 114 to simulate about a 40-50 pA MIC. The processing unit 102 then monitors the output of the smoke comparator unit U2 Every 10 seconds or less until it is pulled low, which signifies a smoke condition. Any failure sets a fault flag and a fault condition is annunciated to notify the user, and the carbon monoxide test is terminated.
  • If the output of the smoke comparator unit U[0096] 2 is at a low level state before timing out, the processing unit 102 will emit one cycle of the smoke alarm pattern. If the detector unit 50 passes, the processing unit 102 pauses for about one second to separate smoke and carbon monoxide tests. Then each green or yellow flash of a power LED depending on the battery status is preceded by a sensor sample cycle. Each of these samples is taken with pin 6 of the processing unit 102 configured as an input pulled to ground, stealing current through the resistor R33 of the carbon monoxide detection circuitry 112 which is normally supplied by pin 13 of the processing unit 102 to the base of transistor Q2. This activity “starves” the respective LED, reducing the light admitted through the sensor, and effectively simulates a carbon monoxide exposure, filling the alarm register with about 3 to 5 sample cycles. A successful manual test results in a self-induced high level alarm state which is enabled for two cycles of the alarm pattern (i.e., on for 1.5 seconds and off for 1.5 seconds) indicating that the detector unit 50 is operating properly.
  • The audio and [0097] visual indicators 120 of the detector 50 are used in conjunction with various self-tests and user-initiated tests to indicate when the detector unit 50 is operating normally or has a problem which requires service. The audio and visual indicators 120 also alert persons nearby when smoke and carbon monoxide concentrations are unhealthy or dangerous. The audio and visual indicators 120 include carbon monoxide alarm indicator circuitry 122, smoke alarm indicator circuitry 124, horn driving circuitry 126, service indicator circuitry 128, and power/low battery indicator circuitry 129.
  • The carbon monoxide [0098] alarm indicator circuitry 122 of the audio and visual indicators 120 preferably includes an indicator light LED2 and resistor R12. The light emitting diode LED2 is preferably a red light emitting diode (LED), and the resistor R12 is about 180 Ω. The carbon monoxide alarm indicator circuitry 112 is electrically coupled to pin 23 of the processing unit 102. The processing unit 102 activates the indicator light LED2 by pulling pin 23 to a low level state to provide a current path (typically, about 8 mA) from the power source through the indicator light LED2 and the current limiting resistor R12 to ground.
  • The smoke [0099] alarm indicator circuitry 124 of the audio and visual indicators 120 preferably includes an indicator light LED3 and a resistor R13. The indicator light LED3 is preferably a red light emitting diode (LED), and the resistor R13 is about 180 Ω. The smoke alarm indicator circuitry 124 is electrically coupled to pin 22 of the processing unit 102. The processing unit 102 activates the indicator light LED3 by pulling pin 22 to a low level state to provide a current path (typically, about 8 mA) from the power source through the indicator light LED3 and current limiting resistor R13 to ground.
  • The [0100] horn driving circuitry 126 of the audio and visual indicators 120 preferably includes a power oscillator U4, a piezoelectric alarm Hi, resistors R19, R25, R37 and R38, and transistor Q4. The power oscillator U4 is preferably a MC14049VBCP available from Motorola is a known type used with smoke detectors. The resistors R19, R25, R37, and R38 are preferably about 1.5MΩ, 1.5MΩ, 1KΩ, and 1KΩ, respectively, the capacitor C7 is preferably about 0.0022 μF.
  • The piezoelectric alarm H[0101] 1 is driven by the power oscillator U4. Pin 2 of the piezoelectric alarm allows the power oscillator to resonate at a particular frequency, preferably within a range of about 3.5 kHz. In order to turn the piezoelectric alarm H1 on, the processing unit 102 sets output pin 11 to a high level state, putting the transistor Q4 into saturation, effectively connecting pin 8 of the power oscillator U4 directly to ground.
  • In operation, the [0102] detector unit 50 has a special alarm silencing function that can be initiated by the user to silence the alarm. This function is activated by pressing a test/silence button on the detector unit 50. When the detector is in a smoke alarm state, pressing the button will put the detector unit into a silence mode. This mode will silence the horn for about 8 minutes. During this time, the light indicator LED3 of the smoke alarm indicator circuitry 124 will remain on. Pressing the test/reset button again while in silence mode, will reset a silence interval timer.
  • When in silence mode, the [0103] processing unit 102 desensitizes the ion chamber I1 by turning on the transistor Q5 of the hush/test circuitry 130, pulling the ion chamber to ground. Increasing levels of smoke will kick the processing unit 102 out of hush mode and continue with a smoke alarm condition.
  • When the detector is in a high level carbon monoxide alarm state, pressing the test/reset button will silence the horn for about 4 minutes. However, the light indicator LED[0104] 2 of the carbon monoxide indicator circuitry 122 will remain on. The high level carbon monoxide alarm can be silenced only one time.
  • The [0105] power circuitry 130 of the detector unit 50 provides power to the various components of the detector unit 50. The power circuitry 130 includes a power supply and filter circuitry 132, reverse bias protection circuitry 134, and voltage regulator and filter circuitry 136. The power supply and filter circuitry 132 preferably includes a 9 volt battery BI and a capacitor C2. Preferably, the battery B1 supplies power (i.e., about 8.4 volts) to the smoke comparator unit U2 and other associated circuitry. The battery is preferably a 9 volt alkaline type and the capacitor C2 is about 0.1 μF.
  • The voltage regulator and [0106] filter circuitry 136 of the power circuitry 130 preferably includes a voltage regulator U1, and capacitors C8 and C9. The voltage regulator U1 supplies a regulated 3.3 VDC to the processing unit 102 and its associated circuitry. The 3.3 volt level minimizes overall current drain in the detector unit, which is typically about 5-7 μA. The voltage regulator U1 is preferably a Seiko S81233SG and the capacitors C8 and C9 are about 2.2 μF and 0.1 μF, respectively.
  • The [0107] reset circuitry 160 of the detector 50 insures proper reset of the processing unit 102 when the battery B1 is removed by discharging any capacitance on the output of voltage regulator U1. The reset circuit 160 of the detector unit 50 preferably includes resistors R26, R27, R31, and R40, a capacitor C13 and a transistor Q3. The resistors R26, R27, R31, and R40 are preferably about 3.9KΩ, 10MΩ, 33KΩ, and 10MΩ, respectively, the capacitor C13 is about 0.1 μF.
  • The reverse [0108] bias protection circuitry 134 of the power circuitry 130 provides protection for the circuitry of the detector unit 50 when the battery is installed improperly. The reverse bias protection circuitry 134 preferably includes a diode D5 and a resistor R35. The diode D5 of the reverse bias protection circuitry 134 prevents any damaging current flow through the voltage regulator U1 and the capacities C2, C8, and C9 if the battery is installed backwards. The resistor R35 is about 1KΩ.
  • The resistor R[0109] 35 of the reverse bias protection circuitry 134 limits current through a voltage detector U3 to a non-damaging level when the battery B1 is installed backwards, but is not large enough to substantially effect the level of the battery voltage at the input (pin 2) of the voltage detector U3. The quiescent current drain through the voltage detector U3 is typically about 1 μA, creating a voltage drop across the resistor R32 of only about 0.001 Vdc.
  • About once every 10 minutes or every 20 operation cycles, the battery B[0110] 1 is tested to insure it retains sufficient capacity to sustain operation after a low battery condition is detected as specified by UL2034 standards. During this test, the processing unit 102 enables the IR LED of the sensor S1 for 10 mS (which consumes about 20 mA) to load the battery for an accurate measurement.
  • Before turning the IR LED off, the [0111] processing unit 102 samples the state of pin 1 of the voltage detector U3. When the battery level under load exceeds 7.5 Vdc (the trip point of the voltage detector U3), the resistor R23 pulls up the open collector output (pin 1) of the voltage detector U3 to 3.3 volts. As a result, a high logic level is detected by pin 16 of the processing unit 102, which indicates the presence of a sufficient battery level. On the other hand, if the battery level under load is less than 7.5 Vdc, the open collector output of the voltage detector U3 will be pulled to ground, causing pin 16 of the processing unit 102 to detect a low logic level. In this case, the processing unit 102 sets a LOW BATTERY flag and indicates this condition to the user.
  • FIGS. 2[0112] a-1, 2 a-2 taken together illustrate as, a flow diagram a general overview of the operations carried out by the detector 50. As shown in FIG. 2a-1, after the detector 50 is awakened at block 250 a or the detector 50 is powered up at block 250 b, the detector 50 initializes a watchdog timer and initializes one or more ports at block 250 c. At block 250 d, the detector 50 determines whether it was just powered up.
  • If the [0113] detector 50 was just powered up, it sets a power-up delay at block 250 e. At block 240 f, the detector 50 initializes one or more counters, clears one or more sample registers, clears one or more flag registers, and clears the alarm register. The detector 50 then obtains an initial sensor count at block 250 g and then goes into the sleep mode at block 250 h.
  • If the [0114] detector 50 was not just powered up at block 250 d, it will determine whether there is a smoke alarm condition a block 250 i (based on a binary, low, output signal for comparator U2). If there is a smoke alarm condition, the detector 50 will flash the LED3 of the smoke indicator circuitry 124 and sound the smoke horn pattern at 250 j. The process then proceeds to block 250 k as further described below.
  • If a smoke alarm condition is not detected at [0115] block 250 i, the detector 50 will determine whether a manual test has been initiated at block 250 k. If a manual test has been initiated, the detector 50 will perform the manual test and then go into the sleep mode at block 250 h.
  • If a manual test has not been initiated at [0116] block 250 k, the detector 50 determines whether to perform a 30 second CO sample at block 2501. If the detector 50 does not have to obtain a 30 second sample, it will go into the sleep mode at block 250 h.
  • If the [0117] detector 50 has to obtain a 30 second sample at block 250 l, that sensor count is attained at block 250 m and then the detector 50 determines whether to perform a 24 hour smoke test at block 250 n. If a 24 hour smoke test is to be performed, the detector 50 tests the smoke alarm indicator circuitry 124. The process then proceeds to block 250 q as further described below.
  • If a 24 hour smoke test is not to be performed at [0118] block 250 n, the detector determines whether to perform a 10 minute A-to-D test at block 250 p. If the detector 50 does not have to perform the 10 minute A-to-D test, the process proceeds to block 250 r as further described below.
  • If the A-to-D test is to be performed at [0119] block 250 p, the detector 50 tests the A-to-D circuitry at block 250 q. The detector 50 then checks the carbon monoxide rate of change at block 250 r and determines whether to activate the carbon monoxide alarm at block 250 s. This determination is independent of the output of the smoke detector circuit U2.
  • If the carbon monoxide alarm detector is to be activated, the [0120] detector 50 will determine whether to also activate a smoke alarm at block 250 t. If the smoke alarm is not to be activated, the detector 50 will flash the light indicator LED2 of the carbon monoxide alarm indicator circuitry 122 and sound the carbon monoxide horn pattern at block 250 u.
  • If the smoke alarm is to be activated at [0121] block 250 t, the detector 50 will turn off the light indicator LED2 and turn off the carbon monoxide horn pattern. The process will then proceed to block 250 x as further described below.
  • If the carbon monoxide alarm is not to be activated at [0122] 250 s, the detector 50 will turn off the light indicator LED3 of the carbon monoxide alarm indicator circuitry 122 and the carbon monoxide horn pattern at block 250 w. At block 250 x, the data will be examined and the detector 50 will determine whether there are any faults at block 250 y.
  • If there are no faults, the [0123] detector unit 50 will go into the sleep mode at block 250 h. If faults are detected at block 250 y, the detector 50 will determine whether the carbon monoxide or smoke alarm has been activated at block 250 z. If the carbon monoxide or smoke alarm is activated, the processing unit 102 will go into the sleep mode at block 250 h. If the carbon monoxide or smoke alarm is not activated, the detector unit 50 will initiate a trouble chirp at block 250 aa and then go into the sleep mode at block 250 h.
  • FIGS. 3 through 12 illustrate detailed flow diagrams of the operations carried out by the [0124] detector 50. FIG. 3 illustrates a main routine 300 of the process carried out by the detector 50 to implement various tests, alarm conditions, and smoke and carbon monoxide checks. Initially, the detector unit 50 sets a wake-up time at block 302. The detector unit 50 sets the wake-up time at about 3 seconds for normal mode, about 1.5 seconds for alarm mode, and about 0.75 seconds for test mode. The detector unit 50 then initializes ports A-C at block 304 and then determines whether a TIME OUT bit has been cleared at block 306. If the TIME OUT bit has been cleared, the process proceeds to the WAKE sub-routine as further described below.
  • If the TIME OUT bit has not been cleared at [0125] block 306, the detector 50 determines whether a POWER DOWN bit has been set at block 312. If the POWER DOWN bit has not been set, the process proceeds to a POWER UP routine as further described below. If the POWER DOWN bit is set at block 312, the detector unit 50 increments a SPECIAL TEST counter at block 314 and then determines whether the SPECIAL TEST counter is greater than 2 at block 316. If the SPECIAL TEST counter is greater than 2, the process proceeds to the WAKE sub-routine. If the SPECIAL TEST counter is not greater than 2 at block 324, the detector unit 50 initializes a TEST counter, sets a START flag at block 318, and then proceeds to a LOOP sub-routine as further described below.
  • FIG. 4 illustrates a [0126] POWERUP sub-routine 320. When the detector 50 is initially turned on, the POWERUP sub-routine initializes various counters, registers, and flags. At block 320 a the detector 50 initializes a WAKE UP counter, a SAMPLE counter, and a TEST counter. The detector 50 then clears the registers and flags and sets a START flag a block 320 b. The detector 50 then waits about 255 ms at block 320 c and sets the ALARM TOGGLE counter CTR equal to 4 at block 320 d. The detector 50 clears the ALARM register at block 320 e and then it goes into the sleep mode.
  • FIG. 5 illustrates a [0127] WAKE sub-routine 330 that is carried out when the detector 50 is awakened from the sleep mode. At block 330 a, the detector 50 determines whether the TEST mode flag is set. If a TEST mode flag is set, the process proceeds to a RESUMET sub-routine 330 b. During the RESUMET subroutine 3306, the detector 50 is kept STARVED (as described above) at block 330 c, the yellow light is kept on at block 330 d, and the WAKE UP counter is set equal to 1 at block 330 e. The detector unit 50 then determines whether the ALARM flag is set at block 330 f. If an ALARM flag is set, the process proceeds to a RESET sub-routine as further described below. If the ALARM flag is not set, the process proceeds to a LOOP sub-routine as further described below.
  • If the TEST mode flag is not set at [0128] block 330 a, the detector 50 determines whether the ALARM flag is set at block 330 c. If the ALARM flag is set, the detector 50 determines whether there is a smoke or carbon monoxide condition at block 330 d. If the ALARM flag is not set at block 330 c, the detector 50 determines whether the TEST switch is pressed at block 330 e. If the TEST switch is not pressed, the process proceeds to a BYE1 sub-routine as further described below.
  • If the TEST switch is pressed at [0129] block 330 e, the detector 50 saves the ALARM register at block 330 f, sets a TEST flag, sets a WAKEUP counter equal to 1, and turns on the yellow LED4 of the power/low battery indicator circuitry 129 at block 330 g. The detector 50 then determines whether the battery level is low at block 330 h. If the battery level is not low, the green LED4 of the power/low battery indicator circuitry 129 is turned on at block 3301.
  • If the battery level of the [0130] detector 50 is low at block 330 h, the detector turns on the yellow LED at block 330 j. The detector then simulates a smoke alarm and turns on the smoke LED3 of the smoke alarm indicator circuitry 124 at block 330 k and sound a smoke alarm pattern at block 3301. The detector unit then turns off the smoke LED and simulates the carbon monoxide alarm at block 330 m. The detector 50 now turns on the carbon monoxide alarm horn pattern and the LED2 of the carbon monoxide alarm indicator circuitry 122 at block 330 n. Thereafter, the detector 50 turns off the carbon monoxide alarm and the carbon monoxide alarm LED3 at block 330 o. The detector will then enter the sleep mode.
  • FIG. 6 illustrates, a [0131] RS1 sub-routine 340. The reset sub-routine 340 is utilized to flash the red and yellow LEDS as CO samples are taken during the test function and sound the alarm when the circuitry has passed the self test. At block 340 a, the detector 50 determines whether a QUIET flag is set. If the QUIET flag is set, the detector 50 turns off a BEEPER at block 340 b, reloads a TOGGLE register at block 340 c, and turns off the red LED2 and yellow LED3 at block 340 d.
  • If the QUIET flag is not set at [0132] block 340 a, the detector 50 decrements the TOGGLE register at block 340 e and then determines whether the TOGGLE register is equal to zero at block 340 f. If the TOGGLE register is equal to zero, the process proceeds to block 340 b as described above.
  • If the TOGGLE register is not equal to zero at [0133] block 340 f, the detector 50 turns on the BEEPER at block 340 g and turns on the red LED2 and yellow LED3 at block 340 d. Subsequently, the process proceeds to the BYE1 subroutine as further described below.
  • FIG. 7 illustrates a [0134] RESET sub-routine 350 and a RESET1 subroutine 355. The RESET sub-routine and RESET1 sub-routine are utilized to restore registers after a manual test.
  • When the [0135] detector 50 carries out the RESET sub-routine 350, it restores the ALARM value at block 350 a, reloads the WAKEUP counter at block 350 b, and calls CLRREG at block 350 c. The process then proceeds to a SHOW sub-routine as further described below.
  • When the [0136] detector 50 carries out the RESET1 sub-routine 355, it reloads the wake-up counter at block 350 b and calls CLRREG at block 250 c. The process then proceeds to the SHOW sub-routine.
  • Referring now to FIG. 8 illustrates a [0137] LOOP sub-routine 360. The LOOP sub-routine is utilized to determine if the CO alarm flag is set during a test, or if more samples must be taken.
  • At [0138] block 360 a, the detector unit 50 retrieves the TIME and then determines whether the carbon monoxide ALARM flag is set at block 360 b. If the carbon monoxide ALARM flag is set, the process proceeds to a LOOP2 subroutine as further described below.
  • If the carbon monoxide ALARM flag is not set at [0139] block 360 b, the detector determines whether the TEST flag is set at block 360 c. If the TEST flag is set, the process proceeds to the LOOP2 sub-routine.
  • If the TEST flag is not set at [0140] block 360 c, the detector decrements the TEST counter at block 360 d and then determines whether the TEST counter is equal to zero at block 360 e. If the TEST counter is not equal to zero, the process proceeds to the LOOP2 sub-routine. If the TEST counter is equal to zero, the process proceeds to the TEST sub-routine as further described below.
  • FIG. 9 illustrates a [0141] NEG1 sub-routine 370 to carry out a reduction in the counts value to clear an alarm condition if the CO level is decreasing. At block 370 a, the detector 50 clears the DIRECTION flag and the subtracts a REDCT value from an ALARM register at block 370 b. At block 370 c, the detector 50 determines whether the carbon monoxide ALARM is negative.
  • If the carbon monoxide ALARM is not negative, the process proceeds to block [0142] 370 d as further described below. If the carbon monoxide ALARM is negative at block 370 c, the detector clears the carbon monoxide ALARM at block 370 e and then determines whether an ALARM value is less than an ALROFF value at block 370 d. If the ALARM is less than ALROFF, then the detector 50 clears the carbon monoxide ALARM at block 370 f.
  • If the ALARM value is not greater than the ALROFF value at [0143] block 370 d, the detector 50 decrements a NEGATIVE READING counter at block 370 g. If the NEGATIVE READING counter is equal to zero, the detector unit calls CLRREG and the process proceed to the SHOW sub-routine. If the NEGATIVE READING counter is not equal to zero, the process proceeds correctly to the SHOW sub-routine.
  • FIG. 10 illustrates a [0144] TESTR sub-routine 380. The TESTR subroutine 380 is utilized when the test switch is pressed by a user.
  • At [0145] block 380 a, the detector unit 50 determines whether the test switch is pressed. If the test switch is not pressed, the process proceeds to the RES1 sub-routine 340 as described above. If the TEST SWITCH is pressed at 380 a, the detector 50 determines whether the unit is in a smoke alarm condition at block 380 b.
  • If the [0146] detector 50 is not in a smoke alarm condition at block 380 b, it activates the carbon monoxide ALARM at block 380 c, sets a four minute delay at block 380 d, sets a QUIET carbon monoxide flag at block 380 e, turns off the carbon monoxide ALARM at block 380 f, sets a counter at block 380 g, and decrements the counter at block 380 h. At block 380 i, the detector 50 determines whether the counter has timed out. If the counter has not timed out, the process proceeds to block 380 h. If the counter has time out at block 380 i, the detector 50 clears the QUIET flag at block 380 j and turns on the carbon monoxide ALARM at block 380 k. The process then returns to the beginning of the TESTR sub-routine 380.
  • If the [0147] detector 50 is in a smoke alarm condition at block 380 b, it sets an eight minute delay at block 3801, sets a QUIET smoke flag at block 380 m, turns off the smoke alarm at block 380 n, sets a counter at block 380 o, and decrements the counter at block 380 p. The detector 50 determines whether the smoke is increasing at block 380 g.
  • If the smoke is increasing, the detector activates the smoke alarm at [0148] block 380 r and the process proceeds to the beginning of the TESTR sub-routine 380. If the smoke is not increasing at block 380 g, the detector 50 determines whether the counter has timed out at block 380 s.
  • If the counter has not timed out, the process proceeds to block [0149] 380 p. If the counter has timed out at block 380 s, the detector 50 clears the QUIET flag at block 380 f and activates the smoke alarm at block 380 r. The process then proceeds to the beginning of the TESTR sub-routine 380.
  • FIG. 11 illustrates a [0150] SMOKE CHECK sub-routine 390. The SMOKE CHECK sub-routine determines whether the smoke sensor has detected the presence of smoke in the atmosphere and initiates a smoke alarm.
  • At [0151] block 390 a, the detector 50 clears a ten minute SMOKE flag. The detector 50 then determines whether a smoke test is in progress at block 390 b.
  • If the smoke test is in progress, the process proceeds to a SMKTEST sub-routine as further described below. If the [0152] detector 50 is not to carry out a smoke test, it checks a smoke feedback pin of the sensor at block 390 c. The detector unit then determines whether smoke is present in the atmosphere at block 390 d.
  • If smoke is not present, the [0153] detector 50 determines whether there has been a smoke glitch at block 390 e. If there has been a smoke glitch, the process proceeds to block 390 b. If there is not smoke glitch at block 390 e, the detector 50 clears the smoke at block 390 d and returns to the beginning of the SMOKE CHECK sub-routine 390.
  • If the [0154] detector unit 50 determines that smoke is present at block 390 d, it continues processing at block 390 f. The detector 50 then determines whether it is in a silence mode at block 390 g. If the detector unit 50 is in the hush mode, the process proceeds to a SMOKE PRIORITY sub-routine as further described below.
  • If the [0155] detector 50 is not in the silence mode at block 390 g, it the detector unit 500 sets a SMOKE flag at block 390 h and then determines whether to execute a Canadian horn pattern at block 390 i. One of the advantages of the detector 50 is its ability to store a plurality of horn patterns and use one or more selected patterns.
  • If the Canadian horn pattern is implemented by the [0156] detector 50 at block 390 i, it turns on the smoke LED3 at block 390 j and turns on the SMOKE BEEPER at block 390 k. The process then returns to the beginning of the SMOKE CHECK sub-routine.
  • If the Canadian horn pattern is to be executed at [0157] block 390 i, the detector 50 will turn on the smoke LED3 at block 390 l and will turn on the Canadian smoke beeper at block 390 m. The process then returns to the beginning of the SMOKE CHECK sub-routine 390.
  • FIG. 12 illustrates a [0158] TEST sub-routine 400 to test smoke sensor functioning. Initially, the detector 50 clears an ERROR flag and LOW TEMP flag at block 400 a, saves all the data at block 400 b, sets up a test current at block 400 c, and calls an TIME1 at block 400 d. The detector 50 then determines whether the sensor output is less than a BOTLIM value at block 400 e. If the sensor output is less than the BOTLIM value, the detector 50 sets an ERROR flag at block 400 f and the process proceeds to block 400 h as further described below.
  • If the sensor output is not less than the BOTLIM value at [0159] block 400 e, the detector 50 determines whether the sensor output is greater than a TOPLIM value at block 400 g. If the sensor output is less than the TOPLIM value, the detector 50 sets the ERROR flag at block 400 f and the process proceeds to block 400 h. If the sensor output is not less than the TOPLIM value at block 400 g, the detector 50 determines whether an ALARM is greater than zero at block 400 h.
  • If the ALARM is not greater than zero at [0160] block 400 h, the detector 50 subtracts a REDMIN value from the ALARM register at block 400 i and then determines whether the ALARM register is negative at block 400 j. If the ALARM register is negative, the detector 50 sets the ALARM register equal to zero at block 400 k and the process proceeds to block 400 l as further described below. If the ALARM register is not negative at block 400 j, the process proceeds to block 400 l.
  • If the ALARM is greater than zero at [0161] block 400 h, the detector 50 turns on the thermistor at block 400 l, calls TIME1 at block 400 m, and clears a LOW TEMP flag at block 400 n. The detector 50 then determines whether a HIGH BYTE value is greater than REF value at block 400 o.
  • If the HIGH BYTE value is not greater than REF value, the detector restores the saved data at [0162] block 400 p, and initializes the WAKEUP counter and restores the TEST counter at block 400 q. The process then proceeds to the BAT1 sub-routine as further described below.
  • If the HIGH BYTE value is greater than the REF value at block [0163] 400 o, the detector 500 sets the LOW TEMP flag at 400 r, restores the saved data at block 400 p, initializes the WAKEUP counter, and restores the TEST counter at block 400 q. The process then proceeds to the BAT1 sub-routine.
  • Referring now to FIG. 13, a block diagram of another embodiment of a [0164] detector 500 is illustrated. The detector 500 is a battery powered, single station, self-contained carbon monoxide alarm. The detector 500 detects the presence and concentration of carbon monoxide in the atmosphere and provides a warning of potential hazardous carbon monoxide conditions. The detector 500 corresponds in many respects in construction and function to the previously described detector 50 except that the detector 500 does not detected the presence of smoke. The component of the detector 500 generally corresponding to those components of the detector unit 50 are designated by like-reference numerals in the six-hundred series. As shown in FIG. 14, the central processing unit 602 includes a microchip PIC16C58A, available from microchip.
  • FIG. 15 illustrates a flow diagram of the general operations carried out by the [0165] detector 500. The detector monitors the carbon monoxide in the atmosphere and sounds an alarm if a hazard condition is present.
  • After the [0166] detector 500 is awakened at block 800 a or powered up at block 800 b, the detector initializes a watchdog timer and initializes one or more ports at block 800 c. At block 800 d, the detector 500 determines whether the unit was just powered up. If the detector 500 was just powered up, the detector implements a power-up delay at block 800 e, and then initializes one or more counters, clears one or more sample registers, clears one or more flag registers, and clears an alarm register at block 800 f. The detector 500 then obtains an initial sensor count at block 800 g and then the detector 500 is put in the sleep mode at block 800 h.
  • If the [0167] detector 500 was not recently powered up at block 800 d, the detector 500 determines whether to implement a manual test at block 800 i. If the manual test is to be implemented, the detector 500 performs the manual test at block 800 j and then the detector 500 is put in the sleep mode at block 800 h.
  • If a manual test is not to be performed at [0168] block 800 i, the detector 500 determines whether to obtain a 30 second sample at block 800 k. If the detector 500 is not to obtain a sample, the detector 500 will be put in the sleep mode at block 800 h.
  • If the [0169] detector 500 is to obtain a 30 second sample at block 800 k, the detector 500 obtains a sensor count at block 800 l and then determines whether to perform a 10 minute A-to-D test at block 800 m. If the detector 500 is not to perform the A-to-D test, the process proceeds to block 800 o.
  • If the [0170] detector 500 is to perform the 10 minute A-to-D test at block 800 m, the detector 500 tests the A-to-D circuitry at block 800 n and then checks the carbon monoxide rate of change at block 800 o.
  • At [0171] block 800 p, the detector 500 determines whether to activate the carbon monoxide alarm. If the carbon monoxide alarm is to be activated, the detector 50 flashes the light indicator LED2 of the carbon monoxide indicator circuitry 622 (see FIG. 15) and sounds the carbon monoxide horn pattern at 800 q. The process then proceeds to block 800 s as further described below.
  • If the carbon monoxide alarm is not to be activated at [0172] block 800 p, the detector 50 turns off the carbon monoxide LED2 and horn at block 800 r, and shows data at block 800 s.
  • At [0173] block 800 t, the detect or 500 determines whether there are any faults at block 800 t. If there are not any faults at block 800 t, the detector 500 is put in the sleep mode at block 800 w.
  • If there are faults, the [0174] detector 500 determines whether to check the carbon monoxide alarm at block 800 u. If the carbon monoxide is to be checked, the detector 500 is put in the sleep mode at block 800 w. If there is no problem with the carbon monoxide alarm is not to be checked, the detector 500 generates a trouble chirp at block 800 v and then the detector is put into the sleep mode at block 800 w.
  • FIG. 16 shows a flow diagram of a main program carried out by the [0175] detector 500. At block 810 a, the detector 500 sets a wake-up time (i.e., about 3 seconds for normal mode and about 1.5 seconds for alarm mode). The detector 500 then initializes ports A and B at block 810 b and determines whether a TIME OUT bit is cleared at block 810 c. If the TIME OUT bit is cleared, the detector 500 proceeds to a WAKE sub-routine as further described below.
  • If the TIME OUT bit is not cleared at [0176] block 810 c, the process proceeds to a POWER UP sub-routine as further described below. The detector 500 then waits about 300 ms at block 810 d. At block 810 e, the detector 500 initializes a WAKE UP counter, a SAMPLE counter, and a TEST counter at block 810 e. The detector 500 then clears one or more registers and flags at block 810 f, clears an ALARM REGISTER at block 810 g, sets a START flag at block 810 h, and then goes into the sleep mode.
  • Referring now to FIG. 17, a [0177] WAKE sub-routine 820 is illustrated. The WAKE sub-routine is performed when the processor is awakened from the sleep mode.
  • At [0178] block 820 a, the detector 500 determines whether a TEST MODE flag is set. If the TEST MODE flag is set, the process will proceed to a RESUMET sub-routine 820 b. While carrying out the steps of the RESUMET sub-routine 820 b, the detector 500 is kept STARVED at block 820 c and a WAKEUP counter is set equal to 1 at block 820 d. The detector 500 then determines whether the ALARM flag is set at block 820 e. If the ALARM flag is set, the process proceeds to a RESET sub-routine as further described below. If the ALARM flag is not set at block 820 e, the process proceeds to a LOOP sub-routine as further described below.
  • If the TEST MODE flag is not set at [0179] block 820 a, the detector 500 determines whether an ALARM flag is set at block 820 f. If the ALARM flag is set, the process proceeds to a TESTR sub-routine as further described below.
  • If the ALARM flag is set at [0180] block 820 f, the detector 500 determines whether a test switch is pressed at block 820 g. If the test switch is not pressed, the process proceeds to a BYE1 sub-routine as further described below.
  • If the test switch is pressed at [0181] block 820 g, the detector 500 determines whether an error flag is set at block 820 h. If the error flag is set, the process proceeds to a RESERR sub-routine as further described below.
  • If the error flag is not set at [0182] block 820 h, the detector saves the data in an ALARM register at block 820 i, sets a TEST flag and sets the WAKEUP counter equal to 1 at block 820 j. Thereafter, the detector 500 turns on the yellow LED1 at block 820 k, waits 100 ms at block 820 l, turns off the yellow LED1 at block 820 m, and clears a START flag at 820 n. The process will then proceed to a BEEPX sub-routine as further described below.
  • FIG. 18 illustrates a [0183] BY1 sub-routine 840 and the TESTR subroutine 830. The TESTR sub-routine 830 is utilized to determine if the test switch is being pressed during an alarm to silence the unit and the BYE1 sub-routine is utilized to decrement the WAKEUP counter to determine what WAKEUP routine to accomplish.
  • At [0184] block 830 a, the detector 500 determines whether the test switch is pressed. If the test switch is not pressed, the process proceeds to an ALR1 subroutine as further described below. If the test switch is pressed at block 830 a, the detector 500 determines whether a QUIET INHIBIT flag is set at block 830 b. If the QUIET INHIBIT flag is set, the process proceeds to block 830 g as further described below.
  • If the QUIET INHIBIT flag is not set at [0185] block 830 b, the detector 500 sets a 4 minute delay at block 830 c, sets a QUIET ONCE flag at block 830 d, sets a QUIET flag at block 830 e, turns off the beeper at block 830 f, waits for a switch release at block 830 g, and then decrements the WAKEUP counter at block 830 h. The detector 500 then determines whether the WAKEUP counter is equal to zero at block 830 i. If the WAKEUP counter is not equal to zero, the detector 500 is put into the sleep mode.
  • If the WAKEUP counter is equal to zero at [0186] block 830 i, the WAKEUP counter is reloaded (i.e., the WAKEUP counter is set to 10 for normal mode and equal to 20 for alarm mode) at block 830 j. At block 830 h, the detector 500 determines whether the ALARM flag is set. If the ALARM flag is not set, the process proceeds to a LOOP sub-routine as further described below.
  • If the ALARM flag is set at [0187] block 830 h, the detector 500 decrements the TEST counter at block 830 l, and the process proceeds to a LOOP sub-routine. If the TEST counter is equal to zero at block 830 l, the detector 500 clears the QUIET flag at block 830 m and the process proceeds to the LOOP subroutine.
  • Referring now to FIG. 19, a flow diagram of the [0188] ALR1 sub-routine 840 is illustrated. The ALR1 sub-routine 840 is utilized to activate the carbon monoxide LED2 and horn.
  • At [0189] block 840 a, a TEST ALARM counter is set equal to 2 and an ALARM COUNTER is set equal to 3. At block 840 b, the detector determines whether the QUIET flag is set. If the QUIET flag is set, the process proceeds to block 840 d as further described below.
  • If the QUIET flag is not set at [0190] block 840 b, the detector 500 turns on the horn at block 840 e, turns on the carbon monoxide LED2 at block 840 d, waits 100 ms at block 840 e, turns off the carbon monoxide LED2 at block 840 f, waits about 400 ms at block 840 g, decrements the ALARM counter at block 840 h, and then determines whether the ALARM counter is equal to zero at block 840 i. If the alarm counter is not equal to zero, the process proceeds to block 840 b.
  • If the alarm counter is equal to zero at [0191] block 840 i, the detector 500 turns off the horn at block 840 j and then determines whether a TEST flag is set at block 840 k. If the TEST flag is set, the detector 500 decrements the test alarm counter by 1 at block 840 l and then determines whether the test alarm counter is equal to zero at block 840 m.
  • If the test alarm counter is equal to zero, the process proceeds to a RESET sub-routine as further described below. If the test alarm counter is not equal to zero at [0192] block 840 m, the detector will be put into the sleep mode.
  • If the TEST flag is set not at [0193] block 840 k, the detector 500 will decrement the WAKEUP counter by 1 at block 840 n and then the detector 500 determines whether the WAKEUP counter is equal to zero at block 840 o. If the WAKEUP counter is not equal to zero, the detector 500 is put into the sleep mode.
  • If the WAKEUP counter is equal to zero at block [0194] 840 o, the detector 500 reloads the WAKEUP counter with a ALARM DIV value at block 840 p. The process then proceeds to a sub-routine MIN4 as further described below.
  • FIG. 20 illustrates the [0195] RESET sub-routine 850 and a RESET1 subroutine 852 of the main routine. At block 850 a, the detector 500 restores the ALARM value. The detector 500 then reloads the WAKEUP counter at block 850 b and then calls CLRREG at block 850 c. The process then proceeds to ALRH X sub-routine as further described below.
  • Referring now to FIG. 21, the [0196] LOOP sub-routine 860 is illustrated. The LOOP sub-routine 860 is implemented to determine if a manual self test needs to be performed. At block 860 a, the detector 500 calls TIME and then determines whether an ALARM flag is set at block 860 b. If the ALARM flag is set, the process proceeds to a LOOP2 sub-routine as further described below.
  • If the ALARM flag is not set at [0197] block 860 b, the detector 500 determines whether the TEST flag is set at block 860 c. If the TEST flag is set, the process proceeds to the LOOP2 sub-routine. If the TEST flag is not set at block 860 c, the detector 500 decrements the TEST counter at block 860 d and then determines whether the TEST counter is equal to zero at block 860 e. If the TEST counter is not equal to zero, the process proceeds to the LOOP2 sub-routine. If the TEST counter is equal to zero at block 860 e, the process proceeds to a TEST subroutine as further described below.
  • FIG. 22 illustrates a NEG1 sub-routine to a reduction in the counts value to clear an alarm condition if the CO level is decreasing. At [0198] block 870 a, the detector 500 clears a DIRECTION flag and subtracts a REDCT value from the ALARM register at block 870 b. The detector 500 then determines whether the ALARM register is negative at block 870 c. If the ALARM is not negative, the process proceeds to block 870 d as further described below. If the ALARM is negative at block 870 c, the detector 500 clears the ALARM register at block 870 e and then determines whether the ALARM is less than an ALROFF value at block 870 d. If the ALARM register is less than the ALROFF value, the detector clears the ALARM register at block 870 f.
  • If the ALARM register is not less than the ALROFF value at [0199] block 870 d, the detector 500 decrements a NEGATIVE READING counter at block 870 g. If the NEGATIVE READING counter is not equal to zero, the process proceeds to the SHOW sub-routine as further described below. If the NEGATIVE READING counter is equal to zero, the detector 500 calls CLRREG at block 870 h. The process then proceeds to the SHOW sub-routine.
  • Referring now to FIG. 23, the [0200] TEST sub-routine 880 is illustrated. The TEST sub-routine 880 is utilized to test and exercise the carbon monoxide sensing electronics, while maintaining the previous samples and data acquired.
  • Initially, the [0201] detector 500 clears an ERROR flag at block 880 a, saves all the data at block 880 b, sets up a test current at block 880 c, calls TIME1 at block 880 d, and determines whether the sensor output is less than a BOTLIM value at block 880 e.
  • If the sensor output is less than the BOTLIM value, the [0202] detector 500 sets an ERROR flag at block 880 f, and then the process proceeds to block 880 g as further described below. If the sensor output is not less than the BOTLIM value at block 880 e, the detector 500 determines whether the sensor output is less than a TOPLIM value at block 880 h.
  • If the sensor output is less than the TOPLIM value, the [0203] detector 500 sets an ERROR flag at block 880 f, and the process proceeds to block 880 g. If the sensor output is not less than the TOPLIM value at block 880 h, the detector 500 determines whether the ALARM register is equal to zero at block 880 g.
  • If the ALARM register is not equal to zero at [0204] block 880 g, the detector 500 subtracts a REDMIN register from the ALARM register at block 880 i, and then determines whether the ALARM register is negative at block 880 j. If the ALARM register is not negative, the process proceed to block 880 l as further described below. If the ALARM register is negative at block 880 j, the detector 500 sets the ALARM register equal to zero at block 880 k and then the process proceeds to block 880 l as further described below.
  • If the ALARM register is equal to zero at [0205] block 880 g, the detector 500 will restore the save data at block 880 l. The detector 500 will then initialize the WAKEUP counter and restore the TEST counter at block 880 m. The process then proceeds to the BAT1 sub-routine as further described below.
  • FIG. 24 illustrates the [0206] BAT1 sub-routine 890 and a Loop2 subroutine 900. The BAT1 sub-routine 890 determines whether the battery of the detector 500 is at a sufficient voltage level and the LOOP2 sub-routine turns off the IR LED and power LED after a sample has been taken and stores the current sample value.
  • The [0207] detector 500 turns on the IR LED of the carbon monoxide sensor at block 890 a and decrements a ALARM TOGGLE register at block 890 b. If the ALARM TOGGLE is equal to zero at block 890 b, the detector is put into the sleep mode with their LED on. If the ALARM TOGGLE is not equal to zero at block 890 b, the detector 500 clears a LOW BATTERY flag at block 890 c, turns on the red LED2 at block 890 d, waits about 10 ms at block 890 e, and then determines whether the battery line is at a low level at block 890 f.
  • If the battery line is not at a low voltage level, the process proceeds to block [0208] 890 g as further described below. If the battery line is at a low level at block 890 f, the detector 500 sets a LOW BATTERY flag at block 890 h, turns off their LED at block 890 g, turns off the red LED at block 890 i, and then determines whether a START flag has been set at block 890 k.
  • If the START flag is not set, the process proceeds to a INSPECT sub-routine as further described below. If the START flag is set at block [0209] 890 k, the detector unit 500 copies a current sample to a last sample buffer at block 890 l, clears the START flag at block 890 m, and then the process proceeds to the INSPECT sub-routine.
  • FIG. 25 illustrates the INSPECT [0210] sub-routine 910. The INSPECT sub-routine 910 is utilized to evaluate the difference between the previous sample and the present sample.
  • At [0211] block 910 a, the detector 500 determines whether a HIGH BYTE is greater than an HFAULT value. If the HIGH BYTE is not greater than the HFAULT value, the process proceeds to block 910 b as further described below. If the HIGH BYTE is greater than the HFAULT value at block 910 a, the detector 500 sets an ERROR flag at block 910 c and then determines whether the HIGH BYTE is greater than a HIVAL1 value at block 910 b.
  • If the HIGH BYTE is greater than the HIVAL1 value, the process proceeds to block [0212] 910 e as further described below. If the HIGH BYTE is not greater than the HIVLA1 value at block 910 b, the detector 500 sets the ERROR flag at block 910 d, saves a previous sample in registers A and B at block 910 e, and then determines whether the TEST flag is set at block 910 f.
  • If the TEST flag is set, the process proceeds to block [0213] 910 g as further described below. If the TEST flag is not set at block 910 f, the detector 500 moves the current sample to the last sample register at block 910 h, calculates the difference between the current sample and the last sample at block 910 g, and then determines whether the difference is negative at block 910 i.
  • If the difference is negative, the process proceeds to the NEG1 subroutine as described above. If the difference is not negative at [0214] block 910 i, the process proceeds to a POS1 sub-routine as further described below.
  • FIG. 26 illustrates the [0215] POS1 sub-routine 920 to determine if we are in a high level alarm and a ACC3 sub-routine 922 to add the equate for the previous sample to the alarm register. At block 920 a, the detector 500 determines whether a HIGH BYTE is equal to zero. If the HIGH BYTE is not equal to zero, the process proceeds to a ADJ1 sub-routine 924 as further described below. If the HIGH BYTE is equal to zero, the detector 500 determines whether a LOW BYTE is equal to zero at block 920 b.
  • If the LOW BYTE is not equal to zero, the [0216] detector 500 sets a DIRECTION flag at block 920 c and the process proceeds to block 920 d as further described below. If the LOW BYTE is equal to zero at block 920 b, the detector 500 determines whether the LOW BYTE is greater than a SUPRL value at block 920 d.
  • If the LOW BYTE is greater than the SUPRL value, the process proceeds to the [0217] ADJ1 sub-routine 924 as further described below. If the LOW BYTE is not greater than SUPRL at block 920 d, the detector 500 assigns the difference to the current sample register at block 920 e, decrements a sample register pointer and reloads the register pointer to five when the sample register pointer is equal to zero at block 920 f. The detector 500 adds the five sample registers and stores the result in a SUMREG register at block 920 g. The process then proceeds to a ACCUM sub-routine as further described below.
  • During the [0218] ACC3 sub-routine 922, the detector 500 adds the difference to the ALARM register at block 922 a, and then determines whether the ALARM register exceeds 255 at block 922 b. If the ALARM register does not exceed 255, the process proceeds to a CHKRDH sub-routine as further described below. If the ALARM register exceeds 255 at block 922 b, the process proceeds to the ADJ1 sub-routine 924.
  • During the [0219] ADJ1 sub-routine 924, the detector unit 500 determines whether the ALARM is equal to 255 and sets an ALARM flag at block 924 a. The detector 500 then sets up an ALARM TOGGLE at block 924 b and determines whether the QUIET flag is set at block 924 c.
  • If the QUIET flag is set, the process proceeds to the SHOW subroutine as further described below. If the QUIET flag is not set at [0220] block 924 c, the detector 500 determines whether the TEST flag is set at block 924 d.
  • If the TEST flag is not set, the process proceeds to the SHOW subroutine. If the TEST flag is set at [0221] block 924 d, the detector 500 turns on the red LED and turns on the beeper at block 924 e. The process then proceeds to the SHOW sub-routine.
  • FIG. 27 illustrates the [0222] ACCUM sub-routine 930 and a SET6 subroutine. The ACCUM sub-routine 930 is utilized to determine what value to assign to the lower byte of the sum register, and the SET6 sub-routine is implemented to assign the sum 6 value to the low byte of the sum register.
  • At [0223] block 930 a, the detector 500 obtains a SUMREGL value and then determines whether a TEST flag is set at block 930 b. If the TEST flag is set, the process proceeds to a ACC4 sub-routine as further described below. If the TEST flag is not set at block 930 b, the detector unit 500 determines whether a DIRECTION flag is set at block 930 c.
  • If the DIRECTION flag is not set, the process proceeds to block [0224] 930 d as further described below. If the DIRECTION flag is set at block 930 c, the detector unit 500 determines if an ALARM flag is set at block 930 e.
  • If the ALARM flag is not set, the process proceeds to block [0225] 930 d. If the ALARM flag is set at block 930 e, the detector 500 reloads the NEGATIVE counter at block 930 f.
  • At [0226] block 930 d, the detector 500 determines whether a SUMREGH value is equal to zero. If the SUMREGH value is not equal to zero, the process proceeds to a SET6 sub-routine 930. If the SUMREGH is equal to zero at block 930 d, the detector unit 500 determines whether the SUMREGL value is equal to zero at block 930 g.
  • If the SUMREGL value is equal to zero, the process proceeds to a CHKSP sub-routine as further described below. If the SUMREGL is not equal to zero at [0227] block 930 g, the detector 500 determines whether a LOW TEMP flag is set at block 930 h.
  • If the LOW TEMP flag is set at [0228] block 930 h, the detector 500 determines whether the SUMREGL value is less than 3 at block 930 i. If the SUMREGL value is less than three, the detector 500 sets the SUMREGL value equal to three at block 930 j, and will times the SUMREGL by two at block 930 k, and the process proceeds to block 9301. If the SUMREGL is not less than 3 at block 930 i, the detector unit 500 times the SUMREGL by two at block 930 k, and the process proceeds to block 930 l.
  • Now, the [0229] detector unit 500 compares the SUMREGL to LEVEL1 through LEVEL5 values. If the SUMREGL is less than the LEVEL1 value, the detector unit 500 sets the SUMREGL value equal to a SUM1 value at block 930 m. If the SUMREGL value is less than the LEVEL2 value at block 930 n, the detector 500 sets the SUMREGL value equal to a SUM2 value at block 930 o. If the SUMREGL value is less than the LEVEL3 value at block 930 p, the detector 500 sets SUMREGL value equal to a SUM3 value at block 930 q. If the SUMREGL value is less than the LEVEL4 value at block 930 r, the detector 500 sets the SUMREGL value equal to a SUM4 value at block 930 t. If the SUMREGL value is less than a LEVEL5 value at block 930 v, the detector 500 sets the SUMREGL value equal to a SUM5 value at block 930 w.
  • If the [0230] detector 500 has set the SUMREGL value equal to the SUM1 value, SUM2 value, the SUM3 value, the SUM4 value, or the SUM5, value the process proceeds to the ACC3 sub-routine as further described below. If the SUMREGL is not set to one of these values, the process proceeds to the SET6 subroutine 930. Subsequently, the detector 500 sets the SUMREGL equal to SUM6 at block 930 a. The process then proceeds to the ACC3 sub-routine as further described below.
  • FIG. 28 illustrates the [0231] CHKSP sub-routine 940 and CHKRDH subroutine 950. The CHKSP sub-routine 940 is utilized to check if the present sample is at a flat level or if it has changed direction from the previous sample.
  • At [0232] block 940 a, the detector unit 500 determines whether a DIRECTION flag is set. If the DIRECTION flag is not set, the process proceeds to the CHKRDH sub-routine 950. If the DIRECTION flag is set at block 940 a, the detector 500 determines whether a ALARM counter is greater than a FLATLVL value at block 940 b.
  • If the ALARM counter is not greater than the FLATLVL counter, the process proceeds to the [0233] CHKRDH sub-routine 950. If the ALARM counter is greater than the FLATLVL value at block 940 b, the detector 500 adds the FLATLVL value to a SUMREG register at block 940 g, and the process proceeds to an ACC3 sub-routine as further described below.
  • The [0234] CHKRDH sub-routine 950 is utilized to determine the status of the sensor high flag. At block 950 a, the detector determines whether a SENSOR HIGH flag is set at block 950 a. If the SENSOR HIGH flag is not set, the process proceeds to the SHOW sub-routine as further described below. If the SENSOR HIGH flag is set at block 950 a, the process proceeds to a ADJ1 sub-routine as further described below.
  • FIG. 29 illustrates a flow diagram of the [0235] SHOW sub-routine 960 and a NOSHOW sub-routine 965. The SHOW sub-routine 960 is utilized to present the data stream through RS-237 communication to peripherals and the power LED.
  • At [0236] block 960 a, the detector 500 determines whether an EOL line is at a low level. If the EOL line is at a low level, the process proceeds to a NOSHOW sub-routine 965 as described below. If the EOL line is not at a low level at block 960 a, the detector 500 switches a SERIAL line to an output at block 960 b.
  • At [0237] block 960 c, the detector 500 clears a SYNC bit, waits for a predetermined amount of time, and sets the SYNC bit. The detector 500 then sets an REGC register equal to the last register plus 1 at block 960 d, decrements the REGC register at block 960 e, and then determines whether the REGC register is equal to zero at block 960 f.
  • If the REGC register is not equal to zero, the detector obtains the data pointed to by the REGC register and then the process proceeds to an XMITR sub-routine as further described below. If the REGC is equal to zero at [0238] block 960 f, the process proceeds to the NOSHOW sub-routine 965.
  • The [0239] NOSHOW sub-routine 965 is utilized to determine if there is a low battery, error or power up flag set and sound the correct horn pattern. At block 965 a, the detector 500 determines whether an ALARM flag is set. If the ALARM flag is set, the process proceeds to block 965 b as further described below. If the ALARM flag is not set at block 965 a, the detector 500 determines whether an ERROR flag is set at block 965 c.
  • If the ERROR flag is set, the [0240] detector 500 issues a double beep at block 965 d, and the process proceeds to block 965 b as further described below. If the ERROR flag is not set at block 965 c, the detector unit determines whether a LOW BATTERY flag is set at block 965 e.
  • If the LOW BATTERY flag is set, the [0241] detector 500 issues a single beep at block 965 f. If the LOW BATTERY flag is not set at block 965 e, the detector determines whether a START flag is set at block 965 g.
  • If the START flag is set, the [0242] detector 500 issues a welcome wake-up chirp at block 965 h. If the START flag is not set at block 965 g, the detector 500 clears the START flag at block 965 b and the detector 500 is put into the sleep mode.
  • FIG. 30 illustrates the [0243] XMITR sub-routine 970 to synchronize the data stream. At block 970 a, a REGC register is loaded with 8. The detector 500 then rotates the value of a REGA register into a CARRY bit at block 970 b and then determines whether the CARRY bit is set a block 970 c.
  • If the CARRY bit is set, the process proceeds to block [0244] 970 d as further described below. If the CARRY bit is not set at block 970 c, the detector 500 sets a TRANSMIT bit a block 970 e and then determines whether the CARRY bit is cleared at block 970 d.
  • If the CARRY bit is cleared, the process proceeds to block [0245] 970 f as further described below. If the CARRY bit is not cleared at block 970 d, the detector 500 clears the TRANSMIT bit a block 970 g, waits a predetermined amount of time at block 970 f, clears a SYNC bit at block 970 h, waits another predetermined amount of time at block 970 i, sets the SYNC bit at block 970 j, and decrements a REGC register at block 970 k. The process then proceeds to block 970 b unless the REGC register is equal to zero. If the REGC register is equal to zero at block 970 k, the detector 500 sets the TRANSMIT bit at block 9701, and byte has been sent, continue.
  • FIG. 31 illustrates the [0246] TIME sub-routine 975 and the TIME1 subroutine 977. The TIME and TIME1 sub-routines are utilized to take a carbon monoxide sample.
  • At [0247] block 975 a, the detector unit 500 turns on the IR LED, sets a TRIS register to remove capacitor discharge, removes test current source, and enables the photo diode power source. At block 975 b, the detector 500 clears the time counters, a RTCC bit, and an OVERFLOW flag. The detector 500 then increments the time counters at block 975 c, and then determines whether the time counter equals an overflow value at block 975 d.
  • If the time counter is equal to the overflow value, the [0248] detector 500 sets an overflow flag and sets counters to FFFF at block 975 e. The process then proceeds to block 975 g as further described below. If the time counter is not equal to the overflow value at block 975 d, the detector 500 determines whether the RTCC should be incremented at block 975 f.
  • If the RTCC should not be incremented, the process proceeds to block [0249] 975 c. If the RTCC is to be incremented at block 975 f, the detector 500 will turn off the IR LED, disable the photo diode power source, and restore the capacitor discharge at block 975 g. The process then will proceed to the beginning of the TIME sub-routine 975 or TIME1 sub-routine 977.
  • FIG. 32 illustrates a [0250] DEL001 sub-routine 980. The DEL001 subroutine 980 is utilized as a fixed time delay for the microcontroller timing. At block 980 a, the detector 500 loads a REGB register with 71H, NOP at block 980 b, decrements the REGB register at block 980 c, and then determines whether the REGB register is equal to zero at block 980 d.
  • The process will proceed to block [0251] 980 b unless the REGB register is equal to zero. When the REGB register 13 is equal to zero, the process will return to the beginning of the DEL001 sub-routine 980.
  • FIG. 33 illustrates a [0252] DEL255 sub-routine 982 and a DELPROG subroutine 984 for a fixed timing delay on the microcontroller. At block 982 a, the detector 500 loads a TEMP register with FFh. The detector 500 then calls DEL001 at block 982 b, decrements the TEMP register at block 982 c, and then determines whether the TEMP register is equal to zero at block 982 d.
  • The process proceeds to block [0253] 982 b unless the TEMP register is equal to zero. When the TEMP register is equal to zero, the process returns to the beginning of the DEL255 sub-routine 982 or the DELPROG sub-routine 984.
  • FIG. 34 illustrates a [0254] CLRREG sub-routine 986. The CLRREG subroutine 986 is utilized to reset the microcontroller at power-up, and ensure LED's and horn are off.
  • As shown in FIG. 34, the [0255] detector 500 clears one or more SAMPLE registers at block 986 a, clears one or more flags at block 986 b, sets a START flag at block 986 c, and clears Port B at block 986 d. The detector 500 then turns off the red LED2 and yellow LED1 at block 986 e. The process then returns to the beginning of the CLRREG sub-routine 986.
  • FIG. 35 shows a [0256] M16 sub-routine 988 to add the determined weight to the low byte of the sum register. At block 988 a, the detector 500 adds W to the SUMREGL register. The detector 500 then determines whether a CARRIER register is set at block 988 b.
  • If the CARRIER register is not set, the process returns to the beginning of the [0257] M16 sub-routine 988. If the CARRIER register is set at block 988 b, the detector 500 increments the SUMREG register at block 988 c and then the process returns to the beginning of the M16 sub-routine 988.
  • Although the present invention has been described in detail by way of illustration and example, it should be understood that a wide range of changes and modifications can be made to the preferred embodiments described above without departing in any way from the scope and spirit of the invention. Thus, the described embodiments are to be considered in all respects only as illustrative and not restrictive, and the scope of the invention is, therefore, indicated by the appended claims rather than the foregoing description. All changes that come within the meaning and range of equivalency of the claims are to be embraced within their scope. [0258]

Claims (21)

What is claimed:
1. A self-contained, combined, gas and smoke detector comprising:
a gas sensor;
a smoke sensor;
a programmed control element coupled to both of the sensors;
a housing which defines an internal region for receiving the sensors and the control element wherein the housing is perforated with a first opening shaped as a fire; and
a removable protective planar element, covering at least a part of the gas sensor within the housing wherein the element is applied during manufacture and is removed once the detector has been placed into service.
2. A detector as in claim 1 which includes a light emitting element positioned adjacent to the first opening wherein the light emitting element is energized in the presence of smoke thereby illuminating the fire shaped opening.
3. A detector as in claim 1 wherein the housing is perforated with a second opening shaped unlike the first opening and including a second light emitting element positioned adjacent thereto, wherein the second light emitting element is energized in response to the presence of gas thereby illuminating the second opening.
4. A detector as in claim 1 wherein the housing has a perimeter formed of a plurality of intersecting planar sides wherein at least some of the sides intersect at angles in excess of ninety degrees.
5. A detector as in claim 1 wherein the housing has a perimeter that is non-circular and which carries an elongated, movable test initiating member.
6. A detector as in claim 1 wherein the control element includes executable instructions for selecting between first and second different, pre-stored fire alarm indicating horn patterns.
7. A detector as in claim 6 wherein the control element includes executable instructions for automatically testing the sensors.
8. An apparatus comprising:
a gas sensor;
a smoke sensor;
control circuitry including a programmed processor coupled to the sensors, the control circuitry determining if a predetermined gas condition has been sensed, the control circuitry also determining if a predetermined smoke condition has been sensed wherein the processor stores at least first and second non-verbal alarm specifying horn patterns; and
an alarm energizable to produce the first pattern when the gas condition is present, and to produce the second pattern in the presence of the predetermined smoke condition.
9. The apparatus of claim 8 wherein the gas sensor includes a biomimetic material that responds to the presence of carbon monoxide.
10. An ambient condition detector comprising:
an ambient condition sensor;
a control circuit, coupled to the sensor, which includes a processor programmed with a plurality of executable instructions and at least two pre-stored, different alarm specifying, non-verbal output patterns both associated with the same sensed ambient condition wherein some of the instructions, in response to the sensed alarm condition, select one of the two pre-stored alarm specifying patterns for output.
11. A detector as in claim 10 which includes a second, different ambient condition sensor coupled to the control circuit.
12. A detector as in claim 11 which includes a third, pre-stored, alarm specifying, non-verbal output pattern associated with the second sensor.
13. A detector as in claim 12 which includes instructions for establishing the presence of an alarm condition associated with the second sensor and for audibly generating the third alarm specifying output pattern.
14. A detector as in claim 13 which includes instructions for automatically carrying out a test of each of the sensors.
15. A detector as in claim 13 which includes circuitry for evaluating at least one internal status condition and, responsive thereto, for generating an audible indication thereof.
16. A detector as in claim 15 which includes a power supply and the circuitry evaluates an electrical parameter of the supply.
17. A detector as in claim 16 wherein the supply comprises a battery and the electrical parameter comprises a battery output voltage.
18. A detector as in claim 15 which includes a planar cover member removably attached to the gas sensor and removable when the detector is placed into service to expose the sensor to ambient airborne gas.
19. A detector as in claim 18 wherein the first sensor comprises a smoke sensor and the second a sensor comprises a gas sensor.
20. A detector as in claim 13 which includes instructions for automatically carrying out a test of each of the sensors.
21. A detector comprising:
a housing which defines an internal region;
a user non-replacable biomemetic-type gas sensor carried in the region wherein during manufacture, the gas sensor is sealed with a user removable planar sealing tape which is located at least in part in the internal region;
a fire sensor carried in the region;
a programmed processor carried in the region, coupled to the sensors; and
instructions executable by the processor for automatically and periodically testing the sensors.
US10/008,671 1997-08-07 2001-12-07 Carbon monoxide and smoke detection apparatus Abandoned US20020044061A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US10/008,671 US20020044061A1 (en) 1997-08-07 2001-12-07 Carbon monoxide and smoke detection apparatus
US10/628,092 US6819252B2 (en) 1997-08-07 2003-07-25 Carbon monoxide and smoke detection apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US5500997P 1997-08-07 1997-08-07
US09/058,467 US6426703B1 (en) 1997-08-07 1998-04-09 Carbon monoxide and smoke detection apparatus
US10/008,671 US20020044061A1 (en) 1997-08-07 2001-12-07 Carbon monoxide and smoke detection apparatus

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09/058,467 Continuation US6426703B1 (en) 1997-08-07 1998-04-09 Carbon monoxide and smoke detection apparatus

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US10/628,092 Continuation US6819252B2 (en) 1997-08-07 2003-07-25 Carbon monoxide and smoke detection apparatus

Publications (1)

Publication Number Publication Date
US20020044061A1 true US20020044061A1 (en) 2002-04-18

Family

ID=26733739

Family Applications (3)

Application Number Title Priority Date Filing Date
US09/058,467 Expired - Lifetime US6426703B1 (en) 1997-08-07 1998-04-09 Carbon monoxide and smoke detection apparatus
US10/008,671 Abandoned US20020044061A1 (en) 1997-08-07 2001-12-07 Carbon monoxide and smoke detection apparatus
US10/628,092 Expired - Lifetime US6819252B2 (en) 1997-08-07 2003-07-25 Carbon monoxide and smoke detection apparatus

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09/058,467 Expired - Lifetime US6426703B1 (en) 1997-08-07 1998-04-09 Carbon monoxide and smoke detection apparatus

Family Applications After (1)

Application Number Title Priority Date Filing Date
US10/628,092 Expired - Lifetime US6819252B2 (en) 1997-08-07 2003-07-25 Carbon monoxide and smoke detection apparatus

Country Status (5)

Country Link
US (3) US6426703B1 (en)
EP (1) EP1004106A4 (en)
AU (1) AU8898298A (en)
CA (1) CA2303274A1 (en)
WO (1) WO1999008246A1 (en)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060082464A1 (en) * 2004-10-18 2006-04-20 Walter Kidde Portable Equipment, Inc. Low battery warning silencing in life safety devices
US20080101198A1 (en) * 2006-10-31 2008-05-01 Van Brocklin Andrew L Device and method for maintaining optical energy density on a storage medium
US7377147B1 (en) * 2006-10-23 2008-05-27 3M Innovative Properties Company Testing performance of gas monitors
US20080303677A1 (en) * 2005-04-01 2008-12-11 Fireangel Limited Alarm Apparatus and Adaptor
US7497108B2 (en) 2006-10-23 2009-03-03 3M Innovative Properties Company Gas monitor testing apparatus, method, and system
US20100042333A1 (en) * 2007-04-02 2010-02-18 3M Innovative Properties Company System, method and computer network for testing gas monitors
US20100085200A1 (en) * 2007-03-13 2010-04-08 Thorn Security Limited Detector
US20110200310A1 (en) * 2008-04-30 2011-08-18 Eugenio Montoro Corral Heating system
US20130169430A1 (en) * 2011-12-28 2013-07-04 Joe Shook Apparatus and method for smoke detection & alarm
WO2014150284A1 (en) * 2013-03-15 2014-09-25 Nest Labs, Inc. Detector unit and sensing chamber
US20150022026A1 (en) * 2013-07-18 2015-01-22 Google Inc. Power quality differentiation in hazard detection systems
US20150096352A1 (en) * 2013-10-07 2015-04-09 Google Inc. Smart-home system facilitating insight into detected carbon monoxide levels
US9117360B1 (en) * 2014-06-06 2015-08-25 Fred Conforti Low battery trouble signal delay in smoke detectors
DE102005001369B4 (en) * 2005-01-11 2015-08-27 Dorma Deutschland Gmbh Automatic door operator with a slide rail and a smoke detector
US9396633B1 (en) 2015-06-14 2016-07-19 Google Inc. Systems, methods, and devices for managing coexistence of multiple transceiver devices by optimizing component layout
WO2016186924A1 (en) * 2015-05-20 2016-11-24 Roost, Inc. Battery-powered device with a self-test mode
US9543998B2 (en) 2015-06-14 2017-01-10 Google Inc. Systems, methods, and devices for managing coexistence of multiple transceiver devices using bypass circuitry
US9679454B2 (en) 2015-02-06 2017-06-13 Google Inc. Systems, methods, and devices for managing coexistence of multiple transceiver devices using control signals
US9794522B2 (en) 2015-02-06 2017-10-17 Google Inc. Systems, methods, and devices for managing coexistence of multiple transceiver devices by optimizing component layout
US20180075733A1 (en) * 2015-06-18 2018-03-15 Hochiki Corporation Fire notification system and testing method therefor
US20200035088A1 (en) * 2016-10-12 2020-01-30 Tyco Fire & Security Gmbh Smoke Detector Remote Test Apparatus
US10613213B2 (en) 2016-05-13 2020-04-07 Google Llc Systems, methods, and devices for utilizing radar with smart devices
US10687184B2 (en) 2016-05-13 2020-06-16 Google Llc Systems, methods, and devices for utilizing radar-based touch interfaces
WO2020146484A1 (en) * 2019-01-10 2020-07-16 Dana Eubanks Carbon monoxide purge system for a property
US11855446B2 (en) 2020-04-03 2023-12-26 FireAvert, LLC Remote device management

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6522248B1 (en) 1999-03-18 2003-02-18 Walter Kidde Portable Equipment, Inc. Multicondition detection apparatus and method providing interleaved tone and verbal warnings
US6731207B1 (en) * 1999-12-17 2004-05-04 Brk Brands, Inc. Modular detector system
US6753786B1 (en) * 2000-08-11 2004-06-22 Walter Kidde Portable Equipment, Inc. Microprocessor-based combination smoke and carbon monoxide detector having intelligent hush feature
DE10047194C1 (en) * 2000-09-23 2002-03-07 Bosch Gmbh Robert Device for testing fire alarm consisting of smoke detector and gas sensor comprises testing head holding alarm, first gas bottle having first gas outlet opening protruding into testing head, and gas bottle for process gas
WO2003003165A2 (en) * 2001-06-29 2003-01-09 Electronic Control Systems, Llc Proactive carbon monoxide monitoring, alarm and protection system
JP2003091787A (en) * 2001-09-17 2003-03-28 Riken Keiki Co Ltd Portable gas alarm
JP3895646B2 (en) 2002-07-16 2007-03-22 ホーチキ株式会社 Battery-powered alarm
US7567174B2 (en) * 2002-10-08 2009-07-28 Woodard Jon A Combination alarm device with enhanced wireless notification and position location features
US7075444B2 (en) * 2002-11-15 2006-07-11 Maple Chase Company Temporary alarm locate with intermittent warning
US6914534B2 (en) * 2002-11-20 2005-07-05 Maple Chase Company Enhanced visual signaling for an adverse condition detector
US7030766B2 (en) * 2003-06-18 2006-04-18 Edwards Systems Technology, Inc. Ambient condition detector with multi-function test
US7142105B2 (en) * 2004-02-11 2006-11-28 Southwest Sciences Incorporated Fire alarm algorithm using smoke and gas sensors
US6920874B1 (en) 2004-03-01 2005-07-26 Robert Paul Siegel Intelligent ventilating safety range hood
US7319403B2 (en) * 2004-03-08 2008-01-15 Noel Woodard Combination carbon monoxide and wireless E-911 location alarm
US7183933B2 (en) * 2004-03-23 2007-02-27 Northcoast Innovations Garage carbon monoxide detector with automatic garage door opening command
US20060008919A1 (en) * 2004-07-09 2006-01-12 Boay Yoke P Method and apparatus for detecting gas/radiation that employs color change detection mechanism
US7227452B1 (en) * 2005-03-28 2007-06-05 Frost James W Apparatus to deter birds with ultrasound
CN101292151A (en) * 2005-08-25 2008-10-22 昆腾集团有限公司 Digital gas detector and noise reduction techniques
US20070109140A1 (en) * 2005-11-14 2007-05-17 George Nicks Smoke detector that plug into electrical outlet
US20110254661A1 (en) 2005-12-23 2011-10-20 Invue Security Products Inc. Programmable security system and method for protecting merchandise
US8237424B2 (en) 2006-01-18 2012-08-07 Freescale Semiconductor, Inc. Regulated voltage system and method of protection therefor
US7408473B2 (en) * 2006-02-24 2008-08-05 Maple Chase Company Method of COHb calculation in a carbon monoxide detector
TW200736541A (en) * 2006-03-21 2007-10-01 Forward Electronics Co Ltd A lamp set with an alarm function
US7592923B2 (en) * 2006-06-07 2009-09-22 L.I.F.E. Support Technologies, Llc Smoke detection and laser escape indication system utilizing a control master with base and satellite stations
US7576659B2 (en) * 2006-06-07 2009-08-18 L.I.F.E. Support Technologies, Llc Smoke detection and laser escape indication system utilizing base and satellite
US7696873B2 (en) 2006-09-12 2010-04-13 Tyco Safety Products Canada Ltd. Method and apparatus for automatically disarming a security system
US7605687B2 (en) * 2006-11-09 2009-10-20 Gary Jay Morris Ambient condition detector with variable pitch alarm
US7916018B2 (en) * 2006-12-29 2011-03-29 Honeywell International Inc. Wireless door contact sensor with motion sensor disable
US7642924B2 (en) * 2007-03-02 2010-01-05 Walter Kidde Portable Equipment, Inc. Alarm with CO and smoke sensors
US20100057401A1 (en) * 2007-04-02 2010-03-04 Arthur Scheffler System, method and kit for testing gas monitors
GB0706941D0 (en) * 2007-04-11 2007-05-16 Fireangel Ltd Fire alarm and like devices
CA2641889C (en) * 2007-10-25 2016-06-14 Brk Brands, Inc. Electrochemical carbon monoxide sensor supervision
US7893825B2 (en) * 2007-11-20 2011-02-22 Universal Security Instruments, Inc. Alarm origination latching system and method
US8047163B2 (en) * 2007-12-17 2011-11-01 Aos Holding Company Gas water heater with harmful gas monitoring and warning functions and the method of monitoring and warning
FR2941117B1 (en) * 2009-01-15 2011-02-11 Peugeot Citroen Automobiles Sa METHOD AND DEVICE FOR MONITORING ALARM, OF ORGANS BELONGING TO AT LEAST ONE MULTIPLEX NETWORK, BY COUNTING INTEMPESTIVE REVERSES
GB0901343D0 (en) 2009-01-28 2009-03-11 Fireangel Ltd Improvements in and relating to alarms
US20100201530A1 (en) * 2009-02-12 2010-08-12 James David Wende System And Method For Carbon Monoxide Detection And Warning
US8232884B2 (en) 2009-04-24 2012-07-31 Gentex Corporation Carbon monoxide and smoke detectors having distinct alarm indications and a test button that indicates improper operation
US8836532B2 (en) 2009-07-16 2014-09-16 Gentex Corporation Notification appliance and method thereof
US20110057806A1 (en) * 2009-09-09 2011-03-10 Universal Security Instruments, Inc Hazardous Condition Detector with Hardware Hush
CN101853007A (en) * 2010-06-18 2010-10-06 上海贝岭股份有限公司 Smoke detection control circuit
US8175884B1 (en) 2011-02-08 2012-05-08 Gary Jay Morris Environmental condition detector with validated personalized verbal messages
KR101774299B1 (en) * 2011-06-08 2017-09-06 한국전자통신연구원 apparatus for firing alarm and smoke sensor using the same
US11017656B2 (en) 2011-06-27 2021-05-25 Invue Security Products Inc. Programmable security system and method for protecting merchandise
US8810387B2 (en) * 2011-11-02 2014-08-19 Apollo America Inc. Method and apparatus for the inspection, maintenance and testing of alarm safety systems
US9448186B2 (en) * 2011-12-08 2016-09-20 Gulfstream Aerospace Corporation System and method for determining a concentration of gas in a confined space
US8947244B2 (en) 2012-04-29 2015-02-03 Valor Fire Safety, Llc Smoke detector utilizing broadband light, external sampling volume, and internally reflected light
US9140646B2 (en) 2012-04-29 2015-09-22 Valor Fire Safety, Llc Smoke detector with external sampling volume using two different wavelengths and ambient light detection for measurement correction
US8907802B2 (en) 2012-04-29 2014-12-09 Valor Fire Safety, Llc Smoke detector with external sampling volume and ambient light rejection
WO2015065965A1 (en) 2013-10-30 2015-05-07 Valor Fire Safety, Llc Smoke detector with external sampling volume and ambient light rejection
WO2015126984A2 (en) * 2014-02-18 2015-08-27 Etón Corporation Multi-functional device having at least the ability to detect the presence of a substance
US9799175B2 (en) 2014-05-06 2017-10-24 White Stagg, Llc Signal device with indirect lighting signal
WO2016081188A1 (en) 2014-11-18 2016-05-26 Invue Security Products Inc. Key and security device
AU2016259984B2 (en) * 2015-05-13 2021-09-02 Beyer, Peter Ernest MR Lighting system with integrated smoke detector
US10726700B2 (en) 2016-01-04 2020-07-28 Theodore F. Economy Modular carbon monoxide poisoning prevention system
CN110462299B (en) * 2017-04-06 2022-08-09 开利公司 Medium to low global warming potential refrigerant leak detector and method of operating the same
CN208737642U (en) * 2018-07-12 2019-04-12 宁德时代新能源科技股份有限公司 Smog warning system
US11210923B2 (en) 2018-09-14 2021-12-28 Carrier Corporation Carbon monoxide monitoring system suitable for unconditioned spaces
CN112466094A (en) * 2019-09-09 2021-03-09 黄一轩 Intelligent area acousto-optic alarm control system
TWI798623B (en) * 2020-01-20 2023-04-11 台灣百應生物科技股份有限公司 Optical detector for detecting gas and suspended matter therein
USD949724S1 (en) * 2021-07-15 2022-04-26 Alan Mandelberg Safely button

Family Cites Families (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1154128A (en) 1914-11-10 1915-09-21 William Rich Apparatus for indicating fires in compartments at a distance.
US2153568A (en) 1937-05-11 1939-04-11 Inez L Cragin Gas detection apparatus
US3027552A (en) 1957-02-21 1962-03-27 Peter H Landis Alarm apparatus for gas testing, particularly carbon monoxide
US3027522A (en) 1958-06-23 1962-03-27 Lenkurt Electric Co Inc Double balanced transistor modulator
US3114610A (en) 1961-05-17 1963-12-17 Martin Marietta Corp Continuous sampling gas analyzer
US3276004A (en) 1963-04-29 1966-09-27 Du Pont Apparatus for detecting gas
US3305852A (en) 1963-12-09 1967-02-21 Dow Chemical Co Cumulative detector for chlorine gas
US3445669A (en) 1966-07-14 1969-05-20 Gen Marine Radiation sensitive carbon monoxide detector
US3577222A (en) 1968-11-15 1971-05-04 Armstrong Cork Co Carbon monoxide detector
US3790348A (en) 1972-03-22 1974-02-05 Mine Safety Appliances Co Apparatus for determining the carbon monoxide, methane and total hydrocarbons content in air
CH546989A (en) 1972-12-06 1974-03-15 Cerberus Ag METHOD AND DEVICE FOR FIRE NOTIFICATION.
US3860919A (en) 1973-12-26 1975-01-14 Funck Donald E Smoke and gas detection and alarm apparatus
US3970431A (en) 1974-01-23 1976-07-20 Stanford Research Institute Carbon monoxide gas detector
US4043934A (en) 1974-07-24 1977-08-23 The Regents Of The University Of California Catalyst and method for oxidizing reducing gases
US4064507A (en) 1975-05-29 1977-12-20 Westinghouse Electric Corporation Noise generator circuit for a security system
US4030887A (en) 1976-06-18 1977-06-21 Mine Safety Appliances Company Carbon monoxide detection apparatus and method
US4088986A (en) 1976-10-01 1978-05-09 Boucher Charles E Smoke, fire and gas alarm with remote sensing, back-up emergency power, and system self monitoring
US4443791A (en) 1978-01-05 1984-04-17 Risgin Ojars Self-compensating gas detection apparatus
USRE30620E (en) 1978-07-03 1981-05-19 P. R. Mallory & Co. Inc. High output smoke and heat detector alarm system utilizing a piezoelectric transducer and a voltage doubling means
US4225860A (en) 1979-01-15 1980-09-30 Pittway Corporation Sensitivity controlled dual input fire detector
US4401978A (en) 1979-02-21 1983-08-30 The Gamewell Corporation Combination detector
US4231249A (en) 1979-03-20 1980-11-04 Sierra Labs, Inc. Apparatus and methods for monitoring concentrations of toxic substances in a work environment
DE2924367A1 (en) 1979-06-16 1980-12-18 Bayer Ag METHOD AND DEVICE FOR INDIVIDUALLY MONITORING THE EXPOSURE OF PERSONS BY DANGEROUS GASES
US4316184A (en) 1979-07-27 1982-02-16 Pittway Corporation Combination combustion-products detector
US4297689A (en) 1980-01-08 1981-10-27 Interscan Corporation Personnel-carried dosimeter
US4327575A (en) * 1980-03-24 1982-05-04 Locker Laurence D Monitoring apparatus and method for toxic vapors
EP0039761A3 (en) 1980-05-09 1981-11-25 Cerberus Ag Fire annunciating arrangement and method
JPS56168149A (en) 1980-05-29 1981-12-24 Toyota Motor Corp Detecting method for content of carbon monoxide
JPS58162851A (en) 1982-03-24 1983-09-27 Hitachi Ltd Detecting apparatus of gas
US4453222A (en) * 1982-04-19 1984-06-05 Exide Electronics Corporation Emergency device employing programmable vocal warning commands
DE3217798A1 (en) 1982-05-12 1983-11-24 Hans-Jörg Dipl.-Kfm. 4400 Münster Hübner METHOD AND MEASURING DEVICE FOR MEASURING AND PROCESSING SIZES OF THE AMBIENT ATMOSPHERES, ESPECIALLY UNDERGROUND
US4803052A (en) 1982-09-30 1989-02-07 The Babcock & Wilcox Company Carbon monoxide detector
US4595914A (en) * 1983-04-11 1986-06-17 Pittway Corporation Self-testing combustion products detector
US4683463A (en) 1984-02-21 1987-07-28 Nohmi Bosai Kogyo Co., Ltd. Gas and fire alarm and control system for semiconductor factories or the like
US4617277A (en) 1984-03-23 1986-10-14 The Babcock & Wilcox Company Process and apparatus for monitoring ambient carbon monoxide
US4647914A (en) * 1984-07-20 1987-03-03 Mitsubishi Electric America, Inc. Security apparatus and system
JPS6139194A (en) 1984-07-31 1986-02-25 ホーチキ株式会社 Fire alarm
US4710631A (en) * 1984-08-28 1987-12-01 Fuji Photo Film Co., Ltd. Temperature compensation for a semiconductor light source used for exposure of light sensitive material
US4688021A (en) 1986-03-11 1987-08-18 Bdc Electronics Combined smoke and gas detection apparatus
US4790857A (en) 1986-11-20 1988-12-13 Miksch Robert R Gaseous contaminant dosimeter with diffusive material for regulating mass uptake
US4860223A (en) 1987-09-24 1989-08-22 Rule Industries, Inc. Carbon monoxide health hazard monitor
US4904878A (en) * 1988-08-12 1990-02-27 Caterpillar Inc. Multi-point refractive liquid level sensor
WO1990001759A1 (en) * 1988-08-12 1990-02-22 Pioneer Data, Inc. Smoke detector with voice alert
US5369397A (en) 1989-09-06 1994-11-29 Gaztech International Corporation Adaptive fire detector
US5121101A (en) 1989-10-10 1992-06-09 Jakubowski Peter J Apparatus and method for a smoke alarm device with integrated testing circuits
CH681932A5 (en) 1990-12-04 1993-06-15 Cerberus Ag
US5289824A (en) * 1991-12-26 1994-03-01 Instromedix, Inc. Wrist-worn ECG monitor
US5289165A (en) * 1992-03-26 1994-02-22 Belin William B Smoke alarm apparatus
US5276434A (en) 1992-04-03 1994-01-04 Brooks Elgin C Carbon monoxide concentration indicator and alarm
US5331310A (en) 1992-04-06 1994-07-19 Transducer Research, Inc. Amperometric carbon monoxide sensor module for residential alarms
JP3128633B2 (en) 1992-05-25 2001-01-29 能美防災株式会社 Ionized smoke detector
AU653684B2 (en) 1992-11-04 1994-10-06 Nohmi Bosai Ltd Smoke detecting apparatus for fire alarm
US5280273A (en) 1992-12-21 1994-01-18 Goldstein Mark K Toxic gas detector system having convenient battery and sensor replacement
US5471194A (en) 1993-03-23 1995-11-28 Aritech Corporation Event detection system with centralized signal processing and dynamically adjustable detection threshold
GB2280295A (en) * 1993-07-19 1995-01-25 Benedict Chaplin Spencer Portable smoke detector
US5486811A (en) 1994-02-09 1996-01-23 The United States Of America As Represented By The Secretary Of The Navy Fire detection and extinguishment system
US5420440A (en) * 1994-02-28 1995-05-30 Rel-Tek Corporation Optical obscruation smoke monitor having a shunt flow path located between two access ports
US5594422A (en) * 1994-05-19 1997-01-14 Comsis Corporation Universally accessible smoke detector
US5596314A (en) * 1994-08-01 1997-01-21 Quantum Group, Inc. Enclosure for a gas detector system
AUPM744794A0 (en) 1994-08-15 1994-09-08 Garrick, Gilbert Alain Lindsay Smoke alarm system with standby battery and elv reactive primary power supply
US5573953A (en) 1994-09-09 1996-11-12 Quantum Group, Inc. Method for enhancing the response of a biomimetic sensor
US5633501A (en) 1995-06-07 1997-05-27 Pittway Corporation Combination photoelectric and ionization smoke detector
JP2728199B2 (en) 1995-07-26 1998-03-18 工業技術院長 Method for producing nickel-cobalt composite oxide film for carbon monoxide gas sensor
DE19539227C2 (en) * 1995-10-21 1999-09-23 Alstom Sachsenwerk Gmbh Tester with a display element
US6027693A (en) 1997-04-25 2000-02-22 Brk Brands, Inc. Sealed replaceable sensor
USD396820S (en) * 1997-11-13 1998-08-11 Wallace Otis M Combined fire detector and carbon monoxide detector
TW369197U (en) * 1998-01-02 1999-09-01 Everday Technology Co Ltd Detecting alarm
US5939981A (en) * 1998-01-28 1999-08-17 Renney; Marjorie Item locator with attachable receiver/transmitter

Cited By (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7508314B2 (en) * 2004-10-18 2009-03-24 Walter Kidde Portable Equipment, Inc. Low battery warning silencing in life safety devices
US20060082464A1 (en) * 2004-10-18 2006-04-20 Walter Kidde Portable Equipment, Inc. Low battery warning silencing in life safety devices
DE102005001369B4 (en) * 2005-01-11 2015-08-27 Dorma Deutschland Gmbh Automatic door operator with a slide rail and a smoke detector
US20080303677A1 (en) * 2005-04-01 2008-12-11 Fireangel Limited Alarm Apparatus and Adaptor
US7377147B1 (en) * 2006-10-23 2008-05-27 3M Innovative Properties Company Testing performance of gas monitors
US20080173066A1 (en) * 2006-10-23 2008-07-24 3M Innovative Properties Company Testing performance of gas monitors
US7497108B2 (en) 2006-10-23 2009-03-03 3M Innovative Properties Company Gas monitor testing apparatus, method, and system
US7805974B2 (en) * 2006-10-23 2010-10-05 3M Innovative Properties Company Testing performance of gas monitors
US20080101198A1 (en) * 2006-10-31 2008-05-01 Van Brocklin Andrew L Device and method for maintaining optical energy density on a storage medium
US20100085200A1 (en) * 2007-03-13 2010-04-08 Thorn Security Limited Detector
US8154415B2 (en) * 2007-03-13 2012-04-10 Simplexgrinnell Lp Detector
US20100042333A1 (en) * 2007-04-02 2010-02-18 3M Innovative Properties Company System, method and computer network for testing gas monitors
US20110200310A1 (en) * 2008-04-30 2011-08-18 Eugenio Montoro Corral Heating system
US20130169430A1 (en) * 2011-12-28 2013-07-04 Joe Shook Apparatus and method for smoke detection & alarm
US9007222B2 (en) 2012-09-21 2015-04-14 Google Inc. Detector unit and sensing chamber therefor
US9875631B2 (en) 2012-09-21 2018-01-23 Google Llc Detector unit and sensing chamber therefor
US9460600B2 (en) 2012-09-21 2016-10-04 Google Inc. Detector unit and sensing chamber therefor
WO2014150284A1 (en) * 2013-03-15 2014-09-25 Nest Labs, Inc. Detector unit and sensing chamber
US20150022026A1 (en) * 2013-07-18 2015-01-22 Google Inc. Power quality differentiation in hazard detection systems
US9964973B2 (en) * 2013-07-18 2018-05-08 Google Llc Power quality differentiation in hazard detection systems
US20170263112A1 (en) * 2013-10-07 2017-09-14 Google Inc. Smart-home device providing follow up communications to condition detection events
US20150096352A1 (en) * 2013-10-07 2015-04-09 Google Inc. Smart-home system facilitating insight into detected carbon monoxide levels
US10991213B2 (en) 2013-10-07 2021-04-27 Google Llc Smart-home device installation guidance
US10546469B2 (en) * 2013-10-07 2020-01-28 Google Llc Smart-home system facilitating insight into detected carbon monoxide levels
US10529195B2 (en) 2013-10-07 2020-01-07 Google Llc Smart-home device installation guidance
US9691258B2 (en) * 2013-10-07 2017-06-27 Google Inc. Smart hazard detector providing follow up communications to detection events
US20160104366A1 (en) * 2013-10-07 2016-04-14 Google Inc. Smart Hazard Detector Providing Follow Up Communications to Detection Events
US10403127B2 (en) * 2013-10-07 2019-09-03 Google Llc Smart-home device providing follow up communications to condition detection events
US10121364B2 (en) * 2013-10-07 2018-11-06 Google Llc Smart-home device providing follow up communications to condition detection events
US10049280B2 (en) 2013-10-07 2018-08-14 Google Llc Video guidance for smart-home device installation
US9117360B1 (en) * 2014-06-06 2015-08-25 Fred Conforti Low battery trouble signal delay in smoke detectors
US10375356B2 (en) 2015-02-06 2019-08-06 Google Llc Systems, methods, and devices for managing coexistence of multiple transceiver devices by optimizing component layout
US10812762B2 (en) 2015-02-06 2020-10-20 Google Llc Systems, methods, and devices for managing coexistence of multiple transceiver devices by optimizing component layout
US9794522B2 (en) 2015-02-06 2017-10-17 Google Inc. Systems, methods, and devices for managing coexistence of multiple transceiver devices by optimizing component layout
US9679454B2 (en) 2015-02-06 2017-06-13 Google Inc. Systems, methods, and devices for managing coexistence of multiple transceiver devices using control signals
WO2016186924A1 (en) * 2015-05-20 2016-11-24 Roost, Inc. Battery-powered device with a self-test mode
US9396633B1 (en) 2015-06-14 2016-07-19 Google Inc. Systems, methods, and devices for managing coexistence of multiple transceiver devices by optimizing component layout
US9543998B2 (en) 2015-06-14 2017-01-10 Google Inc. Systems, methods, and devices for managing coexistence of multiple transceiver devices using bypass circuitry
US9923589B2 (en) 2015-06-14 2018-03-20 Google Llc Systems, methods, and devices for managing coexistence of multiple transceiver devices using bypass circuitry
US20180075733A1 (en) * 2015-06-18 2018-03-15 Hochiki Corporation Fire notification system and testing method therefor
US10360789B2 (en) * 2015-06-18 2019-07-23 Hochiki Corporation Fire notification system and test method using test jig therefor
US11122398B2 (en) 2016-05-13 2021-09-14 Google Llc Systems, methods, and devices for utilizing radar-based touch interfaces
US10798539B2 (en) 2016-05-13 2020-10-06 Google Llc Systems, methods, and devices for utilizing radar with smart devices
US10687184B2 (en) 2016-05-13 2020-06-16 Google Llc Systems, methods, and devices for utilizing radar-based touch interfaces
US10613213B2 (en) 2016-05-13 2020-04-07 Google Llc Systems, methods, and devices for utilizing radar with smart devices
US11272335B2 (en) 2016-05-13 2022-03-08 Google Llc Systems, methods, and devices for utilizing radar with smart devices
US11516630B2 (en) 2016-05-13 2022-11-29 Google Llc Techniques for adjusting operation of an electronic device
US10803732B2 (en) * 2016-10-12 2020-10-13 Tyco Fire & Security Gmbh Smoke detector remote test apparatus
US20200035088A1 (en) * 2016-10-12 2020-01-30 Tyco Fire & Security Gmbh Smoke Detector Remote Test Apparatus
WO2020146484A1 (en) * 2019-01-10 2020-07-16 Dana Eubanks Carbon monoxide purge system for a property
US11624519B2 (en) 2019-01-10 2023-04-11 Object Video Labs, LLC Carbon monoxide purge system for a property
US11855446B2 (en) 2020-04-03 2023-12-26 FireAvert, LLC Remote device management

Also Published As

Publication number Publication date
US20040021576A1 (en) 2004-02-05
CA2303274A1 (en) 1999-02-18
WO1999008246A1 (en) 1999-02-18
EP1004106A4 (en) 2004-09-08
EP1004106A1 (en) 2000-05-31
US6819252B2 (en) 2004-11-16
US6426703B1 (en) 2002-07-30
AU8898298A (en) 1999-03-01

Similar Documents

Publication Publication Date Title
US6426703B1 (en) Carbon monoxide and smoke detection apparatus
US5969600A (en) Dangerous condition warning device incorporating a time-limited hush mode of operation to defeat an audible low battery warning signal
US5886638A (en) Method and apparatus for testing a carbon monoxide sensor
US5966079A (en) Visual indicator for identifying which of a plurality of dangerous condition warning devices has issued an audible low battery warning signal
MXPA02004467A (en) Carbon monoxide emitting apparatus, carbon monoxide monitor shutoff, and circuit therefor.
CA2584498C (en) Low battery warning silencing in life safety devices
US5526280A (en) Method and system for gas detection
US6987459B2 (en) Portable combustible gas detector
CA1115372A (en) Multi-function combustion detecting device
US4225860A (en) Sensitivity controlled dual input fire detector
US6396405B1 (en) Automatic verification of smoke detector operation within calibration limits
EP0624797B1 (en) Monitoring gaseous oxygen concentration
WO1981001765A1 (en) Self-checking photoelectric smoke detector
US4227191A (en) Light emitting smoke detector
US6687005B2 (en) Combustible gas detector and method for operating same
US8066859B2 (en) Electrochemical carbon monoxide sensor supervision
US6081195A (en) System for monitoring operability of fire event sensors
US4164937A (en) Equipment for detecting, monitoring, measuring, displaying and recording pulse and heartbeat
CA2140585C (en) Sensitivity test system for photoelectric smoke detector
US6351212B1 (en) System for monitoring operability of fire event sensors
US5896091A (en) Dangerous condition warning device incorporating a replaceable sensor and apparatus to prevent the sensor from being improperly installed
EP0462642A1 (en) Optical smoke, aerosol and dust detector and fire detector apparatus with optical detector
EP1037183B1 (en) A gas sensing alarm device
WO1996000900A1 (en) Apparatus and methods for monitoring carbon disulphide
GB2397422A (en) Portable warning device

Legal Events

Date Code Title Description
AS Assignment

Owner name: GENERAL ELECTRIC CAPITAL CORPORATION, GEORGIA

Free format text: INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNORS:COLEMAN COMPANY, INC., THE;COLEMAN POWERMATE, INC.;BRK BRANDS, INC.;AND OTHERS;REEL/FRAME:014027/0767

Effective date: 20021213

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: GENERAL ELECTRIC CAPITAL CORPORATION, GEORGIA

Free format text: INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNORS:COLEMAN COMPANY, INC., THE;BRK BRANDS, INC.;SUNBEAM PRODUCTS, INC.;AND OTHERS;REEL/FRAME:015000/0188

Effective date: 20021213