Patent Description:
Fluid dispensing systems typically deliver quantities of fluid to one or more components within the system. In certain fields, fluid dispensing systems may deliver small quantities of fluid. For example, in the medical field, a fluid dispensing system may be used to deliver small quantities of fluid into a patient's vascular system. However, in certain other fields, fluid dispensing systems may deliver larger quantities of fluid. For example, in a large-scale hotel or other laundry or restaurant facility, a fluid dispensing system may need to deliver large quantities of detergent, rinse agent, bleach or other cleaning agents on a continual basis.

In fluid delivery systems where large quantities of fluid are delivered, the fluid is usually supplied automatically. In such systems, the supply source (such as a bottle) and fluid delivery medium (such as a supply tube) are frequently integrated with the device to which the fluid is delivered, such as a warewasher or a laundry machine. This makes it more difficult for the operator to check on the remaining amount of the fluid remaining in the supply source and often results in the system running out of fluid during a cleaning cycle. Additionally, even if an out-of-product alarm is employed, the properties of many fluids, including those used in ware washing, result in frequent false alarms.

Document <CIT> discloses an out-of-product alarm system comprising a sensor assembly connected to a fluid delivery medium, the sensor assembly comprising an emitter that directs light into the fluid delivery medium in which presence or absence of a product is to be determined; a detector that generates a detector output based on detection of light transmitted through the fluid delivery medium; and a sensor controller that determines an out-of-product state within the fluid delivery medium based on a comparison of the detector output to an out-of-product threshold, and a system controller configured to generate at least one of a visual alarm and a sound alarm indicating that an out-of-product event is determined. Document <CIT> further discloses to execute a corrective action in response to the alarm cycle.

In general, the present invention relates to an out-of-product alarm system that employs an optical detection sensor that detects the presence or absence of a product in a fluid delivery medium. For example, in a fluid dispensing system in which one or more products are delivered, one or more such sensors may be utilized to detect presence or absence of product within the fluid delivery medium. The system detects presence or absence of product in the fluid dispensing system and provides an out-of-product alert when an out-of-product event is determined. The system prevents false out-of-product alarms by accounting for fluid properties of the product and for functionality issues with the fluid dispensing system.

The present invention is directed to an out-of-product alarm process including initiating an out-of-product check by sending a signal to a controller from an optical sensor assembly connected to a fluid delivery medium for delivering a product to a fluid dispensing site, performing an out-of-product check, running an alarm cycle with the controller after receipt of an out-of-product signal, and executing a corrective action. Performing the out-of-product check includes directing light into the fluid delivery medium, generating a detector output based on detected light within the fluid delivery medium, determining an out-of-product state within the fluid delivery medium based on a comparison of the detector output to an out-of-product threshold, starting an out-of-product timer, when the out-of-product state is determined, and determining an out-of-product event when the out-of-product timer reaches a threshold out-of-product time period.

In another example, the out-of-product alarm system includes a fluid dispensing system with a product reservoir, a fluid dispensing site, and a fluid delivery medium for delivering a product from the product reservoir to the fluid dispensing site. The out-of-product alarm system also includes a sensor assembly connected to the fluid delivery medium. The sensor assembly includes an emitter that directs light into the fluid delivery medium in which presence or absence of a product is to be determined, a detector that generates a detector output based on detection of light transmitted through the fluid delivery medium, and a sensor controller that determines an out-of-product state within the fluid delivery medium based on a comparison of the detector output to an out-of-product threshold. The out-of-product alarm system also includes an out-of-product timer configured to start when the out-of-product state is determined by the sensor controller, and a system controller configured to generate at least one of a visual alarm and a sound alarm when the out-of-product timer reaches a threshold out-of-product time period, indicating that an out-of-product event is determined.

The present invention is directed to an out-of-product alarm process including initiating an out-of-product check by sending a signal to a controller from an optical sensor assembly connected to a fluid delivery medium for delivering a product to a fluid dispensing site, performing an out-of-product check, running an alarm cycle with the controller after receipt of an out-of-product signal, and executing a corrective action in response to the alarm cycle. Performing the out-of-product check includes directing light into the fluid delivery medium, generating a detector output based on detected light within the fluid delivery medium, determining an out-of-product state within the fluid delivery medium based on a comparison of the detector output to an out-of-product threshold, starting an out-of-product timer, when the out-of-product state is determined, and determining an out-of-product event when the out-of-product timer reaches a threshold out-of-product time period.

The out-of-product alarm process also includes performing a product present check and canceling the alarm cycle, stopping and resetting the out-of-product timer upon determination of a product present event; and canceling the alarm cycle upon determination of the product present event. The product present check includes directing light into the fluid delivery medium, generating a detector output based on detected light within the fluid delivery medium, determining a product present state within the fluid delivery medium based on a comparison of the detector output to a product present threshold, starting a product present timer, if the product present timer has not already been started, when a product present state is determined, and determining a product present event when the product present timer reaches a threshold product present time period.

The following detailed description is exemplary in nature and is not intended to limit the scope, applicability, or configuration of the disclosure in any way. Rather, the following description provides some practical illustrations for implementing examples of the present disclosure. Examples of constructions, materials, dimensions, and manufacturing processes are provided for selected elements, and all other elements employ that which is known to those of ordinary skill in the field of the disclosure. Those skilled in the art will recognize that many of the noted examples have a variety of suitable alternatives.

<FIG> is a diagram illustrating an example out-of-product system 100A and an optical detection sensor assembly <NUM> that detects presence and/or absence of a product to be dispensed. Out-of-product system 100A includes system controller <NUM>, dispensing controller <NUM>, pump <NUM> and product reservoir <NUM>. Pump <NUM> draws the product from reservoir <NUM> and delivers the product to dispensing site <NUM>. Pump <NUM> draws product from product reservoir <NUM> through an input fluid delivery medium <NUM> and supplies fluid to dispensing site <NUM> via an output fluid delivery medium <NUM>. Product reservoir <NUM> may contain any one of a multitude of different types of products having varying degrees of transparency and/or turbidity.

Dispensing controller <NUM> can communicate with pump <NUM> via connection <NUM>. In some examples, pump <NUM> draws the product from reservoir <NUM> or stops pumping under the control of dispensing controller <NUM>. In other examples, system controller <NUM> can communicate with dispensing controller <NUM> via connection <NUM>. In those examples, dispensing controller <NUM> is under the control of system controller <NUM>, and dispensing controller <NUM> directs pump <NUM> to draw product or stop pumping product from reservoir <NUM>. In other examples, system controller <NUM> can communicate directly with pump <NUM> via a connection <NUM>. Depending upon the application, system controller <NUM> or dispensing controller <NUM> may communicate with dispensing site <NUM> via another connection (not shown).

