Download FinalKyleS_paperDec9Revised

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts

Resistive opto-isolator wikipedia , lookup

Mains electricity wikipedia , lookup

Voltage optimisation wikipedia , lookup

Stepper motor wikipedia , lookup

Pulse-width modulation wikipedia , lookup

Buck converter wikipedia , lookup

Switched-mode power supply wikipedia , lookup

Variable-frequency drive wikipedia , lookup

Opto-isolator wikipedia , lookup

Rectiverter wikipedia , lookup

Transcript
Animal simulated balance in robots
Kyle R. Snipes
University of Illinois at Urbana-Champaign
2007
Motivation
The functionality and role in the real world of robots is limited by their mobility. It’s not
difficult to get a robot to move inside a lab or other isolated environments, but in the real world
obstacles arise. Autonomy in motion would open up new functions for them to perform.
Autonomous robots would be able to handle search and rescue, construction and inspection, and
various other examples more effectively. In order to achieve autonomous motion and overcome
unpredictable obstacles, a robot needs to be able to self balance.
Many attempts have been made to program robots to balance themselves using predictive
algorithms. These algorithms do not provide real-time feedback and cannot account for all
obstacles that may arise. Animals and humans alike possess the mechanisms to balance in a nonpredictive, but rather reactive way. It is my goal to develop a robot that uses similar neuronal
mechanisms as animals to balance.
Many invertebrates sense their orientation with respect to gravity using statocysts, which
are hair cells embedded in a gelatinous membrane. When body position changes, the membrane
bends the hair cells accordingly which activate sensory neurons. Vertebrates use a similar
structure, found in the inner ear. The hair cells are contained in two chambers known as the
utricle and saccule. Both are embedded in a gelatinous membrane called the otolith membrane.
Due to their differing orientations within the otolith membrane, the utricle is more sensitive to
horizontal acceleration while the saccule is more sensitive to vertical acceleration. The
acceleration in either direction causes the hair to bend, generating action potentials in associated
sensory neurons. The utricle and saccule labyrinth forms three semicircular canals oriented in
three planes to detect angular acceleration in three dimensions. The saccule, utricle, and
semicircular canals make up what is known as the vestibular apparatus1.
Proprioceptors are another mechanism used to determine body position. A proprioceptor
is a sensory receptor within tendons and joints that provides information about relative position
and movement of body parts. Muscle spindles are stretch receptors comprised of several muscle
fibers. When a muscle stretches, the spindles are elongated and attached sensory neurons fire.
Muscle contraction exerts tension on tendons attached to the muscle, which is monitored by the
Golgi organ, another type of proprioceptor1.
To implement a balance system in robots, regardless of which type of receptive system
used, there are several factors that come into play. Detection, compensation, and inherent
stability all need to be taken into account and achieved and various levels. Detection is the ability
of the robot to sense outside forces upon it. The information detected needs to be interpreted in a
meaningful way so that the robot may later perform an appropriate action. In balance control,
this translates into the detection of deviation of e.g. a limb, from the desired position. Once
detection is complete, a robot must compensate for the deviation detected. Again, in balance
control this translates into returning the limb to the desired position. When a system
overcompensates, a cycle of detection and compensation begins again. The inherent stability is
the physical properties of the system that influence the amount of deviation detected and
compensated for. A balance system that is inherently stable will naturally be able to balance
itself with little compensation. On the other hand, an inherently unstable will enter a cycle of
constant detection and compensation.
Design
For this project, I have developed a robot that utilizes a balance system modeled after animal
proprioception. The physical design of this project is a simple leg made of balsa wood attached
at a pivot. At the top of the leg is an accelerometer (DE-ACCM5G) which acts in a manner
similar to a proprioceptor as the detection unit of the control system. Connected by strings to the
leg are two basic DC motors. Figure 1 depicts the setup.
Accelerometer
Leg
String
Motor
Axle
Figure 1. The mechanical model of the leg hooked to the vestibular system and motors. The leg
falls perpendicular to the axle, with the accelerometer reading the angle.
The leg is attached to the axle in a manner that allows it to fall freely in to the right or the left
(towards each motor) perpendicular to the axle pivot. The accelerometer attached to the top of
the leg reads its angle position with respect to the X axis. This output is then sent to the
corresponding neuron which then generates a signal sent to the corresponding motor. Figure 2
depicts this.
Accelerometer
- Offset (2.5V)
+ Offset (2.5V)
+
_
Left OpAmp
+
_
Right OpAmp
Left Neuron
Right Neuron
Left Motor
Right Motor
Figure 2. Accelerometer outputs voltage dependent on angle of inclination with respect to the X
axis. This voltage is offset by +/- 2.5V and sent to the corresponding neuron which then
generates a signal to be sent to the corresponding motor.
The motors spin corresponding to the signal received and will spin, tightening the string and
pulling the leg towards the spinning motor. The motors are responsible for compensation of the
system.
The leg is designed to be inherently unstable; meaning on it will remain in a cycle of
detecting a fall and overcompensating. The leg is attached loosely on the axle to minimize
friction and maximize instability.
Principles of operation
At 90 degrees (upright) the accelerometer outputs a value of 2.5V. At 0 degrees
(horizontal to the left) it outputs 2.8V and at 180 degrees (horizontal to the right) it outputs
2.26V. This output is then offset by +/- 2.5V via a differentiating opamp.
The opamp differentiator (Figure 2 Left OpAmp, Right OpAmp) works by subtracting
the – input from the + input. The 2.5V offset then prevents both neurons from firing at the same
time, causing both motors to never run at the same time. This is because when the accelerometer
is to the right (output > 2.5V) for example, the left opamp (offset – accelerometer output)
produces a negative value and the left neuron doesn’t fire. Similarly, when the leg falls to the left
(output < 2.5V), the right opamp (accelerometer – offset) produces a negative value, preventing
the right neuron to fire.
Figure 3. The electrical circuit model of the sensory input to the vestibular neuron. Voltage
output of the accelerometer is being offset by the voltage divider Rdiv (2.5 volts). This difference
is amplified by the OpAmp (AD622N). Amplification gain is set by Rgain (2.7 KOhm). The buffer
stabilizes the output of the sensory system.
The neurons used are based on the Hodgkin-Huxley model. Figure 4 depicts the neuron
circuit diagram.
Figure 4. The electrical circuit model of the vestibular neuron. Cmem gradually charges up.
Once it reaches the threshold voltage set by R1, a spike is produced similar to an actual neuron.
The inverter is present to invert the pulse sent from the output from high to low and vice versa.
The diode D1 is present to control the direction of the current. Rdisch regulates how much
current is drawn out of Cmem which is the rate of discharge.
Figure 5 shows the input-out characteristics of the various electrical components of the
simulated vestibular system.
B
0.01200
2.50
0.01000
2.00
0.00800
1.50
0.00600
1.00
0.00400
0.00200
0.50
0.00000
0.00
2.26
2.29
2.35
2.39
2.41
Voltage, V
2.45
2.49
Neuron Input, Volts
3.00
Vout, Volts
Firing Frequency, Hz
0.01400
2.55
0.01600
2.5
0.01400
2.45
0.01200
2.4
0.01000
2.35
0.00800
2.3
0.00600
2.25
2.2
0.00400
2.15
0.00200
2.1
Firing Frequency, Hz
A
0.00000
40
50
60
70
75
80
90
Angle, Degrees
Figure 5. Electrical properties of the artificial vestibular system. A. Input-output characteristic
of the OpAmp within the context of the circuit on figure 3 (orange squares) and of the neuron
(blue circles). B. Input translation from accelerometer to neuron input (blue circles) and output
characteristic of the neuron with respect to angle reading from accelerometer (orange squares).
As you can see from Figure 5A, the accelerometer and neuron (with 5V input) follow a linear
input-output characteristic. The non-linearity of the opamp, from Figure 3, causes the input of
the neuron to become non-linear which in turn produces a non-linear output. What this lead to
was the neuron firing faster as the leg fell until it topped out a certain value. For this project,
being inherently unstable was not a bad thing. The purpose was not to build a robot that was
fully self-balancing, but instead study how to make one. The input-output response of the neuron
was what we were investigating. Being inherently unstable allowed us to better observe how the
neuron responded to a falling leg.
Photos
A.
Accelerometer
OpAmp
Leg
Neuron
B.
Figure 6. Photographs of the physical and electrical components. A. Photographic
representation of figure 1. B. Photographic representation of figure 4.
Future Work
To complete my research there is more work to be done. I still need to hook two neurons
up to the design. We know the design works in both directions (+X and –X) because I tesed that
using a single neuron one direction at-a-time, but I did not have two neurons hooked up at once.
Also, after testing we saw that the DC motors do in fact work with the circuit when they are
connected by means of a classic H-bridge, but have yet to fully hook them up and tweak them.
More work I would like to do is combine projects with others working alongside me. A
more realistic neuron was developed as well as synapse. The neuron developed can handle signal
modulation whereas mine does not.
References
1. Peter H. Raven, George B. Johnson, Jonathan B. Losos, Susan R. Singer
Biology 2005:974-979.