Login  |  Register
Services»  JCBasic User Macros September 08, 2010      Search
 JCBasic User Macros

JC Basic User Macros

Streamside Solutions has extensive experience with writing user macros for GPL.  A user macro is a code module that can be run as a block from within GPL.  If correctly utilized, a user macro can save hours of duplicate coding over multiple projects and eliminate errors that may occur due to duplication and "reinventing the wheel".  Here's some user macros that have been done over the years.

NAME DESCRIPTION
16EQR_M1
16EQR_M2
16EQR_M3
16 STAGE EQUAL RUNTIME SELECTOR W/ FAILURE LOGIC
2POS_SWB  2 POSITION BINARY REVERSE SWITCH BLOCK (OPPOSITE OF GPL
SWITCH BLOCK)
3POS_SWB  3 POSITION BINARY REVERSE SWITCH BLOCK. REVERSE OF GPL
MODE SELECT BLOCK.
4DA  4 INPUT DIGITAL TO ANALOG CONVERTER
4EQRUN  4 STAGE EQUAL RUNTIME SELECTOR W/ FAILURE LOGIC 
4SEL1  4 STAGE INPUT TO 4 OUTPUT BINARY SELECTOR. EACH STAGE IS
ASSIGNABLE TO AN OUTPUT.
4SEL2  4 STAGE INPUT TO 4 OUTPUT BINARY SELECTOR. EACH OUTPUT IS
ASSIGNABLE TO A STAGE #.
4STAGE  4 STAGE INCREMENTAL SEQUENCER. STAGES ARE INCREMENTED/
DECREMENTED BY 2 BINARY INPUTS. IF A STAGE FAILS, THEN
THE NEXT STAGE IS STARTED.
4SEQ  4 STAGE INPUT TO 4 OUTPUT BINARY SEQUENCE SELECTOR. 
OUTPUT STAGE ORDER IS DEFINED BY THE LEAD OUTPUT SELECTION.  ONLY 4 FIXED SEQUENCE COMBINATIONS.
5EQRUN  5 STAGE EQUAL RUNTIME SELECTOR W/ FAILURE LOGIC 
6EQRUN  6 STAGE EQUAL RUNTIME SELECTOR W/ FAILURE LOGIC 
8EQRUN  8 STAGE EQUAL RUNTIME SELECTOR W/ FAILURE LOGIC 
5TWRXSTG  5 TOWER EQUAL RUNTIME SELECTOR W/ X FAN STAGES PER TOWER.
TAKES A FAN STAGE INPUT AND SEQUENCES FAN STAGES 0-X.
6TWRXSTG  6 TOWER EQUAL RUNTIME SELECTOR W/ X FAN STAGES PER TOWER.
TAKES A FAN STAGE INPUT AND SEQUENCES FAN STAGES 0-X.
6SEL2  6 STAGE INPUT TO 6 OUTPUT BINARY SELECTOR. EACH OUTPUT IS
ASSIGNABLE TO A STAGE #.
8STAGE  8 STAGE INCREMENTAL SEQUENCER FOR 4 TWO-SPEED TOWER FANS.  LLLLHHHH STAGING.
ALTERN8  2 PUMP LEAD/LAG SELECTOR. STARTS LEAD PUMP, IF LEAD FAILS
THEN THE LAG IS STARTED. IF LAG FAILS, ALL OUTPUTS SHUT
OFF AND AN ALARM IS GENERATED.
AVGX  6 AI AVERAGER. THIS WILL TAKE 6 AI INPUTS, THROW OUT ALL
UNRELIABLE ONES, THROW OUT ANY AI'S THAT ARE OUT OF
A DEFINED TOLERANCE RANGE, AND AVERAGE THE REMAINING.
IF ALL ARE UNRELIABLE, THEN A DEFAULT IS USED.
BINCOUNT  UP TO 8 BINARY INPUT COUNTER. OUTPUTS A VALUE CORRESPONDING TO THE NUMBER OF BINARY INPUTS THAT ARE ON.
INCDEC  INCREMENTAL STEPPER THAT TAKES TWO BINARY STEP INPUTS (STEP UP/STEP DOWN) AND INCREMENTS AN ANALOG STAGE NUMBER WITHIN DEFINED RANGES. USED IN CONJUNCTION WITH THE 5EQRUN BLOCK.
INTEGER CONVERT FLOAT VALUE TO INTEGER (TRUNCATE OR ROUND UP)
HEATINDX HEAT INDEX CALCULATION BASED ON OAT AND OAH
HILOAVG Hi, Low, and Average Calculation
LEADLAG LEAD/LAG CONTROL WILL FAILURE LOGIC.  LEAD CMD AND LAG CMD INPUTS.
LSEQRT LEAD/STANDBY EQUAL RUNTIME SELECTION
MEMHILO MEMORY BLOCK THAT TRIGGERS OUTPUTS WHEN INPUT IS HIGHER OR LOWER THAN PREVIOUS INPUT
NC1OFFLN  OUTPUTS A BINARY SIGNAL WHEN A NCM IS OFFLINE.
OAT4  4 INPUT VERSION OF AVGX.MAC.
OFFDLY  BINARY OFF DELAY BLOCK.
ONOFFDLY  BINARY ON AND OFF DELAY BLOCK. 
PSEQ2  4 PUMP SEQUENCE SELECTOR AND ROTATOR.
ROTATE4  4 INPUT STAGE ORDER VALIDATION AND ROTATION. THIS IS USED
IN CONJUCTION WITH 4SEL2.MAC.
SEQGEN  UP TO 5 DEVICE SEQUENCE GENERATOR. INPUT THE LEAD DEVICE # AND THE STAGE ORDER FOR EACH DEVICE IS GENERATED SEQUENTIALLY STARTING WITH 1 AT THE LEAD DEVICE.
SPINCDEC SETPOINT INCREMENT/DECREMENT
STDALM STANDARD ALARM DELAY BLOCK.  ALARMS WHEN CMD <> INPUT OR MISMATCHED CMD AND INPUT.  ALARM CAN BE LATCHED OR NOT.
SWINDOW SLIDING WINDOW KW CALCULATION

  
 Links