Noise-robust feedback control of neural stimulation therapy
Patent Information
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-31
- Publication Date
- 2026-04-08
AI Technical Summary
Neural stimulation therapies face challenges in maintaining optimal stimulus intensity due to electrode migration, postural changes, and high power consumption, which affect neural recruitment and comfort, and existing feedback control systems struggle with noise robustness in measuring evoked action potentials.
A noise-robust closed-loop neural stimulation system that dynamically adjusts its speed set point based on patient posture and uses a Kalman filter to estimate neural response characteristics and posture, allowing for adaptive feedback control to maintain optimal stimulus intensity.
The system effectively maintains neural recruitment within therapeutic ranges, reduces discomfort, and minimizes power consumption, while enhancing noise robustness and adaptability to changing patient conditions.
Smart Images

Figure AU2024050583_05122024_PF_FP_ABST
Abstract
Description
NOISE-ROBUST FEEDBACK CONTROL OF NEURAL STIMULATION THERAPY
[0001] The present application claims priority from Australian Provisional Patent Application No 2023901735 filed on 1 June 2023, the contents of which are incorporated herein by reference in their entirety. TECHNICAL FIELD
[0002] The present invention relates to feedback control of neural stimulation therapy and in particular to measurement of evoked action potentials for feedback control in a noise-robust manner. BACKGROUND OF THE INVENTION
[0003] There are a range of situations in which it is desirable to apply neural stimuli in order to alter neural function, a process known as neuromodulation. For example, neuromodulation is used to treat a variety of disorders including chronic neuropathic pain, Parkinson’s disease, and migraine. A neuromodulation device applies an electrical pulse (stimulus) to neural tissue (fibres, or neurons) in order to generate a therapeutic effect. In general, the electrical stimulus generated by a neuromodulation device evokes a neural response known as an action potential in a neural fibre which then has either an inhibitory or excitatory effect. Inhibitory effects can be used to modulate an undesired process such as the transmission of pain, or excitatory effects may be used to cause a desired effect such as the contraction of a muscle.
[0004] When used to relieve neuropathic pain originating in the trunk and limbs, the electrical pulse is applied to the dorsal column (DC) of the spinal cord, a procedure referred to as spinal cord stimulation (SCS). Such a device typically comprises an implanted electrical pulse generator, and a power source such as a battery that may be transcutaneously rechargeable by wireless means, such as inductive transfer. An electrode array is connected to the pulse generator, and is implanted adjacent the target neural fibre(s) in the spinal cord, typically in the dorsal epidural space above the dorsal column. An electrical pulse of sufficient intensity applied to the target neural fibres by a stimulus electrode causes the depolarisation of neurons in the fibres, which in turn generates an action potential in the fibres. Action potentials propagate along the fibres in an orthodromic direction (in afferent fibres this means towards the head, or rostral) and in an antidromic direction (in afferent fibres this means towards the cauda, or caudal) directions. Action potentials propagating along A ^ (A-beta) fibres being stimulated in this way may inhibit the transmission of pain from a region of the body innervated by the target neural fibres (the dermatome) to the brain. To sustain the pain relief effects, stimuli are applied repeatedly, for example at a frequency in the range of 30 Hz - 100 Hz.
[0005] For effective and comfortable neuromodulation, it is necessary to maintain stimulus intensity above a recruitment threshold. Stimuli below the recruitment threshold will fail to recruit sufficient neurons to generate action potentials with a therapeutic effect. In some neuromodulation applications, response from a single class of fibre is desired, but the stimulus waveforms employed can evoke action potentials in other classes of fibres which cause unwanted side effects. In pain relief, it is therefore desirable to apply stimuli with intensity below a discomfort threshold, above which uncomfortable or painful percepts arise due to over-recruitment of A ^ fibres or recruitment of undesired fibre classes. When recruitment is too large, A ^ fibres produce uncomfortable sensations. Stimulation at high intensity may even recruit Aδ (A-delta) fibres, which are sensory nerve fibres associated with acute pain, cold and heat sensation. It is therefore desirable to maintain stimulus intensity within a therapeutic range between the recruitment threshold and the discomfort threshold.
[0006] The task of maintaining appropriate neural recruitment is made more difficult by electrode migration (change in position over time) or postural changes of the implant recipient (patient), either of which can significantly alter the neural recruitment arising from a given stimulus, and therefore the therapeutic range. There is room in the epidural space for the electrode array to move, and such array movement from migration or posture change alters the electrode-to-cord distance and thus the recruitment efficacy of a given stimulus. Moreover, the spinal cord itself can move within the cerebrospinal fluid (CSF) with respect to the dura. During postural changes, the amount of CSF or the distance between the spinal cord and the electrode can change significantly. This effect is so large that postural changes alone can cause a previously comfortable and effective stimulus regime to become either ineffectual or painful.
[0007] Another control problem facing neuromodulation devices of all types is achieving neural recruitment at a sufficient level for therapeutic effect, but at minimal expenditure of energy. The power consumption of the stimulation paradigm has a direct effect on battery requirements which in turn affects the device’s physical size and lifetime. For rechargeable devices, increased power consumption results in more frequent charging and, given that batteries only permit a limited number of charging cycles, this ultimately reduces the implanted lifetime of the device.
[0008] Attempts have been made to address such problems by way of feedback or closed-loop control, such as using the methods set forth in International Patent Publication No. WO2012 / 155188 by the present applicant. Feedback control seeks to compensate for relative nerve / electrode movement by controlling the intensity of the delivered stimuli so as to maintain neural recruitment at or near a target value. The intensity of a neural response evoked by a stimulus may be used as afeedback variable representative of the amount of neural recruitment. A signal representative of the neural response may be sensed by a measurement electrode in electrical communication with the recruited neural fibres, and processed to obtain the feedback variable. Based on the response intensity, the intensity of the applied stimulus may be adjusted to bring the response intensity closer to a target value.
[0009] It is therefore desirable to accurately measure the intensity and other characteristics of a neural response evoked by the stimulus. The action potentials generated by the depolarisation of a large number of fibres by a stimulus sum to form a measurable signal known as an evoked compound action potential (ECAP). Accordingly, an ECAP is the sum of responses from a large number of single fibre action potentials. The ECAP generated from the depolarisation of a group of similar fibres may be measured at a measurement electrode as a positive peak potential, then a negative peak, followed by a second positive peak. This morphology is caused by the region of activation passing the measurement electrode as the action potentials propagate along the individual fibres.
[0010] Approaches proposed for obtaining a neural response measurement are described by the present applicant in International Patent Publication No. WO2012 / 155183, the content of which is incorporated herein by reference.
[0011] However, neural response measurement can be a difficult task as a neural response component in the sensed signal will typically have a maximum amplitude in the range of microvolts. In contrast, a stimulus applied to evoke the response is typically several volts, and manifests in the sensed signal as crosstalk of that magnitude. Moreover, stimulus generally results in electrode artefact, which may manifest in the sensed signal as a decaying output of the order of several millivolts after the end of the stimulus. As the neural response can be contemporaneous with the stimulus crosstalk or the stimulus artefact, neural response measurements present a difficult challenge of measurement amplifier design. For example, to resolve a 10 µV ECAP with 1 µV resolution in the presence of stimulus crosstalk of 5 V requires an amplifier with a dynamic range of 134 dB, which is impractical in implantable devices. In practice, many non-ideal aspects of a circuit lead to artefact, and as these aspects mostly result in a time-decaying artefact waveform of positive or negative polarity, their identification and elimination can be laborious.
[0012] Evoked neural responses are less difficult to measure when they appear later in time than the artefact, or when the signal-to-noise ratio is sufficiently high. The artefact is often restricted to a timeof 1 – 2 ms after the stimulus and so, provided the neural response is measured after this time window, a neural response measurement can be more easily obtained.
[0013] When setting up an ECAP-controlled feedback loop for SCS, there is a tradeoff between high loop speed, which renders the loop adaptable to rapid changes in patient characteristics such as posture, and low loop speed, which renders the loop robust to noise in the measurement of evoked neural response characteristics. Achieving the optimal tradeoff point may require delicate tuning for each patient, which is time-consuming, and may result in an unsatisfactory performance in relation to both considerations.
[0014] Any discussion of documents, acts, materials, devices, articles or the like which has been included in the present specification is solely for the purpose of providing a context for the present invention. It is not to be taken as an admission that any or all of these matters form part of the prior art base or were common general knowledge in the field relevant to the present invention as it existed before the priority date of each claim of this application.
[0015] Throughout this specification the word "comprise", or variations such as "comprises" or "comprising", will be understood to imply the inclusion of a stated element, integer or step, or group of elements, integers or steps, but not the exclusion of any other element, integer or step, or group of elements, integers or steps.
[0016] In this specification, a statement that an element may be “at least one of” a list of options is to be understood to mean that the element may be any one of the listed options, or may be any combination of two or more of the listed options. SUMMARY OF THE INVENTION
[0017] Disclosed herein is a noise-robust ECAP-controlled closed-loop neural stimulation system in which the set point of speed for the feedback loop is dynamically adjusted to be adaptable to changing patient characteristics, while maintaining robustness to measurement noise under static conditions. The speed set point dynamically adjusts to be low when the posture of the patient is static but temporarily high when the posture of the patient is changing. A noise-robust closed-loop neural stimulation system according to the present disclosure uses a Kalman filter to estimate the characteristics of the neural response. The noise-robust closed-loop neural stimulation system may be made adaptive to achieve the dynamic adjustment of speed set point. The adaptive system is implementing by conditionally re-setting the Kalman filter based on the norm of a discrepancybetween predicted and measured values of a loop variable. The Kalman filter may also provide an estimate of posture alongside the estimate of neural response characteristics.
[0018] According to a first aspect of the present technology, there is provided a neuromodulation device for controllably delivering neural stimuli. The device comprises: a stimulus source configured to provide neural stimuli to be delivered via one or more stimulus electrodes of an electrode array to a neural pathway of a patient in order to evoke a neural response from the neural pathway; measurement circuitry configured to capture signal windows from signals sensed on the neural pathway via one or more measurement electrodes of the electrode array subsequent to respective neural stimuli; and a control unit. The control unit is configured to: control the stimulus source to provide a neural stimulus according to a stimulus intensity parameter; measure an intensity of an evoked neural response in a captured signal window subsequent to the neural stimulus; determine, using a Kalman filter, a feedback variable and an estimate of a posture of the patient from the measured intensity of the evoked neural response, the stimulus intensity parameter, and a target value; and adjust, using a feedback controller, the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
[0019] According to a second aspect of the present technology, there is provided an automated method of controllably delivering neural stimuli to a neural pathway of a patient. The method comprises: delivering a neural stimulus to the neural pathway of the patient in order to evoke a neural response from the neural pathway, the neural stimulus being delivered according to a stimulus intensity parameter; capturing a signal window from a signal sensed on the neural pathway subsequent to the delivered neural stimulus; measuring an intensity of a neural response evoked by the delivered neural stimulus in the captured signal window; determining, using a Kalman filter, a feedback variable and an estimate of a posture of the patient from the measured intensity of the evoked neural response, the stimulus intensity parameter, and a target value; and adjusting the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
[0020] According to a third aspect of the present technology, there is provided a neuromodulation device for controllably delivering neural stimuli. The device comprises: a stimulus source configured to provide neural stimuli to be delivered via one or more stimulus electrodes of an electrode array to a neural pathway of a patient in order to evoke a neural response from the neural pathway; measurement circuitry configured to capture signal windows from signals sensed on the neural pathway via one or more measurement electrodes of the electrode array subsequent to respective neural stimuli; and a control unit. The control unit is configured to: control the stimulus source toprovide a neural stimulus according to a stimulus intensity parameter; measure an intensity of an evoked neural response in the captured signal window subsequent to the provided neural stimulus; determine, using a Kalman filter, a feedback variable from the measured intensity of the evoked neural response, the stimulus intensity parameter, and a target value, by: subtracting an observation vector comprising the stimulus intensity and the measured intensity from a predicted observation vector provided by the Kalman filter to form a discrepancy vector; and re-setting, based on a norm of the discrepancy vector, the Kalman filter. The control unit is further configured to adjust, using a feedback controller, the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
[0021] According to a fourth aspect of the present technology, there is provided an automated method of controllably delivering neural stimuli to a neural pathway of a patient. The method comprises: delivering a neural stimulus to the neural pathway of the patient in order to evoke a neural response from the neural pathway, the neural stimulus being delivered according to a stimulus intensity parameter; capturing a signal window sensed on the neural pathway subsequent to the delivered neural stimulus; measuring an intensity of a neural response evoked by the delivered neural stimulus in the captured signal window; determining, using a Kalman filter, a feedback variable from the measured intensity of the evoked neural response, the stimulus intensity parameter, and a target value, by: subtracting an observation vector comprising the stimulus intensity and the measured intensity from a predicted observation vector provided by the Kalman filter to form a discrepancy vector; and re-setting, based on a norm of the discrepancy vector, the Kalman filter. The method further comprises completing a feedback loop by using the determined feedback variable to control the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
[0022] According to a fifth aspect of the present technology, there is provided a neuromodulation device for controllably delivering neural stimuli. The device comprises: a stimulus source configured to provide neural stimuli to be delivered via one or more stimulus electrodes of an electrode array to a neural pathway of a patient in order to evoke a neural response from the neural pathway; measurement circuitry configured to capture signal windows sensed on the neural pathway via one or more measurement electrodes of the electrode array subsequent to respective neural stimuli; and a control unit. The control unit is configured to: control the stimulus source to provide a neural stimulus according to a stimulus intensity parameter; measure an intensity of an evoked neural response in the captured signal window subsequent to the provided neural stimulus; and adjust, using a feedback controller and the measured intensity, the stimulus intensity parameter so as to maintain a feedback variable at or near a target value. The feedback controller is characterised by a loop speed set pointthat is dynamically adjusted to be low when a posture of the patient is static and to be temporarily high when the posture of the patient is changing.
[0023] According to a sixth aspect of the present technology, there is provided an automated method of controllably delivering neural stimuli to a neural pathway of a patient. The method comprises: delivering a neural stimulus to the neural pathway of the patient in order to evoke a neural response from the neural pathway, the neural stimulus being delivered according to a stimulus intensity parameter; capturing a signal window sensed on the neural pathway subsequent to the delivered neural stimulus; measuring an intensity of a neural response evoked by the delivered neural stimulus in the captured signal window; adjusting, using a feedback loop and the measured intensity, the stimulus intensity parameter so as to maintain a feedback variable at or near a target value; and dynamically adjusting a loop speed set point of the feedback loop to be low when a posture of the patient is static and to be temporarily high when the posture of the patient is changing.
[0024] According to a seventh aspect of the present technology, there is provided a neuromodulation device for controllably delivering neural stimuli. The device comprises: a stimulus source configured to provide neural stimuli to be delivered via one or more stimulus electrodes of an electrode array to a neural pathway of a patient in order to evoke a neural response from the neural pathway; measurement circuitry configured to capture signal windows sensed on the neural pathway via one or more measurement electrodes of the electrode array subsequent to respective neural stimuli; and a control unit. The control unit is configured to: control the stimulus source to provide a neural stimulus according to a stimulus intensity parameter; measure an intensity of an evoked neural response in the captured signal window subsequent to the provided neural stimulus; update an estimate of a posture- related disturbance to the stimulus intensity parameter using the measured intensity, the stimulus intensity parameter, and a mixing parameter; estimating the intensity of the evoked neural response using the updated estimate of the posture-related disturbance; and adjust, using a feedback controller, the stimulus intensity parameter so as to maintain the estimated intensity at or near a target value.
[0025] According to an eighth aspect of the present technology, there is provided an automated method of controllably delivering neural stimuli to a neural pathway of a patient. The method comprises: delivering a neural stimulus to the neural pathway of the patient in order to evoke a neural response from the neural pathway, the neural stimulus being delivered according to a stimulus intensity parameter; capturing a signal window sensed on the neural pathway subsequent to the delivered neural stimulus; measuring an intensity of a neural response evoked by the delivered neural stimulus in the captured signal window; updating an estimate of a posture-related disturbance to thestimulus intensity parameter using the measured intensity, the stimulus intensity parameter, and a mixing parameter; estimating the intensity of the evoked neural response using the updated estimate of the posture-related disturbance; and adjusting, using a feedback controller, the stimulus intensity parameter so as to maintain the estimated intensity at or near a target value
[0026] References herein to estimation, determination, comparison and the like are to be understood as referring to an automated process carried out on data by a processor operating to execute a predefined procedure suitable to effect the described estimation, determination or comparison step(s). The technology disclosed herein may be implemented in hardware (e.g., using digital signal processors, application specific integrated circuits (ASICs) or field programmable gate arrays (FPGAs)), or in software (e.g., using instructions tangibly stored on non-transitory computer-readable media for causing a data processing system to perform the steps described herein), or in a combination of hardware and software. The disclosed technology can also be embodied as computer-readable code on a computer-readable medium. The computer-readable medium can include any data storage device that can store data which can thereafter be read by a computer system. Examples of the computer-readable medium include read-only memory ("ROM"), random-access memory ("RAM"), magnetic tape, optical data storage devices, flash storage devices, or any other suitable storage devices. The computer-readable medium can also be distributed over network-coupled computer systems so that the computer-readable code is stored or executed in a distributed fashion. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] Notwithstanding any other implementations which may fall within the scope of the present invention, implementations of the invention will now be described, by way of example only, with reference to the accompanying drawings, in which:
[0028] Fig. 1 schematically illustrates an implanted spinal cord stimulator, according to one implementation of the present technology;
[0029] Fig.2 is a block diagram of the stimulator of Fig.1;
[0030] Fig.3 is a schematic illustrating interaction of the implanted stimulator of Fig.1 with a nerve;
[0031] Fig. 4a illustrates an idealised activation plot for one posture of a patient undergoing neural stimulation;
[0032] Fig.4b illustrates the variation in the activation plots with changing posture of the patient;
[0033] Fig. 5 is a schematic illustrating elements and inputs of a closed-loop neural stimulation (CLNS) system, according to one implementation of the present technology;
[0034] Fig.6 illustrates the typical form of an electrically evoked compound action potential (ECAP) of a healthy subject;
[0035] Fig. 7 is a block diagram of a neural stimulation therapy system including the implanted stimulator of Fig.1 according to one implementation of the present technology;
[0036] Fig.8 is a schematic illustrating elements and inputs of a noise-robust CLNS system 800 that uses a Kalman filter to estimate the neural response intensity, according to one implementation of the present technology;
[0037] Fig.9 is a flow chart illustrating a method of implementing the Kalman filter within the noise- robust CLNS system of Fig.8 according to one implementation of the present technology;
[0038] Figs.10A and 10B contain graphs illustrating the results of the noise-robust CLNS system of Fig.8, both adaptive and non-adaptive; and
[0039] Fig.11 contains three graphs illustrating the results of a “standard” CLNS system of Fig.5, a “classic” (non-adaptive) noise-robust CLNS system of Fig. 8, and an adaptive noise-robust CLNS system of Fig.8. DETAILED DESCRIPTION OF THE PRESENT TECHNOLOGY
[0040] Fig. 1 schematically illustrates an implanted spinal cord stimulator 100 in a patient 108, according to one implementation of the present technology. Stimulator 100 comprises an electronics module 110 housed within a conductive case, implanted at a suitable location. In one implementation, stimulator 100 is implanted in the patient’s lower abdominal area or posterior superior gluteal region. In other implementations, the electronics module 110 is implanted in other locations, such as in a flank or sub-clavicularly. The electronics module 110 is configured to electrically connect to an electrode assembly comprising an electrode array 150 implanted within the epidural space and connected to the module 110 by a suitable lead. The electrode array 150 may comprise one or more electrodes such as electrode pads on a paddle lead, circular (e.g., ring) electrodes surrounding thebody of the lead, conformable electrodes, cuff electrodes, segmented electrodes, or any other type of electrodes capable of forming unipolar, bipolar or multipolar electrode configurations for stimulation and measurement. The electrodes may pierce or affix directly to the tissue itself.
[0041] Numerous aspects of the operation of implanted stimulator 100 may be programmable by an external computing device 192, which may be operable by a user such as a clinician or the patient 108. Moreover, implanted stimulator 100 serves a data gathering role, with gathered data being communicated to external device 192 via a transcutaneous communications channel 190. Communications channel 190 may be active on a substantially continuous basis, at periodic intervals, at non-periodic intervals, or upon request from the external device 192. External device 192 may thus provide a clinical interface configured to program the implanted stimulator 100 and recover data stored on the implanted stimulator 100. This configuration is achieved by program instructions collectively referred to as the Clinical Programming Application (CPA) and stored in an instruction memory of the clinical interface.
[0042] Fig. 2 is a block diagram of the stimulator 100. Electronics module 110 contains a battery 112 and a telemetry module 114. In implementations of the present technology, any suitable type of transcutaneous communications channel 190, such as infrared (IR), radiofrequency (RF), capacitive or inductive transfer, may be used by telemetry module 114 to transfer power or data to and from the electronics module 110 via communications channel 190. Module controller 116 has an associated memory 118 storing one or more of clinical data 120, clinical settings 121, control programs 122, and the like. Controller 116 is configured by control programs 122, sometimes referred to as firmware, to control a pulse generator 124 to generate stimuli, such as in the form of electrical pulses, in accordance with the clinical settings 121. Electrode selection module 126 switches the generated pulses to the selected electrode(s) of electrode array 150, for delivery of the pulses to the tissue surrounding the selected electrode(s). Measurement circuitry 128, which may comprise an amplifier or an analog-to-digital converter (ADC), is configured to process signals comprising neural responses sensed at measurement electrode(s) of the electrode array 150 as selected by electrode selection module 126.
[0043] Fig.3 is a schematic illustrating interaction of the implanted stimulator 100 with a nerve 180 in the patient 108. In the implementation illustrated in Fig. 3 the nerve 180 may be located in the spinal cord, however in alternative implementations the stimulator 100 may be positioned adjacent any desired neural tissue including a peripheral nerve, visceral nerve, parasympathetic nerve or a brain structure. Electrode selection module 126 selects a stimulus electrode 2 of electrode array 150through which to deliver a pulse from the pulse generator 124 to surrounding tissue including nerve 180. A pulse may comprise one or more phases, e.g. a monophasic pulse comprises one phase, and a biphasic stimulus pulse 160 comprises two phases. Electrode selection module 126 also selects a return electrode 4 of the electrode array 150 for stimulus current return in each phase, to maintain a zero net charge transfer. An electrode may act as both a stimulus electrode and a return electrode over a complete multiphasic stimulus pulse. The use of two electrodes in this manner for delivering and returning current in each stimulus phase is referred to as bipolar stimulation. Alternative implementations may apply other forms of bipolar stimulation, or may use a greater number of stimulus or return electrodes. By contrast, in monopolar stimulation, current is returned through the conductive case of the stimulator 100, which may therefore be configured and function as an electrode though it is not physically part of the electrode array 150. The set of stimulus electrodes and return electrodes is referred to as the stimulus electrode configuration. Electrode selection module 126 is illustrated as connecting to a ground 130 of the pulse generator 124 to enable stimulus current return via the return electrode 4. However, other connections for current return may be used in other implementations.
[0044] Delivery of an appropriate stimulus via electrodes 2 and 4 to the nerve 180 evokes a neural response 170 comprising an evoked compound action potential (ECAP) which will propagate along the nerve 180 as illustrated at a rate known as the conduction velocity. The ECAP may be evoked for therapeutic purposes, which in the case of a spinal cord stimulator for chronic pain may be to create paraesthesia at a desired location. To this end, the electrodes 2 and 4 are used to deliver stimuli periodically at any therapeutically suitable frequency, for example 30 Hz, although other frequencies may be used including frequencies as high as the kHz range. In alternative implementations, stimuli may be delivered in a non-periodic manner such as in bursts, or sporadically, as appropriate for the patient 108. To program the stimulator 100 to the patient 108, a clinician may cause the stimulator 100 to deliver stimuli of various configurations which seek to produce a sensation that is experienced by the user as paraesthesia. When a stimulus electrode configuration is found which evokes paraesthesia in a location and of a size which is congruent with the area of the patient’s body affected by pain and of a quality that is comfortable for the patient, the clinician or the patient nominates that configuration for ongoing use. The therapy parameters may be loaded into the memory 118 of the stimulator 100 as the clinical settings 121.
[0045] Fig.6 illustrates the typical form of an ECAP 600 of a healthy subject, as recorded at a single measurement electrode referenced to the system ground 130. The shape and duration of the single- ended ECAP 600 shown in Fig.6 is predictable because it is a result of the ion currents produced bythe ensemble of fibres depolarising and generating action potentials (APs) in response to stimulation. The evoked action potentials (EAPs) generated synchronously among a large number of fibres sum to form the ECAP 600. The ECAP 600 generated from the synchronous depolarisation of a group of similar fibres comprises a positive peak P1, then a negative peak N1, followed by a second positive peak P2. This shape is caused by the region of activation passing the measurement electrode as the action potentials propagate along the individual fibres.
[0046] The ECAP may be recorded differentially using two measurement electrodes, as illustrated in Fig.3. Differential ECAP measurements are less subject to common-mode noise on the surrounding tissue than single-ended ECAP measurements. Depending on the polarity of recording, a differential ECAP may take an inverse form to that shown in Fig. 6, i.e. a form having two negative peaks N1 and N2, and one positive peak P1. Alternatively, depending on the distance between the two measurement electrodes, a differential ECAP may resemble the time derivative of the ECAP 600, or more generally the difference between the ECAP 600 and a time-delayed copy thereof.
[0047] The ECAP 600 may be characterised by any suitable characteristic(s) of which some are indicated in Fig.6. The amplitude of the positive peak P1 is Ap1and occurs at time Tp1. The amplitude of the positive peak P2 is Ap2 and occurs at time Tp2. The amplitude of the negative peak P1 is An1 and occurs at time Tn1. The peak-to-peak amplitude is Ap1+ An1. A recorded ECAP will typically have a maximum peak-to-peak amplitude in the range of microvolts and a duration of 2 to 3 ms.
[0048] The stimulator 100 is further configured to measure the intensity of ECAPs 170 propagating along nerve 180, whether such ECAPs are evoked by the stimulus from electrodes 2 and 4, or otherwise evoked. To this end, any electrodes of the array 150 may be selected by the electrode selection module 126 to serve as recording electrode 6 and reference electrode 8, whereby the electrode selection module 126 selectively connects the chosen electrodes to the inputs of the measurement circuitry 128. Thus, signals sensed by the measurement electrodes 6 and 8 subsequent to the respective stimuli are passed to the measurement circuitry 128, which may comprise a differential amplifier and an analog-to-digital converter (ADC), as illustrated in Fig.3. The recording electrode and the reference electrode are referred to as the measurement electrode configuration. The measurement circuitry 128 for example may operate in accordance with the teachings of the above- mentioned International Patent Publication No. WO2012 / 155183.
[0049] Signals sensed by the measurement electrodes 6, 8 and processed by measurement circuitry 128 are further processed by an ECAP detector implemented within controller 116, configured bycontrol programs 122, to obtain information regarding the effect of the applied stimulus upon the nerve 180. In some implementations, the sensed signals are processed by the ECAP detector in a manner which measures and stores one or more characteristics from each evoked neural response or group of evoked neural responses contained in the sensed signal. In one such implementation, the characteristics comprise a peak-to-peak ECAP amplitude in microvolts (µV). For example, the sensed signals may be processed by the ECAP detector to determine the peak-to-peak ECAP amplitude in accordance with the teachings of International Patent Publication No. WO2015 / 074121, the contents of which are incorporated herein by reference. Alternative implementations of the ECAP detector may measure and store an alternative characteristic from the neural response, or may measure and store two or more characteristics from the neural response.
[0050] Stimulator 100 applies stimuli over a potentially long period such as days, weeks, or months and during this time may store characteristics of neural responses, clinical settings, paraesthesia target level, and other operational parameters in memory 118. To effect suitable SCS therapy, stimulator 100 may deliver tens, hundreds or even thousands of stimuli per second, for many hours each day. Each neural response or group of responses generates one or more characteristics such as a measure of the intensity of the neural response. Stimulator 100 thus may produce such data at a rate of tens or hundreds of Hz, or even kHz, and over the course of hours or days this process results in large amounts of clinical data 120 which may be stored in the memory 118. Memory 118 is however necessarily of limited capacity and care is thus required to select compact data forms for storage into the memory 118, to ensure that the memory 118 is not exhausted before such time that the data is expected to be retrieved wirelessly by external device 192, which may occur only once or twice a day, or less.
[0051] An activation plot, or growth curve, is an approximation to the relationship between stimulus intensity (e.g. an amplitude of the current pulse 160) and intensity of neural response 170 evoked by the stimulus (e.g. an ECAP amplitude). Fig. 4a illustrates an idealised activation plot 402 for one posture of the patient 108. The activation plot 402 shows a linearly increasing ECAP amplitude for stimulus intensity values above a threshold 404 referred to as the ECAP threshold. The ECAP threshold exists because of the binary nature of fibre recruitment; if the field strength is too low, no fibres will be recruited. However, once the field strength exceeds a threshold, fibres begin to be recruited, and their individual evoked action potentials are independent of the strength of the field. The ECAP threshold 404 therefore reflects the field strength at which significant numbers of fibres begin to be recruited, and the increase in response intensity with stimulus intensity above the ECAP threshold reflects increasing numbers of fibres being recruited. Below the ECAP threshold 404, theECAP amplitude may be taken to be zero. Above the ECAP threshold 404, the activation plot 402 has a positive, approximately constant slope indicating a linear relationship between stimulus intensity and the ECAP amplitude. Such a relationship may be modelled as: ^^ ൌ ^^^^ ^^ െ ^^^, ^^ ^ ^^0, ^^ ^ ^^ ^1^
[0052] where s is the stimulusP is the slope of the activation plot (referred to herein as the patient sensitivity). The sensitivity P and the ECAP threshold T are the key parameters of the activation plot 402.
[0053] Fig.4a also illustrates a discomfort threshold 408, which is a stimulus intensity above which the patient 108 experiences uncomfortable or painful stimulation. Fig.4a also illustrates a perception threshold 410. The perception threshold 410 corresponds to an ECAP amplitude that is barely perceptible by the patient. There are a number of factors which can influence the position of the perception threshold 410, including the posture of the patient. Perception threshold 410 may correspond to a stimulus intensity that is greater than the ECAP threshold 404, as illustrated in Fig. 4a, if patient 108 does not perceive low levels of neural activation. Conversely, the perception threshold 410 may correspond to a stimulus intensity that is less than the ECAP threshold 404, if the patient has a high perception sensitivity to lower levels of neural activation than can be detected in an ECAP, or if the signal to noise ratio of the ECAP is low.
[0054] For effective and comfortable operation of an implantable neuromodulation device such as the stimulator 100, it is desirable to maintain stimulus intensity within a therapeutic range. A stimulus intensity within a therapeutic range 412 is above the ECAP threshold 404 and below the discomfort threshold 408. In principle, it would be straightforward to measure these limits and ensure that stimulus intensity, which may be closely controlled, always falls within the therapeutic range 412. However, the activation plot, and therefore the therapeutic range 412, varies with the posture of the patient 108.
[0055] Fig.4b illustrates the variation in the activation plots with changing posture of the patient. A change in posture of the patient may cause a change in impedance of the electrode-tissue interface or a change in the distance between electrodes and the spinal cord. Electrode-to-cord distance is therefore loosely referred to throughout the present disclosure as posture. While the activation plots for only three postures, 502, 504 and 506, are shown in Fig. 4b, the activation plot for any given posture can lie between or outside the activation plots shown, on a continuously varying basisdepending on posture. Consequently, as the patient’s posture changes, the ECAP threshold changes, as indicated by the ECAP thresholds 508, 510, and 512 for the respective activation plots 502, 504, and 506. Additionally, as the patient’s posture changes, the patient sensitivity also changes, as indicated by the varying slopes of activation plots 502, 504, and 506. In general, as the distance between the stimulus electrodes and the spinal cord increases, the ECAP threshold increases and the sensitivity decreases. The activation plots 502, 504, and 506 therefore correspond to increasing distance between stimulus electrodes and spinal cord, and decreasing patient sensitivity.
[0056] To keep the applied stimulus intensity within the therapeutic range as patient posture varies, in some implementations an implantable neuromodulation device such as the stimulator 100 may adjust the applied stimulus intensity based on a feedback variable that is determined from one or more measured ECAP characteristics. In one implementation, the device may adjust the stimulus intensity to maintain the measured ECAP amplitude at or near a target response intensity. For example, the device may calculate an error between a target ECAP amplitude and a measured ECAP amplitude, and adjust the applied stimulus intensity to reduce the error as much as possible, such as by adding the scaled error to the current stimulus intensity. A neuromodulation device that operates by adjusting the applied stimulus intensity based on a measured ECAP characteristic is said to be operating in closed-loop mode and will also be referred to as a closed-loop neural stimulation (CLNS) device. By adjusting the applied stimulus intensity to maintain the measured ECAP amplitude at or near an appropriate target response intensity, such as a target ECAP amplitude 520 illustrated in Fig. 4b, a CLNS device will generally keep the stimulus intensity within the therapeutic range as patient posture varies.
[0057] A CLNS device comprises a stimulator that takes a stimulus intensity value and converts it into a neural stimulus comprising a sequence of electrical pulses according to a predefined stimulation pattern. The stimulation pattern is parametrised by multiple stimulus parameters including stimulus amplitude, pulse width, number of phases, order of phases, number of stimulus electrode poles (two for bipolar, three for tripolar etc.), and stimulus rate or frequency. At least one of the stimulus parameters, for example the stimulus amplitude, is controlled by the feedback loop.
[0058] In an example CLNS system, a user (e.g. the patient or a clinician) sets a target response intensity, and the CLNS device performs proportional-integral-differential (PID) control. In some implementations, the differential contribution is disregarded and the CLNS device uses a first order integrating feedback loop. The stimulator produces stimulus in accordance with a stimulus intensityparameter, which evokes a neural response in the patient. The intensity of an evoked neural response (e.g. an ECAP) is measured by the CLNS device and compared to the target response intensity.
[0059] The measured neural response intensity, and its deviation from the target response intensity, is used by the feedback loop to determine possible adjustments to the stimulus intensity parameter to maintain the neural response at or near the target intensity. If the target intensity is properly chosen, the patient receives consistently comfortable and therapeutic stimulation through posture changes and other perturbations to the stimulus / response behaviour.
[0060] Fig. 5 is a schematic illustrating elements and inputs of a closed-loop neural stimulation (CLNS) system 300. The system 300 comprises a stimulator 312 which converts a stimulus intensity parameter (for example a stimulus current amplitude) x, in concert with a set of predefined stimulus parameters, to a neural stimulus comprising a sequence of electrical pulses on the stimulus electrodes (not shown in Fig.5). According to one implementation, the predefined stimulus parameters comprise the number and order of phases, the number of stimulus electrode poles, the pulse width, and the stimulus rate or frequency.
[0061] The generated stimulus crosses from the electrodes to the neural tissue, which is represented in Fig. 5 by the dashed box 308. The box 309 represents the evocation of a neural response y by the stimulus as described above. The box 311 represents the evocation of an artefact signal a, which is dependent on stimulus intensity and other stimulus parameters, as well as the electrical environment of the measurement electrodes. Various sources of measurement noise m, as well as the artefact a, may add to the evoked response y at the summing element 313 to form the sensed signal r, including: electrical noise from external sources such as 50 Hz mains power; electrical disturbances produced by the body such as neural responses evoked not by the device but by other causes such as peripheral sensory input; EEG; EMG; and electrical noise from measurement circuitry 318.
[0062] The neural recruitment arising from the stimulus is affected by mechanical changes, including posture changes, walking, breathing, heartbeat and so on. Mechanical changes may cause impedance changes, or changes in the location and orientation of the nerve fibres relative to the electrode array(s). As described above, the intensity of the evoked response provides a measure of the recruitment of the fibres being stimulated. In general, the more intense the stimulus, the more recruitment and the more intense the evoked response. An evoked response typically has a maximum amplitude in the range of microvolts, whereas the voltage resulting from the stimulus applied to evoke the response is typically several volts.
[0063] Measurement circuitry 318, which may be identified with measurement circuitry 128, amplifies the sensed signal r (including evoked neural response, artefact, and measurement noise), and samples the amplified sensed signal r to capture a “signal window” 319 comprising a predetermined number of samples of the amplified sensed signal r. The ECAP detector 320 processes the signal window 319 and outputs a measured neural response intensity y’. In one implementation, the neural response intensity comprises a peak-to-peak ECAP amplitude. The measured response intensity y’ (an example of a feedback variable) is input into the feedback controller 310. The feedback controller 310 comprises a comparator 324 that compares the measured response intensity y’ to a target ECAP amplitude u as set by the target ECAP controller 304 and provides an indication of the difference between the measured response intensity y’ and the target ECAP amplitude u. This difference is the error value, e.
[0064] The feedback controller 310 calculates an adjusted stimulus intensity parameter x with the aim of maintaining a measured response intensity y’ at or near the target ECAP amplitude u. Accordingly, the feedback controller 310 adjusts the stimulus intensity parameter x to minimise the error value, e. In one implementation, the controller 310 utilises a first order integrating function, using a gain element 336 and an integrator 338, in order to provide suitable adjustment to the stimulus intensity parameter s. According to such an implementation, the current stimulus intensity parameter x may be determined by the feedback controller 310 as ^^ ൌ^^^ ^^ ∙ ^^ ^^ ^2^
[0065] where G is the gain of the gain element 336 (the controller gain). This relation may also be represented in discrete form as ^^^ ^^^ ൌ ^^^ ^^ െ 1^ ^ ^^ ^^^ ^^^ ^3^
[0066] A target ECAP amplitude u is input to the feedback controller 310 via the target ECAP controller 304. In one implementation, the target ECAP controller 304 provides an indication of a specific target ECAP amplitude. In another implementation, the target ECAP controller 304 provides an indication to increase or to decrease the present target ECAP amplitude. The target ECAP controller 304 may comprise an input into the CLNS system 300, via which the patient or clinician can input a target ECAP amplitude, or indication thereof. The target ECAP controller 304 may comprise memory in which the target ECAP amplitude is stored, and from which the target ECAP amplitude is provided to the feedback controller 310.
[0067] A clinical settings controller 302 provides clinical settings to the system 300, including the feedback controller 310 and the stimulus parameters for the stimulator 312 that are not under the control of the feedback controller 310. In one example, the clinical settings controller 302 may be configured to adjust the controller gain G of the feedback controller 310 to adapt the feedback loop to patient sensitivity. The clinical settings controller 302 may comprise an input into the CLNS system 300, via which the patient or clinician can adjust the clinical settings. The clinical settings controller 302 may comprise memory in which the clinical settings are stored, and are provided to components of the system 300.
[0068] In some implementations, two clocks (not shown) are used, being a stimulus clock operating at the stimulus frequency (e.g.60 Hz) and a sample clock for sampling the amplified sensed signal r (for example, operating at a sampling frequency of 16 kHz). As the ECAP detector 320 is linear, only the stimulus clock affects the dynamics of the CLNS system 300. On the next stimulus clock cycle, the stimulator 312 outputs a stimulus in accordance with the adjusted stimulus intensity s. Accordingly, there is a delay of one stimulus clock cycle before the stimulus intensity is updated in light of the error value e.
[0069] Fig. 7 is a block diagram of a neural stimulation system 700. The neural stimulation system 700 is centred on a neuromodulation device 710. In one example, the neuromodulation device 710 may be implemented as the stimulator 100 of Fig. 1, implanted within a patient (not shown). The neuromodulation device 710 is connected wirelessly to a remote controller (RC) 720. The remote controller 720 is a portable computing device that provides the patient with control of their stimulation in the home environment by allowing control of the functionality of the neuromodulation device 710, including one or more of the following functions: enabling or disabling stimulation; adjustment of stimulus intensity or target response intensity; and selection of a stimulation control program from the control programs stored on the neuromodulation device 710.
[0070] The charger 750 is configured to recharge a rechargeable power source of the neuromodulation device 710. The recharging is illustrated as wireless in Fig. 7 but may be wired in alternative implementations.
[0071] The neuromodulation device 710 is wirelessly connected to a Clinical System Transceiver (CST) 730. The wireless connection may be implemented as the transcutaneous communications channel 190 of Fig.1. The CST 730 acts as an intermediary between the neuromodulation device 710 and the Clinical Interface (CI) 740, to which the CST 730 is connected. A wired connection is shownin Fig. 7, but in other implementations, the connection between the CST 730 and the CI 740 is wireless.
[0072] The CI 740 may be implemented as the external computing device 192 of Fig.1. The CI 740 is configured to program the neuromodulation device 710 and recover data stored on the neuromodulation device 710. This configuration is achieved by program instructions collectively referred to as the Clinical Programming Application (CPA) and stored in an instruction memory of the CI 740. Noise-robust feedback control
[0073] In the CLNS system 300 of Fig.5, the feedback loop response time is related to the loop gain PG. The larger the loop gain, the faster the loop is able to respond to changes such as a change in the target ECAP amplitude u. However, noise m at the input to the measurement circuitry 318 is passed through the detector 320 and becomes noise in the stimulus intensity x. This so-called stimulus noise may be perceived by the patient. The standard deviation ^stimulusof stimulus noise increases with the loop gain PG according to following equation: ^ೞ^^^ೠ^ೠೞൌ ^ ଶ ଶௌேோ^ଶି^ீെ 1 (4)
[0074] where SNR is the signal-to-noise ratio defined as the ratio of the target ECAP amplitude u to the standard deviation of the measurement noise m, and ^Itherapy is the therapeutic range of stimulus current.
[0075] In addition, change of posture by the patient causes change in the patient sensitivity P that affects the dynamics of the feedback loop, in particular by changing the loop gain PG.
[0076] Therefore, when setting the controller gain G, which effectively sets the speed of the feedback loop, there is a tradeoff between high speed, which renders the loop adaptable to rapid changes in the target or the patient characteristics such as posture, and low speed, which renders the loop robust to measurement noise.
[0077] A Kalman filter is an algorithm for estimating the state of a system with known dynamics via noisy measurements, where the statistics of the noise are also known. A CLNS system according tothe present disclosure uses a Kalman filter to estimate the neural response intensity y in the presence of noise on the output y’ of the ECAP detector 320.
[0078] Fig.8 is a schematic illustrating elements and inputs of a noise-robust CLNS system 800 that uses a Kalman filter to estimate the neural response intensity, according to one implementation of the present technology. The noise-robust CLNS system 800 is similar to the CLNS system 300 of Fig.5, with like labels indicating like elements, with a couple of differences. The integrator 338 has been replaced by a discrete integrator 838 such that the feedback controller 310 implements Equation (3). A box 808 that combines the patient sensitivity P, the measurement circuitry 318, and the ECAP detector 320, to produce the neural response intensity y replaces the dashed box 308 representing the neural tissue of the patient 108. The measurement noise m is added to the neural response intensity y at the summing element 313 to produce a noisy measurement y’ of the neural response intensity. The Kalman filter 830 uses the noisy measurement y’, along with the stimulus intensity x and the target ECAP amplitude u, to produce an estimate ^^^ of the neural response intensity y. After passing through a delay element 835, the neural response intensity estimate ^^^ is passed to the feedback controller 310. The presence of the Kalman filter 830 is the main difference from the CLNS system 300 of Fig.5, in which the noisy measurement y’ is passed to the feedback controller 310.
[0079] The other new element in the noise-robust CLNS system 800 is the disturbance d, an unknown, posture-related stimulus intensity offset that is added via the summing element 811 to the stimulus intensity x provided by the feedback controller 310. In a reference posture in which the patient sensitivity P and ECAP threshold T were measured, the disturbance d is the negative of the ECAP threshold T. Changes in the disturbance d model changes in the ECAP threshold T, sensitivity P, and artefact a induced by changes in posture. The disturbance (offset) d may therefore be regarded as a proxy for posture.
[0080] The Kalman filter 830 effectively increases the SNR of the measurement circuitry, thereby reducing the stimulus noise perceivable by the patient as per Equation (4). This effectively eases the tradeoff in selecting the controller gain G, allowing a larger value of G to be chosen so that the feedback loop adapts more quickly to posture change while maintaining the same perceived level of stimulus noise for a given amount of measurement noise. The CLNS system 800 may therefore be characterised as implementing noise-robust feedback control.
[0081] To formulate the Kalman filter 830, a state vector x is defined comprising the stimulus intensity x (which is known precisely as it is determined by the firmware implementing the feedback controller 310) and the unknown disturbance d at each time instant n: ^^^ ^^^ ൌ ൬^^^ ^^^^^^ ^^^^ ^5^
[0082] The disturbance d is predicted^^^^^ ^ 1^ൌ ^^^^^^^6^
[0083] while (ignoring noise) the stimulus is updated by the feedback controller according to the equation ^^^ ^^ ^ 1^ ൌ ^^^ ^^^ ^^ ^ 1^ െ ^^^ ^^^^ ^ ^^^ ^^^ (7)
[0084] where ^^^^^^ൌ ^^^^^^^^^^ ^^^^^^^^8^
[0085] Combining equations (6), (7), and (8), the state evolves from time instant to time instant according to ^^^ ^^ ^ 1^ ൌ ^^ ^^^ ^^^ ^ ^^^^^^^ ^^ ^ 1^ ^ ^^^ ^^^ (9)
[0086] where ^^ ൌ ^1 െ ^^ ^^ െ ^^ ^^^ ^10^
[0087] is the state transition matrix, ^^^^ൌ ^^^^11^
[0088] is the input transition vector, and w[n] is the process noise.
[0089] Because the state variable x[n], i.e. the stimulus intensity, is known precisely and therefore has no stochastic variation, its variance and its covariance with the other state variable d[n] are zero. Therefore, the covariance matrix Qn of the process noise w[n] is defined by ^^ ^^ ൌ ൬0 00^^^ଶ^ ^12^
[0090] where σଶ^ is the variance of the disturbance d[n] (same units as stimulus intensity x). In one example, set to 50 microamps. The process noise matrix Qn has a subscript n to indicate that incertain described below, it may vary with the time instant n.
[0091] The observation vector z[n] is ൬ ^^^ ^^^^^′^ ^^^^, recalling that the noisy measurement y’[n] is theresponse intensity y[n] plus the equation (8), the observation equationmay be written as ^^^ ^^^ ൌ ^^ ^^^ ^^^ ^ ^^^ ^^^ ^13^
[0092] where ^^ ൌ ^1 0^^ ^^^ ^14^
[0093] is the measurement matrix and ^^^ ^^^ ൌ ൬ 0^^^ ^^^^ ^15^
[0094] is the measurement noise vector.
[0095] The covariance matrix R of the measurement noise vector m[n] in Equation (15) is given by ^^ ൌ ൬0 0^^ଶ ^ ^16^
[0096] where σଶ^ is the variance of the measurement noise m[n]. This variance σଶ^ may be measured by repeatedly stimulating at a constant intensity and fixed posture, and measuring the variance of the resulting noisy measurement y’.
[0097] The Kalman filter has two stages that are applied alternately and repeatedly: the predict stage, and the update stage. The predict stage uses equation (9) to predict the state vector at the next time instant time n+1 from the estimated state at the current time instant n. The predict stage also predicts the uncertainty in the state vector estimate at the next time instant time n+1 from the uncertainty at the current time instant n. The update stage updates the predicted state vector estimate using the latest measurement, and also updates the state estimate uncertainty.
[0098] Fig.9 is a flow chart illustrating a method 900 of implementing the Kalman filter 830 within the noise-robust CLNS system 800 of Fig. 8 according to one implementation of the present technology. The method 900 may be carried out by the controller 116, configured by control programs 122, of the electronics module 110.
[0099] The method 900 starts at step 910, which initialises the time instant n to -1. Step 910 also initialises the state vector estimate and its uncertainty by assigning sensible values to the initial statevector estimate x^ି^^െ1^and its uncertainty matrix ^^ି^^െ1^. (A subscript n to a quantity indicatesthe latest time instant of information on which the quantity is based.) In one implementation of step ^910, x^ି^^െ1^ is set to^00^, and ^^ି^^െ1^ is set to^5 ൈ 10 005 ൈ 10^^. The initial state vectorestimate value is unimportant because the a high uncertainty, so thestate vector will be set to the measured state after the first stimulus.
[0100] Step 920 then increments the time instant n. This converts all quantities with a subscript n to quantities with a subscript n-1, and likewise converts all quantities defined at the time instant [n+1] to quantities defined at the time instant [n].
[0101] Step 930 then predicts the state vector at the time instant n from the state vector estimate at the previous time instant n-1 using a state prediction equation derived from equation (9): ^^^^ି^^ ^^^ ൌ ^^ ^^^^ି^^ ^^ െ 1^ ^ ^^^^^^^ ^^^ (17)
[0102] Step 930 also predicts the uncertainty matrix P at the time instant n from the available information at the previous time instant n-1 as follows: ^^^ି^^^^^ൌ ^^ ^^^ି^^^^ െ 1^^^்^ ^^^ ^18^
[0103] After step 930, a stimulus is delivered with an intensity of x[n], and a noisy measurement y’[n] is made.
[0104] Step 940 then updates the predicted state vector ^^^^ି^^ ^^^ from the step 930 based on the current observation vector z[n]. To do this, step 940 first determines a Kalman gain matrix K[n] from the predicted uncertainty ^^^ି^^ ^^^ from step 930 as follows: ^^^ ^^^ ൌ ^^^ି^^ ^^^ ^^்^ ^^ ^^^ି^^ ^^^ ^^்^ ^^^ି^(19)
[0105] Step 940 then updates the predicted state vector ^^^୬ି^^ ^^^ using the Kalman gain matrix K[n] and the current observation vector z[n] as follows: ^^^^^ ^^^ ൌ ^^^^ି^^ ^^^ ^ ^^^ ^^^^ ^^^ ^^^ െ ^^ ^^^^ି^^ ^^^^ (20)
[0106] Step 940 updates the predicted uncertainty ^^^ି^^ ^^^ from step 930 as follows: ^^^^ ^^^ ൌ ^ ^^ଶെ ^^^ ^^^ ^^^ ^^^ି^^ ^^^^ ^^ଶെ ^^^ ^^^ ^^^்^ ^^^ ^^^ ^^ ^^்^ ^^^ (21)
[0107] where I2 is the 2-by-2 identity matrix.
[0108] Finally, step 950 determines the estimate ^^^^ ^^^ of the neural response intensity y from the updated state vector x^^^ ^^^ using the second row of the measurement matrix H in the observation Equation (13): ^^^^ ^^^ ൌ ^^^ ^^^ ^^^^^ ^^^ ^22^
[0109] The estimate ^^^^ ^^^ of the neural response intensity y is used as the feedback variable for the loop. The method 900 then returns to step 920.
[0110] The estimated disturbance ^^^^ ^^^ (the second component of the state vector estimate ^^^^ ^^^) is a useful proxy for posture over time, or more specifically, the dynamic deviation of posture from the reference posture in which the patient sensitivity P was measured. Therefore, the noise-robust CLNS system 800 provides, at no extra cost, a dynamic estimate ^^^^n^ of posture over time in addition to its noise robustness.
[0111] In alternative implementations of the noise-robust CLNS system 800, the Kalman filter 830 may be made adaptive. In such implementations, a loop supervision process implemented by the controller 116, configured by control programs 122, monitors the state vector and enters an adaptive mode if the state vector, or a quantity derived therefrom, diverges too far from a corresponding measured quantity.
[0112] In some implementations, the loop supervision process subtracts the actual observation vector ^^^ ^^^ ൌ ൬^^^ ^^^^^′^ ^^^^ from the predicted observation vector ^^ ^^^^ି^^ ^^^ after the prediction step 930 tovector e[n]:^^^ ^^^ ൌ ^^ ^^^^ି^^ ^^^ െ ^^^ ^^^ ^23^
[0113] A transformation T may then be applied to the discrepancy vector e[n], and the norm of the result may be compared with a threshold ^ to determine whether to enter the adaptive mode. That is, the supervisor process enters the adaptive mode if, at time instant n, the norm of the transformed discrepancy vector exceeds the threshold ^: ‖ ^^ ^^^ ^^^‖ ^ ^^ ^24^
[0114] The adaptive mode continues for a number td of stimuli. At the start of the adaptive mode, the supervisor process re-sets the Kalman filter 830 to adapt the Kalman filter 830 to some step change that has notionally taken place.
[0115] In one such implementation, the transformation matrix T is set to ^0 00^^. Using this^transformation matrix T, the supervisor process effectively monitors the Kalman filter prediction ^^^^ି^^^^^of the disturbance (the second component of the predicted state vector ^^^^ି^^^^^). Thedisturbance prediction ^^^^ି^^^^^is compared with an instantaneous estimate ^^^^^^^of the disturbancederived from the measurement y’[n] of the neural response intensity as follows: ^^^^ ^^^ ൌ௬ᇲ^^^െ ^^^ ^^^ ^25^
[0116] If the Kalman filter disturbance prediction ^^^^ି^^ ^^^ diverges by more than the threshold ^ from the instantaneous estimate ^^^^^^^, the supervisor process enters the adaptive mode. In oneimplementation, the predetermined threshold ^ is set to 4* ^m / P where ^m is the standard deviation of the measurement noise.
[0117] On entering the adaptive mode, the supervisor process re-sets the Kalman filter 830 by applying a function g to the covariance matrix Qn of the process noise that depends on the number tc of stimuli since the re-set. In one implementation, at each stimulus while in the adaptive mode, the supervisor process sets Qnequal to the value given in Equation (12) plus an offset that is large, but decaying with the number of stimuli tc since the re-set, as follows: 00^^ ൌ^0 ^^^ଶ^ ^^ ^^ ^^ ^^ ^െ ^^௧^^^ ^26^
[0118] where a is a^ is a predetermined time constant, for example 16. Immediately after the re-set, that is for small values of tc, the offset dominates the covariance matrix Qnand therefore the uncertainty matrix P[n] and the Kalman gain matrix K[n]. This allows the Kalman filter 830 to adapt quickly to the new measurements y’[n], effectively discarding the history of measurements before the re-set. As time goes on after the re-set, i.e. tcincreases, Qnreverts to the its base value given in Equation (12), and the uncertainty matrix P[n] asserts itself again within the Kalman gain matrix K[n].
[0119] In an alternative implementation of an adaptive noise-robust CLNS system, the transformation matrix T in equation (24) is set to ^0 001^. Using this transformation matrix T, the supervisor process effectively monitors the^^^^ି^^ ^^^ of the neural response intensity by repeatedly comparing ^^^^ି^^ ^^^ with the measurement y’[n] of the neural response intensity from theECAP detector 320. If the prediction ^^^^ି^^^^^diverges by more than the threshold ^ (for examplefour times the standard deviation ^mof the measurement noise) from the measurement y’[n], the supervisor process enters themode as described above.
[0120] The supervisor process ends the adaptive mode having counted td stimuli since entering adaptive mode. In one implementation, the duration tdof adaptive mode is set to 24.
[0121] The act of re-setting the Kalman filter 830 effectively increases the speed of the feedback loop for a short interval so that the loop may adapt to a non-stochastic change in the properties of the “plant” (i.e. the patient) such as a posture change. In this way the above-mentioned tradeoff between loop speed and noise robustness is temporarily shifted in favour of loop speed upon detection by thesupervisor process that such a change has occurred. As the change is adapted to, the loop speed effectively gradually decreases as the Kalman filter 830 becomes more and more robust to noise. Thus an adaptive noise-robust CLNS system according to the present technology dynamically adjusts its loop speed set point to be adaptable to changing patient characteristics, while maintaining robustness to measurement noise under static conditions.
[0122] Figs. 10A and 10B contain graphs 1000 and 1050 illustrating the results of the noise-robust CLNS system 800, both adaptive and non-adaptive. The graph 1000 in Fig.10A contains a trace 1010 of the disturbance d[n] (in mA), which contains a step change simulating a posture change at approximately n = 100. The trace 1020 shows the disturbance estimate ^^^^ ^^^ from the “classic” (non-adaptive) noise-robust CLNS system 800. The trace 1030 shows the disturbance estimate ^^^^^^^fromthe adaptive noise-robust CLNS system 800. It may be seen that the trace 1020 is slightly slower to adapt to the step change in disturbance than the trace 1030, without any noticeable difference in static accuracy.
[0123] This is further illustrated in Fig. 10B, in which the trace 1060 shows the difference between the measured neural response intensity y’ in the “standard” CLNS system 300 of Fig. 5 and the estimated neural response intensity ^^^ in the classic noise-robust CLNS system 800, captured contemporaneously with the traces in Fig. 10A. The trace 1070 shows the difference between the measured neural response intensity y’ in the standard CLNS system 300 of Fig. 5 and the estimated neural response intensity ^^^ in the adaptive noise-robust CLNS system 800. In each trace 1060 and 1070 there is a deviation from zero coincident with the step change in disturbance. It may be seen that the deviation in the adaptive trace 1070 is smaller and settles sooner after the disturbance than the deviation in the non-adaptive trace 1060.
[0124] Fig.11 contains three graphs 1100, 1110, and 1120 illustrating the results of a standard CLNS system 300 of Fig. 5, a classic noise-robust CLNS system 800, and an adaptive noise-robust CLNS system 800. The graph 1100 contains a trace 1105 of the measured neural response intensity y’ in the standard CLNS system under the circumstances of a step change in the disturbance at approximately n = 100. The trace 1105 includes a certain amount of measurement noise. The graph 1110 contains a trace 1115 of the estimated neural response intensity ^^^ in the classic noise-robust CLNS system 800 under the same circumstances. It may be seen that the trace 1115 contains significantly less noise than the trace 1105. There is also a significant interval immediately after the step change in disturbance during which the trace 1115 deviates noticeably from the target value (indicated by the dashed line 1118). The graph 1120 contains a trace 1125 of the estimated neural response intensity ^^^in the adaptive noise-robust CLNS system 800 under the same circumstances. It may be seen that the trace 1125 contains significantly less noise than the trace 1105 and a similar level of noise to the trace 1115. In addition, the trace 1125 settles more rapidly to the target value after the step change than the trace 1115.
[0125] In alternative implementations of the noise-robust CLNS system according to the present technology, the patient sensitivity P may not be fixed, but may be allowed to vary. In one such implementation, as the target ECAP amplitude u is adjusted, for example in response to manipulation of the remote controller 720 as described above, the patient sensitivity P may be adjusted to the slope of the activation plot around the adjusted target ECAP amplitude u. In an alternative implementation, the patient sensitivity P may be adjusted as the estimated disturbance ^^^^ ^^^ varies, indicating variations of posture which imply variations in patient sensitivity, as illustrated in Fig.4b.
[0126] In further alternative implementations of the noise-robust CLNS system according to the present technology, more than one measurement electrode configuration may be utilised. The sensed signal from each measurement electrode configuration may be analysed by the measurement circuitry 318 and the ECAP detector 320 to produce multiple respective measurements y’[n], each of which forms a component of the observation vector z[n] (along with the stimulus intensity x[n]). Each measurement electrode configuration will have its corresponding sensitivity P and measurement noise m, so the measurement matrix H and the measurement noise covariance matrix R may be formulated by extension of Equations (14) and (16). Simplified noise-robust feedback control
[0127] In yet further alternative implementations of the noise-robust CLNS system according to the present technology, a more sophisticated controller than the integral controller of Figs.5 and 8 may be utilised, for example a proportional-integral controller or a proportional-integral-differential controller. Such implementations involve a longer state vector x[n] including previous values, e.g. x[n-1] and x[n-2], as well as the current value x[n], of stimulus intensity. Such implementations also involve reformulations of the matrices F and G in the state evolution equation (9).
[0128] In some implementations, the above matrix formulation of the Kalman filter 830 may be simplified based on a slightly different initialisation ^^ି^^െ1^ of the uncertainty matrix. In suchimplementations, ^^ି^^െ1^ is set to^0 0 based on an assumption that the initial covarianceof the stimulation intensity (thethan 5 x 106as described above. This is asafe assumption as the stimulation intensity x[n] is known at the first stimulus (n = 0). In addition, it may be observed from equations (9) and (17) that the prediction ^^^^ି^^^^^of stimulus intensity is guaranteed to be correct for all n, i.e. ^^^^ି^^ ^^^ ൌ ^^^ ^^^ ^27^
[0129] Based on these simplifications, it may be shown that the prediction step 930 may be simplified as follows: ^^^^ି^^ ^^^ ൌ ^^^ ^^^ ^28^ ^^^^ି^^ ^^^ ൌ ^^^^ି^^ ^^ െ 1^ ^29^
[0130] Likewise, the update step 940 may be simplified as follows: ^^^^^^^^ൌ ^^^^ି^^^^^^30^^^^^^ ^^^ ൌ ^1 െ ^^^ ^^^^ି^^ ^^^ ^ ^^ ^^^^ ^^^ ^31^
[0131] where ^^^^ ^^^ is the instantaneous estimate of the disturbance (equation (25)) and C is a mixing parameter that is determined as follows: ^^ ൌ^^మ^32^ ^
[0132] According to equation (31), the updated disturbance estimate ^^^^^ ^^^ may be determined as amixture of the instantaneous disturbance estimate ^^^^ ^^^ and the current disturbance estimate^^^^ି^^ ^^ െ 1^, where the mixture is governed by the mixing parameter C.
[0133] According to such implementations, there is no need to predict or update the uncertainty matrix P at steps 930 and 940, nor to determine a Kalman gain matrix K at all, saving a great deal of computation compared to the full matrix formulation. Likewise, the process noise matrix Q is not needed.
[0134] It may be shown that the mixing parameter C is bounded to the interval [0, 1]. The mixing parameter C is the weighting value between the previous disturbance value and the instantaneousdisturbance estimate (analogous to the Kalman gain matrix K). A low C (close to 0, i.e. ^^^ଶ≫ ^^ଶ^^^ଶ) puts more significance on the previous value, discounting the instantaneous estimate as it is too noisy. Conversely, a high C (close to 1, i.e. ^^^ଶ≪ ^^ଶ^^^ଶ) puts more significance oninstantaneous estimate, discounting the previous value as the disturbance is more volatile. The mixing parameter C therefore offers the possibility of dynamic control of the speed of the Kalman-filter-driven feedback loop.
[0135] According to such implementations, while the supervisor is in adaptive mode, since the process noise matrix Q is not needed, only the disturbance variance σଶ^ may be updated with a time- varying offset of ^^ ^^ ^^ ^^ ^െ ^^௧^௧^^. The mixing parameter C may be updated according to equation(32) before step 940.
[0136] Alternatively, the disturbance variance σଶ^ may not change. Instead, the mixing parameter C may be updated directly after each adaptive mode to emulate the effect of varyingσଶ^ . In one such implementation, the mixing parameter C is decreased linearly from 1 when entering adaptive mode to its base value given by equation (32) at the end of adaptive mode after td stimuli. In this way a simplified adaptive noise-robust CLNS system according to the present technology dynamically adjusts its loop speed set point to be adaptable to changing patient characteristics, while maintaining robustness to measurement noise under static conditions.
[0137] Fig.12 is a flow chart illustrating a method 1200 of implementing the Kalman filter 830 within the noise-robust CLNS system 800 of Fig.8 according to a simplified implementation of the present technology. The method 1200 may be carried out by the controller 116, configured by control programs 122, of the electronics module 110. The method 1200 is adaptive and generally lower in computation than the adaptive version of the method 900.
[0138] The method 1200 starts at step 1210, which initialises the time instant n to -1. Step 1210 also initialises the state vector estimate by setting x^ି^^െ1^ to ^00^. Step 1220 then increments the time instant n. Step 1230 then predicts the state vector x^^ି^^^^^using equations (28) and (29). After step 1230, a stimulus is delivered with an intensitya noisy measurement y’[n] is made.
[0139] Step 1240 then checks whether the Kalman filter 830 is currently in the adaptive mode. If so (“Y”), the method 1200 proceeds to step 1250. If not (“N”), the method 1200 proceeds to step 1245, which tests whether the discrepancy is too large, as defined by equation (24) with the transformationmatrix T in equation (24) set to ^0 001^. As mentioned above, this is equivalent to comparing the prediction ^^^^ି^^ ^^^ with the y’[n] of the neural response intensity. If the Kalman filter prediction ^^^^ି^^^^^divergesmore than the threshold ^ (for example four times the standard deviation ^m of the measurement noise) from the measurement y’[n], the discrepancy is too large. If not (“N”), the method 1200 proceeds to step 1270. Otherwise (“Y”), step 1255 enters the adaptive mode initialises the counter tc to 0.
[0140] At the next step 1250, the method 1200 decrements the mixing parameter C by a predetermined decrement as follows: ^^ → ^^ െ^௧^^1 െ ^^^^ ^33^
[0141] where C0 is given by Equation (32). Step 1250 then increments the counter tc. Step 1260 checks whether the counter tc has reached the adaptive mode duration td (at which instant C has reached C0). If so (“Y”), the method 1200 exits adaptive mode at step 1265, and proceeds to step 1270. If not (“N”), the method 1200 proceeds directly to step 1270. At step 1270, the method 1200 updates the predicted state vector x^^ି^^^^^to the current iteration n using the current measurement y’[n] and equations (30) and (31). Finally, step 1280 determines the estimate ^^^^ ^^^ of the neural response intensity y from the updated state vector x^^^ ^^^ as in step 950. The estimate ^^^^ ^^^ of the neural response intensity is used as the feedback variable for the loop. The method 1200 then returns to step 1220 for the next stimulus.
[0142] A non-adaptive version of the simplified implementation of Fig.12 would omit the steps 1240 through 1265 and keep the mixing parameter C constant at its equation (32) value for all stimuli.
[0143] It will be appreciated by persons skilled in the art that numerous variations or modifications may be made to the invention as shown in the specific embodiments without departing from the spirit or scope of the invention as broadly described. The present embodiments are, therefore, to be considered in all respects as illustrative and not limiting or restrictive. INDUSTRIAL APPLICABILITY
[0144] It is apparent from the above that the arrangements described are applicable to the health care industries.LABEL LIST stimulator 100 ECAP threshold 510 patient 108 ECAP threshold 512 10 520 12 600 14 700 16 710 18 720 20 730 21 740 22 750 24 800 26 808 28 811 30 830 50 838 60 900 70 910 80 920 90 930 92 940 00 950 02 000 04 010 08 020 09 030 10 050 11 060 12 070 13 100 18 105 19 110 20 115 24 118 36 120 38 125 02 200 04 210 08 220 10 230 12 240 02 245 04 250 06 255 08 260step 1265 step 1280 step 1270
Claims
CLAIMS:
1. A neuromodulation device for controllably delivering neural stimuli, the device comprising: a stimulus source configured to provide neural stimuli to be delivered via one or more stimulus electrodes of an electrode array to a neural pathway of a patient in order to evoke a neural response from the neural pathway; measurement circuitry configured to capture signal windows from signals sensed on the neural pathway via one or more measurement electrodes of the electrode array subsequent to respective neural stimuli; and a control unit configured to: control the stimulus source to provide a neural stimulus according to a stimulus intensity parameter; measure an intensity of an evoked neural response in a captured signal window subsequent to the neural stimulus; determine, using a Kalman filter, a feedback variable and an estimate of a posture of the patient from the measured intensity of the evoked neural response, the stimulus intensity parameter, and a target value; and adjust, using a feedback controller, the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
2. The neuromodulation device of claim 1, wherein the estimate of the posture is a disturbance to the stimulus intensity parameter that forms part of a state vector of the Kalman filter.
3. The neuromodulation device of claim 2, wherein the estimate of posture is relative to a reference posture in which a parameter of the Kalman filter was defined.
4. The device of any one of claims 1 to 3, wherein the feedback variable is an estimate of the intensity of the evoked neural response.
5. The neuromodulation device of any one of claims 1 to 4, wherein the Kalman filter is adaptive.
6. The neuromodulation device of claim 5, wherein the adaptive Kalman filter is configured to determine the feedback variable by:subtracting an observation vector comprising the stimulus intensity parameter and the measured intensity from a predicted observation vector provided by the Kalman filter to form a discrepancy vector; and re-setting, based on a norm of the discrepancy vector, the Kalman filter.
7. The neuromodulation device of claim 6, wherein the control unit is configured to apply a transformation to the discrepancy vector before determining the norm of the discrepancy vector.
8. The neuromodulation device of claim 7, wherein the transformation is such that the discrepancy vector is a difference between the measured intensity and the feedback variable.
9. The neuromodulation device of any one of claims 6 to 8, wherein the control unit is configured to re-set the Kalman filter upon the norm exceeding a threshold.
10. The neuromodulation device of any one of claims 6 to 9, wherein the control unit is configured to re-set the Kalman filter by applying a time-varying function to a covariance matrix of process noise of the Kalman filter.
11. The neuromodulation device of claim 10, wherein the time-varying function is an offset that decays with the number of stimuli since the re-setting according to a time constant.
12. An automated method of controllably delivering neural stimuli to a neural pathway of a patient, the method comprising: delivering a neural stimulus to the neural pathway of the patient in order to evoke a neural response from the neural pathway, the neural stimulus being delivered according to a stimulus intensity parameter; capturing a signal window from a signal sensed on the neural pathway subsequent to the delivered neural stimulus; measuring an intensity of a neural response evoked by the delivered neural stimulus in the captured signal window; determining, using a Kalman filter, a feedback variable and an estimate of a posture of the patient from the measured intensity of the evoked neural response, the stimulus intensity parameter, and a target value; and adjusting the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
13. The method of claim 12, wherein the estimate of the posture is a disturbance to the stimulus intensity parameter that forms part of a state vector of the Kalman filter.
14. The method of claim 13, wherein the estimate of posture is relative to a reference posture in which a parameter of the Kalman filter was defined.
15. The method of any one of claims 12 to 14, wherein the feedback variable is an estimate of the intensity of the evoked neural response.
16. The method of any one of claims 12 to 15, wherein the Kalman filter is adaptive.
17. The method of claim 16, wherein determining the feedback variable using the adaptive Kalman filter comprises: subtracting an observation vector comprising the stimulus intensity parameter and the measured intensity from a predicted observation vector provided by the Kalman filter to form a discrepancy vector; and re-setting, based on a norm of the discrepancy vector, the Kalman filter.
18. The method of claim 17, further comprising applying a transformation to the discrepancy vector before determining the norm of the discrepancy vector.
19. The method of claim 18, wherein the transformation is such that the discrepancy vector is a difference between the measured intensity and the feedback variable.
20. The method of any one of claims 17 to 19, wherein the re-setting re-sets the Kalman filter upon the norm exceeding a threshold.
21. The method of any one of claims 17 to 20, wherein the re-setting the Kalman filter comprises applying a time-varying function to a covariance matrix of process noise of the Kalman filter.
22. The method of claim 21, wherein the time-varying function is an offset that decays with the number of stimuli since the re-setting according to a time constant.
23. A neuromodulation device for controllably delivering neural stimuli, the device comprising: a stimulus source configured to provide neural stimuli to be delivered via one or more stimulus electrodes of an electrode array to a neural pathway of a patient in order to evoke a neural response from the neural pathway;measurement circuitry configured to capture signal windows from signals sensed on the neural pathway via one or more measurement electrodes of the electrode array subsequent to respective neural stimuli; and a control unit configured to: control the stimulus source to provide a neural stimulus according to a stimulus intensity parameter; measure an intensity of an evoked neural response in the captured signal window subsequent to the provided neural stimulus; determine, using a Kalman filter, a feedback variable from the measured intensity of the evoked neural response, the stimulus intensity parameter, and a target value, by: subtracting an observation vector comprising the stimulus intensity and the measured intensity from a predicted observation vector provided by the Kalman filter to form a discrepancy vector; and re-setting, based on a norm of the discrepancy vector, the Kalman filter; and adjust, using a feedback controller, the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
24. The device of claim 23, wherein the feedback variable is an estimate of the intensity of the evoked neural response.
25. The neuromodulation device of any one of claims 23 to 24, wherein the control unit is further configured to determine, using the Kalman filter, an estimate of a posture of the patient from the measured intensity of the evoked neural response, the stimulus intensity parameter, and the target value.
26. The neuromodulation device of claim 25, wherein the estimate of the posture is a disturbance to the stimulus intensity parameter that forms part of a state vector of the Kalman filter.
27. The neuromodulation device of claim 26, wherein the estimate of posture is relative to a reference posture in which a parameter of the Kalman filter was defined.
28. The neuromodulation device of any one of claims 23 to 27, wherein the control unit is configured to apply a transformation to the discrepancy vector before determining the norm of the discrepancy vector.
29. The neuromodulation device of claim 28, wherein the transformation is such that the discrepancy vector is a difference between the measured intensity and the feedback variable.
30. The neuromodulation device of any one of claims 23 to 29, wherein the control unit is configured to re-set the Kalman filter upon the norm exceeding a threshold.
31. The neuromodulation device of any one of claims 23 to 30, wherein the control unit is configured to re-set the Kalman filter by applying a time-varying function to a covariance matrix of process noise of the Kalman filter.
32. The neuromodulation device of claim 31, wherein the time-varying function is an offset that decays with the number of stimuli since the re-setting according to a time constant.
33. The neuromodulation device of any one of claims 23 to 32, wherein the feedback controller is characterised by a loop speed set point that is dynamically adjusted to be low when a posture of the patient is static and to be temporarily high when the posture of the patient is changing.
34. An automated method of controllably delivering neural stimuli to a neural pathway of a patient, the method comprising: delivering a neural stimulus to the neural pathway of the patient in order to evoke a neural response from the neural pathway, the neural stimulus being delivered according to a stimulus intensity parameter; capturing a signal window sensed on the neural pathway subsequent to the delivered neural stimulus; measuring an intensity of a neural response evoked by the delivered neural stimulus in the captured signal window; determining, using a Kalman filter, a feedback variable from the measured intensity of the evoked neural response, the stimulus intensity parameter, and a target value, by: subtracting an observation vector comprising the stimulus intensity and the measured intensity from a predicted observation vector provided by the Kalman filter to form a discrepancy vector; and re-setting, based on a norm of the discrepancy vector, the Kalman filter; and completing a feedback loop by using the determined feedback variable to control the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
35. The method of claim 34, wherein the feedback variable is an estimate of the intensity of the evoked neural response.
36. The method of any one of claims 34 to 35, further comprising determining, using the Kalman filter, an estimate of a posture of the patient from the measured intensity of the evoked neural response, the stimulus intensity parameter, and a target value.
37. The method of claim 36, wherein the estimate of the posture is a disturbance to the stimulus intensity parameter that forms part of a state vector of the Kalman filter.
38. The method of claim 37, wherein the estimate of posture is relative to a reference posture in which a parameter of the Kalman filter was defined.
39. The method of any one of claims 34 to 38, further comprising applying a transformation to the discrepancy vector before determining the norm of the discrepancy vector.
40. The method of claim 39, wherein the transformation is such that the discrepancy vector is a difference between the measured intensity and the feedback variable.
41. The method of any one of claims 34 to 40, wherein the re-setting re-sets the Kalman filter upon the norm exceeding a threshold.
42. The method of any one of claims 34 to 41, wherein the re-setting the Kalman filter comprises applying a time-varying function to a covariance matrix of the process noise of the Kalman filter.
43. The method of claim 42, wherein the time-varying function is an offset that with the number of stimuli since the re-setting according to a time constant.
44. The method of any one of claims 34 to 43, further comprising dynamically adjusting a loop speed set point of the feedback loop to be low when a posture of the patient is static and to be temporarily high when the posture of the patient is changing.
45. A neuromodulation device for controllably delivering neural stimuli, the device comprising: a stimulus source configured to provide neural stimuli to be delivered via one or more stimulus electrodes of an electrode array to a neural pathway of a patient in order to evoke a neural response from the neural pathway;measurement circuitry configured to capture signal windows sensed on the neural pathway via one or more measurement electrodes of the electrode array subsequent to respective neural stimuli; and a control unit configured to: control the stimulus source to provide a neural stimulus according to a stimulus intensity parameter; measure an intensity of an evoked neural response in the captured signal window subsequent to the provided neural stimulus; and adjust, using a feedback controller and the measured intensity, the stimulus intensity parameter so as to maintain a feedback variable at or near a target value, wherein the feedback controller is characterised by a loop speed set point that is dynamically adjusted to be low when a posture of the patient is static and to be temporarily high when the posture of the patient is changing.
46. The neuromodulation device of claim 45, wherein the control unit is further configured to determine, using a Kalman filter, the feedback variable from the measured intensity of the evoked neural response, the stimulus intensity parameter, and the target value.
47. The neuromodulation device of claim 46, wherein the feedback controller is configured to use the determined feedback variable to adjust the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
48. The neuromodulation device of any one of claims 46 to 47, wherein the control unit is further configured to determine, using the Kalman filter, an estimate of the posture of the patient from the measured intensity of the evoked neural response, the stimulus intensity parameter, and the target value.
49. The neuromodulation device of claim 48, wherein the estimate of the posture is a disturbance to the stimulus intensity parameter that forms part of a state vector of the Kalman filter.
50. The neuromodulation device of claim 49, wherein the estimate of posture is relative to a reference posture in which a parameter of the Kalman filter was defined.
51. The neuromodulation device of any one of claims 46 to 50, wherein the Kalman filter is adaptive.
52. The neuromodulation device of claim 51, wherein the adaptive Kalman filter is configured to determine the feedback variable by: subtracting an observation vector comprising the stimulus intensity and the measured intensity from a predicted observation vector provided by the Kalman filter to form a discrepancy vector; and re-setting, based on a norm of the discrepancy vector, the Kalman filter.
53. The neuromodulation device of claim 52, wherein the control unit is configured to apply a transformation to the discrepancy vector before determining the norm of the discrepancy vector.
54. The neuromodulation device of claim 53, wherein the transformation is such that the discrepancy vector is a difference between the measured intensity and the feedback variable.
55. The neuromodulation device of any one of claims 52 to 54, wherein the control unit is configured to re-set the Kalman filter upon the norm exceeding a threshold.
56. The neuromodulation device of any one of claims 52 to 55, wherein the control unit is configured to re-set the Kalman filter by applying a time-varying function to a covariance matrix of process noise of the Kalman filter.
57. The neuromodulation device of claim 56, wherein the time-varying function is an offset that decays with the number of stimuli since the re-setting according to a time constant.
58. An automated method of controllably delivering neural stimuli to a neural pathway of a patient, the method comprising: delivering a neural stimulus to the neural pathway of the patient in order to evoke a neural response from the neural pathway, the neural stimulus being delivered according to a stimulus intensity parameter; capturing a signal window sensed on the neural pathway subsequent to the delivered neural stimulus; measuring an intensity of a neural response evoked by the delivered neural stimulus in the captured signal window; adjusting, using a feedback loop and the measured intensity, the stimulus intensity parameter so as to maintain a feedback variable at or near a target value; anddynamically adjusting a loop speed set point of the feedback loop to be low when a posture of the patient is static and to be temporarily high when the posture of the patient is changing.
59. The method of claim 58, further comprising determining, using a Kalman filter, the feedback variable from the measured intensity of the evoked neural response, the stimulus intensity parameter, and the target value.
60. The method of claim 59, wherein the adjusting comprises using the determined feedback variable to adjust the stimulus intensity parameter so as to maintain the feedback variable at or near the target value.
61. The method of any one of claims 59 to 60, further comprising determining, using the Kalman filter, an estimate of the posture of the patient from the measured intensity of the evoked neural response, the stimulus intensity parameter, and the target value.
62. The method of claim 61, wherein the estimate of the posture is a disturbance to the stimulus intensity parameter that forms part of a state vector of the Kalman filter.
63. The method of claim 62, wherein the estimate of posture is relative to a reference posture in which a parameter of the Kalman filter was defined.
64. The method of any one of claims 59 to 63, wherein the Kalman filter is adaptive.
65. The method of claim 64, wherein determining the feedback variable using the adaptive Kalman filter comprises: subtracting an observation vector comprising the stimulus intensity and the measured intensity from a predicted observation vector provided by the Kalman filter to form a discrepancy vector; and re-setting, based on a norm of the discrepancy vector, the Kalman filter.
66. The method of claim 65, further comprising applying a transformation to the discrepancy vector before determining the norm of the discrepancy vector.
67. The method of claim 66, wherein the transformation is such that the discrepancy vector is a difference between the measured intensity and the feedback variable.
68. The method of any one of claims 65 to 67, wherein the re-setting re-sets the Kalman filter upon the norm exceeding a threshold.
69. The method of any one of claims 65 to 68, wherein the re-setting re-sets the Kalman filter by applying a time-varying function to a covariance matrix of the process noise of the Kalman filter.
70. The method of claim 69, wherein the time-varying function is an offset that decays with the number of stimuli since the re-setting according to a time constant.
71. A neuromodulation device for controllably delivering neural stimuli, the device comprising: a stimulus source configured to provide neural stimuli to be delivered via one or more stimulus electrodes of an electrode array to a neural pathway of a patient in order to evoke a neural response from the neural pathway; measurement circuitry configured to capture signal windows sensed on the neural pathway via one or more measurement electrodes of the electrode array subsequent to respective neural stimuli; and a control unit configured to: control the stimulus source to provide a neural stimulus according to a stimulus intensity parameter; measure an intensity of an evoked neural response in the captured signal window subsequent to the provided neural stimulus; update an estimate of a posture-related disturbance to the stimulus intensity parameter using the measured intensity, the stimulus intensity parameter, and a mixing parameter; estimating the intensity of the evoked neural response using the updated estimate of the posture-related disturbance; and adjust, using a feedback controller, the stimulus intensity parameter so as to maintain the estimated intensity at or near a target value.
72. The neuromodulation device of claim 71, wherein the control unit is configured to update the estimate of the posture-related disturbance by combining an instantaneous estimate of the posture-related disturbance obtained from the stimulus intensity parameter and the measured intensity, and a current estimate of the posture-related disturbance according to the mixing parameter.
73. The neuromodulation device of any one of claims 71 to 72, wherein the control unit is configured to estimate the intensity of the evoked neural response by multiplying a sum of theupdated estimate of the posture-related disturbance and the stimulus intensity parameter by a patient sensitivity.
74. The neuromodulation device of any one of claims 71 to 73, wherein the control unit is further configured to, before the updating: predict the intensity of the evoked neural response using the stimulus intensity parameter and the estimate of the posture-related disturbance; subtract the predicted intensity the evoked neural response from the measured intensity to form a discrepancy; and enter an adaptive mode based on a norm of the discrepancy.
75. The neuromodulation device of claim 74, wherein, the control unit is further configured, when in the adaptive mode, to decrement the mixing parameter by a predetermined decrement.
76. An automated method of controllably delivering neural stimuli to a neural pathway of a patient, the method comprising: delivering a neural stimulus to the neural pathway of the patient in order to evoke a neural response from the neural pathway, the neural stimulus being delivered according to a stimulus intensity parameter; capturing a signal window sensed on the neural pathway subsequent to the delivered neural stimulus; measuring an intensity of a neural response evoked by the delivered neural stimulus in the captured signal window; updating an estimate of a posture-related disturbance to the stimulus intensity parameter using the measured intensity, the stimulus intensity parameter, and a mixing parameter; estimating the intensity of the evoked neural response using the updated estimate of the posture-related disturbance; and adjusting, using a feedback controller, the stimulus intensity parameter so as to maintain the estimated intensity at or near a target value.
77. The method of claim 76, wherein the updating comprises combining an instantaneous estimate of the posture-related disturbance obtained from the stimulus intensity parameter and the measured intensity, and a current estimate of the posture-related disturbance according to the mixing parameter.
78. The method of any one of claims 76 to 77, wherein the estimating the intensity of the evoked neural response comprises multiplying a sum of the updated estimate of the posture-related disturbance and the stimulus intensity parameter by a patient sensitivity.
79. The method of any one of claims 76 to 78, further comprising, before the updating: predicting the intensity of the evoked neural response using the stimulus intensity parameter and the estimate of the posture-related disturbance; subtracting the predicted intensity the evoked neural response from the measured intensity to form a discrepancy; and entering an adaptive mode based on a norm of the discrepancy.
80. The method of claim 79, further comprising, when in the adaptive mode, decrementing the mixing parameter by a predetermined decrement.