from ahoy.conditions.srccondition import SourceCondition from ahoy.agents.aisship import AISShip from ahoy.agents.smallship import SmallShip from ahoy.agents.sensorforwardagent import SensorForwardAgent from ahoy.sensors.radarsensor import RadarSensor from ahoy.sensors.sonarsensor import SonarSensor from ahoy.agents.correlationagent import CorrelationAgent #from ahoy.agents.histcorragent import HistoryCorrelationAgent from ahoy.util.units import * world = World() aisnet = Network('aisn', LogLossComms()) world.add_network(aisnet) for i in range(0, 2): n = Node(len(world.get_entities())) n.add_interface(Interface('ais1', aisnet, power=120)) ship = AISShip(n.get_uid(), 0.0203, 'localhost', 12347, 'ais1') n.add_agent(ship) world.add_entity(n) path = "agents/paths/path" for i in range(9,11): n = Node(len(world.get_entities())) ship = SmallShip(n.get_uid(), i, 0.03, path + str(i) + ".dat") n.add_agent(ship) world.add_entity(n) # Make sensor interfaces s1net = Network('sonar1n', LogLossComms())
from ahoy.conditions.srccondition import SourceCondition from ahoy.agents.aisship import AISShip from ahoy.agents.smallship import SmallShip from ahoy.agents.divertagent import DivertAgent from ahoy.agents.sensorforwardagent import SensorForwardAgent from ahoy.sensors.radarsensor import RadarSensor from ahoy.sensors.sonarsensor import SonarSensor from ahoy.agents.correlationagent import CorrelationAgent from ahoy.util.units import * world = World() aisnet = Network('aisn', LogLossComms()) world.add_network(aisnet) for i in range(0, 6): n = Node(len(world.get_entities())) n.add_interface(Interface('ais1', aisnet, power=120)) ship = AISShip(n.get_uid(), 0.0203, 'localhost', 12346, 'ais1') n.add_agent(ship) world.add_entity(n) path = "agents/paths/path" for i in range(8,12): n = Node(len(world.get_entities())) ship = SmallShip(n.get_uid(), i, 0.03, path + str(i) + ".dat") n.add_agent(ship) world.add_entity(n) """ # Make sensor interfaces s1net = Network('sonar1n', LogLossComms())
from ahoy.sensors.camerasensor import CameraSensor from ahoy.agents.threat import ThreatShip from ahoy.agents.tanker import Tanker from ahoy.agents.correlationagent import CorrelationAgent world = World() wlan = Network('wlan0', LogLossComms()) tnet = Network('tnet',LogLossComms()) world.add_network(wlan) world.add_network(tnet) path = "agents/paths/path" pathfile = "agents/paths/tpaths.dat" tanknode = Node(len(world.get_entities())) #uavnode.set_position(39.8656978,-75.21841399, 0.0001) tanknode.add_interface(Interface('tnet',tnet,power=120)) tanknode.add_agent(Tanker(tanknode.get_uid(),0.08,'tnet',pathfile)) world.add_entity(tanknode) threatnode = Node(len(world.get_entities())) tagent = ThreatShip(threatnode.get_uid(),0.10,pathfile) tagent.follow(tanknode.get_uid()) threatnode.add_agent(tagent) world.add_entity(threatnode) #for i in range(0,4): # n = Node(i+100) # ship = SmallShip(i+200, i, 0.03, path + str(i) + ".dat") # n.add_agent(ship)
s2net = Network('sonar2n', LogLossComms()) world.add_network(s2net) s3net = Network('sonar3n', LogLossComms()) world.add_network(s3net) r1net = Network('radar1n', LogLossComms()) world.add_network(r1net) # SW tip of airport sonar1n = Node(901) sonar1n.set_position(39.8560599677, -75.255277528, 0) sonar1n.add_sensor('sonar', SonarSensor(source_level=220, source_bw=10, array_size=360, interval=5, min_snr=2)) sonar1n.add_interface(Interface('sonar1', s1net, power=120)) world.add_entity(sonar1n) # Eastern bank of river, north of 76 bridge to NJ sonar2n = Node(len(world.get_entities())) sonar2n.set_position(39.9103365806, -75.1257383781, 0) sonar2n.add_sensor('sonar', SonarSensor(source_level=220, source_bw=10, array_size=360, interval=5, min_snr=2)) sonar2n.add_interface(Interface('sonar2', s2net, power=120)) world.add_entity(sonar2n) # Red Bank Battlefield (nw part of land sticking out south of navy yard) sonar3n = Node(902) sonar3n.set_position(39.872596,-75.190008, 0) sonar3n.add_sensor('sonar', SonarSensor(source_level=220, source_bw=10, array_size=360, interval=5, min_snr=120, use_event_channel=True)) sonar3n.add_interface(Interface('sonar3', s3net, power=120)) world.add_entity(sonar3n) # On pier of naval yard radarn = Node(903) radarn.set_position(39.886597, -75.166043, 0)
(39.9558, -75.1386, 39.9475, -75.1314), (39.9468, -75.1396, 39.9419, -75.1314), (39.9410, -75.1420, 39.9360, -75.1321), (39.9330, -75.1418, 39.9281, -75.1311) ] for i, loc in enumerate(heli_areas) : heli = Node(i) heli.set_position(loc[0], loc[1], feet(i * 100)) nw = (loc[0], loc[1]) se = (loc[2], loc[3]) heli.add_agent(RectangleSurveilAgent(i, nw, se, feet(150))) heli.add_interface(Interface('wlan0', wlan, power=120)) world.add_entity(heli) radar = Node(len(world.get_entities())) radar.set_position(39.9485, -75.1325, 0) radar.add_sensor('radar', RadarSensor(watts(6000), 25, 1, 5, 1, 3/360.0, 1, use_event_channel=True)) world.add_entity(radar) paths = [ [feet(15), (39.9545, -75.1358, 0), (39.9432, -75.1363, 0), (39.9273, -75.1348, 0)], [feet(100), (39.9534, -75.1320, 0), (39.9374, -75.1367, 0), (39.9263, -75.1322, 0)], [feet(25), (39.9281, -75.1385, 0), (39.9416, -75.1393, 0), (39.9591, -75.1341, 0)], [feet(50), (39.9268, -75.1322, 0), (39.9333, -75.1340, 0), (39.9482, -75.1337, 0), (39.9583, -75.1322, 0)] ] for path in paths : e = Scripted(len(world.get_entities()), path[2:], path[0], 0) e.set_position(*path[1]) world.add_entity(e)
''' # Red Bank Battlefield (nw part of land sticking out south of navy yard) sonar3n = Node(902) sonar3n.set_position(39.872596,-75.190008, 0) sonar3n.add_sensor('sonar', SonarSensor(source_level=220, source_bw=10, array_size=360, interval=5, min_snr=120, use_event_channel=True)) world.add_entity(sonar3n) # On pier of naval yard radarn = Node(903) radarn.set_position(39.886597, -75.166043, 0) radarn.add_sensor('radar', RadarSensor(trans_power=watts(6000), trans_freq=25, gain=1, aperature=5, prop_fact=1, dwell_time=3/360.0, angle=1, use_event_channel=True)) radarn.add_agent(SensorForwardAgent(radarn.get_uid(), 'radar', 'radar1')) world.add_entity(radarn) ''' # Ground station groundst = Node(len(world.get_entities())) groundst.set_position(39.887911, -75.187533, 0) groundst.add_interface(Interface('aisn', aisnet, power=12000)) groundst.add_agent(DivertAgent(len(world.get_entities()),'aisn')) world.add_entity(groundst) #create tanker tanknode = Node(len(world.get_entities())) tanknode.add_interface(Interface('aisn',aisnet,power=120)) tanknode.add_agent(Tanker(80,0.08,'aisn',pathfile)) world.add_entity(tanknode) active = [[39.890750000000004, -75.196423312500002], [39.883578125, -75.195800625000004], [39.878743749999998, -75.196907624999994], [39.873325000000001, -75.202165874999992], [39.869075000000002, -75.208600312499996], [39.8930875, -75.193794187500004], [39.888784375, -75.193725000000001], [39.886287500000002, -75.196215749999993], [39.885490625000003, -75.193309874999997], [39.882303125, -75.192272062499995], [39.881718750000005, -75.198222187499994], [39.880125, -75.201612374999996], [39.877787500000004, -75.204725812500001], [39.875450000000001, -75.207008999999999], [39.872740624999999, -75.211437000000004], [39.876512500000004, -75.201681562499999], [39.869871875000001, -75.204379875000001], [39.86981875, -75.214204499999994], [39.875396875, -75.197599499999995], [39.879062500000003, -75.191856937499992], [39.867587499999999, -75.220292999999998], [39.866631250000005, -75.215934187499997], [39.863975000000003, -75.213581812499996], [39.863709374999999, -75.219808687499992], [39.864931249999998, -75.226589062499997], [39.892609374999999, -75.201197249999993], [39.894893750000001, -75.203480437500005], [39.894309374999999, -75.207285749999997], [39.896646875000002, -75.208600312499996], [39.898293750000001, -75.213305062499998], [39.900950000000002, -75.212889937499995], [39.872475000000001, -75.207147374999991], [39.870350000000002, -75.199744312500002], [39.875450000000001, -75.193863374999992], [39.872262500000005, -75.196077375000002], [39.861637500000001, -75.218632499999998], [39.861212500000001, -75.226727437500003], [39.862275000000004, -75.232262437499998]] for loc in active : #for i in range(0,len(active),2) :
from ahoy.world import World from ahoy.entities.node import Node from ahoy.sensors.radarsensor import RadarSensor from ahoy.sensors.sonarsensor import SonarSensor from ahoy.entities.scripted import Scripted from ahoy.agents.rectanglesurveil import RectangleSurveilAgent from ahoy.commsengines.logloss import LogLossComms from ahoy.tcpforward import TcpForward from ahoy.network import Network from ahoy.interface import Interface from ahoy.util.units import * world = World() # SW tip of airport sonar1n = Node(len(world.get_entities())) sonar1n.set_position(39.8560599677, -75.255277528, 0) sonar1n.add_sensor('sonar', SonarSensor(source_level=220, source_bw=10, array_size=360, interval=5, min_snr=2)) world.add_entity(sonar1n) # Eastern bank of river, north of 76 bridge to NJ sonar2n = Node(len(world.get_entities())) sonar2n.set_position(39.9103365806, -75.1257383781, 0) sonar2n.add_sensor('sonar', SonarSensor(source_level=220, source_bw=10, array_size=360, interval=5, min_snr=2)) world.add_entity(sonar2n) # On pier of naval yard radarn = Node(len(world.get_entities())) radarn.set_position(39.886597, -75.166043, 0) radarn.add_sensor('radar', RadarSensor(trans_power=watts(6000), trans_freq=25, gain=1, aperature=5, prop_fact=1, dwell_time=3/360.0, angle=1)) world.add_entity(sonar2n)