System controller <NUM> includes processor <NUM>, user interface <NUM>, memory <NUM> and alerts <NUM>. In some examples, system 100A can include multiple system controllers <NUM>. Signals generated by sensor assembly <NUM> can be communicated to system controller <NUM> via connection <NUM>. Connection <NUM> may transmit a digital or analog signal. Connection <NUM> may include, for example, a standard I2C connection. However, any appropriate connection/communication channel known in the art may be used. System controller <NUM> can further include at least one external connection <NUM> such as an internet, telephone, wireless or other connection for achieving external communication.

Memory <NUM> stores software for running system controller <NUM> and also stores data that is generated or used by processor <NUM>. Processor <NUM> runs software stored in memory <NUM> to manage operation of system controller <NUM>. According to the invention, processor <NUM> runs an out-of-product timer. Moreover, according to the invention, processor <NUM> also runs a product present timer. User interface <NUM> may be as simple as a few light emitting diodes (LEDs) and/or user actuatable buttons or may include a display, a keyboard or keypad, mouse or other appropriate mechanisms for communicating with a user.

Dispensing site <NUM> may be an end use location of the product or may be some other intermediate location. For example, when out-of-product system 100A is used in a commercial laundry or kitchen application, dispensing site <NUM> may be a washing machine or warewashing machine, in which case the product(s) may be dispensed into an on-unit dispense mechanism or directly into the wash environment. In that example, the product(s) dispensed may include laundry or dish detergent, fabric softener, bleach, sanitizer, rinse agent, etc. As another example, when fluid dispensing system is used in a hotel, business, industrial or other application in which service employees perform cleaning duties, dispensing site <NUM> may be a bucket, pail or other vessel into which the product(s) are dispensed. Dispensing site <NUM> may also be a hose or other tubing from which the fluid(s) is directed to a desired location. It shall be understood that out-of-product system 100A may be used in many different applications in which fluid is dispensed and that the disclosure is not limited in this respect. Examples of applications in which out-of-product system 100A may be used include laundry applications, dishwashing applications, commercial cleaning operations, food preparation and packaging applications, industrial processes, healthcare applications, vehicle care applications, and others known in the art.

Input fluid delivery medium <NUM> and output fluid delivery medium <NUM> may be implemented using any type of flexible or inflexible tubing, depending upon the application. This tubing may be transparent, translucent, braided or other type of tubing. The tubing may be made of polyethylene, ethylene-vinyl acetate, polytetrafluoroethylene, or any other suitable material. For simplicity and not by limitation, input fluid delivery medium <NUM> and output fluid delivery medium will be referred to herein as "input tubing <NUM>" and "output tubing <NUM>," respectively. Input tubing <NUM>, output tubing <NUM> and pump <NUM> may be referred to herein as a "dispensing channel. " Pump <NUM> may be any form of pumping mechanism that supplies fluid from product reservoir <NUM> to dispensing site <NUM>. For example, pump <NUM> may comprise a peristaltic pump or other form of continuous pump, a positive-displacement pump or other type of pump appropriate for the particular application.

In the example system shown in <FIG>, sensor assembly <NUM> is positioned to detect presence and/or absence of product within input tubing <NUM>. In operation, when fluid dispensing system attempts a dispensing cycle from a product reservoir <NUM> that has product remaining, input tubing <NUM> will likewise contain product. In some examples, sensor assembly <NUM> continuously sends signals to system controller <NUM>, and system controller <NUM> interprets those signals to determine product presence or absence within input tubing <NUM>. Over time, as operation continues and more and more product is dispensed, product reservoir <NUM> becomes substantially empty. Because product is no longer available to dispense, input tubing <NUM> will likewise become substantially empty. When system controller <NUM> determines that an out-of-product event has occurred based on the signals from sensor assembly <NUM>, system controller <NUM> may generate an out-of-product alert.

For purposes of the present description, an "out-of-product event" is defined as an event in which system controller <NUM> detects an absence of fluid within input tubing <NUM>. In some embodiments, the "out-of-product event" is determined with respect to one or more predefined out-of-product thresholds, such as a threshold time period. When system controller <NUM> detects an out-of-product event, system controller <NUM> generates alerts <NUM>, including a visual and/or audible out-of-product alert (such as text or graphics with without accompanying sound, etc.) displayed on user interface <NUM>. Alternatively or in addition, system controller <NUM> may initiate and send an out-of-product message service call (such as via pager, e-mail, text message, etc.) to a technical service provider via external connection <NUM>.

When an alert <NUM> is activated to indicate an out-of-product event, a user (such as an employee or service technician) may manually refill product reservoir <NUM>. In this embodiment, the user may temporarily halt or shutdown operation of system 100A before refilling product reservoir <NUM>. In one example, the user may do this by entering commands into dispensing controller <NUM> to stop operation of pump <NUM> and/or dispensing site <NUM>. In another example, the user may do this by entering control commands via user interface <NUM> of system controller <NUM> to silence audible and/or visual alerts <NUM> for a period of time. In another example, the user may do this by entering control commands via user interface <NUM> of system controller <NUM> to stop operation of pump <NUM> and/or dispensing site <NUM>. In another example, the user may manually shut off pump <NUM> and/or dispensing site <NUM>. After the user has refilled product reservoir <NUM>, the user may manually re-start pump <NUM> and/or dispensing site <NUM>, may enter control commands into dispensing controller <NUM> to restart pump <NUM> and/or dispensing site <NUM>, or may enter control commands via user interface <NUM> to cause system controller <NUM> to send control signals via connection <NUM> to re-start pump <NUM> and/or dispensing site <NUM>. System controller <NUM> may further re-set, or clear, alerts <NUM> at the appropriate time (for example, after being manually cleared by a user, after product reservoir <NUM> has been refilled or system 100A is restarted).

