STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
combined_fsw_gui.ActuatorControlWidget Class Reference
Inheritance diagram for combined_fsw_gui.ActuatorControlWidget:
[legend]
Collaboration diagram for combined_fsw_gui.ActuatorControlWidget:
[legend]

Public Member Functions

 __init__ (self, receiver, Optional[ElodinClient] elodin_client=None, str device_ip=None, int device_port=None, parent=None)
 init_ui (self)
 set_actuator_state (self, int actuator_id, int state)
 send_actuator_commands_batch (self, List[Tuple[int, int]] commands)
 send_udp_command (self, int actuator_id, int state)
bytes create_actuator_command_packet (self, List[Tuple[int, int]] commands)
 update_button_highlight (self, int array_idx, int state)
 on_sensor_data (self, dict header, List[dict] chunks, str source_ip)
 update_display (self)

Public Attributes

 receiver = receiver
 elodin_client = elodin_client
 device_ip = device_ip or CONFIG.config["network"]["actuator_ip"]
 device_port = device_port or CONFIG.config["network"]["actuator_port"]
list actuator_states = [0] * num_actuators
list voltage_readings = [0.0] * num_actuators
dict actuator_labels
 command_sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
 on_sensor_data
 update_timer = QtCore.QTimer(self)
 update_display
list actuator_widgets = []

Static Public Attributes

 actuator_command_sent = QtCore.pyqtSignal(int, int)

Detailed Description

Actuator control with ON/OFF buttons

Definition at line 1208 of file combined_fsw_gui.py.

Constructor & Destructor Documentation

◆ __init__()

combined_fsw_gui.ActuatorControlWidget.__init__ ( self,
receiver,
Optional[ElodinClient] elodin_client = None,
str device_ip = None,
int device_port = None,
parent = None )

Definition at line 1213 of file combined_fsw_gui.py.

Member Function Documentation

◆ create_actuator_command_packet()

bytes combined_fsw_gui.ActuatorControlWidget.create_actuator_command_packet ( self,
List[Tuple[int, int]] commands )
Create an actuator command packet (exact format from DiabloAvionics combined_gui.py).
commands: List of (actuator_id, actuator_state) tuples
actuator_id: 1-10 (1-indexed)
actuator_state: 0 = OFF, non-zero = ON

Definition at line 1383 of file combined_fsw_gui.py.

◆ init_ui()

combined_fsw_gui.ActuatorControlWidget.init_ui ( self)
Initialize UI

Definition at line 1249 of file combined_fsw_gui.py.

◆ on_sensor_data()

combined_fsw_gui.ActuatorControlWidget.on_sensor_data ( self,
dict header,
List[dict] chunks,
str source_ip )
Update voltage readings from actuator board current sense data

Definition at line 1445 of file combined_fsw_gui.py.

◆ send_actuator_commands_batch()

combined_fsw_gui.ActuatorControlWidget.send_actuator_commands_batch ( self,
List[Tuple[int, int]] commands )
Send multiple actuator commands in a single packet

Definition at line 1345 of file combined_fsw_gui.py.

◆ send_udp_command()

combined_fsw_gui.ActuatorControlWidget.send_udp_command ( self,
int actuator_id,
int state )
Send UDP command to actuator board (exact DiabloAvionics format)

Definition at line 1370 of file combined_fsw_gui.py.

◆ set_actuator_state()

combined_fsw_gui.ActuatorControlWidget.set_actuator_state ( self,
int actuator_id,
int state )
Set actuator state and send command

Definition at line 1330 of file combined_fsw_gui.py.

◆ update_button_highlight()

combined_fsw_gui.ActuatorControlWidget.update_button_highlight ( self,
int array_idx,
int state )
Update button highlighting

Definition at line 1430 of file combined_fsw_gui.py.

◆ update_display()

combined_fsw_gui.ActuatorControlWidget.update_display ( self)
Update voltage displays

Definition at line 1468 of file combined_fsw_gui.py.

Member Data Documentation

◆ actuator_command_sent

combined_fsw_gui.ActuatorControlWidget.actuator_command_sent = QtCore.pyqtSignal(int, int)
static

Definition at line 1211 of file combined_fsw_gui.py.

◆ actuator_labels

dict combined_fsw_gui.ActuatorControlWidget.actuator_labels
Initial value:
= {
i: CONFIG.get_actuator_label(i) for i in range(1, num_actuators + 1)
}

Definition at line 1231 of file combined_fsw_gui.py.

◆ actuator_states

list combined_fsw_gui.ActuatorControlWidget.actuator_states = [0] * num_actuators

Definition at line 1229 of file combined_fsw_gui.py.

◆ actuator_widgets

combined_fsw_gui.ActuatorControlWidget.actuator_widgets = []

Definition at line 1271 of file combined_fsw_gui.py.

◆ command_sock

combined_fsw_gui.ActuatorControlWidget.command_sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

Definition at line 1236 of file combined_fsw_gui.py.

◆ device_ip

combined_fsw_gui.ActuatorControlWidget.device_ip = device_ip or CONFIG.config["network"]["actuator_ip"]

Definition at line 1224 of file combined_fsw_gui.py.

◆ device_port

combined_fsw_gui.ActuatorControlWidget.device_port = device_port or CONFIG.config["network"]["actuator_port"]

Definition at line 1225 of file combined_fsw_gui.py.

◆ elodin_client

combined_fsw_gui.ActuatorControlWidget.elodin_client = elodin_client

Definition at line 1223 of file combined_fsw_gui.py.

◆ on_sensor_data

combined_fsw_gui.ActuatorControlWidget.on_sensor_data

Definition at line 1242 of file combined_fsw_gui.py.

◆ receiver

combined_fsw_gui.ActuatorControlWidget.receiver = receiver

Definition at line 1222 of file combined_fsw_gui.py.

◆ update_display

combined_fsw_gui.ActuatorControlWidget.update_display

Definition at line 1246 of file combined_fsw_gui.py.

◆ update_timer

combined_fsw_gui.ActuatorControlWidget.update_timer = QtCore.QTimer(self)

Definition at line 1245 of file combined_fsw_gui.py.

◆ voltage_readings

list combined_fsw_gui.ActuatorControlWidget.voltage_readings = [0.0] * num_actuators

Definition at line 1230 of file combined_fsw_gui.py.


The documentation for this class was generated from the following file: