docs: cleanup of some of the emane demos, added antennaprofile demo example
This commit is contained in:
		
							parent
							
								
									ce7736a95e
								
							
						
					
					
						commit
						93a5d1fb01
					
				
					 6 changed files with 785 additions and 10 deletions
				
			
		
							
								
								
									
										340
									
								
								daemon/core/gui/data/xmls/emane-demo-antenna.xml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										340
									
								
								daemon/core/gui/data/xmls/emane-demo-antenna.xml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,340 @@ | |||
| <?xml version='1.0' encoding='UTF-8'?> | ||||
| <scenario name="/home/developer/.core/configs/emane-demo-antenna.xml"> | ||||
|   <networks> | ||||
|     <network id="5" name="wlan5" model="emane_rfpipe" type="EMANE"> | ||||
|       <position x="388" y="555" lat="47.57412169587584" lon="-122.12709380504643" alt="2.0"/> | ||||
|     </network> | ||||
|   </networks> | ||||
|   <devices> | ||||
|     <device id="1" name="n1" type="mdr" class="" image=""> | ||||
|       <position x="258" y="147" lat="47.577830502987744" lon="-122.12884551985047" alt="2.0"/> | ||||
|       <services> | ||||
|         <service name="zebra"/> | ||||
|         <service name="OSPFv3MDR"/> | ||||
|         <service name="IPForward"/> | ||||
|       </services> | ||||
|     </device> | ||||
|     <device id="2" name="n2" type="mdr" class="" image=""> | ||||
|       <position x="526" y="147" lat="47.577830502987744" lon="-122.12523429240828" alt="2.0"/> | ||||
|       <services> | ||||
|         <service name="zebra"/> | ||||
|         <service name="OSPFv3MDR"/> | ||||
|         <service name="IPForward"/> | ||||
|       </services> | ||||
|     </device> | ||||
|     <device id="3" name="n3" type="mdr" class="" image=""> | ||||
|       <position x="241" y="387" lat="47.57564888355958" lon="-122.12907459024791" alt="2.0"/> | ||||
|       <services> | ||||
|         <service name="zebra"/> | ||||
|         <service name="OSPFv3MDR"/> | ||||
|         <service name="IPForward"/> | ||||
|       </services> | ||||
|     </device> | ||||
|     <device id="4" name="n4" type="mdr" class="" image=""> | ||||
|       <position x="529" y="385" lat="47.57566706409707" lon="-122.1251938682205" alt="2.0"/> | ||||
|       <services> | ||||
|         <service name="zebra"/> | ||||
|         <service name="OSPFv3MDR"/> | ||||
|         <service name="IPForward"/> | ||||
|       </services> | ||||
|     </device> | ||||
|   </devices> | ||||
|   <links> | ||||
|     <link node1="5" node2="1"> | ||||
|       <iface2 nem="1" id="0" name="eth0" mac="02:02:00:00:00:01" ip4="10.0.0.1" ip4_mask="32" ip6="2001::1" ip6_mask="128"/> | ||||
|     </link> | ||||
|     <link node1="5" node2="2"> | ||||
|       <iface2 nem="2" id="0" name="eth0" mac="02:02:00:00:00:02" ip4="10.0.0.2" ip4_mask="32" ip6="2001::2" ip6_mask="128"/> | ||||
|     </link> | ||||
|     <link node1="5" node2="3"> | ||||
|       <iface2 nem="3" id="0" name="eth0" mac="02:02:00:00:00:03" ip4="10.0.0.3" ip4_mask="32" ip6="2001::3" ip6_mask="128"/> | ||||
|     </link> | ||||
|     <link node1="5" node2="4"> | ||||
|       <iface2 nem="4" id="0" name="eth0" mac="02:02:00:00:00:04" ip4="10.0.0.4" ip4_mask="32" ip6="2001::4" ip6_mask="128"/> | ||||
|     </link> | ||||
|   </links> | ||||
|   <emane_global_configuration> | ||||
|     <emulator> | ||||
|       <configuration name="antennaprofilemanifesturi" value="/tmp/emane/antennaprofile.xml"/> | ||||
|       <configuration name="controlportendpoint" value="0.0.0.0:47000"/> | ||||
|       <configuration name="eventservicedevice" value="ctrl0"/> | ||||
|       <configuration name="eventservicegroup" value="224.1.2.8:45703"/> | ||||
|       <configuration name="eventservicettl" value="1"/> | ||||
|       <configuration name="otamanagerchannelenable" value="1"/> | ||||
|       <configuration name="otamanagerdevice" value="ctrl0"/> | ||||
|       <configuration name="otamanagergroup" value="224.1.2.8:45702"/> | ||||
|       <configuration name="otamanagerloopback" value="0"/> | ||||
|       <configuration name="otamanagermtu" value="0"/> | ||||
|       <configuration name="otamanagerpartcheckthreshold" value="2"/> | ||||
|       <configuration name="otamanagerparttimeoutthreshold" value="5"/> | ||||
|       <configuration name="otamanagerttl" value="1"/> | ||||
|       <configuration name="stats.event.maxeventcountrows" value="0"/> | ||||
|       <configuration name="stats.ota.maxeventcountrows" value="0"/> | ||||
|       <configuration name="stats.ota.maxpacketcountrows" value="0"/> | ||||
|     </emulator> | ||||
|     <core> | ||||
|       <configuration name="platform_id_start" value="1"/> | ||||
|       <configuration name="nem_id_start" value="1"/> | ||||
|       <configuration name="link_enabled" value="1"/> | ||||
|       <configuration name="loss_threshold" value="30"/> | ||||
|       <configuration name="link_interval" value="1"/> | ||||
|       <configuration name="link_timeout" value="4"/> | ||||
|     </core> | ||||
|   </emane_global_configuration> | ||||
|   <emane_configurations> | ||||
|     <emane_configuration node="5" model="emane_rfpipe"> | ||||
|       <mac> | ||||
|         <configuration name="datarate" value="1000000"/> | ||||
|         <configuration name="delay" value="0.000000"/> | ||||
|         <configuration name="enablepromiscuousmode" value="0"/> | ||||
|         <configuration name="flowcontrolenable" value="0"/> | ||||
|         <configuration name="flowcontroltokens" value="10"/> | ||||
|         <configuration name="jitter" value="0.000000"/> | ||||
|         <configuration name="neighbormetricdeletetime" value="60.000000"/> | ||||
|         <configuration name="pcrcurveuri" value="/usr/share/emane/xml/models/mac/rfpipe/rfpipepcr.xml"/> | ||||
|         <configuration name="radiometricenable" value="0"/> | ||||
|         <configuration name="radiometricreportinterval" value="1.000000"/> | ||||
|       </mac> | ||||
|       <phy> | ||||
|         <configuration name="bandwidth" value="1000000"/> | ||||
|         <configuration name="fading.model" value="none"/> | ||||
|         <configuration name="fading.nakagami.distance0" value="100.000000"/> | ||||
|         <configuration name="fading.nakagami.distance1" value="250.000000"/> | ||||
|         <configuration name="fading.nakagami.m0" value="0.750000"/> | ||||
|         <configuration name="fading.nakagami.m1" value="1.000000"/> | ||||
|         <configuration name="fading.nakagami.m2" value="200.000000"/> | ||||
|         <configuration name="fixedantennagain" value="0.000000"/> | ||||
|         <configuration name="fixedantennagainenable" value="1"/> | ||||
|         <configuration name="frequency" value="2347000000"/> | ||||
|         <configuration name="frequencyofinterest" value="2347000000"/> | ||||
|         <configuration name="noisebinsize" value="20"/> | ||||
|         <configuration name="noisemaxclampenable" value="0"/> | ||||
|         <configuration name="noisemaxmessagepropagation" value="200000"/> | ||||
|         <configuration name="noisemaxsegmentduration" value="1000000"/> | ||||
|         <configuration name="noisemaxsegmentoffset" value="300000"/> | ||||
|         <configuration name="noisemode" value="none"/> | ||||
|         <configuration name="propagationmodel" value="2ray"/> | ||||
|         <configuration name="subid" value="1"/> | ||||
|         <configuration name="systemnoisefigure" value="4.000000"/> | ||||
|         <configuration name="timesyncthreshold" value="10000"/> | ||||
|         <configuration name="txpower" value="0.000000"/> | ||||
|       </phy> | ||||
|       <external> | ||||
|         <configuration name="external" value="0"/> | ||||
|         <configuration name="platformendpoint" value="127.0.0.1:40001"/> | ||||
|         <configuration name="transportendpoint" value="127.0.0.1:50002"/> | ||||
|       </external> | ||||
|     </emane_configuration> | ||||
|     <emane_configuration node="1" model="emane_rfpipe"> | ||||
|       <mac> | ||||
|         <configuration name="datarate" value="1000000"/> | ||||
|         <configuration name="delay" value="0.000000"/> | ||||
|         <configuration name="enablepromiscuousmode" value="0"/> | ||||
|         <configuration name="flowcontrolenable" value="0"/> | ||||
|         <configuration name="flowcontroltokens" value="10"/> | ||||
|         <configuration name="jitter" value="0.000000"/> | ||||
|         <configuration name="neighbormetricdeletetime" value="60.000000"/> | ||||
|         <configuration name="pcrcurveuri" value="/usr/share/emane/xml/models/mac/rfpipe/rfpipepcr.xml"/> | ||||
|         <configuration name="radiometricenable" value="0"/> | ||||
|         <configuration name="radiometricreportinterval" value="1.000000"/> | ||||
|       </mac> | ||||
|       <phy> | ||||
|         <configuration name="bandwidth" value="1000000"/> | ||||
|         <configuration name="fading.model" value="none"/> | ||||
|         <configuration name="fading.nakagami.distance0" value="100.000000"/> | ||||
|         <configuration name="fading.nakagami.distance1" value="250.000000"/> | ||||
|         <configuration name="fading.nakagami.m0" value="0.750000"/> | ||||
|         <configuration name="fading.nakagami.m1" value="1.000000"/> | ||||
|         <configuration name="fading.nakagami.m2" value="200.000000"/> | ||||
|         <configuration name="fixedantennagain" value="0.000000"/> | ||||
|         <configuration name="fixedantennagainenable" value="0"/> | ||||
|         <configuration name="frequency" value="2347000000"/> | ||||
|         <configuration name="frequencyofinterest" value="2347000000"/> | ||||
|         <configuration name="noisebinsize" value="20"/> | ||||
|         <configuration name="noisemaxclampenable" value="0"/> | ||||
|         <configuration name="noisemaxmessagepropagation" value="200000"/> | ||||
|         <configuration name="noisemaxsegmentduration" value="1000000"/> | ||||
|         <configuration name="noisemaxsegmentoffset" value="300000"/> | ||||
|         <configuration name="noisemode" value="outofband"/> | ||||
|         <configuration name="propagationmodel" value="precomputed"/> | ||||
|         <configuration name="subid" value="1"/> | ||||
|         <configuration name="systemnoisefigure" value="4.000000"/> | ||||
|         <configuration name="timesyncthreshold" value="10000"/> | ||||
|         <configuration name="txpower" value="0.000000"/> | ||||
|       </phy> | ||||
|       <external> | ||||
|         <configuration name="external" value="0"/> | ||||
|         <configuration name="platformendpoint" value="127.0.0.1:40001"/> | ||||
|         <configuration name="transportendpoint" value="127.0.0.1:50002"/> | ||||
|       </external> | ||||
|     </emane_configuration> | ||||
|     <emane_configuration node="2" model="emane_rfpipe"> | ||||
|       <mac> | ||||
|         <configuration name="datarate" value="1000000"/> | ||||
|         <configuration name="delay" value="0.000000"/> | ||||
|         <configuration name="enablepromiscuousmode" value="0"/> | ||||
|         <configuration name="flowcontrolenable" value="0"/> | ||||
|         <configuration name="flowcontroltokens" value="10"/> | ||||
|         <configuration name="jitter" value="0.000000"/> | ||||
|         <configuration name="neighbormetricdeletetime" value="60.000000"/> | ||||
|         <configuration name="pcrcurveuri" value="/usr/share/emane/xml/models/mac/rfpipe/rfpipepcr.xml"/> | ||||
|         <configuration name="radiometricenable" value="0"/> | ||||
|         <configuration name="radiometricreportinterval" value="1.000000"/> | ||||
|       </mac> | ||||
|       <phy> | ||||
|         <configuration name="bandwidth" value="1000000"/> | ||||
|         <configuration name="fading.model" value="none"/> | ||||
|         <configuration name="fading.nakagami.distance0" value="100.000000"/> | ||||
|         <configuration name="fading.nakagami.distance1" value="250.000000"/> | ||||
|         <configuration name="fading.nakagami.m0" value="0.750000"/> | ||||
|         <configuration name="fading.nakagami.m1" value="1.000000"/> | ||||
|         <configuration name="fading.nakagami.m2" value="200.000000"/> | ||||
|         <configuration name="fixedantennagain" value="0.000000"/> | ||||
|         <configuration name="fixedantennagainenable" value="1"/> | ||||
|         <configuration name="frequency" value="2347000000"/> | ||||
|         <configuration name="frequencyofinterest" value="2347000000"/> | ||||
|         <configuration name="noisebinsize" value="20"/> | ||||
|         <configuration name="noisemaxclampenable" value="0"/> | ||||
|         <configuration name="noisemaxmessagepropagation" value="200000"/> | ||||
|         <configuration name="noisemaxsegmentduration" value="1000000"/> | ||||
|         <configuration name="noisemaxsegmentoffset" value="300000"/> | ||||
|         <configuration name="noisemode" value="outofband"/> | ||||
|         <configuration name="propagationmodel" value="precomputed"/> | ||||
|         <configuration name="subid" value="1"/> | ||||
|         <configuration name="systemnoisefigure" value="4.000000"/> | ||||
|         <configuration name="timesyncthreshold" value="10000"/> | ||||
|         <configuration name="txpower" value="0.000000"/> | ||||
|       </phy> | ||||
|       <external> | ||||
|         <configuration name="external" value="0"/> | ||||
|         <configuration name="platformendpoint" value="127.0.0.1:40001"/> | ||||
|         <configuration name="transportendpoint" value="127.0.0.1:50002"/> | ||||
|       </external> | ||||
|     </emane_configuration> | ||||
|     <emane_configuration node="3" model="emane_rfpipe"> | ||||
|       <mac> | ||||
|         <configuration name="datarate" value="1000000"/> | ||||
|         <configuration name="delay" value="0.000000"/> | ||||
|         <configuration name="enablepromiscuousmode" value="0"/> | ||||
|         <configuration name="flowcontrolenable" value="0"/> | ||||
|         <configuration name="flowcontroltokens" value="10"/> | ||||
|         <configuration name="jitter" value="0.000000"/> | ||||
|         <configuration name="neighbormetricdeletetime" value="60.000000"/> | ||||
|         <configuration name="pcrcurveuri" value="/usr/share/emane/xml/models/mac/rfpipe/rfpipepcr.xml"/> | ||||
|         <configuration name="radiometricenable" value="0"/> | ||||
|         <configuration name="radiometricreportinterval" value="1.000000"/> | ||||
|       </mac> | ||||
|       <phy> | ||||
|         <configuration name="bandwidth" value="1000000"/> | ||||
|         <configuration name="fading.model" value="none"/> | ||||
|         <configuration name="fading.nakagami.distance0" value="100.000000"/> | ||||
|         <configuration name="fading.nakagami.distance1" value="250.000000"/> | ||||
|         <configuration name="fading.nakagami.m0" value="0.750000"/> | ||||
|         <configuration name="fading.nakagami.m1" value="1.000000"/> | ||||
|         <configuration name="fading.nakagami.m2" value="200.000000"/> | ||||
|         <configuration name="fixedantennagain" value="5.000000"/> | ||||
|         <configuration name="fixedantennagainenable" value="1"/> | ||||
|         <configuration name="frequency" value="2347000000"/> | ||||
|         <configuration name="frequencyofinterest" value="2347000000"/> | ||||
|         <configuration name="noisebinsize" value="20"/> | ||||
|         <configuration name="noisemaxclampenable" value="0"/> | ||||
|         <configuration name="noisemaxmessagepropagation" value="200000"/> | ||||
|         <configuration name="noisemaxsegmentduration" value="1000000"/> | ||||
|         <configuration name="noisemaxsegmentoffset" value="300000"/> | ||||
|         <configuration name="noisemode" value="outofband"/> | ||||
|         <configuration name="propagationmodel" value="precomputed"/> | ||||
|         <configuration name="subid" value="1"/> | ||||
|         <configuration name="systemnoisefigure" value="4.000000"/> | ||||
|         <configuration name="timesyncthreshold" value="10000"/> | ||||
|         <configuration name="txpower" value="0.000000"/> | ||||
|       </phy> | ||||
|       <external> | ||||
|         <configuration name="external" value="0"/> | ||||
|         <configuration name="platformendpoint" value="127.0.0.1:40001"/> | ||||
|         <configuration name="transportendpoint" value="127.0.0.1:50002"/> | ||||
|       </external> | ||||
|     </emane_configuration> | ||||
|     <emane_configuration node="4" model="emane_rfpipe"> | ||||
|       <mac> | ||||
|         <configuration name="datarate" value="1000000"/> | ||||
|         <configuration name="delay" value="0.000000"/> | ||||
|         <configuration name="enablepromiscuousmode" value="0"/> | ||||
|         <configuration name="flowcontrolenable" value="0"/> | ||||
|         <configuration name="flowcontroltokens" value="10"/> | ||||
|         <configuration name="jitter" value="0.000000"/> | ||||
|         <configuration name="neighbormetricdeletetime" value="60.000000"/> | ||||
|         <configuration name="pcrcurveuri" value="/usr/share/emane/xml/models/mac/rfpipe/rfpipepcr.xml"/> | ||||
|         <configuration name="radiometricenable" value="0"/> | ||||
|         <configuration name="radiometricreportinterval" value="1.000000"/> | ||||
|       </mac> | ||||
|       <phy> | ||||
|         <configuration name="bandwidth" value="1000000"/> | ||||
|         <configuration name="fading.model" value="none"/> | ||||
|         <configuration name="fading.nakagami.distance0" value="100.000000"/> | ||||
|         <configuration name="fading.nakagami.distance1" value="250.000000"/> | ||||
|         <configuration name="fading.nakagami.m0" value="0.750000"/> | ||||
|         <configuration name="fading.nakagami.m1" value="1.000000"/> | ||||
|         <configuration name="fading.nakagami.m2" value="200.000000"/> | ||||
|         <configuration name="fixedantennagain" value="0.000000"/> | ||||
|         <configuration name="fixedantennagainenable" value="0"/> | ||||
|         <configuration name="frequency" value="2347000000"/> | ||||
|         <configuration name="frequencyofinterest" value="2347000000"/> | ||||
|         <configuration name="noisebinsize" value="20"/> | ||||
|         <configuration name="noisemaxclampenable" value="0"/> | ||||
|         <configuration name="noisemaxmessagepropagation" value="200000"/> | ||||
|         <configuration name="noisemaxsegmentduration" value="1000000"/> | ||||
|         <configuration name="noisemaxsegmentoffset" value="300000"/> | ||||
|         <configuration name="noisemode" value="outofband"/> | ||||
|         <configuration name="propagationmodel" value="precomputed"/> | ||||
|         <configuration name="subid" value="1"/> | ||||
|         <configuration name="systemnoisefigure" value="4.000000"/> | ||||
|         <configuration name="timesyncthreshold" value="10000"/> | ||||
|         <configuration name="txpower" value="0.000000"/> | ||||
|       </phy> | ||||
|       <external> | ||||
|         <configuration name="external" value="0"/> | ||||
|         <configuration name="platformendpoint" value="127.0.0.1:40001"/> | ||||
|         <configuration name="transportendpoint" value="127.0.0.1:50002"/> | ||||
|       </external> | ||||
|     </emane_configuration> | ||||
|   </emane_configurations> | ||||
|   <session_origin lat="47.5791667" lon="-122.132322" alt="2.0" scale="150.0"/> | ||||
|   <session_options> | ||||
|     <configuration name="controlnet" value="172.16.0.0/24"/> | ||||
|     <configuration name="controlnet0" value=""/> | ||||
|     <configuration name="controlnet1" value=""/> | ||||
|     <configuration name="controlnet2" value=""/> | ||||
|     <configuration name="controlnet3" value=""/> | ||||
|     <configuration name="controlnet_updown_script" value=""/> | ||||
|     <configuration name="enablerj45" value="1"/> | ||||
|     <configuration name="preservedir" value="0"/> | ||||
|     <configuration name="enablesdt" value="0"/> | ||||
|     <configuration name="sdturl" value="tcp://127.0.0.1:50000/"/> | ||||
|     <configuration name="ovs" value="0"/> | ||||
|   </session_options> | ||||
|   <session_metadata> | ||||
|     <configuration name="canvas c1" value="{name {Canvas1}}"/> | ||||
|     <configuration name="global_options" value="interface_names=no ip_addresses=yes ipv6_addresses=yes node_labels=yes link_labels=yes show_api=no background_images=no annotations=yes grid=yes traffic_start=0"/> | ||||
|   </session_metadata> | ||||
|   <default_services> | ||||
|     <node type="mdr"> | ||||
|       <service name="zebra"/> | ||||
|       <service name="OSPFv3MDR"/> | ||||
|       <service name="IPForward"/> | ||||
|     </node> | ||||
|     <node type="PC"> | ||||
|       <service name="DefaultRoute"/> | ||||
|     </node> | ||||
|     <node type="prouter"/> | ||||
|     <node type="router"> | ||||
|       <service name="zebra"/> | ||||
|       <service name="OSPFv2"/> | ||||
|       <service name="OSPFv3"/> | ||||
|       <service name="IPForward"/> | ||||
|     </node> | ||||
|     <node type="host"> | ||||
|       <service name="DefaultRoute"/> | ||||
|       <service name="SSH"/> | ||||
|     </node> | ||||
|   </default_services> | ||||
| </scenario> | ||||
|  | @ -68,6 +68,7 @@ Every topic below assumes CORE, EMANE, and OSPF MDR have been installed. | |||
| |[GPSD](emane/gpsd.md)|RF Pipe|Overview of running and integrating gpsd with EMANE| | ||||
| |[Precomputed](emane/precomputed.md)|RF Pipe|Overview of using the precomputed propagation model| | ||||
| |[EEL](emane/eel.md)|RF Pipe|Overview of using the Emulation Event Log (EEL) Generator| | ||||
| |[Antenna Profiles](emane/antenna.md)|RF Pipe|Overview of using antenna profiles in EMANE| | ||||
| 
 | ||||