In response to an out-of-product event, system controller <NUM> may automatically stop pump <NUM> and/or dispensing site <NUM> when an out-of-product event is detected, or system controller may send a signal to dispensing controller <NUM> to automatically stop pump <NUM> and/or dispensing site <NUM>. In one example, system controller <NUM> may send control signals to pump <NUM> and/or dispensing site <NUM> across connections <NUM> to temporarily stop operation of the corresponding components without user intervention. System controller <NUM> may then re-start pump <NUM> and/or dispensing site <NUM> after receiving input from the user that product reservoir <NUM> has been re-filled. In another example, system controller may send control signals to dispensing controller <NUM> to temporarily stop pump <NUM> and/or dispensing site <NUM> without user intervention. System controller may then send signals to dispensing controller <NUM> to re-start pump <NUM> and/or dispensing site <NUM> after receiving input from the user that product reservoir <NUM> has been re-filled. In yet another example, only dispensing controller <NUM> is coupled to pump <NUM> and/or dispensing site <NUM>, and system controller <NUM> does not communicate with dispensing controller <NUM>, pump <NUM>, or dispensing site <NUM>. Alternatively, system controller <NUM> or dispensing controller <NUM> may initiate an automatic refill cycle after which the out-of-product alert would be cleared and the system started again.

Sensor assembly <NUM> or system controller <NUM> may also generate a visual indicator that indicates presence of fluid within input tubing <NUM>. For example, a light of one color, such as green, may be used to indicate that product reservoir <NUM> has product remaining, while a light of another color, such as red or blinking, may be used to indicate that product reservoir <NUM> is empty and needs to be refilled.

<FIG> is a diagram illustrating another example out-of-product system 100B. Out-of-product system 100B dispenses multiple products. To that end, out-of-product system 100B includes multiple product channels (A-N), each having associated product reservoirs 103A-103N, pumps 102A-102N, system controller <NUM> and dispensing sites 105A-105N. Pumps 102A-102N are included in pump assembly <NUM>. Pumps 102A-102N draw in fluid from a respective product reservoir 103A-103N through an input tubing 120A-120N, and supply fluid to one of dispensing sites 105A-105N through output tubing 122A-122N. Each product reservoir 103A-103N may contain any of a multitude of different types of products having varying transparency and/or turbidity. Optical detection sensor assemblies 200A-200N detect presence and/or absence of the product dispensed in the respective each dispensing channel.

Although the example out-of-product system 100B shown in <FIG> shows each dispensing channel as having its own dedicated product reservoir <NUM>, input tubing <NUM>, output tubing <NUM>, pump <NUM>, destination site <NUM> and sensor assembly <NUM>, it shall be understood that there need not be a one to one correspondence for each dispensing channel. For example, sensor assemblies 200A-200N may be implemented in a single unit through which the input tubing for each dispensing channel is routed. Alternatively, various combinations of one channel per sensor or two or more channels per sensors may also be used and the disclosure is not limited in this respect.

Likewise, the example pump assembly <NUM> of <FIG> includes multiple pumps 102A-102N, one for each dispensed product. It shall be understood, however, that there need not be a one to one correspondence between pumps 102A-102N and the dispensing channels. For example, some dispensed products may share one or more pumps, which are switched from one dispensed product to another under control of system controller <NUM>. The pump or pumps 102A-102N provide fluid to the appropriate dispensing site <NUM> from one of product reservoirs 103A-103B.

It shall also be understood that any of sensor assemblies 200A-200N may also be positioned to detect presence and/or absence of product within output tubing 122A-122N rather than input tubing 120A-120N as shown in <FIG>, and that the location of sensor assemblies 200A-200N may be more a matter of convenience than of system performance.

In some examples, system controller <NUM> can be coupled to dispensing controller <NUM> or pump assembly <NUM> via connection <NUM>. Through connection <NUM>, system controller <NUM> is able to communicate with pump assembly <NUM> and/or dispensing controller <NUM> to effectively control operation of each individual pump <NUM> (e.g., to temporarily stop or start operation, as described previously in reference to <FIG>). Depending upon the application, system controller <NUM> may also communicate with one or more dispensing sites 105A-105N. In other examples, only dispensing controller <NUM> is coupled to pump assembly <NUM> and dispensing controller <NUM> controls the function of pumps 102A-102N and/or dispensing sites 105A-105N.

Each sensor assembly 200A-200N detects presence and/or absence of fluid within the corresponding input tubing 120A-120N. System controller <NUM> is coupled to each sensor 206A-200N via a corresponding connection 116A-116N. System controller <NUM> monitors the signals received from each sensor assembly 200A-200N, and may respond as described above to any detected out-of-product events. For example, system controller <NUM> may generate a visual or audible alert <NUM> or display a message on user interface <NUM> if system controller detects one or more out-of-product events. The visual or audible alert <NUM> and/or message displayed on user interface <NUM> and/or message sent via pager, e-mail or text message, etc. would indicate which of product reservoirs 103A-103N is empty, thus informing a user which product reservoir needs to be filled. In some examples, system controller <NUM> may also automatically temporarily stop and then re-start the pump 102A-102N corresponding to the empty product reservoir 103A-103N and/or may initiate an automatic refill cycle of the empty product reservoir as described above. In other examples, pumps 102A-102N and/or dispensing sites 105A-105N may be stopped and re-started automatically or manually, with or without communication from system controller <NUM> and/or dispensing controller <NUM>, as described with respect to <FIG> above.

Although in <FIG> each sensor assembly is shown with a dedicated connection to system controller <NUM>, it shall be understood that sensor assemblies 200A-200N may be connected to communicate with system controller <NUM> in any of several different ways. For example, sensors 200A-200N may be connected to system controller <NUM> in a daisy-chain fashion. In this example, system controller <NUM> is coupled directly to a first sensor assembly 200A via connection 116A and each subsequent sensor assembly 200B-200N is coupled the next sensor assembly, etc. A communication protocol to identify and communicate separately with each sensor assembly 200A-200N may also be used. It shall be understood, however, that this disclosure is not limited with respect to the particular architecture by which sensor assemblies 200A-200N are connected with and communicate with system controller <NUM> and that the system may be set up in many different ways known to those of skill in the art.

<FIG> is a block diagram illustrating an example embodiment of a sensor assembly <NUM> that detects presence and/or absence of a product to be dispensed. Sensor assembly <NUM> includes sensor <NUM>, enclosure <NUM>, sensor controller <NUM>, memory <NUM>, and output interface <NUM>. Sensor <NUM> includes tubing connector <NUM>, optical emitter <NUM>, and optical detector <NUM>. In one example, sensor <NUM> can be an OPTEK OPB350 optical sensor. Sensor assembly <NUM> may also include optional indicator <NUM>. Sensor assembly <NUM> communicates with external devices, such as system controller <NUM> or other sensors via output interface <NUM>.

Enclosure <NUM> contains all of the components of sensor assembly <NUM>. In one example, enclosure <NUM> can be sealed from the external environment. Enclosure <NUM> protects the components of sensor assembly <NUM> from components of the external environment that could cause the sensor to malfunction, such as dust or liquid. In another example, enclosure <NUM> can be liquid tight. In other examples, enclosure <NUM> can be transparent so that the internal components, particularly indicator <NUM>, of sensor assembly <NUM> are visible to the user.

