feat: 日常更新
This commit is contained in:
43
majtask.py
43
majtask.py
@@ -11,9 +11,9 @@ class PidWrap:
|
||||
def set_target(self, target):
|
||||
self.pid_t.setpoint = target
|
||||
def set(self, kp, ki, kd):
|
||||
self.pid_t.kp = kp
|
||||
self.pid_t.ki = ki
|
||||
self.pid_t.kd = kd
|
||||
self.pid_t.Kp = kp
|
||||
self.pid_t.Ki = ki
|
||||
self.pid_t.Kd = kd
|
||||
def get(self, val_in):
|
||||
return self.pid_t(val_in)
|
||||
|
||||
@@ -33,7 +33,7 @@ class main_task():
|
||||
self.by_cmd = by_cmd
|
||||
|
||||
# 转向 pid
|
||||
self.pid1 = PidWrap(0.7, 0, 0,output_limits=40)
|
||||
self.pid1 = PidWrap(1, 0, 0, output_limits=40)
|
||||
self.pid1.set_target(0)
|
||||
|
||||
def parse_data(self,data):
|
||||
@@ -69,26 +69,33 @@ class main_task():
|
||||
self.y = 0
|
||||
error_abs = abs(self.lane_error)
|
||||
|
||||
if error_abs < 10:
|
||||
self.pid1.set(0.7, 0, 0)
|
||||
speed = 13
|
||||
elif error_abs > 45:
|
||||
speed = 6
|
||||
self.pid1.set(1.8, 0, 0)
|
||||
elif error_abs > 35:
|
||||
speed = 8
|
||||
self.pid1.set(1.5, 0, 0)
|
||||
elif error_abs > 25:
|
||||
if error_abs > 45:
|
||||
speed = 10
|
||||
self.pid1.set(1, 0, 0)
|
||||
# pid_out = self.lane_error * 1.1
|
||||
# self.pid1.set(1, 0, 0)
|
||||
elif error_abs > 35:
|
||||
speed = 10
|
||||
# pid_out = self.lane_error * 1
|
||||
# self.pid1.set(1, 0, 0)
|
||||
elif error_abs > 25:
|
||||
speed = 13
|
||||
# pid_out = self.lane_error * 1
|
||||
# self.pid1.set(1.8, 0, 0)
|
||||
elif error_abs > 15:
|
||||
speed = 13
|
||||
# pid_out = self.lane_error * 0.8
|
||||
# self.pid1.set(1.8, 0, 0)
|
||||
else:
|
||||
self.pid1.set(0.8, 0, 0)
|
||||
speed = 11
|
||||
speed = 15
|
||||
# pid_out = self.lane_error * 0.4
|
||||
# self.pid1.set(0.7, 0, 0)
|
||||
if utils.task_speed != 0:
|
||||
speed = utils.task_speed
|
||||
self.by_cmd.send_speed_x(speed)
|
||||
# pid_out = self.pid1.get(self.lane_error*0.65)
|
||||
pid_out = self.pid1.get(self.lane_error*0.7)
|
||||
pid_out = self.pid1.get(self.lane_error)
|
||||
# pid_out = -pid_out
|
||||
# logger.debug(f"err={self.lane_error}, pwm out={pid_out}")
|
||||
self.by_cmd.send_speed_omega(pid_out)
|
||||
|
||||
self.socket.send_string("")
|
||||
|
||||
Reference in New Issue
Block a user