Download presentation
Presentation is loading. Please wait.
Published byEzra Henderson Modified over 9 years ago
1
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 prowler PROBABILISTIC WIRELESS NETWORK SIMULATOR Features: Event-driven Deterministic or Probabilistic Command line / GUI Visualization Statistics / Optimization Any number of motes / any application Fast application prototyping MATLAB-based
2
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 prowler can simulate: distance ‘ideal’ measured Signal strength Send_PacketPacket_Sent Channel_Idle_Check Waiting_TimeBackoff_TimeTransmission_Time Radio Propagation Transmit, Receive, Collision Model for signal strength: based on distance deterministic or probabilistic (fading) location ( LARGE VARIATION) time ( SMALL VARIATION) asymmetric links random failures/external disturbances TinyOS w/ MAC-layer Complete MAC-layer protocol Simplified set of Events Commands + Application (plug-in)
3
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 1. Topology Information for the Motes coordinates of the motes can change during simulation (may be random) 2. Visualization definition (optional) events visual effects 3. Application Code actions to events generate new events case 'Packet_Received' if rand<0.7 Send_Packet(RadioStream(data, memory.signal_strength)); end Application % Event_name Target Color Size anim_def={... {'Init_Application',1,[0 0 0 ],small},... {'Packet_Sent', 2,[1 0 0 ],small},... {'Packet_Received', 3,[1 0 0 ],small},... Topology = [1,1;1,2;2,1; 2,2]; mote_IDs = [1,2,3,4];
4
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 Example Application: Flood Commands Simulator switch event case 'Init_Application' signal_strength=100; %%%%%%%%%% Memory initialized here %%%%%%%%%%%% memory=struct('send',1, 'signal_strength', signal_strength); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% if ID==1 % first node starts flood Set_Clock(1000) end case 'Packet_Sent' % do nothing case 'Packet_Received' if memory.send p=sim_params('get_app', 'P'); if rand<p Send_Packet(radiostream(data, memory.signal_strength)); end memory.send=0; end case 'Collided_Packet_Received' % this is for debug purposes only case 'Clock_Tick' Send_Packet(RadioStream(data, memory.signal_strength)); end MATLAB Events
5
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 prowler – Main GUI Application and radio definition Graphic Visualization Event Monitor transmit wait receive Text messages Memory Dump of mote ID# 2: send: 0 signal_strength: 1
6
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 Ideal transmission function prowler – Simulation Parameters MAC-layer parameters Fading effect parameters Reception condition
7
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 Goal: Optimize performance Start Optimization with prowler Example: Flood in 2D with randomized retransmission (10x10 grid) Parameters: s – signal strength p – retransmission probability
8
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 Optimization with prowler Simple performance metrics:
9
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 Optimization with prowler Composed performance metrics ( ‘ adjustable interfaces ’) Metrics are composed from the number of receiving nodes & consumed energy: Emphasis on accuracy Emphasis on power consumption optimum
10
NEST PI Meeting July 9-12, 2002Copyright © Vanderbilt University/ISIS 2002 prowler - Conclusions Fast and easy prototyping in MATLAB Captures the event-driven nature of TinyOS Algorithm testing in deterministic environment probabilistic environment dynamically changing environment Easy debugging Application area: communication protocols, routing arbitrary application prototyping optimization, parameter tuning Provides visualization Easy to expand; plugins
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.