WO2025081220A1 - System and method for managing copd symptoms - Google Patents
System and method for managing copd symptoms Download PDFInfo
- Publication number
- WO2025081220A1 WO2025081220A1 PCT/AU2024/051036 AU2024051036W WO2025081220A1 WO 2025081220 A1 WO2025081220 A1 WO 2025081220A1 AU 2024051036 W AU2024051036 W AU 2024051036W WO 2025081220 A1 WO2025081220 A1 WO 2025081220A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- inhaler
- time
- output data
- cough
- act
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H10/00—ICT specially adapted for the handling or processing of patient-related medical or healthcare data
- G16H10/60—ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/0002—Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network
- A61B5/0015—Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network characterised by features of the telemetry system
- A61B5/0022—Monitoring a patient using a global network, e.g. telephone networks, internet
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/08—Measuring devices for evaluating the respiratory organs
- A61B5/0816—Measuring devices for examining respiratory frequency
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/08—Measuring devices for evaluating the respiratory organs
- A61B5/087—Measuring breath flow
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Measuring devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor or mobility of a limb
- A61B5/113—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor or mobility of a limb occurring during breathing
- A61B5/1135—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor or mobility of a limb occurring during breathing by monitoring thoracic expansion
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/48—Other medical applications
- A61B5/4833—Assessment of subject's compliance to treatment
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/48—Other medical applications
- A61B5/4836—Diagnosis combined with treatment in closed-loop systems or methods
- A61B5/4839—Diagnosis combined with treatment in closed-loop systems or methods combined with drug delivery
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/68—Arrangements of detecting, measuring or recording means, e.g. sensors, in relation to patient
- A61B5/6801—Arrangements of detecting, measuring or recording means, e.g. sensors, in relation to patient specially adapted to be attached to or worn on the body surface
- A61B5/6813—Specially adapted to be attached to a specific body part
- A61B5/6823—Trunk, e.g., chest, back, abdomen, hip
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/72—Signal processing specially adapted for physiological signals or for diagnostic purposes
- A61B5/7271—Specific aspects of physiological measurement analysis
- A61B5/7275—Determining trends in physiological measurement data; Predicting development of a medical condition based on physiological measurements, e.g. determining a risk factor
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/74—Details of notification to user or communication with user or patient; User input means
- A61B5/746—Alarms related to a physiological condition, e.g. details of setting alarm thresholds or avoiding false alarms
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M15/00—Inhalators
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M15/00—Inhalators
- A61M15/009—Inhalators using medicine packages with incorporated spraying means, e.g. aerosol cans
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H20/00—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
- G16H20/10—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H20/00—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
- G16H20/10—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients
- G16H20/13—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients delivered from dispensers
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/20—ICT 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
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/30—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for calculating health indices; for individual health risk assessment
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B2560/00—Constructional details of operational features of apparatus; Accessories for medical measuring apparatus
- A61B2560/02—Operational features
- A61B2560/0204—Operational features of power management
- A61B2560/0214—Operational features of power management of power generation or supply
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B2562/00—Details of sensors; Constructional details of sensor housings or probes; Accessories for sensors
- A61B2562/02—Details of sensors specially adapted for in-vivo measurements
- A61B2562/0219—Inertial sensors, e.g. accelerometers, gyroscopes, tilt switches
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/0002—Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/08—Measuring devices for evaluating the respiratory organs
- A61B5/0823—Detecting or evaluating cough events
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/72—Signal processing specially adapted for physiological signals or for diagnostic purposes
- A61B5/7271—Specific aspects of physiological measurement analysis
- A61B5/7282—Event detection, e.g. detecting unique waveforms indicative of a medical condition
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/74—Details of notification to user or communication with user or patient; User input means
- A61B5/742—Details of notification to user or communication with user or patient; User input means using visual displays
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/18—General characteristics of the apparatus with alarm
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/33—Controlling, regulating or measuring
- A61M2205/332—Force measuring means
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/33—Controlling, regulating or measuring
- A61M2205/3375—Acoustical, e.g. ultrasonic, measuring means
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/35—Communication
- A61M2205/3546—Range
- A61M2205/3553—Range remote, e.g. between patient's home and doctor's office
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/35—Communication
- A61M2205/3546—Range
- A61M2205/3561—Range local, e.g. within room or hospital
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/35—Communication
- A61M2205/3576—Communication with non implanted data transmission devices, e.g. using external transmitter or receiver
- A61M2205/3592—Communication with non implanted data transmission devices, e.g. using external transmitter or receiver using telemetric means, e.g. radio or optical transmission
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/50—General characteristics of the apparatus with microprocessors or computers
- A61M2205/502—User interfaces, e.g. screens or keyboards
- A61M2205/505—Touch-screens; Virtual keyboard or keypads; Virtual buttons; Soft keys; Mouse touches
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/50—General characteristics of the apparatus with microprocessors or computers
- A61M2205/52—General characteristics of the apparatus with microprocessors or computers with memories providing a history of measured variating parameters of apparatus or patient
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/58—Means for facilitating use, e.g. by people with impaired vision
- A61M2205/583—Means for facilitating use, e.g. by people with impaired vision by visual feedback
- A61M2205/584—Means for facilitating use, e.g. by people with impaired vision by visual feedback having a color code
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/58—Means for facilitating use, e.g. by people with impaired vision
- A61M2205/587—Lighting arrangements
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2205/00—General characteristics of the apparatus
- A61M2205/82—Internal energy supply devices
- A61M2205/8206—Internal energy supply devices battery-operated
- A61M2205/8212—Internal energy supply devices battery-operated with means or measures taken for minimising energy consumption
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2209/00—Ancillary equipment
- A61M2209/08—Supports for equipment
- A61M2209/088—Supports for equipment on the body
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2210/00—Anatomical parts of the body
- A61M2210/10—Trunk
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2230/00—Measuring parameters of the user
- A61M2230/005—Parameter used as control input for the apparatus
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2230/00—Measuring parameters of the user
- A61M2230/40—Respiratory characteristics
- A61M2230/42—Rate
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2230/00—Measuring parameters of the user
- A61M2230/62—Posture
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61M—DEVICES 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
- A61M2230/00—Measuring parameters of the user
- A61M2230/63—Motion, e.g. physical activity
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H40/00—ICT 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/60—ICT 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/63—ICT 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
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H40/00—ICT 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/60—ICT 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/67—ICT 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 remote operation
Definitions
- the present invention relates to the capture and processing of physiological data for monitoring medication dosage, and in particular, to the use of wearable monitoring devices coupled to patients for monitoring medication usage.
- WPDMP Wearable Physiological Data Measurement and Processing
- a computer implemented system for monitoring, against a respiratory baseline, a respiratory state of a person comprising: a wearable device configured for attachment to the chest of the person, the wearable device comprising: at least one sensor for receiving patient motion information from the chest of the person and outputting raw sensor output data; a wearable device memory storing an executable wearable device software application; and at least one wearable device processor for executing the executable wearable device software application to thereby perform the steps of: determining, from the raw sensor output data, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler; and the server device which comprises: a server memory storing an executable server software application; and a server processor for determining, from the raw sensor output data, computed physiological parameters;
- the at least one sensor for receiving patient motion information is a three-axis accelerometer.
- the system is in training mode;
- the inhaler is a smart inhaler which provides an inhaler activation signal when the patient uses the smart inhaler; and the instants of time at which the patient uses the inhaler are determined from the corresponding inhaler activation signals.
- the system is in operational mode; and the instants of time at which the patient uses the inhaler are determined from raw accelerometer output data.
- the step of determining, from the raw sensor output data, computed physiological parameters comprises the steps of: determining inclination and rotation by applying low pass filters to the raw sensor output data followed by state machines which apply trigonometric relationships to determine inclination and rotation; determining respiratory rate by applying band pass filters to the raw sensor output data followed by state machines that detect peaks and troughs to determine breath cycles, and maintaining a queue of recent breath cycles to thereby determine respiratory rate; and determining cough by detecting an impulse in the raw sensor output data normal to a chest wall of the patient followed by a resonance of the chest cavity, to thereby determine occurrence of a cough.
- a wearable device for use in a computer implemented system for monitoring, against a respiratory baseline, a respiratory state of a person, the wearable device configured for attachment to the chest of the person, the wearable device comprising: at least one sensor for receiving patient motion information from the chest of the person and outputting raw sensor output data; a wearable device memory storing an executable wearable device software application; and at least one wearable device processor for executing the executable wearable device software application to thereby perform the steps of: determining, from the raw sensor output data, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler.
- the at least one sensor for receiving patient motion information is a three-axis accelerometer.
- the system is in training mode;
- the inhaler is a smart inhaler which provides an inhaler activation signal when the patient uses the smart inhaler; and the instants of time at which the patient uses the inhaler are determined from the corresponding inhaler activation signals.
- the system is in operational mode, and the instants of time at which the patient uses the inhaler are determined from the raw accelerometer output data.
- a non-transitory computer-readable medium storing a software executable program configured to direct a processor of a wearable device to execute a method for monitoring, against a respiratory baseline, a respiratory state of a person, the method comprising the steps of: determining, from raw sensor output data output from at least one sensor of a wearable device configured for attachment to the chest of the person for receiving patient motion information, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler.
- a computer implemented method for monitoring by a wearable device, against a respiratory baseline, a respiratory state of a person comprising the steps of: determining, from raw sensor output data output from at least one sensor of the wearable device configured for attachment to the chest of the person for receiving patient motion information, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler.
- Fig. 1A is a functional block diagram example of example communication networks that can be used in a WPDMP system
- Fig. IB is a functional block diagram example of a WPDMP system
- Fig. 2 is a functional block diagram example of a Bluetooth Low Energy (BLE) wearable device for use in a WPDMP system;
- BLE Bluetooth Low Energy
- Fig. 3 is a flow chart process example depicting operation of the BLE wearable device
- Fig. 4 is a flow chart process example depicting operation of a user smartphone in a WPDMP system
- Fig. 5 is a flow chart process example depicting operation of a server monitor and alarm generator in a WPDMP system
- Fig. 6A is an example of raw accelerometer output data from a 3-axis accelerometer used in a WPDMP system for an hour period during which the wearer of the associated BLE wearable device is sleeping;
- Fig. 6B shows a magnified region of the 3-axis raw accelerometer output data of Fig. 6A for the z channel;
- Fig. 6C depicts a single channel of the 3-axis raw accelerometer output data when an inhaler is used
- Fig. 6D shows the representation of Fig. 6C including a window of time during which wearable device output data comprises a sub-set of the raw sensor output data
- Fig. 6E depicts computed physiological parameters along five physiological data axes
- FIGs. 7A and 7B depict an example software architecture of the BLE wearable device
- Fig. 8A illustrates how a wearable device can be attached to a user in a WPDMP system
- Fig. 8B illustrates a smart inhaler that can be used in a WPDMP system
- Figs. 9A and 9B collectively form a schematic block diagram representation of a general- purpose electronic device that can be used to implement various components in a WPDMP system;
- Table 1 presents computed physiological parameters relating to highlighted section in Fig.
- the inventors have determined that a system that allows for real-time respiratory assessments can allow for the capture of alterations in respiratory state thus potentially allowing clinicians to intervene earlier in the process.
- wearable sensing technologies can enable continuous or semi-continuous monitoring of a patient’s physiologic state outside the boundaries of the acute care system.
- the inventors have concluded that a change or deterioration in physiologic function detected using such a device can enable clinicians to assess and adjust the patient’s treatment to mitigate or even prevent an exacerbation or further deterioration in the patient’s respiratory state.
- Fig. 1A is a functional block diagram example 150 of a communication network that can be used in a WPDMP system.
- a Bluetooth Low Energy (BLE) wearable device 103 (also referred to as the WD 103) communicates WD output data 149 which comprises a stream of low data rate computed physiological parameters 232 (also referred to as summary output data 232 and described hereinafter in more detail with reference to Figs. 2 and 3), as depicted by an arrow 104, to a user smartphone 105 (also referred to as a user mobile communication terminal 105) over a Bluetooth network 151 (also referred to as a first communication network 151).
- BLE Bluetooth Low Energy
- the WD output data 149 comprising the stream of low data rate computed physiological parameters 232 incorporates, when the patient wearing the WD 103 uses an inhaler, subsets 320 of overlaid high data rate raw accelerometer output data 229 (described hereinafter with reference to Fig. 3 and also referred to more generally as raw sensor output data 229) each subset occupying a window of time 630 (described hereinafter in regard to Fig. 6D) straddling a time instant of occurrence 618 that the patient uses the inhaler.
- a Cellular wearable device 112 communicates WD output data 153 (which is analogous to the WD output data 149 that is described above in regard to the BLE WD 103) as depicted by an arrow 113, to a cloud server 110 using a mobile data connection TCP/IP socket over the Internet 152 (also referred to as a second communication network 152).
- the smartphone 105 communicates, as depicted by an arrow 109, the WD output data 149 from the BLE WD 103, using a mobile data connection TCP/IP socket to a WPDMP cloud server 110 over the Internet 152.
- a smart inhaler 137 communicates an inhaler activation signal 141 (described hereinafter in more detail with reference to Fig. IB), as depicted by an arrow 138, to the user smartphone 105 over the Bluetooth network 151.
- the smart inhaler 137 also communicates, as depicted by an arrow 130, an inhaler activation signal 163 (see Fig. IB) to the cellular wearable device 112 over the Bluetooth network 151.
- the afore-described communication between the smart inhaler 137, the BLE wearable device 103, the smartphone 105, the cellular wearable device 112 and the WPDMP cloud server 110 can also be implemented using other networks and communication protocols in a WPDMP system.
- Fig. IB is a functional block diagram of one example of a WPDMP system 100.
- the WPDMP system 100 includes the wearable devices 103, 112 (also referred to as WD’s), the smart inhalers 137,128, the mobile terminal 105, and the WPDMP cloud server 110, all of which can communicate over the various communication networks as described in detail with respect to Fig. 1A
- the WPDMP system 100 can operate in one of two main modes, referred to hereinafter as a Training mode and an Operational mod .
- a Training mode the smart inhalers such as 128 are used in order to provide inhaler activation signals 141 when the smart inhaler 128 is used by a patient 101.
- the inhaler activation signal 141 serves to identify the time instant of occurrence 618 (described hereinafter in more detail in regard to Fig. 6C) that the patient 101 uses the smart inhaler 128.
- the system 100 can be used in the Operational mode.
- the system 100 does not require the presence of the smart inhaler 128, because the system 100 can identify the time instant of occurrence 618 that the patient 101 uses an ordinary inhaler which does not emit the inhaler activation signal 141 (ie not a smart inhaler), by processing the high data rate raw accelerometer output data 229 to identify the time instant of occurrence of inhaler use 618.
- the Training mode need not be used again unless, for example, significant software upgrades have been implemented.
- Much of the present specification describes operation of the WPDMP system 100 in the Training mode. It should be understood, however, that once training has been performed, the smart inhaler 128 and the associated inhaler activation signal 141 are required only occasionally if at all, and the system 100 can identify the time instant of occurrence 618 that the patient 101 uses the ordinary inhaler by processing the high data rate raw accelerometer output data 229.
- the wearable devices 103, 112, the smart inhalers 137, 128, the smartphone 105, and the WPDMP cloud server 110 include one or more of the modules included in a typical computing device 900 described hereinafter in more detail with respect to Figs. 9A and 9B.
- the wearable device 103 in Fig. IB includes a memory 211 (which is an instantiation of a storage device 909 depicted in Fig. 9A) storing a. wearable device WPDMP software application 157 (which is an instantiation of a software application 933 depicted in Fig. 9A) and a wearable device WPDMP processor 208 (which is an instantiation of a processor 905 depicted in Fig. 9A) for executing the wearable device WPDMP software application 157.
- the smartphone 105 includes a memory 144 (which is an instantiation of the storage device 909 depicted in Fig. 9A) storing a smartphone WPDMP software application 158 (which is an instantiation of the software application 933 depicted in Fig. 9A) and a processor 145 (which is an instantiation of the processor 905 depicted in Fig. 9A) for executing the smartphone WPDMP software application 158.
- the WPDMP server 110 includes a memory 147 (which is an instantiation of the storage device 909 depicted in Fig. 9A) storing a server WPDMP software application and patient data 159 (which is an instantiation of the software application 933 depicted in Fig. 9A) and a processor 146 (which is an instantiation of the processor 905 depicted in Fig. 9A) for executing the server WPDMP software application 159.
- the wearable devices 103, 112, the smart inhalers 137, 128, the smartphone 105, and the WPDMP cloud server 110 perform WPDMP processes directed by their respective processors executing respective applications (typically implemented as software applications stored in the respective device memories but also possibly implemented in hardware) in order to implement the WPDMP system.
- respective applications typically implemented as software applications stored in the respective device memories but also possibly implemented in hardware
- modules in the WPDMP system may be implemented, wholly or partially, in dedicated hardware such as one or more integrated circuits performing the WPDMP functions or sub functions.
- dedicated hardware may include programmable logic arrays (PLAs), digital signal processors and the like.
- PLAs programmable logic arrays
- BLE Bluetooth Low Energy
- Fig. IB depicts the WPDMP system 100 including two types of WD namely the Bluetooth Low Energy (BLE) WD 103 and the Cellular WD 112.
- BLE Bluetooth Low Energy
- the operation of the WPDMP system using the BLE WD 103 is described in this section entitled “WPDMP using the Bluetooth Low Energy (BLE) wearable device”.
- the operation of the WPDMP system using the WD 112 is described in the next section entitled “WPDMP using the cellular wearable device”.
- the BLE WD 103 receives continuous patient motion information 234 (described hereinafter in more detail with reference to Fig. 2 and also referred to as patient force information) from the patient 101 (also referred to as the person 101) as depicted by an arrow 126.
- the (typically continuous analogue) patient motion information 234 reflects the movement and changes in orientation of the patient’s body within the gravitational field of the earth.
- a sensor 207 in the BLE WD 103 that is used to sense the patient motion information 234 is a 3-axis accelerometer described hereinafter in more detail with reference to Fig. 2. Other sensors, such as a plurality of single-axis accelerometers, for example, can also be used.
- the 3-axis accelerometer 207 is mechanically coupled to the patient 101 (described hereinafter in more detail with reference to Fig. 8A) to thereby sense the patient motion information 234 and changes therein.
- the accelerometer 207 receives the patient motion information 234, as depicted by a dashed arrow 226 (see Fig. 2), and outputs continuous analogue or high sampling rate raw accelerometer output data 229 (also referred to as raw sensor output data 229).
- the raw accelerometer output data 229 is communicated, as depicted by an arrow 220, for each of the 3 accelerometer axes representing the acceleration of the accelerometer along those three axes, and is described hereinafter in more detail with reference to Fig. 2 and Figs. 6A - 6D.
- the BLE WD 103 has the processor 208 and a digital signal processor 210 which receive the raw accelerometer output data 229 and, using the BLE WD processor 208 executing the BLE WD software application 157 which is stored in the BLE WD memory 211, output low sampling rate computed physiological parameters 232, as depicted by a dashed arrow 230, described hereinafter in more detail with regard to Fig. 3 and Fig. 6E and Table 1.
- the BLE WD 103 sends the WD output data 149 (also referred to as wearable device output data 149) to the smartphone 105 over the Bluetooth network 151 (see Fig. 1A) as depicted by an arrow 104.
- the WD output data 149 can take one of two forms depending upon whether the patient 101 is presently using one of the smart inhalers 137, 128 (if the WPDMP system is in the training mode) or an ordinary inhaler (if the WPDMP system is in the operational mode) or not.
- the time-period during which the patient 101 is presently using an inhaler is depicted by an arrow 626 in Fig. 6D which depicts the duration of the inhaler effect.
- the inhaler effect is deemed to be that time-period during which the medication inhaled by the patient from the inhaler has a material effect on the rhythm of the raw accelerometer output data 229.
- the inhaler effect commences at the time instant 618 which is the time instant of occurrence of inhaler use, and ends at a time 625, which is the time of reversion of the raw accelerometer output data 229 to a materially non-inhaler rhythm.
- the WD output data 149 comprises the computed physiological parameters 232 (see Fig. 3 and Table 1) while the patient is not presently using an inhaler (i.e. outside the window depicted by an arrow 626 in Fig. 6D). However, straddling the time instant of occurrence 618 that the patient uses an inhaler, the WD output data 149 comprises the computed physiological parameters 232 as well as a subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D).
- the computed physiological parameters 232 and the subset 320 are sent to the smartphone via two separate Bluetooth characteristics on the same Bluetooth network 151.
- the window of time 630 is equal to the duration of the inhaler effect 626 plus a window leading interval 629 plus a window trailing interval 631 (described hereinafter in more detail in relation to Fig. 6D).
- the computed physiological parameters 232 comprise parameters derived from the raw accelerometer output data 229.
- the derived computed physiological parameters 232 can, for example, include (see Figs. 3 and 6E) cough parameters 641 (such as cough-counts per minute), rotation parameters 642 (in degrees), inclination parameters 643 (in degrees), respiratory rate parameters 644 (in breaths per minute), and actigraphy parameters 645 (such as an index to quantify the amount of movement).
- the BLE WD 103 memory 211 is typically a large capacity memory to enable recording (ie storage) of the low data rate computed physiological parameters 232 which may be recorded once a second or more frequently if desired .
- a small amount of the memory 211 in the WD can store the summary data 232 during a loss of connection between the WD 103 and the smartphone 105 (see 419 in Fig. 4).
- a larger amount is required for the queue (typically of 5 seconds duration but may be less or more if desired) of the raw accelerometer output data 229 required for transmission during inhaler use (see 315 in Fig. 3).
- the patient 101 can attach the BLE WD 103 to themselves, as described hereinafter in more detail with reference to Fig. 8A, to thereby provide the patient motion information 234 and determine the computed physiological parameters 232 from the WPDMP system 100.
- Fig. 8A shows an arrangement 800 in which the patient 101 has attached the BLE WD 103 to their upper left-hand chest area 806 or abdomen (not shown) using adhesive tape for example, where attachment to the chest allows measurement of lung sounds such as wheeze.
- the attachment of the BLE WD 103 to the chest area 806 of the patient 101 described with reference to Fig. 8A couples the patient motion information 234 between the BLE WD 103 and the chest area 806 of the patient 101.
- the patient motion information 234 comprises position and orientation, and changes therein, of the patient 101 which is communicated from the patient 101 to the BLE WD 103, as depicted by the arrow 126.
- the BLE WD 103 processes the patient motion information 234 to extract the computed physiological parameters 232 (see Fig. 2).
- the BLE WD 103 stores the computed physiological parameters 232 (see Fig. 2) in the BLE WD memory 211 as directed by the BLE WD processor 208 executing the BLE WD software application 157 which is stored in the BLE WD memory 211.
- the patient 101 can interact with the BLE WD 103 using different interaction paths 126,
- the patient 101 can activate the BLE WD 103, by providing a WD activation signal 154 as depicted by an arrow 102, by pressing a WD activation button 205 (see Fig. 2) on the BLE WD
- Sequential presses by the patient 101 on the WD activation button 205 cause the BLE WD 103 to transition between different operational states, for example a sleep state and two active states.
- the device consumes the lowest power.
- the WD 103 can be awakened by a single press on the button 205 thus providing the WD activation signal 154 or by connection to a USB cable 135 connected to a charger 134 thus providing a WD activation signal 237.
- the sleep state is selected when storing the BLE WD 103 between uses.
- the active states the device is constantly monitoring its sensor 207 and determining the computed physiological parameters 232.
- the two active states differ in that in the one active state (referred to hereinafter as the 1 st active state) the device is transmitting the WD output data 149 to a receiver (such as the smartphone 105 for example), and in the other active state (referred to hereinafter as the 2 nd active state) the device is not transmitting the WD output data 149 to a receiver.
- the BLE WD 103 has an indicator device 206 (see Fig. 2), typically a light emitting diode (LED), which in one WPDMP example can assume one of three colours to provide feedback information 155 to the patient 101 , as depicted by an arrow 131.
- a first colour indicates that the BLE WD 103 is in the sleep state
- a second colour indicates that the BLE WD 103 is in the 1 st active state
- a third colour indicates that the BLE WD 103 is in the 2 nd active state.
- various colours and colour patterns from the indicator device 206 can be used to show different states.
- the indicator device 206 can output a red colour for low battery in both the active state 1 as well as the active state 2; no light can indicate sleep, brief flashes during movement can indicate different states, and light can dim quickly to conserve energy and not disturb sleep.
- the BLE WD 103 stores the computed physiological parameters 232 (see Fig. 2) in the BLE WD memory 211 as directed by the BLE WD processor 208 executing the BLE WD software application 157 which is stored in the BLE WD memory 211.
- the BLE WD 103 sends the WD output data 149, as depicted by the arrow 104, to the smartphone 105 over the Bluetooth network 151 in the present WPDMP example.
- the WD output data 149 comprises the computed physiological parameters 232 (see Fig. 3 and Table 1) while the patient is not presently using an inhaler (i.e. outside the window depicted by an arrow 626 in Fig. 6D).
- the WD output data 149 comprises the computed physiological parameters 232 as well as a subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D).
- the smartphone 105 receives the transmitted WD output data 149 over the Bluetooth network 151 and forwards the WD output data (referred to by a reference numeral 149’) to the WPDMP server 110, as depicted by an arrow 109, over the Internet 152 using TCP/IP socket, using the Smartphone processor 145 executing the smartphone software application 158 which is stored in the smartphone memory 144.
- the WPDMP system 100 can use the smart inhalers, such as the preventer smart inhaler 137 and the reliever smart inhaler 128 (described hereinafter in more detail with reference to Fig. 8B) for respiratory treatment and relief respectively.
- smart inhaler refers to an inhaler which can send an inhaler activation signal 141 when it is used by the patient, as depicted by the arrows 129, 138, over the Bluetooth network 151 (see Fig. 1 ) to the smartphone 105.
- the WPDMP system 100 is in the operational mode, the patient 101 can use ordinary inhalers for respiratory treatment and relief.
- ordinary inhaler refers to an inhaler which does not send an inhaler activation signal 141 when it is used by the patient.
- the smartphone software application 158 executing on the smartphone processor 145, sends a raw data trigger signal 156 to the BLE WD 103 as depicted by an arrow 140 to thereby direct the BLE WD 103, in addition to sending the computed physiological parameters 232, to also send the subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D), as depicted by the arrow 104. If the WPDMP system is in the Operational mode the BLE WD 103 determines the instant of occurrence 618 (see Fig.
- the patient 101 can send a summary data request signal 240 to the smartphone 105, as depicted by the arrow 231 (see Fig. 2), in order to direct the processor 145 of the smartphone executing the smartphone WPDMP software application 158 stored in the smartphone memory 144, to send a summary data trigger signal 164, to the processor 208 of the BLE WD 103 (described hereinafter inn more detail with reference to Fig. 3).
- the WPDMP server 110 includes a data reception service 114 which receives, as depicted by an arrow 109, the WD output data 149’.
- the data reception service 114 forwards, as depicted by an arrow 118, the WD output data 149’ to a database 119 (which in this WPDMP arrangement forms part of the memory 147 of the WPDMP server 110).
- the database 119 communicates, as depicted by an arow 120, with the monitor service 116.
- the data reception service 114 updates, as depicted by an arrow 115, the monitor service 116 that tracks a status of the patient 101 in real time with reference to patient data stored in the database 119 and a clinical web portal 122. If the monitor service 116 detects features in the WD output data 149’ (ie the computed physiological parameters 232 and the window of raw sensor output data 229) for the patient 101 that indicate poor inhaler technique and / or deterioration in the respiratory status of the patient 101, the monitor service sends an alert signal 160, as depicted by an arrow 117, to the smartphone 105.
- features in the WD output data 149’ ie the computed physiological parameters 232 and the window of raw sensor output data 229
- the monitor service 116 monitors physiological parameters such as the cough parameters 641, the rotation parameters 642, the inclination parameters 643, the respiratory rate parameters 644, and the actigraphy parameters 645. Deviations from typical values are flagged and used to trigger the alert 160 if they remain out of range for more than a pre-defined period of time. For example, the rate of preventer and reliever inhaler use are recorded. If the ratio of reliever to preventer use increases by 50 percent for more than one week, an alert 160 will be generated. An alert signal 162 is also sent, as depicted by an arrow 125, to the clinical staff 124 as depicted by an arrow 125. Significant deviation between prescribed and measured preventer inhaler use may be used to generate the alerts 160 and 162.
- physiological parameters such as the cough parameters 641, the rotation parameters 642, the inclination parameters 643, the respiratory rate parameters 644, and the actigraphy parameters 645. Deviations from typical values are flagged and used to trigger the alert 160 if they remain out of range for more than a pre-defined period of time
- the computed physiological parameters 232 and the window of the raw accelerometer output data 229 are also provided, as depicted by an arrow 121, to the web portal 122.
- the web portal 122 is used by the clinical staff 124, as depicted by an arrow 123, to monitor all patients such as the patient 101 who are wearing wearable devices communicating with the WPDMP system and review historical patient records.
- the portal supports addition of new active patients, new wearable devices, and association between wearable devices and patients. It also supports creation of login credentials for smartphone applications as they are installed on each smartphone (described hereinafter in more detail in relation to Fig. 5).
- a technician computer 132 can interface with the BLE WD 103, as depicted by an arrow 133.
- a charger 134 can interface with the BLE WD 103, as depicted by an arrow 135.
- the smartphone 105 can send an alert 161 to a caregiver 107, as depicted by an arrow 106, when the alert signal 160 is received from the monitor service 116 in the WPDMP server 110.
- the caregiver 107 can configure the smartphone as depicted by an arrow 108.
- the smartphone 105 can send an alert 236 to the patient 101, as depicted by an arrow 231 (see Fig. 2), when the alert signal 160 is received from the monitor service 116 in the WPDMP server 110.
- the smartphone is with either the caregiver or the patient but not both.
- the smartphone displays it to the user (patient or caregiver).
- the operation of the WPDMP system using the cellular WD 112 is typically the same as the operation with the BLE WD 103 apart from the following features.
- the cellular WD 112 has a cellular modem (for communicating with the cloud server) as well as the Bluetooth Modem 209.
- the smart inhaler 128 communicates its inhaler activation signal 163 by Bluetooth to the cellular WD 112 as depicted by the arrow 130 in Fig. 1A, or to the smartphone 105 if such is included in the cellular WD system (not shown in Fig. 1A).
- the cellular WD 112 uses the received inhaler activation signal 163 as a raw data trigger signal 142 (not shown) upon receipt of the inhaler activation signal 163 if the WD 112 is in Training mode.
- the cellular WD 112 generates the raw data trigger signal 142 from processing of the raw accelerometer output data 229 if the WD 112 is in Operational mode
- the Cellular wearable device 112 communicates WD output data 153 (which is analogous to the WD output data 149 that is described above in regard to the BLE WD 103) as depicted by an arrow 113, to the cloud server 110 using a mobile data connection TCP/IP socket over the Internet 152 rather than to the smartphone 105.
- the patient provides patient motion information (not shown) to the cellular WD 112 as depicted by an arrow 127 in a similar manner to the patient motion information 234 being provided to the WD 103.
- the patient activates the cellular WD 112 by a button press as depicted by an arrow 111.
- the patient receives feedback from the cellular WD 112 as depicted by an arrow 136.
- FIG. 2 is a functional block diagram example 200 of the BLE WD 103.
- the WD 103 has a USB connector 201 for connecting, as depicted by the arrow 135, to the USB charger 134.
- the USB connecter 201 also enables connection, as depicted by the arrow 133, to the technician computer 132.
- the USB connector 201 communicates, as depicted by an arrow 213, to a battery management module 203 which controls charging of the battery 202 of the BLE WD 103.
- the battery management module 203 communicates, as depicted by an arrow 214, with the battery 202.
- the battery 202 communicates, as depicted by an arrow 215, a battery charge parameter 233 which indicates the current state of charge of the battery 202, to a battery gauge 204 which measures the battery voltage to estimate the state-of-charge of the battery.
- the battery management module 203 communicates, as depicted by an arrow 216, with the processor 208.
- the battery gauge 204 communicates, as depicted by an arrow 217, with the processor 208.
- the BLE WD 103 has a user interface 235 comprising the WD activation button 205 and the indicator device 206.
- the patient 101 can activate the BLE WD 103, by providing the WD activation signal 154 as depicted by the arrow 102, by pressing the WD activation button 205 which communicates, as depicted by an arrow 218, with the processor 208.
- the indicator device 206 typically a tri-colour LED, which communicates with the processor 208 as depicted by an arrow 219, provides feedback information 155 to the patient 101, as depicted by an arrow 131.
- the BLE WD 103 receives the patient motion information 234 from the patient 101 as depicted by an arrow 126.
- the BLE WD 103 includes an input sensor which in one WPDMP arrangement is the 3-axis accelerometer 207, which receives the patient motion information 234 from the patient 101 as depicted by the arrow 126.
- the accelerometer 207 outputs the raw accelerometer output data 229, as depicted by the arrow 220 to the processor 208.
- the smartphone 105 receives the WD output data 149 from the Bluetooth modem 209 (also referred to as a wearable device communication module 209) in the BLE WD 103 over the Bluetooth network 151 as depicted by the arrow 104.
- the Bluetooth modem 209 communicates with the processor 208 as depicted by an arrow 222.
- the Smartphone 105 Upon receiving the inhaler activation signal 141 (if the WPDMP system is in the Training mode) the Smartphone 105 communicates the raw data trigger signal 156 to the Bluetooth modem 209 as depicted by the arrow 140 to thereby direct the BLE WD 103 to send the subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig.
- the BLE WD 103 determines the instant of occurrence 618 of inhaler use from the raw accelerometer output data 229 and generates the raw data trigger signal 156 internally which directs the BLE WD 103 to send the subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D), as depicted by the arrow 104 in addition to sending the computed physiological parameters 232.
- the processor 208 communicates, as depicted by an arrow 223, with a digital signal processor 210, which, either alone or together with the processor 208, determines the computed physiological parameters 232 (see Fig. 3).
- the processor 208 communicates, as depicted by an arrow 224, with the non-volatile memory 211.
- the processor 208 communicates, as depicted by an arrow 225, with a real-time clock 212.
- the patient 101 can communicate the summary data request signal 240 to the smartphone 105 as depicted by an arrow 231 in order to start and stop the recording of the computed physiological parameters 232.
- the patient 101 can also communicate with the smartphone 105 as depicted by an arrow 231 to see the battery percentage charge, receive the alerts 160 and notifications through the app (ie the smartphone WPDMP software application 158).
- Fig. 3 is a flow chart process example 300 depicting operation of the wearable device (the following description is presented in terms of the BLE WD 103 however it applies equally to the cellular WD 112 as described previously in “Operation of the WPDMP system using the cellular wearable device”.
- the process 300 commences with a decision step 301, performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, which determines whether to activate the BLE WD 103. If one of the WD activation signal 154 or the WD activation signal 237 has not been received from the patient 101, then the process 300 follows a NO arrow 302 from the step 301 back to the step 301. If, however, one of the WD activation signal 154 or the WD activation signal 237 has been received from the patient 101, as depicted by a dashed arrow 308, then the process 300 follows a YES arrow 303 from the step 301 to a step 304.
- the step 304 represents the functional operation of the sensor 207.
- the step 304 receives the patient motion information 234, as depicted by a dashed arrow 309, and processes the patient motion information 234 to thereby output the raw sensor output data 229.
- the (typically continuous analogue) patient motion information 234 reflects the movement and orientation of the patient’s body within the gravitational field of the earth.
- the sensor 207 is the 3- axis accelerometer referred to in regard to Fig. 2.
- the raw sensor output data 229 is a continuous analogue or high sampling rate data stream, for each of the 3 accelerometer axes, representing the respective acceleration of the accelerometer along those three axes (described hereinafter in more detail with reference to Fig. 6A).
- the process 300 then follows two paths in parallel, an arrow 305 from the step 304 to a step 306, and an arrow 333 from step 304 to a step 324.
- the step 306 performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, determines and stores, as depicted by a dashed arrow 332, from the raw sensor output data 229 received from the step 304, the computed physiological parameters 232.
- Body position which includes inclination (see 643 in Fig. 6E) and rotation (see 642 in Fig. 6E) is determined by applying low pass filters to the three axes of acceleration and then using trigonometry.
- Computation for respiratory rate starts using band pass filters tuned to about 0.3 Hz followed by state machines that detect peaks and troughs to determine breath cycles.
- a queue of recent breath cycles is maintained from which breathing rate (see 644 in Fig. 6E) is determined.
- Cough (see 641 in Fig. 6E) is determined by detecting an impulse on the accelerometer normal to the chest wall followed by a resonance of the chest cavity.
- Actigraphy (see 645 in Fig. 6E) is determined starting with band pass filters, rectifiers, low pass filters and threshold detection.
- the step 306 stores the computed physiological parameters 232 in the BLE WD memory 211.
- the process 300 then follows an arrow 307 from the step 306 to a decision step 310.
- the step 310 performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, determines if the summary data trigger signal 164 has been received.
- the patient 101 can send the summary data request signal 240 to the smartphone 105, as depicted by the arrow 231 (see Fig. 2), in order to direct the processor 145 of the smartphone executing the smartphone WPDMP software application 158 stored in the smartphone memory 144, to send the summary data trigger signal 164, to the processor 208 of the BLE WD 103.
- the process 300 follows a NO arrow 327 from the step 310 back to the step 306. If however the summary data trigger signal 164 has been received then the process 300 follows a YES arrow 311 from the step 310 to a step 312.
- the step 312 performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, transmits the computed physiological parameters 232 (which form, at this time, the WD output data 149) as depicted by a dashed arrow 322 to the smartphone 105 (also see the arrow 104 in Fig. IB).
- the process 300 then follows an arrow 313 from the step 312 back to the step 301.
- the process 300 follows an arrow 333 from the step 304 to a step 324.
- the step 324 performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, continuously stores a moving window of the raw sensor output data 229. Typically, the moving window is 5 seconds long, however the window can be shorter or longer if desired.
- the process 300 then follows an arrow 325 to a step 328.
- the step 328 performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, determines in the raw data trigger signal 156 has been received. If this is not the case, then the process 300 follows a NO arrow 326 back to the step 324. If, however, the raw data trigger signal 156 has been received, as depicted by a dashed arrow 321, then the process 300 follows a YES arrow 314 from the step 328 to a step 315.
- the step 315 determines, as depicted by a dashed arrow 323, the subset 320 of the raw accelerometer output data 229 stored by the step 324, which spans the window 630 depicted in Fig. 6D.
- the raw accelerometer output data 229 during a time-period of about 5 seconds prior to the time instant of occurrence of inhaler use 618 is typically of interest. Accordingly, as previously described the step 324 continuously stores a moving window of about 5 seconds of the raw accelerometer output data 229 in a buffer in the WD memory 211.
- the moving window may however be of shorter or longer duration if desired.
- the step 315 determines the subset 320 of the raw accelerometer output data 229 which typically comprises (A) the 5 most recent seconds of the presently stored window of the raw accelerometer output data 229 concatenated with (B) the subsequent approximately 25 seconds of the raw accelerometer output data 229.
- the subset 320 of the raw accelerometer output data 229 which spans the window 630 depicted in Fig. 6D commences about five seconds prior to the instant of occurrence 618 of inhaler use, this being the window leading interval 629, and continues for 25 seconds thereafter.
- the subset of raw sensor output data 320 is sent concurrently with the computed physiological parameters 232 to the smartphone 105 (see 149’ in Fig. IB).
- the process 300 then follows an arrow 316 from the step 315 to a step 317.
- the step 317 performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, transmits, as depicted by a dashed arrow 331, the subset 320 of the raw accelerometer output data 229 which spans the window 630 (which forms, at this time, the WD output data 149) to the smartphone 105 (also see the arrow 104 in Fig. IB).
- the process 300 then follows an arrow 318 from the step 317 to the step 301.
- Fig. 4 is a flow chart process example 400 depicting operation of the user smartphone 105 in the system 100 of Fig. IB.
- the process 400 comprises a number of sub-processes executing in parallel on the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144 of the smartphone.
- a first sub-process 401 performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives from the patient 101, as depicted by a dashed arrow 403, credentials 404 for an account linked to the patient 101 and provides to the patient 101, as depicted by a dashed arrow 405, confirmation 406 that a successful connection has been established.
- the sub-process 401 then loops, as depicted by an arrow 402, back to the sub-process 401.
- a second sub-process 407 performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives, as depicted by a dashed arrow 409, a status request from the patient 101 and provides to the patient 101, as depicted by a dashed arrow 411, display of the status of the wearable device 103 such as battery level.
- the sub-process 407 then loops, as depicted by an arrow 408, back to the sub-process 407.
- a third sub-process 413 performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives from the wearable device 103, as depicted a dashed arrow 415, the WD output data 149 and outputs, as depicted by a dashed arrow 416, the WD output data 149' to the server 110.
- the sub-process 413 then loops, as depicted by an arrow 414, back to the sub-process 413.
- a fourth sub-process 419 performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives, from the BLE WD 103 and/or from the smartphone 105 and/or from the server 110, a loss of connection signal 432 indicating that connection over one or more of the networks 151, 152 has been lost.
- the sub-process 419 then provides, as depicted by a dashed arrow 421, a loss of connection alert 422, to the smartphone 105 and/or to the server 110. Loss of connection between the smartphone 105 and the wearable 103 and loss of connection between the smartphone 105 and the server 110 are handled differently.
- Loss of connection between the smartphone 105 and the WD 103 will lead to the smartphone 105 sending the alert 236 to the user 101 as depicted by the arrow 231 (see Fig. 2).
- loss of connection between the smartphone 105 and the server 110 will cause the smartphone WPDMP software application 158 and the smartphone processor 145 to store up to 8 hours of the summary data 232 from the wearable 103.
- the smartphone 105 will alert the user by sending the alert 236 to the user 101 as depicted by the arrow 231 after a predetermined period of time.
- a fifth sub-process 423 performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives, as depicted by a dashed arrow 425, an alert 160 from the server 110 (also see the arrow 117 in Fig. 2) indicating that one or more physiological parameters from the patient 101 are outside expected bounds and provides, as depicted by a dashed arrow 426, an alert 236 to the patient 101 as depicted by the arrow 231 in Fig. 2.
- the sub-process 423 then loops, as depicted by an arrow 424, back to the sub-process 423.
- a sixth sub-process 427 performed by the processor 145 of the smartphone 105 as directed by the software application 158 stored in the memory 144, receives, only if the WPDMP system is in the Training mode, as depicted by a dashed arrow 429, the inhaler activation signal 141 from the smart inhaler 128 and provides, as depicted by a dashed arrow 430, the raw data trigger signal 156 to the BLE WD 103 as depicted by the arrow 140 in Fig. 2.
- the sub-process 427 then loops, as depicted by an arrow 428, back to the sub-process 427.
- Fig. 5 is a flow chart process example 500 depicting operation of the server monitor service and alarm generator in the system of Fig. IB.
- the process 500 comprises a number of sub-processes executing in parallel on the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147 of the server.
- a first sub-process 501 performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives from wearable devices such as the WD 103 which are operating and transmitting WD output data 149, as depicted by a dashed arrow 503, parameters characterising the wearable devices (such as the serial number or the MAC address).
- the sub-process 501 can provide a list of wearable devices which are operating and transmitting WD output data 149, and their parameter information, to a system administrator (not shown) upon request.
- the sub-process 501 then loops, as depicted by an arrow 502, back to the sub-process 501.
- a second sub-process 505 performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives from the smartphone 105, as depicted by a dashed arrow 507, the WD output data 149’.
- the WD output data 149’ comprises the computed physiological parameters 232 (see Table 1) while the patient is not presently using an inhaler, and alternately comprises the computed physiological parameters 232 as well as the raw accelerometer output data 229 (see Fig. 6D) during the window of time 630 (see Fig. 6D) straddling a time instant 618 that the patient uses an inhaler.
- the sub-process 505 applies a set of rules to the WD output data 149’ to identify, as depicted by a dashed arrow 508, trends 509 in various physiological parameters such as body movement, orientation, sound components, and so on.
- the sub-process 505 outputs to a step 517, as depicted by a dashed arrow 516, the physiological trend information 509.
- the sub-process 505 then loops, as depicted by an arrow 506, back to the sub-process 505.
- a third sub-process 510 performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives from the smartphone 105, as depicted by a dashed arrow 512, the WD output data 149’.
- the sub-process 510 applies a set of rules (see the monitoring and alert example described above in relation to the sub-process 505) to the WD output data 149’to identify, as depicted by a dashed arrow 513, information and trends 514 characterising the inhaler use (see the monitoring and alert example described above in relation to the sub-process 505).
- the sub-process 510 outputs to the step 517, as depicted by a dashed arrow 515, the inhaler use information 514.
- the sub-process 510 then loops, as depicted by an arrow 511, back to the subprocess 510.
- the fourth sub-process 517 performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives the physiological trend information 509, the inhaler-use trends and information 514, and expected value and threshold information 518 including a respiratory baseline as depicted by respective dashed arrows 516, 515 and 519.
- the step 517 determines variances (527) between the physiological trend information 509, the inhaler-use information 514 and the expected value information 518.
- the step 517 then follows an arrow 520 to a determination step 521.
- the step 521 performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, determines if the variances determined by the step 517 exceed corresponding pre-determined thresholds 526 (for pre-determined time intervals), and if this is the case the step 521 follows a YES arrow to a step 523.
- the step 523 performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, sends the alert 160 (see Fig. IB) as depicted by a dashed arrow 524.
- the step 521 follows a NO arrow 525 back to the step 517.
- a trend in respiration rate is that the respiration rate for the patient has increased by an average of 1.5 breaths per minute per hour for the past three hours from a resting rate of 14 breaths per minute and has remained at an elevated rate for the past two hours.
- the pre-determined threshold for increasing respiration rate is 1 breath per minute per hour and the final elevated rate time threshold is one hour.
- the respiration rate component of the physiological parameter trend information 509 is 1.5 breaths per minute per hour
- the expected value of respiration rate is 14 breaths per minute
- the threshold for increasing respiration rate is 1 breath per minute per hour and the time threshold is one hour.
- the step 517 when checking the trend information against the expected trend values and thresholds determines that the respiration rate for the patient 101 exceeds the pre-determined threshold by 0.5 breaths per minute per hour and the threshold has been exceeded for two hours noting that the final elevated rate time threshold is one hour.
- the following step 521 decides that since the threshold has been exceeded, the alert 160 is to be sent by the step 523.
- the step 517 monitors the rate of preventer and reliever inhaler use. If the ratio of reliever to preventer use increases by 50 percent for more than one week, an alert 160 will be generated.
- the time scales over which monitoring can be performed can extend from a few hours to a few days or more. For example, three restless nights in a row interspersed with lack of activity during the day may indicate that exacerbation is imminent.
- a fifth sub-process 528 performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives the WD output data 149’, as depicted by a dashed arrow 532, and determines inhaler technique parameters 531 (described hereinafter in more detail with reference to Fig. 6C), as depicted by a dashed arrow 530.
- the process 528 then loops back from the step 528 to the step 528 as depicted by an arrow 529.
- the inhaling technique parameters 531 can include depth of inhalation 619, duration of holding breath 620, slope of inhalation 622, and duration of sigh breath post inhaler use 621.
- Fig. 6A is an example 610 of 3-axis raw accelerometer output data 229 for a one-hour period during which the wearer of the wearable device is sleeping, where sleep commences after approximately the 25 th minute.
- the example 610 shows three channels an x-channel 611, a y- channel 612, and a z-channel 613, one channel for each of the axes of the 3-axis accelerometer 207.
- the channels are set against a vertical amplitude axis 615 and a horizontal time axis 616.
- a dashed rectangle 614 depicts a disturbance in the z-channel 613 resulting from a change in the body position of the patient 101 (described hereinafter in more detail with reference to Fig. 6B).
- Fig. 6B shows a magnified representation of the dashed rectangle 614 of Fig. 6A.
- a highlighted data region 633 depicts the raw accelerometer output data 229 on the Z channel during the one hour of sleep depicted in Fig. 6A zoomed in around 45 minutes while the patient 101 is changing body position.
- Fig. 6C depicts a single channel of the 3-axis raw accelerometer output data 229 when an inhaler is used.
- the raw accelerometer output data 229 is set against a vertical amplitude axis 623 and a horizontal time axis 624.
- the raw accelerometer output data 229 has a relatively flat shape with ripples during a time period 628, referred to as a non-inhaler rhythm or a pre-inhaler effect time, prior to a time instant of occurrence 618 that the patient uses one of the inhalers.
- the raw accelerometer output data 229 then firstly dips and then rises to a height 619 indicative of a depth of inhalation.
- the rise has a gradient 622 indicative of a slope of inhalation 622.
- the raw accelerometer output data 229 rises to a peak having a width 620 indicative of a time period duration during which the patient 101 holds his breath.
- the raw accelerometer output data 229 then drops to an intermediate level having a duration 621 indicative of a duration of sigh breath post inhaler use.
- the raw accelerometer output data 229 then drops again down to a level comparative to that which it had prior to the time instant of occurrence 618.
- the raw accelerometer output data 229 exhibits a shape referred to as the inhaler effect shape during a time duration 626 which extends from the time instant of occurrence 618 to the time of reversion 625 to non-inhaler rhythm.
- Fig. 6D depicts, as indicated by a reference numeral 617, the window of time 630 during which high data rate raw accelerometer output data 229 is provided together with the low data rate computed physiological parameters 232 in the WD output data 149 output by the BLE WD 103.
- the window of time 630 is equal to the duration of the inhaler effect 626 plus a window leading interval 629 plus a window trailing interval 631 (as described in more detail with reference to Fig. 3).
- Fig. 6E depicts an example 640 of the low sampling rate computed physiological parameters 232.
- the computed physiological parameters 232 traces are set against a left-hand vertical Body Position axis (in units of “degrees”), a right-hand vertical Respiratory Rate axis (in units of “Breaths-per-minute”) and a horizontal time axis 649.
- Five channels are shown namely cough 641, rotation 642, inclination 643, respiratory rate 644 and actigraphy 645.
- the set of 5 raw computed physiological parameter data points is shown by a vertical dashed line 646 intersecting the five channels.
- the computed physiological parameters 232 in the present example comprises sets of 5 parameter values however this can comprise fewer or more parameter values. Table 1 shows a list of such sets of the 5 parameter values. Parameter set numbers 123 to 126 are highlighted in yellow, these parameter sets corresponding to the highlighted data region 633 in Fig. 6B.
- Figs. 7A and 7B depict an example software architecture (see reference numerals 700 and 750) of the BLE wearable device.
- Figs. 7A and 7B depict the major software blocks of the embedded wearable device WPDMP software application 157 of the wearable device. Arrows show both data flow and execution flow between blocks.
- Di agonal -hatched blocks see 742 in Fig. 7A and 775 in Fig. 7B) show data and code for storage and processing of raw accelerometer output data 229.
- Cross-hatched blocks see 743 in Fig. 7A and 776 in Fig. 7B) show components of the Bluetooth communication system.
- White blocks (blocks other than see 742 in Fig. 7A and 775 in Fig. 7B and 743 in Fig. 7A and 776 in Fig. 7B) compose the remaining parts of the system.
- the embedded wearable device WPDMP software application 157 initialises and checks hardware 709. If serious problems are detected the system is halted, the indicator 206 flashes red briefly then the system returns to the power off state. If serious problems are not detected then background processes are started by initialising global structures, enabling counters and interrupt handlers. After initialisation, executing enters the main loop 711 (see 303 in Fig. 3) which waits for events and responds as necessary. Most tasks run on hardware (such as the digital signal processor 210) separate to that of the main processor (ie 208) and periodically notify the main processor by flags or interrupts.
- hardware such as the digital signal processor 2
- the accelerometer 207 is configured to sample at a fixed rate and flags the processor 208 each time a sample set is available with a logic line 767. This line triggers an interrupt 768 which starts a background transfer to a double buffer 760 (which is a sub-set of the memory 211). When one buffer is full, the handler 769 sets a flag 764 and targets the other buffer to receive data.
- the main loop 711 polls flags 764 and responds to an available buffer of accelerometer data by dispatching the accelerometer processor block 713. This block applies frequency selective filters 722, 724, 726 to the raw accelerometer output data 229 which is subsequently fed into state machines 728, 730, 732 to compute a set of physiological parameters 736 (also see 232 in Fig. 2) which are stored in a set. This computation stream is always active while the device is powered (see process steps 304, 306, 310, and 312 in Fig. 3).
- the Bluetooth subsystem shown in Cross-hatched format (see 743 in Fig. 7A and 776 in Fig. 7B), is partially implemented in the separate radio processor 239 (see Fig. 2) and within interrupt function on the main processor 208. Data is transferred between the two processors 208, 210 with a dedicated hardware link 752.
- the Bluetooth stack 751 executes callback functions in the main code. If summary data 232 is requested, the main loop sets a timer (utilising the real time clock 212 in Fig. 2) for a period of one second.
- An interrupt handler 717 in the main loop responds to that timer and forward the latest summary 736 to the Bluetooth stack 751 which is transmitted in the background the by subsystem 752, 753, 754, 755.
- a request for raw accelerometer data 229 is handled by a separate handler 715 which forwards raw data 739 (see 229 in Fig.2) to the Bluetooth subsystem.
- USB requests from a host computer through the USB interface 770 are handled through a message handler 772 which accesses state variables 764 and other global data structures 774 as needed.
- FIG. 8A illustrates how a wearable device can be attached to a user in the WPDMP system.
- a partial image of the patient 101 is shown, with the BLE WD 103 attached to the upper left-hand chest area 806 of the patient.
- Fig. 8B illustrates the smart inhaler 137 that can be used in the WPDMP system.
- the smart inhaler comprises a body 806 housing a cartridge 803 containing the medication (not shown), a communication and control module 802, and a closure cap 804 which is removed when the patient 101 activates the inhaler (by applying pressure in a direction shown by an arrow 801) and then replaced in order to cover the aperture through which the medication is output in a direction depicted by an arrow 805.
- the communication and control module 802 transmits the smart inhaler activation signal 141 when the patient 101 uses the inhaler 137 by applying pressure in the direction shown by the arrow 801.
- FIGs. 9A and 9B collectively form a schematic block diagram representation of a general- purpose electronic device, multiple instantiations of which can be used to implement various components in a WPDMP system.
- Fig. 9A depicts the computing device 901 and its environment
- Fig. 9B depicts the embedded controller 902 in the electronic computing device 901.
- the electronic device 901 comprises an embedded controller 902. Therefore, the electronic device 901 may be referred to as an “embedded device.”
- the embedded controller 902 has a processing unit (or processor) 905 which communicates in a bi-directional manner with an internal storage block 909 (described hereinafter in more detail in regard to Fig. 9B).
- the storage block 909 can be implemented with non-volatile semiconductor read only memory (ROM) 960 and semiconductor random access memory (RAM) 970 (see Fig. 9B).
- the RAM 970 may be volatile, non-volatile or a combination of volatile and non-volatile memory modules.
- the electronic device 901 includes a display controller 907 that communicates with a display 918, which may be a liquid crystal display (LCD) panel or the like.
- the display controller 907 can display text and/or graphical images on the display 918 as directed by instructions received from the embedded controller 902, with which the display controller 907 communicates.
- the electronic device 901 also includes a user interface I/O module 913 which communicates with user input devices such as the manual control button 205.
- the user interface I/O module 913 may include a touch sensitive panel physically associated with the display 918 to collectively form a graphical user interface (GUI) touch-screen for receiving inputs and providing outputs to the user.
- GUI graphical user interface
- a prompt or menu driven GUI can be used with keypad-display combinations.
- Other forms of user input devices may also be used, such as a microphone (not illustrated) for voice commands or a joystick/thumb wheel (not illustrated) for ease of navigation about menus.
- the electronic device 901 has a memory interface module 906, which communicates with the processor 905 as depicted by an arrow 919.
- the memory interface 906 can communicate with a compatible portable memory device 925 which can act as a source or destination of data or to supplement the internal storage device 909.
- the interface 906 can communicate, for example, with portable memory devices such as Universal Serial Bus (USB) memory devices, Secure Digital (SD) cards, Personal Computer Memory Card International Association (PCMIA) cards, optical disks and magnetic disks.
- USB Universal Serial Bus
- SD Secure Digital
- PCMIA Personal Computer Memory Card International Association
- the electronic device 901 has a communications interface 908 to permit the device 901 to communicate with “remote” system components such as the Bluetooth modem 209 or to a computer or communications network (not shown) as depicted by an arrow 983.
- “remote” system components such as the Bluetooth modem 209 or to a computer or communications network (not shown) as depicted by an arrow 983.
- the WPDMP apparatus and/or methods described above may be implemented using multiple instantiations of the electronic device 901 or various modules therein, where the processes of Figs. 3, 4, and 5 may be implemented as one or more interoperable software application programs such as but not limited to 157, 158, 159, that can be executed by respective processors 208, 145 and 146.
- the software instructions may be formed as one or more software code routines, each routine performing one or more specified tasks.
- Each of the one or more interoperable software applications 933 may also be partitioned into two separate functional parts, in which a first part and the corresponding code modules perform the described WPDMP methods, and a second part and the corresponding code modules manage a user interface between the first part and the user.
- the software 933 of the embedded controller 902 is typically stored in the non-volatile ROM 960 of the internal storage block 909.
- the software application 933 that is stored in the ROM 960 can be updated when required from a computer readable medium such as the portable storage medium 925.
- the software application 933 can be loaded into and executed by the processor 905.
- the processor 905 may execute software instructions that are located in the RAM 970.
- Software instructions may be loaded into the RAM 970 by the processor 905 creating a copy of one or more code modules from the ROM 960 for copying into the RAM 970.
- the software instructions of one or more code modules may be pre-installed in a non-volatile region of the RAM 970 by a manufacturer. After one or more code modules have been discovered in the RAM 970, the processor 905 may execute software instructions of the one or more code modules.
- the software application program 933 is pre-installed and stored in the ROM 960 by a manufacturer, prior to distribution of the electronic device 901.
- the software application programs 933 may be supplied to the user encoded on one or more computer readable storage media (such as 925) and read via the memory interface 906 of Fig. 9A prior to storage in the internal storage block 909 or alternately in the portable memory 925.
- computer readable storage media refers to any non-transitory tangible storage medium that participates in providing instructions and/or data to the embedded controller 902 for execution and/or processing.
- Examples of such computer readable storage media include magnetic tape, CD-ROM devices, a hard disk drive, a ROM or integrated circuit, a USB memory device, a magneto-optical disk, a flash memory device, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the device 901.
- a computer readable medium having such software or computer program recorded on it is referred to as a computer program product.
- GUIs graphical user interfaces
- a user of the device 901 and the application programs 933 may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s).
- Other forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers (not illustrated) and user voice commands input via a microphone (not illustrated).
- Fig. 9B depicts an example functional block diagram of the embedded controller 902 including the processor 905 for executing the software application programs 933 and the internal storage block 909.
- the internal storage 909 block includes a read only memory (ROM) module 960 and a random-access memory (RAM) module 970.
- the processor 905 can execute the software application programs 933 which are stored in one or both of the inter-connected memories 960 and 970.
- a system program (not shown) that is permanently stored in the ROM 960 is executed.
- the system program that is permanently stored in the ROM 960 is sometimes referred to as “firmware”. Execution of the firmware by the processor 905 may fulfil various functions, including processor management, memory management, device management, storage management and user interface.
- the processor 905 typically includes a number of functional modules including a control unit (CU) 951, an arithmetic logic unit (ALU) 952, a digital signal processor (DSP) 953 and a local or internal memory comprising a set of registers 954, 956, 957, as well as internal buffer or cache memory 955.
- CU control unit
- ALU arithmetic logic unit
- DSP digital signal processor
- One or more internal buses 959 enable communication between these functional modules.
- the processor 905 typically also has one or more interfaces 958 for communicating with external devices via a system bus 981, as depicted by a line 961.
- the software application program 933 includes a sequence of instructions 962 through 963 that typically include conditional branch and loop instructions.
- the software program 933 can also include data, which is used in execution of the software program 933. This data may be stored as part of the instructions (962, . . ., 963) or in a separate location 964 within the ROM module 960 or the RAM module 970.
- the processor 905 is typically provided with the set of instructions (962, . .., 963), for execution.
- This set of instructions may be organised into routines, each of which may perform a specific task or handle specific events that occur in the electronic device 901.
- the software application program 933 waits for events and upon their occurrence executes the block of code (routine) associated with that event. Events may be triggered in response to input from a user, via the user input devices such as 205 of Fig. 9A, as detected by the processor 905. Events may also be triggered in response to other sensors and interfaces in the electronic device 901.
- the execution of a software application comprising a set of the instructions typically requires variables to be read and modified in the course of the execution.
- Such variables are typically stored in the RAM module 970.
- the disclosed WPDMP method uses input variables 971 that are stored in memory locations 972, 973 in the RAM module 970.
- the input variables 971 are processed to produce output variables 977 that are stored in memory locations 978, 979 in the memory RAM module 970.
- the aforementioned processing may produce intermediate variables 974 which may be stored in additional memory locations in locations 975, 976 of the memory RAM module 970.
- some intermediate variables may only exist in the registers 954, 956, 957 of the processor 905.
- the execution of a software program comprising a sequence of instructions is achieved by the processor 905 carrying out a repeated application of a fetch-execute cycle.
- the control unit 951 of the processor 905 maintains a register called the program counter, which contains the address in the ROM module 960 or the RAM module 970 of the next instruction to be executed.
- the contents of the memory address indexed by the program counter is loaded into the control unit 951.
- the instruction thus loaded controls the subsequent operation of the processor 905, causing for example, data to be loaded from the ROM memory module 960 into the processor registers 954, the contents of a register to be arithmetically combined with the contents of another register, the contents of a register to be written to the location stored in another register and so on.
- the program counter is updated to point to the next instruction in the system program code. Depending on the instruction just executed this may involve incrementing the address contained in the program counter or loading the program counter with a new address in order to achieve a branch operation.
- Each step or sub-process in the processes of the methods described below is associated with one or more segments of the application program 933 and is performed by repeated execution of a fetch-execute cycle in the processor 905 or similar programmatic operation of other independent processor blocks in the electronic device 901.
Landscapes
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Public Health (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Pathology (AREA)
- Animal Behavior & Ethology (AREA)
- Heart & Thoracic Surgery (AREA)
- Veterinary Medicine (AREA)
- Physics & Mathematics (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Surgery (AREA)
- Physiology (AREA)
- Primary Health Care (AREA)
- Epidemiology (AREA)
- Pulmonology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Chemical & Material Sciences (AREA)
- Medicinal Chemistry (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Dentistry (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Psychiatry (AREA)
- Signal Processing (AREA)
- Hematology (AREA)
- Anesthesiology (AREA)
- Pharmacology & Pharmacy (AREA)
- Computer Networks & Wireless Communication (AREA)
- Measuring And Recording Apparatus For Diagnosis (AREA)
Abstract
A computer implemented method for monitoring by a wearable device, against a respiratory baseline, a respiratory state of a person (101), the method comprising the steps of: determining, from raw sensor output data (229) output from at least one sensor (207) of the wearable device (103) configured for attachment to the chest (806) of the person for receiving patient motion information (234), computed physiological parameters (232); communicating (104) to a server device (110) the computed physiological parameters (232); determining instants of time (618) at which the patient uses an inhaler (137); and communicating (104), to the server device (110), windows (630) of the raw sensor output data (229) together with the computed physiological parameters (232), wherein each of the windows (630) of the raw sensor output data (229) straddles a corresponding instant of time (618) at which the patient uses the inhaler (137).
Description
System and method for managing COPD Symptoms
Field
[0001] The present invention relates to the capture and processing of physiological data for monitoring medication dosage, and in particular, to the use of wearable monitoring devices coupled to patients for monitoring medication usage.
Background
[0002] Chronic obstructive pulmonary disease (COPD) is one of the leading causes of death worldwide. It is a heterogeneous disease characterized by persistent respiratory symptoms and airflow limitation. Exacerbations, or worsening of symptoms, impacts on both the patient and healthcare system whether it be through more rapid decline in function or through an increase in hospitalizations. Thus, earlier detection of deterioration of patient’s respiratory condition can facilitate early intervention, which can, in turn, mitigate the impact that these events have on both the patient and the healthcare system.
[0003] Currently, validated patient reported outcome (PRO) questionnaires such as the COPD Assessment Test (CAT) are used by clinicians to assess respiratory symptom burden, and the impact that those symptoms have on the patient’s quality of life. Additionally, the American Thoracic Society advises the patients who have had an exacerbation in the past to take note of the pattern of their symptoms.
[0004] However, these approaches all rely on the patient to report them and thus any sign or signs of respiratory deterioration that are either unrecognized by the patient or perhaps even ignored or dismissed then go undetected as opposed to heralding the onset of a change in state.
Summary
[0005] It is an object of the present invention to substantially address one or more of the above disadvantages, or at least provide a useful alternative.
[0006] Disclosed are arrangements, referred to as Wearable Physiological Data Measurement and Processing (WPDMP) arrangements, which can be worn by a person to thereby capture physiological data including but not limited to body position, actigraphy, cough and respiratory rate changes that (a) can portend a deterioration of baseline respiratory function and (b) can assess the impact that inhaled medications have on these states. In the WPDMP arrangements continuous low to moderate sampling rate physiological data are determined interspersed and overlaid with short
segments of physiological data which are captured at a higher sampling rate around the time of the inhaler use.
[0007] In a first aspect there is provided a computer implemented system for monitoring, against a respiratory baseline, a respiratory state of a person, the system comprising: a wearable device configured for attachment to the chest of the person, the wearable device comprising: at least one sensor for receiving patient motion information from the chest of the person and outputting raw sensor output data; a wearable device memory storing an executable wearable device software application; and at least one wearable device processor for executing the executable wearable device software application to thereby perform the steps of: determining, from the raw sensor output data, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler; and the server device which comprises: a server memory storing an executable server software application; and a server processor for executing the executable server software application to thereby perform the steps of: determining inhaler technique parameters from the windows of the raw sensor output data; determining variances between (A) trends in the summary output data and trends in the inhaler technique parameters and (B) expected values of the summary output data and expected values of the inhaler technique parameters; and sending an alert to the person if the variances exceed predetermined thresholds; wherein the alert indicates poor inhaler technique and / or deterioration in the respiratory state of the patient with reference to the respiratory baseline.
[0008] Optionally the at least one sensor for receiving patient motion information is a three-axis accelerometer.
[0009] Optionally the system is in training mode; the inhaler is a smart inhaler which provides an inhaler activation signal when the patient uses the smart inhaler; and the instants of time at which the patient uses the inhaler are determined from the corresponding inhaler activation signals.
[0010] Optionally the system is in operational mode; and the instants of time at which the patient uses the inhaler are determined from raw accelerometer output data.
[0011] Optionally the step of determining, from the raw sensor output data, computed physiological parameters comprises the steps of: determining inclination and rotation by applying low pass filters
to the raw sensor output data followed by state machines which apply trigonometric relationships to determine inclination and rotation; determining respiratory rate by applying band pass filters to the raw sensor output data followed by state machines that detect peaks and troughs to determine breath cycles, and maintaining a queue of recent breath cycles to thereby determine respiratory rate; and determining cough by detecting an impulse in the raw sensor output data normal to a chest wall of the patient followed by a resonance of the chest cavity, to thereby determine occurrence of a cough.
[0012] In another aspect there is provided a wearable device for use in a computer implemented system for monitoring, against a respiratory baseline, a respiratory state of a person, the wearable device configured for attachment to the chest of the person, the wearable device comprising: at least one sensor for receiving patient motion information from the chest of the person and outputting raw sensor output data; a wearable device memory storing an executable wearable device software application; and at least one wearable device processor for executing the executable wearable device software application to thereby perform the steps of: determining, from the raw sensor output data, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler.
[0013] Optionally the at least one sensor for receiving patient motion information is a three-axis accelerometer.
[0014] Optionally the system is in training mode; the inhaler is a smart inhaler which provides an inhaler activation signal when the patient uses the smart inhaler; and the instants of time at which the patient uses the inhaler are determined from the corresponding inhaler activation signals.
[0015] Optionally the system is in operational mode, and the instants of time at which the patient uses the inhaler are determined from the raw accelerometer output data.
[0016] In another aspect there is provided a non-transitory computer-readable medium storing a software executable program configured to direct a processor of a wearable device to execute a method for monitoring, against a respiratory baseline, a respiratory state of a person, the method comprising the steps of: determining, from raw sensor output data output from at least one sensor of a wearable device configured for attachment to the chest of the person for receiving patient motion information, computed physiological parameters; communicating to a server device the computed
physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler.
[0017] In another aspect there is provided a computer implemented method for monitoring by a wearable device, against a respiratory baseline, a respiratory state of a person, the method comprising the steps of: determining, from raw sensor output data output from at least one sensor of the wearable device configured for attachment to the chest of the person for receiving patient motion information, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler.
[0018] Other aspects are also disclosed.
Brief Description of the Drawing
[0019] Preferred embodiments of the present invention will now be described by way of example, with reference to the accompanying tables and drawings, wherein:
[0020] Fig. 1A is a functional block diagram example of example communication networks that can be used in a WPDMP system;
[0021] Fig. IB is a functional block diagram example of a WPDMP system;
[0022] Fig. 2 is a functional block diagram example of a Bluetooth Low Energy (BLE) wearable device for use in a WPDMP system;
[0023] Fig. 3 is a flow chart process example depicting operation of the BLE wearable device;
[0024] Fig. 4 is a flow chart process example depicting operation of a user smartphone in a WPDMP system;
[0025] Fig. 5 is a flow chart process example depicting operation of a server monitor and alarm generator in a WPDMP system;
[0026] Fig. 6A is an example of raw accelerometer output data from a 3-axis accelerometer used in a WPDMP system for an hour period during which the wearer of the associated BLE wearable device is sleeping;
[0027] Fig. 6B shows a magnified region of the 3-axis raw accelerometer output data of Fig. 6A for the z channel;
[0028] Fig. 6C depicts a single channel of the 3-axis raw accelerometer output data when an inhaler is used;
[0029] Fig. 6D shows the representation of Fig. 6C including a window of time during which wearable device output data comprises a sub-set of the raw sensor output data;
[0030] Fig. 6E depicts computed physiological parameters along five physiological data axes;
[0031] Figs. 7A and 7B depict an example software architecture of the BLE wearable device;
[0032] Fig. 8A illustrates how a wearable device can be attached to a user in a WPDMP system;
[0033] Fig. 8B illustrates a smart inhaler that can be used in a WPDMP system;
[0034] Figs. 9A and 9B collectively form a schematic block diagram representation of a general- purpose electronic device that can be used to implement various components in a WPDMP system; and
[0035] Table 1 presents computed physiological parameters relating to highlighted section in Fig.
6B
Detailed Description
[0036] Steps and/or features in the accompanying drawings having the same reference numerals have the same functions unless stated to the contrary.
[0037] Discussions in the “Background” section above relating to prior art arrangements may relate to public knowledge arising from use and/or publication, but should not be understood as forming part of the common general knowledge in the art.
[0038] The inventors have determined that a system that allows for real-time respiratory assessments can allow for the capture of alterations in respiratory state thus potentially allowing
clinicians to intervene earlier in the process. The inventors have ascertained that wearable sensing technologies can enable continuous or semi-continuous monitoring of a patient’s physiologic state outside the boundaries of the acute care system. The inventors have concluded that a change or deterioration in physiologic function detected using such a device can enable clinicians to assess and adjust the patient’s treatment to mitigate or even prevent an exacerbation or further deterioration in the patient’s respiratory state.
[0039] Fig. 1A is a functional block diagram example 150 of a communication network that can be used in a WPDMP system.
[0040] A Bluetooth Low Energy (BLE) wearable device 103 (also referred to as the WD 103) communicates WD output data 149 which comprises a stream of low data rate computed physiological parameters 232 (also referred to as summary output data 232 and described hereinafter in more detail with reference to Figs. 2 and 3), as depicted by an arrow 104, to a user smartphone 105 (also referred to as a user mobile communication terminal 105) over a Bluetooth network 151 (also referred to as a first communication network 151). The WD output data 149, comprising the stream of low data rate computed physiological parameters 232 incorporates, when the patient wearing the WD 103 uses an inhaler, subsets 320 of overlaid high data rate raw accelerometer output data 229 (described hereinafter with reference to Fig. 3 and also referred to more generally as raw sensor output data 229) each subset occupying a window of time 630 (described hereinafter in regard to Fig. 6D) straddling a time instant of occurrence 618 that the patient uses the inhaler.
[0041] A Cellular wearable device 112 communicates WD output data 153 (which is analogous to the WD output data 149 that is described above in regard to the BLE WD 103) as depicted by an arrow 113, to a cloud server 110 using a mobile data connection TCP/IP socket over the Internet 152 (also referred to as a second communication network 152).
[0042] The smartphone 105 communicates, as depicted by an arrow 109, the WD output data 149 from the BLE WD 103, using a mobile data connection TCP/IP socket to a WPDMP cloud server 110 over the Internet 152.
[0043] A smart inhaler 137 communicates an inhaler activation signal 141 (described hereinafter in more detail with reference to Fig. IB), as depicted by an arrow 138, to the user smartphone 105
over the Bluetooth network 151. The smart inhaler 137 also communicates, as depicted by an arrow 130, an inhaler activation signal 163 (see Fig. IB) to the cellular wearable device 112 over the Bluetooth network 151.
[0044] The afore-described communication between the smart inhaler 137, the BLE wearable device 103, the smartphone 105, the cellular wearable device 112 and the WPDMP cloud server 110 can also be implemented using other networks and communication protocols in a WPDMP system.
[0045] Fig. IB is a functional block diagram of one example of a WPDMP system 100. The WPDMP system 100 includes the wearable devices 103, 112 (also referred to as WD’s), the smart inhalers 137,128, the mobile terminal 105, and the WPDMP cloud server 110, all of which can communicate over the various communication networks as described in detail with respect to Fig. 1A
[0046] The WPDMP system 100 can operate in one of two main modes, referred to hereinafter as a Training mode and an Operational mod . In the Training mode the smart inhalers such as 128 are used in order to provide inhaler activation signals 141 when the smart inhaler 128 is used by a patient 101. The inhaler activation signal 141 serves to identify the time instant of occurrence 618 (described hereinafter in more detail in regard to Fig. 6C) that the patient 101 uses the smart inhaler 128. Once the system 100 has been trained, the system 100 can be used in the Operational mode. In the Operational mode the system 100 does not require the presence of the smart inhaler 128, because the system 100 can identify the time instant of occurrence 618 that the patient 101 uses an ordinary inhaler which does not emit the inhaler activation signal 141 (ie not a smart inhaler), by processing the high data rate raw accelerometer output data 229 to identify the time instant of occurrence of inhaler use 618.
[0047] Once the system 100 has been trained in the Training mode, the Training mode need not be used again unless, for example, significant software upgrades have been implemented. Much of the present specification describes operation of the WPDMP system 100 in the Training mode. It should be understood, however, that once training has been performed, the smart inhaler 128 and the associated inhaler activation signal 141 are required only occasionally if at all, and the system 100 can identify the time instant of occurrence 618 that the patient 101 uses the ordinary inhaler by processing the high data rate raw accelerometer output data 229.
[0048] The wearable devices 103, 112, the smart inhalers 137, 128, the smartphone 105, and the WPDMP cloud server 110 include one or more of the modules included in a typical computing device 900 described hereinafter in more detail with respect to Figs. 9A and 9B. Thus, for example, the wearable device 103 in Fig. IB includes a memory 211 (which is an instantiation of a storage device 909 depicted in Fig. 9A) storing a. wearable device WPDMP software application 157 (which is an instantiation of a software application 933 depicted in Fig. 9A) and a wearable device WPDMP processor 208 (which is an instantiation of a processor 905 depicted in Fig. 9A) for executing the wearable device WPDMP software application 157.
[0049] The smartphone 105 includes a memory 144 (which is an instantiation of the storage device 909 depicted in Fig. 9A) storing a smartphone WPDMP software application 158 (which is an instantiation of the software application 933 depicted in Fig. 9A) and a processor 145 (which is an instantiation of the processor 905 depicted in Fig. 9A) for executing the smartphone WPDMP software application 158.
[0050] The WPDMP server 110 includes a memory 147 (which is an instantiation of the storage device 909 depicted in Fig. 9A) storing a server WPDMP software application and patient data 159 (which is an instantiation of the software application 933 depicted in Fig. 9A) and a processor 146 (which is an instantiation of the processor 905 depicted in Fig. 9A) for executing the server WPDMP software application 159.
[0051] As described hereinafter in more detail with reference to Figs. 3, 4, 5, 7A and 7B the wearable devices 103, 112, the smart inhalers 137, 128, the smartphone 105, and the WPDMP cloud server 110 perform WPDMP processes directed by their respective processors executing respective applications (typically implemented as software applications stored in the respective device memories but also possibly implemented in hardware) in order to implement the WPDMP system.
[0052] Some of the modules in the WPDMP system may be implemented, wholly or partially, in dedicated hardware such as one or more integrated circuits performing the WPDMP functions or sub functions. Such dedicated hardware may include programmable logic arrays (PLAs), digital signal processors and the like.
[0053] Operation of the WPDMP system using the Bluetooth Low Energy (BLE) wearable device
[0054] Fig. IB depicts the WPDMP system 100 including two types of WD namely the Bluetooth Low Energy (BLE) WD 103 and the Cellular WD 112. The operation of the WPDMP system using the BLE WD 103 is described in this section entitled “WPDMP using the Bluetooth Low Energy (BLE) wearable device”. The operation of the WPDMP system using the WD 112 is described in the next section entitled “WPDMP using the cellular wearable device”.
[0055] The BLE WD 103 receives continuous patient motion information 234 (described hereinafter in more detail with reference to Fig. 2 and also referred to as patient force information) from the patient 101 (also referred to as the person 101) as depicted by an arrow 126. The (typically continuous analogue) patient motion information 234 reflects the movement and changes in orientation of the patient’s body within the gravitational field of the earth. In one WPDMP arrangement a sensor 207 in the BLE WD 103 that is used to sense the patient motion information 234 is a 3-axis accelerometer described hereinafter in more detail with reference to Fig. 2. Other sensors, such as a plurality of single-axis accelerometers, for example, can also be used. The 3-axis accelerometer 207 is mechanically coupled to the patient 101 (described hereinafter in more detail with reference to Fig. 8A) to thereby sense the patient motion information 234 and changes therein.
[0056] The accelerometer 207 receives the patient motion information 234, as depicted by a dashed arrow 226 (see Fig. 2), and outputs continuous analogue or high sampling rate raw accelerometer output data 229 (also referred to as raw sensor output data 229). The raw accelerometer output data 229 is communicated, as depicted by an arrow 220, for each of the 3 accelerometer axes representing the acceleration of the accelerometer along those three axes, and is described hereinafter in more detail with reference to Fig. 2 and Figs. 6A - 6D.
[0057] The BLE WD 103 has the processor 208 and a digital signal processor 210 which receive the raw accelerometer output data 229 and, using the BLE WD processor 208 executing the BLE WD software application 157 which is stored in the BLE WD memory 211, output low sampling rate computed physiological parameters 232, as depicted by a dashed arrow 230, described hereinafter in more detail with regard to Fig. 3 and Fig. 6E and Table 1.
[0058] Returning to Fig. IB the BLE WD 103 sends the WD output data 149 (also referred to as wearable device output data 149) to the smartphone 105 over the Bluetooth network 151 (see Fig.
1A) as depicted by an arrow 104. The WD output data 149 can take one of two forms depending upon whether the patient 101 is presently using one of the smart inhalers 137, 128 (if the WPDMP system is in the training mode) or an ordinary inhaler (if the WPDMP system is in the operational mode) or not. The time-period during which the patient 101 is presently using an inhaler is depicted by an arrow 626 in Fig. 6D which depicts the duration of the inhaler effect. The inhaler effect is deemed to be that time-period during which the medication inhaled by the patient from the inhaler has a material effect on the rhythm of the raw accelerometer output data 229. The inhaler effect commences at the time instant 618 which is the time instant of occurrence of inhaler use, and ends at a time 625, which is the time of reversion of the raw accelerometer output data 229 to a materially non-inhaler rhythm.
[0059] Accordingly, the WD output data 149 comprises the computed physiological parameters 232 (see Fig. 3 and Table 1) while the patient is not presently using an inhaler (i.e. outside the window depicted by an arrow 626 in Fig. 6D). However, straddling the time instant of occurrence 618 that the patient uses an inhaler, the WD output data 149 comprises the computed physiological parameters 232 as well as a subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D). The computed physiological parameters 232 and the subset 320 are sent to the smartphone via two separate Bluetooth characteristics on the same Bluetooth network 151. The window of time 630 is equal to the duration of the inhaler effect 626 plus a window leading interval 629 plus a window trailing interval 631 (described hereinafter in more detail in relation to Fig. 6D).
[0060] In one WPDMP arrangement the computed physiological parameters 232 comprise parameters derived from the raw accelerometer output data 229. The derived computed physiological parameters 232 can, for example, include (see Figs. 3 and 6E) cough parameters 641 (such as cough-counts per minute), rotation parameters 642 (in degrees), inclination parameters 643 (in degrees), respiratory rate parameters 644 (in breaths per minute), and actigraphy parameters 645 (such as an index to quantify the amount of movement).
[0061] The BLE WD 103 memory 211 is typically a large capacity memory to enable recording (ie storage) of the low data rate computed physiological parameters 232 which may be recorded once a second or more frequently if desired . A small amount of the memory 211 in the WD can store the summary data 232 during a loss of connection between the WD 103 and the smartphone 105 (see 419 in Fig. 4). However, a larger amount is required for the queue (typically of 5 seconds duration
but may be less or more if desired) of the raw accelerometer output data 229 required for transmission during inhaler use (see 315 in Fig. 3).
[0062] The patient 101 can attach the BLE WD 103 to themselves, as described hereinafter in more detail with reference to Fig. 8A, to thereby provide the patient motion information 234 and determine the computed physiological parameters 232 from the WPDMP system 100.
[0063] Fig. 8A shows an arrangement 800 in which the patient 101 has attached the BLE WD 103 to their upper left-hand chest area 806 or abdomen (not shown) using adhesive tape for example, where attachment to the chest allows measurement of lung sounds such as wheeze.
[0064] Returning to Fig. IB, the attachment of the BLE WD 103 to the chest area 806 of the patient 101 described with reference to Fig. 8A couples the patient motion information 234 between the BLE WD 103 and the chest area 806 of the patient 101. The patient motion information 234 comprises position and orientation, and changes therein, of the patient 101 which is communicated from the patient 101 to the BLE WD 103, as depicted by the arrow 126. The BLE WD 103 processes the patient motion information 234 to extract the computed physiological parameters 232 (see Fig. 2).
[0065] The BLE WD 103 stores the computed physiological parameters 232 (see Fig. 2) in the BLE WD memory 211 as directed by the BLE WD processor 208 executing the BLE WD software application 157 which is stored in the BLE WD memory 211.
[0066] The patient 101 can interact with the BLE WD 103 using different interaction paths 126,
102, 131.
[0067] The patient 101 can activate the BLE WD 103, by providing a WD activation signal 154 as depicted by an arrow 102, by pressing a WD activation button 205 (see Fig. 2) on the BLE WD
103. Sequential presses by the patient 101 on the WD activation button 205 cause the BLE WD 103 to transition between different operational states, for example a sleep state and two active states. In the sleep state, the device consumes the lowest power. The WD 103 can be awakened by a single press on the button 205 thus providing the WD activation signal 154 or by connection to a USB cable 135 connected to a charger 134 thus providing a WD activation signal 237. The sleep state is selected when storing the BLE WD 103 between uses. In the active states, the device is constantly
monitoring its sensor 207 and determining the computed physiological parameters 232. The two active states differ in that in the one active state (referred to hereinafter as the 1st active state) the device is transmitting the WD output data 149 to a receiver (such as the smartphone 105 for example), and in the other active state (referred to hereinafter as the 2nd active state) the device is not transmitting the WD output data 149 to a receiver.
[0068] The BLE WD 103 has an indicator device 206 (see Fig. 2), typically a light emitting diode (LED), which in one WPDMP example can assume one of three colours to provide feedback information 155 to the patient 101 , as depicted by an arrow 131. A first colour indicates that the BLE WD 103 is in the sleep state, a second colour indicates that the BLE WD 103 is in the 1st active state, and a third colour indicates that the BLE WD 103 is in the 2nd active state. Alternately, various colours and colour patterns from the indicator device 206 can be used to show different states. For example, the indicator device 206 can output a red colour for low battery in both the active state 1 as well as the active state 2; no light can indicate sleep, brief flashes during movement can indicate different states, and light can dim quickly to conserve energy and not disturb sleep.
[0069] The BLE WD 103 stores the computed physiological parameters 232 (see Fig. 2) in the BLE WD memory 211 as directed by the BLE WD processor 208 executing the BLE WD software application 157 which is stored in the BLE WD memory 211.
[0070] The BLE WD 103 sends the WD output data 149, as depicted by the arrow 104, to the smartphone 105 over the Bluetooth network 151 in the present WPDMP example. As previously noted, the WD output data 149 comprises the computed physiological parameters 232 (see Fig. 3 and Table 1) while the patient is not presently using an inhaler (i.e. outside the window depicted by an arrow 626 in Fig. 6D). However, straddling the time instant of occurrence 618 that the patient uses an inhaler, the WD output data 149 comprises the computed physiological parameters 232 as well as a subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D).
[0071] The smartphone 105 receives the transmitted WD output data 149 over the Bluetooth network 151 and forwards the WD output data (referred to by a reference numeral 149’) to the WPDMP server 110, as depicted by an arrow 109, over the Internet 152 using TCP/IP socket, using the Smartphone processor 145 executing the smartphone software application 158 which is stored in the smartphone memory 144.
[0072] Returning to Fig. IB, while the WPDMP system 100 is in the training mode the patient 101 can use the smart inhalers, such as the preventer smart inhaler 137 and the reliever smart inhaler 128 (described hereinafter in more detail with reference to Fig. 8B) for respiratory treatment and relief respectively. The term “smart inhaler” refers to an inhaler which can send an inhaler activation signal 141 when it is used by the patient, as depicted by the arrows 129, 138, over the Bluetooth network 151 (see Fig. 1 ) to the smartphone 105. When, however, the WPDMP system 100 is in the operational mode, the patient 101 can use ordinary inhalers for respiratory treatment and relief. The term ordinary inhaler refers to an inhaler which does not send an inhaler activation signal 141 when it is used by the patient.
[0073] Upon receiving the inhaler activation signal 141 (if the WPDMP system is in the Training mode) the smartphone software application 158 executing on the smartphone processor 145, sends a raw data trigger signal 156 to the BLE WD 103 as depicted by an arrow 140 to thereby direct the BLE WD 103, in addition to sending the computed physiological parameters 232, to also send the subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D), as depicted by the arrow 104. If the WPDMP system is in the Operational mode the BLE WD 103 determines the instant of occurrence 618 (see Fig. 6D) of inhaler use from the raw accelerometer output data 229 and (internally) generates the raw data trigger signal 156 which directs the BLE WD 103, in addition to sending the computed physiological parameters 232, to also send the subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D), as depicted by the arrow 104.
[0074] While the WPDMP system is in either the Training mode or the Operational Mode the patient 101 can send a summary data request signal 240 to the smartphone 105, as depicted by the arrow 231 (see Fig. 2), in order to direct the processor 145 of the smartphone executing the smartphone WPDMP software application 158 stored in the smartphone memory 144, to send a summary data trigger signal 164, to the processor 208 of the BLE WD 103 (described hereinafter inn more detail with reference to Fig. 3). In response to the summary data trigger signal 164 the processor 208 of the BLE WD 103 executes the wearable device WPDMP software application 157 stored in the memory 211 and commences sending the computed physiological parameters 232 once a second or more frequently if desired (see Fig. 3).
[0075] The WPDMP server 110 includes a data reception service 114 which receives, as depicted by an arrow 109, the WD output data 149’. The data reception service 114 forwards, as depicted by an arrow 118, the WD output data 149’ to a database 119 (which in this WPDMP arrangement forms part of the memory 147 of the WPDMP server 110). The database 119 communicates, as depicted by an arow 120, with the monitor service 116. The data reception service 114 updates, as depicted by an arrow 115, the monitor service 116 that tracks a status of the patient 101 in real time with reference to patient data stored in the database 119 and a clinical web portal 122. If the monitor service 116 detects features in the WD output data 149’ (ie the computed physiological parameters 232 and the window of raw sensor output data 229) for the patient 101 that indicate poor inhaler technique and / or deterioration in the respiratory status of the patient 101, the monitor service sends an alert signal 160, as depicted by an arrow 117, to the smartphone 105.
[0076] Thus, for example, the monitor service 116 monitors physiological parameters such as the cough parameters 641, the rotation parameters 642, the inclination parameters 643, the respiratory rate parameters 644, and the actigraphy parameters 645. Deviations from typical values are flagged and used to trigger the alert 160 if they remain out of range for more than a pre-defined period of time. For example, the rate of preventer and reliever inhaler use are recorded. If the ratio of reliever to preventer use increases by 50 percent for more than one week, an alert 160 will be generated. An alert signal 162 is also sent, as depicted by an arrow 125, to the clinical staff 124 as depicted by an arrow 125. Significant deviation between prescribed and measured preventer inhaler use may be used to generate the alerts 160 and 162.
[0077] The computed physiological parameters 232 and the window of the raw accelerometer output data 229 are also provided, as depicted by an arrow 121, to the web portal 122. The web portal 122 is used by the clinical staff 124, as depicted by an arrow 123, to monitor all patients such as the patient 101 who are wearing wearable devices communicating with the WPDMP system and review historical patient records. The portal supports addition of new active patients, new wearable devices, and association between wearable devices and patients. It also supports creation of login credentials for smartphone applications as they are installed on each smartphone (described hereinafter in more detail in relation to Fig. 5).
[0078] A technician computer 132 can interface with the BLE WD 103, as depicted by an arrow 133. A charger 134 can interface with the BLE WD 103, as depicted by an arrow 135. The smartphone 105 can send an alert 161 to a caregiver 107, as depicted by an arrow 106, when the
alert signal 160 is received from the monitor service 116 in the WPDMP server 110. The caregiver 107 can configure the smartphone as depicted by an arrow 108. The smartphone 105 can send an alert 236 to the patient 101, as depicted by an arrow 231 (see Fig. 2), when the alert signal 160 is received from the monitor service 116 in the WPDMP server 110. Typically, the smartphone is with either the caregiver or the patient but not both. When an alert is received from the monitor service, the smartphone displays it to the user (patient or caregiver).
Operation of the WPDMP system using the cellular wearable device
[0079] The operation of the WPDMP system using the cellular WD 112 is typically the same as the operation with the BLE WD 103 apart from the following features. (A) The cellular WD 112 has a cellular modem (for communicating with the cloud server) as well as the Bluetooth Modem 209.
(B) if the WPDMP system is in the Training Mode the smart inhaler 128 communicates its inhaler activation signal 163 by Bluetooth to the cellular WD 112 as depicted by the arrow 130 in Fig. 1A, or to the smartphone 105 if such is included in the cellular WD system (not shown in Fig. 1A). (C) The cellular WD 112 uses the received inhaler activation signal 163 as a raw data trigger signal 142 (not shown) upon receipt of the inhaler activation signal 163 if the WD 112 is in Training mode. Alternately, the cellular WD 112 generates the raw data trigger signal 142 from processing of the raw accelerometer output data 229 if the WD 112 is in Operational mode (D) The Cellular wearable device 112 communicates WD output data 153 (which is analogous to the WD output data 149 that is described above in regard to the BLE WD 103) as depicted by an arrow 113, to the cloud server 110 using a mobile data connection TCP/IP socket over the Internet 152 rather than to the smartphone 105. (E) The patient provides patient motion information (not shown) to the cellular WD 112 as depicted by an arrow 127 in a similar manner to the patient motion information 234 being provided to the WD 103. The patient activates the cellular WD 112 by a button press as depicted by an arrow 111. The patient receives feedback from the cellular WD 112 as depicted by an arrow 136.
[0080] Fig. 2 is a functional block diagram example 200 of the BLE WD 103. The WD 103 has a USB connector 201 for connecting, as depicted by the arrow 135, to the USB charger 134. The USB connecter 201 also enables connection, as depicted by the arrow 133, to the technician computer 132. The USB connector 201 communicates, as depicted by an arrow 213, to a battery management module 203 which controls charging of the battery 202 of the BLE WD 103. The battery management module 203 communicates, as depicted by an arrow 214, with the battery 202. The
battery 202 communicates, as depicted by an arrow 215, a battery charge parameter 233 which indicates the current state of charge of the battery 202, to a battery gauge 204 which measures the battery voltage to estimate the state-of-charge of the battery. The battery management module 203 communicates, as depicted by an arrow 216, with the processor 208. The battery gauge 204 communicates, as depicted by an arrow 217, with the processor 208.
[0081] The BLE WD 103 has a user interface 235 comprising the WD activation button 205 and the indicator device 206. The patient 101 can activate the BLE WD 103, by providing the WD activation signal 154 as depicted by the arrow 102, by pressing the WD activation button 205 which communicates, as depicted by an arrow 218, with the processor 208. The indicator device 206, typically a tri-colour LED, which communicates with the processor 208 as depicted by an arrow 219, provides feedback information 155 to the patient 101, as depicted by an arrow 131. The BLE WD 103 receives the patient motion information 234 from the patient 101 as depicted by an arrow 126.
[0082] The BLE WD 103 includes an input sensor which in one WPDMP arrangement is the 3-axis accelerometer 207, which receives the patient motion information 234 from the patient 101 as depicted by the arrow 126. The accelerometer 207 outputs the raw accelerometer output data 229, as depicted by the arrow 220 to the processor 208.
[0083] The smartphone 105 receives the WD output data 149 from the Bluetooth modem 209 (also referred to as a wearable device communication module 209) in the BLE WD 103 over the Bluetooth network 151 as depicted by the arrow 104. The Bluetooth modem 209 communicates with the processor 208 as depicted by an arrow 222. Upon receiving the inhaler activation signal 141 (if the WPDMP system is in the Training mode) the Smartphone 105 communicates the raw data trigger signal 156 to the Bluetooth modem 209 as depicted by the arrow 140 to thereby direct the BLE WD 103 to send the subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D), as depicted by the arrow 104 in addition to sending the computed physiological parameters 232 . If the WPDMP system is in the Operational mode the BLE WD 103 determines the instant of occurrence 618 of inhaler use from the raw accelerometer output data 229 and generates the raw data trigger signal 156 internally which directs the BLE WD 103 to send the subset 320 of the raw accelerometer output data 229 (see Fig. 3) spanning the window of time 630 (see Fig. 6D), as depicted by the arrow 104 in addition to sending the computed physiological parameters 232.
[0084] The processor 208 communicates, as depicted by an arrow 223, with a digital signal processor 210, which, either alone or together with the processor 208, determines the computed physiological parameters 232 (see Fig. 3). The processor 208 communicates, as depicted by an arrow 224, with the non-volatile memory 211. The processor 208 communicates, as depicted by an arrow 225, with a real-time clock 212. The patient 101 can communicate the summary data request signal 240 to the smartphone 105 as depicted by an arrow 231 in order to start and stop the recording of the computed physiological parameters 232. The patient 101 can also communicate with the smartphone 105 as depicted by an arrow 231 to see the battery percentage charge, receive the alerts 160 and notifications through the app (ie the smartphone WPDMP software application 158).
[0085] Fig. 3 is a flow chart process example 300 depicting operation of the wearable device (the following description is presented in terms of the BLE WD 103 however it applies equally to the cellular WD 112 as described previously in “Operation of the WPDMP system using the cellular wearable device”.
[0086] The process 300 commences with a decision step 301, performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, which determines whether to activate the BLE WD 103. If one of the WD activation signal 154 or the WD activation signal 237 has not been received from the patient 101, then the process 300 follows a NO arrow 302 from the step 301 back to the step 301. If, however, one of the WD activation signal 154 or the WD activation signal 237 has been received from the patient 101, as depicted by a dashed arrow 308, then the process 300 follows a YES arrow 303 from the step 301 to a step 304.
[0087] The step 304 represents the functional operation of the sensor 207. The step 304 receives the patient motion information 234, as depicted by a dashed arrow 309, and processes the patient motion information 234 to thereby output the raw sensor output data 229. The (typically continuous analogue) patient motion information 234 reflects the movement and orientation of the patient’s body within the gravitational field of the earth. In one WPDMP arrangement the sensor 207 is the 3- axis accelerometer referred to in regard to Fig. 2. In this implementation the raw sensor output data 229 is a continuous analogue or high sampling rate data stream, for each of the 3 accelerometer axes, representing the respective acceleration of the accelerometer along those three axes (described hereinafter in more detail with reference to Fig. 6A).
[0088] The process 300 then follows two paths in parallel, an arrow 305 from the step 304 to a step 306, and an arrow 333 from step 304 to a step 324.
[0089] The step 306, performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, determines and stores, as depicted by a dashed arrow 332, from the raw sensor output data 229 received from the step 304, the computed physiological parameters 232. Body position which includes inclination (see 643 in Fig. 6E) and rotation (see 642 in Fig. 6E) is determined by applying low pass filters to the three axes of acceleration and then using trigonometry. Computation for respiratory rate (see 644 in Fig. 6E) starts using band pass filters tuned to about 0.3 Hz followed by state machines that detect peaks and troughs to determine breath cycles. A queue of recent breath cycles is maintained from which breathing rate (see 644 in Fig. 6E) is determined. Cough (see 641 in Fig. 6E) is determined by detecting an impulse on the accelerometer normal to the chest wall followed by a resonance of the chest cavity. Actigraphy (see 645 in Fig. 6E) is determined starting with band pass filters, rectifiers, low pass filters and threshold detection. The step 306 stores the computed physiological parameters 232 in the BLE WD memory 211.
[0090] The process 300 then follows an arrow 307 from the step 306 to a decision step 310. The step 310, performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, determines if the summary data trigger signal 164 has been received. As previously described, while the WPDMP system is in either the Training mode or the Operational Mode the patient 101 can send the summary data request signal 240 to the smartphone 105, as depicted by the arrow 231 (see Fig. 2), in order to direct the processor 145 of the smartphone executing the smartphone WPDMP software application 158 stored in the smartphone memory 144, to send the summary data trigger signal 164, to the processor 208 of the BLE WD 103. If the summary data trigger signal 164 has not been received, then the process 300 follows a NO arrow 327 from the step 310 back to the step 306. If however the summary data trigger signal 164 has been received then the process 300 follows a YES arrow 311 from the step 310 to a step 312.
[0091] The step 312, performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, transmits the computed physiological parameters 232 (which form, at this time, the WD output data 149) as depicted by a dashed arrow 322 to the smartphone
105 (also see the arrow 104 in Fig. IB). The process 300 then follows an arrow 313 from the step 312 back to the step 301.
[0092] As previously described the process 300 follows an arrow 333 from the step 304 to a step 324. The step 324, performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, continuously stores a moving window of the raw sensor output data 229. Typically, the moving window is 5 seconds long, however the window can be shorter or longer if desired. The process 300 then follows an arrow 325 to a step 328. The step 328, performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, determines in the raw data trigger signal 156 has been received. If this is not the case, then the process 300 follows a NO arrow 326 back to the step 324. If, however, the raw data trigger signal 156 has been received, as depicted by a dashed arrow 321, then the process 300 follows a YES arrow 314 from the step 328 to a step 315.
[0093] The step 315, performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software application 157, determines, as depicted by a dashed arrow 323, the subset 320 of the raw accelerometer output data 229 stored by the step 324, which spans the window 630 depicted in Fig. 6D. The raw accelerometer output data 229 during a time-period of about 5 seconds prior to the time instant of occurrence of inhaler use 618 is typically of interest. Accordingly, as previously described the step 324 continuously stores a moving window of about 5 seconds of the raw accelerometer output data 229 in a buffer in the WD memory 211. The moving window may however be of shorter or longer duration if desired. When the time instant of occurrence of inhaler use 618 is detected, the step 315 determines the subset 320 of the raw accelerometer output data 229 which typically comprises (A) the 5 most recent seconds of the presently stored window of the raw accelerometer output data 229 concatenated with (B) the subsequent approximately 25 seconds of the raw accelerometer output data 229. As will be described in more detail with reference to Fig. 6D the subset 320 of the raw accelerometer output data 229 which spans the window 630 depicted in Fig. 6D commences about five seconds prior to the instant of occurrence 618 of inhaler use, this being the window leading interval 629, and continues for 25 seconds thereafter. The subset of raw sensor output data 320 is sent concurrently with the computed physiological parameters 232 to the smartphone 105 (see 149’ in Fig. IB).
[0094] The process 300 then follows an arrow 316 from the step 315 to a step 317. The step 317, performed by the wearable device WPDMP processor 208 executing the BLE WD 103 software
application 157, transmits, as depicted by a dashed arrow 331, the subset 320 of the raw accelerometer output data 229 which spans the window 630 (which forms, at this time, the WD output data 149) to the smartphone 105 (also see the arrow 104 in Fig. IB).
[0095] The process 300 then follows an arrow 318 from the step 317 to the step 301.
[0096] Fig. 4 is a flow chart process example 400 depicting operation of the user smartphone 105 in the system 100 of Fig. IB. The process 400 comprises a number of sub-processes executing in parallel on the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144 of the smartphone.
[0097] A first sub-process 401, performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives from the patient 101, as depicted by a dashed arrow 403, credentials 404 for an account linked to the patient 101 and provides to the patient 101, as depicted by a dashed arrow 405, confirmation 406 that a successful connection has been established. The sub-process 401 then loops, as depicted by an arrow 402, back to the sub-process 401.
[0098] A second sub-process 407, performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives, as depicted by a dashed arrow 409, a status request from the patient 101 and provides to the patient 101, as depicted by a dashed arrow 411, display of the status of the wearable device 103 such as battery level. The sub-process 407 then loops, as depicted by an arrow 408, back to the sub-process 407.
[0099] A third sub-process 413, performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives from the wearable device 103, as depicted a dashed arrow 415, the WD output data 149 and outputs, as depicted by a dashed arrow 416, the WD output data 149' to the server 110. The sub-process 413 then loops, as depicted by an arrow 414, back to the sub-process 413.
[0100] A fourth sub-process 419, performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives, from the BLE WD 103 and/or from the smartphone 105 and/or from the server 110, a loss of connection signal 432 indicating that connection over one or more of the networks 151, 152 has been lost. The sub-process
419 then provides, as depicted by a dashed arrow 421, a loss of connection alert 422, to the smartphone 105 and/or to the server 110. Loss of connection between the smartphone 105 and the wearable 103 and loss of connection between the smartphone 105 and the server 110 are handled differently. Loss of connection between the smartphone 105 and the WD 103 will lead to the smartphone 105 sending the alert 236 to the user 101 as depicted by the arrow 231 (see Fig. 2). However, loss of connection between the smartphone 105 and the server 110 will cause the smartphone WPDMP software application 158 and the smartphone processor 145 to store up to 8 hours of the summary data 232 from the wearable 103. The smartphone 105 will alert the user by sending the alert 236 to the user 101 as depicted by the arrow 231 after a predetermined period of time.
[0101] A fifth sub-process 423, performed by the processor 145 of the smartphone 105, as directed by the software application 158 stored in the memory 144, receives, as depicted by a dashed arrow 425, an alert 160 from the server 110 (also see the arrow 117 in Fig. 2) indicating that one or more physiological parameters from the patient 101 are outside expected bounds and provides, as depicted by a dashed arrow 426, an alert 236 to the patient 101 as depicted by the arrow 231 in Fig. 2. The sub-process 423 then loops, as depicted by an arrow 424, back to the sub-process 423.
[0102] A sixth sub-process 427, performed by the processor 145 of the smartphone 105 as directed by the software application 158 stored in the memory 144, receives, only if the WPDMP system is in the Training mode, as depicted by a dashed arrow 429, the inhaler activation signal 141 from the smart inhaler 128 and provides, as depicted by a dashed arrow 430, the raw data trigger signal 156 to the BLE WD 103 as depicted by the arrow 140 in Fig. 2. The sub-process 427 then loops, as depicted by an arrow 428, back to the sub-process 427.
[0103] Fig. 5 is a flow chart process example 500 depicting operation of the server monitor service and alarm generator in the system of Fig. IB. The process 500 comprises a number of sub-processes executing in parallel on the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147 of the server.
[0104] A first sub-process 501, performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives from wearable devices such as the WD 103 which are operating and transmitting WD output data 149, as depicted by a dashed arrow 503, parameters characterising the wearable devices (such as the serial number or the MAC address).
The sub-process 501 can provide a list of wearable devices which are operating and transmitting WD output data 149, and their parameter information, to a system administrator (not shown) upon request. The sub-process 501 then loops, as depicted by an arrow 502, back to the sub-process 501.
[0105] A second sub-process 505, performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives from the smartphone 105, as depicted by a dashed arrow 507, the WD output data 149’. The WD output data 149’ comprises the computed physiological parameters 232 (see Table 1) while the patient is not presently using an inhaler, and alternately comprises the computed physiological parameters 232 as well as the raw accelerometer output data 229 (see Fig. 6D) during the window of time 630 (see Fig. 6D) straddling a time instant 618 that the patient uses an inhaler.
[0106] The sub-process 505 applies a set of rules to the WD output data 149’ to identify, as depicted by a dashed arrow 508, trends 509 in various physiological parameters such as body movement, orientation, sound components, and so on. The sub-process 505 outputs to a step 517, as depicted by a dashed arrow 516, the physiological trend information 509. The sub-process 505 then loops, as depicted by an arrow 506, back to the sub-process 505.
[0107] A third sub-process 510, performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives from the smartphone 105, as depicted by a dashed arrow 512, the WD output data 149’. The sub-process 510 applies a set of rules (see the monitoring and alert example described above in relation to the sub-process 505) to the WD output data 149’to identify, as depicted by a dashed arrow 513, information and trends 514 characterising the inhaler use (see the monitoring and alert example described above in relation to the sub-process 505). The sub-process 510 outputs to the step 517, as depicted by a dashed arrow 515, the inhaler use information 514. The sub-process 510 then loops, as depicted by an arrow 511, back to the subprocess 510.
[0108] The fourth sub-process 517, performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives the physiological trend information 509, the inhaler-use trends and information 514, and expected value and threshold information 518 including a respiratory baseline as depicted by respective dashed arrows 516, 515 and 519. The step 517 determines variances (527) between the physiological trend information 509, the inhaler-use information 514 and the expected value information 518.
[0109] The step 517 then follows an arrow 520 to a determination step 521. The step 521, performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, determines if the variances determined by the step 517 exceed corresponding pre-determined thresholds 526 (for pre-determined time intervals), and if this is the case the step 521 follows a YES arrow to a step 523.
[0110] The step 523, performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, sends the alert 160 (see Fig. IB) as depicted by a dashed arrow 524. Returning to the decision step 521 if the variances determined by the step 517 do not exceed the corresponding pre-determined thresholds 526 then the step 521 follows a NO arrow 525 back to the step 517.
[0111] In one illustrative example, a trend in respiration rate is that the respiration rate for the patient has increased by an average of 1.5 breaths per minute per hour for the past three hours from a resting rate of 14 breaths per minute and has remained at an elevated rate for the past two hours. The pre-determined threshold for increasing respiration rate is 1 breath per minute per hour and the final elevated rate time threshold is one hour. In this example the respiration rate component of the physiological parameter trend information 509 is 1.5 breaths per minute per hour, the expected value of respiration rate is 14 breaths per minute, the threshold for increasing respiration rate is 1 breath per minute per hour and the time threshold is one hour. Accordingly, the step 517 when checking the trend information against the expected trend values and thresholds determines that the respiration rate for the patient 101 exceeds the pre-determined threshold by 0.5 breaths per minute per hour and the threshold has been exceeded for two hours noting that the final elevated rate time threshold is one hour. The following step 521 decides that since the threshold has been exceeded, the alert 160 is to be sent by the step 523. In another example, the step 517 monitors the rate of preventer and reliever inhaler use. If the ratio of reliever to preventer use increases by 50 percent for more than one week, an alert 160 will be generated. The time scales over which monitoring can be performed can extend from a few hours to a few days or more. For example, three restless nights in a row interspersed with lack of activity during the day may indicate that exacerbation is imminent.
[0112] A fifth sub-process 528, performed by the processor 146 of the server 110, as directed by a software application 159 stored in the memory 147, receives the WD output data 149’, as depicted by a dashed arrow 532, and determines inhaler technique parameters 531 (described hereinafter in
more detail with reference to Fig. 6C), as depicted by a dashed arrow 530. The process 528 then loops back from the step 528 to the step 528 as depicted by an arrow 529. The inhaling technique parameters 531 can include depth of inhalation 619, duration of holding breath 620, slope of inhalation 622, and duration of sigh breath post inhaler use 621.
[0113] Fig. 6A is an example 610 of 3-axis raw accelerometer output data 229 for a one-hour period during which the wearer of the wearable device is sleeping, where sleep commences after approximately the 25th minute. The example 610 shows three channels an x-channel 611, a y- channel 612, and a z-channel 613, one channel for each of the axes of the 3-axis accelerometer 207. The channels are set against a vertical amplitude axis 615 and a horizontal time axis 616. A dashed rectangle 614 depicts a disturbance in the z-channel 613 resulting from a change in the body position of the patient 101 (described hereinafter in more detail with reference to Fig. 6B).
[0114] Fig. 6B shows a magnified representation of the dashed rectangle 614 of Fig. 6A. A highlighted data region 633 depicts the raw accelerometer output data 229 on the Z channel during the one hour of sleep depicted in Fig. 6A zoomed in around 45 minutes while the patient 101 is changing body position.
[0115] Fig. 6C depicts a single channel of the 3-axis raw accelerometer output data 229 when an inhaler is used. The raw accelerometer output data 229 is set against a vertical amplitude axis 623 and a horizontal time axis 624. The raw accelerometer output data 229 has a relatively flat shape with ripples during a time period 628, referred to as a non-inhaler rhythm or a pre-inhaler effect time, prior to a time instant of occurrence 618 that the patient uses one of the inhalers. The raw accelerometer output data 229 then firstly dips and then rises to a height 619 indicative of a depth of inhalation. The rise has a gradient 622 indicative of a slope of inhalation 622.
[0116] The raw accelerometer output data 229 rises to a peak having a width 620 indicative of a time period duration during which the patient 101 holds his breath. The raw accelerometer output data 229 then drops to an intermediate level having a duration 621 indicative of a duration of sigh breath post inhaler use. The raw accelerometer output data 229 then drops again down to a level comparative to that which it had prior to the time instant of occurrence 618. The raw accelerometer output data 229 exhibits a shape referred to as the inhaler effect shape during a time duration 626 which extends from the time instant of occurrence 618 to the time of reversion 625 to non-inhaler rhythm. The raw accelerometer output data 229 then assumes a relatively flat shape with ripples during a time period 627 (a post-inhaler effect time) after a time instant 625 at which the raw accelerometer output data 229 reverts to the non-inhaler rhythm.
[0117] Fig. 6D depicts, as indicated by a reference numeral 617, the window of time 630 during which high data rate raw accelerometer output data 229 is provided together with the low data rate computed physiological parameters 232 in the WD output data 149 output by the BLE WD 103. The window of time 630 is equal to the duration of the inhaler effect 626 plus a window leading interval 629 plus a window trailing interval 631 (as described in more detail with reference to Fig. 3).
[0118] Fig. 6E depicts an example 640 of the low sampling rate computed physiological parameters 232. The computed physiological parameters 232 traces are set against a left-hand vertical Body Position axis (in units of “degrees”), a right-hand vertical Respiratory Rate axis (in units of “Breaths-per-minute”) and a horizontal time axis 649. Five channels are shown namely cough 641, rotation 642, inclination 643, respiratory rate 644 and actigraphy 645. The set of 5 raw computed physiological parameter data points is shown by a vertical dashed line 646 intersecting the five channels. The computed physiological parameters 232 in the present example comprises sets of 5 parameter values however this can comprise fewer or more parameter values. Table 1 shows a list of such sets of the 5 parameter values. Parameter set numbers 123 to 126 are highlighted in yellow, these parameter sets corresponding to the highlighted data region 633 in Fig. 6B.
[0119] Figs. 7A and 7B depict an example software architecture (see reference numerals 700 and 750) of the BLE wearable device. Figs. 7A and 7B depict the major software blocks of the embedded wearable device WPDMP software application 157 of the wearable device. Arrows show both data flow and execution flow between blocks. Di agonal -hatched blocks (see 742 in Fig. 7A and 775 in Fig. 7B) show data and code for storage and processing of raw accelerometer output data 229. Cross-hatched blocks (see 743 in Fig. 7A and 776 in Fig. 7B) show components of the Bluetooth communication system. White blocks (blocks other than see 742 in Fig. 7A and 775 in Fig. 7B and 743 in Fig. 7A and 776 in Fig. 7B) compose the remaining parts of the system.
[0120] On power up, the embedded wearable device WPDMP software application 157 initialises and checks hardware 709. If serious problems are detected the system is halted, the indicator 206 flashes red briefly then the system returns to the power off state. If serious problems are not detected then background processes are started by initialising global structures, enabling counters and interrupt handlers. After initialisation, executing enters the main loop 711 (see 303 in Fig. 3) which waits for events and responds as necessary. Most tasks run on hardware (such as the digital signal processor 210) separate to that of the main processor (ie 208) and periodically notify the main processor by flags or interrupts.
[0121] The accelerometer 207 is configured to sample at a fixed rate and flags the processor 208 each time a sample set is available with a logic line 767. This line triggers an interrupt 768 which starts a background transfer to a double buffer 760 (which is a sub-set of the memory 211). When one buffer is full, the handler 769 sets a flag 764 and targets the other buffer to receive data. The main loop 711 polls flags 764 and responds to an available buffer of accelerometer data by dispatching the accelerometer processor block 713. This block applies frequency selective filters 722, 724, 726 to the raw accelerometer output data 229 which is subsequently fed into state machines 728, 730, 732 to compute a set of physiological parameters 736 (also see 232 in Fig. 2) which are stored in a set. This computation stream is always active while the device is powered (see process steps 304, 306, 310, and 312 in Fig. 3).
[0122] The Bluetooth subsystem, shown in Cross-hatched format (see 743 in Fig. 7A and 776 in Fig. 7B), is partially implemented in the separate radio processor 239 (see Fig. 2) and within interrupt function on the main processor 208. Data is transferred between the two processors 208, 210 with a dedicated hardware link 752. When a client connects with the device and requests services, the Bluetooth stack 751 executes callback functions in the main code. If summary data 232 is requested, the main loop sets a timer (utilising the real time clock 212 in Fig. 2) for a period of one second. An interrupt handler 717 in the main loop responds to that timer and forward the latest summary 736 to the Bluetooth stack 751 which is transmitted in the background the by subsystem 752, 753, 754, 755. Similarly, a request for raw accelerometer data 229 is handled by a separate handler 715 which forwards raw data 739 (see 229 in Fig.2) to the Bluetooth subsystem.
[0123] USB requests from a host computer through the USB interface 770 are handled through a message handler 772 which accesses state variables 764 and other global data structures 774 as needed.
[0124] Fig. 8A illustrates how a wearable device can be attached to a user in the WPDMP system. A partial image of the patient 101 is shown, with the BLE WD 103 attached to the upper left-hand chest area 806 of the patient.
[0125] Fig. 8B illustrates the smart inhaler 137 that can be used in the WPDMP system. The smart inhaler comprises a body 806 housing a cartridge 803 containing the medication (not shown), a communication and control module 802, and a closure cap 804 which is removed when the patient
101 activates the inhaler (by applying pressure in a direction shown by an arrow 801) and then replaced in order to cover the aperture through which the medication is output in a direction depicted by an arrow 805. The communication and control module 802 transmits the smart inhaler activation signal 141 when the patient 101 uses the inhaler 137 by applying pressure in the direction shown by the arrow 801.
[0126] Figs. 9A and 9B collectively form a schematic block diagram representation of a general- purpose electronic device, multiple instantiations of which can be used to implement various components in a WPDMP system. Fig. 9A depicts the computing device 901 and its environment, and Fig. 9B depicts the embedded controller 902 in the electronic computing device 901.
[0127] Although the description below is largely directed to the computing device 901 and its environment in regard to Fig. 9A, and the embedded controller 902 in the electronic computing device 901 in regard to Fig. 9B, it should be understood that the description applies mutatis mutandis to the instantiations of the electronic device 901 or various modules therein used to implement the smart inhalers 137, 128, the wearable devices 103, 112, the smartphone 105 and the server 110.
[0128] As seen in Fig. 9A, the electronic device 901 comprises an embedded controller 902. Therefore, the electronic device 901 may be referred to as an “embedded device.” In the depicted example, the embedded controller 902 has a processing unit (or processor) 905 which communicates in a bi-directional manner with an internal storage block 909 (described hereinafter in more detail in regard to Fig. 9B). The storage block 909 can be implemented with non-volatile semiconductor read only memory (ROM) 960 and semiconductor random access memory (RAM) 970 (see Fig. 9B). The RAM 970 may be volatile, non-volatile or a combination of volatile and non-volatile memory modules.
[0129] The electronic device 901 includes a display controller 907 that communicates with a display 918, which may be a liquid crystal display (LCD) panel or the like. The display controller 907 can display text and/or graphical images on the display 918 as directed by instructions received from the embedded controller 902, with which the display controller 907 communicates.
[0130] The electronic device 901 also includes a user interface I/O module 913 which communicates with user input devices such as the manual control button 205. In some
implementations, the user interface I/O module 913 may include a touch sensitive panel physically associated with the display 918 to collectively form a graphical user interface (GUI) touch-screen for receiving inputs and providing outputs to the user. Alternately, a prompt or menu driven GUI can be used with keypad-display combinations. Other forms of user input devices may also be used, such as a microphone (not illustrated) for voice commands or a joystick/thumb wheel (not illustrated) for ease of navigation about menus.
[0131] As seen in the example in Fig. 9A, the electronic device 901 has a memory interface module 906, which communicates with the processor 905 as depicted by an arrow 919. The memory interface 906 can communicate with a compatible portable memory device 925 which can act as a source or destination of data or to supplement the internal storage device 909. The interface 906 can communicate, for example, with portable memory devices such as Universal Serial Bus (USB) memory devices, Secure Digital (SD) cards, Personal Computer Memory Card International Association (PCMIA) cards, optical disks and magnetic disks.
[0132] The electronic device 901 has a communications interface 908 to permit the device 901 to communicate with “remote” system components such as the Bluetooth modem 209 or to a computer or communications network (not shown) as depicted by an arrow 983.
[0133] The WPDMP apparatus and/or methods described above may be implemented using multiple instantiations of the electronic device 901 or various modules therein, where the processes of Figs. 3, 4, and 5 may be implemented as one or more interoperable software application programs such as but not limited to 157, 158, 159, that can be executed by respective processors 208, 145 and 146.
[0134] With reference to Fig. 9B it is clearly understood that the steps of the described WPDMP methods are carried out by instructions (such as 962 in Fig. 9B) in the software applications 933 that are performed by the embedded controller 902. The software instructions (such as 962) may be formed as one or more software code routines, each routine performing one or more specified tasks. Each of the one or more interoperable software applications 933 may also be partitioned into two separate functional parts, in which a first part and the corresponding code modules perform the described WPDMP methods, and a second part and the corresponding code modules manage a user interface between the first part and the user.
[0135] The software 933 of the embedded controller 902 is typically stored in the non-volatile ROM 960 of the internal storage block 909. The software application 933 that is stored in the ROM 960 can be updated when required from a computer readable medium such as the portable storage medium 925. The software application 933 can be loaded into and executed by the processor 905. In some instances, the processor 905 may execute software instructions that are located in the RAM 970. Software instructions may be loaded into the RAM 970 by the processor 905 creating a copy of one or more code modules from the ROM 960 for copying into the RAM 970. Alternatively, the software instructions of one or more code modules may be pre-installed in a non-volatile region of the RAM 970 by a manufacturer. After one or more code modules have been discovered in the RAM 970, the processor 905 may execute software instructions of the one or more code modules. [0136] In one WPDMP arrangement, the software application program 933 is pre-installed and stored in the ROM 960 by a manufacturer, prior to distribution of the electronic device 901. However, in other instances, the software application programs 933 may be supplied to the user encoded on one or more computer readable storage media (such as 925) and read via the memory interface 906 of Fig. 9A prior to storage in the internal storage block 909 or alternately in the portable memory 925.
[0136] The term “computer readable storage media” refers to any non-transitory tangible storage medium that participates in providing instructions and/or data to the embedded controller 902 for execution and/or processing. Examples of such computer readable storage media include magnetic tape, CD-ROM devices, a hard disk drive, a ROM or integrated circuit, a USB memory device, a magneto-optical disk, a flash memory device, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the device 901. A computer readable medium having such software or computer program recorded on it is referred to as a computer program product.
[0137] The second part of the software application programs 933 and the corresponding code modules mentioned above may be executed to implement one or more graphical user interfaces (GUIs) to be rendered or otherwise represented upon the display 918 of Fig. 9A. Through manipulation of the user input devices such as the control button 205 which communicates with the user interface module 913, a user of the device 901 and the application programs 933 may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s). Other forms of functionally adaptable user
interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers (not illustrated) and user voice commands input via a microphone (not illustrated).
[0138] Fig. 9B depicts an example functional block diagram of the embedded controller 902 including the processor 905 for executing the software application programs 933 and the internal storage block 909. The internal storage 909 block includes a read only memory (ROM) module 960 and a random-access memory (RAM) module 970. The processor 905 can execute the software application programs 933 which are stored in one or both of the inter-connected memories 960 and 970. When the electronic device 901 is initially powered up, a system program (not shown) that is permanently stored in the ROM 960 is executed. The system program that is permanently stored in the ROM 960 is sometimes referred to as “firmware”. Execution of the firmware by the processor 905 may fulfil various functions, including processor management, memory management, device management, storage management and user interface.
[0139] The processor 905 typically includes a number of functional modules including a control unit (CU) 951, an arithmetic logic unit (ALU) 952, a digital signal processor (DSP) 953 and a local or internal memory comprising a set of registers 954, 956, 957, as well as internal buffer or cache memory 955. One or more internal buses 959 enable communication between these functional modules. The processor 905 typically also has one or more interfaces 958 for communicating with external devices via a system bus 981, as depicted by a line 961.
[0140] The software application program 933 includes a sequence of instructions 962 through 963 that typically include conditional branch and loop instructions. The software program 933 can also include data, which is used in execution of the software program 933. This data may be stored as part of the instructions (962, . . ., 963) or in a separate location 964 within the ROM module 960 or the RAM module 970.
[0141] The processor 905 is typically provided with the set of instructions (962, . .., 963), for execution. This set of instructions may be organised into routines, each of which may perform a specific task or handle specific events that occur in the electronic device 901. Typically, the software application program 933 waits for events and upon their occurrence executes the block of code (routine) associated with that event. Events may be triggered in response to input from a user, via the user input devices such as 205 of Fig. 9A, as detected by the processor 905. Events may also be triggered in response to other sensors and interfaces in the electronic device 901.
[0142] The execution of a software application comprising a set of the instructions typically requires variables to be read and modified in the course of the execution. Such variables are typically stored in the RAM module 970. The disclosed WPDMP method uses input variables 971 that are stored in memory locations 972, 973 in the RAM module 970. The input variables 971 are processed to produce output variables 977 that are stored in memory locations 978, 979 in the memory RAM module 970. The aforementioned processing may produce intermediate variables 974 which may be stored in additional memory locations in locations 975, 976 of the memory RAM module 970. Alternatively, some intermediate variables may only exist in the registers 954, 956, 957 of the processor 905.
[0143] The execution of a software program comprising a sequence of instructions is achieved by the processor 905 carrying out a repeated application of a fetch-execute cycle. The control unit 951 of the processor 905 maintains a register called the program counter, which contains the address in the ROM module 960 or the RAM module 970 of the next instruction to be executed. At the start of the fetch execute cycle, the contents of the memory address indexed by the program counter is loaded into the control unit 951. The instruction thus loaded controls the subsequent operation of the processor 905, causing for example, data to be loaded from the ROM memory module 960 into the processor registers 954, the contents of a register to be arithmetically combined with the contents of another register, the contents of a register to be written to the location stored in another register and so on. At the end of the fetch execute cycle the program counter is updated to point to the next instruction in the system program code. Depending on the instruction just executed this may involve incrementing the address contained in the program counter or loading the program counter with a new address in order to achieve a branch operation.
[0144] Each step or sub-process in the processes of the methods described below is associated with one or more segments of the application program 933 and is performed by repeated execution of a fetch-execute cycle in the processor 905 or similar programmatic operation of other independent processor blocks in the electronic device 901.
[0145] The foregoing describes only some embodiments of the present invention, and modifications and/or changes can be made thereto without departing from the invention, the embodiments being illustrative only.
[0146] In the context of this specification, the word "comprising" means "including principally but not necessarily solely" or "having" or "including", and not "consisting only of. Variations of the word "comprising", such as "comprise" and "comprises" have correspondingly varied meanings.
Table 1
Summary Summary parameters time time [minutes] parameter [seconds] set No.
1 115 act= 7 rr=10.6 cough= 0 2657 44.28
2 115 act= 11 rr=10.5 cough= 0 2658 44.30
3 115 act= 2 rr=10.5 cough= 0 2659 44.32
4 115 act= 4 rr=10.6 cough= 0 2660 44.33
5 115 act= 1 rr=10.6 cough= 0 2661 44.35
5 115 act= 2 rr=10.6 cough= 0 2662 44.37
7 115 act= 1 rr=10.7 cough= 0 2663 44.38
8 115 act= 3 rr=10.7 cough= 0 2664 44.40
9 115 act= 1 rr=10.7 cough= 0 2665 44.42
10 115 act= 4 rr=10.7 cough= 0 2666 44.43
11 115 act= 2 rr=10.5 cough= 0 2667 44.45
12 115 act= 3 rr=10.5 cough= 0 2668 44.47
13 114 act= 1 rr=10.5 cough= 0 2669 44.48
14 115 act= 1 rr=10.3 cough= 0 2670 44.50
15 115 act= 2 rr=10.3 cough= 0 2671 44.52
16 115 act= 1 rr=10.3 cough= 0 2672 44.53
17 115 act= 4 rr=10.3 cough= 0 2673 44.55
18 115 act= 5 rr=10.0 cough= 0 2674 44.57
19 115 act= 6 rr=10.0 cough= 0 2675 44.58
20 115 act= 3 rr=10.0 cough= 0 2676 44.60
21 115 act= 3 rr=10.2 cough= 0 2677 44.62
22 115 act= 3 rr=10.2 cough= 0 2678 44.63
23 115 act= 3 rr=10.0 cough= 0 2679 44.65
24 115 act= 5 rr=10.0 cough= 0 2680 44.67
25 115 act= 6 rr=10.3 cough= 0 2681 44.68
26 115 act= 6 rr=10.3 cough= 0 2682 44.70 1 115 act= 1 rr=10.2 cough= 0 2683 44.72
28 115 act= 3 rr=10.2 cough= 0 2684 44.73
29 115 act= 3 rr=10.2 cough= 0 2685 44.75
30 115 act= 2 rr=10.2 cough= 0 2686 44.77
31 115 act= 6 rr=10.2 cough= 0 2687 44.78
32 115 act= 4 rr=10.1 cough= 0 2688 44.80
33 115 act= 9 rr=10.1 cough= 0 2689 44.82
34 115 act= 2 rr=10.1 cough= 0 2690 44.83
35 115 act= 5 rr=10.1 cough= 0 2691 44.85
36 115 act= 1 rr=10.2 cough= 0 2692 44.87
37 114 act= 2 rr=10.2 cough= 0 2693 44.88
38 114 act= 2 rr=11.3 cough= 0 2694 44.90
39 114 act= 5 rr=11.3 cough= 0 2695 44.92
40 115 act= 5 rr=11.3 cough= 0 2696 44.93
41
115 act= 2 rr=11.3 cough= 0 2697 44.95
time=2698 inc= 63 rot=-115 act= 2 rr=ll.l cough= 0 2698 44.97 time=2699 inc= 63 rot=-115 act= 3 rr=ll.l cough= 0 2699 44.98 time=2700 inc= 63 rot=-115 act= 3 rr=11.0 cough= 0 2700 45.00 time=2701 inc= 63 rot=-115 act= 4 rr=11.0 cough= 0 2701 45.02 time=2702 inc= 63 rot=-115 act= 5 rr=11.0 cough= 0 2702 45.03 time=2703 inc= 63 rot=-115 act= 2 rr=ll.l cough= 0 2703 45.05 time=2704 inc= 63 rot=-115 act= 6 rr=11.2 cough= 0 2704 45.07 time=2705 inc= 63 rot=-115 act= 4 rr=11.2 cough= 0 2705 45.08 time=2706 inc= 63 rot=-115 act= 4 rr=11.2 cough= 0 2706 45.10 time=2707 inc= 63 rot=-115 act= 2 rr=11.2 cough= 0 2707 45.12 time=2708 inc= 63 rot=-115 act= 2 rr=11.2 cough= 0 2708 45.13 time=2709 inc= 63 rot=-115 act= 5 rr=ll.l cough= 0 2709 45.15 time=2710 inc= 63 rot=-115 act= 5 rr=11.0 cough= 0 2710 45.17 time=2711 inc= 63 rot=-115 act= 3 rr=11.0 cough= 0 2711 45.18 time=2712 inc= 63 rot=-115 act= 2 rr=11.0 cough= 0 2712 45.20 time=2713 inc= 63 rot=-115 act= 3 rr=11.2 cough= 0 2713 45.22 time=2714 inc= 63 rot=-115 act= 6 rr=11.2 cough= 0 2714 45.23 time=2715 inc= 62 rot=-114 act= 3 rr=11.2 cough= 0 2715 45.25 time=2716 inc= 63 rot=-115 act= 8 rr=11.2 cough= 0 2716 45.27 time=2717 inc= 63 rot=-115 act= 3 rr=11.2 cough= 0 2717 45.28 time=2718 inc= 63 rot=-115 act= 4 rr=11.3 cough= 0 2718 45.30 time=2719 inc= 63 rot=-115 act= 4 rr=11.3 cough= 0 2719 45.32 time=2720 inc= 63 rot=-115 act= 2 rr=11.6 cough= 0 2720 45.33 time=2721 inc= 63 rot=-115 act= 0 rr=11.6 cough= 0 2721 45.35 time=2722 inc= 63 rot=-115 act= 4 rr=11.6 cough= 0 2722 45.37 time=2723 inc= 63 rot=-115 act= 4 rr=11.6 cough= 0 2723 45.38 time=2724 inc= 63 rot=-115 act= 6 rr=11.4 cough= 0 2724 45.40 time=2725 inc= 63 rot=-115 act= 1 rr=11.4 cough= 0 2725 45.42 time=2726 inc= 63 rot=-115 act= 5 rr=11.4 cough= 0 2726 45.43 time=2727 inc= 63 rot=-115 act= 5 rr=11.6 cough= 0 1 1 45.45 time=2728 inc= 63 rot=-115 act= 3 rr=11.6 cough= 0 2728 45.47 time=2729 inc= 63 rot=-115 act= 3 rr=11.6 cough= 0 2729 45.48 time=2730 inc= 62 rot=-114 act= 5 rr=11.6 cough= 0 2730 45.50 time=2731 inc= 63 rot=-114 act= 5 rr=11.6 cough= 0 2731 45.52 time=2732 inc= 63 rot=-115 act= 2 rr=11.6 cough= 0 2732 45.53 time=2733 inc= 63 rot=-115 act= 2 rr=11.7 cough= 0 2733 45.55 time=2734 inc= 63 rot=-115 act= 25 rr=11.7 cough= 0 2734 45.57 time=2735 inc= 63 rot=-114 act= 8 rr=11.7 cough= 0 2735 45.58 time=2736 inc= 63 rot=-114 act= 5 rr=11.7 cough= 0 2736 45.60 time=2737 inc= 63 rot=-114 act= 3 rr=11.5 cough= 0 2737 45.62 time=2738 inc= 63 rot=-114 act= 3 rr=11.5 cough= 0 2738 45.63 time=2739 inc= 63 rot=-114 act= 3 rr=11.5 cough= 0 2739 45.65 time=2740 inc= 64 rot=-115 act= 13 rr=11.5 cough= 0 2740 45.67 time=2741 inc= 65 rot=-lll act= 203 rr=ll.l cough= 0 2741 45.68 time=2742 inc= 65 rot=-109 act= 7 rr=ll.l cough= 0 2742 45.70 time=2743 inc= 64 rot=-109 act= 4 rr=ll.l cough= 0 2743 45.72 time=2744 inc= 64 rot=-108 act= 22 rr=ll.l cough= 0 2744 45.73
time=2745 inc= 73 rot=-116 act= 53 rr=11.4 cough= 0 2745 45.75 time=2746 inc= 72 rot=-114 act= 18 rr=11.4 cough= 0 2746 45.77 time=2747 inc= 71 rot=-112 act= 3 rr=11.4 cough= 0 2747 45.78 time=2748 inc= 71 rot=-112 act= 2 rr=11.3 cough= 0 2748 45.80 time=2749 inc= 72 rot=-113 act= 5 rr=11.3 cough= 0 2749 45.82 time=2750 inc= 72 rot=-114 act= 21 rr=11.3 cough= 0 2750 45.83 time=2751 inc= 77 rot=-130 act= 38 rr=ll.l cough= 0 2751 45.85 time=2752 inc= 73 rot=-119 act= 44 rr=11.2 cough= 0 2752 45.87 time=2753 inc= 72 rot=-117 act= 23 rr=11.2 cough= 0 2753 45.88 time=2754 inc= 69 rot=-113 act= 31 rr=11.3 cough= 0 2754 45.90 time=2755 inc= 69 rot=-110 act= 5 rr=11.3 cough= 0 2755 45.92 time=2756 inc= 69 rot=-109 act= 2 rr=11.3 cough= 0 2756 45.93 time=2757 inc= 69 rot=-110 act= 3 rr=11.3 cough= 0 U ! 45.95 time=2758 inc= 69 rot=-110 act= 4 rr=10.8 cough= 0 2758 45.97 time=2759 inc= 69 rot=-109 act= 4 rr=10.8 cough= 0 2759 45.98 time=2760 inc= 68 rot=-108 act= 3 rr=10.8 cough= 0 2760 46.00 time=2761 inc= 68 rot=-108 act= 6 rr=10.8 cough= 0 2761 46.02 time=2762 inc= 69 rot=-109 act= 5 rr=10.8 cough= 0 2762 46.03 time=2763 inc= 69 rot=-110 act= 7 rr=10.9 cough= 0 2763 46.05 time=2764 inc= 69 rot=-109 act= 6 rr=10.9 cough= 0 2764 46.07 time=2765 inc= 74 rot=-120 act= 45 rr=10.7 cough= 0 2765 46.08 time=2766 inc= 69 rot=-153 act= 62 rr=11.5 cough= 0 2766 46.10 time=2767 inc= 63 rot=-121 act= 61 rr=11.5 cough= 0 2767 46.12 time=2768 inc= 62 rot=-120 act= 22 rr=11.5 cough= 0 2768 46.13 time=2769 inc= 62 rot=-119 act= 4 rr=11.4 cough= 0 2769 46.15 time=2770 inc= 62 rot=-118 act= 5 rr=11.4 cough= 0 F1 > 46.17 time=2771 inc= 61 rot=-117 act= 4 rr=11.4 cough= 0 2771 46.18 time=2772 inc= 61 rot=-117 act= 5 rr=11.4 cough= 0 2772 46.20 time=2773 inc= 61 rot=-118 act= 2 rr=11.3 cough= 0 2773 46.22 time=2774 inc= 61 rot=-118 act= 2 rr=11.3 cough= 0 2774 46.23 time=2775 inc= 61 rot=-117 act= 6 rr=11.3 cough= 0 2775 46.25 time=2776 inc= 61 rot=-116 act= 5 rr=11.3 cough= 0 2776 46.27 time=2777 inc= 61 rot=-117 act= 17 rr=11.3 cough= 0 2777 46.28 time=2778 inc= 63 rot=-122 act= 76 rr=11.5 cough= 0 2778 46.30 time=2779 inc= 68 rot=-157 act= 39 rr=10.8 cough= 0 T1 46.32 time=2780 inc= 79 rot= 148 act= 82 rr=11.7 cough= 0 2780 46.33 time=2781 inc= 70 rot=-150 act= 391 rr=12.6 cough= 0 2781 46.35 time=2782 inc= 67 rot=-139 act= 21 rr=12.6 cough= 0 2782 46.37 time=2783 inc= 67 rot=-138 act= 4 rr=12.6 cough= 0 2783 46.38 time=2784 inc= 68 rot=-137 act= 24 rr=12.6 cough= 0 2784 46.40 time=2785 inc= 67 rot=-135 act= 1 rr=12.6 cough= 0 2785 46.42 time=2786 inc= 67 rot=-135 act= 8 rr=12.5 cough= 0 2786 46.43 time=2787 inc= 67 rot=-134 act= 6 rr=12.5 cough= 0 2787 46.45 time=2788 inc= 67 rot=-133 act= 8 rr=12.5 cough= 0 2788 46.47 time=2789 inc= 67 rot=-131 act= 4 rr=12.4 cough= 0 2789 46.48 time=2790 inc= 67 rot=-132 act= 5 rr=12.4 cough= 0 2790 46.50 time=2791 inc= 67 rot=-132 act= 5 rr=12.4 cough= 0 2791 46.52
time=2792 inc= 67 rot=-132 act= 6 rr=12.4 cough= 0 2792 46.53 time=2793 inc= 67 rot=-132 act= 7 rr=12.7 cough= 0 2793 46.55 time=2794 inc= 66 rot=-131 act= 5 rr=13.2 cough= 0 2794 46.57 time=2795 inc= 66 rot=-130 act= 3 rr=13.2 cough= 0 2795 46.58 time=2796 inc= 67 rot=-131 act= 6 rr=13.2 cough= 0 2796 46.60 time=2797 inc= 67 rot=-131 act= 3 rr=13.2 cough= 0 l°n 46.62 time=2798 inc= 66 rot=-131 act= 2 rr=13.2 cough= 0 2798 46.63 time=2799 inc= 66 rot=-131 act= 7 rr=11.3 cough= 0 2799 46.65 time=2800 inc= 66 rot=-131 act= 2 rr=11.3 cough= 0 2800 46.67 time=2801 inc= 66 rot=-130 act= 2 rr=11.0 cough= 0 2801 46.68 time=2802 inc= 66 rot=-130 act= 2 rr=11.0 cough= 0 2802 46.70 time=2803 inc= 66 rot=-131 act= 2 rr=11.0 cough= 0 2803 46.72 time=2804 inc= 66 rot=-131 act= 6 rr=11.0 cough= 0 2804 46.73 time=2805 inc= 66 rot=-130 act= 4 rr=11.2 cough= 0 2805 46.75 time=2806 inc= 66 rot=-130 act= 4 rr=11.2 cough= 0 2806 46.77 time=2807 inc= 66 rot=-130 act= 2 rr=11.2 cough= 0 2807 46.78 time=2808 inc= 66 rot=-130 act= 1 rr=11.2 cough= 0 2808 46.80 time=2809 inc= 66 rot=-130 act= 3 rr=11.2 cough= 0 2809 46.82 time=2810 inc= 66 rot=-130 act= 3 rr=11.2 cough= 0 2810 46.83 time=2811 inc= 66 rot=-130 act= 1 rr=10.6 cough= 0 2811 46.85 time=2812 inc= 66 rot=-130 act= 1 rr=10.6 cough= 0 2812 46.87 time=2813 inc= 66 rot=-130 act= 8 rr=10.6 cough= 0 2813 46.88 time=2814 inc= 66 rot=-131 act= 3 rr=10.2 cough= 0 2814 46.90 time=2815 inc= 66 rot=-131 act= 8 rr=10.2 cough= 0 2815 46.92 time=2816 inc= 66 rot=-131 act= 5 rr=10.2 cough= 0 2816 46.93 time=2817 inc= 66 rot=-130 act= 5 rr=9.2 cough= 0 2817 46.95 time=2818 inc= 66 rot=-130 act= 5 rr=9.1 cough= 0 2818 46.97 time=2819 inc= 66 rot=-130 act= 2 rr=9.1 cough= 0 2819 46.98 time=2820 inc= 66 rot=-130 act= 5 rr=9.1 cough= 0 2820 47.00 time=2821 inc= 66 rot=-130 act= 6 rr=9.1 cough= 0 2821 47.02 time=2822 inc= 66 rot=-130 act= 1 rr=9.1 cough= 0 2822 47.03 time=2823 inc= 66 rot=-130 act= 2 rr=9.1 cough= 0 2823 47.05 time=2824 inc= 66 rot=-130 act= 4 rr=8.2 cough= 0 2824 47.07 time=2825 inc= 66 rot=-131 act= 1 rr=8.2 cough= 0 2825 47.08 time=2826 inc= 66 rot=-130 act= 7 rr=7.6 cough= 0 2826 47.10 time=2827 inc= 66 rot=-130 act= 5 rr=7.6 cough= 0 2827 47.12 time=2828 inc= 66 rot=-129 act= 9 rr=7.6 cough= 0 2828 47.13 time=2829 inc= 66 rot=-130 act= 4 rr=7.6 cough= 0 2829 47.15 time=2830 inc= 66 rot=-130 act= 4 rr=7.6 cough= 0 2830 47.17 time=2831 inc= 66 rot=-130 act= 5 rr=8.0 cough= 0 2831 47.18 time=2832 inc= 66 rot=-130 act= 7 rr=8.0 cough= 0 2832 47.20 time=2833 inc= 66 rot=-130 act= 4 rr=8.0 cough= 0 2833 47.22 time=2834 inc= 66 rot=-130 act= 6 rr=8.0 cough= 0 2834 47.23 time=2835 inc= 66 rot=-130 act= 2 rr=8.0 cough= 0 2835 47.25 time=2836 inc= 66 rot=-130 act= 7 rr=8.0 cough= 0 2836 47.27 time=2837 inc= 66 rot=-130 act= 5 rr=8.3 cough= 0 2837 47.28 time=2838 inc= 66 rot=-130 act= 6 rr=8.3 cough= 0 2838 47.30
31 time=2839 inc= 66 rot=-129 act= 4 rr=7.4 cough= 0 2839 47.32 time=2840 inc= 66 rot=-129 act= 3 rr=7.1 cough= 0 2840 47.33 time=2841 inc= 66 rot=-129 act= 3 rr=7.1 cough= 0 2841 47.35 time=2842 inc= 66 rot=-130 act= 1 rr=7.1 cough= 0 2842 47.37 time=2843 inc= 65 rot=-129 act= 1 rr=7.4 cough= 0 2843 47.38 time=2844 inc= 65 rot=-129 act= 3 rr=7.4 cough= 0 2844 47.40 time=2845 inc= 66 rot=-129 act= 5 rr=7.4 cough= 0 2845 47.42 time=2846 inc= 66 rot=-129 act= 3 rr=8.3 cough= 0 2846 47.43 time=2847 inc= 66 rot=-130 act= 4 rr=8.3 cough= 0 2847 47.45 time=2848 inc= 65 rot=-129 act= 5 rr=8.6 cough= 0 2848 47.47 time=2849 inc= 65 rot=-129 act= 3 rr=8.6 cough= 0 2849 47.48 time=2850 inc= 66 rot=-128 act= 3 rr=8.6 cough= 0 2850 47.50 time=2851 inc= 66 rot=-130 act= 5 rr=8.6 cough= 0 2851 47.52 time=2852 inc= 66 rot=-129 act= 3 rr=9.1 cough= 0 2852 47.53 time=2853 inc= 66 rot=-129 act= 1 rr=9.1 cough= 0 2853 47.55 time=2854 inc= 65 rot=-129 act= 3 rr=9.1 cough= 0 2854 47.57 time=2855 inc= 66 rot=-129 act= 9 rr=9.1 cough= 0 2855 47.58 time=2856 inc= 66 rot=-129 act= 2 rr=9.1 cough= 0 2856 47.60 time=2857 inc= 66 rot=-130 act= 4 rr=9.1 cough= 0 2857 47.62 time=2858 inc= 65 rot=-129 act= 4 rr=9.2 cough= 0 2858 47.63 time=2859 inc= 65 rot=-129 act= 4 rr=9.0 cough= 0 2859 47.65 time=2860 inc= 65 rot=-129 act= 8 rr=9.0 cough= 0 2860 47.67 time=2861 inc= 66 rot=-129 act= 4 rr=9.0 cough= 0 2861 47.68 time=2862 inc= 66 rot=-130 act= 6 rr=9.0 cough= 0 2862 47.70 time=2863 inc= 66 rot=-130 act= 2 rr=9.2 cough= 0 2863 47.72 time=2864 inc= 66 rot=-129 act= 3 rr=9.2 cough= 0 2864 47.73 time=2865 inc= 66 rot=-129 act= 4 rr=10.0 cough= 0 2865 47.75 time=2866 inc= 66 rot=-129 act= 6 rr=10.0 cough= 0 2866 47.77 time=2867 inc= 66 rot=-130 act= 4 rr=10.0 cough= 0 2867 47.78 time=2868 inc= 66 rot=-130 act= 5 rr=10.1 cough= 0 2868 47.80 time=2869 inc= 66 rot=-130 act= 5 rr=10.4 cough= 0 2869 47.82 time=2870 inc= 65 rot=-129 act= 3 rr=10.4 cough= 0 2870 47.83 time=2871 inc= 66 rot=-129 act= 9 rr=10.4 cough= 0 2871 47.85 time=2872 inc= 66 rot=-130 act= 3 rr=10.4 cough= 0 2872 47.87 time=2873 inc= 66 rot=-130 act= 6 rr=10.4 cough= 0 2873 47.88 time=2874 inc= 66 rot=-130 act= 4 rr=10.4 cough= 0 2874 47.90 time=2875 inc= 65 rot=-129 act= 5 rr=10.2 cough= 0 2875 47.92 time=2876 inc= 65 rot=-129 act= 2 rr=10.2 cough= 0 2876 47.93 time=2877 inc= 66 rot=-130 act= 5 rr=10.9 cough= 0 2877 47.95 time=2878 inc= 66 rot=-130 act= 3 rr=10.9 cough= 0 2878 47.97 time=2879 inc= 66 rot=-130 act= 3 rr=11.2 cough= 0 2879 47.98 time=2880 inc= 65 rot=-129 act= 4 rr=11.2 cough= 0 2880 48.00 time=2881 inc= 65 rot=-129 act= 3 rr=11.2 cough= 0 2881 48.02 time=2882 inc= 66 rot=-129 act= 5 rr=11.2 cough= 0 2882 48.03 time=2883 inc= 66 rot=-129 act= 3 rr=11.2 cough= 0 2883 48.05 time=2884 inc= 66 rot=-130 act= 3 rr=11.3 cough= 0 2884 48.07
Claims
1. A computer implemented system for monitoring, against a respiratory baseline, a respiratory state of a person, the system comprising: a wearable device configured for attachment to the chest of the person, the wearable device comprising: at least one sensor for receiving patient motion information from the chest of the person and outputting raw sensor output data; a wearable device memory storing an executable wearable device software application; and at least one wearable device processor for executing the executable wearable device software application to thereby perform the steps of: determining, from the raw sensor output data, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler; and the server device which comprises: a server memory storing an executable server software application; and a server processor for executing the executable server software application to thereby perform the steps of: determining inhaler technique parameters from the windows of the raw sensor output data; determining variances between (A) trends in the summary output data and trends in the inhaler technique parameters and (B) expected values of the summary output data and expected values of the inhaler technique parameters; and sending an alert to the person if the variances exceed pre-determined thresholds; wherein the alert indicates poor inhaler technique and / or deterioration in the respiratory state of the patient with reference to the respiratory baseline.
2. The computer implemented system of claim 1, wherein the at least one sensor for receiving patient motion information is a three-axis accelerometer.
3. The computer implemented system of claim 1, wherein: the system is in training mode; the inhaler is a smart inhaler which provides an inhaler activation signal when the patient uses the smart inhaler; and the instants of time at which the patient uses the inhaler are determined from the corresponding inhaler activation signals.
4. The computer implemented system of claim 1, wherein: the system is in operational mode; and the instants of time at which the patient uses the inhaler are determined from raw accelerometer output data.
5. The computer implemented system of claim 1, wherein the step of determining, from the raw sensor output data, computed physiological parameters comprises the steps of: determining inclination and rotation by applying low pass filters to the raw sensor output data followed by state machines which apply trigonometric relationships to determine inclination and rotation; determining respiratory rate by applying band pass filters to the raw sensor output data followed by state machines that detect peaks and troughs to determine breath cycles, and maintaining a queue of recent breath cycles to thereby determine respiratory rate; and determining cough by detecting an impulse in the raw sensor output data normal to a chest wall of the patient followed by a resonance of the chest cavity, to thereby determine occurrence of a cough.
6. A wearable device for use in a computer implemented system for monitoring, against a respiratory baseline, a respiratory state of a person, the wearable device configured for attachment to the chest of the person, the wearable device comprising: at least one sensor for receiving patient motion information from the chest of the person and outputting raw sensor output data; a wearable device memory storing an executable wearable device software application; and at least one wearable device processor for executing the executable wearable device software application to thereby perform the steps of:
determining, from the raw sensor output data, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler.
7. The wearable device of claim 6 wherein the at least one sensor for receiving patient motion information is a three-axis accelerometer.
8. The wearable device of claim 6 wherein the system is in training mode; the inhaler is a smart inhaler which provides an inhaler activation signal when the patient uses the smart inhaler; and the instants of time at which the patient uses the inhaler are determined from the corresponding inhaler activation signals.
9. The wearable device of claim 6 wherein the system is in operational mode, and the instants of time at which the patient uses the inhaler are determined from the raw accelerometer output data.
10. A non-transitory computer-readable medium storing a software executable program configured to direct a processor of a wearable device to execute a method for monitoring, against a respiratory baseline, a respiratory state of a person, the method comprising the steps of: determining, from raw sensor output data output from at least one sensor of a wearable device configured for attachment to the chest of the person for receiving patient motion information, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler.
11. A computer implemented method for monitoring by a wearable device, against a respiratory baseline, a respiratory state of a person, the method comprising the steps of: determining, from raw sensor output data output from at least one sensor of the wearable device configured for attachment to the chest of the person for receiving patient motion information, computed physiological parameters; communicating to a server device the computed physiological parameters; determining instants of time at which the patient uses an inhaler; and communicating, to the server device, windows of the raw sensor output data together with the computed physiological parameters, wherein each of the windows of the raw sensor output data straddles a corresponding instant of time at which the patient uses the inhaler.
Respiri Limited
Patent Attorneys for the Applicant/Nominated Person
GLMR
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| AU2023903329 | 2023-10-19 | ||
| AU2023903329A AU2023903329A0 (en) | 2023-10-19 | System and method for managing COPD symptoms |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025081220A1 true WO2025081220A1 (en) | 2025-04-24 |
Family
ID=95447515
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/AU2024/051036 Pending WO2025081220A1 (en) | 2023-10-19 | 2024-10-01 | System and method for managing copd symptoms |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025081220A1 (en) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2017032873A2 (en) * | 2015-08-26 | 2017-03-02 | Resmed Sensor Technologies Limited | Systems and methods for monitoring and management of chronic desease |
| WO2020008339A1 (en) * | 2018-07-02 | 2020-01-09 | 3M Innovative Properties Company | Sensing system and method for monitoring time-dependent processes |
| WO2021022222A1 (en) * | 2019-07-31 | 2021-02-04 | ResMed Pty Ltd | System and method for continuous monitoring of respiratory ailments |
| US20220378377A1 (en) * | 2021-05-28 | 2022-12-01 | Strados Labs, Inc. | Augmented artificial intelligence system and methods for physiological data processing |
-
2024
- 2024-10-01 WO PCT/AU2024/051036 patent/WO2025081220A1/en active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2017032873A2 (en) * | 2015-08-26 | 2017-03-02 | Resmed Sensor Technologies Limited | Systems and methods for monitoring and management of chronic desease |
| WO2020008339A1 (en) * | 2018-07-02 | 2020-01-09 | 3M Innovative Properties Company | Sensing system and method for monitoring time-dependent processes |
| WO2021022222A1 (en) * | 2019-07-31 | 2021-02-04 | ResMed Pty Ltd | System and method for continuous monitoring of respiratory ailments |
| US20220378377A1 (en) * | 2021-05-28 | 2022-12-01 | Strados Labs, Inc. | Augmented artificial intelligence system and methods for physiological data processing |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11610473B2 (en) | Control device for aerosol nebulizer system | |
| CN1964666B (en) | Physiological event handling system and method, inspecting apparatus and program thereof | |
| US12303706B2 (en) | System and method for conserving power in a medical device | |
| US9874862B2 (en) | Method and device to monitor and analyze biosignal of user | |
| US8676313B2 (en) | Wearable medical treatment device with motion/position detection | |
| EP2691897B1 (en) | System and method for providing family mode for monitoring devices | |
| US11647967B2 (en) | Generating automated alarms for clinical monitoring | |
| EP3773193B1 (en) | Context-aware respiration rate determination using an electronic device | |
| JP7399092B2 (en) | How to provide alerts for potential thyroid abnormalities | |
| CN110913936B (en) | Wearable Devices and Storage Media | |
| CN114007497A (en) | Device for monitoring a subject | |
| CN109475295B (en) | Methods and devices for health devices and wearable/implantable devices | |
| US10354512B2 (en) | Peripheral alarm devices for generating alarms and monitoring systems including alarm devices | |
| EP3520000B1 (en) | Patient monitoring system and method configured to suppress an alarm | |
| WO2025081220A1 (en) | System and method for managing copd symptoms | |
| CN114305443A (en) | Physiological characteristic detection device, physiological characteristic detection system and care system | |
| CN108471957B (en) | patient monitor | |
| CN207220827U (en) | A kind of mental health monitoring device | |
| CN109745601A (en) | Atomization process monitoring method, system, computer equipment, storage medium and device | |
| WO2023230012A1 (en) | Diagnostics and therapy for sleep respiratory issues using positional therapy ear device with audibl notification | |
| WO2018211963A1 (en) | Information display device and program | |
| CN119013736A (en) | Assessment of respiratory depression risk from wearable device | |
| EP4283595A1 (en) | Method for guiding use of inhaler, and user terminal | |
| KR102643039B1 (en) | Method and system for monitoring user using biometric information of user | |
| CN115016244B (en) | Information processing method, wearable system, and computer-readable storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| DPE2 | Request for preliminary examination filed before expiration of 19th month from priority date (pct application filed from 20040101) | ||
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 24878261 Country of ref document: EP Kind code of ref document: A1 |