Skip to content

FirstBuild/node-pid-controller

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 <[email protected]>

About

Node.js PID controller

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • JavaScript 86.8%
  • Makefile 13.2%