-
Notifications
You must be signed in to change notification settings - Fork 3
Tasks
- MCU Configuration
- Battery Monitor Configuration
- External ADC Configuration
- System Initialization
- Batteries Monitor Measurements
- Temperature Measurements
- EPS-Beacon Current Measurement
- Main Bus Voltage Measurement
- Solar Panels Boosts Output Voltage Measurement
- MCU Internal Temperature Measurement
- Batteries Temperature Control Algorithm Execution
- Send Data to Beacon
- Energy Level Algorithm Execution
- Actuate on Regulators
- Send Data to OBDH
- Measure Solar Panels Currents
- Measure Solar Panels Voltage
- Calculate Solar Panels Measurements Mean
- Execute MPPT Algorithm
- Clock
- 8 MHz master clock
- 32 MHz sub-master clock
- 16 MHz auxiliary clock
- Watchdog
- 1 second timeout
- UART
- UCA0 at 4800 bps for the beacon communication
- UCA2 at 115200 bps for debugging
- ADC
- 2.5 V External reference
- SPI
- UCA1
- Master mode
- 1 MHz
- I2C
- Slave mode
- Own address 0x48
- Timers
- TA0.0 1 second interrupt
- TA1.0 100 milliseconds interrupt
- TB0.1 - TB0.3 500 kHz PWM signal
- TA1.1 - TA1.2 50 kHz PWM signal
This task configures the batteries monitor registers via one-wire protocol. The configuration sets thresholds and the batteries initial state of charge. The registers are configured as follows:
- Protection Register
- Enable charge and discharge
- Protector Threshold Register
- Set the overvoltage threshold to ~4.26 V
- Status Register
- Clear all flags
- Control Register
- Set the undervoltage threshold to 2.60 V
- Overcurrent Thresholds Register
- Set the short-circuit current threshold to 15 A
- Set the charging overcurrent threshold to 5 A
- Set the discharging overcurrent threshold to 7.5 A
- Accumulated Current Register
- Set initial charge to 3 Ah (fully charged). This configuration is run only once during the satellite lifetime.
This task configures the external ADC that reads temperatures from several RTDs placed on the batteries and other strategic points in the satellite.
- MUX0 Register
- Turn off the burn-out current source
- Vbias Register
- Disable Vbias
- MUX1
- Turn internal reference generator always on
- Select external 0 reference
- Select normal operation mode
- SYS0 Register
- Set PGA gain to 1
- Set Data Ouput Rate to 40 SPS
- IDAC0 Register
- Set DOUT/D̅R̅D̅Y̅ to only Data Out mode
- Set excitation current sources magnitude to 100 µA
This task sets the initial state for the regulators and the LMC555. The regulators are enabled/disabled based on the energy level of the batteries, and the LMC555 is kept disabled.
In this task the EPS MCU reads the following variables from the Batteries Monitor:
- Batteries average current
- Batteries current
- Batteries monitor temperature
- Batteries voltages
- Batteries accumulated current
- Batteries monitor protection register
- Batteries monitor status register
- Batteries monitor cycle counter
- Batteries monitor remaining active absolute capacity register
- Batteries monitor remaining standby absolute capacity register
- Batteries monitor remaining active relative capacity register
- Batteries monitor remaining standby relative capacity register
In this task the EPS MCU configures the channel to be read and attaches the current sources to the channel to be read, then it sends the start conversion command and wait until the conversion is completed. Then it sends the read command and reads the temperature from the external ADC. This process is repeated for all the channels.
In this task the EPS MCU uses the internal ADC to read a voltage proportional to the EPS-Beacon regulator output current. The conversion is started by setting a bit in the MCU registers. The code then waits for the conversion to finish and reads the result from the memory.
In this task the EPS MCU uses the internal ADC to read a voltage proportional to the Main Bus voltage. The conversion is started by setting a bit in the MCU registers. The code then waits for the conversion to finish and reads the result from the memory.
In this task the EPS MCU uses the internal ADC to read a voltage proportional to the Solar Panels Boosts Output voltage. The conversion is started by setting a bit in the MCU registers. The code then waits for the conversion to finish and reads the result from the memory.
In this task the EPS MCU uses the internal ADC to read a voltage proportional to its own temperature, using the internal temperature sensor. The conversion is started by setting a bit in the MCU registers. The code then waits for the conversion to finish and reads the result from the memory.
In this task the EPS MCU generates a PWM signal with duty cycle proportional to a PI controller output, based on the temperature measurements. This PWM signal is used to control the drivers that deliver power to the batteries heaters.
In this task the EPS MCU packs the Beacon data into a FSP data packet and sends it to the Beacon MCU.
In this task the EPS MCU executes an algorithm to determine the energy level of the satellite, based on the remaining charge in the batteries.