Brian
Lenz
Mark
Christiansen
Adam
Prewett
CSE
477
May
14, 2001
In this document, we will be reviewing the final design of the Etank. We will point out the issues of the design that need some fine-tuning. First, we will review slight sonar miscalculations that will occur with the remote unit on the tank. Second, we will look at concerns with moving the tank in reverse. Third, we analyze the scenario when the tank becomes parallel to a close wall. Finally, we discuss methods of slowing the tank down for better control.
The tank uses sonar to calculate the distance to an object such as a
wall. This works perfectly some of
the time. Unfortunately, it only
works perfectly when the tank is staying still.
When the tank is moving, the ability to calculate a distance will be
affected by the speed of the sonar waves. With
this latency, the tank will move farther than it thinks it has.
Although we initially looked at the Doppler Effect as a source of error
to the sonar distance calculation, it is an insignificant amount of error.
Shown below is the shift in frequency that the Doppler Effect will create
if the tank moves roughly 1.22 m/sec. The
velocity of the tank is doubled because the sonar wave is reflected off the wall
before it returns.
fr = f0 ( ( c + vr ) / c ) (fr
received frequency; f0 emitted frequency; c propagation speed; vr
receiver speed)
= 49,400((340 + (1.22*2))/340)
= 49,755 Hz
Since the tank moves slow
compared to the speed of sound (340 m/sec) there is a miniscule shift in
frequency. If we wanted to
calculate the error due to the Doppler Effect, we would have to measure the
received frequency. Then we would
use the received frequency to calculate the tank’s velocity, and compare it to
the real velocity. This difference
in velocity would then show us the error in distance.
However this error is insignificant to another error in using sonar to
calculate distance.
The tank uses the time it takes
to transmit and receive a sonar wave to calculate the distance to the wall.
Due to this, there will be an associated amount of error when the tank is
moving. To analyze this error, lets
look at a typical situation. The
tank is moving towards a wall at 1.22 m/sec.
When it is five meters away, the sonar will send a wave.
It will take roughly 30 milliseconds for this wave to return.
In 30 milliseconds worth of time, the tank will have moved 36
millimeters. Since the sonar module
uses the time for the sonar wave to return, it will think it is 4.982m away from
the wall, when it is actually 4.864m away.
This error is already much greater than the +/- 10mm tolerances desired. Taking
this into account, will give error of roughly 20mm.
Although the Doppler Effect is insignificant and will not need to be
considered, the propagation delay of the sonar waves should be.
In the last
section of this design review, we discuss means of slowing the tank down to
achieve better control. If this is
done successfully, then the propagation delay issue will become less
significant, helping the Etank achieve better tolerances.
Since the Etank is designed for educational purposes, one must account
for malicious or new users who can harm the system.
While the front of the tank has sonar to ensure that no one can run the
tank into a wall while moving forward, the back has no such safeguards.
There are several possible solutions to this problem.
One solution could be to add sonar to the rear of the tank.
This of course would take a significant amount of time to add to the
design. However, the additional
design would be similar to the sonar on the front of the tank.
Another solution would be to keep track of the location of the tank while
it is in the environment. Since the
environment is known, the tank could track its movement, and ignore any
instructions if it would mean jeopardizing the tank.
If the tank is not controlled carefully, it could also get stuck in the
environment by colliding with a wall. For
example, the tank could approach a wall at an angle.
When the tank becomes too close, it will come to a stop.
The user could then specify for the tank to turn so that the tank moves
in parallel along the wall. If
the tank is too close to the wall, it will be unable to turn the full angle.
Under the current design, the tank will just keep trying to turn until
either the battery or motor dies. This
is not acceptable.
One solution to this problem is to create a buffer zone.
This could be a carefully chosen distance in which the tank would stop
when it came close to the wall. This
distance could also change dynamically depending on the angle of approach.
This would be necessary since an approach at a wider angle will need a
much larger buffer zone, if it is going to be detected with sonar.
As long as the tank stays away from the wall at the maximum distance of
the largest turn radius, then it should never get stuck.
Another solution to fixing the problem of getting caught on a wall would
be to keep track of rotation. If
the tank was trying to turn, and it had not made progress since its last update,
then the user could assume it is stuck on an object.
The tank could then transmit an error message back to the user telling of
its problems. How it behaves from
there would be up to the user.
Since the tank moves at approximately 1.22 meters/second it will be very
difficult to control precisely. Also,
the sonar pulses occur every 250 milliseconds.
This will make it possible for the tank to move about 0.3 meters in
between updates. This is especially
undesired because the tolerance of the system is supposed to be +/- 10
millimeters. In order to achieve
more realistic precision, it is essential to slow the tank down.
Although slowing the tank down may not necessarily achieve these high
precision tolerances, it will give the user much more precision.
We also feel that these tolerances are unreasonably precise for the tank.
We see tolerances of +/- 4 cm to be more appropriate.
Specific ways of slowing down the tank include putting weight on the
tank, using a voltage regulator to lower the voltage given to the motors, or
controlling the tank in movement bursts.
One
problem that putting weight on the tank may bring is that it may be overly
bearing on the motors or other components of the tank.
Since the tank is made out of plastic, it is unable to support a
significant amount of weight.
Controlling the tank in movement bursts may work, but it will give the
tank jerky movement. This could be
less than desirable however, especially if the tank will be drawing pictures in
the environment. The pictures would
not turn out to be smooth.
Using a voltage regulator to slow down the motors is probably the best
alternative. It will slow down the
tank without jerky movements or unnecessary strain.
We suggest using a voltage regulator.
Overall, we feel that the Etank members are making excellent progress on
their project. They have taken a
serious look at all of the communication issues, and now need to focus on the
more implementation-specific details.
In order to make the tank more user-friendly, they may want to consider
slowing it down. They may also want
to take into consideration the propagation delay of sonar waves, and the error
they will receive in using the sonar in pulses.
It is important that new or malicious users do not damage the tank and
that the tank will not get caught up on any walls.
Group E seems to be doing a fine job, and they can easily meet their expected deadlines to finish the project.