1 | defProperty('txnode', 'node21-1.grid.orbit-lab.org', "Console connected to the transmit node")
|
---|
2 | #defProperty('addr', 'addr=10.10.23.3', "IP address of USRP")
|
---|
3 | defProperty('rate', '5e6', "Sampling rate")
|
---|
4 | #defProperty('freq', '5030000000', "Center frequency")
|
---|
5 | defProperty('t_on', '5', "ON duration (number of slots)")
|
---|
6 | defProperty('t_off', '7', "OFF duration (number of slots)")
|
---|
7 | #defProperty('t_gran', '0.5', "Time granularity (in seconds)")
|
---|
8 | defProperty('runtime', 50, "Run time (s)")
|
---|
9 |
|
---|
10 | defApplication('test:app:genericofdm', 'generic_ofdm.py') { |a|
|
---|
11 | a.version(2, 0, 4)
|
---|
12 | a.shortDescription = ""
|
---|
13 | a.description = ""
|
---|
14 | a.path = "export LC_ALL=C;/root/SC2/generic_ofdm.py"
|
---|
15 | a.defProperty('addr', "IP address of USRP", '--addr',
|
---|
16 | {:dynamic => false, :type => :string})
|
---|
17 | a.defProperty('freq', "center frequency in Hz", '-f',
|
---|
18 | {:dynamic => false, :type => :string})
|
---|
19 | a.defProperty('gain', "Transmit gain in dB", '--gain',
|
---|
20 | {:dynamic => false, :type => :string})
|
---|
21 | a.defProperty('rate', "specify sampling rate", '--rate',
|
---|
22 | {:dynamic => false, :type => :string})
|
---|
23 | a.defProperty('t_gran', "specify size of time slot in seconds", '--t-gran',
|
---|
24 | {:dynamic => false, :type => :string})
|
---|
25 | a.defProperty('t_on', "specify ON duration (number of slots)", '--t-on',
|
---|
26 | {:dynamic => false, :type => :string})
|
---|
27 | a.defProperty('t_off', "specify OFF duration (number of slots)", '--t-off',
|
---|
28 | {:dynamic => false, :type => :string})
|
---|
29 | }
|
---|
30 |
|
---|
31 | defGroup('tx_node0', property.txnode) { |n|
|
---|
32 | n.addApplication('test:app:genericofdm') { |app|
|
---|
33 | app.setProperty('addr','addr=10.10.23.1')
|
---|
34 | app.setProperty('freq', '5040000000')
|
---|
35 | app.setProperty('rate',property.rate)
|
---|
36 | app.setProperty('gain','20')
|
---|
37 | app.setProperty('t_gran','0.4')
|
---|
38 | app.setProperty('t_on',property.t_on)
|
---|
39 | app.setProperty('t_off',property.t_off)
|
---|
40 | }
|
---|
41 | }
|
---|
42 |
|
---|
43 | defGroup('tx_node1', property.txnode) { |n|
|
---|
44 | n.addApplication('test:app:genericofdm') { |app|
|
---|
45 | app.setProperty('addr','addr=10.10.23.2')
|
---|
46 | app.setProperty('freq', '5050000000')
|
---|
47 | app.setProperty('rate',property.rate)
|
---|
48 | app.setProperty('gain','20')
|
---|
49 | app.setProperty('t_gran','0.5')
|
---|
50 | app.setProperty('t_on',property.t_on)
|
---|
51 | app.setProperty('t_off',property.t_off)
|
---|
52 | }
|
---|
53 | }
|
---|
54 |
|
---|
55 | onEvent(:ALL_UP_AND_INSTALLED) { |event|
|
---|
56 | info "Give machines some time to warm up :-)"
|
---|
57 | wait 2
|
---|
58 | info "Starting the transmitter"
|
---|
59 | allGroups.startApplications
|
---|
60 | info "Runing for #{property.runtime} seconds..."
|
---|
61 | wait property.runtime
|
---|
62 | info "Done! Stop eveything"
|
---|
63 | allGroups.stopApplications
|
---|
64 | Experiment.done
|
---|
65 | }
|
---|
66 |
|
---|