| ## EMANE Configuration | ||||
| 
 | ||||
|  |  | |||
							
								
								
									
										435
									
								
								docs/emane/antenna.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										435
									
								
								docs/emane/antenna.md
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,435 @@ | |||
| # EMANE Antenna Profiles | ||||
| * Table of Contents | ||||
| {:toc} | ||||
| 
 | ||||
| ## Overview | ||||
| Introduction to using the EMANE antenna profile in CORE, based on the example | ||||
| EMANE Demo linked below. | ||||
| 
 | ||||
| [EMANE Demo 6](https://github.com/adjacentlink/emane-tutorial/wiki/Demonstration-6) | ||||
| for more specifics. | ||||
| 
 | ||||
| ## Demo Setup | ||||
| We will need to create some files in advance of starting this session. | ||||
| 
 | ||||
| Create directory to place antenna profile files. | ||||
| ```shell | ||||
| mkdir /tmp/emane | ||||
| ``` | ||||
| 
 | ||||
| Create `/tmp/emane/antennaprofile.xml` with the following contents. | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE profiles SYSTEM "file:///usr/share/emane/dtd/antennaprofile.dtd"> | ||||
| <profiles> | ||||
|   <profile id="1" | ||||
| 	  antennapatternuri="/tmp/emane/antenna30dsector.xml" | ||||
| 	   blockagepatternuri="/tmp/emane/blockageaft.xml"> | ||||
|     <placement north="0" east="0" up="0"/> | ||||
|   </profile> | ||||
|   <profile id="2" | ||||
| 	   antennapatternuri="/tmp/emane/antenna30dsector.xml"> | ||||
|     <placement north="0" east="0" up="0"/> | ||||
|   </profile> | ||||
| </profiles> | ||||
| ``` | ||||
| 
 | ||||
| Create `/tmp/emane/antenna30dsector.xml` with the following contents. | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE antennaprofile SYSTEM "file:///usr/share/emane/dtd/antennaprofile.dtd"> | ||||
| 
 | ||||
| <!-- 30degree sector antenna pattern with main beam at +6dB and gain decreasing by 3dB every 5 degrees in elevation or bearing.--> | ||||
| <antennaprofile> | ||||
|   <antennapattern> | ||||
|     <elevation min='-90' max='-16'> | ||||
|       <bearing min='0' max='359'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-15' max='-11'> | ||||
|       <bearing min='0' max='5'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='6' max='10'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|       <bearing min='11' max='15'> | ||||
|         <gain value='-6'/> | ||||
|       </bearing> | ||||
|       <bearing min='16' max='344'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='345' max='349'> | ||||
|         <gain value='-6'/> | ||||
|       </bearing> | ||||
|       <bearing min='350' max='354'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|       <bearing min='355' max='359'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-10' max='-6'> | ||||
|       <bearing min='0' max='5'> | ||||
|         <gain value='3'/> | ||||
|       </bearing> | ||||
|       <bearing min='6' max='10'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='11' max='15'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|       <bearing min='16' max='344'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='345' max='349'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|       <bearing min='350' max='354'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='355' max='359'> | ||||
|         <gain value='3'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-5' max='-1'> | ||||
|       <bearing min='0' max='5'> | ||||
|         <gain value='6'/> | ||||
|       </bearing> | ||||
|       <bearing min='6' max='10'> | ||||
|         <gain value='3'/> | ||||
|       </bearing> | ||||
|       <bearing min='11' max='15'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='16' max='344'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='345' max='349'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='350' max='354'> | ||||
|         <gain value='3'/> | ||||
|       </bearing> | ||||
|       <bearing min='355' max='359'> | ||||
|         <gain value='6'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='0' max='5'> | ||||
|       <bearing min='0' max='5'> | ||||
|         <gain value='6'/> | ||||
|       </bearing> | ||||
|       <bearing min='6' max='10'> | ||||
|         <gain value='3'/> | ||||
|       </bearing> | ||||
|       <bearing min='11' max='15'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='16' max='344'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='345' max='349'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='350' max='354'> | ||||
|         <gain value='3'/> | ||||
|       </bearing> | ||||
|       <bearing min='355' max='359'> | ||||
|         <gain value='6'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='6' max='10'> | ||||
|       <bearing min='0' max='5'> | ||||
|         <gain value='3'/> | ||||
|       </bearing> | ||||
|       <bearing min='6' max='10'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='11' max='15'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|       <bearing min='16' max='344'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='345' max='349'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|       <bearing min='350' max='354'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='355' max='359'> | ||||
|         <gain value='3'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='11' max='15'> | ||||
|       <bearing min='0' max='5'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='6' max='10'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|       <bearing min='11' max='15'> | ||||
|         <gain value='-6'/> | ||||
|       </bearing> | ||||
|       <bearing min='16' max='344'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='345' max='349'> | ||||
|         <gain value='-6'/> | ||||
|       </bearing> | ||||
|       <bearing min='350' max='354'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|       <bearing min='355' max='359'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='16' max='90'> | ||||
|       <bearing min='0' max='359'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|   </antennapattern> | ||||
| </antennaprofile> | ||||
| ``` | ||||
| 
 | ||||
| Create `/tmp/emane/blockageaft.xml` with the following contents. | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE antennaprofile SYSTEM "file:///usr/share/emane/dtd/antennaprofile.dtd"> | ||||
| 
 | ||||
| <!-- blockage pattern: 1) entire aft in bearing (90 to 270) blocked 2) elevation below -10 blocked, 3) elevation from -10 to -1 is at -10dB to -1 dB 3) elevation from 0 to 90 no blockage--> | ||||
| <antennaprofile> | ||||
|   <blockagepattern> | ||||
|     <elevation min='-90' max='-11'> | ||||
|       <bearing min='0' max='359'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-10' max='-10'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-10'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-10'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-9' max='-9'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-9'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-9'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-8' max='-8'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-8'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-8'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-7' max='-7'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-7'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-7'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-6' max='-6'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-6'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-6'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-5' max='-5'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-5'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-5'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-4' max='-4'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-4'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-4'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-3' max='-3'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-3'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-2' max='-2'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-2'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-2'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='-1' max='-1'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='-1'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='-1'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|     <elevation min='0' max='90'> | ||||
|       <bearing min='0' max='89'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|       <bearing min='90' max='270'> | ||||
|         <gain value='-200'/> | ||||
|       </bearing> | ||||
|       <bearing min='271' max='359'> | ||||
|         <gain value='0'/> | ||||
|       </bearing> | ||||
|     </elevation> | ||||
|   </blockagepattern> | ||||
| </antennaprofile> | ||||
| ``` | ||||
| 
 | ||||
| ## Run Demo | ||||
| 1. Select `Open...` within the GUI | ||||
| 1. Load `emane-demo-antenna.xml` | ||||
| 1. Click  | ||||
| 1. After startup completes, double click n1 to bring up the nodes terminal | ||||
| 
 | ||||
| ## Example Demo | ||||
| This demo will cover running an EMANE event service to feed in antenna, | ||||
| location, and pathloss events to demonstrate how antenna profiles | ||||
| can be used. | ||||
| 
 | ||||
| ### EMANE Event Dump | ||||
| On n1 lets dump EMANE events, so when we later run the EMANE event service | ||||
| you can monitor when and what is sent. | ||||
| 
 | ||||
| ```shell | ||||
| root@n1:/tmp/pycore.44917/n1.conf# emaneevent-dump -i ctrl0 | ||||
| ``` | ||||
| 
 | ||||
| ### Send EMANE Events | ||||
| On the host machine create the following to send EMANE events. | ||||
| 
 | ||||
| > **WARNING:** make sure to set the `eventservicedevice` to the proper control | ||||
| > network value | ||||
| 
 | ||||
| Create `eventservice.xml` with the following contents. | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE eventservice SYSTEM "file:///usr/share/emane/dtd/eventservice.dtd"> | ||||
| <eventservice> | ||||
|   <param name="eventservicegroup" value="224.1.2.8:45703"/> | ||||
|   <param name="eventservicedevice" value="b.9001.da"/> | ||||
|   <generator definition="eelgenerator.xml"/> | ||||
| </eventservice> | ||||
| ``` | ||||
| 
 | ||||