Memory <NUM> stores software and data used or generated by sensor controller <NUM>. As will be discussed in more detail below, memory may store baseline detection values produced by detector <NUM> and processed by sensor controller <NUM>. During operation of sensor assembly <NUM>, sensor controller <NUM> may control indicator <NUM> based upon information received from optical detector <NUM>. For example, upon detection of an out-of-product state, sensor controller <NUM> may cause indicator <NUM> to generate a visual or audible alert. For purposes of this disclosure, "out-of-product state" is defined as a determination by sensor assembly <NUM> that sensor <NUM> has detected an absence of product in tubing <NUM> based on at least one detection value produced by detector <NUM>. "Product present state" is defined as a determination by sensor assembly <NUM> that sensor <NUM> has detected present of product in tubing <NUM> based on at least one detection value produced by detector <NUM>.

In one example, sensor controller <NUM> can send a binary signal via connector <NUM> to system controller <NUM> based on whether sensor <NUM> has detected a product present state or an out-of-product state. In another example, sensor controller <NUM> can send the raw output from detector <NUM> to system controller <NUM>, which can process the raw output. In another example, sensor controller <NUM> can determine if an out-of-product event has occurred due to the presence of an out-of-product state for a predetermined time period, and sensor controller <NUM> can send an out-of-product message to an external device, such as system controller <NUM>, via connector <NUM>.

Optical emitter <NUM> includes at least one optical emitter that emits radiation having a specified wavelength range. Emitter <NUM> may emit light within a narrow-band of wavelengths or a relatively broader range of wavelengths. Emitter <NUM> may also emit light having varying wavelength over time. In one example, emitter <NUM> emits light within the visible spectrum. Light within the visible spectrum includes wavelengths in the range from <NUM> to <NUM>. One example of such an emitter is a light-emitting diode (LED). In another example, several individual LEDs placed in close proximity could also be used. Light emitted by emitter <NUM> propagates through tubing that runs through tubing connector <NUM> of sensor <NUM> and may be detected by one or more optical detectors <NUM>. The amount of radiation detected by detectors <NUM> depends on the contents of the tubing running through tubing connector <NUM> and also on the type of tubing. If the tubing contains liquid product, detectors <NUM> will detect a certain level of radiation emitted from emitter <NUM>. However, if the tubing is substantially empty, detectors <NUM> may detect a different amount of radiation emitted from emitter <NUM>.

Optical detectors <NUM> include at least one optical detector that detects radiation within associated wavelength ranges within the visible light spectrum. Detectors <NUM> may be implemented using multiple detectors, one for each wavelength range or may be implemented using a detector or detectors that are programmable to detect multiple wavelength ranges. The terms "detector" and "detectors" will therefore be used interchangeably herein.

Detector <NUM> detects radiation that is emitted by emitter <NUM> and that has propagated through tubing running through sensor <NUM> (via tubing connector <NUM>). For example, detector <NUM> may include a photodetector that detects visible light within a single wavelength or in a wavelength ranges. It shall be understood, however, that detector <NUM> may include multiple detectors for detecting light in multiple wavelengths or wavelength ranges, and that the wavelength ranges chosen for both the emitter <NUM> and the detector <NUM> may depend upon the transparency and/or turbidity of the products to be detected by sensor <NUM>.

Sensor controller <NUM> controls operation of emitter <NUM> and receives signals concerning the amount of light detected from detectors <NUM>. Sensor controller <NUM> executes an emitter program <NUM> to control emitter <NUM>, and executes detection program <NUM> to process signals received from detector <NUM>. In one example, the signals received from detector <NUM> can be outputted as a voltage. In other examples, the signals received from detector <NUM> can be outputted as a current or a percentage of light transmittance. If detection program <NUM> detects an out-of-product state, it may activate indicator <NUM>. In one embodiment, detection program <NUM> may also initiate indicator <NUM> if it confirms presence of fluid within the tubing.

In one example, sensor controller <NUM> initiates emitter program <NUM> and detection program <NUM> to create baseline detection data when product is present and/or when product is absent. When an external controller, such as system controller <NUM>, is informed of a product present state or an out-of-product state within tubing <NUM>, system controller <NUM> may send a baseline command to sensor assembly <NUM> (via connector <NUM>) to cause generation of such baseline data. System controller <NUM> may be so informed, for example, via manual input from a user. When sensor controller <NUM> processes the baseline command, it will execute emitter program <NUM> to emit light and also execute detection program <NUM> to obtain baseline data from detector <NUM>. Upon receipt of the baseline detection data from detector <NUM>, controller <NUM> may store the baseline data within memory <NUM>. If multiple detectors are used within detectors <NUM>, signals for each detector may be stored in memory <NUM>. Such baseline data may later be used for normalization purposes when attempting to determine absence and/or presence of fluid within the tubing.

Using the procedure describe above, sensor <NUM> can be calibrated prior to use in order to establish a baseline product presence state and a baseline empty state. In one example, sensor <NUM> can be calibrated with empty tubing to establish just a baseline empty state. This allows sensor <NUM> to be used with a variety of different products without having to recalibrate sensor <NUM> when switching from one product to another. In another example, sensor <NUM> can be calibrated with empty tubing to establish a baseline empty state and also calibrated with tubing full of product and free of any bubbles to establish a baseline product presence state. In another example, sensor <NUM> can be automatically calibrated when sensor <NUM> is first used. Based on the baseline empty state and/or the baseline product presence state, the user can choose a threshold out-of-product state. The out-of-product threshold is predetermined and stored in memory <NUM>. In some examples, the out-of-product threshold may be determined empirically based upon experimental test data or upon expert knowledge that has been stored within memory <NUM>. In other examples, the out-of-product threshold may be determine automatically based on the output of sensor <NUM> when sensor <NUM> is turned on for the first time with empty tubing.

Optical detector <NUM> detects the amount of emission radiated by emitter <NUM> propagated through tubing and the contents of the tubing. Controller <NUM> compares the amount of light received by detector <NUM> to the baseline data. Changes from the baseline data that satisfy a threshold may be caused by air present in the tubing, such as when product reservoir <NUM> is substantially empty and no product is available. Accordingly, some changes that satisfy a threshold may be indicative of an out-of-product state. However, not all changes from the baseline are due to an out-of-product state. For example, ambient lighting conditions, product and tubing variation, off-gassing of bubbles, small leaks in tubing, and batch-to-batch variation of a single product can all contribute to or create significant variation from the baseline which can trigger false positive out-of-product events. Some embodiments include additional features to avoid such instances.

