Wifi Helper (ANTS)

advertisement
Department of Electrical and Computer Engineering
332:421 Wireless Communication Systems
December 17, 2009
ANT: Automatic Network Transmitter
Written by:
Dan Mendat
Katy Qian
Murium Iqbal
Yuriy Shames
Under the guidance of:
Professor Christopher Rose
Abstract
We propose to improve upon current limited technologies by introducing mobility and directional
precision to wireless signal repeaters. The ANT is a mobile signal repeater which dynamically adapts to
the environment. By moving through the environment to create a sufficient connection between two
nodes, the ANT increases the Signal-to-Interference/Noise Ratio (SINR) and throughput on the existing
channel without significant power costs to participating nodes. This project will provide an
understanding of what interventions can improve the performance of a wireless network using
our prototype ANT.
Contents
1. Introduction
1.1 Background
1.2 Objective
2. Technical Details
2.1 Wireless Communications Considerations
2.2 Movement
2.2.1Finding Signal Strength
2.2.2Collision Detection
2.2.3Experimentation
2.3 Power Consumption
3. Plan of Action
3.1 Prospective Procedure & Experiment Set-ups
3.3 Division of Labor
4. Metrics
5. Impact and Future Considerations
1. Introduction
1.1 Background
Signals transmitted through the air often cannot reach their destinations due to attenuation and
interference. Wireless repeaters are used to alleviate that problem by sitting in between the two
communicating nodes and helping to send the signal along to each node. They receive the signal,
remove the unwanted noise, and amplify and retransmit the signal. They are used in all sorts of
communication systems and can be commonly found on the market. For example, the Wilson 801247 is
a signal booster for wireless phones which can increase coverage for up to 1,500 square feet (1). The
Choice-Alert Wireless Signal Repeater 45138 can increase the range by 150 feet.
These signal repeaters have fixed positions, though, so if the surrounding environment changes they
cannot properly react to the new signal propagation characteristics. Logically, a mobile wireless repeater
can fit the bill by utilizing its movement capabilities to enhance the overall signal propagation between
the nodes.
1.2 Objective
We propose to create a signal repeater that can navigate on its own to create a sufficient overall signal
without user interaction. To do this we intend on building a robot (ANT) that can navigate its way by
detecting a transmitted signal using its phased array. The robot will then amplify the signal and
retransmit it using an omnidirectional antenna so its transmitted signal travels farther than the original
transmitted signal reaches. The goal of the device is to achieve a reasonable throughput between the
devices that the repeater is bridging.
2. Technical Details
2.1 Wireless Communication Considerations
This project presents the challenge of achieving simultaneous communication between two separate
nodes. Utilizing a single antenna array for both receiving and transmitting would be difficult because the
array could not be directed at both end nodes simultaneously. We can circumvent this problem by using
two separate wireless interfaces, one for the link between our mobile node and the receiver and
another for the link from the mobile node to the sender. This allows us to handle each connection
separately and achieve independent communication with minimal complexity. If these two interfaces
were transmitting and listening on the same channel their physical proximity would make them strong
mutual interferers. This creates the requirement that the separate interfaces are on two separate
channels to remove this strong source of interference from the system. This also introduces another
dimension of optimization to our system by allowing the ANT to detect the wireless channels for which
interference is smallest on the separate links and thereby choose the best channel for them individually.
Using two separate antennae and thus two wireless interfaces presents the challenge of transmitting
data between the two and coordinating their operation. By using a computer as the interface we would
be able to decode the data received from one link and retransmit it on the other link by re-encoding it.
This would allow us to establish communication without dealing directly with the physical
representation of the data within the processing software. Instead we would obtain meta-data from the
wireless cards to feed the optimization algorithms. However, processing the signals in this manner
introduces a problem in network operation. The amount of computation required may introduce a
significant delay between receiving the packet and sending it along to its destination. This may not be a
problem for data transmissions, but for applications requiring continuous communication it could be
problematic. This could be addressed by using embedded hardware to quickly retransmit the packet at
the cost of a more complex system.
For the purposes of this project we can use a pair of omnidirectional antennae for the link between the
router and the ANT. We could use this pair as a dipole phased array to do signal direction estimation.
This requires the use of a motor to rotate the antenna pair. This is the only way to point the beam in the
direction of our choosing using an antenna pair while not creating additional side lobes in the antenna
plot (2). The other link that is between the ANT and the end device can be operated using a single
omnidirectional antenna which would need only to maintain connection with the node whose
throughput we are trying to maximize. If this does not provide for satisfactory operation, a dipole and
motor system could also be used for this link, possibly expending some additional energy in favor of a
better connection. If we were to attempt to avoid the use of a motor to rotate our phased array, we
would build a beamformer (3) with a sufficient number of elements to be able to direct the beam in any
direction without significant deformation of the antenna plot. As of this time, there are relatively few
products on the market that use beamforming within Wi-Fi frequencies. The majority of these devices
operate on the recently ratified 802.11n protocol and are geared toward enterprise applications (4).
2.2 Movement
Movement is going to be a key component of this project. The robot will need to move in order to
maximize its received and transmitted signal strengths.
2.2.1 Finding signal strength
In order for the robot to receive adequate signal strength from the Wi-Fi router the robot may need to
move to a more favorable location. There are a few different aspects to this procedure. To enable the
robot to receive the transmitted signal we need to worry about moving the robot to areas of adequate
signal strength from the router and directing the robot’s receiver phased array toward that same router.
We also need to ensure that the robot stays in communication with the end transceiver as it moves
toward better signal strength from the router.
First, we need to define the adequate signal strength received at the robot. This signal strength will be
determined by the signal strength value which allows the ANT to reliably obtain the information sent by
the router. As long as the robot receives at least this much signal strength, the robot can easily
retransmit the signal to the end transceiver and vice versa. We assume here that the robot is close
enough to the end receiver that transmissions between the robot and the end receiver are non-
problematic. Otherwise, more repeaters are needed, and this situation is out of the scope of this
proposed project.
The plan for getting adequate received signal strength is to use an altered form of a gradient ascent
algorithm (5). This algorithm entails determining the direction of maximum signal strength increase and
moving the robot in that direction. We will need to experimentally determine the optimal distance to
move for each step in this ascent. In order to perform a true gradient ascent algorithm, we need to
determine the amount of change in signal strength from the current position to the possible new
positions. This would require moving the robot to each potential new position, subtracting the original
signal strength value from the potential position’s signal strength, and dividing by the distance covered.
Then, the robot would proceed to the position with the highest gradient. However, this process would
be both time and power intensive making it impractical for our application.
Instead we plan to perform a hill climb (6). To perform a hill climb we simply rotate the dual-antenna
receiver phased array to point in various directions that collectively cover a circular swath around the
robot. Then, we move the robot in the direction that has the most signal strength. Since the robot is
assumed to have good communication with the end receiver, the robot then relays the information to
the end transceiver and vice versa.
Once the robot has found a position where it can communicate well (link reaches assigned threshold)
with both the transceiver and the router it can stop. At this point, the receiver on the robot needs to
rotate until it determines the optimal orientation to maximize the received signal strength. Then, the
robot can remain in that state unless it notices inadequate signal strength and decides to perform the
hill climb algorithm again.
2.2.2 Collision detection
We need to account for collisions as the robot moves. If the robot wants to move in the direction of
maximum signal strength but hits an obstacle, we need to alter the robot’s movement so that it can still
achieve its goal while also maneuvering around the obstacle. We will first try forcing the robot to move
in a different direction whenever it hits an obstacle so that it will eventually get free and be able to
move to a better location. We can try a fixed direction, say 90 degrees to the left of the robot’s current
orientation, or we can stochastically change the robot’s heading when it encounters an obstacle.
Experiments will need to be completed in order to determine which method is most effective overall.
We can also attempt to predict where the robot would have followed the path by assuming it was
bounced off an object.
We need to use some mechanism to determine when a collision occurs. We are thinking of using a PING
Ultrasonic Sensor (7). The sensor sends out a ping and then waits to detect an echo. It then uses the
speed of sound and the delay between when it sent out the ping and received the echo to calculate the
distance from objects. Mounting a single sensor to the robot would allow us to detect collisions that
occur from the front of the robot. Additional sensors would allow us to do more complex detection and
have a better idea of the local environment. Increasing the sensor count increases the predictive
capability of the robot in regards to collisions. It also would improve the robots maneuverability by
making it more efficient planning movement should a collision occur.
An alternative to this is to use pressure sensors such as the FlexiForce 4" Resistive force sensors (8). The
sensors work by noticing the decrease in resistance across the sensor. This drop in resistance is caused
by some force being applied to the sensor. We can wrap these sensors around the robot and when a
force is detected, we will know that the robot has collided with something and it can react
appropriately. This option provides less predictive ability than the ultrasonic sensors but gives us finer
grained knowledge of surface contact when a collision occurs.
2.2.3 Experimentation
We do not know exactly how the robots are currently configured at WINLAB, so we need to take a look
at them and learn how to control them. The method of control of the robots is going to be an important
part of the hill climbing algorithm, and it will also affect the manner of avoiding obstacles.
We plan to test the system in various environment configurations. We will first test the system in an
open room, but we will try placing other obstacles between the router and the end receiver to make the
problem more interesting if time permits. We anticipate that the robot will try to find a line of sight path
between itself and the router, but it is possible that a multipath-rich environment will produce different
results.
2.3 Power Consumption
Because one of the key features desired for the final product is mobility, the device should be powered
internally using a battery. Power consumption is an important design consideration for enabling the
robot to operate for long periods of time before it needs to be recharged.
The upper bound on the overall power consumption is obtained by adding the individual consumption
estimations for each component. Major sources of power investigated include physical robot
movement, computational power involving next movement calculations and phased array direction
instructions, and wireless transmission.
We used the iRobot Create to estimate the power consumed during physical movements of our device
(9) since it is able to move in all directions and has sensors which can interact with external events for
obstacle inference. It usually moves slowly, but precisely. The Dell Inspiron Mini 9 can be used to
estimate the computational power of our device (10) since it is small, mobile, and powerful enough to
act as a brain for the device and store a lot of data. The MacWireless High Power 11g Repeater can be
used to estimate the wireless transmission power of our device (11) since it is able to receive and
transmit the desired wireless signals.
Given a 50KWhr battery, our expected robot lifetime would be approximately 1.7 hours. Depending on
the actual size of the robot, this battery capacity would likely be an underestimation. Therefore, this
lifetime figure is at the low end of what we can expect, given that the power consumption figures are
intentionally high.
Table 1: Component Power Consumption Estimation
Component
Technology used as estimation
Physical
iRobot Create
Computational
Dell Inspiron Mini 9
Power Consumption
0.5 W (regulated)
6.7 W
Wireless Transfer
1W
MacWireless High Power 11g Repeater
3. Plan of Action
3.1 Prospective Procedure & Experiment Set-ups
The 4 major steps forecasted for this project include researching existing technologies, writing
algorithms and programs to interact with each of the components, testing the different environments,
and analyzing the results.
To facilitate the design of our device, further research on existing technologies is needed to see what
can be used, what can be bought, and what will need to be designed and constructed. WINLAB has fully
functional mobile robots and laptops to use as the base for our ANT system. Ideally, a programmable
phased array or rotatable antennas can be found and purchased. Otherwise, a homebrew version will be
constructed. A standard Wi-Fi card should be readily available and modified for the purposes of this
project.
Once the proper components are assembled algorithms must be written to control all aspects of the
device operation. These would specifically control movement, locating the target signal to follow,
collision detection, phased array orientation, and transmitter link preservation. The algorithms would
allow the robot to rotate its antenna to find the optimal direction of travel, move in the determined
direction while recognizing and dealing with collisions, direct its receiver toward the router, and verify
the link back to the transmitter is stable.
The purpose of experimentation is to quantify the improvement of our system. The control situation
consists of two nodes, a transceiver and router that have poor communication between them. “Poor” is
a connection with low SINR or low throughput due to obstacles or distance. Other possible environment
setups include testing with a stationary wireless repeater, testing with stationary phased array and
repeater, and finally testing with the finished ANT. It is necessary to spend time learning the system and
tools used, as well as debugging any unexpected problems. Many experiments are needed to determine
average values for previously stated performance metrics.
The data that we will take for analysis will be the SINR ratios before and after activation of the
improvement methods. The results will show us what aspects of the design are generating the greatest
improvements in SINR and which are not contributing significantly. We hope to find that the ANT’s
combination of techniques will be an improvement over any component individually.
Between 4 people, working 15 hours a week for each of the 15 weeks of the semester implies a
maximum of 900 man-hours available. Weekly group meetings take up to 2 hours a week for each
person, implying 120 man-hours will be used for updating and designing as team. Researching,
constructing and programming would take up an estimated 70% of the remaining time, or 536 manhours. Testing and analyzing data would take up an estimated 20% and 10%, 156 man-hours and 78
man-hours respectively. We could make this process more efficient by streamlining the way we do the
various tasks. For instance, as soon as movement code is finished and a moving robot is built, we can
test and troubleshoot movement in a real environment while the code and components for the phased
array are made. This will make sure that there is always a task available.
3.2 Division of Labor
Although each member of the group is more responsible for certain parts of the project, all members
will contribute to all aspects. Dan has the most experience programming and will be in charge of the
software. Katy has the most experience working with GNUradios at WINLAB and will be in charge of
experimentation setup. Yuriy has the most experience with designing and building circuits and will be in
charge of hardware. Murium has the ability to learn quickly and comprehensibly explain the material to
others so she will be in charge of communication and integration of ideas.
4. Metrics
There are many ways to evaluate the improvement of our final product as compared to existing
solutions. Important characteristics to focus on include the quality of the signal, network throughput,
the energy expended per bit and deployment time of the robot. Situations with weak signal would have
poorer results in some of these characteristics.
Signal-to-Interference/Noise Ratio (SINR) will be used to quantify the quality of the signal at the
receiver. Net Stumbler is software which can be used to calculate SINR for Wi-Fi signals (12).
Network throughput is the average rate of successful message delivery over a communications channel.
WINLAB’s ORBIT grid consists of many radios which can be used to experimentally transmit and receive
packets of specific size at specific frequencies. We can use these radios to determine the packets sent
and received in order to determine the throughput in various testing scenarios.
The amount of energy expended per bit is good unit of measurement since it takes into account both
the power consumption and the usefulness of the receiver. It can be calculated by examining the power
usage of the battery and the number of bits successfully transferred. A lower energy per bit is desired.
Deployment time is the time from which the ANT is activated to the time where the ANT successfully
finds an optimal position and antenna arrangement before it proceeds to act as a directional wireless
repeater. Because each situation is a little different and the algorithm may lead the robot to a different
location or not find a location at all, a huge variance is expected. Observing the longest times will be
invaluable in optimizing the movement algorithms.
5. Impact and Future Considerations
The capabilities of this device need not to be limited to the environmental designs suggested in this
project. Future considerations could include different levels of noise interference, various physical
(dynamic) obstacles and multi-path environments, and a method for the coexistence of multiple users
with similar devices also working around this frequency band. Also, the device could be expanded to be
similar to software radio and be able to receive and transmit at any frequency rather than just for
wireless in the 2.4 GHz band.
This project should help alleviate frustrations over signal loss. Rather than painstakingly choosing a fixed
position for a wireless repeater, the ANT system can improve received signal strength on its own. If we
can get a few ANTs to work in conjunction then perhaps we can increase coverage even more. If two
people each place their ANTs down and the ANTs realize that each is in a better position for the other
ANT’s signal, perhaps they can exchange tasks or use a barter system to help one another. One could
also set up a series of ANTs along a path to an end transceiver from a router in a place where the
transceiver cannot see the router and cannot receive signal.
References
1. Hi-Gain Wireless-300N Range Extender. Hawking Technologies. [Online] 2009. [Cited: December 17,
2009.]
http://www.hawkingtech.com/products/productlist.php?CatID=32&FamID=105&ProdID=394#Datashee
ts.
2. Phase array antennas. Microwaves 101.com. [Online] December 14, 2008. [Cited: December 17,
2009.] http://www.microwaves101.com/encyclopedia/phasedarrays.cfm.
3. Beamforming. Wikipedia. [Online] November 13, 2009. [Cited: December 17, 2009.]
http://en.wikipedia.org/wiki/Beamforming.
4. Winkle, William Van. Beamforming: The Best WiFi You’ve Never Seen. Tom's Hardware. [Online]
August 17, 2009. [Cited: December 17, 2009.] http://www.tomshardware.com/reviews/beamformingwifi-ruckus,2390.html.
5. Gradient descent. Wikipedia. [Online] December 7, 2009. [Cited: December 17, 2009.]
http://en.wikipedia.org/wiki/Gradient_descent.
6. Hill climbing. Wikipedia. [Online] November 15, 2009. [Cited: December 17, 2009.]
http://en.wikipedia.org/wiki/Hill_climbing.
7. PING Ultrasonic Sensor. [Online] Parallax, Inc. [Cited: December 17, 2009.]
http://www.parallax.com/tabid/768/ProductID/92/Default.aspx.
8. 4" FlexiForce 0-1 lbs. Resistive Force Sensor. [Online] Trossen Robotics. [Cited: December 17, 2009.]
http://www.trossenrobotics.com/flexiforce-1lb-resistive-force-sensor-4inch.aspx.
9. iRobot. [Online] 2006. [Cited: December 17, 2009.]
http://www.irobot.com/filelibrary/pdfs/hrd/create/Create%20Open%20Interface_v2.pdf.
10. Shain, Daniel. Dell Inspiron Mini 9. Laptop Logic. [Online] October 28, 2008. [Cited: December 17,
2009.] http://laptoplogic.com/reviews/dell-inspiron-mini-9.
11. MacWireless High Power 11g Wireless Repeater. [Online] MacWireless.com, February 6, 2009.
[Cited: December 17, 2009.]
http://www.macwireless.com/downloads/install_docs/access_points/11gHighPowerRepeater.pdf.
12. Milner, Marius. NetStumbler v0.4.0 Release Notes. [Online] [Cited: December 17, 2009.]
http://www.stumbler.net/readme/readme_0_4_0.html.
Download