Skip to content

Commit db792d5

Browse files
committed
Add new payload sdr
1 parent 469a6a9 commit db792d5

File tree

3 files changed

+74
-7
lines changed

3 files changed

+74
-7
lines changed

sim-ops-lib/so/spacecraft.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@ class SpacecraftState:
5454
pl_gps_status: Status = Status.off
5555
pl_gps_pos: list[Status] = field(default_factory=lambda: [0.0, 0.0, 0.0])
5656
pl_camera_status: Status = Status.off
57+
pl_camera_config: str = 'VNIR'
58+
pl_sdr_status: Status = Status.off
59+
pl_sdr_config: str = 'IoT'
5760

5861
# book-keeping
5962
gs_carrier_ul = Status.off
@@ -536,6 +539,14 @@ def control(self, data, ov_state=None, admin=False):
536539
else:
537540
return _fail
538541

542+
if data['control'] == 'pl_sdr_status':
543+
if self.state.dhs_obsw_mode == Status.nominal:
544+
if data['value'] in ['on', 'off']:
545+
self._set_state([('pl_sdr_status', Status[data['value']] )])
546+
return _ok
547+
else:
548+
return _fail
549+
539550
# control not found
540551
return _fail
541552

sim-ops-mcs/src/views/Payload.vue

Lines changed: 57 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,15 @@ export default {
128128
</div>
129129

130130
<div class="row" v-if="renderComponent && !compact">
131-
<h5>Hyperspectral Camera</h5>
131+
<div class="col-xl-4 col-lg-4">
132+
<h5>Camera</h5>
133+
</div>
134+
<div class="col-xl-4 col-lg-4">
135+
<h5>SDR</h5>
136+
</div>
137+
</div>
138+
139+
<div class="row" v-if="renderComponent && !compact">
132140
<div class="col-xl-2 col-lg-2">
133141
<card class="mb-3">
134142
<card-header class="card-header fw-bold small text-center p-1">Camera Status</card-header>
@@ -138,6 +146,34 @@ export default {
138146
</card-body>
139147
</card>
140148
</div>
149+
<div class="col-xl-2 col-lg-2">
150+
<card class="mb-3">
151+
<card-header class="card-header fw-bold small text-center p-1">Camera Config</card-header>
152+
<card-body class="p-2 mx-2">
153+
<h3 v-if="state" class="mb-0 text-center">{{ state.pl_camera_config }}</h3>
154+
<h3 v-else>_</h3>
155+
</card-body>
156+
</card>
157+
</div>
158+
159+
<div class="col-xl-2 col-lg-2">
160+
<card class="mb-3">
161+
<card-header class="card-header fw-bold small text-center p-1">SDR Status</card-header>
162+
<card-body class="p-2 mx-2">
163+
<span v-if="state" class="badge rounded-0 app-w-100 text-uppercase" :class="{ 'bg-theme': state.pl_sdr_status==='on', 'bg-danger': state.pl_sdr_status!=='on' }">{{ state.pl_sdr_status }}</span>
164+
<span v-else>_</span>
165+
</card-body>
166+
</card>
167+
</div>
168+
<div class="col-xl-2 col-lg-2">
169+
<card class="mb-3">
170+
<card-header class="card-header fw-bold small text-center p-1">SDR Config</card-header>
171+
<card-body class="p-2 mx-2">
172+
<h3 v-if="state" class="mb-0 text-center">{{ state.pl_sdr_config }}</h3>
173+
<h3 v-else>_</h3>
174+
</card-body>
175+
</card>
176+
</div>
141177
</div>
142178

143179
<div class="row" v-if="renderComponent && compact">
@@ -170,13 +206,31 @@ export default {
170206
<td v-else>_</td>
171207
</tr>
172208
<tr>
173-
<td colspan="2"><h5>Hyperspectral Camera</h5></td>
209+
<td colspan="2"><h5>Camera</h5></td>
174210
</tr>
175211
<tr>
176-
<td class="app-w-col">Camera Status</td>
212+
<td>Camera Status</td>
177213
<td v-if="state"><div class="app-badge rounded-0 app-w-100 text-uppercase" :class="{ 'bg-theme': state.pl_camera_status==='on', 'bg-danger': state.pl_camera_status!=='on' }">{{ state.pl_camera_status }}</div></td>
178214
<td v-else>_</td>
179215
</tr>
216+
<tr>
217+
<td>Camera Config</td>
218+
<td v-if="state"><div class="app-badge rounded-0 app-w-100 text-uppercase bg-dark">{{ state.pl_camera_config }}</div></td>
219+
<td v-else>_</td>
220+
</tr>
221+
<tr>
222+
<td colspan="2"><h5>SDR</h5></td>
223+
</tr>
224+
<tr>
225+
<td>SDR Status</td>
226+
<td v-if="state"><div class="app-badge rounded-0 app-w-100 text-uppercase" :class="{ 'bg-theme': state.pl_sdr_status==='on', 'bg-danger': state.pl_sdr_status!=='on' }">{{ state.pl_sdr_status }}</div></td>
227+
<td v-else>_</td>
228+
</tr>
229+
<tr>
230+
<td>SDR Freq</td>
231+
<td v-if="state"><div class="app-badge rounded-0 app-w-100 text-uppercase bg-dark">{{ state.pl_sdr_config }}</div></td>
232+
<td v-else>_</td>
233+
</tr>
180234
</tbody>
181235
</table>
182236
</card-body>

sim-ops-mcs/src/views/SpaCon.vue

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -348,10 +348,12 @@ export default {
348348
</div>
349349
<div class="col">
350350
<h6 class="mt-2 mb-0">Payload</h6>
351-
<button @click="addStack('TC_PL_001', 'pl_gps_status', 'on', $event)" type="button" class="btn btn-sm btn-outline-theme me-2 mt-2" title="GPS ON">TC_PL_001</button>
352-
<button @click="addStack('TC_PL_002', 'pl_gps_status', 'off', $event)" type="button" class="btn btn-sm btn-outline-theme me-2 mt-2" title="GPS OFF">TC_PL_002</button>
353-
<button @click="addStack('TC_PL_011', 'pl_camera_status', 'on', $event)" type="button" class="btn btn-sm btn-outline-theme me-2 mt-2" title="Camera ON">TC_PL_011</button>
354-
<button @click="addStack('TC_PL_012', 'pl_camera_status', 'off', $event)" type="button" class="btn btn-sm btn-outline-theme me-1 mt-2" title="Camera OFF">TC_PL_012</button>
351+
<button @click="addStack('TC_PL_001', 'pl_gps_status', 'on', $event)" type="button" class="btn btn-sm btn-outline-theme me-2 mt-2" title="Power GPS On">TC_PL_001</button>
352+
<button @click="addStack('TC_PL_002', 'pl_gps_status', 'off', $event)" type="button" class="btn btn-sm btn-outline-theme me-2 mt-2" title="Power GPS Off">TC_PL_002</button>
353+
<button @click="addStack('TC_PL_011', 'pl_camera_status', 'on', $event)" type="button" class="btn btn-sm btn-outline-theme me-2 mt-2" title="Power Camera On">TC_PL_011</button>
354+
<button @click="addStack('TC_PL_012', 'pl_camera_status', 'off', $event)" type="button" class="btn btn-sm btn-outline-theme me-1 mt-2" title="Power Camera Off">TC_PL_012</button>
355+
<button @click="addStack('TC_PL_021', 'pl_sdr_status', 'on', $event)" type="button" class="btn btn-sm btn-outline-theme me-2 mt-2" title="Power SDR On">TC_PL_021</button>
356+
<button @click="addStack('TC_PL_022', 'pl_sdr_status', 'off', $event)" type="button" class="btn btn-sm btn-outline-theme me-1 mt-2" title="Power SDR Off">TC_PL_022</button>
355357
</div>
356358
</div>
357359
</card-body>

0 commit comments

Comments
 (0)