Skip to content

Commit fe27a58

Browse files
committed
Unify power monitor
1 parent 2fe4c95 commit fe27a58

File tree

4 files changed

+35
-26
lines changed

4 files changed

+35
-26
lines changed

FprimeZephyrReference/Components/PowerMonitor/PowerMonitor.cpp

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,15 @@ PowerMonitor ::~PowerMonitor() {}
2020
// ----------------------------------------------------------------------
2121

2222
void PowerMonitor ::run_handler(FwIndexType portNum, U32 context) {
23-
this->voltageGet_out(0);
24-
this->currentGet_out(0);
25-
this->powerGet_out(0);
23+
// System Power Monitor INA219 Requests
24+
this->sysVoltageGet_out(0);
25+
this->sysCurrentGet_out(0);
26+
this->sysPowerGet_out(0);
27+
28+
// Solar Panel Power Monitor INA219 Requests
29+
this->solVoltageGet_out(0);
30+
this->solCurrentGet_out(0);
31+
this->solPowerGet_out(0);
2632
}
2733

2834
} // namespace Components

FprimeZephyrReference/Components/PowerMonitor/PowerMonitor.fpp

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,23 @@ module Components {
33
passive component PowerMonitor {
44
sync input port run: Svc.Sched
55

6-
@ Port for sending voltageGet calls to the INA219 Driver
7-
output port voltageGet: Drv.VoltageGet
6+
@ Port for sending voltageGet calls to the System INA219 Driver
7+
output port sysVoltageGet: Drv.VoltageGet
88

9-
@ Port for sending currentGet calls to the INA219 Driver
10-
output port currentGet: Drv.CurrentGet
9+
@ Port for sending currentGet calls to the System INA219 Driver
10+
output port sysCurrentGet: Drv.CurrentGet
1111

12-
@ Port for sending powerGet calls to the INA219 Driver
13-
output port powerGet: Drv.PowerGet
12+
@ Port for sending powerGet calls to the System INA219 Driver
13+
output port sysPowerGet: Drv.PowerGet
14+
15+
@ Port for sending voltageGet calls to the Solar Panel INA219 Driver
16+
output port solVoltageGet: Drv.VoltageGet
17+
18+
@ Port for sending currentGet calls to the Solar Panel INA219 Driver
19+
output port solCurrentGet: Drv.CurrentGet
20+
21+
@ Port for sending powerGet calls to the Solar Panel INA219 Driver
22+
output port solPowerGet: Drv.PowerGet
1423

1524
###############################################################################
1625
# Standard AC Ports: Required for Channels, Events, Commands, and Parameters #

FprimeZephyrReference/ReferenceDeployment/Top/instances.fpp

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -90,11 +90,9 @@ module ReferenceDeployment {
9090

9191
instance fsSpace: Components.FsSpace base id 0x10030000
9292

93-
instance sysPowerMonitor: Components.PowerMonitor base id 0x10031000
93+
instance powerMonitor: Components.PowerMonitor base id 0x10031000
9494

95-
instance solPowerMonitor: Components.PowerMonitor base id 0x10032000
95+
instance ina219SysManager: Drv.Ina219Manager base id 0x10032000
9696

97-
instance ina219SysManager: Drv.Ina219Manager base id 0x10033000
98-
99-
instance ina219SolManager: Drv.Ina219Manager base id 0x10034000
97+
instance ina219SolManager: Drv.Ina219Manager base id 0x10033000
10098
}

FprimeZephyrReference/ReferenceDeployment/Top/topology.fpp

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,8 @@ module ReferenceDeployment {
4444
# For UART sideband communication
4545
instance comDriver
4646
instance fsSpace
47-
instance sysPowerMonitor
47+
instance powerMonitor
4848
instance ina219SysManager
49-
instance solPowerMonitor
5049
instance ina219SolManager
5150

5251

@@ -141,8 +140,7 @@ module ReferenceDeployment {
141140
rateGroup1Hz.RateGroupMemberOut[7] -> burnwire.schedIn
142141
rateGroup1Hz.RateGroupMemberOut[8] -> antennaDeployer.schedIn
143142
rateGroup1Hz.RateGroupMemberOut[9] -> fsSpace.run
144-
rateGroup1Hz.RateGroupMemberOut[10] -> sysPowerMonitor.run
145-
rateGroup1Hz.RateGroupMemberOut[11] -> solPowerMonitor.run
143+
rateGroup1Hz.RateGroupMemberOut[10] -> powerMonitor.run
146144

147145
}
148146

@@ -169,15 +167,13 @@ module ReferenceDeployment {
169167
}
170168

171169
connections sysPowerMonitor {
172-
sysPowerMonitor.voltageGet -> ina219SysManager.voltageGet
173-
sysPowerMonitor.currentGet -> ina219SysManager.currentGet
174-
sysPowerMonitor.powerGet -> ina219SysManager.powerGet
170+
powerMonitor.sysVoltageGet -> ina219SysManager.voltageGet
171+
powerMonitor.sysCurrentGet -> ina219SysManager.currentGet
172+
powerMonitor.sysPowerGet -> ina219SysManager.powerGet
173+
powerMonitor.solVoltageGet -> ina219SolManager.voltageGet
174+
powerMonitor.solCurrentGet -> ina219SolManager.currentGet
175+
powerMonitor.solPowerGet -> ina219SolManager.powerGet
175176
}
176177

177-
connections solPowerMonitor {
178-
solPowerMonitor.voltageGet -> ina219SolManager.voltageGet
179-
solPowerMonitor.currentGet -> ina219SolManager.currentGet
180-
solPowerMonitor.powerGet -> ina219SolManager.powerGet
181-
}
182178
}
183179
}

0 commit comments

Comments
 (0)