In addition, in some embodiments, sensor controller <NUM> may scale the detection signal so that sensor-to-sensor variation can be eliminated. Often, the absolute output generated by one sensor unit may vary when compared to the absolute output generated by a second sensor unit even when testing an identical substance under identical conditions. Thus, as used in this application, the term "detector output" should be interpreted to include both raw detection signals, and scaled detector output.

Sensor controller <NUM> processes the detector output received from detector <NUM>. Detection program <NUM> compares a detector outputs with at least one out-of-product threshold to determine a product present state or an out-of-product state within tubing <NUM>. In some embodiments, sensor controller <NUM> accounts for false positive and false negatives in order to obtain a more accurate determination of a product present state or an out-of-product state. For example, off-gassing of bubbles from priming pump <NUM> or a small leak in tubing <NUM> could falsely indicate an out-of-product state. Sensor controller <NUM> can account for such situations by determining whether the output from detector <NUM> satisfies an out-of-product threshold for at least a predetermined filter time.

In some examples, the filter time can be between <NUM> milliseconds and <NUM> milliseconds. In other examples, the filter time can be <NUM> milliseconds. If sensor controller <NUM> determines that an out-of-product threshold is satisfied for the predetermined filter time, sensor controller <NUM> determines an out-of-product state. If a bubble is present for only a few milliseconds, the out-of-product threshold will not be satisfied for the predetermined filter time, and sensor controller <NUM> will determine a product present state. Sensor controller <NUM> can similarly account for situations where product coats or films the inside of tubing <NUM> and falsely indicates a product present state. Sensor assembly <NUM> will recognize coating or filming as a large bubble and correctly determine an out-of-product state.

In some examples, sensor controller <NUM> sends signals via output interface <NUM> to system controller <NUM> indicating out-of-product states and product present states. System controller <NUM> processes these signals to determine whether an out-of-product event has occurred that requires an out-of-product alarm to be triggered. In other examples, sensor controller <NUM> itself determines whether an out-of-product event has occurred and sends an out-of-product event signal to system controller <NUM> indicating that an out-of-product alarm should be triggered. An out-of-product event is determined when an out-of-product state is present for a predetermined out-of-product threshold time period, as described in further detail below in <FIG>.

<FIG> is a flow diagram illustrating an example out-of-product alarm process (<NUM>). The process (<NUM>) starts by initiating an out-of-product check (<NUM>), which may include sending a signal from sensor assembly <NUM> to system controller <NUM>. In one example, to perform an out-of-product event check (<NUM>), sensor assembly <NUM> scans fluid delivery medium <NUM> and sends signals to system controller <NUM> indicating product present states or product absence states. System controller <NUM> processes the signals from sensor assembly <NUM> to determine whether or not an out-of-product event has occurred. In another example, sensor assembly <NUM> determines whether an out-of-product event has occurred and sends an out-of-product event signal to system controller <NUM>. This procedure is described in further detail in relation to <FIG> below.

If an out-of-product event is not detected (<NUM>), then the process (<NUM>) starts over by initiating an out-of-product check again (<NUM>). If an out-of-product event is detected, a corrective action is initiated and/or an out-of-product alarm cycle is run (<NUM>). The alarm cycle may include a visual alarm on sensor assembly <NUM> and/or system controller <NUM>, as well as a sound alarm generated by system controller <NUM>. In one example, the visual alarm may be a flashing red LED on sensor assembly <NUM> and/or a flashing red LED on system controller <NUM>. The alarm cycle is described in further detail in relation to <FIG> below.

In some examples, initiating a corrective action (<NUM>) includes only running an alarm cycle. In these examples, a visual and/or audible alarm alerts a user to take corrective action and pump <NUM> and equipment at dispensing site <NUM> continue running without product. In other examples, independently from or in addition to running an alarm cycle, initiating a corrective action (<NUM>) may include sending a signal from system controller <NUM> or dispensing controller <NUM> to pump <NUM> and/or dispensing site <NUM> in order to initiate shut off of pump <NUM> and/or dispensing site <NUM>. In other examples, independently from or in addition to running an alarm cycle, initiating a corrective action (<NUM>) may include sending a signal to a user through external connection <NUM> to inform the user that a corrective action needs to be taken.

In response to the alarm cycle and/or initiation of a corrective action (<NUM>), a corrective action is taken (<NUM>). In some examples, a user may manually shut off pump <NUM> and/or dispensing site <NUM>, and replace or refill product reservoir <NUM>. In other examples, pump <NUM> and/or equipment at dispensing site <NUM> may be automatically shut off in response to a signal from system controller <NUM>, and a user may subsequently replace or refill product reservoir <NUM>. In other examples, product reservoir <NUM> may be replaced or refilled automatically.

In one example, simultaneously with or after initiating a corrective action (<NUM>), system controller <NUM> sends a signal to sensor assembly <NUM> to initiate a product present check (<NUM>). In another example, sensor assembly <NUM> initiates a product present check (<NUM>) itself. The product present check (<NUM>) determines if a corrective action has been taken such that product is again present in fluid delivery medium <NUM>.

In one example, to perform a product present event check (<NUM>), sensor assembly <NUM> scans fluid delivery medium <NUM> and sends signals to system controller <NUM> indicating product present states or product absence states. System controller <NUM> processes the signals from sensor assembly <NUM> to determine whether or not determine whether or not a product present event has occurred. In another example, sensor assembly <NUM> determines whether a product present event has occurred, and sends a product present event signal to system controller <NUM>. This procedure is described in further detail in relation to <FIG> below. If a product present event is not detected, the product present check is initiated again (<NUM>). If a product present event is detected, the alarm cycle is cancelled and normal operation is resumed (<NUM>).

In some examples, canceling the alarm cycle (<NUM>) includes sending a signal with system controller <NUM> to turn off a visual alarm on sensor assembly <NUM> and/or system controller <NUM>, and/or sending a signal to turn off an audible alarm on system controller <NUM>. In other examples, canceling the alarm cycle (<NUM>) includes manually turning off a visual alarm on sensor assembly <NUM> and/or system controller <NUM>, and/or manually turning off an audible alarm on system controller <NUM>. In some examples, resuming normal operation (<NUM>) includes sending a signal to pump <NUM> and/or dispensing site <NUM> to turn on pump <NUM> and/or equipment at dispensing site <NUM>. In other examples, resuming normal operation (<NUM>) includes manually turning on pump <NUM> and/or equipment at dispensing site <NUM>. In other examples, when pump <NUM> and/or equipment at dispensing site <NUM> are not shut off in response to an out-of-product alarm, normal operation is resumed once product reservoir <NUM> has been refilled or replaced. Once normal operation is resumed (<NUM>), the process (<NUM>) starts over by initiating an out-of-product check (<NUM>).

