StLineRunner


 

This is the LineRunner algorithm for the SwampTiger.  It is a general PID (Proportional to error, Integral (sum) of the error, Derivative (change) of the error), and I believe is organized unusually well for a NXT-G program.  Besides being organized well, it has the ability to cycle through different PID values during a series of runs so people can see how the different values impact the line-following behavior.

 

Besides the visual document below, the following links may be useful:

 

Note that some of these images are 1400 pixels wide and are shrunk to display inline.  You can enlarge them by opening them in their own window.

 

SwampPid

 

Calibrate

 

ConfigPID 

 

ResetCounters

 

DecideMove

 

CalcError

 

CalcIntegral

 

CalcTurn

 

UpdatePreviousError

 

CalcBMotor

 

DisplayValues

 

MakeMove