def __init__(self, vehicle_event_dispatcher, ui_event_dispatcher): QtGui.QWidget.__init__(self) BasePanelController.__init__(self) self.ui = Ui_PIDTuningPanel() self.ui.setupUi(self) self._current_roll_pid = PIDData(100, 150, -300) self._current_pitch_pid = PIDData(100, 150, -300) self._current_stick_scaling = 1 self._is_starting = False self._user_update_mode = PIDUpdateMode.BEGINNER_MODE self._roll_pid_controller = PIDWidgetController() self.ui.main_layout.addWidget(self._roll_pid_controller) self._roll_pid_controller.set_title('PID tuning') self._roll_pid_controller.set_default(PIDData(100, 150, -350)) self._roll_pid_controller.set_p_bounds(50, 200) self._roll_pid_controller.set_p_title('Pitch Gain') self._roll_pid_controller.set_i_bounds(100, 300) self._roll_pid_controller.set_i_title('Error correction') self._roll_pid_controller.set_d_bounds(-1000, -100) self._roll_pid_controller.set_d_title('Set Point') self._pitch_pid_controller = PIDWidgetController() self.ui.main_layout.addWidget(self._pitch_pid_controller) self._pitch_pid_controller.set_title('PID tuning') self._pitch_pid_controller.set_default(PIDData(100, 150, -350)) self._pitch_pid_controller.set_p_bounds(50, 200) self._pitch_pid_controller.set_p_title('Pitch Gain') self._pitch_pid_controller.set_i_bounds(100, 300) self._pitch_pid_controller.set_i_title('Error correction') self._pitch_pid_controller.set_d_bounds(-1000, -100) self._pitch_pid_controller.set_d_title('Set Point') self._stick_scaling_controller = ConfigSingleLinePanelController() self._stick_scaling_controller.set_title('Stick Scaling') self._stick_scaling_controller.set_line_description('Stick Scaling') self._stick_scaling_controller.set_bounds(1, 6) self._stick_scaling_controller.set_default('1') self.ui.main_layout.addWidget(self._stick_scaling_controller) ui_event_dispatcher.register(self._protocol_handler_changed_event, UIEventDispatcher.PROTOCOL_HANDLER_EVENT) vehicle_event_dispatcher.register( self._roll_pid_received, VehicleEventDispatcher.PID_ACCRO_ROLL) vehicle_event_dispatcher.register( self._pitch_pid_received, VehicleEventDispatcher.PID_ACCRO_PITCH) vehicle_event_dispatcher.register( self._accro_stick_scaling_received, VehicleEventDispatcher.PID_ACCRO_STICK_SCALING) self._cpt_before_send = 5 self.set_beginner_mode()
def __init__(self, vehicle_event_dispatcher, ui_event_dispatcher): QtGui.QWidget.__init__(self) BasePanelController.__init__(self) self.ui = Ui_PIDTuningPanel() self.ui.setupUi(self) self._accel_roll_pid_controller = PIDWidgetController() self.ui.main_layout.addWidget(self._accel_roll_pid_controller) self._accel_roll_pid_controller.hide_i_line() self._accel_roll_pid_controller.hide_d_line() self._accel_roll_pid_controller.p_line.ui.label.setText( 'Accel Roll Gain') self._accel_roll_pid_controller.i_line.ui.label.setText( 'Accel Roll Error Correction') self._accel_roll_pid_controller.d_line.ui.label.setText( 'Accel Roll Set Point Adjustment') self._gyro_roll_pid_controller = PIDWidgetController() self.ui.main_layout.addWidget(self._gyro_roll_pid_controller) self._gyro_roll_pid_controller.hide_i_line() self._gyro_roll_pid_controller.p_line.ui.label.setText( 'Gyro Roll Gain') self._gyro_roll_pid_controller.i_line.ui.label.setText( 'Gyro Roll Error Correction') self._gyro_roll_pid_controller.d_line.ui.label.setText( 'Gyro Roll Set Point Adjustment') self._accel_pitch_pid_controller = PIDWidgetController() self.ui.main_layout.addWidget(self._accel_pitch_pid_controller) self._accel_pitch_pid_controller.hide_i_line() self._accel_pitch_pid_controller.hide_d_line() self._accel_pitch_pid_controller.p_line.ui.label.setText( 'Accel Pitch Gain') self._accel_pitch_pid_controller.i_line.ui.label.setText( 'Accel Pitch Error Correction') self._accel_pitch_pid_controller.d_line.ui.label.setText( 'Accel Pitch Set Point Adjustment') self._gyro_pitch_pid_controller = PIDWidgetController() self.ui.main_layout.addWidget(self._gyro_pitch_pid_controller) self._gyro_pitch_pid_controller.p_line.ui.label.setText( 'Gyro Pitch Gain') self._gyro_pitch_pid_controller.i_line.ui.label.setText( 'Gyro Pitch Error Correction') self._gyro_pitch_pid_controller.d_line.ui.label.setText( 'Gyro Pitch Set Point Adjustment') self.setBeginnerMode() self.ui.linked_check_box.clicked.connect(self._linked_checkbox_pressed) self._linked_checkbox_pressed()