Alignment Algorithm for the Vestibular Prosthesis
8/27/2007

Brian Hensley

Seattle University

Through

University of California, Irvine

Mentors:

Dr. A. Shkel

University of California, Irvine

Ilya Chepurko

Table of Contents

Abstract

Key Terms

Introduction

Motivation

Problem Statement

The Vestibular Organs

The Vestibular-Ocular Response

The Vestibular Prosthesis

Transfer Function

Methods and Materials

Rotational Algorithm

Tests

Electric Simulation

Results

Rotation of a Single Gyroscope

Results

Inclined Rate Table Test

Results

Strength of Latches

Comsol Model

Results

2D Displacement Test

Results

Discussion

Future Tests

Acknowledgements

Bibliography

Appendix A

Abstract

Foreseeable surgical implementation procedures for the vestibular prosthesis (VP) are complex and may not always be able align the VP perfectly due to health concerns. So an algorithm was derived to compensate for the difference between the actual rate of angular rotation of the person and measured rate of angular rotation of the gyroscope in the VP to make the surgical procedure for implementation of the VP require less precision. The algorithm changed the output frequency of the processor depending on angle of incline of the gyroscope. A software implementation (alteration of the VP code) will be easier to adjust than a hardware one, which would require more surgery to physically move the VP. First the single axis gyroscope was tested, first by electric simulation and then actual rotation using a rate table. The algorithm was tested by modifying the code, putting the gyroscope at an incline on the rate table and monitoring the output and checking it against the previous experimental values and the model values. The modified output of the gyroscope mimicked those of the model showing that the rotational axis algorithm successfully accounts for gyroscopes at an angle. From there the rotational axis algorithm can then be applied to the VP as a means of axis compensation.

Key Terms

Rotational Algorithm, Rotational Axis, Semicircular Canals, Vestibular Prosthesis, Vestibular-Ocular Response

Introduction

The vestibular prosthesis is meant to imitate the natural vestibular organs. To better understand why and how the vestibular prosthesis works background on the vestibular system is needed.

Motivation

Although not technically a sense, one’s balance is as important as the five senses. Rarely noticed, it allows one to act and do most physical activities. When someone is diagnosed with a vestibular disorder it is very debilitating and does not allow for them to return to the life they had previously led. Every year more than one billion dollars (USD) is spent on more than two million Americans who are plagued by balance disorders [1]. Balance disorders are more dangerous for the elderly, who are at a higher risk for serious fractures from falling. A vestibular prosthesis could help to lower the amount of money spent for treatment of vestibular disorders and help to prevent more serious injuries to people.

During surgery, problems could arise which would not let the surgeon implement the vestibular prosthesis with the correct axis of orientation. Another problem with an implantable vestibular prosthesis is that it could shift, causing the sensing axis to become misaligned. To fix either of these problems another surgery would be required, which would be costly, possibly painful, and risk infection. But with a rotational axis algorithm, only the code of the vestibular prosthesis would have to be changed. This process would not be costly nor would it require surgery.

Problem Statement

Using the work which has been previously done on the Vestibular Prosthesis (VP) (creating a test single axis gyroscope, not to scale) we want to alter the output of the microchip so that it will account for the change in incline. After this is done with one gyroscope it needs to be applied to three single-axis gyroscopes. Also, the final design of the VP needs to be tested by conducting simulated strength tests.

The Vestibular Organs

Figure 1: The Vestibular Organs and Cochlea [2]

A person’s sense of balance comes from the vestibular organs located in their inner ear. There are three major parts to the vestibular organs, the semicircular canals, utricle, and saccule. The semicircular canals are responsible for giving a person a sense of their angular acceleration; the utricle and secular are the organs detecting linear acceleration [3]. There are three semicircular canals, the horizontal, posterior and the superior (sometimes referred to as the anterior) canals. They start from the inner ear and bend out each making roughly two thirds of a complete circle [4]. The canals are roughly orthogonal to each other. The superior and posterior canals have an average angle of 83 to 85 degrees between them [4]. When they meet back up with the inner ear there is a large hollow bump called the ampulla. Inside of the ampulla there is a flap called the cupula. Inside of the cupula there are sensory hair cells, which become excited based on the movement of the cupula. The hair cells are on a ridge known as the crista [4]. Around the cupula, and inside of the semicircular canals, there is fluid called endolymph. When a rotation in the plane on which the canal is situated occurs, the fluid starts to rotate inside of the hollow bone structure. As this fluid moves, it pushes up against the cupula, which it deflects from its original position. This deflection causes the sensory hair cells inside of the cupula to become excited and they relay their signal to the brain. Deflection in one direction causes an increase in the rate of signal and in the opposite direction a decrease in the rate of the signal [4]. When no rotation is occurring there is still a signal being produced by the vestibular nerves; this is referred to as the steady state signal [4].

The Vestibular-Ocular Response

When you turn your head and look radially outward, the vestibular-ocular response (VOR) is evoked. While the head is still rotating, the eyes move 10 degrees in the opposite direction of rotation to stabilize an image on the back of the retina. This response is not sensed, but is incredibly useful. If the rotation continues for an extended period of time (> 30s) and then ceases, the endolymph fluid will have adjusted to the rotation and continue to spin. This causes the VOR to continue causing temporary disorientation. The cupula will slowly return to its normal position and the sensation will cease. This explains why after spinning around and suddenly stopping, your vision continues to spin.

The Vestibular Prosthesis

The Vestibular Prosthesis (VP) does not rely on the body’s organs to detect movement. Instead it is fashioned with three MEMS linear accelerometers and three MEMS single axis gyroscopes. Having one sensor on three orthogonal planes allows measurement in any direction. A cube is therefore an ideal shape for the VP because the gyroscopes and linear accelerators both have three orthogonal surfaces to attach to. Once rotation occurs and is sensed by one of the gyroscopes, a voltage is output to the processor. The processor measures the frequency of the voltage produced by the gyroscope and uses this as the input to the transfer functions.

Transfer Function

Transfer functions define the flow of the endolymph within the semicircular canals as well as the nerve pulse output [5]. The function that relates the shift in frequency to the angular rotation in the Vestibular Prosthesis is

(1)

where ∆f is the shift in frequency, α is the angular acceleration, and τA,τL,τ1,τ2 are time constants. The time constants have an asymptotic effect on the graph causing it level into two plateaus and slant between them. These constants are slightly different for every person; for this experiment the values are the mean values from squirrel monkeys as found in Fernandez and Goldberg, 1971. The equation produces the following graph:

Figure 2: Model of Fernandez and Goldberg Transfer function

The transfer function takes the analog signal from the gyroscope and uses the initial transfer function which converts it to the s domain. Then using the bilinear transfer function,

(2)

Where f is the Nyquist frequency and z is the variable of the digital domain, the equation moves from the s-domain into the z-domain so that it can be interpreted by the digital processor. The voltage is then converted to biphasic current pulses, which are passed along the nerves until they are received and interpreted by the brain.

Methods and Materials

Rotational Algorithm

A gyroscope can only detect rotation about its axis of orientation. So if the VP were implanted so that its axes did not match up with those of the patient, the perceived direction and magnitude of rotation would be different. A rotational axis algorithm changes the sensed rotation by the gyroscope and converts it to the rotation that should be sensed by the patient. The rotational algorithm used in this gyroscope relies on the idea of vector projection. Considering the idea of two vectors in a single plant at an angle < 90°:

Figure 3: 2D Vector Projection [6]

The w vector was projected onto the v vector to create the u vector in the direction of the v vector. The length of the u vector is:

|u| = w cos (θ)(3)

Where w is the length of the w vector and θ is the angle between the v and w vector. This idea was implemented into the VP’s code. Each gyroscope can only sense rotational change in one direction. This direction can be thought of as a vector, and the rotation about this axis is what is sensed. The processor takes the sensed rotation and performs the transfer function on the signal.

Another rotational algorithm was tested. This approach changes the output signal of the gyroscope before it is changed by the transfer function. The gyroscope was tested at various inclines without changing the code. As the incline increased the output signal of the gyroscope decreased, as seen in Figure 4.

Figure 4: Graph of Angle of Incline of Gyroscope vs. Gryoscope Output

This graph was characterized using the curve fitting tool in MATLAB. The equation was expected to be a cosine equation because of how the signal decreases due to scalar projection. The equation produced was:

(4)

Where a = .3831, b = .01779, and c = 1.531. The equation is a cosine equation without the phase shift variable, c. From equation 4, the response of the gyroscope is known for any angle (0°-90°). So, if the gyroscope is at a known elevation, the response is and what it should be are known. From this we can use a generalized cosine equation:

(5)

