Created
June 4, 2020 08:55
-
-
Save quangnhat185/a335123ba16a78f397dc9577b8b8c824 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# return heading angle from machine learning model | |
angle = np.radians(max(model.predict(image))) | |
''' | |
speed_slider: lowest speed of each motor | |
angle: heading angle corresponding to current frame | |
angle_last: heading angle corresponding to previous frame | |
kP, kD, kI: P - I - D coefficient defined by users | |
steering_bias_slider: bias coefficient between two motors | |
steering_slider: turning speed differentiation | |
''' | |
pid = angle * kP + (angle - angle_last) * kD + (angle + angle_last) * kI | |
angle_last = angle | |
steering_slider = pid + steering_bias_slider | |
# scale value to range [0,1] | |
left_speed = max(min(speed_slider + steering_slider, 1.0), 0.0) | |
right_speed = max(min(speed_slider - steering_slider, 1.0), 0.0) | |
# set speed in motors | |
robot.set_motor(right_speed,left_speed) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment