def __init__(self): self.long_control_state = 0 # initialized to off self.seq_step_debug = 0 self.long_curv_timer = 0 self.path_x = np.arange(192) self.traceSC = trace1.Loger("SPD_CTRL") self.wheelbase = 2.845 self.steerRatio = 12.5 # 12.5 self.v_model = 0 self.a_model = 0 self.v_cruise = 0 self.a_cruise = 0 self.l_poly = [] self.r_poly = [] self.movAvg = moveavg1.MoveAvg() self.Timer1 = tm.CTime1000("SPD") self.time_no_lean = 0 self.SC = trace1.Loger("spd")
def __init__(self, CP): self.kegman = kegman_conf(CP) self.deadzone = float(self.kegman.conf['deadzone']) self.pid = PIController( (CP.lateralTuning.pid.kpBP, CP.lateralTuning.pid.kpV), (CP.lateralTuning.pid.kiBP, CP.lateralTuning.pid.kiV), k_f=CP.lateralTuning.pid.kf, pos_limit=1.0, sat_limit=CP.steerLimitTimer) self.angle_steers_des = 0. self.mpc_frame = 500 self.BP0 = 4 self.steer_Kf1 = [0.00003, 0.00003] self.steer_Ki1 = [0.02, 0.04] self.steer_Kp1 = [0.18, 0.20] self.steer_Kf2 = [0.00005, 0.00005] self.steer_Ki2 = [0.04, 0.05] self.steer_Kp2 = [0.20, 0.25] self.pid_change_flag = 0 self.pre_pid_change_flag = 0 self.pid_BP0_time = 0 self.movAvg = moveavg1.MoveAvg() self.v_curvature = 256 self.model_sum = 0 self.path_x = np.arange(192)
def __init__(self, CP=None): self.long_control_state = 0 # initialized to off self.seq_step_debug = "" self.long_curv_timer = 0 self.path_x = np.arange(192) self.traceSC = trace1.Loger("SPD_CTRL") self.v_model = 0 self.a_model = 0 self.v_cruise = 0 self.a_cruise = 0 self.l_poly = [] self.r_poly = [] self.movAvg = moveavg1.MoveAvg() self.Timer1 = tm.CTime1000("SPD") self.time_no_lean = 0 self.wait_timer2 = 0 self.cruise_set_speed_kph = 0 self.curise_set_first = 0 self.curise_sw_check = 0 self.prev_clu_CruiseSwState = 0 self.prev_VSetDis = 0 self.sc_clu_speed = 0 self.btn_type = Buttons.NONE self.active_time = 0
def __init__(self, CP=None): self.long_control_state = 0 # initialized to off self.seq_step_debug = "" self.long_curv_timer = 0 self.path_x = np.arange(192) self.traceSC = trace1.Loger("SPD_CTRL") self.wheelbase = 2.8 self.steerRatio = 13.5 # 13.5 self.v_model = 0 self.a_model = 0 self.v_cruise = 0 self.a_cruise = 0 self.l_poly = [] self.r_poly = [] self.movAvg = moveavg1.MoveAvg() self.Timer1 = tm.CTime1000("SPD") self.time_no_lean = 0 self.wait_timer2 = 0 self.cruise_set_speed_kph = 0 self.curise_set_first = 0 self.curise_sw_check = 0 self.prev_clu_CruiseSwState = 0 self.prev_VSetDis = 0 self.sc_clu_speed = 0 self.btn_type = Buttons.NONE self.active_time = 0 self.old_model_speed = 0 self.old_model_init = 0 self.curve_speed = 0 self.curvature_gain = 1 self.params = Params() self.cruise_set_mode = int( self.params.get("CruiseStatemodeSelInit", encoding='utf8')) self.map_spd_limit_offset = int( self.params.get("OpkrSpeedLimitOffset", encoding='utf8')) self.map_spd_enable = False self.map_spd_camera = 0
def __init__(self, CP): self.kegman = kegman_conf(CP) self.deadzone = float(self.kegman.conf['deadzone']) self.pid = PIController( (CP.lateralTuning.pid.kpBP, CP.lateralTuning.pid.kpV), (CP.lateralTuning.pid.kiBP, CP.lateralTuning.pid.kiV), k_f=CP.lateralTuning.pid.kf, pos_limit=1.0, sat_limit=CP.steerLimitTimer) self.angle_steers_des = 0. self.mpc_frame = 0 self.movAvg = moveavg1.MoveAvg()
def __init__(self, CP=None): self.long_control_state = 0 # initialized to off self.seq_step_debug = "" self.long_curv_timer = 0 self.path_x = np.arange(192) self.traceSC = trace1.Loger("SPD_CTRL") self.wheelbase = 2.845 self.steerRatio = 12.5 # 12.5 self.v_model = 0 self.a_model = 0 self.v_cruise = 0 self.a_cruise = 0 self.l_poly = [] self.r_poly = [] self.movAvg = moveavg1.MoveAvg() self.Timer1 = tm.CTime1000("SPD") self.time_no_lean = 0 self.wait_timer2 = 0 self.cruise_set_speed_kph = 0 self.curise_set_first = 0 self.curise_sw_check = 0 self.prev_clu_CruiseSwState = 0 self.prev_VSetDis = 0 self.sc_clu_speed = 0 self.btn_type = Buttons.NONE self.active_time = 0 self.params = Params() self.param_OpkrAccelProfile = int(self.params.get('OpkrAccelProfile')) self.cruise_set_mode = int(self.params.get('CruiseStatemodeSelInit'))
def __init__(self, CP): self.LP = LanePlanner() self.last_cloudlog_t = 0 self.steer_rate_cost = CP.steerRateCost self.steerRatio = CP.steerRatio self.setup_mpc() self.solution_invalid_cnt = 0 self.steerRatio_last = 0 self.params = Params() # Lane change self.lane_change_enabled = self.params.get('LaneChangeEnabled') == b'1' self.lane_change_auto_delay = self.params.get_OpkrAutoLanechangedelay( ) #int( self.params.get('OpkrAutoLanechangedelay') ) self.lane_change_state = LaneChangeState.off self.lane_change_direction = LaneChangeDirection.none self.lane_change_run_timer = 0.0 self.lane_change_wait_timer = 0.0 self.lane_change_ll_prob = 1.0 self.prev_one_blinker = False # atom self.trPATH = trace1.Loger("path") self.trLearner = trace1.Loger("Learner") self.trpathPlan = trace1.Loger("pathPlan") self.atom_timer_cnt = 0 self.atom_steer_ratio = None self.atom_sr_boost_bp = [0., 0.] self.atom_sr_boost_range = [0., 0.] self.carParams_valid = False self.m_avg = ma.MoveAvg()
from selfdrive.manager import manager_init, manager_prepare from selfdrive.manager import start_managed_process, kill_managed_process, get_running from selfdrive.manager import start_daemon_process from selfdrive.car.hyundai.spdcontroller import SpdController from functools import wraps from selfdrive.config import Conversions as CV import common.MoveAvg as moveavg1 import cereal.messaging as messaging import json import requests import signal import subprocess import time movAvg = moveavg1.MoveAvg() MAX_SPEED = 255 sc = SpdController() path_x = np.arange(192) def main(): sm = None if sm is None: sm = messaging.SubMaster(['plan', 'pathPlan', 'model']) v_ego = 50 * CV.KPH_TO_MS print('curvature test ')