<FIG> is a flow diagram illustrating an example out-of-product event determination process (<NUM>) employed in the out-of-product alarm process (<NUM>) of <FIG>. The out-of-product event determination process (<NUM>) is a process by which sensor assembly <NUM> and/or system controller <NUM> detects absence of a product within fluid delivery medium <NUM> for an out-of-product threshold time period. Emitter <NUM> directs light into fluid delivery medium <NUM> in which presence of product is to be determined (<NUM>). As described above, emitter <NUM> may include, for example, an LED that emits light in the visible wavelength range.

Detector <NUM> generates a detector output (<NUM>) based upon detection of light transmitted through fluid delivery medium <NUM>. For example, detector <NUM> may include a detector that generates a detector output corresponding to emitted light within a wavelength range transmitted through fluid delivery medium <NUM>. Detectors <NUM> may also include additional detectors that generate detector outputs based on an amount of light received in additional wavelength ranges. In one example, the signals received from detector <NUM> can be outputted as a voltage. In other examples, the signals received from detector <NUM> can be outputted as a current or a percentage of light transmittance.

Sensor controller <NUM> executes detection program <NUM> to compare the detector output with at least one corresponding out-of-product threshold to determine absence of product within the fluid delivery medium (<NUM>). In one example, in order to satisfy the out-of-product threshold, a bubble must be present in fluid delivery medium <NUM>. In another example, in order to satisfy the out-of-product threshold, a bubble must be present in fluid delivery medium <NUM> for more than a predetermined filter time (described above with respect to <FIG>). If the detector output satisfies its corresponding out-of-product threshold(s) (<NUM>), an out-of-product timer is started. In one example, system controller <NUM> receives a signal from sensor controller <NUM> indicating that an out-of-product state exists in fluid delivery medium <NUM>, and system controller <NUM> starts an out-of-product timer. In another example, sensor controller <NUM> starts the out-of-product timer after determining an out-of-product state exists.

In one example, once the out-of-product timer is started, system controller <NUM> simultaneously checks for a product present event (described in <FIG> below) and checks to see if the out-of-product threshold time period has been satisfied. In another example, sensor assembly <NUM> performs the simultaneous checks. In determining whether the out-of-product threshold time period has been satisfied, sensor assembly <NUM> continues to direct light into fluid delivery medium <NUM> (<NUM>), generate a detector output (<NUM>), and compare the detector output to a corresponding out-of-product threshold (<NUM>). In one example, detector <NUM> of sensor <NUM> generates a detector output every <NUM> milliseconds.

If the detector output continuously satisfies its corresponding out-of-product threshold for the threshold out-of-product time period (<NUM>), an out-of-product event is determined (<NUM>). In one example, system controller <NUM> determines an out-of-product event and sends a signal to initiate a corrective action (<NUM>). In another example, external connector <NUM> of sensor assembly <NUM> sends an out-of-product signal to system controller <NUM> to trigger the alarm cycle and initiate corrective action (<NUM>). In one example, the threshold out-of-product time period is thirty seconds. According to the invention, the threshold out-of-product time period is between fifteen seconds and forty-five seconds. In another embodiment, the threshold out-of-product time period may be between twenty-five seconds and thirty-five seconds. In another example, the user may set the threshold out-of-product time period by entering control commands via user interface <NUM> of system controller <NUM>. In one example, in order to "continuously" satisfy the out-of-product threshold, the detector output must satisfy the out-of-product threshold at least once every <NUM> milliseconds or once every ten scans from sensor <NUM>. In another example, if a product present event occurs (<NUM>) after the out-of-product timer is started, the timer is stopped and reset (<NUM>), and sensor assembly <NUM> continues to scan fluid delivery medium <NUM> for an out-of-product state.

Typical out-of-product alarm systems trigger an out-of-product alarm upon the detection of a single bubble in a fluid delivery medium. The out-of-product determination process (<NUM>) of this disclosure is advantageous, because it prevents false out-of-product alarms. As described above, system controller <NUM> or sensor assembly <NUM> can be programmed with an appropriate threshold out-of-product time period. The threshold out-of-product time period can be based on the properties of the fluid delivered through fluid delivery medium <NUM>. Some fluids produce bubbles as they travel through a fluid delivery medium, but unless the bubbles are continuous, they are not an indication of absence of product in the fluid delivery medium. The out-of-product event determination process (<NUM>) of this disclosure accounts for such fluids, as requiring sensor assembly <NUM> to detect absence of product for a threshold out-of-product time period prevents system controller <NUM> from triggering a false alarm and shutting off pump <NUM> and/or dispensing site <NUM>. The out-of-product event determination process (<NUM>) also allows for early detection of an out-of-product event by requiring a product present event to occur in order to shut off the out-of-product timer.

<FIG> is a flow diagram illustrating an example product present event determination process (<NUM>) employed in the out-of-product alarm process (<NUM>) of <FIG>. The product present determination event process (<NUM>) is process by which sensor assembly <NUM> and/or system controller <NUM> detects presence of a product within fluid delivery medium <NUM>. The product present determination process (<NUM>) is substantially similar to the out-of-product event determination process (<NUM>) of <FIG>. Emitter <NUM> directs light into fluid delivery medium <NUM> in which presence of product is to be determined (<NUM>).

Detector <NUM> generates a detector output (<NUM>) based upon detection of light transmitted through fluid delivery medium <NUM>. Sensor controller <NUM> executes detection program <NUM> to compare the detector output with at least one corresponding product present threshold to determine presence of product within the fluid delivery medium (<NUM>). In one example, in order to satisfy the product present threshold, fluid delivery medium cannot contain a bubble larger than one inch. In another example, in order to satisfy the product present threshold, a bubble cannot be present in the fluid delivery medium for longer than a predetermined filter time (described above with respect to <FIG>).