| Create `eelgenerator.xml` with the following contents. | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE eventgenerator SYSTEM "file:///usr/share/emane/dtd/eventgenerator.dtd"> | ||||
| <eventgenerator library="eelgenerator"> | ||||
|     <param name="inputfile" value="scenario.eel" /> | ||||
|     <paramlist name="loader"> | ||||
|       <item value="commeffect:eelloadercommeffect:delta"/> | ||||
|       <item value="location,velocity,orientation:eelloaderlocation:delta"/> | ||||
|       <item value="pathloss:eelloaderpathloss:delta"/> | ||||
|       <item value="antennaprofile:eelloaderantennaprofile:delta"/> | ||||
|     </paramlist> | ||||
| </eventgenerator> | ||||
| ``` | ||||
| 
 | ||||
| Create `scenario.eel` with the following contents. | ||||
| ```shell | ||||
| 0.0 nem:1 antennaprofile 1,0.0,0.0 | ||||
| 0.0 nem:4 antennaprofile 2,0.0,0.0 | ||||
| # | ||||
| 0.0 nem:1  pathloss nem:2,60  nem:3,60   nem:4,60 | ||||
| 0.0 nem:2  pathloss nem:3,60  nem:4,60 | ||||
| 0.0 nem:3  pathloss nem:4,60 | ||||
| # | ||||
| 0.0 nem:1  location gps 40.025495,-74.315441,3.0 | ||||
| 0.0 nem:2  location gps 40.025495,-74.312501,3.0 | ||||
| 0.0 nem:3  location gps 40.023235,-74.315441,3.0 | ||||
| 0.0 nem:4  location gps 40.023235,-74.312501,3.0 | ||||
| 0.0 nem:4  velocity 180.0,0.0,10.0 | ||||
| # | ||||
| 30.0 nem:1 velocity 20.0,0.0,10.0 | ||||
| 30.0 nem:1 orientation 0.0,0.0,10.0 | ||||
| 30.0 nem:1 antennaprofile 1,60.0,0.0 | ||||
| 30.0 nem:4 velocity 270.0,0.0,10.0 | ||||
| # | ||||
| 60.0 nem:1 antennaprofile 1,105.0,0.0 | ||||
| 60.0 nem:4 antennaprofile 2,45.0,0.0 | ||||
| # | ||||
| 90.0 nem:1 velocity 90.0,0.0,10.0 | ||||
| 90.0 nem:1 orientation 0.0,0.0,0.0 | ||||
| 90.0 nem:1 antennaprofile 1,45.0,0.0 | ||||
| ``` | ||||
| 
 | ||||
| Run the EMANE event service, monitor what is output on n1 for events | ||||
| dumped and see the link changes within the CORE GUI. | ||||
| ```shell | ||||
| emaneeventservice -l 3 eventservice.xml | ||||
| ``` | ||||
| 
 | ||||
| ### Stages | ||||
| The events sent will trigger 4 different states. | ||||
| 
 | ||||
| * State 1 | ||||
|   * n2 and n3 see each other | ||||
|   * n4 and n3 are pointing away | ||||
| * State 2 | ||||
|   * n2 and n3 see each other | ||||
|   * n1 and n2 see each other | ||||
|   * n4 and n3 see each other | ||||
| * State 3 | ||||
|   * n2 and n3 see each other | ||||
|   * n4 and n3 are pointing at each other but blocked | ||||
| * State 4 | ||||
|   * n2 and n3 see each other | ||||
|   * n4 and n3 see each other | ||||
|  | @ -8,7 +8,7 @@ Introduction to using the EMANE event service and eel files to provide events. | |||
| [EMANE Demo 1](https://github.com/adjacentlink/emane-tutorial/wiki/Demonstration-1) | ||||
| for more specifics. | ||||
| 
 | ||||
| ### Run Demo | ||||
| ## Run Demo | ||||
| 1. Select `Open...` within the GUI | ||||
| 1. Load `emane-demo-eel.xml` | ||||
| 1. Click  | ||||
|  | @ -32,7 +32,7 @@ EMANE event service targeting the control network. | |||
| > network value | ||||
| 
 | ||||
| Create `eventservice.xml` with the following contents. | ||||
| ```shell | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE eventservice SYSTEM "file:///usr/share/emane/dtd/eventservice.dtd"> | ||||
| <eventservice> | ||||
|  | @ -57,7 +57,7 @@ These configuration items tell the EEL Generator which sentences to map to | |||
| which plugin and whether to issue delta or full updates. | ||||
| 
 | ||||
