ME 405 Term Project
Loading...
Searching...
No Matches
ui_task.UITask Class Reference

Public Member Functions

 __init__ (self, mtr_enable, stream_data, abort, eff, driving_mode, setpoint, kp, ki, control_mode, uart, battery, imu, ir_array, k_line, lf_target, planning, game_origin_mode)
 run (self)

Public Attributes

 mtr_enable = mtr_enable
 stream_data = stream_data
 abort = abort
 planning = planning
 game_origin_mode = game_origin_mode
 eff = eff
 driving_mode = driving_mode
 setpoint = setpoint
 kp = kp
 ki = ki
 k_line = k_line
 lf_target = lf_target
 control_mode = control_mode
 ser = uart
 battery = battery
 imu = imu
 ir = ir_array
int state = self.S0_INIT
 0: INIT STATE -----------------------------------------------—
str cmd_buf = ''
 0: INIT STATE -----------------------------------------------—
int prev_time = 0
 0: INIT STATE -----------------------------------------------—
 curr_time = ticks_ms()
 4: IMU Calibration State ------------------------------------—

Static Public Attributes

int S0_INIT = 0
int S1_WAIT_FOR_CMD = 1
int S2_PROCESS_CMD = 2
int S3_MONITOR_TEST = 3
int S4_IMU_CALIBRATION = 4
int S5_IR_CALIBRATION = 5

Detailed Description

Reads user input from Bluetooth UART, interprets commands, and sets control flags.

Attributes:
    mtr_enable (Share): Flag to enable/disable motors.
    stream_data (Share): Flag to enable/disable data streaming.
    abort (Share): Flag to abort current operation.
    planning (Share): Flag to enable/disable path planning.
    game_origin_mode (Share): Flag to set game origin mode.
    eff (Share): Motor effort percentage.
    driving_mode (Share): Driving mode (0: straight, 1: pivot, 2: arc).
    setpoint (Share): Velocity setpoint.
    kp (Share): Proportional gain for velocity control.
    ki (Share): Integral gain for velocity control.
    control_mode (Share): Control mode (0: effort, 1: velocity, 2: line-following).
    uart (UART): Bluetooth UART interface.
    battery (Battery): Battery monitoring object.
    imu (IMU): Inertial Measurement Unit object.
    ir_array (IRArray): Infrared sensor array object.
    k_line (Share): Line following proportional gain.
    lf_target (Share): Line following target velocity.

Constructor & Destructor Documentation

◆ __init__()

ui_task.UITask.__init__ ( self,
mtr_enable,
stream_data,
abort,
eff,
driving_mode,
setpoint,
kp,
ki,
control_mode,
uart,
battery,
imu,
ir_array,
k_line,
lf_target,
planning,
game_origin_mode )

Initialize the object's attributes

Member Function Documentation

◆ run()

ui_task.UITask.run ( self)

FINITE STATE MACHINE

Generator that checks PuTTY for commands and updates flags

Member Data Documentation

◆ abort

ui_task.UITask.abort = abort

◆ battery

ui_task.UITask.battery = battery

◆ cmd_buf

str ui_task.UITask.cmd_buf = ''

0: INIT STATE -----------------------------------------------—

1: WAITING STATE --------------------------------------------—

◆ control_mode

ui_task.UITask.control_mode = control_mode

◆ curr_time

ui_task.UITask.curr_time = ticks_ms()

4: IMU Calibration State ------------------------------------—

◆ driving_mode

ui_task.UITask.driving_mode = driving_mode

◆ eff

ui_task.UITask.eff = eff

◆ game_origin_mode

ui_task.UITask.game_origin_mode = game_origin_mode

◆ imu

ui_task.UITask.imu = imu

◆ ir

ui_task.UITask.ir = ir_array

◆ k_line

ui_task.UITask.k_line = k_line

◆ ki

ui_task.UITask.ki = ki

◆ kp

ui_task.UITask.kp = kp

◆ lf_target

ui_task.UITask.lf_target = lf_target

◆ mtr_enable

ui_task.UITask.mtr_enable = mtr_enable

◆ planning

ui_task.UITask.planning = planning

◆ prev_time

ui_task.UITask.prev_time = 0

0: INIT STATE -----------------------------------------------—

◆ S0_INIT

int ui_task.UITask.S0_INIT = 0
static

◆ S1_WAIT_FOR_CMD

int ui_task.UITask.S1_WAIT_FOR_CMD = 1
static

◆ S2_PROCESS_CMD

int ui_task.UITask.S2_PROCESS_CMD = 2
static

◆ S3_MONITOR_TEST

int ui_task.UITask.S3_MONITOR_TEST = 3
static

◆ S4_IMU_CALIBRATION

int ui_task.UITask.S4_IMU_CALIBRATION = 4
static

◆ S5_IR_CALIBRATION

int ui_task.UITask.S5_IR_CALIBRATION = 5
static

◆ ser

ui_task.UITask.ser = uart

◆ setpoint

ui_task.UITask.setpoint = setpoint

◆ state

int ui_task.UITask.state = self.S0_INIT

0: INIT STATE -----------------------------------------------—

1: WAITING STATE --------------------------------------------—

◆ stream_data

ui_task.UITask.stream_data = stream_data

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