If the detector output satisfies its corresponding product present threshold(s) (<NUM>), a product present timer is started. In one example, system controller <NUM> receives a signal from sensor controller <NUM> indicating that a product present state exists in fluid delivery medium <NUM>, and system controller <NUM> starts a product present timer. In another example, sensor controller <NUM> starts the product present timer after determining a product present state. Once the product present timer is started, sensor assembly <NUM> continues to direct light into fluid delivery medium <NUM> (<NUM>), generate a detector output (<NUM>), and compare the detector output to a corresponding product present threshold (<NUM>). According to the invention, detector <NUM> of sensor <NUM> generates a detector output every <NUM> milliseconds.

If the detector output continuously satisfies its corresponding product present threshold for a threshold product present time period (<NUM>), a product present event is determined (<NUM>). In one example, system controller <NUM> determines a product present event and send a signal to trigger cancelation of the alarm cycle and resume normal operation (<NUM>). In another example, external connector <NUM> of sensor assembly <NUM> sends a signal to system controller <NUM> to trigger cancelation of the alarm cycle and resume normal operation (<NUM>). In one example, the threshold product present time period is three seconds. In other embodiments, the threshold product present time period may be between ten milliseconds and five seconds. In another embodiment, the threshold product present time period may be between two seconds and four seconds. In another example, the user may set the threshold product present time period by entering control commands via user interface <NUM> of system controller <NUM>. In one example, in order to "continuously" satisfy the product present threshold, the detector output must satisfy the product present threshold at least once every <NUM> milliseconds or once every ten scans from sensor <NUM>. If the detector output does not satisfy the product present threshold or if the product present threshold time period is not satisfied, the timer is reset and sensor assembly <NUM> continues to scan fluid delivery medium <NUM> for a product present state.

The product present event determination process (<NUM>) of this disclosure is advantageous, because it allows for early detection of an out-of-product event. By setting a product present threshold time period, an out-of-product event can be determined when there are bubbles present more frequently than the product present threshold time period. For example, if the product present threshold time period is three seconds and bubbles are present every two seconds, an out-of-product event can still be determined even though bubbles are not continuously present. This is advantageous because it can prevent the dispensing system from running with less than the desired amount of product.

<FIG> is a flow diagram illustrating an example out-of-product alarm cycle (<NUM>) employed in the out-of-product alarm process (<NUM>) of <FIG>. Once an out-of-product state is determined (<NUM>) in the out-of-product alarm process (<NUM>), a visual alarm and/or a sound alarm can be turned on (<NUM>). In one example, the visual alarm may be a red LED on system controller <NUM> and/or on sensor <NUM>, and the sound alarm may be generated by system controller <NUM>. In some examples, a mute button is available on system controller <NUM>, and a user can press the mute button to turn off the sound alarm once it has been initiated.

Once the alarm has been turned on, if a mute button is available on system controller <NUM>, system controller <NUM> checks to see if the mute button is pressed (<NUM>). If system controller <NUM> determines that the mute button has been pressed, system controller <NUM> turns off the sound alarm, and the LED alarm(s) on system controller <NUM> and/or sensor assembly <NUM> continue to flash (<NUM>). In some examples, system controller <NUM> can be programmed to turn the sound alarm back on after a mute timeout period. In those examples, system controller <NUM> checks to see if the mute timeout period has passed (<NUM>). In some examples, the mute timeout period is between fifteen minutes and two hours. In other example, the mute timeout period is between forty-five minutes and one and a half hours. In another example, the mute timeout period is one hour. If the mute timeout period has passed, system controller <NUM> turns the sound alarm back on and the LED alarm(s) on system controller <NUM> and/or sensor assembly <NUM> continue to flash (<NUM>). In another example, the user may set the mute timeout period by entering control commands via user interface <NUM> of system controller <NUM>. If the mute timeout period has not passed, system controller <NUM> turns off the sound alarm if it is not already off, and the LED alarm(s) on system controller <NUM> and/or sensor assembly <NUM> continue to flash (<NUM>). In other examples, if the mute button is pressed, both the sound and visual alarms can be turned off.

In some examples, system controller <NUM> can be programmed to turn off the sound alarm after an alarm timeout period. In those examples, system controller <NUM> checks to see if the alarm timeout period has passed (<NUM>). In some examples, the alarm timeout period is between fifteen minutes and two hours. In other example, the alarm timeout period is between forty-five minutes and one and a half hours. In another example, the alarm timeout period is one hour. In another example, the user may set the alarm timeout period by entering control commands via user interface <NUM> of system controller <NUM>. If the alarm timeout period has passed, system controller <NUM> turns the sound alarm off and the LED alarm(s) on system controller <NUM> and/or sensor assembly <NUM> continue to flash (<NUM>). If the alarm timeout period has not passed, system controller <NUM> turns on the sound alarm if it is not already on, and the LED alarm(s) on system controller <NUM> and/or sensor assembly <NUM> continue to flash (<NUM>). In other examples, if the alarm timeout period has passed, both the sound and visual alarms can be turned off.

<FIG> are graphs illustrating examples of detector outputs indicating product presence of clear and opaque products. As described above, sensor <NUM> can be calibrated prior to use in order to establish a baseline product presence state and a baseline empty state. Sensor <NUM> can be calibrated with empty tubing to establish a baseline empty state and also calibrated with tubing full of product and free of any bubbles to establish a baseline product presence state. Based on the baseline empty state and the baseline product presence state, the user can choose a threshold out-of-product state.

<FIG> show output signals of sensor <NUM> in voltage versus time. <FIG> includes clear product threshold <NUM> and output voltage <NUM>. Output voltage <NUM> shows a baseline empty tube state, as well as a baseline product presence state. As described above, clear product threshold <NUM> may be selected by a user and stored in memory <NUM> of sensor assembly <NUM>. With clear product threshold <NUM> established, when output voltage <NUM> is above clear product threshold <NUM>, sensor assembly <NUM> determines that product is present in fluid delivery medium <NUM>. Likewise, when output voltage <NUM> is below clear product threshold <NUM>, sensor assembly <NUM> determines that product is absent from fluid delivery medium <NUM> and/or fluid delivery medium <NUM> is an empty tube.

<FIG> includes opaque product threshold <NUM> and output voltage <NUM>. Output voltage <NUM> shows a baseline empty tube state, as well as a baseline product presence state. As described above, clear product threshold <NUM> may be selected by a user and stored in memory <NUM> of sensor assembly <NUM>. With opaque product threshold established, when output voltage <NUM> is below opaque product threshold <NUM>, sensor assembly <NUM> determines that product is present in fluid delivery medium <NUM>. Likewise, when output voltage <NUM> is above opaque product threshold <NUM>, sensor assembly <NUM> determines that product is absent from fluid delivery medium <NUM> and/or fluid delivery medium <NUM> is an empty tube.