| Create `eelgenerator.xml` with the following contents. | ||||
| ```shell | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE eventgenerator SYSTEM "file:///usr/share/emane/dtd/eventgenerator.dtd"> | ||||
| <eventgenerator library="eelgenerator"> | ||||
|  |  | |||
|  | @ -23,7 +23,7 @@ gpsd server and make EMANE location events available to gpsd clients. | |||
| 
 | ||||
| ### EMANE GPSD Event Daemon | ||||
| First create an `eventdaemon.xml` file on n1 with the following contents. | ||||
| ```shell | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE eventdaemon SYSTEM "file:///usr/share/emane/dtd/eventdaemon.dtd"> | ||||
| <eventdaemon nemid="1"> | ||||
|  | @ -34,7 +34,7 @@ First create an `eventdaemon.xml` file on n1 with the following contents. | |||
| ``` | ||||
| 
 | ||||
| Then create the `gpsdlocationagent.xml` file on n1 with the following contents. | ||||
| ```shell | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE eventagent SYSTEM "file:///usr/share/emane/dtd/eventagent.dtd"> | ||||
| <eventagent library="gpsdlocationagent"> | ||||
|  | @ -59,12 +59,11 @@ EEL Events will be played out from the actual host machine over the designated | |||
| control network interface. Create the following files in the same directory | ||||
| somewhere on your host. | ||||
| 
 | ||||
