US20200383643A1 - Sensor signal processing with kalman-based calibration - Google Patents

Sensor signal processing with kalman-based calibration Download PDF

Info

Publication number
US20200383643A1
US20200383643A1 US16/893,084 US202016893084A US2020383643A1 US 20200383643 A1 US20200383643 A1 US 20200383643A1 US 202016893084 A US202016893084 A US 202016893084A US 2020383643 A1 US2020383643 A1 US 2020383643A1
Authority
US
United States
Prior art keywords
analyte
blood
sensor
current
subject
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
US16/893,084
Inventor
Abhinoy Kumar SINGH
Mihailo V. Rebec
Ahmad HAIDAR
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.)
KONAMITE LIMITED
Royal Institution for the Advancement of Learning
Waveform Technologies Inc
Original Assignee
Waveform Technologies 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 Waveform Technologies Inc filed Critical Waveform Technologies Inc
Priority to US16/893,084 priority Critical patent/US20200383643A1/en
Publication of US20200383643A1 publication Critical patent/US20200383643A1/en
Priority to US17/956,642 priority patent/US20230034606A1/en
Assigned to KONAMITE LIMITED reassignment KONAMITE LIMITED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: WAVEFORM HOLDINGS, LLC, WAVEFORM TECHNOLOGIES, INC.
Assigned to WAVEFORM TECHNOLOGIES, INC. reassignment WAVEFORM TECHNOLOGIES, INC. QUITCLAIM ASSIGNMENT Assignors: SINGH, Abhinoy Kumar, HAIDAR, AHMAD
Assigned to THE ROYAL INSTITUTION FOR THE ADVANCEMENT OF LEARNING/MCGILL UNIVERSITY reassignment THE ROYAL INSTITUTION FOR THE ADVANCEMENT OF LEARNING/MCGILL UNIVERSITY ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: SINGH, Abhinoy Kumar, HAIDAR, AHMAD
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/40ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management of medical equipment or devices, e.g. scheduling maintenance or upgrades
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/145Measuring characteristics of blood in vivo, e.g. gas concentration, pH value; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid, cerebral tissue
    • A61B5/14532Measuring characteristics of blood in vivo, e.g. gas concentration, pH value; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid, cerebral tissue for measuring glucose, e.g. by tissue impedance measurement
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/63ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B2560/00Constructional details of operational features of apparatus; Accessories for medical measuring apparatus
    • A61B2560/02Operational features
    • A61B2560/0223Operational features of calibration, e.g. protocols for calibrating sensors
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/145Measuring characteristics of blood in vivo, e.g. gas concentration, pH value; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid, cerebral tissue
    • A61B5/14503Measuring characteristics of blood in vivo, e.g. gas concentration, pH value; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid, cerebral tissue invasive, e.g. introduced into the body by a catheter or needle or using implanted sensors
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/725Details of waveform analysis using specific filters therefor, e.g. Kalman or adaptive filters
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7271Specific aspects of physiological measurement analysis
    • A61B5/7278Artificial waveform generation or derivation, e.g. synthesising signals from measured signals
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/74Details of notification to user or communication with user or patient ; user input means
    • A61B5/742Details of notification to user or communication with user or patient ; user input means using visual displays
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M5/00Devices for bringing media into the body in a subcutaneous, intra-vascular or intramuscular way; Accessories therefor, e.g. filling or cleaning devices, arm-rests
    • A61M5/14Infusion devices, e.g. infusing by gravity; Blood infusion; Accessories therefor
    • A61M5/168Means for controlling media flow to the body or for metering media to the body, e.g. drip meters, counters ; Monitoring media flow to the body
    • A61M5/172Means for controlling media flow to the body or for metering media to the body, e.g. drip meters, counters ; Monitoring media flow to the body electrical or electronic
    • A61M5/1723Means for controlling media flow to the body or for metering media to the body, e.g. drip meters, counters ; Monitoring media flow to the body electrical or electronic using feedback of body parameters, e.g. blood-sugar, pressure
    • 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
    • Y02A90/00Technologies having an indirect contribution to adaptation to climate change
    • Y02A90/10Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation

Definitions

  • Embodiments herein relate to the field of continuous analyte monitoring, and, more specifically, to the calibration of a continuous analyte monitoring system to obtain consistent readings and reduce background artifacts.
  • Blood glucose levels are mainly regulated by a hormone called insulin, secreted from the pancreatic ⁇ -cells.
  • insulin secretion is lost due to an autoimmune process that destroys the ⁇ -cells.
  • Type 1 diabetes can be treated in some examples with life-long insulin replacement therapy that aims at maintaining glucose levels in a tight target range in order to avoid long-term macro- and micro-vascular complications.
  • life-long insulin replacement therapy that aims at maintaining glucose levels in a tight target range in order to avoid long-term macro- and micro-vascular complications.
  • delivering the right amount of insulin can be challenging, due at least in part to the intermittent nature of traditional glucose meters (4-7 measurements per day). For example, glucose levels may often undergo large swings in short periods of time. Such fluctuations may be undetected, resulting in unrecognized hypoglycemia (low glucose levels) and hyperglycemia (high glucose levels) events.
  • continuous glucose monitoring systems have been developed to measure glucose levels at much shorter predetermined intervals (e.g., every 5 minutes or less).
  • Use of such continuous glucose monitoring (CGM) systems can improve one's ability to control glucose levels.
  • CGM systems may be combined with insulin pumps for closed-loop control of insulin delivery. Examples where a CGM system is combined with an insulin pump that receives instructions based on glucose levels monitored by the CGM system may be referred to as artificial pancreas systems.
  • a continuous glucose monitoring system may include a glucose sensor that is implanted under the skin, and which may generate an electrical current proportional to interstitial glucose levels.
  • the sensitivity of such a sensor can vary between individuals, as well as with sensor wear time.
  • sensor calibration is an important aspect of any glucose monitoring system. Calibration methodology may attempt to account for one or more of intra- and inter-individual variability in sensor sensitivity, measurement noise, and a difference between the interstitial and blood (or capillary) compartments.
  • a glucose sensor that is not properly calibrated may result in the reporting of erroneous glucose levels, which may degrade an ability to manage a disease condition related to glucose control.
  • FIG. 1 depicts an example continuous analyte monitoring (CAM) system, including an analyte sensor computing apparatus for calibration of an analyte sensor, in accordance with embodiments herein.
  • CAM continuous analyte monitoring
  • FIG. 2 is a flowchart for a method for estimating an analyte level measured by an analyte sensor of FIG. 1 .
  • FIG. 3 is a block diagram showing a model showing a relationship between blood glucose concentration and analyte sensor current measurements.
  • FIG. 4 is a graph showing a sample current signal generated by a glucose sensor. The graph illustrates high frequency low magnitude noise and low frequency high magnitude noise.
  • FIG. 5 depicts an example of a sequential Kalman filter as used in accordance with the method of FIG. 2 .
  • FIG. 6 is a set of graphs showing estimated blood glucose, reference glucose measurements, and sensor electric current in a sample patient on days 1, 4, and 7 of sensor wear time, the estimated blood glucose obtained via the methodology of FIG. 2 .
  • FIG. 7 is a graph showing Mean Absolute Relative Difference (MARD) of 20 sensor datasets on different days of sensor age.
  • FIG. 8 is a graph showing Mean and Median MARDs when the reference glucose levels are shifted in time with various delay.
  • FIG. 9 is a set of graphs showing probability distributions of blood analyte calibration parameters ⁇ a 1 B , a 2 B and a 3 B ⁇ on different clinical days.
  • Coupled may mean that two or more elements are in direct physical or electrical contact. However, “coupled” may also mean that two or more elements are not in direct contact with each other, but still cooperate or interact with each other.
  • a phrase in the form “A/B” or in the form “A and/or B” means (A), (B), or (A and B).
  • a phrase in the form “at least one of A, B, and C” means (A), (B), (C), (A and B), (A and C), (B and C), or (A, B and C).
  • a phrase in the form “(A)B” means (B) or (AB) that is, A is an optional element.
  • the description may use the terms “embodiment” or “embodiments,” which may each refer to one or more of the same or different embodiments.
  • the terms “comprising,” “including,” “having,” and the like, as used with respect to embodiments are synonymous, and are generally intended as “open” terms (e.g., the term “including” should be interpreted as “including but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes but is not limited to,” etc.).
  • glucose monitoring devices may utilize enzymatic methods to measure glucose concentration and provide sample information.
  • the continuous glucose sensor may comprise a component of a closed loop insulin delivery system and, as such, should be selective, rapid, predictable and acceptable for continuous patient use.
  • a method of estimating an amount of an analyte in blood of a subject comprises receiving, from an analyte sensor placed in interstitial fluid of the subject, a current reflective of an interstitial level of the analyte. The method further includes noise filtering the current to provide a noise filtered current. A first set of one or more blood analyte calibration parameters is estimated based at least in part on the noise filtered current. A second set of one or more interstitial analyte calibration parameters is obtained based at least in part on the first set of one or more blood analyte calibration parameters. The amount of the analyte in the blood of the subject is estimated based on the second set of one or more interstitial analyte calibration parameters and the noise filtered current.
  • noise filtering the current values further comprises filtering out both a low frequency high magnitude noise component and a high frequency low magnitude component.
  • the low frequency high magnitude noise component is filtered heuristically and the high frequency low magnitude component is filtered via Kalman filtering.
  • estimating the first set of one or more blood analyte calibration parameters further comprises deconvoluting the noise filtered current via a sequential Kalman filter to obtain a hypothetical analyte sensor current assuming the analyte sensor is inserted in the blood instead of the interstitial fluid.
  • the first set of one or more blood glucose calibration parameters is estimated based on the hypothetical analyte sensor current using a Kalman filter that uses the hypothetical analyte sensor current as a measurement variable.
  • the method further includes obtaining a capillary blood analyte measurement, where estimating the first set of one or more blood analyte calibration parameters is based on the capillary blood glucose measurement.
  • the method further comprises determining an initial blood analyte calibration parameter state estimate, and a blood analyte calibration parameter covariance, for initialization of the sequential Kalman filter.
  • the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance may be determined using a nonlinear Kalman filter.
  • the nonlinear Kalman filter is a cubature Kalman filter.
  • determining the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance may be based on one or more training data sets.
  • the method may include determining the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance arbitrarily. In another additional or alternative example, determining the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance may be based on one or more prior analyte sensor calibration events.
  • the analyte sensor is a glucose sensor, and the analyte is glucose.
  • an embodiment includes sending one or more instructions to an insulin delivery system for controlling operation of an insulin pump that in turn delivers an appropriate amount of insulin to the subject, where the one or more instructions are based on the estimated amount of analyte in the blood of the subject.
  • the method may further comprise displaying the estimated amount of glucose in the blood of the subject on a display screen associated with the glucose sensor, for viewing by the subject.
  • a system for estimating an amount of an analyte in a subject comprises an analyte sensor, and a mobile computing device.
  • the mobile computing device includes a processor storing instructions in non-transitory memory that, when executed, cause the processor to receive from the analyte sensor a current reflective of an interstitial level of the analyte in the subject, noise filter the current to obtain a noise filtered current, and estimate one or more blood analyte calibration parameters based on the noise filtered current.
  • the instructions further cause the processor to obtain one or more interstitial analyte calibration parameters, and estimate the amount of the analyte in the blood of the subject based on the one or more interstitial analyte calibration parameters and the noise filtered current.
  • the processor stores further instructions in non-transitory memory that, when executed, cause the processor to obtain the noise filtered current by heuristically filtering out a low frequency high magnitude noise component of the current, and by Kalman-based filtering of a high frequency low magnitude noise component of the current.
  • the processor stores further instructions in non-transitory memory that, when executed, cause the processor to deconvolute the noise filtered current via a sequential Kalman filter to obtain a predicted blood analyte sensor current.
  • the instructions when executed, further cause the processor to estimate the one or more blood glucose calibration parameters based on the predicted blood analyte sensor current via a Kalman filter that uses the predicted analyte sensor current as a measurement variable.
  • the processor stores further instructions that, when executed, cause the processor to estimate the one or more blood glucose calibration parameters based on a capillary blood glucose measurement.
  • the processor stores further instructions that, when executed, cause the processor to determine an initial blood analyte calibration parameter state estimate, and an initial blood analyte calibration parameter covariance, and initialize the sequential Kalman filter based on the initial blood analyte calibration parameter state estimate and the initial blood analyte calibration parameter covariance.
  • the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance are determined via a nonlinear Kalman filter.
  • the nonlinear filter may be a cubature Kalman filter.
  • the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance are arbitrarily assigned.
  • the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance are determined based on one or more prior analyte sensor calibration events. In another additional or alternative example, the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance are determined based on one or more training data sets.
  • the analyte sensor is a glucose sensor and the analyte is glucose.
  • the system may further comprise an insulin delivery unit that includes at least an insulin pump and an infusion set.
  • the processor in such an example may store further instructions that, when executed, cause the processor to determine an insulin injection amount for the subject based on the estimated amount of the analyte in the blood of the subject, and send one or more instructions to the insulin delivery unit to control the insulin pump to deliver the insulin injection amount to the subject via the infusion set.
  • the mobile computing device may further comprise a display.
  • the processor may store further instructions that, when executed, cause the processor to provide the amount of the analyte in the blood of the subject in a viewable form on the display, for viewing by the subject.
  • a non-transitory computer-readable storage medium with an executable program stored thereon for calibrating an analyte sensor inserted into the tissue of a subject.
  • the program instructs a microprocessor to perform the steps of receiving from the analyte sensor a current reflective of an interstitial amount of an analyte in the subject, noise filtering the current received from the analyte sensor to provide a noise filtered current, estimating a first set of one or more blood analyte calibration parameters based on the noise filtered current, obtaining a second set of one or more interstitial analyte calibration parameters based on the first set of one or more blood analyte calibration parameters, and estimating an amount of the analyte in the blood of the subject based on the second set of one or more interstitial analyte calibration parameters and the noise filtered current.
  • the program further instructs the microprocessor to filter out low frequency high magnitude noise heuristically and filter out high frequency low magnitude noise via Kalman filtering.
  • the program further instructs the microprocessor to estimate the first set of one or more blood analyte calibration parameters by deconvoluting the noise filtered current via a sequential Kalman filter to obtain a predicted blood analyte sensor current that accounts for interstitial-to-blood analyte diffusion dynamics.
  • the program further instructs the microprocessor to estimate the first set of one or more blood analyte calibration parameters based on the predicted blood analyte sensor current via a Kalman filter that uses the hypothetical analyte sensor current as a measurement variable.
  • the program further instructs the microprocessor to estimate the first set of one or more blood analyte calibration parameters based at least in part on one or more capillary blood analyte measurements.
  • the program further instructs the microprocessor to determine an initial blood analyte calibration parameter state estimate, and an initial blood analyte calibration parameter covariance, for initiation of the sequential Kalman filter.
  • the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance are determined via a nonlinear Kalman filter.
  • the nonlinear Kalman filter may comprise a cubature Kalman filter, in an example.
  • the program further instructs the microprocessor to determining the initial blood analyte calibration parameter state estimate and the blood analyte parameter covariance based on one or more training data sets. In another additional or alternative example, the program instructs the microprocessor to arbitrarily determine the initial blood analyte calibration parameter state estimate and the blood analyte parameter covariance. In another additional or alternative example, the program further instructs the microprocessor to determine the initial blood analyte calibration parameter state estimate and the blood analyte parameter covariance based on one or more prior analyte sensor calibration events.
  • the analyte sensor is a glucose sensor
  • the analyte is glucose
  • the program may further instruct the microprocessor to determine an insulin injection amount for the subject based on the estimated amount of the analyte in the blood of the subject, and provide one or more instructions pertaining to controlling an insulin pump based on the insulin injection amount, the instructions for use via the insulin pump.
  • the program may further instruct the microprocessor to provide one or more instructions for displaying the estimated amount of the analyte in the blood of the subject on a display viewable by the subject.
  • a glucose estimation method that uses Kalman filtering to estimate parameters of an analyte sensor model.
  • the model uses an affine function to describe time-varying sensitivity.
  • a noise-filtered current signal from the analyte sensor is deconvoluted using a sequential Kalman filter, and the deconvoluted signal is then used to obtain blood analyte calibration parameters and in turn, interstitial analyte calibration parameters.
  • the interstitial analyte calibration parameters are then used in conjunction with the noise-filtered current signal to estimate blood glucose level, for example blood glucose concentration.
  • the most recent calibration parameters may serve as priors, which implicitly include information from all previous days and previous capillary glucose measurements.
  • day 1 the day at which the analyte sensor is inserted into tissue of a subject
  • the calibration parameters may be obtained using a computationally-efficient nonlinear cubature Kalman filter applied to historical datasets. As disclosed herein, the performance of the method was applied by testing on twenty sensor datasets collected in real patients over a 7-day period.
  • FIG. 1 disclosed herein is an example networked continuous analyte monitoring (CAM) system 100 , in accordance with embodiments herein.
  • CAM networked continuous analyte monitoring
  • CGM continuous glucose monitoring
  • the networked CAM system 100 includes an analyte sensor computing device 105 in wired or wireless communication with one or more analyte sensing devices 107 via network 115 .
  • the one or more analyte sensing device(s) 107 may also be referred to as analyte sensor(s), or simply, sensors.
  • the analyte sensor(s) comprise glucose sensors
  • the analyte sensor(s) may be referred to as CGM sensor(s), glucose sensors, or simply, sensors.
  • the networked CAM system 100 may also include other networked devices 110 (e.g., laptop, desktop computer, tablet, smartphone, servers, mass storage devices, etc.), which may be in wired or wireless communication with analyte sensor computing device 105 and/or the one or more analyte sensor(s) 107 via network 115 .
  • the analyte sensor computing device 105 includes application software with executable instructions configured to transmit and receive information from network 115 . The information can be transmitted to and/or received from another device, such as one or more networked devices 110 through network 115 .
  • the analyte sensor computing device 105 may also be capable of transmitting information about analyte measurements retrieved from one or more of analyte sensor(s) 107 of a subject to one or more of a doctor, other medical practitioner, and insulin delivery system 170 .
  • the CAM system 100 distributes and receives information to and from one or more networked devices (e.g., analyte sensor computing device 105 , networked devices 110 ) through one or more of network 115 .
  • network 115 may be any network that allows computers to exchange data, for example for cloud based storage of data generated (historical and current) and/or implementation of some, none, or even all of the methods disclosed herein.
  • database 180 Depicted at FIG. 1 is database 180 , which in some examples may comprise cloud-based data storage.
  • network 115 includes one or more network elements (not shown) capable of physically or logically connecting computers.
  • the network 115 may include any appropriate network, including an intranet, the Internet, a cellular network, a local area network (LAN), a wide area network (WAN), a personal network or any other such network or combination thereof. Components used for such a system can depend at least in part upon the type of network and/or environment selected. Protocols and components for communicating via such a network are well known and will not be discussed herein in detail. In embodiments, communication over the network 115 are enabled by wired or wireless connections, and combinations thereof. Network 115 includes a wired or wireless telecommunication means by which network systems may communicate and exchange data.
  • network 115 is implemented as, or may be a part of, a storage area network (SAN), personal area network (PAN), a metropolitan area network (MAN), a local area network (LAN), a wide area network (WAN), a wireless local area network (WLAN), a virtual private network (VPN), an intranet, an Internet, a mobile telephone network, such as Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), CDMAOne, CDMA2000, Evolution-Data Optimized (EV-DO), Enhanced Data Rates for GSM Evolution (EDGE), Universal Mobile Telecommunications System (UMTS), Digital Enhanced Cordless Telecommunications (DECT), Digital AMPS (IS-136/TDMA), and Integrated Digital Enhanced Network (iDEN), Long-Term Evolution (LTE), 3 rd generation mobile network (3G), 4th generation mobile network (4G), and/or 5th generation mobile network (5G) networks, a card network, Bluetooth, near field communication network (NFC), any form of standardized radio frequency, or any combination thereof, or
  • each of analyte sensor computing device 105 and networked devices 110 may comprise a device having a communication component capable of transmitting and/or receiving data over network 115 .
  • each networked device 110 may comprise a server, personal computer, mobile device (for example, notebook computer, tablet computer, netbook computer, personal digital assistant (PDA), video game device, GPS locator device, cellular telephone, smartphone, or other mobile device), a television with one or more processors embedded therein and/or coupled thereto, or other appropriate technology that includes or is coupled to a web browser or other application for communicating via the network 115 .
  • PDA personal digital assistant
  • Analyte sensor computing device 105 may be any computing device, such as a smart phone, tablet, desktop computer, laptop, or even a standalone chip included as part of the analyte sensor 107 , etc., for crossover-calibrating a sensor (e.g., analyte sensor(s) 107 at FIG. 1 ) inserted into the tissue of a subject, in accordance with embodiments herein.
  • analyte sensor computing device 105 includes several components, such as one or more processors 140 and at least one sensor communication module 142 , for example that is capable of communication with a sensor (e.g., analyte sensor(s) 107 at FIG. 1 ).
  • the one or more processors 140 each include one or more processor cores.
  • the at least one sensor communication module 142 is physically and electrically coupled to the one or more processors 140 .
  • the at least one sensor communication module 142 is physically and/or electrically coupled to the one or more sensors, such as analyte sensor 107 .
  • the analyte sensor computing device 105 and the analyte sensor 107 may comprise a single device, without departing from the scope of this disclosure.
  • the sensor communication module 142 is part of the one or more processors 140 .
  • analyte sensor computing device 105 includes printed circuit board (PCB) 155 .
  • the one or more processors 140 and sensor communication module 142 is disposed thereon.
  • the analyte sensor computing device 105 includes other components that may or may not be physically and electrically coupled to the PCB.
  • a memory controller not shown
  • volatile memory e.g., dynamic random access memory (DRAM) (not shown)
  • non-volatile memory such as read only memory (ROM), flash memory (not shown), an I/O port (not shown), (not shown), a digital signal processor (not shown), a crypto processor (not shown), a graphics processor (not shown), one or more antenna (not shown), a touch-screen display 110 , a touch-screen display controller (not shown), a battery (not shown), an audio codec (not shown), a video codec (not shown), a global positioning system (GPS) device (not shown), a compass (not shown), an accelerometer (not shown), a temperature monitor, a gyroscope (not shown) (not shown), a speaker (not shown), a camera (not shown), and a mass storage device (such as hard disk drive, a solid state drive, compact disk (CD) (not shown), digital versatile disk (DVD) (DRAM) (not shown)
  • DRAM dynamic random
  • system memory is capable of storing information that the one or more processors 140 utilizes to operate and execute programs and operating systems, including computer readable instructions for the method disclosed herein.
  • system memory is any usable type of readable and writeable memory such as a form of dynamic random access memory (DRAM).
  • DRAM dynamic random access memory
  • analyte sensor computing device 105 includes or is otherwise associated with various input and output/feedback devices to enable user interaction with the analyte sensor computing device 105 and/or peripheral components or devices associated with the analyte sensor computing device 105 by way of one or more user interfaces or peripheral component interfaces.
  • the user interfaces include, but are not limited to a physical keyboard or keypad, a touchpad, a display device (touchscreen or non-touchscreen), speakers, microphones, sensors, such as glucose sensors, haptic feedback devices and/or one or more actuators, and the like.
  • the analyte sensor computing device 105 can comprise a memory element (not shown), which can exist within a removable smart chip or a secure digital (“SD”) card or which can be embedded within a fixed chip.
  • a memory element (not shown), which can exist within a removable smart chip or a secure digital (“SD”) card or which can be embedded within a fixed chip.
  • SIM Subscriber Identity Component
  • the memory element may allow a software application resident on the device.
  • an I/O link connecting a peripheral device to the analyte sensor computing device 105 is protocol-specific with a protocol-specific connector port that allows a compatible peripheral device to be attached to the protocol-specific connector port (i.e., a USB keyboard device would be plugged into a USB port, a router device would be plugged into a LAN/Ethernet port, etc.) with a protocol-specific cable.
  • a compatible peripheral device i.e., a USB keyboard device would be plugged into a USB port, a router device would be plugged into a LAN/Ethernet port, etc.
  • Any single connector port would be limited to peripheral devices with a compatible plug and compatible protocol. Once a compatible peripheral device is plugged into the connector port, a communication link would be established between the peripheral device and a protocol-specific controller.
  • a non-protocol-specific connector port is configured to couple the I/O interconnect with a connector port of the analyte sensor computing device 105 , allowing multiple device types to attach to the analyte sensor computing device 105 through a single physical connector port.
  • the I/O link between the analyte sensor computing device 105 and the I/O complex is configured to carry multiple I/O protocols (e.g., PCI Express®, USB, DisplayPort, HDMI, etc.) simultaneously.
  • the connector port is capable of providing the full bandwidth of the link in both directions with no sharing of bandwidth between ports or between upstream and downstream directions.
  • the connection between the I/O interconnect and the analyte sensor computing device 105 supports electrical connections, optical connections, or both.
  • the one or more processors 140 , flash memory, and/or a storage device includes associated firmware storing programming instructions configured to enable the analyte sensor computing device 105 , in response to execution of the programming instructions by one or more processors 140 , to practice all or selected aspects of a method of calibrating a sensor (e.g., analyte sensor(s) 107 at FIG. 1 ) inserted into the tissue of a subject using a computing device, in accordance with embodiments of the present disclosure.
  • a sensor e.g., analyte sensor(s) 107 at FIG. 1
  • the sensor communication module 142 may enable wired and/or wireless communications for the transfer of data to and from the analyte sensor computing device 105 , for example to and/or from one or more sensors, (e.g., analyte sensor(s) 107 at FIG. 1 ).
  • sensor communication module 142 may comprise a transmitter and/or a transmitter/receiver.
  • the transmitter and/or transmitter/receiver may be coupled, for example physically and/or electrically, to one or more sensors (e.g., analyte sensor(s) 107 at FIG. 1 ).
  • the analyte sensor computing device 105 also includes a network interface configured to connect the analyte sensor computing device 105 to one or more networked computing devices wirelessly via a transmitter and a receiver (or optionally a transceiver) and/or via a wired connection using a communications port.
  • the network interface and the transmitter/receiver and/or communications port are collectively referred to as a “communication module”.
  • the wireless transmitter/receiver and/or transceiver may be configured to operate in accordance with one or more wireless communications standards.
  • the analyte sensor computing device 105 includes a wireless communication module for transmitting to and receiving data, for example for transmitting and receiving data from a network, such as a telecommunications network.
  • the communication module transmits data, including video data, though a cellular network or mobile network, such as a Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), cdmaOne, CDMA2000, Evolution-Data Optimized (EV-DO), Enhanced Data Rates for GSM Evolution (EDGE), Universal Mobile Telecommunications System (UMTS), Digital Enhanced Cordless Telecommunications (DECT), Digital AMPS (IS-136/TDMA), and Integrated Digital Enhanced Network (iDEN), Long-Term Evolution (LTE), 3 rd generation mobile network (3G), 4th generation mobile network (4G), and/or 5th generation mobile network (5G) networks.
  • GSM Global System for Mobile Communications
  • GPRS General Packet Radio Service
  • cdmaOne CDMA2000
  • EV-DO Evolution-Data Optimized
  • EDGE Enhanced Data Rates for GSM Evolution
  • UMTS Universal Mobile Telecommunications System
  • DECT Digital Enhanced Cordless Telecommunications
  • iDEN Integrated Digital Enhanced Network
  • the computing device 100 is directly connect with one or more devices via the direct wireless connection by using, for example, Bluetooth and/or BLE protocols, WiFi protocols, Infrared Data Association (IrDA) protocols, ANT and/or ANT+ protocols, LTE ProSe standards, and the like.
  • Bluetooth and/or BLE protocols WiFi protocols, Infrared Data Association (IrDA) protocols, ANT and/or ANT+ protocols, LTE ProSe standards, and the like.
  • the communications port is configured to operate in accordance with one or more known wired communications protocol, such as a serial communications protocol (e.g., the Universal Serial Bus (USB), FireWire, Serial Digital Interface (SDI), and/or other like serial communications protocols), a parallel communications protocol (e.g., IEEE 1284, Computer Automated Measurement And Control (CAMAC), and/or other like parallel communications protocols), and/or a network communications protocol (e.g., Ethernet, token ring, Fiber Distributed Data Interface (FDDI), and/or other like network communications protocols).
  • a serial communications protocol e.g., the Universal Serial Bus (USB), FireWire, Serial Digital Interface (SDI), and/or other like serial communications protocols
  • SDI Serial Digital Interface
  • parallel communications protocol e.g., IEEE 1284, Computer Automated Measurement And Control (CAMAC), and/or other like parallel communications protocols
  • CAMAC Computer Automated Measurement And Control
  • FDDI Fiber Distributed Data Interface
  • the analyte sensor computing device 105 is configured to run, execute, or otherwise operate one or more applications.
  • the applications include native applications, web applications, and hybrid applications.
  • the native applications are used for operating the analyte sensor computing device 105 , sensor(s) (e.g., sensors 107 at FIG. 1 ) coupled to the analyte sensor computing device 105 , and other like functions of the analyte sensor computing device 105 .
  • native applications are platform or operating system (OS) specific or non-specific.
  • native applications are developed for a specific platform using platform-specific development tools, programming languages, and the like. Such platform-specific development tools and/or programming languages are provided by a platform vendor.
  • native applications are pre-installed on analyte sensor computing device 105 during manufacturing, or provided to the analyte sensor computing device 105 by an application server via a network (e.g., network 115 at FIG. 1 ).
  • Web applications are applications that load into a web browser of the analyte sensor computing device 105 in response to requesting the web application from a service provider.
  • the web applications are websites that are designed or customized to run on a computing device by taking into account various computing device parameters, such as resource availability, display size, touch-screen input, and the like. In this way, web applications may provide an experience that is similar to a native application within a web browser.
  • Web applications may be any server-side application that is developed with any server-side development tools and/or programming languages, such as PHP, Node.js, ASP.NET, and/or any other like technology that renders HTML.
  • Hybrid applications may be a hybrid between native applications and web applications.
  • Hybrid applications may be a standalone, skeletons, or other like application containers that may load a website within the application container.
  • Hybrid applications may be written using website development tools and/or programming languages, such as HTML5, CSS, JavaScript, and the like.
  • hybrid applications use browser engine of the analyte sensor computing device 105 , without using a web browser of the analyte sensor computing device 105 , to render a website's services locally.
  • hybrid applications also access computing device capabilities that are not accessible in web applications, such as the accelerometer, camera, local storage, and the like.
  • the computer-usable or computer-readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium.
  • the computer-readable medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device.
  • RAM random access memory
  • ROM read-only memory
  • EPROM or Flash memory erasable programmable read-only memory
  • CD-ROM compact disc read-only memory
  • CD-ROM compact disc read-only memory
  • a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device.
  • the computer-usable or computer-readable medium can even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory.
  • a computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
  • the computer-usable medium may include a propagated data signal with the computer-usable program code embodied therewith, either in baseband or as part of a carrier wave.
  • the computer usable program code may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc.
  • Computer program code for carrying out operations of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages.
  • the program code may execute entirely on the user's computing device, partly on the user's computing device, as a stand-alone software package, partly on the user's computing device and partly on a remote computer or entirely on the remote computer or server.
  • the remote computer may be connected to the user's computing device, through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computing device, (for example, through the Internet using an Internet Service Provider), or wireless network, such as described above.
  • LAN local area network
  • WAN wide area network
  • example embodiments may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof.
  • the program code or code segments to perform the necessary tasks may be stored in a machine or computer readable medium.
  • a code segment may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, program code, a software package, a class, or any combination of instructions, data structures, program statements, and the like.
  • an article of manufacture may be employed to implement one or more methods as disclosed herein.
  • the article of manufacture may include a computer-readable non-transitory storage medium and a storage medium.
  • the storage medium may include programming instructions configured to cause an apparatus to practice some or all aspects of a method of calibrating an analyte sensor using a computing device, in accordance with embodiments of the present disclosure.
  • the storage medium may represent a broad range of persistent storage medium known in the art, including but not limited to flash memory, optical disks or magnetic disks.
  • the programming instructions may enable an apparatus, in response to their execution by the apparatus, to perform various operations described herein.
  • the storage medium may include programming instructions configured to cause an apparatus to practice some or all aspects of a method of conducting calibration of an analyte sensor (e.g., sensor(s) 107 at FIG. 1 ) using a computing device (e.g., analyte sensor computing device 105 at FIG. 1 ), in accordance with embodiments of the present disclosure.
  • Analyte sensing device 107 may comprise an analyte sensing element 114 .
  • analyte sensing element 114 may comprise one or more wire(s) or electrode(s) for translating an analyte (e.g., glucose) concentration into a representative electrical signal.
  • Analyte sensing device 107 may further comprise a communication module 108 (e.g., transmitter, receiver, or transceiver) for communicating data (wired or wirelessly) and other information over network 115 .
  • analyte sensing device 107 may further include a microprocessor 112 and a printed circuit board 113 , similar to that discussed above for the analyte sensor computing device.
  • Other components of analyte sensing device 107 that are not shown may include one or more of a memory controller, volatile memory (e.g., DRAM), non-volatile memory (e.g., ROM), flash memory, etc.
  • Insulin delivery unit 170 may be comprised of at least three parts, including but not limited to insulin pump 171 , tubing 172 and infusion set 173 .
  • insulin pump 171 may be battery powered and may contain (or be fluidically coupled to) an insulin reservoir (e.g., container), a pumping mechanism (e.g., pump driven by a small motor) and one or more buttons and/or touch screen (not shown) to program insulin delivery.
  • insulin pump 171 may receive instructions for insulin delivery over network 115 , from one of analyte sensor computing device 105 or analyte sensing device 107 .
  • the instructions may be based on glucose concentrations as obtained via analyte sensing device 107 .
  • insulin delivery unit 170 may operate in a closed-loop fashion with other components of CGM system 100 (e.g., analyte sensor computing device 105 and analyte sensing device 107 ) to mimic the way a pancreas works.
  • each of insulin pump 171 , tubing 172 and infusion set 173 may be coupled to each other in order to enable insulin pump 171 to deliver insulin to a subject by way of tubing 172 and infusion set 173 .
  • insulin pump 171 may be battery powered, it may be understood that in some additional or alternative examples insulin pump 171 may be powered by electrically coupling insulin pump 171 to an external power source.
  • insulin pump 171 may include buttons and/or a touch screen (not shown) for programming insulin delivery parameters.
  • insulin pump 171 may receive instructions for insulin delivery over network 115 .
  • insulin pump 171 may include a communication module 176 (e.g., receiver, or transceiver) capable of receiving and/or sending information (wired or wirelessly) over network 115 , a printed circuit board 174 , and a microprocessor 175 .
  • Other components of insulin pump 171 that are not shown may include one or more of a memory controller, volatile memory (e.g., DRAM), non-volatile memory (e.g., ROM), flash memory, etc.
  • Tubing 172 may in some examples comprise a thin tube fluidically coupled to each of the insulin reservoir and infusion set 173 .
  • Tubing 172 may be plastic, TeflonTM etc.
  • Infusion set 173 may comprise componentry made of TeflonTM and/or steel, and may attach to skin of a subject by way of an adhesive patch.
  • the infusion set 173 may include a short thin tubing (e.g., cannula) that is inserted to skin via a needle housed within the cannula. After insertion, the needle may be removed and the thin cannula may remain under the skin.
  • an example method 200 is shown for calibrating an analyte sensor (e.g., analyte sensor(s) 107 at FIG. 1 ) and based on the calibration, determining an analyte value (e.g., amount, level, concentration, etc.).
  • Method 200 may comprise software instructions stored on non-transitory computer readable medium that, when executed by a processor, cause the processor to perform the instructions to calibrate the analyte sensor.
  • the analyte is glucose and the analyte sensor is a glucose sensor, more specifically, a CGM sensor. It may be understood that method 200 is derived at least in part based on the model shown in detail at FIG.
  • Method 200 begins at 205 , and includes indicating whether conditions are met for proceeding with the methodology illustrated at FIG. 2 .
  • conditions being met at 205 may include a determined amount of time having elapsed since method 200 was previously performed on the same analyte sensor.
  • conditions being met at 205 may include an indication that the analyte sensor is a recently inserted sensor, and that it is requested that the methodology of FIG. 2 be conducted on the newly inserted sensor.
  • conditions being met at 205 may include an indication that one or more capillary analyte value(s) (e.g., capillary glucose values) have recently been obtained, for example obtained less than a predetermined timeframe ago (e.g., less than 1 hour ago, less than 45 minutes ago, less than 30 minutes ago, less than 15 minutes ago, less than 10 minutes ago, less than 5 minutes ago, less than 2 minutes ago, less than 1 minute ago, etc.).
  • a predetermined timeframe ago e.g., less than 1 hour ago, less than 45 minutes ago, less than 30 minutes ago, less than 15 minutes ago, less than 10 minutes ago, less than 5 minutes ago, less than 2 minutes ago, less than 1 minute ago, etc.
  • conditions being met at 205 may include an indication that the analyte sensor is not providing analyte concentration values that are accurate to within a desired threshold of actual blood analyte values (e.g., capillary blood analyte values measured via a test meter). Such an indication may be made, for example, via comparing analyte values as determined via the analyte sensor with other analyte values determined, for example, via a blood analyte meter.
  • a desired threshold of actual blood analyte values e.g., capillary blood analyte values measured via a test meter.
  • method 200 includes retrieving current values from the analyte sensor over a predetermined time duration. These current measurements can be continuous or at discrete points, for example, during the predetermined time duration. It may be understood that the current obtained at 210 may be noisy, for example comprising both high frequency low magnitude noise and low frequency higher magnitude noise components.
  • FIG. 4 graph 400 depicts an example noisy current that may be obtained at 210 .
  • Graph 400 plots sensor current against time, and includes an inset to illustrate the low frequency higher magnitude noise components 405 , as compared to the high frequency lower magnitude noise 410 .
  • method 200 determines if a blood analyte value, such as a capillary glucose value, is available to calibrate the received current values.
  • a blood analyte value such as a capillary glucose value
  • the blood analyte value may be a first blood analyte value obtained subsequent to sensor insertion.
  • the blood analyte value may not be the first, but instead may comprise a value obtained subsequent to the first blood analyte value having been obtained post sensor insertion. It may be understood that the calibration methodology of FIG. 2 may be performed each time that a new blood analyte value is obtained.
  • the method proceeds to 220 , where method 200 pauses until the blood analyte value is available to calibrate the received current values.
  • a blood analyte value may not be available if a blood analyte value has not been received within a predetermined time duration of the query, for example.
  • step 215 responsive to an indication that there is a blood glucose value (e.g., 1 st capillary glucose value, or newly obtained capillary glucose value) available to calibrate the received current values, then this blood glucose value is used for subsequent steps of method 200 .
  • a blood glucose value e.g., 1 st capillary glucose value, or newly obtained capillary glucose value
  • this blood glucose value is used for subsequent steps of method 200 .
  • the blood analyte value is available to use for deconvolution in block 245 and parameter estimation in block 250 of the calibration step in block 240 , as discussed below.
  • the method proceeds to noise filtering in block 230 .
  • the analyte sensor current values are noise filtered.
  • the noise in the current values from a given sensor can be broken down into two components that can be separately filtered. These two components are the low frequency noise attributed to physical disturbances on the sensor (e.g., physical pressure on the sensor, sensor movement attributable to exercise, or sensor dislodging) and high frequency low magnitude noise attributed to sensor measurement noise.
  • the noise due to physical disturbances on the sensor is filtered out, for example using heuristic rules to detect and filter the low frequency noise with high magnitude that is attributed to the physical disturbances on the sensor.
  • sensor measurements outside of a desired or threshold range may in some examples be filtered out.
  • the sensor current may be taken as the mean of previous measurements over a predetermined time period (e.g. 3 hours, 2 hours, 1 hour, etc.), as an example.
  • sensor measurements may be considered outside the desired range, or in other words, erroneous or indicative of sensor degradation or general loss of sensitivity, responsive to the measurement(s) being greater than twice the mean of an immediately prior 10 minute measurement period.
  • the modified or filtered sensor current may be taken as a mean of the immediately prior 10 minute measurement period.
  • the high frequency low magnitude sensor measurement noise is filtered out by application of Kalman filtering.
  • the low frequency higher magnitude noise is filtered first, followed by filtering of the high frequency lower magnitude noise, in sequential fashion.
  • the high frequency lower magnitude noise is filtered first, followed by filtering of the low frequency higher magnitude noise. Simultaneous filtering of both the high frequency low magnitude and low frequency high magnitude noise is also within the scope of this disclosure.
  • method 200 proceeds to 235 .
  • the method queries if a subsequent, i.e. 2 nd , 3 rd , 4 th , etc., capillary glucose value is available. If there is not a subsequent, i.e. 2 nd , 3 rd , 4 th , etc. capillary glucose value available for calibration, the noise filtered current can be used to estimate the glucose concentration in block 265 . Then, method 200 may proceed to 270 , where the estimated glucose concentration can be passed on, for example to a display device (e.g., touchscreen 110 associated with analyte sensor computing device 105 at FIG.
  • a display device e.g., touchscreen 110 associated with analyte sensor computing device 105 at FIG.
  • capillary analyte values may be available at an interval.
  • the interval may be approximately 12 hours, however the interval may be greater than or less than 12 hours (e.g., 24 hours), without departing from the scope of this disclosure.
  • the current-to-glucose transformation model is updated via the methodology of FIG. 2 every, for example, 12-24 hours, and this updated modeling is assumed to be valid until a subsequent capillary analyte value is obtained.
  • the current is available every minute, and accordingly is continuously and regularly transformed to glucose level using the last updated modeling.
  • method 200 determines whether a new capillary analyte value is available. If not, then the last updated model is used for transforming the current to glucose level. However, if available, then the new capillary analyte value is used to update the current-to-glucose transformation model per the methodology of FIG. 2 elaborated further below. If, for some reason a particular capillary analyte value cannot be used, then it may be understood that the user may be requested to take an additional capillary analyte value reading within a set time frame (e.g., within 10 minutes).
  • a set time frame e.g., within 10 minutes.
  • block 240 includes performing calibration of the noise filtered current signal using the subsequent, i.e. 2 nd , 3 rd , 4 th , etc. capillary glucose value(s), by a process of deconvolution in block 245 and parameter estimation in block 250 .
  • the noise filtered current values are deconvoluted to blood glucose current value using Kalman-based deconvolution.
  • the Kalman-based deconvolution uses a sequential Kalman filter (refer to FIG. 5 for an example sequential Kalman filter).
  • the sequential Kalman filter is implemented over a time period prior to the calibration time sufficient for convergence, for example, using noise filtered sensor current values collected in a time window of between about 30 minutes and 120 minutes, such as a 60 minute time window prior to the calibration time. In embodiments, within this time window a sampling interval of between about 1 minute and about 15 minutes may be used, such as 5 minutes.
  • the sequential Kalman filter includes between about 5 and about 20 recursions of the filter implementation, such as 13 recursions of the filter implementation. It is contemplated the method can include as many recursions of the filter implementation as necessary for convergence.
  • the blood calibration parameters are estimated using a Kalman filter.
  • the initial estimate and covariance can be computed offline using training datasets (e.g., by utilizing a cubature Kalman filter, as will be discussed in greater detail below).
  • the interstitial parameters are updated based on the blood calibration parameters, as will be described in greater detail below.
  • method 200 proceeds to 265 .
  • the blood analyte levels are estimated based on the interstitial parameters (step 260 ) and the noise filtered current (step 230 ).
  • the blood analyte value(s) may be passed on, for example to a display device (e.g., touchscreen 110 associated with analyte sensor computing device 105 at FIG. 1 ), insulin delivery system (e.g., insulin delivery system 170 at FIG. 1 ) (where applicable), or other networked device, to be used.
  • method 200 may include computing an amount of insulin to be provided to the subject based on the determined blood analyte value(s).
  • the computed insulin amount may be sent, along with one or more instructions, to the insulin delivery system so that an insulin pump may be controlled to deliver the desired amount of insulin.
  • the computed insulin amount may be displayed on a screen associated with, for example, a computing device (e.g., analyte sensor computing device 105 at FIG. 1 ) associated with the analyte sensor.
  • glucose While particular reference is given to glucose as a model analyte, the methods, apparatuses, tangible media, and systems disclosed herein are applicable for any analyte sensor that has been inserted into the tissue of a subject.
  • Other sensors that can be used with the methods, apparatuses, tangible media, and systems are, without limitation, sensors for the detection of albumin, alkaline phosphatase, alanine transaminase, aspartate aminotransferase, bilirubin, blood urea nitrogen, calcium, carbon dioxide (CO 2 ), chloride, creatinine, glucose, gamma-glutamyl transpeptidase, hematocrit, lactate, lactate dehydrogenase, magnesium, oxygen, pH, phosphorus, potassium, sodium, total protein, uric acid, metabolic markers, and drugs.
  • analytes are contemplated as well, including but not limited to acetaminophen, dopamine, ephedrine, terbutaline, ascorbate, uric acid, oxygen, d-amino acid oxidase, plasma amine oxidase, xanthine oxidase, reduced nicotinamide adenine dinucleotide phosphate (NADPH) oxidase, alcohol oxidase, alcohol dehydrogenase, pyruvate dehydrogenase, diols, ROS (reactive oxygen species), nitric oxide (NO), cholesterol, triglycerides, gentisic acid, ibuprophen, L-Dopa, methyl dopa, salicylates, tetracycline, tolazamide, tolbutamide, acarboxyprothrombin, acylcarnitine, adenine phosphoribosyl transferase,
  • Salts, sugar, protein, fat, vitamins, and hormones naturally occurring in blood or interstitial fluids can also constitute analytes in certain embodiments.
  • the analyte can be naturally present in the biological fluid, for example, a metabolic product, a hormone, an antigen, an antibody, and the like.
  • the analyte can be introduced into the body, for example, a contrast agent for imaging, a radioisotope, a chemical agent, a fluorocarbon-based synthetic blood, or a drug or pharmaceutical composition, including but not limited to insulin, ethanol, cannabis (marijuana, tetrahydrocannabinol, hashish), inhalants (nitrous oxide, amyl nitrite, butyl nitrite, chlorohydrocarbons, hydrocarbons), cocaine (crack cocaine), stimulants (amphetamines, methamphetamines, Ritalin, Cylert, Preludin, Didrex, PreState, Voranil, Sandrex, Plegine), depressants (barbituates, methaqualone, tranquilizers such as Valium, Librium, Miltown, Serax, Equanil, Tranxene), hallucinogens (phencyclidine, lysergic acid, mescaline, peyote, p
  • Analytes such as neurochemicals and other chemicals generated within the body can also be analyzed, such as, for example, ascorbic acid, uric acid, dopamine, noradrenaline, 3-methoxytyramine (3MT), 3,4-dihydroxyphenylacetic acid (DOPAC), homovanillic acid (HVA), 5-hydroxytryptamine (5HT), histamine, Advanced Glycation End Products (AGEs) and 5-hydroxyindoleacetic acid (FHIAA).
  • ascorbic acid uric acid
  • dopamine dopamine
  • noradrenaline 3-methoxytyramine (3MT)
  • 3-methoxytyramine (3MT) 3,4-dihydroxyphenylacetic acid
  • DOPAC 3,4-dihydroxyphenylacetic acid
  • HVA homovanillic acid
  • 5HT 5-hydroxytryptamine
  • histamine histamine
  • AGEs Advanced Glycation End Products
  • FHIAA 5-hydroxyindoleacetic acid
  • the method of FIG. 2 is derived from the model depicted at FIG. 3 .
  • the analyte is glucose
  • Equation (1) let y I (t) be the sensor-generated noise-free electrical current and u I (t) be the interstitial glucose level. The objective is to determine u I (t) from y I (t) using the model of FIG. 3 :
  • ⁇ a 1 I , a 2 I and a 3 I ⁇ are interstitial calibration parameters (refer to step 260 of method 200 ) and ⁇ t is the time since sensor insertion.
  • the problem is to estimate the interstitial calibration parameters ⁇ a 1 I , a 2 I and a 3 I ⁇ .
  • Estimating the calibration parameters faces two challenges: (i) y I (t) cannot be measured directly; instead a distorted version of y I (t) is measured with high- and low-frequency noise, and (ii) the sensor response varies with sensor age, and the time-variability is patient- and sensor-dependent.
  • ⁇ a 1 I , a 2 I and a 3 I ⁇ are updated periodically using intermittent capillary glucose measurements.
  • u B (t) be the intermittent capillary glucose measurement
  • y B (t) be a hypothetical sensor current if the sensor was inserted in the blood instead of the interstitial fluid. Assuming the sensor has the same dynamics in the interstitial fluids and blood, y B (t) is related to u B (t) by Equation (2):
  • ⁇ a 1 B , a 2 B and a 3 B ⁇ are blood calibration parameters. It can be shown that the blood calibration parameters are related to the interstitial calibration parameters by the following Equations (3):
  • the calibration problem can be solved by estimating ⁇ a 1 B , a 2 B , and a 3 B ⁇ .
  • the glucose estimation method includes three steps:
  • the disclosed method utilizes Kalman filtering in the first two steps.
  • the Kalman filter operates over a linear dynamical state space model defined by Equation (4) and Equation (5):
  • X k ⁇ n and z k ⁇ d are state and measurement vectors, respectively, at k th instant of time
  • F k and H k are constants matrices with appropriate dimensions
  • w k and v k are process and measurement noises, respectively.
  • w k and v k are assumed to be Gaussian with zero mean and covariances Q k and R k , respectively.
  • the Kalman filter estimates the elements of X k using the observed quantities z k .
  • the Kalman filter includes two steps; prediction and update.
  • This step determines the prior state estimate ( ⁇ circumflex over (X) ⁇ k
  • k are computed after a new measurement of z_k is available.
  • k ⁇ 1 ), the innovation covariance (S k ), and the Kalman gain (K k ) are computed as:
  • 0 ) may be assigned arbitrarily since they converge to the true values over time. However, if high accuracy is desired at the start of the filter operation, then X 0
  • FIG. 4 shows a sample noisy current signal that includes both the higher magnitude, lower frequency noise (plot 405 at FIG. 4 ) and the lower magnitude, higher frequency noise (plot 410 at FIG. 4 ).
  • Equation (11) A set of heuristic rules were implemented to detect and filter w I Pt (t).
  • the resultant current y I b Rr (t) according to Equation (11) is:
  • the remaining noise w I In (t) is filtered by implementing a Kalman filter.
  • the sampling interval is only 1 minute, hence a random walk model defines the state dynamics according to Equation (12):
  • w I y I is a process noise added to compensate the slight current variation from t k ⁇ 1 to t k .
  • Equation (6)-(9) The outcome of Kalman filter (Equations (6)-(9)), implemented over Equations (12) and (13), is ⁇ circumflex over (X) ⁇ k
  • k ⁇ I (t k ), which is the estimate of y I (t k ).
  • the calibration parameters ⁇ a 1 I , a 2 I and a 3 I ⁇ are updated when a new capillary glucose measurement becomes available (around once or less per day; calibration times are denoted as t s ).
  • the calibration parameters are estimated following a two-step process.
  • a direct inverse solution of the deconvolution problem is notoriously difficult to implement because of its well-known inherent ill-conditioning. The ill-conditioning can be mitigated by regularization, but it requires the solution of complex integrals, which can be computationally demanding.
  • a modified Kalman-based approach is herein implemented, which relies on a sequential Kalman filter (see FIG. 5 as an example).
  • the sequential Kalman filter adds a new state at every recursion as follows: ⁇ y B (t 1 ) ⁇ at t 1 , ⁇ y B (t 2 ); y B (t 1 ) ⁇ at t 2 , . . . , ⁇ y B (t 13 ); y B (t 12 ); . . . ; y B (t 2 ) ⁇ at t 13 .
  • the state dynamics can be represented by a random walk model:
  • w i yB is process noise (13-dimensional vector) added to compensate the possible changes in y B (t) from t j-1 to t j .
  • the process noise is assumed to be Gaussian with zero mean and covariance Q i yB .
  • the measurement model follows a linear structure
  • H j yB is transition matrix and v j yB is Gaussian noise with zero mean and covariance R j yB .
  • Z j yB is related to X j yB through h(t).
  • H j yB by matrix representation of discretized h(t) (P. Rousseaux and J. Troquet, “Deconvolution of time-varying systems by Kalman filtering: its application to the computation of the active state in the muscle,” Sign. Proc., vol. 10, no. 3, pp. 291-301, April 1986).
  • a flowchart of the sequential Kalman filter is presented in FIG. 5 .
  • a random walk model characterizes the state dynamics:
  • H s BCP [u B (t j ) 1 ⁇ t] and v s BCP is noise added to account for the error incurred during the estimation of y B (t s ).
  • the noise is assumed to be zero mean Gaussian with covariance R s BCP .
  • Equation (18) The outcomes of Kalman filter, implemented over (16) and (17), are the new estimates of the blood calibration parameters, ⁇ circumflex over (X) ⁇ s BCP [â 1 B , â 2 B , â 3 B ] T .
  • the estimates of the interstitial calibration parameters ⁇ a 1 I , a 2 I , a 3 I ⁇ are then calculated based on Equation (3) as shown by Equation (18):
  • the glucose sensor should estimate the glucose levels immediately after the first calibration. Therefore, the Kalman filter does not have enough convergence time (the calibration parameters state is only updated once), and hence a precise knowledge of the initial estimate ( ⁇ circumflex over (X) ⁇ 0
  • the initial estimate and covariance were computed offline using training datasets (refer to the section “Estimation of ⁇ circumflex over (X) ⁇ 0
  • Equation (1) An inverse implementation of Equation (1) estimates blood glucose levels from the filtered sensor electrical current:
  • Data for the database was collected from 16 patients with type 1 diabetes. Fourteen patients wore two sensors, one on the left side and another on the right side of the abdomen, while the remaining 2 patients started with two sensors but had one sensor removed before the end of the study. Thus, the two remaining patients were left with a single sensor at the end of the study. Data for each subject was collected for 7 days (e.g., 7 days of data collection each for each subject). Subsequently, 30 datasets were available for the analysis. The datasets are comprised of sensor electrical current, two capillary glucose measurements per day (for calibration), and reference glucose measurements on days 1, 4, and 7. The reference glucose measurements were obtained every 15 minutes in 12-hour clinical sessions on days 1, 4, and 7. The reference glucose measurements were performed using Yellow Spring Instrument (YSI), OH, USA.
  • YSI Yellow Spring Instrument
  • the 30 datasets were divided in two sets, a training set of 10 datasets and a test set with 20 datsets.
  • the training set was used to determine the initial estimate and covariance, ⁇ circumflex over (X) ⁇ 0
  • Blood calibration parameters ⁇ a 1 B , a 2 B , a 3 B ⁇ and t were estimated for each individual dataset (denoted as ⁇ â 1 B , â 2 B , â 3 B , ⁇ circumflex over ( ⁇ ) ⁇ , then ⁇ circumflex over (X) ⁇ 0
  • Equation (1) Equation (1) which establishes the relationship between y I (t). and u I (t), as the available data are y I (t) and u B (t), Equation (1) is written as:
  • the cubature Kalman filter is implemented over a dynamic state space model.
  • the state dynamics can be represented by a random walk model:
  • N D1 is the number of reference glucose measurements on Day 1.
  • z k P x x P ⁇ ( 1 ) ⁇ ( u B ⁇ ( t k ) ⁇ ( 1 x x P ⁇ ( 4 ) ⁇ e - t k / x k P ⁇ ( 4 ) ) ) + x x P ⁇ ( 2 ) + x x P ⁇ ( 3 ) ⁇ ⁇ ⁇ ⁇ t + v x P ( 23 )
  • v k P is measurement noise.
  • the estimates ⁇ â 1 B , â 2 B , â 3 B ⁇ are obtained as the mean of the last 10 values of ⁇ circumflex over (X) ⁇ k P (i.e., k ⁇ (N D1 ⁇ 9, N D1 ]).
  • the estimates ⁇ â 1 B , â 2 B , â 3 B ⁇ of each dataset were obtained from ⁇ â 1 I , â 2 I , â 2 I ⁇ using equation (3).
  • mean of ⁇ circumflex over ( ⁇ ) ⁇ over all training patients return tau (which was obtained as 5.4 seconds).
  • MARD mean absolute relative difference
  • u B (t 1 ), u B (t 2 ), . . . , u B (t n ) are the reference glucose measurements and û B (t 1 ), û B (t 2 ), . . . , û B (t n ) are the corresponding glucose estimates.
  • FIG. 6 A sample plot of estimated blood glucose, reference glucose measurements, and sensor electric current of a representative sensor datasets on days 1 (top graph), 4 (middle graph), and 7 (bottom graph) of the sensor age is shown in FIG. 6 .
  • the estimated glucose levels closely match the reference glucose measurements. Note the variation in sensor sensitivity between days (the sensor currents on days 1, 4, and 7 are different for similar ranges of measured glucose concentration), and that did not affect the accuracy of the disclosed method, supporting its ability in handling day-to-day variations in sensor sensitivity.
  • the performance of the disclosed method was compared with an alternative method that uses minimum error variance estimator (instead of a Kalman filter) to estimate the calibration parameters.
  • the average MARDs for this alternative method on days 1, 4, and 7 of sensor age were 12.46%, 15.75%, and 14.17%, and were larger than those of the disclosed method (Table 1).
  • MARD higher than 25% was observed on 5 occasions with the alternative method compared to 0 occasion with the disclosed method.
  • the minimum error variance estimator does not update nor propagate, in real time, the prior information about the calibration parameters. This estimator requires instead separate priors with every parameters update (i.e., at calibration times). Reference glucose values on days 1, 4, and 7 in the training set are used to generate day-specific population priors, and priors for the days in between were obtained from the previous day with training data (i.e., prior for days 2 and 3 were estimated using datasets in day 1). This may have contributed to the degraded performance of the minimum error variance estimator.
  • the disclosed method implements several Kalman filters, and each implementation introduces delay in the glucose estimation. Moreover, the glucose diffusion between the interstitial and the blood spaces introduces delay.
  • the overall delay by plotting the mean and median MARDs were examined comparing the estimated glucose levels with shifted reference glucose levels by various values ( FIG. 8 ). The mean and median MARDs achieve minimum values at 5-min shift, which indicates that the estimates lag the true glucose levels by around 5 minutes.
  • FIG. 9 shows the distribution of a 1 B , a 2 B , and a 3 B in a sample subject over the sensor wear time.
  • the calibration parameters change significantly between days, demonstrating the ability of the disclosed method to handle significant changes in sensor sensitivity.
  • This also shows the limitation of using priors on days 2 and 3 derived from offline data on day 1 (as needed when using a minimum variance estimator).
  • the CKF is a nonlinear extension of linear Kalman filter, known for high accuracy at significantly low computational cost compared to other nonlinear filters. It is implemented over nonlinear state space model, represented by process and measurement models, as
  • x k ⁇ n and y k ⁇ d are state and measurement variables
  • ⁇ : x k ⁇ x k+1 and ⁇ : x k ⁇ y k+1 are nonlinear functions
  • w k and v k are zero mean Gaussian noises with covariances Q k and R k , respectively.
  • sample point set (4) also known as cubature points
  • weight set (W) are computed offline, as
  • I n is unity matrix and 1 2n is a 2n-dimensional array with all elements being 1.
  • CKF is bound to the knowledge of initial estimate and covariance of x k i.e. ⁇ circumflex over (X) ⁇ 0
  • the CKF is implemented through the following steps:
  • k ⁇ circumflex over (x) ⁇ k+1
  • K k+1 P xk+1,yk+1 ( P yk+1,yk+1 ) ⁇ 1 (39)
  • a Kalman-based calibration method for real-time continuous glucose monitoring systems.
  • the disclosed method uses a (i) sequential Kalman filter to deconvolute interstitial sensor electrical current, (ii) an ordinary, or in other words a conventional Kalman filter or a linear Kalman filter Kalman filter to estimate, in real time, sensor calibration parameters from intermittent capillary glucose measurements, and (iii) a cubature Kalman filter to estimate initial calibration parameters from offline training data.
  • the method uses, as priors, patient-specific calibration parameters obtained from previous days data, as opposed to using population-level day-specific historical data.

Abstract

Method, system, and computer readable media are disclosed for estimating an amount of an analyte in blood of a subject. In an example, a method includes obtaining a noise filtered current by noise filtering a current received from an analyte sensor placed interstitially in tissue of the subject, estimating one or more blood analyte calibration parameters based on the noise filtered current, obtaining a second set of one or more interstitial analyte calibration parameters based at least in part on the one or more blood analyte calibration parameters, and estimating the amount of the analyte in the blood of the subject based on the noise filtered current and the one or more interstitial analyte calibration parameters. In this way, an analyte sensor that is placed interstitially may readily be calibrated to report accurate blood analyte values.

Description

    CROSS-REFERENCE TO RELATED APPLICATION
  • This application claims the priority benefit of the earlier filing date of U.S. Provisional Application No. 62/857,242, filed Jun. 4, 2019, which is hereby incorporated herein by reference in its entirety.
  • TECHNICAL FIELD
  • Embodiments herein relate to the field of continuous analyte monitoring, and, more specifically, to the calibration of a continuous analyte monitoring system to obtain consistent readings and reduce background artifacts.
  • BACKGROUND
  • Blood glucose levels are mainly regulated by a hormone called insulin, secreted from the pancreatic β-cells. In type 1 diabetes, insulin secretion is lost due to an autoimmune process that destroys the β-cells. Type 1 diabetes can be treated in some examples with life-long insulin replacement therapy that aims at maintaining glucose levels in a tight target range in order to avoid long-term macro- and micro-vascular complications. However, delivering the right amount of insulin can be challenging, due at least in part to the intermittent nature of traditional glucose meters (4-7 measurements per day). For example, glucose levels may often undergo large swings in short periods of time. Such fluctuations may be undetected, resulting in unrecognized hypoglycemia (low glucose levels) and hyperglycemia (high glucose levels) events. To overcome these issues, continuous glucose monitoring systems have been developed to measure glucose levels at much shorter predetermined intervals (e.g., every 5 minutes or less). Use of such continuous glucose monitoring (CGM) systems can improve one's ability to control glucose levels. In some examples, such CGM systems may be combined with insulin pumps for closed-loop control of insulin delivery. Examples where a CGM system is combined with an insulin pump that receives instructions based on glucose levels monitored by the CGM system may be referred to as artificial pancreas systems.
  • A continuous glucose monitoring system may include a glucose sensor that is implanted under the skin, and which may generate an electrical current proportional to interstitial glucose levels. The sensitivity of such a sensor can vary between individuals, as well as with sensor wear time. Thus, sensor calibration is an important aspect of any glucose monitoring system. Calibration methodology may attempt to account for one or more of intra- and inter-individual variability in sensor sensitivity, measurement noise, and a difference between the interstitial and blood (or capillary) compartments. A glucose sensor that is not properly calibrated may result in the reporting of erroneous glucose levels, which may degrade an ability to manage a disease condition related to glucose control.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Embodiments will be readily understood by the following detailed description in conjunction with the accompanying drawings and the appended claims. Embodiments are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings.
  • FIG. 1 depicts an example continuous analyte monitoring (CAM) system, including an analyte sensor computing apparatus for calibration of an analyte sensor, in accordance with embodiments herein.
  • FIG. 2 is a flowchart for a method for estimating an analyte level measured by an analyte sensor of FIG. 1.
  • FIG. 3 is a block diagram showing a model showing a relationship between blood glucose concentration and analyte sensor current measurements.
  • FIG. 4 is a graph showing a sample current signal generated by a glucose sensor. The graph illustrates high frequency low magnitude noise and low frequency high magnitude noise.
  • FIG. 5 depicts an example of a sequential Kalman filter as used in accordance with the method of FIG. 2.
  • FIG. 6 is a set of graphs showing estimated blood glucose, reference glucose measurements, and sensor electric current in a sample patient on days 1, 4, and 7 of sensor wear time, the estimated blood glucose obtained via the methodology of FIG. 2.
  • FIG. 7 is a graph showing Mean Absolute Relative Difference (MARD) of 20 sensor datasets on different days of sensor age.
  • FIG. 8 is a graph showing Mean and Median MARDs when the reference glucose levels are shifted in time with various delay.
  • FIG. 9 is a set of graphs showing probability distributions of blood analyte calibration parameters {a1 B, a2 B and a3 B} on different clinical days.
  • DETAILED DESCRIPTION OF THE DISCLOSURE
  • In the following detailed description, reference is made to the accompanying drawings which form a part hereof, and in which are shown by way of illustration embodiments that may be practiced. It is to be understood that other embodiments may be utilized, and structural or logical changes may be made without departing from the scope. Therefore, the following detailed description is not to be taken in a limiting sense, and the scope is defined by the appended claims and their equivalents.
  • Various operations may be described as multiple discrete operations in turn, in a manner that may clarify the disclosure; however, the order of description should not be construed to imply that these operations are order dependent.
  • The description may use perspective-based descriptions such as up/down, back/front, and top/bottom. Such descriptions are merely used to facilitate the discussion and are not intended to restrict the scope of the disclosure.
  • The terms “coupled” and “connected,” along with their derivatives, may be used. These terms are not intended as synonyms for each other. Rather, aspects, “connected” may be used to indicate that two or more elements are in direct physical or electrical contact with each other. “Coupled” may mean that two or more elements are in direct physical or electrical contact. However, “coupled” may also mean that two or more elements are not in direct contact with each other, but still cooperate or interact with each other.
  • For the purposes of the description, a phrase in the form “A/B” or in the form “A and/or B” means (A), (B), or (A and B). For the purposes of the description, a phrase in the form “at least one of A, B, and C” means (A), (B), (C), (A and B), (A and C), (B and C), or (A, B and C). For the purposes of the description, a phrase in the form “(A)B” means (B) or (AB) that is, A is an optional element.
  • The description may use the terms “embodiment” or “embodiments,” which may each refer to one or more of the same or different embodiments. Furthermore, the terms “comprising,” “including,” “having,” and the like, as used with respect to embodiments, are synonymous, and are generally intended as “open” terms (e.g., the term “including” should be interpreted as “including but not limited to,” the term “having” should be interpreted as “having at least,” the term “includes” should be interpreted as “includes but is not limited to,” etc.).
  • With respect to the use of any plural and/or singular terms herein, those having skill in the art can translate from the plural to the singular and/or from the singular to the plural as is appropriate to the context and/or application. The various singular/plural permutations may be expressly set forth herein for sake of clarity.
  • Continuous glucose monitoring technology has been used in the management of diabetes for some time. As one example, glucose monitoring devices may utilize enzymatic methods to measure glucose concentration and provide sample information.
  • In some applications, the continuous glucose sensor may comprise a component of a closed loop insulin delivery system and, as such, should be selective, rapid, predictable and acceptable for continuous patient use.
  • A number of calibration methods have been reported, yet there are various drawbacks to each and hence room for further development. For example, some analyte sensor calibration methodologies assume a constant current-to-analyte relationship between calibration times, which may not be the case. Other drawbacks associated with other calibration methodologies include but are not limited to the use of device-specific functions and the use of priors that are based on offline historical population-level data rather than patient-specific previous data.
  • The inventors herein have recognized the above-mentioned issues, and have developed approaches to at least partially address them. In one example, a method of estimating an amount of an analyte in blood of a subject comprises receiving, from an analyte sensor placed in interstitial fluid of the subject, a current reflective of an interstitial level of the analyte. The method further includes noise filtering the current to provide a noise filtered current. A first set of one or more blood analyte calibration parameters is estimated based at least in part on the noise filtered current. A second set of one or more interstitial analyte calibration parameters is obtained based at least in part on the first set of one or more blood analyte calibration parameters. The amount of the analyte in the blood of the subject is estimated based on the second set of one or more interstitial analyte calibration parameters and the noise filtered current.
  • In an example, noise filtering the current values further comprises filtering out both a low frequency high magnitude noise component and a high frequency low magnitude component. The low frequency high magnitude noise component is filtered heuristically and the high frequency low magnitude component is filtered via Kalman filtering.
  • In another example of the method, estimating the first set of one or more blood analyte calibration parameters further comprises deconvoluting the noise filtered current via a sequential Kalman filter to obtain a hypothetical analyte sensor current assuming the analyte sensor is inserted in the blood instead of the interstitial fluid. The first set of one or more blood glucose calibration parameters is estimated based on the hypothetical analyte sensor current using a Kalman filter that uses the hypothetical analyte sensor current as a measurement variable. The method further includes obtaining a capillary blood analyte measurement, where estimating the first set of one or more blood analyte calibration parameters is based on the capillary blood glucose measurement.
  • In another example of the method, the method further comprises determining an initial blood analyte calibration parameter state estimate, and a blood analyte calibration parameter covariance, for initialization of the sequential Kalman filter. The initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance may be determined using a nonlinear Kalman filter. As an example, the nonlinear Kalman filter is a cubature Kalman filter. For such a method, determining the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance may be based on one or more training data sets. In another additional or alternative example, the method may include determining the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance arbitrarily. In another additional or alternative example, determining the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance may be based on one or more prior analyte sensor calibration events.
  • In a representative example of the method, the analyte sensor is a glucose sensor, and the analyte is glucose. In such an example, an embodiment includes sending one or more instructions to an insulin delivery system for controlling operation of an insulin pump that in turn delivers an appropriate amount of insulin to the subject, where the one or more instructions are based on the estimated amount of analyte in the blood of the subject. Additionally, or alternatively, the method may further comprise displaying the estimated amount of glucose in the blood of the subject on a display screen associated with the glucose sensor, for viewing by the subject.
  • In another aspect, a system for estimating an amount of an analyte in a subject comprises an analyte sensor, and a mobile computing device. The mobile computing device includes a processor storing instructions in non-transitory memory that, when executed, cause the processor to receive from the analyte sensor a current reflective of an interstitial level of the analyte in the subject, noise filter the current to obtain a noise filtered current, and estimate one or more blood analyte calibration parameters based on the noise filtered current. Based on the one or more blood analyte calibration parameters, the instructions further cause the processor to obtain one or more interstitial analyte calibration parameters, and estimate the amount of the analyte in the blood of the subject based on the one or more interstitial analyte calibration parameters and the noise filtered current.
  • In an example of the system, the processor stores further instructions in non-transitory memory that, when executed, cause the processor to obtain the noise filtered current by heuristically filtering out a low frequency high magnitude noise component of the current, and by Kalman-based filtering of a high frequency low magnitude noise component of the current.
  • In another example of the system, the processor stores further instructions in non-transitory memory that, when executed, cause the processor to deconvolute the noise filtered current via a sequential Kalman filter to obtain a predicted blood analyte sensor current. The instructions, when executed, further cause the processor to estimate the one or more blood glucose calibration parameters based on the predicted blood analyte sensor current via a Kalman filter that uses the predicted analyte sensor current as a measurement variable. In some examples, the processor stores further instructions that, when executed, cause the processor to estimate the one or more blood glucose calibration parameters based on a capillary blood glucose measurement.
  • In some examples of the system, the processor stores further instructions that, when executed, cause the processor to determine an initial blood analyte calibration parameter state estimate, and an initial blood analyte calibration parameter covariance, and initialize the sequential Kalman filter based on the initial blood analyte calibration parameter state estimate and the initial blood analyte calibration parameter covariance. In an embodiment, the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance are determined via a nonlinear Kalman filter. In some examples, the nonlinear filter may be a cubature Kalman filter. In an example, the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance, are arbitrarily assigned. In another additional or alternative example, the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance are determined based on one or more prior analyte sensor calibration events. In another additional or alternative example, the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance are determined based on one or more training data sets.
  • In another example of the system, the analyte sensor is a glucose sensor and the analyte is glucose. In such an example, the system may further comprise an insulin delivery unit that includes at least an insulin pump and an infusion set. The processor in such an example may store further instructions that, when executed, cause the processor to determine an insulin injection amount for the subject based on the estimated amount of the analyte in the blood of the subject, and send one or more instructions to the insulin delivery unit to control the insulin pump to deliver the insulin injection amount to the subject via the infusion set. In another additional or alternative example, the mobile computing device may further comprise a display. In such an example, the processor may store further instructions that, when executed, cause the processor to provide the amount of the analyte in the blood of the subject in a viewable form on the display, for viewing by the subject.
  • In yet another aspect, disclosed is a non-transitory computer-readable storage medium with an executable program stored thereon for calibrating an analyte sensor inserted into the tissue of a subject. The program instructs a microprocessor to perform the steps of receiving from the analyte sensor a current reflective of an interstitial amount of an analyte in the subject, noise filtering the current received from the analyte sensor to provide a noise filtered current, estimating a first set of one or more blood analyte calibration parameters based on the noise filtered current, obtaining a second set of one or more interstitial analyte calibration parameters based on the first set of one or more blood analyte calibration parameters, and estimating an amount of the analyte in the blood of the subject based on the second set of one or more interstitial analyte calibration parameters and the noise filtered current.
  • In an example of the computer-readable storage medium, the program further instructs the microprocessor to filter out low frequency high magnitude noise heuristically and filter out high frequency low magnitude noise via Kalman filtering.
  • In another example of the computer-readable storage medium, the program further instructs the microprocessor to estimate the first set of one or more blood analyte calibration parameters by deconvoluting the noise filtered current via a sequential Kalman filter to obtain a predicted blood analyte sensor current that accounts for interstitial-to-blood analyte diffusion dynamics. The program further instructs the microprocessor to estimate the first set of one or more blood analyte calibration parameters based on the predicted blood analyte sensor current via a Kalman filter that uses the hypothetical analyte sensor current as a measurement variable. In an embodiment, the program further instructs the microprocessor to estimate the first set of one or more blood analyte calibration parameters based at least in part on one or more capillary blood analyte measurements.
  • In an example of the computer-readable storage medium, the program further instructs the microprocessor to determine an initial blood analyte calibration parameter state estimate, and an initial blood analyte calibration parameter covariance, for initiation of the sequential Kalman filter. In an example, the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance, are determined via a nonlinear Kalman filter. The nonlinear Kalman filter may comprise a cubature Kalman filter, in an example.
  • In an example of the non-transitory computer-readable storage medium, the program further instructs the microprocessor to determining the initial blood analyte calibration parameter state estimate and the blood analyte parameter covariance based on one or more training data sets. In another additional or alternative example, the program instructs the microprocessor to arbitrarily determine the initial blood analyte calibration parameter state estimate and the blood analyte parameter covariance. In another additional or alternative example, the program further instructs the microprocessor to determine the initial blood analyte calibration parameter state estimate and the blood analyte parameter covariance based on one or more prior analyte sensor calibration events.
  • In a representative example of the non-transitory computer-readable storage medium, the analyte sensor is a glucose sensor, and the analyte is glucose. In such an example, the program may further instruct the microprocessor to determine an insulin injection amount for the subject based on the estimated amount of the analyte in the blood of the subject, and provide one or more instructions pertaining to controlling an insulin pump based on the insulin injection amount, the instructions for use via the insulin pump. In another additional or alternative example, the program may further instruct the microprocessor to provide one or more instructions for displaying the estimated amount of the analyte in the blood of the subject on a display viewable by the subject.
  • Accordingly, as a representative example, disclosed herein is a glucose estimation method that uses Kalman filtering to estimate parameters of an analyte sensor model. The model uses an affine function to describe time-varying sensitivity. To account for interstitial-to-blood dynamics, a noise-filtered current signal from the analyte sensor is deconvoluted using a sequential Kalman filter, and the deconvoluted signal is then used to obtain blood analyte calibration parameters and in turn, interstitial analyte calibration parameters. The interstitial analyte calibration parameters are then used in conjunction with the noise-filtered current signal to estimate blood glucose level, for example blood glucose concentration. At calibration times, the most recent calibration parameters may serve as priors, which implicitly include information from all previous days and previous capillary glucose measurements. For day 1 (the day at which the analyte sensor is inserted into tissue of a subject), the calibration parameters may be obtained using a computationally-efficient nonlinear cubature Kalman filter applied to historical datasets. As disclosed herein, the performance of the method was applied by testing on twenty sensor datasets collected in real patients over a 7-day period.
  • Turning to FIG. 1, disclosed herein is an example networked continuous analyte monitoring (CAM) system 100, in accordance with embodiments herein. In examples where the CAM system 100 is used to monitor glucose levels in a subject over time, the CAM system may be referred to as continuous glucose monitoring (CGM) system 100.
  • The networked CAM system 100 includes an analyte sensor computing device 105 in wired or wireless communication with one or more analyte sensing devices 107 via network 115. Discussed herein, the one or more analyte sensing device(s) 107 may also be referred to as analyte sensor(s), or simply, sensors. In examples where the analyte sensor(s) comprise glucose sensors, the analyte sensor(s) may be referred to as CGM sensor(s), glucose sensors, or simply, sensors. The networked CAM system 100 may also include other networked devices 110 (e.g., laptop, desktop computer, tablet, smartphone, servers, mass storage devices, etc.), which may be in wired or wireless communication with analyte sensor computing device 105 and/or the one or more analyte sensor(s) 107 via network 115. In some embodiments, the analyte sensor computing device 105 includes application software with executable instructions configured to transmit and receive information from network 115. The information can be transmitted to and/or received from another device, such as one or more networked devices 110 through network 115. In certain examples, the analyte sensor computing device 105 may also be capable of transmitting information about analyte measurements retrieved from one or more of analyte sensor(s) 107 of a subject to one or more of a doctor, other medical practitioner, and insulin delivery system 170.
  • As depicted at FIG. 1, the CAM system 100 distributes and receives information to and from one or more networked devices (e.g., analyte sensor computing device 105, networked devices 110) through one or more of network 115. According to various embodiments, network 115 may be any network that allows computers to exchange data, for example for cloud based storage of data generated (historical and current) and/or implementation of some, none, or even all of the methods disclosed herein. Depicted at FIG. 1 is database 180, which in some examples may comprise cloud-based data storage. In some embodiments, network 115 includes one or more network elements (not shown) capable of physically or logically connecting computers. The network 115 may include any appropriate network, including an intranet, the Internet, a cellular network, a local area network (LAN), a wide area network (WAN), a personal network or any other such network or combination thereof. Components used for such a system can depend at least in part upon the type of network and/or environment selected. Protocols and components for communicating via such a network are well known and will not be discussed herein in detail. In embodiments, communication over the network 115 are enabled by wired or wireless connections, and combinations thereof. Network 115 includes a wired or wireless telecommunication means by which network systems may communicate and exchange data. For example, network 115 is implemented as, or may be a part of, a storage area network (SAN), personal area network (PAN), a metropolitan area network (MAN), a local area network (LAN), a wide area network (WAN), a wireless local area network (WLAN), a virtual private network (VPN), an intranet, an Internet, a mobile telephone network, such as Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), CDMAOne, CDMA2000, Evolution-Data Optimized (EV-DO), Enhanced Data Rates for GSM Evolution (EDGE), Universal Mobile Telecommunications System (UMTS), Digital Enhanced Cordless Telecommunications (DECT), Digital AMPS (IS-136/TDMA), and Integrated Digital Enhanced Network (iDEN), Long-Term Evolution (LTE), 3rd generation mobile network (3G), 4th generation mobile network (4G), and/or 5th generation mobile network (5G) networks, a card network, Bluetooth, near field communication network (NFC), any form of standardized radio frequency, or any combination thereof, or any other appropriate architecture or system that facilitates the communication of signals, data, and/or messages (generally referred to as data). Throughout this specification, it should be understood that the terms “data” and “information” are used interchangeably herein to refer to text, images, audio, video, or any other form of information that can exist in a computer-based environment.
  • In an example embodiment, each of analyte sensor computing device 105 and networked devices 110 may comprise a device having a communication component capable of transmitting and/or receiving data over network 115. For example, each networked device 110 may comprise a server, personal computer, mobile device (for example, notebook computer, tablet computer, netbook computer, personal digital assistant (PDA), video game device, GPS locator device, cellular telephone, smartphone, or other mobile device), a television with one or more processors embedded therein and/or coupled thereto, or other appropriate technology that includes or is coupled to a web browser or other application for communicating via the network 115.
  • Analyte sensor computing device 105 may be any computing device, such as a smart phone, tablet, desktop computer, laptop, or even a standalone chip included as part of the analyte sensor 107, etc., for crossover-calibrating a sensor (e.g., analyte sensor(s) 107 at FIG. 1) inserted into the tissue of a subject, in accordance with embodiments herein. In embodiments, analyte sensor computing device 105 includes several components, such as one or more processors 140 and at least one sensor communication module 142, for example that is capable of communication with a sensor (e.g., analyte sensor(s) 107 at FIG. 1). In various embodiments, the one or more processors 140 each include one or more processor cores. In various embodiments, the at least one sensor communication module 142 is physically and electrically coupled to the one or more processors 140. In various embodiments, the at least one sensor communication module 142 is physically and/or electrically coupled to the one or more sensors, such as analyte sensor 107. In some examples, it may be understood that the analyte sensor computing device 105 and the analyte sensor 107 may comprise a single device, without departing from the scope of this disclosure.
  • In further implementations, the sensor communication module 142 is part of the one or more processors 140. In various embodiments, analyte sensor computing device 105 includes printed circuit board (PCB) 155. For these embodiments, the one or more processors 140 and sensor communication module 142 is disposed thereon. Depending on its applications, the analyte sensor computing device 105 includes other components that may or may not be physically and electrically coupled to the PCB. These other components include, but are not limited to, a memory controller (not shown), volatile memory (e.g., dynamic random access memory (DRAM) (not shown)), non-volatile memory (not shown) such as read only memory (ROM), flash memory (not shown), an I/O port (not shown), (not shown), a digital signal processor (not shown), a crypto processor (not shown), a graphics processor (not shown), one or more antenna (not shown), a touch-screen display 110, a touch-screen display controller (not shown), a battery (not shown), an audio codec (not shown), a video codec (not shown), a global positioning system (GPS) device (not shown), a compass (not shown), an accelerometer (not shown), a temperature monitor, a gyroscope (not shown) (not shown), a speaker (not shown), a camera (not shown), and a mass storage device (such as hard disk drive, a solid state drive, compact disk (CD) (not shown), digital versatile disk (DVD) (not shown), a microphone (not shown), and so forth.
  • In some embodiments, the one or more processors 140 is/are operatively coupled to system memory through one or more links (e.g., interconnects, buses, etc.). In embodiments, system memory is capable of storing information that the one or more processors 140 utilizes to operate and execute programs and operating systems, including computer readable instructions for the method disclosed herein. In different embodiments, system memory is any usable type of readable and writeable memory such as a form of dynamic random access memory (DRAM). In embodiments, analyte sensor computing device 105 includes or is otherwise associated with various input and output/feedback devices to enable user interaction with the analyte sensor computing device 105 and/or peripheral components or devices associated with the analyte sensor computing device 105 by way of one or more user interfaces or peripheral component interfaces. In embodiments, the user interfaces include, but are not limited to a physical keyboard or keypad, a touchpad, a display device (touchscreen or non-touchscreen), speakers, microphones, sensors, such as glucose sensors, haptic feedback devices and/or one or more actuators, and the like.
  • In some embodiments, the analyte sensor computing device 105 can comprise a memory element (not shown), which can exist within a removable smart chip or a secure digital (“SD”) card or which can be embedded within a fixed chip. In certain example embodiments, Subscriber Identity Component (“SIM”) cards may be used. In various embodiments, the memory element may allow a software application resident on the device.
  • In embodiments, an I/O link connecting a peripheral device to the analyte sensor computing device 105 is protocol-specific with a protocol-specific connector port that allows a compatible peripheral device to be attached to the protocol-specific connector port (i.e., a USB keyboard device would be plugged into a USB port, a router device would be plugged into a LAN/Ethernet port, etc.) with a protocol-specific cable. Any single connector port would be limited to peripheral devices with a compatible plug and compatible protocol. Once a compatible peripheral device is plugged into the connector port, a communication link would be established between the peripheral device and a protocol-specific controller.
  • In embodiments, a non-protocol-specific connector port is configured to couple the I/O interconnect with a connector port of the analyte sensor computing device 105, allowing multiple device types to attach to the analyte sensor computing device 105 through a single physical connector port. Moreover, the I/O link between the analyte sensor computing device 105 and the I/O complex is configured to carry multiple I/O protocols (e.g., PCI Express®, USB, DisplayPort, HDMI, etc.) simultaneously. In various embodiments, the connector port is capable of providing the full bandwidth of the link in both directions with no sharing of bandwidth between ports or between upstream and downstream directions. In various embodiments, the connection between the I/O interconnect and the analyte sensor computing device 105 supports electrical connections, optical connections, or both.
  • In some embodiments, the one or more processors 140, flash memory, and/or a storage device includes associated firmware storing programming instructions configured to enable the analyte sensor computing device 105, in response to execution of the programming instructions by one or more processors 140, to practice all or selected aspects of a method of calibrating a sensor (e.g., analyte sensor(s) 107 at FIG. 1) inserted into the tissue of a subject using a computing device, in accordance with embodiments of the present disclosure.
  • In embodiments, the sensor communication module 142 may enable wired and/or wireless communications for the transfer of data to and from the analyte sensor computing device 105, for example to and/or from one or more sensors, (e.g., analyte sensor(s) 107 at FIG. 1). As one example, sensor communication module 142 may comprise a transmitter and/or a transmitter/receiver. In some examples, the transmitter and/or transmitter/receiver may be coupled, for example physically and/or electrically, to one or more sensors (e.g., analyte sensor(s) 107 at FIG. 1).
  • In various embodiments, the analyte sensor computing device 105 also includes a network interface configured to connect the analyte sensor computing device 105 to one or more networked computing devices wirelessly via a transmitter and a receiver (or optionally a transceiver) and/or via a wired connection using a communications port. In embodiments, the network interface and the transmitter/receiver and/or communications port are collectively referred to as a “communication module”. In embodiments, the wireless transmitter/receiver and/or transceiver may be configured to operate in accordance with one or more wireless communications standards. The term “wireless” and its derivatives may be used to describe circuits, devices, systems, methods, techniques, communications channels, etc., that may communicate data through the use of modulated electromagnetic radiation through a non-solid medium. The term does not imply that the associated devices do not contain any wires, although in some embodiments they might not. In embodiments, the analyte sensor computing device 105 includes a wireless communication module for transmitting to and receiving data, for example for transmitting and receiving data from a network, such as a telecommunications network. In examples, the communication module transmits data, including video data, though a cellular network or mobile network, such as a Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), cdmaOne, CDMA2000, Evolution-Data Optimized (EV-DO), Enhanced Data Rates for GSM Evolution (EDGE), Universal Mobile Telecommunications System (UMTS), Digital Enhanced Cordless Telecommunications (DECT), Digital AMPS (IS-136/TDMA), and Integrated Digital Enhanced Network (iDEN), Long-Term Evolution (LTE), 3rd generation mobile network (3G), 4th generation mobile network (4G), and/or 5th generation mobile network (5G) networks. In embodiments, the computing device 100 is directly connect with one or more devices via the direct wireless connection by using, for example, Bluetooth and/or BLE protocols, WiFi protocols, Infrared Data Association (IrDA) protocols, ANT and/or ANT+ protocols, LTE ProSe standards, and the like. In embodiments, the communications port is configured to operate in accordance with one or more known wired communications protocol, such as a serial communications protocol (e.g., the Universal Serial Bus (USB), FireWire, Serial Digital Interface (SDI), and/or other like serial communications protocols), a parallel communications protocol (e.g., IEEE 1284, Computer Automated Measurement And Control (CAMAC), and/or other like parallel communications protocols), and/or a network communications protocol (e.g., Ethernet, token ring, Fiber Distributed Data Interface (FDDI), and/or other like network communications protocols).
  • In embodiments, the analyte sensor computing device 105 is configured to run, execute, or otherwise operate one or more applications. In embodiments, the applications include native applications, web applications, and hybrid applications. For example, the native applications are used for operating the analyte sensor computing device 105, sensor(s) (e.g., sensors 107 at FIG. 1) coupled to the analyte sensor computing device 105, and other like functions of the analyte sensor computing device 105. In embodiments, native applications are platform or operating system (OS) specific or non-specific. In embodiments, native applications are developed for a specific platform using platform-specific development tools, programming languages, and the like. Such platform-specific development tools and/or programming languages are provided by a platform vendor. In embodiments, native applications are pre-installed on analyte sensor computing device 105 during manufacturing, or provided to the analyte sensor computing device 105 by an application server via a network (e.g., network 115 at FIG. 1). Web applications are applications that load into a web browser of the analyte sensor computing device 105 in response to requesting the web application from a service provider. In embodiments, the web applications are websites that are designed or customized to run on a computing device by taking into account various computing device parameters, such as resource availability, display size, touch-screen input, and the like. In this way, web applications may provide an experience that is similar to a native application within a web browser. Web applications may be any server-side application that is developed with any server-side development tools and/or programming languages, such as PHP, Node.js, ASP.NET, and/or any other like technology that renders HTML. Hybrid applications may be a hybrid between native applications and web applications. Hybrid applications may be a standalone, skeletons, or other like application containers that may load a website within the application container. Hybrid applications may be written using website development tools and/or programming languages, such as HTML5, CSS, JavaScript, and the like. In embodiments, hybrid applications use browser engine of the analyte sensor computing device 105, without using a web browser of the analyte sensor computing device 105, to render a website's services locally. In some embodiments, hybrid applications also access computing device capabilities that are not accessible in web applications, such as the accelerometer, camera, local storage, and the like.
  • Any combination of one or more computer usable or computer readable medium(s) may be utilized with the embodiments disclosed herein. The computer-usable or computer-readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific examples (a non-exhaustive list) of the computer-readable medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device. Note that the computer-usable or computer-readable medium can even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory. In the context of this document, a computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer-usable medium may include a propagated data signal with the computer-usable program code embodied therewith, either in baseband or as part of a carrier wave. The computer usable program code may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc.
  • Computer program code for carrying out operations of the present disclosure may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's computing device, as a stand-alone software package, partly on the user's computing device and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computing device, through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computing device, (for example, through the Internet using an Internet Service Provider), or wireless network, such as described above.
  • Furthermore, example embodiments may be implemented by hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof. When implemented in software, firmware, middleware or microcode, the program code or code segments to perform the necessary tasks may be stored in a machine or computer readable medium. A code segment may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, program code, a software package, a class, or any combination of instructions, data structures, program statements, and the like.
  • In various embodiments, an article of manufacture may be employed to implement one or more methods as disclosed herein. The article of manufacture may include a computer-readable non-transitory storage medium and a storage medium. The storage medium may include programming instructions configured to cause an apparatus to practice some or all aspects of a method of calibrating an analyte sensor using a computing device, in accordance with embodiments of the present disclosure.
  • The storage medium may represent a broad range of persistent storage medium known in the art, including but not limited to flash memory, optical disks or magnetic disks. The programming instructions, in particular, may enable an apparatus, in response to their execution by the apparatus, to perform various operations described herein. For example, the storage medium may include programming instructions configured to cause an apparatus to practice some or all aspects of a method of conducting calibration of an analyte sensor (e.g., sensor(s) 107 at FIG. 1) using a computing device (e.g., analyte sensor computing device 105 at FIG. 1), in accordance with embodiments of the present disclosure.
  • Analyte sensing device 107 may comprise an analyte sensing element 114. In some examples, analyte sensing element 114 may comprise one or more wire(s) or electrode(s) for translating an analyte (e.g., glucose) concentration into a representative electrical signal. Analyte sensing device 107 may further comprise a communication module 108 (e.g., transmitter, receiver, or transceiver) for communicating data (wired or wirelessly) and other information over network 115. In some examples, analyte sensing device 107 may further include a microprocessor 112 and a printed circuit board 113, similar to that discussed above for the analyte sensor computing device. Other components of analyte sensing device 107 that are not shown may include one or more of a memory controller, volatile memory (e.g., DRAM), non-volatile memory (e.g., ROM), flash memory, etc.
  • In some embodiments where CAM system 100 is configured as a CGM system, the system may in some examples include an insulin delivery unit 170. Insulin delivery unit 170 may be comprised of at least three parts, including but not limited to insulin pump 171, tubing 172 and infusion set 173. In an embodiment, insulin pump 171 may be battery powered and may contain (or be fluidically coupled to) an insulin reservoir (e.g., container), a pumping mechanism (e.g., pump driven by a small motor) and one or more buttons and/or touch screen (not shown) to program insulin delivery. In some examples, insulin pump 171 may receive instructions for insulin delivery over network 115, from one of analyte sensor computing device 105 or analyte sensing device 107. The instructions may be based on glucose concentrations as obtained via analyte sensing device 107. In such an example, it may be understood that insulin delivery unit 170 may operate in a closed-loop fashion with other components of CGM system 100 (e.g., analyte sensor computing device 105 and analyte sensing device 107) to mimic the way a pancreas works. It may be understood that each of insulin pump 171, tubing 172 and infusion set 173 may be coupled to each other in order to enable insulin pump 171 to deliver insulin to a subject by way of tubing 172 and infusion set 173. While insulin pump 171 may be battery powered, it may be understood that in some additional or alternative examples insulin pump 171 may be powered by electrically coupling insulin pump 171 to an external power source.
  • In some examples, insulin pump 171 may include buttons and/or a touch screen (not shown) for programming insulin delivery parameters. In another additional or alternative example, as mentioned above, insulin pump 171 may receive instructions for insulin delivery over network 115. Accordingly, in some examples insulin pump 171 may include a communication module 176 (e.g., receiver, or transceiver) capable of receiving and/or sending information (wired or wirelessly) over network 115, a printed circuit board 174, and a microprocessor 175. Other components of insulin pump 171 that are not shown may include one or more of a memory controller, volatile memory (e.g., DRAM), non-volatile memory (e.g., ROM), flash memory, etc.
  • Tubing 172 may in some examples comprise a thin tube fluidically coupled to each of the insulin reservoir and infusion set 173. Tubing 172 may be plastic, Teflon™ etc. Infusion set 173 may comprise componentry made of Teflon™ and/or steel, and may attach to skin of a subject by way of an adhesive patch. The infusion set 173 may include a short thin tubing (e.g., cannula) that is inserted to skin via a needle housed within the cannula. After insertion, the needle may be removed and the thin cannula may remain under the skin. It may be understood that the above description relates to an example infusion set, but other similar infusion sets may be used interchangeably without departing from the scope of this disclosure.
  • Turning now to FIG. 2, an example method 200 is shown for calibrating an analyte sensor (e.g., analyte sensor(s) 107 at FIG. 1) and based on the calibration, determining an analyte value (e.g., amount, level, concentration, etc.). Method 200 may comprise software instructions stored on non-transitory computer readable medium that, when executed by a processor, cause the processor to perform the instructions to calibrate the analyte sensor. As a representative example, the analyte is glucose and the analyte sensor is a glucose sensor, more specifically, a CGM sensor. It may be understood that method 200 is derived at least in part based on the model shown in detail at FIG. 3, and includes steps of calculating particular values/parameters (some variables of which are illustrated near corresponding blocks or steps at FIG. 2) that will be discussed in greater detail following overall description of the methodology of FIG. 2. As such values/parameters and corresponding variables will be discussed in greater detail below following the high level description of the methodology of FIG. 2, specific reference is not made to the variables illustrated at FIG. 2 as part of the high level description. However, the variables serve to orient the reader to various concepts associated with the method of FIG. 2 and discussed herein.
  • Method 200 begins at 205, and includes indicating whether conditions are met for proceeding with the methodology illustrated at FIG. 2. In some examples, conditions being met at 205 may include a determined amount of time having elapsed since method 200 was previously performed on the same analyte sensor. In another additional or alternative example, conditions being met at 205 may include an indication that the analyte sensor is a recently inserted sensor, and that it is requested that the methodology of FIG. 2 be conducted on the newly inserted sensor. In another additional or alternative example, conditions being met at 205 may include an indication that one or more capillary analyte value(s) (e.g., capillary glucose values) have recently been obtained, for example obtained less than a predetermined timeframe ago (e.g., less than 1 hour ago, less than 45 minutes ago, less than 30 minutes ago, less than 15 minutes ago, less than 10 minutes ago, less than 5 minutes ago, less than 2 minutes ago, less than 1 minute ago, etc.). In another additional or alternative example, conditions being met at 205 may include an indication that the analyte sensor is not providing analyte concentration values that are accurate to within a desired threshold of actual blood analyte values (e.g., capillary blood analyte values measured via a test meter). Such an indication may be made, for example, via comparing analyte values as determined via the analyte sensor with other analyte values determined, for example, via a blood analyte meter.
  • If, at 205, conditions are not indicated to be met for conducting the methodology of FIG. 2, method 200 may end. Alternatively, responsive to conditions being met at 205, method 200 proceeds to 210. At 210, method 200 includes retrieving current values from the analyte sensor over a predetermined time duration. These current measurements can be continuous or at discrete points, for example, during the predetermined time duration. It may be understood that the current obtained at 210 may be noisy, for example comprising both high frequency low magnitude noise and low frequency higher magnitude noise components. Turning briefly to FIG. 4, graph 400 depicts an example noisy current that may be obtained at 210. Graph 400 plots sensor current against time, and includes an inset to illustrate the low frequency higher magnitude noise components 405, as compared to the high frequency lower magnitude noise 410.
  • Returning to FIG. 2, responsive to the current being retrieved from the analyte sensor, method 200 proceeds to 215. At 215, the method determines if a blood analyte value, such as a capillary glucose value, is available to calibrate the received current values. In some examples, the blood analyte value may be a first blood analyte value obtained subsequent to sensor insertion. However, in other examples, the blood analyte value may not be the first, but instead may comprise a value obtained subsequent to the first blood analyte value having been obtained post sensor insertion. It may be understood that the calibration methodology of FIG. 2 may be performed each time that a new blood analyte value is obtained.
  • At block 215, if it is determined that no blood analyte value (e.g., no new blood analyte value) is available to calibrate the received current values, the method proceeds to 220, where method 200 pauses until the blood analyte value is available to calibrate the received current values. A blood analyte value may not be available if a blood analyte value has not been received within a predetermined time duration of the query, for example.
  • Returning to step 215, responsive to an indication that there is a blood glucose value (e.g., 1st capillary glucose value, or newly obtained capillary glucose value) available to calibrate the received current values, then this blood glucose value is used for subsequent steps of method 200. Briefly, the blood analyte value is available to use for deconvolution in block 245 and parameter estimation in block 250 of the calibration step in block 240, as discussed below. Once the blood analyte value is available, the method proceeds to noise filtering in block 230.
  • In block 230 the analyte sensor current values are noise filtered. The noise in the current values from a given sensor can be broken down into two components that can be separately filtered. These two components are the low frequency noise attributed to physical disturbances on the sensor (e.g., physical pressure on the sensor, sensor movement attributable to exercise, or sensor dislodging) and high frequency low magnitude noise attributed to sensor measurement noise. In embodiments, the noise due to physical disturbances on the sensor is filtered out, for example using heuristic rules to detect and filter the low frequency noise with high magnitude that is attributed to the physical disturbances on the sensor. Briefly, sensor measurements outside of a desired or threshold range (e.g., greater than 60 nAmp or less than 0.5 nAmp) may in some examples be filtered out. For the heuristic filtering, the sensor current may be taken as the mean of previous measurements over a predetermined time period (e.g. 3 hours, 2 hours, 1 hour, etc.), as an example. Additionally or alternatively, sensor measurements may be considered outside the desired range, or in other words, erroneous or indicative of sensor degradation or general loss of sensitivity, responsive to the measurement(s) being greater than twice the mean of an immediately prior 10 minute measurement period. In such an example, the modified or filtered sensor current may be taken as a mean of the immediately prior 10 minute measurement period.
  • In embodiments, the high frequency low magnitude sensor measurement noise is filtered out by application of Kalman filtering. As one example, the low frequency higher magnitude noise is filtered first, followed by filtering of the high frequency lower magnitude noise, in sequential fashion. As another example, the high frequency lower magnitude noise is filtered first, followed by filtering of the low frequency higher magnitude noise. Simultaneous filtering of both the high frequency low magnitude and low frequency high magnitude noise is also within the scope of this disclosure.
  • Following noise filtering of the retrieved sensor current at block 230, method 200 proceeds to 235. At block 235 the method queries if a subsequent, i.e. 2nd, 3rd, 4th, etc., capillary glucose value is available. If there is not a subsequent, i.e. 2nd, 3rd, 4th, etc. capillary glucose value available for calibration, the noise filtered current can be used to estimate the glucose concentration in block 265. Then, method 200 may proceed to 270, where the estimated glucose concentration can be passed on, for example to a display device (e.g., touchscreen 110 associated with analyte sensor computing device 105 at FIG. 1), insulin delivery system (e.g., insulin delivery system 170 at FIG. 1), or other networked device to be. Briefly, it may be understood that capillary analyte values may be available at an interval. The interval may be approximately 12 hours, however the interval may be greater than or less than 12 hours (e.g., 24 hours), without departing from the scope of this disclosure. Accordingly, it may be understood that the current-to-glucose transformation model is updated via the methodology of FIG. 2 every, for example, 12-24 hours, and this updated modeling is assumed to be valid until a subsequent capillary analyte value is obtained. However, the current is available every minute, and accordingly is continuously and regularly transformed to glucose level using the last updated modeling. Accordingly, it may be understood that with every current reading (e.g., approximately every minute), method 200 determines whether a new capillary analyte value is available. If not, then the last updated model is used for transforming the current to glucose level. However, if available, then the new capillary analyte value is used to update the current-to-glucose transformation model per the methodology of FIG. 2 elaborated further below. If, for some reason a particular capillary analyte value cannot be used, then it may be understood that the user may be requested to take an additional capillary analyte value reading within a set time frame (e.g., within 10 minutes).
  • If an appropriate capillary analyte value is available at 235, the method proceeds to 240. Specifically, block 240 includes performing calibration of the noise filtered current signal using the subsequent, i.e. 2nd, 3rd, 4th, etc. capillary glucose value(s), by a process of deconvolution in block 245 and parameter estimation in block 250.
  • In block 245, the noise filtered current values are deconvoluted to blood glucose current value using Kalman-based deconvolution. In embodiments, the Kalman-based deconvolution uses a sequential Kalman filter (refer to FIG. 5 for an example sequential Kalman filter). In embodiments, the sequential Kalman filter is implemented over a time period prior to the calibration time sufficient for convergence, for example, using noise filtered sensor current values collected in a time window of between about 30 minutes and 120 minutes, such as a 60 minute time window prior to the calibration time. In embodiments, within this time window a sampling interval of between about 1 minute and about 15 minutes may be used, such as 5 minutes. In embodiments, the sequential Kalman filter includes between about 5 and about 20 recursions of the filter implementation, such as 13 recursions of the filter implementation. It is contemplated the method can include as many recursions of the filter implementation as necessary for convergence.
  • In block 250 the blood calibration parameters are estimated using a Kalman filter. In embodiments where the analyte sensor should estimate the analyte levels immediately after the first calibration and there is not enough convergence time for the Kalman filter (i.e. the calibration parameters state is only updated once) the initial estimate and covariance can be computed offline using training datasets (e.g., by utilizing a cubature Kalman filter, as will be discussed in greater detail below).
  • In block 255, the updated blood calibration parameters are stored.
  • In block 260, the interstitial parameters are updated based on the blood calibration parameters, as will be described in greater detail below.
  • Responsive to the interstitial parameters being updated at 260, method 200 proceeds to 265. At block 265, the blood analyte levels are estimated based on the interstitial parameters (step 260) and the noise filtered current (step 230). The blood analyte value(s) may be passed on, for example to a display device (e.g., touchscreen 110 associated with analyte sensor computing device 105 at FIG. 1), insulin delivery system (e.g., insulin delivery system 170 at FIG. 1) (where applicable), or other networked device, to be used. For example, in a situation where the analyte sensor is a glucose sensor, and where the analyte is glucose, method 200 may include computing an amount of insulin to be provided to the subject based on the determined blood analyte value(s). In one example, the computed insulin amount may be sent, along with one or more instructions, to the insulin delivery system so that an insulin pump may be controlled to deliver the desired amount of insulin. In another related example, the computed insulin amount may be displayed on a screen associated with, for example, a computing device (e.g., analyte sensor computing device 105 at FIG. 1) associated with the analyte sensor.
  • While particular reference is given to glucose as a model analyte, the methods, apparatuses, tangible media, and systems disclosed herein are applicable for any analyte sensor that has been inserted into the tissue of a subject. Other sensors that can be used with the methods, apparatuses, tangible media, and systems are, without limitation, sensors for the detection of albumin, alkaline phosphatase, alanine transaminase, aspartate aminotransferase, bilirubin, blood urea nitrogen, calcium, carbon dioxide (CO2), chloride, creatinine, glucose, gamma-glutamyl transpeptidase, hematocrit, lactate, lactate dehydrogenase, magnesium, oxygen, pH, phosphorus, potassium, sodium, total protein, uric acid, metabolic markers, and drugs. Other analytes are contemplated as well, including but not limited to acetaminophen, dopamine, ephedrine, terbutaline, ascorbate, uric acid, oxygen, d-amino acid oxidase, plasma amine oxidase, xanthine oxidase, reduced nicotinamide adenine dinucleotide phosphate (NADPH) oxidase, alcohol oxidase, alcohol dehydrogenase, pyruvate dehydrogenase, diols, ROS (reactive oxygen species), nitric oxide (NO), cholesterol, triglycerides, gentisic acid, ibuprophen, L-Dopa, methyl dopa, salicylates, tetracycline, tolazamide, tolbutamide, acarboxyprothrombin, acylcarnitine, adenine phosphoribosyl transferase, adenosine deaminase, albumin, alpha-fetoprotein, amino acid profiles (arginine (Krebs cycle), histidine/urocanic acid, homocysteine, phenylalanine/tyrosine, tryptophan); andrenostenedione, antipyrine, arabinitol enantiomers, arginase, benzoylecgonine (cocaine), biotinidase, biopterin, c-reactive protein, carnitine, carnosinase, cluster of differentiation 4 (CD4), ceruloplasmin, chenodeoxycholic acid, chloroquine, cholinesterase, conjugated 1-β hydroxy-cholic acid, cortisol, creatine kinase, creatine kinase MM isoenzyme, cyclosporin A, d-penicillamine, de-ethylchloroquine, dehydroepiandrosterone sulfate, DNA (deoxyribonucleic acid); alcohol dehydrogenase, alpha 1-antitrypsin, glucose-6-phosphate dehydrogenase, hemoglobin A, hemoglobin S, hemoglobin C, hemoglobin D, hemoglobin E, hemoglobin F, D-Punjab, beta-thalassemia, hepatitis B virus, human cytomegalovirus (HCMV), human immunodeficiency-1 (HIV-1), human T-cell leukemia virus type 1 (HTLV-1), Leber hereditary optic neuropathy, RNA (ribonucleic acid), phenylalanine, Plasmodium vivax, 21-deoxycortisol, desbutylhalofantrine, dihydropteridine reductase, diptheria/tetanus antitoxin, erythrocyte arginase, erythrocyte protoporphyrin, esterase D, fatty acids/acylglycines, free β-human chorionic gonadotropin, free erythrocyte porphyrin, free thyroxine (FT4), free tri-iodothyronine (FT3), fumarylacetoacetase, galactose/gal-1-phosphate, galactose-1-phosphate uridyltransferase, gentamicin, glucose-6-phosphate dehydrogenase, glutathione, glutathione perioxidase, glycocholic acid, glycosylated hemoglobin, halofantrine, hemoglobin variants, hexosaminidase A, human erythrocyte carbonic anhydrase I, 17-alpha-hydroxyprogesterone, hypoxanthine phosphoribosyl transferase, immunoreactive trypsin, lactate, lead, lipoproteins ((a), B/A-1, P), lysozyme, mefloquine, netilmicin, phenobarbitone, phenyloin, phytanic/pristanic acid, progesterone, prolactin, prolidase, purine nucleoside phosphorylase, quinine, reverse tri-iodothyronine (rT3), selenium, serum pancreatic lipase, sissomicin, somatomedin C, specific antibodies (adenovirus, anti-nuclear antibody, anti-zeta antibody, arbovirus, Aujeszky's disease virus, dengue virus, Dracunculus medinensis, Echinococcus granulosus, Entamoeba histolytica, enterovirus, Giardia duodenalisa, Helicobacter pylori, hepatitis B virus, herpes virus, HIV-1, IgE (atopic disease), influenza virus, middle Eastern respiratory syndrome (MERS), severe acute respiratory syndrome (SARS)-coronavirus (CoV), SARS-CoV-2, Leishmania donovani, leptospira, measles/mumps/rubella, Mycobacterium leprae, Mycoplasma pneumoniae, Myoglobin, Onchocerca volvulus, parainfluenza virus, Plasmodium falciparum, poliovirus, Pseudomonas aeruginosa, respiratory syncytial virus, rickettsia (scrub typhus), Schistosoma mansoni, Toxoplasma gondii, Trepenoma pallidium, Trypanosoma cruzi/rangeli, vesicular stomatis virus, Wuchereria bancrofti, yellow fever virus), specific antigens (hepatitis B virus, HIV-1), succinylacetone, sulfadoxine, theophylline, thyrotropin (TSH), thyroxine (T4), thyroxine-binding globulin, trace elements, transferrin, UDP-galactose-4-epimerase, urea, uroporphyrinogen I synthase, vitamin A, white blood cells, and zinc protoporphyrin. Salts, sugar, protein, fat, vitamins, and hormones naturally occurring in blood or interstitial fluids can also constitute analytes in certain embodiments. The analyte can be naturally present in the biological fluid, for example, a metabolic product, a hormone, an antigen, an antibody, and the like. Alternatively, the analyte can be introduced into the body, for example, a contrast agent for imaging, a radioisotope, a chemical agent, a fluorocarbon-based synthetic blood, or a drug or pharmaceutical composition, including but not limited to insulin, ethanol, cannabis (marijuana, tetrahydrocannabinol, hashish), inhalants (nitrous oxide, amyl nitrite, butyl nitrite, chlorohydrocarbons, hydrocarbons), cocaine (crack cocaine), stimulants (amphetamines, methamphetamines, Ritalin, Cylert, Preludin, Didrex, PreState, Voranil, Sandrex, Plegine), depressants (barbituates, methaqualone, tranquilizers such as Valium, Librium, Miltown, Serax, Equanil, Tranxene), hallucinogens (phencyclidine, lysergic acid, mescaline, peyote, psilocybin), narcotics (heroin, codeine, morphine, opium, meperidine, Percocet, Percodan, Tussionex, Fentanyl, Darvon, Talwin, Lomotil), designer drugs (analogs of fentanyl, meperidine, amphetamines, methamphetamines, and phencyclidine, for example, Ecstasy), anabolic steroids, and nicotine. The metabolic products of drugs and pharmaceutical compositions are also contemplated analytes. Analytes such as neurochemicals and other chemicals generated within the body can also be analyzed, such as, for example, ascorbic acid, uric acid, dopamine, noradrenaline, 3-methoxytyramine (3MT), 3,4-dihydroxyphenylacetic acid (DOPAC), homovanillic acid (HVA), 5-hydroxytryptamine (5HT), histamine, Advanced Glycation End Products (AGEs) and 5-hydroxyindoleacetic acid (FHIAA).
  • Problem Formulation
  • As mentioned above, the method of FIG. 2 is derived from the model depicted at FIG. 3. In terms of this discussion, reference is made to a glucose sensor, where the analyte is glucose, for clarity. With regard to Equation (1) below, let yI(t) be the sensor-generated noise-free electrical current and uI(t) be the interstitial glucose level. The objective is to determine uI(t) from yI(t) using the model of FIG. 3:

  • y I(t)=a 1 I −u I(t)+a 2 I +a 3 I ·Δt  (1)
  • where {a1 I, a2 I and a3 I} are interstitial calibration parameters (refer to step 260 of method 200) and Δt is the time since sensor insertion. Thus, the problem is to estimate the interstitial calibration parameters {a1 I, a2 I and a3 I}. Estimating the calibration parameters faces two challenges: (i) yI(t) cannot be measured directly; instead a distorted version of yI(t) is measured with high- and low-frequency noise, and (ii) the sensor response varies with sensor age, and the time-variability is patient- and sensor-dependent. Thus, {a1 I, a2 I and a3 I} are updated periodically using intermittent capillary glucose measurements.
  • Let uB(t) be the intermittent capillary glucose measurement and yB(t) be a hypothetical sensor current if the sensor was inserted in the blood instead of the interstitial fluid. Assuming the sensor has the same dynamics in the interstitial fluids and blood, yB(t) is related to uB(t) by Equation (2):

  • y B(t)=a 1 B·u B(t)+a 2 B +a 3 B ·Δt  (2)
  • where {a1 B, a2 B and a3 B} are blood calibration parameters. It can be shown that the blood calibration parameters are related to the interstitial calibration parameters by the following Equations (3):

  • a 1 I =a 1 B ,a 2 I =a 2 B −a 3 B and a 3 I =a 3 B  (3)
  • Thus, the calibration problem can be solved by estimating {a1 B, a2 B, and a3 B}. Note that yB(t) can be determined from yI(t) by deconvolution with h(t)=τ1e−t/τ, assuming first order diffusion dynamics where τ is the time constant of glucose diffusion from the blood to the interstitial fluid.
  • Real-Time Glucose Estimation
  • The glucose estimation method includes three steps:
  • (A) noise filtering,
    (B) estimation of calibration parameters,
    (C) estimation of blood glucose level.
    The disclosed method utilizes Kalman filtering in the first two steps.
  • Summary of Kalman Filter
  • The Kalman filter operates over a linear dynamical state space model defined by Equation (4) and Equation (5):

  • x k =F k x k−1 +w k  (4)

  • z k =H k x k +v k  (5)
  • where Xk
    Figure US20200383643A1-20201210-P00001
    n and zk
    Figure US20200383643A1-20201210-P00001
    d are state and measurement vectors, respectively, at kth instant of time, Fk and Hk are constants matrices with appropriate dimensions, and wk and vk are process and measurement noises, respectively. wk and vk are assumed to be Gaussian with zero mean and covariances Qk and Rk, respectively. The Kalman filter estimates the elements of Xk using the observed quantities zk.
  • The Kalman filter includes two steps; prediction and update.
  • Prediction:
  • This step determines the prior state estimate ({circumflex over (X)}k|k−1) and the state covariance (Pk|k−1) via Equation (6):

  • {circumflex over (x)} k|k−1 =F k {circumflex over (x)} k−1 |k−1

  • P k|k−1 =F k P k−1|k−1 F k T +Q k  (6)
  • Update:
  • In this step, the posterior state estimate, {circumflex over (X)}k|k, and covariance, Pk|k, are computed after a new measurement of z_k is available. Prior to computing {circumflex over (X)}k|k and Pk|k, the innovation vector ({tilde over (y)}k|k−1), the innovation covariance (Sk), and the Kalman gain (Kk) are computed as:

  • {tilde over (y)} k|k−1 =z k −H k {circumflex over (x)} k−1

  • S k =H k P k|k−1 H k T +R k

  • K k =P k|k−1 H k T(S k)−1  (7)
  • Subsequently, {circumflex over (X)}k|k and Pk|k are computed as:

  • {circumflex over (x)} k|k ={circumflex over (x)} k|k−1 +K k {tilde over (y)} k|k−1  (8)

  • P k|k=(I−K k H k)P k|k−1  (9)
  • It may be understood that the initial state estimate ({circumflex over (X)}0|0) and covariance (P0|0) may be assigned arbitrarily since they converge to the true values over time. However, if high accuracy is desired at the start of the filter operation, then X0|0 and covariance P0|0 may be assigned precisely.
  • Noise Filtering
  • Assuming additive noises, the measured electrical current yI Tr(t) can be written as

  • y I Tr(t)=y I(t)+w I In(t)+w I Pt(t)  (10)
  • where wI In(t) is a sensor measurement noise and wI Pt(t) is a noise due to physical disturbances on the sensor (e.g., physical pressure on the sensor or sensor dislodging). Typically, wI In(t) is a high frequency signal with low magnitude and wI Pt(t) is a low frequency noise with high magnitude. As mentioned above, FIG. 4 shows a sample noisy current signal that includes both the higher magnitude, lower frequency noise (plot 405 at FIG. 4) and the lower magnitude, higher frequency noise (plot 410 at FIG. 4).
  • A set of heuristic rules were implemented to detect and filter wI Pt(t). The resultant current yI b Rr(t) according to Equation (11) is:

  • y Ib T r(t)=y I(t)+w I In(t)  (11)
  • The remaining noise wI In(t) is filtered by implementing a Kalman filter. The state and measurement variables of the Kalman filter are defined as Xk y I =yI(tk), and Zk y I =yI b Tr(t) respectively. The sampling interval is only 1 minute, hence a random walk model defines the state dynamics according to Equation (12):

  • x k y I =x k−1 y I +w k−1 y I   (12)
  • where wI y I is a process noise added to compensate the slight current variation from tk−1 to tk.
  • Replacing yI(tk) with Xk y I and yI b Tr(tk) with zk y I in Equation (11), the measurement model would be:

  • z k y I =x k y I +v k y I   (13)
  • where vk y I =wI In(tk).
  • The outcome of Kalman filter (Equations (6)-(9)), implemented over Equations (12) and (13), is {circumflex over (X)}k|kI(tk), which is the estimate of yI(tk).
  • Estimation of Calibration Parameters
  • The calibration parameters {a1 I, a2 I and a3 I} are updated when a new capillary glucose measurement becomes available (around once or less per day; calibration times are denoted as ts). The calibration parameters are estimated following a two-step process.
  • yB(ts) estimation
  • yB(ts) can be estimated by deconvoluting yI(t) over h(t) at t=ts. A direct inverse solution of the deconvolution problem is notoriously difficult to implement because of its well-known inherent ill-conditioning. The ill-conditioning can be mitigated by regularization, but it requires the solution of complex integrals, which can be computationally demanding. To reduce the computational burden, a modified Kalman-based approach is herein implemented, which relies on a sequential Kalman filter (see FIG. 5 as an example).
  • To ensure the convergence of the sequential Kalman filter, it was implemented over 60-min time window prior to the calibration time (i.e. (ts−60) to ts). A sampling interval of 5 minutes was used which results in 13 samples and hence 13 recursions of the filter implementation. The sequential Kalman filter adds a new state at every recursion as follows: {yB(t1)} at t1, {yB(t2); yB(t1)} at t2, . . . , {yB(t13); yB(t12); . . . ; yB(t2)} at t13. For implementation simplicity, the state variable was assumed to be 13-dimensional at all recursions by assuming 0 values in the extra dimensions. Therefore, the 13-dimensional state variable at jth recursion is formulated as Xj y B =[yB(tj),yB(tj-1), . . . , yB(t1), 0, 0, . . . , 0]T where j{1, 2, . . . 13} and tj−tj-1=5.
  • The state dynamics can be represented by a random walk model:

  • x j y B =x j-1 y B +w j-1 y B   (14)
  • where wi yB is process noise (13-dimensional vector) added to compensate the possible changes in yB(t) from tj-1 to tj. The process noise is assumed to be Gaussian with zero mean and covariance Qi yB.
  • The measurement was considered to be the filtered sensor current, i.e. Zj yB=yI(t). The measurement model follows a linear structure

  • z j y B =H j y B x j y B +v j yB  (15)
  • where Hj yB is transition matrix and vj yB is Gaussian noise with zero mean and covariance Rj yB. Following the discussion in the problem formulation, yI(t) is related to yB(t) through the impulse response h(t)=t−1e−t/t. Alternatively, we can say that Zj yB is related to Xj yB through h(t). Thus, we can determine Hj yB by matrix representation of discretized h(t) (P. Rousseaux and J. Troquet, “Deconvolution of time-varying systems by Kalman filtering: its application to the computation of the active state in the muscle,” Sign. Proc., vol. 10, no. 3, pp. 291-301, April 1986).
  • The sequential Kalman filter outcome after the 13th recursion is {circumflex over (X)}13 yB=[ŷB(t13); ŷB(t12); . . . ; ŷB(t1)]T. The desired estimate at the calibration time is ŷB(ts)=ŷB(t1). A flowchart of the sequential Kalman filter is presented in FIG. 5.
  • Parameter Estimation
  • The blood calibration parameters are estimated using a Kalman filter with a state defined as Xs BCP=[a1 B, a2 B a3 B]T. A random walk model characterizes the state dynamics:

  • x s BCP =x s-1 BCP +w s-1 BCP  (16)
  • where ws BCP is zero mean Gaussian noise added to compensate the possible changes in the parameters between calibrations points. The measurement variable is set to be the deconvoluted current, zs BCPB(ts). Following Equation (2), the measurement can be written as

  • z s BCP =H s BCP x s BCP +v s BCP  (17)
  • where Hs BCP=[uB(tj) 1Δt] and vs BCP is noise added to account for the error incurred during the estimation of yB(ts). The noise is assumed to be zero mean Gaussian with covariance Rs BCP.
  • The outcomes of Kalman filter, implemented over (16) and (17), are the new estimates of the blood calibration parameters, {circumflex over (X)}s BCP 1 B, â2 B, â3 B]T. The estimates of the interstitial calibration parameters {a1 I, a2 I, a3 I} are then calculated based on Equation (3) as shown by Equation (18):

  • â 1 I 1 B 2 I 2 B −â 3 B·τ and â 3 I 3 B  (18)
  • The glucose sensor should estimate the glucose levels immediately after the first calibration. Therefore, the Kalman filter does not have enough convergence time (the calibration parameters state is only updated once), and hence a precise knowledge of the initial estimate ({circumflex over (X)}0|0 BCP) and covariance (P0|0 BCP) is needed. The initial estimate and covariance were computed offline using training datasets (refer to the section “Estimation of {circumflex over (X)}0|0 BCP and covariance P0|0 BCP”).
  • Estimation of Glucose Concentration
  • An inverse implementation of Equation (1) estimates blood glucose levels from the filtered sensor electrical current:
  • u ^ I ( t ) = y I ( t ) - a ^ 2 I - a ^ 3 I · Δ t a ^ 1 I ( 19 )
  • A high-level flowchart for estimating ul (t) at t=t is provided in FIG. 2.
  • Database and Model Training
  • Database
  • Data for the database was collected from 16 patients with type 1 diabetes. Fourteen patients wore two sensors, one on the left side and another on the right side of the abdomen, while the remaining 2 patients started with two sensors but had one sensor removed before the end of the study. Thus, the two remaining patients were left with a single sensor at the end of the study. Data for each subject was collected for 7 days (e.g., 7 days of data collection each for each subject). Subsequently, 30 datasets were available for the analysis. The datasets are comprised of sensor electrical current, two capillary glucose measurements per day (for calibration), and reference glucose measurements on days 1, 4, and 7. The reference glucose measurements were obtained every 15 minutes in 12-hour clinical sessions on days 1, 4, and 7. The reference glucose measurements were performed using Yellow Spring Instrument (YSI), OH, USA.
  • The 30 datasets were divided in two sets, a training set of 10 datasets and a test set with 20 datsets. The training set was used to determine the initial estimate and covariance, {circumflex over (X)}0|0 BCP and P0|0 BCP to initialize the Kalman filter.
  • Estimation of {circumflex over (X)}0|0 BCP and covariance P0|0 BCP
  • Using yI(t) (filtered electrical current) and uB(t) (reference glucose values) on day 1 of the training datasets, {circumflex over (X)}0|0 BCP, P0|0 BCP and τ were estimated to initialize the Kalman filter. Blood calibration parameters {a1 B, a2 B, a3 B} and t were estimated for each individual dataset (denoted as {â1 B, â2 B, â3 B, {circumflex over (τ)}}, then {circumflex over (X)}0|0 BCP and P0|0 BCP were calculated as the sample mean and sample covariance of {â1 B, â2 B, â3 B} over the datasets and t as the sample mean of {circumflex over (r)} over the datasets.
  • Beginning with Equation (1) which establishes the relationship between yI(t). and uI(t), as the available data are yI(t) and uB(t), Equation (1) is written as:
  • y I ( t ) = a 1 I · ( u B ( t ) ( 1 τ e - t / τ ) ) + a 2 I + a 3 I · Δ t ( 20 )
  • by replacing uI(t) with:
  • u I ( t ) = u B ( t ) h ( t ) = u B ( t ) ( 1 τ e - t / τ ) ( 21 )
  • where ⊗ represents convolution.
  • Since yI(t) and uB(t) are known, {â1 B, â2 B, â3 B} can be obtained by implementing a parameter estimation scheme over the nonlinear model in Equation (20). The Kalman filter-based parameter estimation discussed earlier cannot be used due to model nonlinearity. However, the same idea can be used (i.e., using filtering as a parameters estimation method) by replacing the ordinary Kalman filter with a nonlinear filter. Several nonlinear filters were implemented, and it was found the most promising results with a cubature Kalman filter (comparisons not shown).
  • Similar to the ordinary Kalman filter, the cubature Kalman filter is implemented over a dynamic state space model. To this regard, the state and measurement variables were defined as xP=[a1 I a2 I a3 τ]T and zk P=yI(tk), respectively. The state dynamics can be represented by a random walk model:

  • x k P =x k−1 P +w k P  (22)
  • where Xk P is noise, k∈{1, 2, . . . , ND1} and ND1 is the number of reference glucose measurements on Day 1. Following (20), the measurement model is formulated as
  • z k P = x x P ( 1 ) · ( u B ( t k ) ( 1 x x P ( 4 ) e - t k / x k P ( 4 ) ) ) + x x P ( 2 ) + x x P ( 3 ) · Δ t + v x P ( 23 )
  • where vk P is measurement noise. The output of the cubature Kalman filter, implemented over equations (22) and (23), is {circumflex over (X)}k P=[â1 Ik, â2 Ik, â3 Ik, {circumflex over (τ)}k]T. The estimates {â1 B, â2 B, â3 B} are obtained as the mean of the last 10 values of {circumflex over (X)}k P (i.e., k∈(ND1−9, ND1]). The estimates {â1 B, â2 B, â3 B} of each dataset were obtained from {â1 I, â2 I, â2 I} using equation (3). The sample mean and sample covariance of {â1 B, â2 B, â2 B}, computed over all training datasets, return {circumflex over (X)}0|0 BCP and P0|0 BCP. Similarly, mean of {circumflex over (τ)} over all training patients return tau (which was obtained as 5.4 seconds).
  • Implementation and Results
  • The developed method was implemented in Matlab 2017 on a personal computer with i3, 2.00 GHz processor, 4 GB RAM, and 64-bit Windows operating system. The performance analysis is based on mean absolute relative difference (MARD) between the estimated glucose and reference glucose measurements. MARD is defined as:
  • M A R D = 1 n i = 1 n { 100 · u B ( t i ) - u ^ B ( t i ) u B ( t i ) } ( 24 )
  • where uB(t1), uB(t2), . . . , uB(tn) are the reference glucose measurements and ûB(t1), ûB(t2), . . . , ûB(tn) are the corresponding glucose estimates.
  • Performance Analysis
  • Comprehensive Analysis
  • A sample plot of estimated blood glucose, reference glucose measurements, and sensor electric current of a representative sensor datasets on days 1 (top graph), 4 (middle graph), and 7 (bottom graph) of the sensor age is shown in FIG. 6. The estimated glucose levels closely match the reference glucose measurements. Note the variation in sensor sensitivity between days (the sensor currents on days 1, 4, and 7 are different for similar ranges of measured glucose concentration), and that did not affect the accuracy of the disclosed method, supporting its ability in handling day-to-day variations in sensor sensitivity.
  • The MARD of 20 sensor datasets on different days of sensor age is presented in FIG. 7, demonstrating that the disclosed method performs satisfactorily across different datasets and different sensor ages. Average MARD on days 1, 4, and 7 were 10.32%, 10.71%, and 11.89%, with an overall average of 10.97% (Table 1).
  • TABLE I
    Mean MARD of the proposed and alternative
    algorithms for 20 datasets
    Proposed algorithm Alternative algorithm
    Day
    1 10.32 12.46
    Day 4 10.71 15.75
    Day 7 11.89 14.17
    Overall average 10.97 14.13
  • Comparison with an Alternative Method
  • The performance of the disclosed method was compared with an alternative method that uses minimum error variance estimator (instead of a Kalman filter) to estimate the calibration parameters. The average MARDs for this alternative method on days 1, 4, and 7 of sensor age were 12.46%, 15.75%, and 14.17%, and were larger than those of the disclosed method (Table 1). Moreover, MARD higher than 25% was observed on 5 occasions with the alternative method compared to 0 occasion with the disclosed method.
  • Unlike the Kalman filter, the minimum error variance estimator does not update nor propagate, in real time, the prior information about the calibration parameters. This estimator requires instead separate priors with every parameters update (i.e., at calibration times). Reference glucose values on days 1, 4, and 7 in the training set are used to generate day-specific population priors, and priors for the days in between were obtained from the previous day with training data (i.e., prior for days 2 and 3 were estimated using datasets in day 1). This may have contributed to the degraded performance of the minimum error variance estimator.
  • Delay Analysis
  • The disclosed method implements several Kalman filters, and each implementation introduces delay in the glucose estimation. Moreover, the glucose diffusion between the interstitial and the blood spaces introduces delay. The overall delay by plotting the mean and median MARDs were examined comparing the estimated glucose levels with shifted reference glucose levels by various values (FIG. 8). The mean and median MARDs achieve minimum values at 5-min shift, which indicates that the estimates lag the true glucose levels by around 5 minutes.
  • Estimation Accuracy of τ
  • The Cubature Kalman filter estimated τ to be 5.4 min, using offline analysis of the training datasets. To assess this estimate, MARD was calculated for various τ values (Table II; remember that the testing datasets were not used to estimate τ). The MARD was smallest at τ=5.4, demonstrating the accuracy of the Cubature Kalman filter. Table II further shows a sharp decline in the glucose estimation accuracy with small deviation in τ, demonstrating the importance of accurate offline analysis to estimate τ.
  • TABLE II
    MARD for various τ
    Average MARD
    τ Day 1 Day 4 Day 7 Overall mean
    4.8 11.76 15.71 19.04 15.50
    4.9 11.24 14.20 17.16 14.20
    5.0 10.85 12.99 15.55 13.13
    5.1 10.57 12.01 14.21 12.26
    5.2 10.39 11.26 13.13 11.59
    5.3 10.31 10.85 12.35 11.17
    5.4 10.32 10.71 11.89 10.97
    5.5 10.40 10.84 11.69 10.98
    5.6 10.53 11.19 11.73 11.15
    5.7 10.72 11.74 11.96 11.47
    5.8 10.96 12.44 12.34 11.91
    5.9 11.23 13.27 12.87 12.46
  • Drift in Sensor Sensitivity
  • FIG. 9 shows the distribution of a1 B, a2 B, and a3 B in a sample subject over the sensor wear time. The calibration parameters change significantly between days, demonstrating the ability of the disclosed method to handle significant changes in sensor sensitivity. This also shows the limitation of using priors on days 2 and 3 derived from offline data on day 1 (as needed when using a minimum variance estimator).
  • Brief Discussion on Cubature Kalman Filtering (CKF)
  • The CKF is a nonlinear extension of linear Kalman filter, known for high accuracy at significantly low computational cost compared to other nonlinear filters. It is implemented over nonlinear state space model, represented by process and measurement models, as

  • x k+1=ε(x k)+w k  (25)

  • and

  • y k+1=γ(x k+1)+v k,  (26)
  • where xk
    Figure US20200383643A1-20201210-P00001
    n and yk
    Figure US20200383643A1-20201210-P00001
    d are state and measurement variables, ϕ: xk→xk+1 and γ: xk→yk+1 are nonlinear functions, and wk and vk are zero mean Gaussian noises with covariances Qk and Rk, respectively.
  • The steps involved in the implementation of CKF are explained below.
  • Offline Computation
  • For an n-dimensional system, the sample point set (4), also known as cubature points, and corresponding weight set (W) are computed offline, as
  • ξ = n [ I n - I n ] ; W = 1 2 n · 1 2 n ( 27 )
  • where In is unity matrix and 12n is a 2n-dimensional array with all elements being 1.
  • Initialization and Parameter Tuning
  • The implementation of CKF is bound to the knowledge of initial estimate and covariance of xk i.e. {circumflex over (X)}0|0 and P0|0. Moreover, the noise covariances, Qk and Rk, also need to be defined.
  • Online Implementation Steps
  • The CKF is implemented through the following steps:
  • Prediction
  • Calculate the square root of posterior error covariance matrix by performing Cholesky decomposition:

  • P k|k =S k|k(S k|k)T  (28)
  • Transform the cubature points for the given mean and covariance:

  • ξj,k|k ={circumflex over (x)} k|k +S k|kξj  (29)
  • Update the transformed cubature points by propagating it through the given process equation (or state equation):

  • ξj,k+1|k=Ø(ξj,k|k)  (30)
  • Compute the mean and covariance:

  • {circumflex over (x)} k+1|kj W jξj,k+1|k  (31)

  • P k+1|kj W jj,k+1|k −{circumflex over (x)} k+1|k)(ξj,k+1|k −{circumflex over (x)} k+1|k)T +Q k  (32)
  • Compute the square-root of prior covariance:

  • P k+1|k =S k+1|k(S k+1|k)T  (33)
  • Evaluate the transformed cubature points with the given mean and covariance:

  • ξ′j,k+1|k ={circumflex over (x)} k+1|k +S k+1|kξj  (34)
  • Propagate the transformed cubature points through given measurement equation:

  • Y j,k+1|k=γ(ξj,k+1|k)  (35)
  • Estimate the mean of the predicted measurements:

  • ŷ k+1j W j Y j,k+1|k)  (36)
  • Calculate the innovation covariance:

  • P yk+1,yk+1j W j(Y j,k+1|k −ŷ k+1)(Y j,k+1|k −ŷ k+1)T +R k  (37)
  • Calculate the cross-covariance:

  • P xk+1,yk+1j W jj,k+1|k −{circumflex over (x)} k+1|k)(Y j,k+1|k −ŷ k+1)T  (38)
  • Calculate the Kalman gain:

  • K k+1 =P xk+1,yk+1(P yk+1,yk+1)−1  (39)
  • Compute the posterior mean:

  • {circumflex over (x)} k+1|k+1 ={circumflex over (x)} k+1|k +K k+1(y k+1 −ŷ k+1)  (40)
  • Compute the posterior covariance:

  • P k+1|k+1=+1|k−K k+1 P yk+1,yk+1(K k+1)T  (41)
  • Thus, disclosed herein is a Kalman-based calibration method for real-time continuous glucose monitoring systems. The disclosed method uses a (i) sequential Kalman filter to deconvolute interstitial sensor electrical current, (ii) an ordinary, or in other words a conventional Kalman filter or a linear Kalman filter Kalman filter to estimate, in real time, sensor calibration parameters from intermittent capillary glucose measurements, and (iii) a cubature Kalman filter to estimate initial calibration parameters from offline training data. At calibration times, the method uses, as priors, patient-specific calibration parameters obtained from previous days data, as opposed to using population-level day-specific historical data. Improved performance compared to an alternative method based on minimum error variance estimator supports that using patient specific priors from previous days is advantageous over using population-level day-specific priors from historical data. Finally, the methodology disclosed herein benefits from a computational advantage as it avoids the need to implement a regularization-based direct deconvolution to match interstitial compartment to plasma compartment.
  • Although certain embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that a wide variety of alternate and/or equivalent embodiments or implementations calculated to achieve the same purposes may be substituted for the embodiments shown and described without departing from the scope. Those with skill in the art will readily appreciate that embodiments may be implemented in a very wide variety of ways. This application is intended to cover any adaptations or variations of the embodiments discussed herein. Therefore, it is manifestly intended that embodiments be limited only by the claims and the equivalents thereof.

Claims (39)

What is claimed is:
1. A method of estimating an amount of an analyte in blood of a subject, comprising:
receiving, from an analyte sensor placed an interstitial fluid of the subject, a current reflective of an interstitial level of the analyte;
noise filtering the current to provide a noise filtered current;
estimating a first set of one or more blood analyte calibration parameters based at least in part on the noise filtered current;
obtaining a second set of one or more interstitial analyte calibration parameters based at least in part on the first set of one or more blood analyte calibration parameters; and
estimating the amount of the analyte in the blood of the subject based on the second set of one or more interstitial analyte calibration parameters and the noise filtered current.
2. The method of claim 1, wherein noise filtering the current values further comprises filtering out both a low frequency high magnitude noise component and a high frequency low magnitude component, where the low frequency high magnitude noise component is filtered heuristically and where the high frequency low magnitude component is filtered via Kalman filtering.
3. The method of claim 1, wherein estimating the first set of one or more blood analyte calibration parameters further comprises:
deconvoluting the noise filtered current via a sequential Kalman filter to obtain a hypothetical analyte sensor current assuming the analyte sensor is inserted in the blood instead of the interstitial fluid; and
estimating the first set of one or more blood glucose calibration parameters based on the hypothetical analyte sensor current using a Kalman filter that uses the hypothetical analyte sensor current as a measurement variable.
4. The method of claim 3, further comprising obtaining a capillary blood analyte measurement; and
wherein estimating the first set of one or more blood analyte calibration parameters is based on the capillary blood glucose measurement.
5. The method of claim 3, further comprising determining an initial blood analyte calibration parameter state estimate, and a blood analyte calibration parameter covariance, for initialization of the sequential Kalman filter.
6. The method of claim 5, wherein the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance is determined using a nonlinear Kalman filter.
7. The method of claim 6, wherein the nonlinear Kalman filter is a cubature Kalman filter.
8. The method of claim 5, further comprising determining the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance based on one or more training data sets.
9. The method of claim 5, further comprising determining the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance arbitrarily.
10. The method of claim 5, further comprising determining the initial blood analyte calibration parameter state estimate and the blood analyte calibration parameter covariance based on one or more prior analyte sensor calibration events.
11. The method of claim 1, wherein the analyte sensor is a glucose sensor and the analyte is glucose.
12. The method of claim 11, further comprising:
sending one or more instructions to an insulin delivery system for controlling operation of an insulin pump that in turn delivers an appropriate amount of insulin to the subject, the one or more instructions based on the estimated amount of analyte in the blood of the subject.
13. The method of claim 11, further comprising displaying the estimated amount of glucose in the blood of the subject on a display screen associated with the glucose sensor, for viewing by the subject.
14. A system for estimating an amount of an analyte in a subject, comprising:
an analyte sensor; and
a mobile computing device, the mobile computing device including a processor storing instructions in non-transitory memory that, when executed, cause the processor to:
receive from the analyte sensor a current reflective of an interstitial level of the analyte in the subject;
noise filter the current to obtain a noise filtered current;
estimate one or more blood analyte calibration parameters based on the noise filtered current;
obtain one or more interstitial analyte calibration parameters based on the one or more blood analyte calibration parameters; and
estimate the amount of the analyte in the blood of the subject based on the one or more interstitial analyte calibration parameters and the noise filtered current.
15. The system of claim 14, wherein the processor stores further instructions in non-transitory memory that, when executed, cause the processor to:
obtain the noise filtered current by heuristically filtering out a low frequency high magnitude noise component of the current, and by Kalman-based filtering of a high frequency low magnitude noise component of the current.
16. The system of claim 14, wherein the processor stores further instructions in non-transitory memory that, when executed, cause the processor to:
deconvolute the noise filtered current via a sequential Kalman filter to obtain a predicted blood analyte sensor current; and
estimate the one or more blood glucose calibration parameters based on the predicted blood analyte sensor current via a Kalman filter that uses the predicted analyte sensor current as a measurement variable.
17. The system of claim 16, wherein the processor stores further instructions in non-transitory memory that, when executed, cause the processor to:
estimate the one or more blood glucose calibration parameters based on a capillary blood glucose measurement.
18. The system of claim 16, wherein the processor stores further instructions in non-transitory memory that, when executed, cause the processor to:
determine an initial blood analyte calibration parameter state estimate, and an initial blood analyte calibration parameter covariance; and
initialize the sequential Kalman filter based on the initial blood analyte calibration parameter state estimate and the initial blood analyte calibration parameter covariance.
19. The system of claim 18, wherein the processor stores further instructions in non-transitory memory that, when executed, cause the processor to:
determine the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance via a nonlinear Kalman filter.
20. The system of claim 19, wherein the nonlinear Kalman filter is a cubature Kalman filter.
21. The system of claim 18, wherein the processor stores further instructions in non-transitory memory that, when executed, cause the processor to:
arbitrarily assign the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance.
22. The system of claim 18, wherein the processor stores further instructions in non-transitory memory that, when executed, cause the processor to:
determine the initial blood analyte calibration parameter state estimate and the initial blood analyte calibration parameter covariance based on one or more prior analyte sensor calibration events.
23. The system of claim 18, wherein the processor stores further instructions in non transitory memory that, when executed, cause the processor to:
determine the initial blood analyte calibration parameter state estimate and the initial blood analyte calibration parameter covariance based on one or more training data sets.
24. The system of claim 14, wherein the analyte sensor is a glucose sensor and wherein the analyte is glucose.
25. The system of claim 24, further comprising:
an insulin delivery unit that includes at least an insulin pump and an infusion set; and
wherein the processor stores further instructions in non-transitory memory that, when executed, cause the processor to:
determine an insulin injection amount for the subject based on the estimated amount of the analyte in the blood of the subject; and
send one or more instructions to the insulin delivery unit to control the insulin pump to delivery the insulin injection amount to the subject via the infusion set.
26. The system of claim 24, wherein the mobile computing device further comprises:
a display; and
wherein the processor stores further instructions in non-transitory memory that, when executed, cause the processor to:
provide the amount of the analyte in the blood of the subject in a viewable form on the display, for viewing by the subject.
27. A non-transitory computer-readable storage medium with an executable program stored thereon for calibrating an analyte sensor inserted into the tissue of a subject, wherein the program instructs a microprocessor to perform the steps of:
receiving from the analyte sensor a current reflective of an interstitial amount of an analyte in the subject;
noise filtering the current received from the analyte sensor to provide a noise filtered current;
estimating a first set of one or more blood analyte calibration parameters based on the noise filtered current;
obtaining a second set of one or more interstitial analyte calibration parameters based on the first set of one or more blood analyte calibration parameters; and
estimating an amount of the analyte in the blood of the subject based on the second set of one or more interstitial analyte calibration parameters and the noise filtered current.
28. The non-transitory computer-readable storage medium of claim 27, wherein the program further instructs the microprocessor to filter out low frequency high magnitude noise heuristically and filter out high frequency low magnitude noise via Kalman filtering.
29. The non-transitory computer-readable storage medium of claim 27, wherein the program further instructs the microprocessor to estimate the first set of one or more blood analyte calibration parameters by deconvoluting the noise filtered current via a sequential Kalman filter to obtain a predicted blood analyte sensor current that accounts for interstitial-to-blood analyte diffusion dynamics; and
estimate the first set of one or more blood analyte calibration parameters based on the predicted blood analyte sensor current via a Kalman filter that uses the hypothetical analyte sensor current as a measurement variable.
30. The non-transitory computer-readable storage medium of claim 29, wherein the program further instructs the microprocessor to estimate the first set of one or more blood analyte calibration parameters based at least in part on one or more capillary blood analyte measurements.
31. The non-transitory computer-readable storage medium of claim 29, wherein the program further instructs the microprocessor to determine an initial blood analyte calibration parameter state estimate, and an initial blood analyte calibration parameter covariance, for initiation of the sequential Kalman filter.
32. The non-transitory computer-readable storage medium of claim 31, wherein the program further instructs the microprocessor to determine the initial blood analyte calibration parameter state estimate, and the initial blood analyte calibration parameter covariance via a nonlinear Kalman filter.
33. The non-transitory computer-readable storage medium of claim 32, wherein the nonlinear Kalman filter is a cubature Kalman filter.
34. The non-transitory computer-readable storage medium of claim 31, wherein the program further instructs the microprocessor to determining the initial blood analyte calibration parameter state estimate and the blood analyte parameter covariance based on one or more training data sets.
35. The non-transitory computer-readable storage medium of claim 31, wherein the program further instructs the microprocessor to arbitrarily determine the initial blood analyte calibration parameter state estimate and the blood analyte parameter covariance.
36. The non-transitory computer-readable storage medium of claim 31, wherein the program further instructs the microprocessor to determine the initial blood analyte calibration parameter state estimate and the blood analyte parameter covariance based on one or more prior analyte sensor calibration events.
37. The non-transitory computer-readable storage medium of claim 27, wherein the analyte sensor is a glucose sensor; and
wherein the analyte is glucose.
38. The non-transitory computer-readable storage medium of claim 37, wherein the program further instructs the microprocessor to determine an insulin injection amount for the subject based on the estimate of the estimated amount of the analyte in the blood of the subject; and
provide one or more instructions to pertaining to controlling an insulin pump based on the insulin injection amount, the instructions for use via the insulin pump.
39. The non-transitory computer-readable storage medium of claim 37, wherein the program further instructs the microprocessor to provide one or more instructions for displaying the estimated amount of the analyte in the blood of the subject on a display viewable by the subject.
US16/893,084 2019-06-04 2020-06-04 Sensor signal processing with kalman-based calibration Abandoned US20200383643A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/893,084 US20200383643A1 (en) 2019-06-04 2020-06-04 Sensor signal processing with kalman-based calibration
US17/956,642 US20230034606A1 (en) 2019-06-04 2022-09-29 Sensor signal processing with kalman-based calibration

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962857242P 2019-06-04 2019-06-04
US16/893,084 US20200383643A1 (en) 2019-06-04 2020-06-04 Sensor signal processing with kalman-based calibration

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/956,642 Continuation US20230034606A1 (en) 2019-06-04 2022-09-29 Sensor signal processing with kalman-based calibration

Publications (1)

Publication Number Publication Date
US20200383643A1 true US20200383643A1 (en) 2020-12-10

Family

ID=73651836

Family Applications (2)

Application Number Title Priority Date Filing Date
US16/893,084 Abandoned US20200383643A1 (en) 2019-06-04 2020-06-04 Sensor signal processing with kalman-based calibration
US17/956,642 Pending US20230034606A1 (en) 2019-06-04 2022-09-29 Sensor signal processing with kalman-based calibration

Family Applications After (1)

Application Number Title Priority Date Filing Date
US17/956,642 Pending US20230034606A1 (en) 2019-06-04 2022-09-29 Sensor signal processing with kalman-based calibration

Country Status (6)

Country Link
US (2) US20200383643A1 (en)
EP (1) EP3773208A4 (en)
CN (1) CN112423666A (en)
BR (1) BR112020025314A2 (en)
MX (1) MX2021008013A (en)
WO (1) WO2020247632A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113076826A (en) * 2021-03-19 2021-07-06 广州小鹏自动驾驶科技有限公司 Filtering method and device of sensor
WO2022199765A1 (en) * 2021-03-22 2022-09-29 Eyesense Gmbh Method for determining a current glucose value in a transported fluid
WO2022212867A1 (en) * 2021-04-02 2022-10-06 Dexcom, Inc. Personalized modeling of blood glucose concentration impacted by individualized sensor characteristics and individualized physiological characteristics
WO2023133231A1 (en) * 2022-01-07 2023-07-13 Laxmi Therapeutic Devices, Inc. Personalized calibration for glucose sensing

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2021276656A1 (en) 2020-05-19 2022-11-24 Cybin Irl Limited Deuterated tryptamine derivatives and methods of use
CN113317783B (en) * 2021-04-20 2022-02-01 港湾之星健康生物(深圳)有限公司 Multimode personalized longitudinal and transverse calibration method
WO2023044889A1 (en) * 2021-09-27 2023-03-30 Medtrum Technologies Inc. Analyte detection system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080033254A1 (en) * 2003-07-25 2008-02-07 Dexcom, Inc. Systems and methods for replacing signal data artifacts in a glucose sensor data stream
US20130109944A1 (en) * 2011-10-26 2013-05-02 Universita Degli Studi Di Padova Alert System for Hypo and Hyperglycemia Prevention based on Clinical Risk
US20170049964A1 (en) * 2015-08-21 2017-02-23 Medtronic Minimed, Inc. Personalized parameter modeling methods and related devices and systems
US20170272842A1 (en) * 2004-11-02 2017-09-21 Pierre Touma Wireless mostion sensor system and method

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7436511B2 (en) * 1999-01-22 2008-10-14 Sensys Medical, Inc. Analyte filter method and apparatus
US8219173B2 (en) * 2008-09-30 2012-07-10 Abbott Diabetes Care Inc. Optimizing analyte sensor calibration
US8843321B2 (en) * 2010-01-26 2014-09-23 Roche Diagnostics Operations, Inc. Methods and systems for processing glucose data measured from a person having diabetes
US9089292B2 (en) * 2010-03-26 2015-07-28 Medtronic Minimed, Inc. Calibration of glucose monitoring sensor and/or insulin delivery system
EP2825096B1 (en) * 2012-03-16 2023-04-26 Dexcom, Inc. Systems and methods for processing analyte sensor data
US20160029966A1 (en) * 2014-07-31 2016-02-04 Sano Intelligence, Inc. Method and system for processing and analyzing analyte sensor signals
WO2016054046A1 (en) 2014-10-02 2016-04-07 Conocophillips Company Iterative amplitude-preserving filtering
US10646650B2 (en) 2015-06-02 2020-05-12 Illinois Institute Of Technology Multivariable artificial pancreas method and system
US10349872B2 (en) * 2015-12-28 2019-07-16 Medtronic Minimed, Inc. Methods, systems, and devices for sensor fusion

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080033254A1 (en) * 2003-07-25 2008-02-07 Dexcom, Inc. Systems and methods for replacing signal data artifacts in a glucose sensor data stream
US20170272842A1 (en) * 2004-11-02 2017-09-21 Pierre Touma Wireless mostion sensor system and method
US20130109944A1 (en) * 2011-10-26 2013-05-02 Universita Degli Studi Di Padova Alert System for Hypo and Hyperglycemia Prevention based on Clinical Risk
US20170049964A1 (en) * 2015-08-21 2017-02-23 Medtronic Minimed, Inc. Personalized parameter modeling methods and related devices and systems

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113076826A (en) * 2021-03-19 2021-07-06 广州小鹏自动驾驶科技有限公司 Filtering method and device of sensor
WO2022199765A1 (en) * 2021-03-22 2022-09-29 Eyesense Gmbh Method for determining a current glucose value in a transported fluid
WO2022212867A1 (en) * 2021-04-02 2022-10-06 Dexcom, Inc. Personalized modeling of blood glucose concentration impacted by individualized sensor characteristics and individualized physiological characteristics
WO2023133231A1 (en) * 2022-01-07 2023-07-13 Laxmi Therapeutic Devices, Inc. Personalized calibration for glucose sensing
US20230218204A1 (en) * 2022-01-07 2023-07-13 Laxmi Therapeutic Devices, Inc. Personalized calibration for glucose sensing

Also Published As

Publication number Publication date
WO2020247632A1 (en) 2020-12-10
CN112423666A (en) 2021-02-26
EP3773208A4 (en) 2022-02-23
EP3773208A1 (en) 2021-02-17
MX2021008013A (en) 2021-08-05
US20230034606A1 (en) 2023-02-02
BR112020025314A2 (en) 2021-03-09

Similar Documents

Publication Publication Date Title
US20230034606A1 (en) Sensor signal processing with kalman-based calibration
US11504004B2 (en) Transcutaneous analyte sensors and monitors, calibration thereof, and associated methods
US11883126B2 (en) Transcutaneous analyte sensors and monitors, calibration thereof, and associated methods
US11051731B2 (en) System and method for factory calibration or reduced calibration of an indwelling sensor based on sensitivity profile and baseline model of sensors
US20220151553A1 (en) Smartwatch with non-invasive analyte sensor
US20210228114A1 (en) Adjunct data to improve the performance of a continuous glucose monitoring system
US20200237271A1 (en) Continuous glucose monitors and related sensors utilizing mixed model and bayesian calibration algorithms

Legal Events

Date Code Title Description
STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: FINAL REJECTION MAILED

STCB Information on status: application discontinuation

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