Telemetry Data Reception and DisplayTelemetry Data Reception:
Frequency: The CANSAT shall collect the required telemetry at a 1 Hz sample rate or better.
Format: Telemetry data shall be transmitted in ASCII comma-separated fields followed by a carriage return.
Libraries Needed:
PySerial: For serial communication with XBEE radios.
Usage: import serial
Datetime: For handling timestamps.
Usage: from datetime import datetime
Telemetry Data Fields:
Columns: The following fields must be included in the telemetry data:
Team ID (e.g., 2024ASI-CANSAT-XXX)
Time Stamping (seconds since the initial power)
Packet Count (count of transmitted packets)
Altitude (meters, relative to ground, resolution: 0.1 meters)
Libraries Needed:
Pandas: For handling and generating .csv files.
Usage: import pandas as pd
Numpy: For numerical operations and handling sensor data arrays.
Usage: import numpy as np
File Format:
The received telemetry for the entire mission shall be saved on the ground station computer as a comma-separated value (.csv) file.
The .csv file must include headers specifying each field of data.
The file should be named in the format: Flight_.csv.
Libraries Needed:
Pandas: For saving data to .csv files.
Usage: import pandas as pd
Ground Station Command Capabilities
Telemetry Command:
The ground station must command the CANSAT to start transmitting telemetry prior to launch.
The CANSAT should not transmit telemetry until commanded by the ground station. The command can be executed while the CANSAT is in the rocket on the launch pad.
Libraries Needed:
PySerial: For sending commands via serial communication.
Usage: import serial
Sensor Calibration:
The ground station must be able to command the CANSAT to calibrate gyros, barometric altitude, and accelerometer parameters to zero as the CANSAT sits on the launch pad.
Libraries Needed:
PySerial: For sending calibration commands via serial communication.
Usage: import serial
Ground Station Setup
Antenna:
The ground control station antenna should be elevated from ground level to ensure adequate coverage and range.
No specific libraries needed.
Portability:
The ground station must be portable so the team can be positioned at the ground station operation site along the flight line. If required, the team should be able to move to a different location for CANSAT recovery.
No specific libraries needed.
Stability:
Stability of the ground station must be ensured during operations.
No specific libraries needed.
Data Handling and Display
Real-Time Display:
All telemetry data must be displayed in near real-time during launch and descent.
Data must be plotted in real-time during flight using SI units.
Libraries Needed:
Matplotlib: For real-time data plotting and visualization.
Usage: import matplotlib.pyplot as plt
Tkinter/PyQt: For developing a user interface for the ground station.
Usage: import tkinter as tk or from PyQt5 import QtWidgets
Data Generation:
The ground station should generate .csv files of all sensor data.
Telemetry shall include mission time with one-second or better resolution.
In case of processor reset, the mission clock/time stamp & system state should be maintained.
Libraries Needed:
Pandas: For saving data to .csv files.
Usage: import pandas as pd
Graphical User Interface (GUI):
The ground station should have a user interface for real-time data collection and display.
The GUI should be capable of plotting each telemetry data field in real-time during flight.
Libraries Needed:
Tkinter/PyQt: For developing the user interface.
Usage: import tkinter as tk or from PyQt5 import QtWidgets
Matplotlib: For real-time plotting within the GUI.
Usage: import matplotlib.pyplot as plt
Logging
Libraries Needed:
Logging: For maintaining logs of system states and events.
Usage: import logging
Telemetry Data Reception and Display Telemetry Data Reception:
Frequency: The CANSAT shall collect the required telemetry at a 1 Hz sample rate or better. Format: Telemetry data shall be transmitted in ASCII comma-separated fields followed by a carriage return. Libraries Needed: PySerial: For serial communication with XBEE radios. Usage: import serial Datetime: For handling timestamps. Usage: from datetime import datetime Telemetry Data Fields:
Columns: The following fields must be included in the telemetry data:
Libraries Needed: Pandas: For handling and generating .csv files. Usage: import pandas as pd Numpy: For numerical operations and handling sensor data arrays. Usage: import numpy as np
File Format:
The received telemetry for the entire mission shall be saved on the ground station computer as a comma-separated value (.csv) file. The .csv file must include headers specifying each field of data. The file should be named in the format: Flight_.csv.
Libraries Needed:
Pandas: For saving data to .csv files.
Usage: import pandas as pd
Ground Station Command Capabilities
Telemetry Command:
The ground station must command the CANSAT to start transmitting telemetry prior to launch. The CANSAT should not transmit telemetry until commanded by the ground station. The command can be executed while the CANSAT is in the rocket on the launch pad. Libraries Needed: PySerial: For sending commands via serial communication. Usage: import serial
Sensor Calibration:
The ground station must be able to command the CANSAT to calibrate gyros, barometric altitude, and accelerometer parameters to zero as the CANSAT sits on the launch pad. Libraries Needed: PySerial: For sending calibration commands via serial communication. Usage: import serial
Ground Station Setup Antenna:
The ground control station antenna should be elevated from ground level to ensure adequate coverage and range. No specific libraries needed.
Portability:
The ground station must be portable so the team can be positioned at the ground station operation site along the flight line. If required, the team should be able to move to a different location for CANSAT recovery. No specific libraries needed.
Stability:
Stability of the ground station must be ensured during operations. No specific libraries needed. Data Handling and Display
Real-Time Display:
All telemetry data must be displayed in near real-time during launch and descent. Data must be plotted in real-time during flight using SI units. Libraries Needed: Matplotlib: For real-time data plotting and visualization. Usage: import matplotlib.pyplot as plt Tkinter/PyQt: For developing a user interface for the ground station. Usage: import tkinter as tk or from PyQt5 import QtWidgets
Data Generation:
The ground station should generate .csv files of all sensor data. Telemetry shall include mission time with one-second or better resolution. In case of processor reset, the mission clock/time stamp & system state should be maintained. Libraries Needed: Pandas: For saving data to .csv files. Usage: import pandas as pd
Graphical User Interface (GUI):
The ground station should have a user interface for real-time data collection and display. The GUI should be capable of plotting each telemetry data field in real-time during flight. Libraries Needed: Tkinter/PyQt: For developing the user interface. Usage: import tkinter as tk or from PyQt5 import QtWidgets Matplotlib: For real-time plotting within the GUI. Usage: import matplotlib.pyplot as plt
Logging Libraries Needed: Logging: For maintaining logs of system states and events. Usage: import logging