User Tools

Site Tools


line_following

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
line_following [2025/02/20 12:41] – [Special Section - Wall Following with PID Control] arimline_following [2025/02/20 12:44] (current) – [Special Section - Wall Following with PID Control] arim
Line 246: Line 246:
 \\ Refer to this example for the PID gain values, but adjust them to best suit your Domabot. \\ Refer to this example for the PID gain values, but adjust them to best suit your Domabot.
  
 +  //Variable initializations ---------------------------------------------------
 +  xWall = 0;  //initialize wall distance to 0
 +  dWall = 10;  //Desired distance from wall [cm]
 +  wKp = 1.25;  //Wall P gain e.g. (PID) = [1.5, 0.005, 30.0]        
 +  wKi = 0.001;  //Wall I gain
 +  wKd = 7.5;  //Wall D gain
 +  
 +  //(1)Calculate wall-following PID gains
 +  wE = xWall - dWall;
 +  wEInt +=wE;
 +  wEDot = wE - wEPrev;
 +  wCorr = (wKp * wE) + (wKi * wEInt) + (wKd * wEDot);
 +  
   //(1A) Check for motor staturation i.e. resulting wCorr forces   //(1A) Check for motor staturation i.e. resulting wCorr forces
   //motor getting > 2*speedBase (if speedBase > 50, this means >100)   //motor getting > 2*speedBase (if speedBase > 50, this means >100)
line_following.1740084110.txt.gz · Last modified: by arim