Where is the gyroscope’s response for any given angle, is the maximum gyroscope response, and is the degree of incline. The gyroscope’s output is divided by the cosine of the angle of incline. This raises the signal to the full output.

Tests

Electric Simulation

Before any tests could be done with the VP, the microchips had to be tested to ensure that the code and processor were functioning properly. A VP test microchip was created without an attached gyroscope (otherwise, the microchip was exactly the same to the VP gyroscope microchips used later in the experiment). In its place there were two wires, which allowed for DC and AC voltage (the DC voltage was needed to create the 2.5V offset to reach the steady state voltage of the Vestibular Organs) to be connected; these would take the place of the gyroscope’s output. The AC voltage mimicked constantly changing angular rotation. Another two wires where attached to the output of the processor. This was done so the output of the VP could be monitored. The output wires were connected to a Digital Signal Analyzer, which allowed the AC voltage generator to run through various frequencies while the magnitude of the output was monitored and recorded. The data had to be converted into a readable format for MATLAB.

Results

Figure 5 shows the graph of the model and the experimental data to show how the two graphs are similar. The frequency was graphed versus the magnitude of the wave on a Bode plot using MATLAB. The results matched the shape of the transfer function’s graph as seen in the figure below.

Figure 5:Experimental Frequency response graph generated from the electrical simulation test

However, it does not line exactly up with the model transfer function. The model and the experimental are graphed together in figure 6. There are two regions where the graphs do not line up; they are titled regions one and two, respectively. In region one, the deviation from the model is due to the frequency’s being smaller than the noise produced by the electronics. This is unavoidable at frequencies of this magnitude. In region two, the frequency approaches the Nyquist frequency (which is half the sampling frequency, in this case 244 Hz).

Figure 6:Model (Blue) and Experimental (Red) frequency response graphs from electrical simulation test

Rotation of a Single Gyroscope

After the code of the VP was verified using a set voltage, an actual rotation test had to be preformed to see if the output of gyroscope would match up to the known voltage. A range of frequencies was tested (.1 – 25 Hz) but had to be limited due to limitations of the rate table. The VP microchip was put onto a level rate table while wires were attached to the output of the gyroscope and the output of the processor. The wires were extended up so they would not get caught or wound up causing the gyroscope to give incorrect data. These wires were then connected to a digital oscilloscope so the data could be observed and recorded. The output of the gyroscope and the output of the processor could be monitored independently. The data was saved in a format which could be opened by MATLAB. The maximum and minimum points of each wave were recorded after they were viewed using the plot command (a filter was also used when viewing the outputs; this was designed specifically for this data using MATLAB). From these points the baseline of the wave can be found by taking an average of the two points. The amplitude of the wave is then found by subtracting the height of the baseline from that of the maximum point. Once the amplitude of each wave was calculated for each of the outputs, a ratio of the output of the transfer function (processor) over the output of the gyroscope was obtained. These points were then put onto the theoretical graph to see how they lined up with the graph. Only six data points were taken because the rate table could only generate movement along a select range of frequencies.

Results

All of the points are close to the model result, showing that the rotational algorithm works for a rotation test without any incline. This then became a model to try and imitate for the incline rotational tests.

Figure 7:Frequency Response graph with data points from single axis gyroscope rotation experiment

Inclined Rate Table Test

Figure 8:Example of an inclined gyroscope (green)

For the inclined tests, one end of the gyroscope was propped up while the other remained on the surface of the rate table. Using calipers to measure the height and the length of the gyroscope’s circuit board gives the necessary information to solve for the angle of incline. Given a height of Y, a circuit board length of X, and an angle between the rate table and the microchip of θ, the math is :

(6)

Once the angle was known, the code was updated using the idea of vector projection to account for the new angle. Four angles were chosen to model this feature. For each angle, the 10 different frequencies were tested, ranging from .1 to 25 Hz. The data points were measured using the same method as described for the single axis gyroscope at no incline in the previous experiment.

Results

The data points were plotted on the frequency response graph. They lined up very close to the model frequency response graph for every frequency. This is shown in figure 9; the frequency response graphs for all the inclines measured are shown in Appendix A.

Figure 9: Frequency response graph with all incline data points plotted

The results from the single axis incline test show that the rotational axis algorithm accurately modifies the signal of the gyroscope back to 0° (flat) orientation.

The second rotational algorithm was also tested. The gyroscope was put at a known incline in the same manner as the first rotational algorithm and was tested with the same frequencies.