@@ -279,13 +279,25 def experiment(request, id_exp): | |||
|
279 | 279 | kwargs = {} |
|
280 | 280 | kwargs['experiment_keys'] = ['name', 'latitude', 'longitude', 'heading'] |
|
281 | 281 | kwargs['experiment'] = experiment |
|
282 | kwargs['experiment_pedestal_keys'] = ['mode', 'axis', 'speed', 'angle'] | |
|
282 | ||
|
283 | if conf_pedestal.mode == 'position': | |
|
284 | kwargs['experiment_pedestal_keys'] = ['mode', 'axis', 'angle'] | |
|
285 | elif conf_pedestal.mode == 'speed': | |
|
286 | kwargs['experiment_pedestal_keys'] = ['mode', 'axis', 'speed'] | |
|
287 | else: | |
|
288 | kwargs['experiment_pedestal_keys'] = ['mode', 'axis', 'speed', 'angle', 'min_value', 'max_value'] | |
|
283 | 289 | kwargs['experiment_pedestal'] = conf_pedestal |
|
284 | kwargs['experiment_rx_keys'] = ['samplerate_rx', 'frequency_rx', 'datadir', 'clocksource', 'timesource', 'clockrate'] | |
|
290 | ||
|
291 | kwargs['experiment_rx_keys'] = ['ip_address_rx', 'daughterboard_rx', 'antenna_rx', 'samplerate_rx', 'frequency_rx', 'datadir', 'clocksource', 'timesource', 'clockrate'] | |
|
285 | 292 | kwargs['experiment_rx'] = conf_rx |
|
286 | kwargs['experiment_tx_keys'] = ['frequency', 'samplerate', 'ipp', 'delay', 'pulse_1', 'code_type_1', 'code_1', 'repetitions_1', | |
|
287 | 'enable_2', 'pulse_2', 'code_type_2', 'code_2', 'repetitions_2'] | |
|
293 | ||
|
294 | if not conf_tx.enable_2: | |
|
295 | kwargs['experiment_tx_keys'] = ['ip_address', 'daughterboard', 'antenna', 'frequency', 'samplerate', 'ipp', 'delay', 'pulse_1', 'code_type_1', 'code_1', 'repetitions_1'] | |
|
296 | else: | |
|
297 | kwargs['experiment_tx_keys'] = ['ip_address', 'daughterboard', 'antenna', 'frequency', 'samplerate', 'ipp', 'delay', 'pulse_1', 'code_type_1', 'code_1', 'repetitions_1', | |
|
298 | 'pulse_2', 'code_type_2', 'code_2', 'repetitions_2'] | |
|
288 | 299 | kwargs['experiment_tx'] = conf_tx |
|
300 | ||
|
289 | 301 | kwargs['title'] = 'Experiment' |
|
290 | 302 | kwargs['suptitle'] = 'Details' |
|
291 | 303 | kwargs['button'] = 'Add Configuration' |
@@ -232,6 +232,10 class PedestalConfiguration(Configuration): | |||
|
232 | 232 | coded_table = base64.standard_b64encode(bytes(byte_table)) |
|
233 | 233 | coded_table_ascii = coded_table.decode('ascii') |
|
234 | 234 | speed = [float(x.strip()) for x in self.speed.split(',')] |
|
235 | ||
|
236 | if isinstance(axis, str): | |
|
237 | axis = [axis] | |
|
238 | ||
|
235 | 239 | payload = { |
|
236 | 240 | 'arraylength': len(speed), |
|
237 | 241 | 'axis': axis, |
@@ -65,7 +65,7 class USRPRXEditionForm(forms.ModelForm): | |||
|
65 | 65 | |
|
66 | 66 | class Meta: |
|
67 | 67 | model = USRPRXConfiguration |
|
68 |
exclude = ('template', 'device', 'label |
|
|
68 | exclude = ('template', 'device', 'label', 'type', 'parameters', 'status', 'total_units', 'author', 'hash') | |
|
69 | 69 | |
|
70 | 70 | def clean(self): |
|
71 | 71 | form_data = super(USRPRXEditionForm, self).clean() |
@@ -33,12 +33,12 TIME_VALUE = ( | |||
|
33 | 33 | |
|
34 | 34 | class USRPRXConfiguration(Configuration): |
|
35 | 35 | |
|
36 | ip_address = models.GenericIPAddressField( | |
|
36 | ip_address_rx = models.GenericIPAddressField( | |
|
37 | 37 | verbose_name = 'IP address', |
|
38 | 38 | protocol='IPv4', |
|
39 | 39 | default='0.0.0.0') |
|
40 | 40 | |
|
41 | daughterboard = models.CharField( | |
|
41 | daughterboard_rx = models.CharField( | |
|
42 | 42 | verbose_name='Daughterboard', |
|
43 | 43 | max_length=3, |
|
44 | 44 | choices=BOARD_VALUE, |
@@ -46,7 +46,7 class USRPRXConfiguration(Configuration): | |||
|
46 | 46 | blank=False |
|
47 | 47 | ) |
|
48 | 48 | |
|
49 | antenna = models.CharField( | |
|
49 | antenna_rx = models.CharField( | |
|
50 | 50 | verbose_name='Antenna', |
|
51 | 51 | max_length=3, |
|
52 | 52 | choices=ANT_VALUE, |
@@ -55,7 +55,7 class USRPRXConfiguration(Configuration): | |||
|
55 | 55 | ) |
|
56 | 56 | |
|
57 | 57 | samplerate_rx = models.FloatField( |
|
58 | verbose_name='Sample Rate', | |
|
58 | verbose_name='Sample Rate [MHz]', | |
|
59 | 59 | validators=[MinValueValidator(0.01), MaxValueValidator(10.00)], |
|
60 | 60 | blank=False, |
|
61 | 61 | null=False, |
@@ -63,7 +63,7 class USRPRXConfiguration(Configuration): | |||
|
63 | 63 | ) |
|
64 | 64 | |
|
65 | 65 | frequency_rx = models.FloatField( |
|
66 | verbose_name='Frequency', | |
|
66 | verbose_name='Frequency [MHz]', | |
|
67 | 67 | validators=[MinValueValidator(0.01)], |
|
68 | 68 | blank=False, |
|
69 | 69 | null=False, |
@@ -96,7 +96,7 class USRPRXConfiguration(Configuration): | |||
|
96 | 96 | ) |
|
97 | 97 | |
|
98 | 98 | clockrate = models.FloatField( |
|
99 | verbose_name='Clock Rate', | |
|
99 | verbose_name='Clock Rate [MHz]', | |
|
100 | 100 | blank=False, |
|
101 | 101 | null=False, |
|
102 | 102 | help_text='Introduce the value in MHz (10^6)' |
@@ -190,12 +190,12 class USRPRXConfiguration(Configuration): | |||
|
190 | 190 | |
|
191 | 191 | try: |
|
192 | 192 | usrp = USRPRXConfiguration.objects.get(pk=self) |
|
193 | usrp_daughterboard = usrp.get_daughterboard_display() | |
|
194 | usrp_antenna = usrp.get_antenna_display() | |
|
193 | usrp_daughterboard_rx = usrp.get_daughterboard_rx_display() | |
|
194 | usrp_antenna_rx = usrp.get_antenna_rx_display() | |
|
195 | 195 | usrp_clocksource = usrp.get_clocksource_display() |
|
196 | 196 | usrp_timesource = usrp.get_timesource_display() |
|
197 | 197 | |
|
198 | payload = {'ip_address': usrp.ip_address, 'daughterboard': usrp_daughterboard, 'antenna': usrp_antenna, 'sample_rate': usrp.samplerate_rx, 'frequency': usrp.frequency_rx, | |
|
198 | payload = {'ip_address': usrp.ip_address_rx, 'daughterboard': usrp_daughterboard_rx, 'antenna': usrp_antenna_rx, 'sample_rate': usrp.samplerate_rx, 'frequency': usrp.frequency_rx, | |
|
199 | 199 | 'datadir': usrp.datadir, 'clock_source': usrp_clocksource, 'time_source': usrp_timesource, 'clock_rate':usrp.clockrate} |
|
200 | 200 | |
|
201 | 201 | r = requests.post(self.device.url("usrprx"), json=payload) |
@@ -19,7 +19,7 def conf(request, conf_id): | |||
|
19 | 19 | |
|
20 | 20 | kwargs = {} |
|
21 | 21 | kwargs['dev_conf'] = conf |
|
22 | kwargs['dev_conf_keys'] = ['ip_address', 'daughterboard', 'antenna', 'samplerate_rx', 'frequency_rx', 'datadir', 'clocksource', 'timesource', 'clockrate'] | |
|
22 | kwargs['dev_conf_keys'] = ['ip_address_rx', 'daughterboard_rx', 'antenna_rx', 'samplerate_rx', 'frequency_rx', 'datadir', 'clocksource', 'timesource', 'clockrate'] | |
|
23 | 23 | |
|
24 | 24 | kwargs['title'] = 'Configuration' |
|
25 | 25 | kwargs['suptitle'] = 'Detail' |
@@ -97,7 +97,7 class USRPTXEditionForm(forms.ModelForm): | |||
|
97 | 97 | |
|
98 | 98 | class Meta: |
|
99 | 99 | model = USRPTXConfiguration |
|
100 |
exclude = ('template', 'device', 'label |
|
|
100 | exclude = ('template', 'device', 'label', 'type', 'parameters', 'status', 'total_units', 'author', 'hash') | |
|
101 | 101 | |
|
102 | 102 | def clean(self): |
|
103 | 103 | form_data = super(USRPTXEditionForm, self).clean() |
General Comments 0
You need to be logged in to leave comments.
Login now