PWM Tibbits
The node module for data collection from Tibbit #16 (Three PWMs with open collector outputs) and Tibbit #17 (Three PWMs with power outputs)
Installation Instructions
The module is available as precompiled binary.
Install the module
npm install @tibbo-tps/pwm
Usage
var pwm = require("@tibbo-tps/pwm").init(socket, channel);
API Methods:
init(socket, channel, frequency = 8)
- socked - TPP socket number
- channel - PWM channel number, 1 to 3
- frequency - base frequency clock in MHz(8, 16 or 32). Default value is 8.
Returns an object with two methods:
.start(duty, period, prescaler = 1)
- duty - duty cycle defined as the base frequency clock count (0, 1, 2...1023)
- period - period defined as the base frequency clock count (0, 4, 8...1023)
- prescaler - frequency prescaler (1, 4, 16 or 64). Default value is 1.
.stop()
Example:
var pwm = require("./pwm.js").init("S5", 1, 32);
pwm.start(256, 512);
About the Tibbit #16 block
This Tibbit is based on the PIC16F1824 microcontroller and takes advantage of the PWM channels available on this PIC device.
The PIC micro has four PWM channels but one of the channels cannot be used because it shares I/O lines with the I2C interface.
The I2C interface is utilized for communications with the main CPU of the TPP board and also for PIC firmware upgrades.
The frequency and the pulse width (duty cycle) are set independently for each PWM channel.
Each PWM channel uses one Zetex FFMT491 NPN transistor which is rated for 1A continuous collector current.
Combine this Tibbit with #20 (nine terminal blocks) or #19 (DB9M connector). It's not common but possible to use the latter for wiring into the PWM outputs. The Tibbit #21 (four terminal blocks) can also be used but you will have to steal the ground elsewhere, as #21 doesn't have its own ground line and the PWM Tibbit outputs voltages with respect to the system ground.
About the Tibbit #17 block
This Tibbit is based on the PIC16F1824 microcontroller and takes advantage of the PWM channels available on this PIC device.
The PIC micro has four PWM channels but one of the channels cannot be used because it shares I/O lines with the I2C interface.
The I2C interface is utilized for communications with the main CPU of the TPP board and also for PIC firmware upgrades.
The frequency and the pulse width (duty cycle) are set independently for each PWM channel.
Each PWM channel uses one Singreat Electronics GT430PSB P-channel FET transistor which is rated for 4A continuous current at room temperature.
Combine this Tibbit with #20 (nine terminal blocks) or #19 (DB9M connector). It's not common but possible to use the latter for wiring into the PWM outputs. The Tibbit #21 (four terminal blocks) can also be used but you will have to steal the ground elsewhere, as #21 doesn't have its own ground line and the PWM Tibbit outputs voltages with respect to the system ground.