| Create `eventservice.xml` on the host machine with the following contents. | ||||
| 
 | ||||
| > **NOTE:** make sure the below eventservicedevice matches the control network | ||||
| > device being used on the host for EMANE | ||||
| 
 | ||||
| ```shell | ||||
| Create `eventservice.xml` on the host machine with the following contents. | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE eventservice SYSTEM "file:///usr/share/emane/dtd/eventservice.dtd"> | ||||
| <eventservice> | ||||
|  | @ -75,7 +74,7 @@ Create `eventservice.xml` on the host machine with the following contents. | |||
| ``` | ||||
| 
 | ||||
| Create `eelgenerator.xml` on the host machine with the following contents. | ||||
| ```shell | ||||
| ```xml | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <!DOCTYPE eventgenerator SYSTEM "file:///usr/share/emane/dtd/eventgenerator.dtd"> | ||||
| <eventgenerator library="eelgenerator"> | ||||
|  |  | |||
|  | @ -8,7 +8,7 @@ Introduction to using the precomputed propagation model. | |||
| [EMANE Demo 1](https://github.com/adjacentlink/emane-tutorial/wiki/Demonstration-1) | ||||
| for more specifics. | ||||
| 
 | ||||
| ### Run Demo | ||||
| ## Run Demo | ||||
| 1. Select `Open...` within the GUI | ||||
| 1. Load `emane-demo-precomputed.xml` | ||||
| 1. Click  | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue