c++ - Balancing robot PID tuning -
i'm trying build two-wheeled balancing robot fun. have of hardware built , put together, , think have coded well. i'm using imu gyro , accelerometers find tilt angle complimentary filter smoothing signal. input signal imu seems pretty smooth, in less 0.7 variance + or - actual tilt angle.
my imu sampling rate 50 hz , pid calculation @ 50 hz too, think should fast enough.
basically, i'm using pid library found @ pid library .
when set p value low wheels go in right direction.
when set p value large output graph.
from graph looks system not stable. hope have tested each subsystem of robot before directly going tuning. means both sensors , actuators responding , acceptable error. once each subsytem calibrated external error. can start tuning. once done can start valid value of p may (0.5) first achieve proper response time, need trials here, them increment cut down steady state error if , use d when required(in case of oscillation). suggest handle p,i , d 1 one instead of tweaking @ 1 time. during testing need continuously monitor sensor , actuator data see if in acceptable range.
Comments
Post a Comment