PID kontrolni algoritem s proporcionalnim (Kp), integralnim (Ki) in diferencialnim (Kd) koeficientom je definiran kot:
V .js datoteki dodamo naslednjo kodo:
// Spremenljivke PID algoritmavar Kp = 0.55; // proporcionalni faktorvar Ki = 0.008; // integralni faktorvar Kd = 0.15; // diferencialni faktorvar pwm = 0;var err = 0; // errorvar errSum = 0; // vsota napakvar dErr = 0; // diferenca napakvar zadnjiErr = 0; // da obdržimo vrednost prejšnje napakefunction kontrolniAlgoritem () { err = želenaVrednost - dejanskaVrednost; // odstopanje ali error errVsota += err; // vsota napak (kot integral) dErr = err - zadnjiErr; // razlika odstopanj var pwm = Kp*err + Ki*errVsota + Kd*dErr; // izraz za PID kontroler (iz enačbe) zadnjiErr = err; // shranimo vrednost za naslednji cikel za oceno odvoda if (pwm > 255) {pwm = 255}; // omejimo vrednost pwm na 255 if (pwm < -255) {pwm = -255}; // omejimo vrednost pwm na -255 if (pwm > 0) {board.digitalWrite(2,0)}; // določimo smer če je > 0 if (pwm < 0) {board.digitalWrite(2,1)}; // določimo smer če je < 0 board.analogWrite(3, Math.abs(pwm)); // zapišemo abs vrednost na pin 3}PID kontrolni algoritem doseže želeno vrednost, tudi, če imamo med želeno in dejansko vrednostjo na začetku določeno odstopanje. Odziv ssistema je odvisen od koeficientov Kp, Ki in Kd.