<FIG> are graphs illustrating examples of detector outputs indicating product absence, including an out-of-product event that triggers an out-of-product alarm. <FIG> show output signals of sensor <NUM> in voltage versus time. <FIG> include out-of-product threshold <NUM> and output voltage <NUM>. In <FIG>, output voltage <NUM> shows a baseline product present state, as well as detector outputs which satisfy out-of-product threshold <NUM>. As described above, out-of-product threshold <NUM> may be selected by a user and stored in memory <NUM> of sensor assembly <NUM>.

As shown in <FIG>, when output voltage <NUM> is above out-of-product threshold <NUM>, sensor assembly <NUM> determines a product present state in fluid delivery medium <NUM>. Likewise, when output voltage <NUM> is below out-of-product threshold <NUM>, sensor assembly <NUM> determines an out-of-product state in fluid delivery medium <NUM>. As described above in reference to <FIG>, when the detector output satisfies the out-of-product threshold, an out-of-product timer is started either by system controller <NUM> or sensor controller <NUM>. As shown in <FIG>, if output voltage <NUM> is continuously below out-of-product threshold <NUM> for a threshold out-of-product time period, an out-of-product event occurs and an out-of-product alarm is triggered. This could occur, for example, due to a near-out-of-product state in which a mixture of liquid and air would be drawn into the fluid delivery medium from the product reservoir until the level of liquid in the product reservoir drops low enough that substantially only air is drawn into the fluid delivery medium. In <FIG>, the threshold out-of-product time period is thirty seconds. As described above, the threshold out-of-product time period can be selected, for example, based on the fluid properties of the product.

<FIG> is a graph illustrating an example of binary digital output <NUM> based on the detector output in <FIG>. In some examples, system controller <NUM> receives the detector signal from sensor assembly <NUM> as a binary output or receives the detector signal and converts the signal to a binary output, where a voltage of <NUM> indicates a product present state and a voltage of <NUM> indicates an out-of-product state. If an out-of-product state is present for a threshold out-of-product time period, system controller <NUM> determines that an out-of-product event has occurred and an out-of-product alarm is triggered. In another example, sensor controller <NUM> can convert the detector signal to a binary output and upon determination of an out-of-product event, sends a signal to system controller <NUM> to trigger an out-of-product alarm.

<FIG> are graphs illustrating examples of detector outputs indicating the presence of bubbles in a fluid delivery medium, where the bubbles are insufficient to trigger an out-of-product alarm. <FIG> show output signals of sensor <NUM> in voltage versus time. <FIG> include out-of-product threshold <NUM> and output voltage <NUM>. In <FIG>, output voltage <NUM> shows a baseline product present state, as well as detector outputs which satisfy out-of-product threshold <NUM>. As described above, out-of-product threshold <NUM> may be selected by a user and stored in memory <NUM> of sensor assembly <NUM>. As shown in <FIG>, when output voltage <NUM> is above out-of-product threshold <NUM>, sensor assembly <NUM> determines a product present state in fluid delivery medium <NUM>. Likewise, when output voltage <NUM> is below out-of-product threshold <NUM>, sensor assembly <NUM> determines an out-of-product state in fluid delivery medium <NUM>.

As described above in reference to <FIG>, when the detector output satisfies the out-of-product threshold, a timer is started either by system controller <NUM> or sensor controller <NUM>. In some examples, as shown in <FIG>, a single bubble is not enough to trigger the timer. In these examples, sensor assembly <NUM> may determine that the single bubble does not meet a threshold filter time to indicate an out-of-product state sufficient to trigger the timer. As described above, a single bubble could occur, for example, due to off-gassing of a bubble from the product or due to a small leak in the fluid delivery medium. Once the timer is triggered, in order for system controller <NUM> or sensor controller <NUM> to determine an out-of-product event, however, the detector output must be continuously below out-of-product threshold <NUM> for a threshold out-of-product time period. As shown in <FIG>, if system controller <NUM> or sensor controller <NUM> detects product presence for a threshold product present time period while the out-of-product timer is running, the out-of-product timer will be reset. This could occur, for example, if the product reservoir is low on product but not at an out-of-product state or a near-our-of-product state. In the example shown in <FIG>, after the out-of-product timer is triggered, when product presence is detected for at least three seconds, the out-of-product timer resets. As described above, the threshold product present time period can be selected, for example, based on the fluid properties of the product.

<FIG> is a graph illustrating an example of binary digital output <NUM> based on the detector output in <FIG>. In some examples, system controller <NUM> receives the detector signal as a binary output from sensor assembly <NUM> or converts the signal from sensor assembly <NUM> to a binary output, where a voltage of <NUM> indicates a product present state and a voltage of <NUM> indicates an out-of-product state. If an out-of-product state is present, an out-of-product timer is triggered. However, if product is present for a threshold product present time period while the out-of-product time is running, the out-of-product timer will be reset. In another example, sensor controller <NUM> can convert the detector signal to a binary output, start an out-of-product timer if an out-of-product state is determined, and reset the out-of-product timer if a product present state is detected for a threshold product present time period.

<FIG> also shows what occurs when sensor assembly <NUM> filters small bubbles like the small bubble shown in <FIG>. Sensor assembly <NUM> may determine that a single bubble does not meet a threshold filter time to indicate an out-of-product state, and as a result, the binary output shown in <FIG> will reflect a product present state. If a single bubble meets the threshold filter time to indicate an out-of-product state, the binary output shown in <FIG> will reflect an out-of-product state.

Claim 1:
An out-of-product alarm system (100A) comprising:
- a sensor assembly (<NUM>) connected to a fluid delivery medium (<NUM>), the sensor assembly (<NUM>) comprising:
an emitter (<NUM>) that directs light into the fluid delivery medium (<NUM>) in which presence or absence of a product is to be determined;
a detector (<NUM>) that generates a detector output based on detection of light transmitted through the fluid delivery medium (<NUM>); and
a sensor controller (<NUM>) that determines an out-of-product state within the fluid delivery medium (<NUM>), based on a comparison of the detector output to an out-of-product threshold, and a product-present state within the fluid delivery medium (<NUM>) based on a comparison of the detector output to a product-present threshold;
- an out-of-product timer configured to start when the out-of-product state is determined by the sensor controller (<NUM>);
- a product-present timer configured to start when the product-present state is determined by the sensor controller (<NUM>); and
- a system controller (<NUM>) configured to generate at least one of a visual alarm and a sound alarm when the out-of-product timer reaches a threshold out-of-product time period, indicating that an out-of-product event is determined.