Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Node.js PID controller
JavaScript
branch: master

readme

latest commit cef08dd242
Philmod authored
Failed to load latest commit information.
lib first commit
test first commit
.gitignore first commit
Makefile first commit
README.md readme
index.js first commit
package.json 0.0.2

README.md

node-pid-controller

Simple Node.js PID controller

pid

Installation

  $ npm install node-pid-controller

Example

Let's take the example of a car cruise control. We want the car driving at 120km/h.

Create a Controller instance

var Controller = require('node-pid-controller');
var ctr = new Controller(0.25, 0.01, 0.01); // k_p, k_i, k_d

Set the target

ctr.setTarget(120); // 120km/h

Get the correction

var correction = ctr.update(110); // 110km/h is the current speed

Real example

Normally, you use the correction to a measure, in a closed loop

var goalReached = false
while (!goalReached) {
  var output = measureFromSomeSensor();
  var input  = ctr.update(output);
  applyInputToActuator(input);
  goalReached = (input === 0) ? true : false; // in the case of continuous control, you let this variable 'false'
}

Test

mocha test

Author

Philmod <philippe.modard@gmail.com>

Something went wrong with that request. Please try again.