2	adder	en	Arithmetic	Adder	The <b>Output</b> is the algebraic sum of of <b>Input 1</b> and <b>Input 2</b>.<p><b>Output = Input 1 + Input 2</b></p>	Normal	3	FBS/adder.dvg	FBE/adder.dvg	0	-20	120	80	fbAdder		15	0	0x1000		General				-1
-4	system4	en	System	System4	The System function block contains information about the function block engine.  Also included are statically-bound parameters such as those associated with Modbus.	System	30	FBS/system.dvg	FBE/system4.dvg	0	0	120	80	fbSystem		0	0	0x1000		dwM4				-1
3	subtracter	en	Arithmetic	Subtracter	The <b>Output</b> is the algebraic difference of <b>Input 1</b> and <b>Input 2</b>.<p><b>Output = Input 1 - Input 2.</b></p>	Normal	3	FBS/subtracter.dvg	FBE/subtracter.dvg	0	-20	120	80	fbSubtracter		15	0	0x1000		General				-1
4	multiplier	en	Arithmetic	Multiplier	The <b>Output</b> is the product of the <b>Input</b> and the <b>Multiplier</b> analog inputs.<p><b>Output = Input &#215; Multiplier</b></p>	Normal	3	FBS/multiplier.dvg	FBE/multiplier.dvg	0	-20	120	80	fbMultiplier		15	0	0x1000		General				-1
5	divider	en	Arithmetic	Divider	The <b>Output</b> is the quotient of the <b>Input</b> analog input divided by the <b>Divisor</b> analog input.<p><b>Output = Input  &#247; Divisor</b></p><p>The intermediate internal value is a 32-bit number to prevent over/underflow errors.</p>	Normal	3	FBS/divider.dvg	FBE/divider.dvg	0	-20	120	80	fbDivider		15	0	0x1000		General				-1
6	clamp	en	Clamps	Clamp	The <b>Output</b> is fixed to the appropriate clamp value when the input is algebraically outside of the range of the <b>Upper Clamp</b> and <b>Lower Clamp</b>.<p><table border="1" align="center">  <tr align="center">     <th>Input</th>     <th>Output</th>  </tr>  <tr align="center">      <td>Lower Clamp &#60; Input &#60; Upper Clamp </td>      <td>Input</td>  </tr>  <tr align="center">      <td>Input &#60; Lower Clamp</td>      <td>Lower Clamp</td>   </tr>  <tr align="center">      <td>Input &#62; Upper Clamp</td>      <td>Upper Clamp</td>   </tr></table></p><p>If the <b>Lower Clamp</b> exceeds the <b>Upper Clamp</b>, the <b>Output</b> will be equal to the <b>Upper Clamp</b>.</p>	Normal	4	FBS/clamp.dvg	FBE/clamp.dvg	0	0	120	120	fbClamp		15	0	0x1000		General				-1
7	2inSwitch	en	Switches	2-In Switch	Selects between two values based on a boolean Select.	Normal	4	FBS/2inSwitch.dvg	FBE/2inSwitch.dvg	0	0	120	120	fb2inSwitch		15	0	0x1000		General				-1
8	16inSwitch	en	Switches	16-In Switch	Selects between sixteen values based on a Select value.	Normal	18	FBS/16inSwitch.dvg	FBE/16inSwitch.dvg	0	0	410	960	fb16inSwitch		1	0	0x1000		General				-1
9	8inSwitch	en	Switches	8-In Switch	Selects between eight values based on a Select value.	Normal	10	FBS/8inSwitch.dvg	FBE/8inSwitch.dvg	0	0	250	480	fb8inSwitch		1	0	0x1004		General				-1
10	4inSwitch	en	Switches	4-In Switch	Selects between four values based on a Select value.	Normal	6	FBS/4inSwitch.dvg	FBE/4inSwitch.dvg	0	0	150	240	fb4inSwitch		1	0	0x1004		General				-1
11	16outSwitch	en	Switches	16-Out Switch	Selects between sixteen values based on a Select value.	Normal	18	FBS/16outSwitch.dvg	FBE/16outSwitch.dvg	0	0	410	900	fb16outSwitch		1	0	0x1004		General				-1
12	8outSwitch	en	Switches	8-Out Switch	Selects between eight values based on a Select value.	Normal	10	FBS/8outSwitch.dvg	FBE/8outSwitch.dvg	0	0	250	420	fb8outSwitch		1	0	0x1004		General				-1
13	4outSwitch	en	Switches	4-Out Switch	Selects between four values based on a Select value.	Normal	6	FBS/4outSwitch.dvg	FBE/4outSwitch.dvg	0	0	150	180	fb4outSwitch		1	0	0x1004		General				-1
14	2outSwitch	en	Switches	2-Out Switch	Selects between two outputs based on a boolean Select.	Normal	4	FBS/2outSwitch.dvg	FBE/2outSwitch.dvg	0	0	120	90	fb2outSwitch		15	0	0x1004		General				-1
15	comparator	en	Comparators	Comparator	Basic comparator with hysteresis	Normal	4	FBS/comparator.dvg	FBE/comparator.dvg	0	0	100	120	fbComparator		1	0	0x1007		General				-1
16	equalityComp	en	Comparators	Equality Comparator	Equality comparator with hysteresis	Normal	5	FBS/equalityComp.dvg	FBE/equalityComp.dvg	0	0	240	180	fbEqualityComp		1	0	0x1007		General				-1
17	windowComp	en	Comparators	Window Comparator	Window comparator with hysteresis	Normal	6	FBS/windowComp.dvg	FBE/windowComp.dvg	0	0	170	180	fbWindowComp		1	0	0x1007		General				-1
18	not	en	Logic Gates	NOT	The <b>Output</b> is the logical NOT of the <b>Input</b>.<p><table border="1" align="center">  <tr align="center">     <th>Input</th>     <th>Output</th>  </tr>  <tr  align="center">      <td>0</td>      <td>1</td>  </tr>  <tr align="center">      <td>1</td>      <td>0</td>   </tr></table></p>	Normal	2	FBS/not.dvg	FBE/not.dvg	0	-20	75	40	fbNot		15	0	0x1007		General				-1
19	and	en	Logic Gates	AND	The output is the logical AND of the two logic inputs.<p><table border="1" align="center">  <tr align="center">     <th>Input 1</th>     <th>Input 2</th>     <th>Output</th>  </tr>  <tr  align="center">      <td>0</td>      <td>0</td>      <td>0</td>  </tr>  <tr align="center">      <td>0</td>      <td>1</td>      <td>0</td>   </tr>  <tr align="center">      <td>1</td>      <td>0</td>      <td>0</td>   </tr>  <tr align="center">      <td>1</td>      <td>1</td>      <td>1</td>   </tr></table></p>	Normal	3	FBS/and.dvg	FBE/and.dvg	0	0	90	60	fbAnd		15	0	0x1007		General				-1
20	or	en	Logic Gates	OR	The <b>Output</b> is the logical OR of <b>Input 1</b> and <b>Input 2</b>.<p><table border="1" align="center">  <tr align="center">     <th>Input 1</th>     <th>Input 2</th>     <th>Output</th>  </tr>  <tr  align="center">      <td>0</td>      <td>0</td>      <td>0</td>  </tr>  <tr align="center">      <td>0</td>      <td>1</td>      <td>1</td>   </tr>  <tr align="center">      <td>1</td>      <td>0</td>      <td>1</td>   </tr>  <tr align="center">      <td>1</td>      <td>1</td>      <td>1</td>   </tr></table></p>	Normal	3	FBS/or.dvg	FBE/or.dvg	0	0	90	60	fbOr		15	0	0x1007		General				-1
21	xor	en	Logic Gates	XOR	The <b>Output</b> is the logical XOR of <b>Input 1</b> and <b>Input 2</b>.<p><table border="1" align="center">  <tr align="center">     <th>Input 1</th>     <th>Input 2</th>     <th>Output</th>  </tr>  <tr  align="center">      <td>0</td>      <td>0</td>      <td>0</td>  </tr>  <tr align="center">      <td>0</td>      <td>1</td>      <td>1</td>   </tr>  <tr align="center">      <td>1</td>      <td>0</td>      <td>1</td>   </tr>  <tr align="center">      <td>1</td>      <td>1</td>      <td>0</td>   </tr></table></p>	Normal	3	FBS/xor.dvg	FBE/xor.dvg	0	0	90	60	fbXor		1	0	0x1007		General				-1
22	nand	en	Logic Gates	NAND	The <b>Output</b> is the logical NAND of <b>Input 1</b> and <b>Input 2</b>.<p><table border="1" align="center">  <tr align="center">     <th>Input 1</th>     <th>Input 2</th>     <th>Output</th>  </tr>  <tr  align="center">      <td>0</td>      <td>0</td>      <td>1</td>  </tr>  <tr align="center">      <td>0</td>      <td>1</td>      <td>1</td>   </tr>  <tr align="center">      <td>1</td>      <td>0</td>      <td>1</td>   </tr>  <tr align="center">      <td>1</td>      <td>1</td>      <td>0</td>   </tr></table></p>	Normal	3	FBS/nand.dvg	FBE/nand.dvg	0	0	90	60	fbNand		1	0	0x1007		General				-1
23	nor	en	Logic Gates	NOR	The <b>Output</b> is the logical NOR of <b>Input 1</b> and <b>Input 2</b>.<p><table border="1" align="center">  <tr align="center">     <th>Input 1</th>     <th>Input 2</th>     <th>Output</th>  </tr>  <tr  align="center">      <td>0</td>      <td>0</td>      <td>1</td>  </tr>  <tr align="center">      <td>0</td>      <td>1</td>      <td>0</td>   </tr>  <tr align="center">      <td>1</td>      <td>0</td>      <td>0</td>   </tr>  <tr align="center">      <td>1</td>      <td>1</td>      <td>0</td>   </tr></table></p>	Normal	3	FBS/nor.dvg	FBE/nor.dvg	0	0	90	60	fbNor		1	0	0x1007		General				-1
24	xnor	en	Logic Gates	XNOR	The <b>Output</b> is the logical XNOR of <b>Input 1</b> and <b>Input 2</b>.<p><table border="1" align="center">  <tr align="center">     <th>Input 1</th>     <th>Input 2</th>     <th>Output</th>  </tr>  <tr  align="center">      <td>0</td>      <td>0</td>      <td>1</td>  </tr>  <tr align="center">      <td>0</td>      <td>1</td>      <td>0</td>   </tr>  <tr align="center">      <td>1</td>      <td>0</td>      <td>0</td>   </tr>  <tr align="center">      <td>1</td>      <td>1</td>      <td>1</td>   </tr></table></p>	Normal	3	FBS/xnor.dvg	FBE/xnor.dvg	0	0	90	60	fbXnor		1	0	0x1007		General				-1
25	clampMonitored	en	Clamps	Clamp with Monitor	The <b>Output</b> is fixed to the appropriate clamp value when the input is algebraically outside of the range of the upper and lower clamps. The <b>Clamping Output</b> activates when either of the clamps is being applied.<p><table border="1" align="center">  <tr align="center">     <th>Input</th>     <th>Output</th>     <th>Clamping Output</th>   </tr>  <tr  align="center">      <td>Lower Clamp &#60; Input &#60; Upper Clamp </td>      <td>Input</td>      <td>Not Clamping (0)</td>  </tr>  <tr align="center">      <td>Input &#60; Lower Clamp</td>      <td>Lower Clamp</td>      <td>Clamping (1)</td>   </tr>  <tr align="center">      <td>Input &#62; Upper Clamp</td>      <td>Upper Clamp</td>      <td>Clamping (1)</td>    </tr></table></p><p>If the <b>Lower Clamp</b> exceeds the <b>Upper Clamp</b>, the <b>Output</b> will be equal to the <b>Upper Clamp</b>.</p>	Normal	5	FBS/clampMonitored.dvg	FBE/clampMonitored.dvg	0	0	120	120	fbClampMonitored		1	0	0x1007		General				-1
26	dLatch	en	Latches	D Latch		Normal	4	FBS/dLatch.dvg	FBE/dLatch.dvg	0	-20	100	100	fbDLatch		1	0	0x1007		General				-1
27	drLatch	en	Latches	D Latch with Reset		Normal	5	FBS/drLatch.dvg	FBE/drLatch.dvg	0	-20	100	140	fbDrLatch		1	0	0x1007		General				-1
28	dsLatch	en	Latches	D Latch with Set		Normal	5	FBS/dsLatch.dvg	FBE/dsLatch.dvg	0	0	100	140	fbDsLatch		1	0	0x1007		General				-1
29	dsrLatch	en	Latches	D Latch with Set and Reset	Reset is dominant over Set	Normal	6	FBS/dsrLatch.dvg	FBE/dsrLatch.dvg	0	0	100	180	fbDsrLatch		1	0	0x1007		General				-1
30	srLatch	en	Latches	SR Latch	Reset is dominant over Set	Normal	3	FBS/srLatch.dvg	FBE/srLatch.dvg	0	-20	100	100	fbSrLatch		1	0	0x1007		General				-1
31	tLatch	en	Latches	T Latch		Normal	4	FBS/tLatch.dvg	FBE/tLatch.dvg	0	-20	100	100	fbTLatch		1	0	0x1007		General				-1
32	pid	en	Control	PID		Normal	20	FBS/pid.dvg	FBE/pid.dvg	-70	0	630	300	fbPID		1	0	0x1007		General				-1
33	uip1a	en	I/O	UIP1 Analog		Normal	5	FBS/uip1a.dvg	FBE/uip1a.dvg	0	-60	400	120	fbUIP1a	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
40	aop1	en	I/O	AOP1		Normal	2	FBS/aop1.dvg	FBE/aop1.dvg	0	-40	240	80	fbAOP1		0	0	0x1008		dwM4	Singleton	AOP		-1
41	aop2	en	I/O	AOP2		Normal	2	FBS/aop2.dvg	FBE/aop2.dvg	0	-40	240	80	fbAOP2		0	0	0x1008		dwM4	Singleton	AOP		-1
42	dio1	en	I/O	DIO1		Normal	3	FBS/dio1.dvg	FBE/dio1.dvg	0	-40	260	180	fbDIO1		0	0	0x1008		dwM4	Singleton	DIO		-1
43	dio2	en	I/O	DIO2		Normal	3	FBS/dio2.dvg	FBE/dio2.dvg	0	-40	260	180	fbDIO2		0	0	0x1008		dwM4	Singleton	DIO		-1
44	dio3	en	I/O	DIO3		Normal	3	FBS/dio3.dvg	FBE/dio3.dvg	0	-40	260	180	fbDIO3		0	0	0x1008		dwM4	Singleton	DIO		-1
45	delayOnTimer	en	Timers	Delay-On Timer	Note that the output timing accuracy is limited  by the timebase.	Normal	5	FBS/delayOnTimer.dvg	FBE/delayOnTimer.dvg	0	-20	150	80	fbDelayOnTimer		1	0	0x1009		General				-1
46	delayOffTimer	en	Timers	Delay-Off Timer	Note that the output timing accuracy is limited  by the timebase.	Normal	5	FBS/delayOffTimer.dvg	FBE/delayOffTimer.dvg	0	-20	150	80	fbDelayOffTimer		1	0	0x1009		General				-1
47	skipband	en	Clamps	Skipband	If the <b>Center</b> parameter is non-zero, this function block skips a band on either side of the <b>Center</b> value. The band's width is the <b>Band</b> setting on either side of the <b>Center</b> (i.e., the total width is 2 &#215; <b>Band</b>). When the <b>Input</b> is within this region, the <b>Output</b> will be remain at either the <b>Center</b> value  &#43;&#47;&#45; <b>Band</b>.<p><table border="1" align="center">  <tr align="center">     <th>Input</th>     <th>Center</th>     <th>Output</th> </tr>  <tr  align="center">      <td>Input</td>      <td>&#61; 0</td>      <td>Input</td>  </tr>  <tr align="center">      <td>Input &#60; &#91; Center - Band &#93;</td>      <td>&#8800; 0</td>      <td>Input</td>   </tr>  <tr align="center">      <td>&#91; Center &#45; Band &#93; &#60; Input &#60; Center</td>      <td>&#8800; 0</td>      <td>Center &#45; Band</td>    </tr> <tr align="center">      <td>Center  &#8804; Input &#60; &#91; Center &#43; Band &#93;</td>      <td>&#8800; 0</td>      <td>Center &#43; Band</td>    </tr><tr align="center">      <td>&#91; Center &#43; Band &#93; &#60; Input</td>      <td>&#8800; 0</td>      <td>Input</td>    </tr></table></p>	Normal	4	FBS/skipband.dvg	FBE/skipband.dvg	0	-20	120	140	fbSkipband		1	0	0x1009		General				-1
48	filter	en	Filters	Low Pass Filter	Low-pass, single pole recursive (IIR) filter.	Normal	4	FBS/filter.dvg	FBE/filter.dvg	0	-20	120	80	fbFilter		1	0	0x100A		General				-1
49	profiler	en	Control	Profiler	Parameter profiler.	Normal	8	FBS/profiler.dvg	FBE/profiler.dvg	0	-20	280	300	fbProfiler		1	0	0x100A		General				-1
50	linRamp	en	Ramps	Linear Ramp		Normal	7	FBS/linRamp.dvg	FBE/linRamp.dvg	0	-120	140	180	fbLinRamp		1	0	0x100A		General				-1
51	diaCalc	en	Winder	Diameter Calculator		Normal	18	FBS/diaCalc.dvg	FBE/diaCalc.dvg	0	-160	780	260	fbDiaCalc	InitCode	2	0	0x100C		General				-1
53	taperTension	en	Winder	Taper Tension		Normal	7	FBS/taperTension.dvg	FBE/taperTension.dvg	0	-5	280	180	fbTaperTension	InitCode	2	0	0x100C		General				-1
52	torqueComp	en	Winder	Torque Compensator		Normal	30	FBS/torqueComp.dvg	FBE/torqueComp.dvg	0	-120	840	240	fbTorqueComp	InitCode	2	0	0x100C		dwM4				-1
54	uip1l	en	I/O	UIP1 Logic		Normal	3	FBS/uip1l.dvg	FBE/uip1l.dvg	0	-40	220	100	fbUIP1l	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
34	uip2a	en	I/O	UIP2 Analog		Normal	5	FBS/uip2a.dvg	FBE/uip2a.dvg	0	-60	400	120	fbUIP2a	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
35	uip3a	en	I/O	UIP3 Analog		Normal	5	FBS/uip3a.dvg	FBE/uip3a.dvg	0	-60	400	120	fbUIP3a	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
36	uip4a	en	I/O	UIP4 Analog		Normal	5	FBS/uip4a.dvg	FBE/uip4a.dvg	0	-60	400	120	fbUIP4a	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
37	uip5a	en	I/O	UIP5 Analog		Normal	5	FBS/uip5a.dvg	FBE/uip5a.dvg	0	-60	400	120	fbUIP5a	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
38	uip6a	en	I/O	UIP6 Analog		Normal	5	FBS/uip6a.dvg	FBE/uip6a.dvg	0	-60	400	120	fbUIP6a	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
39	uip7a	en	I/O	UIP7 Analog		Normal	5	FBS/uip7a.dvg	FBE/uip7a.dvg	0	-60	400	120	fbUIP7a	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
61	uip1d	en	I/O	UIP1&2 Differential		Normal	5	FBS/uip1d.dvg	FBE/uip1d.dvg	0	-60	400	120	fbUIP1d	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
55	uip2l	en	I/O	UIP2 Logic		Normal	3	FBS/uip2l.dvg	FBE/uip2l.dvg	0	-40	220	100	fbUIP2l	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
56	uip3l	en	I/O	UIP3 Logic		Normal	3	FBS/uip3l.dvg	FBE/uip3l.dvg	0	-40	220	100	fbUIP3l	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
57	uip4l	en	I/O	UIP4 Logic		Normal	3	FBS/uip4l.dvg	FBE/uip4l.dvg	0	-40	220	100	fbUIP4l	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
58	uip5l	en	I/O	UIP5 Logic		Normal	3	FBS/uip5l.dvg	FBE/uip5l.dvg	0	-40	220	100	fbUIP5l	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
59	uip6l	en	I/O	UIP6 Logic		Normal	3	FBS/uip6l.dvg	FBE/uip6l.dvg	0	-40	220	100	fbUIP6l	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
60	uip7l	en	I/O	UIP7 Logic		Normal	3	FBS/uip7l.dvg	FBE/uip7l.dvg	0	-40	220	100	fbUIP7l	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
62	uip3d	en	I/O	UIP3&4 Differential		Normal	5	FBS/uip3d.dvg	FBE/uip3d.dvg	0	-60	400	120	fbUIP3d	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
63	uip5d	en	I/O	UIP5&6 Differential		Normal	5	FBS/uip5d.dvg	FBE/uip5d.dvg	0	-60	400	120	fbUIP5d	InitCode	0	0	0x100D		dwM4	Singleton	UIP		-1
64	enc1l	en	I/O	ENC1 Logic		Normal	3	FBS/enc1l.dvg	FBE/enc1l.dvg	0	-20	200	340	fbENC1l	InitCode	0	0	0x100E		dwM4	Singleton	ENC1		-1
65	enc2l	en	I/O	ENC2 Logic		Normal	3	FBS/enc2l.dvg	FBE/enc2l.dvg	0	-20	200	340	fbENC2l	InitCode	0	0	0x100E		dwM4	Singleton	ENC2		-1
66	enc1s	en	I/O	ENC1 Speed		Normal	5	FBS/enc1s.dvg	FBE/enc1s.dvg	0	-40	370	240	fbENC1s	InitCode	0	0	0x100E		dwM4	Singleton	ENC1		-1
67	enc2s	en	I/O	ENC2 Speed		Normal	5	FBS/enc2s.dvg	FBE/enc2s.dvg	0	-40	370	240	fbENC2s	InitCode	0	0	0x100E		dwM4	Singleton	ENC2		-1
68	userLog	en	Utility	User Logger	Stores a timestamp, the tag and the data in the device log whenever there is a positive edge on the store input.  Note that this should only be used for low-rate logging (such as exceptional conditions) - the device log is limited in capacity.	Normal	4	FBS/userLog.dvg	FBE/userLog.dvg	0	-20	185	160	fbUserLog		1	0	0x100E		General				-1
69	signValue	en	Arithmetic	Sign And Value	There are  two outputs from this function block. The <b>Output</b> is the magnitude of the <b>Input</b> while the <b>Sign</b> output reflects the polarity of the <b>Input</b>.<p><table border="1" align="center">  <tr align="center">     <th>Input</th>     <th>Output</th>     <th>Sign</th>  </tr>  <tr  align="center">      <td>Input &#8805; 0</td>      <td>Input</td>      <td>Positive (0)</td>  </tr>  <tr align="center">      <td>Input &#60; 0 </td>      <td>&#124; Input &#124;</td>      <td>Negative (1)</td>   </tr></table></p>	Normal	3	FBS/signValue.dvg	FBE/signValue.dvg	0	0	120	60	fbSignValue		1	0	0x100E		General				-1
70	diffSplit	en	Arithmetic	Differential Splitter	The <b>Output</b> splits a single analog <b>Input</b> into a separate <b>Positive Output</b> &#38; <b>Negative Output</b>.<p>If a bipolar output (+/- 10 Vdc) is required but not available, this block can be used with two unipolar analog outputs (0-10 Vdc) to provide the bipolar functionality (<b><em>provided the connected device has an inverting and non-inverting input which are summed together internally</em></b>).</p>  <p><table border="1" align="center">  <tr align="center">     <th>Input</th>     <th>Positive Output</th>     <th>Negative Output</th>  </tr>  <tr  align="center">      <td>Input &#8805; 0</td>      <td>Input</td>      <td>0</td>  </tr>  <tr align="center">      <td>Input &#60; 0 </td>      <td>0</td>      <td>&#124; Input &#124;</td>   </tr></table></p><p>Where &#124; <b>Input</b> &#124; is the absolute value of the input.</p><p>Connect the <b>Positive Output</b> to the device's non-inverting input and the <b>Negative Output</b> to the inverting input.</p>	Normal	3	FBS/diffSplit.dvg	FBE/diffSplit.dvg	0	0	120	60	fbDiffSplit		1	0	0x100E		General				-1
71	signChanger	en	Arithmetic	Sign Changer	The <b>Output</b> changes the sign of an analog <b>Input</b> as a function of the <b>Negate</b> input.<p><table border="1" align="center">  <tr align="center">     <th>Input</th>     <th>Negate</th>     <th>Output</th>  </tr>  <tr  align="center">      <td>Input</td>      <td>Inactive (0)</td>      <td>Input</td>  </tr>  <tr align="center">      <td>Input</td>      <td>Negate (1)</td>      <td>-1 &times; Input</td>   </tr></table></p><p>Note: If a negative <b>Input</b> is negated, the result will be a positive <b>Output</b>.</p>	Normal	3	FBS/signChanger.dvg	FBE/signChanger.dvg	0	-20	120	80	fbSignChanger		1	0	0x100E		General				-1
72	watchdog	en	Utility	Watchdog	To use this function block, connect a parameter in a remote device to the input parameter (do NOT connect a local parameter).  The timer is reset whenever a non-zero value is received.  If the remote device fails or is powered down or if the network fails, the timer will timeout and the output will go true. 	Normal	6	FBS/watchdog.dvg	FBE/watchdog.dvg	-40	-10	140	80	fbWatchdog	InitCode	10	0	0x1010		General				-1
73	sRamp	en	Ramps	S Ramp		Normal	17	FBS/sRamp.dvg	FBE/sRamp.dvg	0	-90	270	150	fbSRamp		1	0	0x1012		General				-1
74	mop	en	Ramps	MOP		Normal	11	FBS/mop.dvg	FBE/mop.dvg	0	-100	320	200	fbMOP	InitCode	1	0	0x1012		General				-1
75	connTest	en	R&D	ConnTest	Test article for connection routing	Normal	10	FBS/connTest.dvg	FBE/connTest.dvg	0	-60	180	180	fbConnTest		14	0	0x101D		General				-1
76	trackAndHold	en	Switches	Track and Hold		Normal	3	FBS/trackAndHold.dvg	FBE/trackAndHold.dvg	0	-20	140	100	fbTrackAndHold		1	0	0x1021		General				-1
77	4bitBinEnc	en	Logic	4-Bit Binary Encoder		Normal	5	FBS/4bitBinEnc.dvg	FBE/4bitBinEnc.dvg	0	-10	120	200	fb4bitBinEnc		1	0	0x1021		General				-1
78	4bitPriorityEnc	en	Logic	4-Bit Priority Encoder		Normal	16	FBS/4bitPriorityEnc.dvg	FBE/4bitPriorityEnc.dvg	0	-10	120	860	fb4bitPriorityEnc		1	0	0x1021		General				-1
79	16bitBinEnc	en	Logic	16-Bit Binary Encoder		Normal	17	FBS/16bitBinEnc.dvg	FBE/16bitBinEnc.dvg	0	-10	120	920	fb16bitBinEnc		1	0	0x1021		General				-1
80	bitwiseAnd	en	Logic	Bitwise AND		Normal	3	FBS/bitwiseAnd.dvg	FBE/bitwiseAnd.dvg	0	0	90	60	fbBitwiseAnd		1	0	0x1021		General				-1
81	bitwiseOr	en	Logic	Bitwise OR		Normal	3	FBS/bitwiseOr.dvg	FBE/bitwiseOr.dvg	0	0	90	60	fbBitwiseOr		1	0	0x1021		General				-1
82	bitwiseXor	en	Logic	Bitwise XOR		Normal	3	FBS/bitwiseXor.dvg	FBE/bitwiseXor.dvg	0	0	90	60	fbBitwiseXor		1	0	0x1021		General				-1
83	bitwiseNot	en	Logic	Bitwise NOT		Normal	2	FBS/bitwiseNot.dvg	FBE/bitwiseNot.dvg	0	-20	75	40	fbBitwiseNot		1	0	0x1021		General				-1
84	upDownCounter	en	Counters	Up/Down Counter		Normal	17	FBS/upDownCounter.dvg	FBE/upDownCounter.dvg	0	-70	660	240	fbUpDownCounter	InitCode	1	0	0x1022		General				-1
85	oscillator	en	Timers	Oscillator	Note that the output timing accuracy is limited  by the timebase.	Normal	5	FBS/oscillator.dvg	FBE/oscillator.dvg	-40	-10	120	80	fbOscillator		1	0	0x1026		General				-1
86	square	en	Math	Square	The output is clamped at 3.2767 (which corresponds to an input of 1.8101).	Normal	2	FBS/square.dvg	FBE/square.dvg	0	-20	120	40	fbSquare		3	0	0x1026	fb_Math#sqr	General				-1
87	cube	en	Math	Cube	The output is clamped at ±3.2767 (which corresponds to an input of ±1.4853).	Normal	2	FBS/cube.dvg	FBE/cube.dvg	0	-20	120	40	fbCube		3	0	0x1026	fb_Math#cub	General				-1
88	squareroot	en	Math	Square Root	The output is the square root of the absolute value of the input.	Normal	2	FBS/squareroot.dvg	FBE/squareroot.dvg	0	-20	120	40	fbSquareRoot		3	0	0x1026	fb_Math#sqrt	General				-1
89	cuberoot	en	Math	Cube Root		Normal	2	FBS/cuberoot.dvg	FBE/cuberoot.dvg	0	-20	120	40	fbCubeRoot		3	0	0x1026	fb_Math#cbrt	General				-1
90	reciprocal	en	Math	Reciprocal	The output is clamped at ±3.2767 (which corresponds to an input of ±0.3052).	Normal	2	FBS/reciprocal.dvg	FBE/reciprocal.dvg	0	-20	120	40	fbReciprocal		3	0	0x1026	fb_Math#rcp	General				-1
91	exponential	en	Math	Exponential	The output is clamped at 3.2767 (which corresponds to an input of 1.1868).	Normal	2	FBS/exponential.dvg	FBE/exponential.dvg	0	-20	120	40	fbExponential		3	0	0x1026	fb_Math#exp	General				-1
92	logarithm	en	Math	Logarithm	The output is the natural logarithm of the absolute value of the input.  The output is clamped at -3.2767 (which corresponds to an input of 0.0378).	Normal	2	FBS/logarithm.dvg	FBE/logarithm.dvg	0	-20	120	40	fbLogarithm		3	0	0x1026	fb_Math#log	General				-1
93	sine	en	Math	Sine	The input is in radians	Normal	2	FBS/sine.dvg	FBE/sine.dvg	0	-20	120	40	fbSine		3	0	0x1026	fb_Math#sin	General				-1
94	cosine	en	Math	Cosine	The input is in radians	Normal	2	FBS/cosine.dvg	FBE/cosine.dvg	0	-20	120	40	fbCosine		3	0	0x1026	fb_Math#cos	General				-1
95	tangent	en	Math	Tangent	The input is in radians.  The output is clamped at ±3.2767 .	Normal	2	FBS/tangent.dvg	FBE/tangent.dvg	0	-20	120	40	fbTangent		3	0	0x1026	fb_Math#tan	General				-1
96	arcSine	en	Math	ArcSine	The output is in radians (-1.5708 to +1.5708).	Normal	2	FBS/arcSine.dvg	FBE/arcSine.dvg	0	-20	120	40	fbArcSine		3	0	0x1026	fb_Math#asin	General				-1
97	arcCosine	en	Math	ArcCosine	The output is in radians (0 to 3.1416).	Normal	2	FBS/arcCosine.dvg	FBE/arcCosine.dvg	0	-20	120	40	fbArcCosine		3	0	0x1026	fb_Math#acos	General				-1
98	arcTangent	en	Math	ArcTangent	The output is in radians.  Due to the input limits of ±3.2767, the output range is limited ±1.2746 radians	Normal	2	FBS/arcTangent.dvg	FBE/arcTangent.dvg	0	-20	120	40	fbArcTangent		3	0	0x1026	fb_Math#atan	General				-1
0	unknown	en	System	Unknown	If you see this function block, it is time to update savvy!	System	32	FBS/unknown.dvg	FBE/unknown.dvg	0	0	120	80	fbNull		0	0	0x1000		General				-1
99	encSpeed	en	I/O	ENC Speed Lock	Please see the manual page for detailed information.  Incompatible with ENC1 Position and ENC2 Position function blocks.	Normal	6	FBS/encSpeed.dvg	FBE/encSpeed.dvg	0	-40	550	520	fbENCspeed	InitCode	4	0	0x1027	fb_SpeedLock	dwM4	Singleton	ENC1ENC2		-1
100	enc1p	en	I/O	ENC1 Position1	Incompatible with ENC1 Position2, ENC Speed Lock  and Registration function blocks.	Normal	5	FBS/enc1p.dvg	FBE/enc1p.dvg	0	-40	370	260	fbENC1p	InitCode	4	0	0x1027		dwM4	Singleton	ENC1		-1
101	enc2p	en	I/O	ENC2 Position1	Incompatible with ENC Speed Lock  and Registration function blocks.	Normal	5	FBS/enc2p.dvg	FBE/enc2p.dvg	0	-40	370	260	fbENC2p	InitCode	4	0	0x1027		dwM4	Singleton	ENC2		-1
102	integral	en	Control	Integrator		Normal	8	FBS/integral.dvg	FBE/integral.dvg	0	-90	200	180	fbIntegral		1	0	0x1027		General				-1
103	derivative	en	Control	Differentiator		Normal	6	FBS/derivative.dvg	FBE/derivative.dvg	0	-20	260	100	fbDerivative		1	0	0x1027		General				-1
104	max	en	Comparators	Maximum	The output is the larger of the two inputs	Normal	3	FBS/max.dvg	FBE/max.dvg	0	0	120	60	fbMax		1	0	0x1027		General				-1
105	min	en	Comparators	Minimum	The output is the smaller of the two inputs	Normal	3	FBS/min.dvg	FBE/min.dvg	0	0	120	60	fbMin		1	0	0x1027		General				-1
106	deadband	en	Clamps	Deadband	If the <b>Center</b> parameter is non-zero, this function block creates a deadband on either side of the <b>Center</b> value. The deadband width is the <b>Band</b> setting on either side of the <b>Center</b> (i.e., the total width is 2 &#215; <b>Band</b>). When the <b>Input</b> is within this region, the <b>Output</b> will be the <b>Center</b> value.<p><table border="1" align="center">  <tr align="center">     <th>Input</th>     <th>Center</th>     <th>Output</th> </tr>  <tr  align="center">      <td>Input</td>      <td>&#61; 0</td>      <td>Input</td>  </tr>  <tr align="center">      <td>Input &#60; &#91; Center - Band &#93;</td>      <td>&#8800; 0</td>      <td>Input</td>   </tr>  <tr align="center">      <td>&#91; Center &#45; Band &#93; &#60; Input &#60; &#91; Center &#43; Band &#93;</td>      <td>&#8800; 0</td>      <td>Center</td>    </tr>  <tr align="center">      <td>&#91; Center &#43; Band &#93; &#60; Input</td>      <td>&#8800; 0</td>      <td>Input</td>    </tr></table></p>	Normal	4	FBS/deadband.dvg	FBE/deadband.dvg	0	-20	120	140	fbDeadband		1	0	0x1027		General				-1
107	oneShot	en	Timers	One Shot		Normal	3	FBS/oneShot.dvg	FBE/oneShot.dvg	0	-20	150	40	fbOneShot		1	0	0x1029		General				-1
108	underlap	en	Timers	Underlap		Normal	8	FBS/underlap.dvg	FBE/underlap.dvg	-40	-50	220	150	fbUnderlap	InitCode	1	0	0x1029		General				-1
109	movingAverageFilter	en	Filters	Moving Average Filter	This is an efficient FIR filter.  It makes an excellent time-domain smoothing filter: good for reducing random noise while retaining a sharp step response.  Note that changing the size parameter will temporarily reset the output to zero.	Normal	5	FBS/movingAverageFilter.dvg	FBE/movingAverageFilter.dvg	0	-20	120	80	fbMovingAverageFilter	InitCode	1	0	0x1029		General				-1
110	registration	en	I/O	Registration	Incompatible with ENC1 Position and ENC2 Position function blocks.	Normal	7	FBS/registration.dvg	FBE/registration.dvg	0	-20	540	280	fbRegistration	InitCode	4	0	0x1029		dwM4	Singleton			-1
111	pi	en	Control	PI		Normal	15	FBS/pi.dvg	FBE/pi.dvg	-70	30	570	270	fbPI		15	0	0x102C		General				-1
112	parmBlock	en	Utility	Analog Parameter Block	Simply a block of four parameters.	Normal	4	FBS/parmBlock.dvg	FBE/parmBlock.dvg	-20	0	190	30	fbParmBlock		0	0	0x102C		General				-1
113	indirectBlock	en	Utility	CommsServer Indirect Block	A block of four indirect parameters for ModbusRTU Slave, ModbusTCP Slave and EIP/PCCC Server.	Normal	4	FBS/indirectBlock.dvg	FBE/indirectBlock.dvg	0	-10	130	50	fbIndirectBlock	InitCode	0	0	0x102C		General		Modbus	CommsServer	-1
114	mulDiv	en	Arithmetic	Multiplier-Divider	The <b>Output</b> is the product of the <b>Input</b> and the <b>Multiplier</b> analog inputs divided by the <b>Divisor</b> analog input.<p><b>Output = &#91; Input  &times; Multiplier &#93; &#247; Divisor</b></p><p>The intermediate internal values are 32-bit numbers to prevent over/underflow errors.</p>	Normal	4	FBS/mulDiv.dvg	FBE/mulDiv.dvg	0	-20	220	140	fbMulDiv		1	0	0x102D		General				-1
115	commsMonitor	en	Utility	Drive Comms Monitor	Monitors the status of the communications with the drive.  Used to be called 'Device Comms Monitor'.	Normal	1	FBS/commsMonitor.dvg	FBE/commsMonitor.dvg	-10	-30	120	60	fbCommsMonitor		0	0	0x102D		General	Singleton		Drive	-1
116	watchdogDriver	en	Utility	Watchdog Driver	Generates a constantly changing value that increments from 1 to 30000 and then resets back to 1.  Intended to be connected across the network to the input of Utility/Watchdog.	Normal	1	FBS/watchdogDriver.dvg	FBE/watchdogDriver.dvg	-20	-20	110	80	fbWatchdogDriver		0	0	0x102D		General	Singleton			-1
117	modbusPort	en	ModbusRTU Master	Comms Port	Each Modbus RTU Master will have one Comms Port function block which provides global serial port configuration, control, and monitoring.	Normal	7	FBS/modbusPort.dvg	FBE/modbusPort.dvg	-30	0	270	80	fbModbusPort	InitCode	0	0	0x1030		dwM4	Singleton	ModbusMaster		-1
118	modbusRegSigned	en	ModbusRTU Master	Holding Register INT16	When the data obtained from the slave device is an unsigned 16-bit integer (Range = 0 to 65535), the <b>Modbus Data INT16</b> should be used.	Normal	6	FBS/modbusReg.dvg	FBE/modbusRegS.dvg	-30	0	180	60	fbModbusReg	InitCode	0	0	0x1030		dwM4		ModbusMaster		-1
119	modbusRegUnsigned	en	ModbusRTU Master	Holding Register UINT16	When the data obtained from the slave device is an unsigned 16-bit integer (Range= 0 to 65535), the <b>Modbus Data UINT16</b> should be used.	Normal	6	FBS/modbusReg.dvg	FBE/modbusRegU.dvg	-30	0	180	60	fbModbusReg	InitCode	0	0	0x1030		dwM4		ModbusMaster		-1
120	bitwiseShift	en	Logic	Bitwise Shift		Normal	3	FBS/bitwiseShift.dvg	FBE/bitwiseShift.dvg	0	-30	100	90	fbBitwiseShift		1	0	0x1030		General				-1
121	indicator	en	Utility	Indicator		Normal	1	FBS/indicator.dvg	FBE/indicator.dvg	0	-30	100	60	fbIndicator		5	0	0x1032		General				-1
122	modbusOptidriveVTC	en	ModbusRTU Master	Optidrive VTC		Normal	54	FBS/modbusOptidrive.dvg	FBE/modbusOptidrive.dvg	-40	0	280	280	fbModbusOptidrive	InitCode	0	0	0x1032		dwM4		ModbusMaster		-1
123	optiHelper	en	Drive Helper	Optidrive Helper		Normal	11	FBS/optiHelper.dvg	FBE/optiHelper.dvg	-40	0	280	340	fbOptiHelper	InitCode	5	0	0x1032		General				-1
124	modbusOptidriveODP	en	ModbusRTU Master	Optidrive Plus		Normal	54	FBS/modbusOptidrive.dvg	FBE/modbusOptidrive.dvg	-40	0	280	280	fbModbusOptidrive	InitCode	0	0	0x1032		dwM4		ModbusMaster		-1
125	modbusCRW09	en	ModbusRTU Master	Eurotherm ERCFW09		Normal	48	FBS/modbusCFW09.dvg	FBE/modbusCRW09.dvg	-40	0	280	220	fbModbusCRW09	InitCode	0	0	0x1033		dwM4		ModbusMaster		-1
126	modbusCFW09	en	ModbusRTU Master	WEG CFW09		Normal	48	FBS/modbusCFW09.dvg	FBE/modbusCFW09.dvg	-40	0	280	220	fbModbusCRW09	InitCode	0	0	0x1034		dwM4		ModbusMaster		-1
127	16bitBinDec	en	Logic	16-Bit Binary Decoder		Normal	17	FBS/16bitBinDec.dvg	FBE/16bitBinDec.dvg	0	-10	120	920	fb16bitBinDec		1	0	0x1034		General				-1
-5	system5	en	System	System5	The System function block contains information about the function block engine.  Also included are statically-bound parameters such as those associated with Modbus.	System	30	FBS/system.dvg	FBE/system5.dvg	0	0	120	80	fbSystem		0	0	0x1000		dwM5				-1
128	netStats	en	Utility	Network Stats		Normal	64	FBS/netStats.dvg	FBE/netStats.dvg	0	-10	120	650	fbEnetStats		0	0	0x2000		dwM5	Singleton			-1
129	ainT13	en	I/O	T13 Analog Input		Normal	4	FBS/ainT13.dvg	FBE/ainT13.dvg	0	-60	320	120	fbAinT13		0	0	0x2000		dwM5	Singleton		IO	-1
130	dinT13	en	I/O	T13 Digital Input		Normal	3	FBS/dinT13.dvg	FBE/dinT13.dvg	0	-40	220	100	fbDinT13		0	0	0x2000		dwM5	Singleton		IO	-1
131	aopT13	en	I/O	T13 Analog Output		Normal	3	FBS/aopT13.dvg	FBE/aopT13.dvg	0	-60	300	120	fbAopT13	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
132	ainT14	en	I/O	T14 Analog Input		Normal	4	FBS/ainT14.dvg	FBE/ainT14.dvg	0	-60	320	120	fbAinT14		0	0	0x2000		dwM5	Singleton		IO	-1
133	dinT14	en	I/O	T14 Digital Input		Normal	3	FBS/dinT14.dvg	FBE/dinT14.dvg	0	-40	220	100	fbDinT14		0	0	0x2000		dwM5	Singleton		IO	-1
134	aopT14	en	I/O	T14 Analog Output		Normal	3	FBS/aopT14.dvg	FBE/aopT14.dvg	0	-60	300	120	fbAopT14	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
135	ainT15	en	I/O	T15 Analog Input		Normal	4	FBS/ainT15.dvg	FBE/ainT15.dvg	0	-60	320	120	fbAinT15		0	0	0x2000		dwM5	Singleton		IO	-1
136	dinT15	en	I/O	T15 Digital Input		Normal	3	FBS/dinT15.dvg	FBE/dinT15.dvg	0	-40	220	100	fbDinT15		0	0	0x2000		dwM5	Singleton		IO	-1
137	aopT15	en	I/O	T15 Analog Output		Normal	3	FBS/aopT15.dvg	FBE/aopT15.dvg	0	-60	300	120	fbAopT15	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
138	ainT16	en	I/O	T16 Analog Input		Normal	4	FBS/ainT16.dvg	FBE/ainT16.dvg	0	-60	320	120	fbAinT16		0	0	0x2000		dwM5	Singleton		IO	-1
139	dinT16	en	I/O	T16 Digital Input		Normal	3	FBS/dinT16.dvg	FBE/dinT16.dvg	0	-40	220	100	fbDinT16		0	0	0x2000		dwM5	Singleton		IO	-1
140	aopT16	en	I/O	T16 Analog Output		Normal	3	FBS/aopT16.dvg	FBE/aopT16.dvg	0	-60	300	120	fbAopT16	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
141	ainT19	en	I/O	T19 Analog Input		Normal	4	FBS/ainT19.dvg	FBE/ainT19.dvg	0	-60	320	120	fbAinT19		0	0	0x2000		dwM5	Singleton		IO	-1
142	dinT19	en	I/O	T19 Digital Input		Normal	3	FBS/dinT19.dvg	FBE/dinT19.dvg	0	-40	220	100	fbDinT19		0	0	0x2000		dwM5	Singleton		IO	-1
143	aopT19	en	I/O	T19 Analog Output		Normal	3	FBS/aopT19.dvg	FBE/aopT19.dvg	0	-60	300	120	fbAopT19	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
144	ainT20	en	I/O	T20 Analog Input		Normal	4	FBS/ainT20.dvg	FBE/ainT20.dvg	0	-60	320	120	fbAinT20		0	0	0x2000		dwM5	Singleton		IO	-1
145	dinT20	en	I/O	T20 Digital Input		Normal	3	FBS/dinT20.dvg	FBE/dinT20.dvg	0	-40	220	100	fbDinT20		0	0	0x2000		dwM5	Singleton		IO	-1
146	aopT20	en	I/O	T20 Analog Output		Normal	3	FBS/aopT20.dvg	FBE/aopT20.dvg	0	-60	300	120	fbAopT20	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
147	ainT21	en	I/O	T21 Analog Input		Normal	4	FBS/ainT21.dvg	FBE/ainT21.dvg	0	-60	320	120	fbAinT21		0	0	0x2000		dwM5	Singleton		IO	-1
148	dinT21	en	I/O	T21 Digital Input		Normal	3	FBS/dinT21.dvg	FBE/dinT21.dvg	0	-40	220	100	fbDinT21		0	0	0x2000		dwM5	Singleton		IO	-1
149	aopT21	en	I/O	T21 Analog Output		Normal	3	FBS/aopT21.dvg	FBE/aopT21.dvg	0	-60	300	120	fbAopT21	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
150	ainT22	en	I/O	T22 Analog Input		Normal	4	FBS/ainT22.dvg	FBE/ainT22.dvg	0	-60	320	120	fbAinT22		0	0	0x2000		dwM5	Singleton		IO	-1
151	dinT22	en	I/O	T22 Digital Input		Normal	3	FBS/dinT22.dvg	FBE/dinT22.dvg	0	-40	220	100	fbDinT22		0	0	0x2000		dwM5	Singleton		IO	-1
152	aopT22	en	I/O	T22 Analog Output		Normal	3	FBS/aopT22.dvg	FBE/aopT22.dvg	0	-60	300	120	fbAopT22	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
153	ainT23	en	I/O	T23 Analog Input		Normal	4	FBS/ainT23.dvg	FBE/ainT23.dvg	0	-60	320	120	fbAinT23		0	0	0x2000		dwM5	Singleton		IO	-1
154	dinT23	en	I/O	T23 Digital Input		Normal	3	FBS/dinT23.dvg	FBE/dinT23.dvg	0	-40	220	100	fbDinT23		0	0	0x2000		dwM5	Singleton		IO	-1
155	dopT23	en	I/O	T23 Digital Output		Normal	6	FBS/dopT23.dvg	FBE/dopT23.dvg	0	-110	260	220	fbDopT23	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
156	ainT24	en	I/O	T24 Analog Input		Normal	4	FBS/ainT24.dvg	FBE/ainT24.dvg	0	-60	320	120	fbAinT24		0	0	0x2000		dwM5	Singleton		IO	-1
157	dinT24	en	I/O	T24 Digital Input		Normal	3	FBS/dinT24.dvg	FBE/dinT24.dvg	0	-40	220	100	fbDinT24		0	0	0x2000		dwM5	Singleton		IO	-1
158	dopT24	en	I/O	T24 Digital Output		Normal	6	FBS/dopT24.dvg	FBE/dopT24.dvg	0	-110	260	220	fbDopT24	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
159	ainT27	en	I/O	T27 Analog Input		Normal	4	FBS/ainT27.dvg	FBE/ainT27.dvg	0	-60	320	120	fbAinT27		0	0	0x2000		dwM5	Singleton		IO	-1
160	dinT27	en	I/O	T27 Digital Input		Normal	3	FBS/dinT27.dvg	FBE/dinT27.dvg	0	-40	220	100	fbDinT27		0	0	0x2000		dwM5	Singleton		IO	-1
161	dopT27	en	I/O	T27 Digital Output		Normal	6	FBS/dopT27.dvg	FBE/dopT27.dvg	0	-110	260	220	fbDopT27	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
162	ainT28	en	I/O	T28 Analog Input		Normal	4	FBS/ainT28.dvg	FBE/ainT28.dvg	0	-60	320	120	fbAinT28		0	0	0x2000		dwM5	Singleton		IO	-1
163	dinT28	en	I/O	T28 Digital Input		Normal	3	FBS/dinT28.dvg	FBE/dinT28.dvg	0	-40	220	100	fbDinT28		0	0	0x2000		dwM5	Singleton		IO	-1
164	dopT28	en	I/O	T28 Digital Output		Normal	6	FBS/dopT28.dvg	FBE/dopT28.dvg	0	-110	260	220	fbDopT28	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
165	ainT29	en	I/O	T29 Analog Input		Normal	4	FBS/ainT29.dvg	FBE/ainT29.dvg	0	-60	320	120	fbAinT29		0	0	0x2000		dwM5	Singleton		IO	-1
166	dinT29	en	I/O	T29 Digital Input		Normal	3	FBS/dinT29.dvg	FBE/dinT29.dvg	0	-40	220	100	fbDinT29		0	0	0x2000		dwM5	Singleton		IO	-1
167	dopT29	en	I/O	T29 Digital Output		Normal	6	FBS/dopT29.dvg	FBE/dopT29.dvg	0	-110	260	220	fbDopT29	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
168	ainT30	en	I/O	T30 Analog Input		Normal	4	FBS/ainT30.dvg	FBE/ainT30.dvg	0	-60	320	120	fbAinT30		0	0	0x2000		dwM5	Singleton		IO	-1
169	dinT30	en	I/O	T30 Digital Input		Normal	3	FBS/dinT30.dvg	FBE/dinT30.dvg	0	-40	220	100	fbDinT30		0	0	0x2000		dwM5	Singleton		IO	-1
170	dopT30	en	I/O	T30 Digital Output		Normal	6	FBS/dopT30.dvg	FBE/dopT30.dvg	0	-110	260	220	fbDopT30	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
171	ainT31	en	I/O	T31 Analog Input		Normal	4	FBS/ainT31.dvg	FBE/ainT31.dvg	0	-60	320	120	fbAinT31		0	0	0x2000		dwM5	Singleton		IO	-1
172	dinT31	en	I/O	T31 Digital Input		Normal	3	FBS/dinT31.dvg	FBE/dinT31.dvg	0	-40	220	100	fbDinT31		0	0	0x2000		dwM5	Singleton		IO	-1
173	dopT31	en	I/O	T31 Digital Output		Normal	6	FBS/dopT31.dvg	FBE/dopT31.dvg	0	-110	260	220	fbDopT31	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
174	ainT32	en	I/O	T32 Analog Input		Normal	4	FBS/ainT32.dvg	FBE/ainT32.dvg	0	-60	320	120	fbAinT32		0	0	0x2000		dwM5	Singleton		IO	-1
175	dinT32	en	I/O	T32 Digital Input		Normal	3	FBS/dinT32.dvg	FBE/dinT32.dvg	0	-40	220	100	fbDinT32		0	0	0x2000		dwM5	Singleton		IO	-1
176	dopT32	en	I/O	T32 Digital Output		Normal	6	FBS/dopT32.dvg	FBE/dopT32.dvg	0	-110	260	220	fbDopT32	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
177	sandbox	en	R&D	Sandbox		Normal	12	FBS/sandbox.dvg	FBE/sandbox.dvg	0	0	120	60	fbSandbox		14	0	0x2000		dwM5				-1
179	enc1p2	en	I/O	ENC1 Position2	Incompatible with ENC1 Position1, ENC Speed Lock  and Registration function blocks.	Normal	15	FBS/enc1p2.dvg	FBE/enc1p2.dvg	0	-80	640	340	fbENC1p2	InitCode	4	0	0x1035		dwM4	Singleton	ENC1		-1
180	enc2p2	en	I/O	ENC2 Position2	Incompatible with ENC2 Position1, ENC Speed Lock  and Registration function blocks.	Normal	15	FBS/enc2p2.dvg	FBE/enc2p2.dvg	0	-80	640	340	fbENC2p2	InitCode	4	0	0x1035		dwM4	Singleton	ENC2		-1
178	calibration	en	Utility	Calibration		Normal	37	FBS/calibration.dvg	FBE/calibration.dvg	0	0	60	360	fbCalibration	InitCode	0	0	0x2000		dwM5	Singleton		IO	-1
181	minMaxValue	en	Utility	Min/Max Recorder		Normal	4	FBS/minMaxValue.dvg	FBE/minMaxValue.dvg	0	-40	120	100	fbMinMaxValue		1	0	0x2000		dwM5				-1
182	waveform	en	Utility	Waveform Generator	Note that the output timing accuracy is limited  by the timebase.	Normal	7	FBS/waveform.dvg	FBE/waveform.dvg	0	-80	340	160	fbWaveform		1	0	0x2000		dwM5				-1
183	fastOscillator	en	Timers	Fast Oscillator		Normal	3	FBS/fastOscillator.dvg	FBE/fastOscillator.dvg	-40	-10	120	80	fbFastOscillator		1	0	0x2000		dwM5				-1
184	random	en	Utility	Random	Produces a pseudo-random output with a new value every timebase cycle.	Normal	3	FBS/random.dvg	FBE/random.dvg	100	-60	240	120	fbRandom		1	0	0x2000		dwM5				-1
185	pulseTimer	en	Timers	Pulse Timer	Note that the output timing accuracy is limited  by the timebase.	Normal	8	FBS/pulseTimer.dvg	FBE/pulseTimer.dvg	0	-20	200	200	fbPulseTimer		1	0	0x2000		dwM5				-1
186	realTime	en	Timers	Real Time	Daylight Savings Time is not currently supported.	Normal	11	FBS/realTime.dvg	FBE/realTime.dvg	-10	-10	100	160	fbRealTime		1	0	0x2000		dwM5				-1
187	hoursCounter	en	Time Counters	Hours Counter		Normal	6	FBS/hoursCounter.dvg	FBE/hoursCounter.dvg	-60	-50	180	180	fbHoursCounter		1	0	0x2001		dwM5				-1
188	dHoursCounter	en	Time Counters	DeciHours Counter		Normal	6	FBS/dHoursCounter.dvg	FBE/dHoursCounter.dvg	-60	-50	180	180	fbDeciHoursCounter		1	0	0x2001		dwM5				-1
189	minsCounter	en	Time Counters	Minutes Counter		Normal	6	FBS/minsCounter.dvg	FBE/minsCounter.dvg	-60	-50	180	180	fbMinsCounter		1	0	0x2001		dwM5				-1
190	torqueComp2	en	Winder	Torque Compensator		Normal	31	FBS/torqueComp2.dvg	FBE/torqueComp2.dvg	-20	-180	860	320	fbTorqueComp2	InitCode	2	0	0x2001		dwM5				-1
191	parmBlockBool	en	Utility	Boolean Parameter Block	Simply a block of four boolean parameters.	Normal	4	FBS/parmBlock.dvg	FBE/parmBlockBool.dvg	-20	0	190	30	fbParmBlockBool		0	0	0x2001		dwM5				-1
192	enc1s5	en	Encoder	ENC1 Speed		Normal	10	FBS/enc1s5.dvg	FBE/enc1s5.dvg	0	-40	370	260	fbENC1s5		0	0	0x2003		dwM5	Singleton		Encoder	-1
193	enc2s5	en	Encoder	ENC2 Speed		Normal	10	FBS/enc2s5.dvg	FBE/enc2s5.dvg	0	-40	370	260	fbENC2s5		0	0	0x2004		dwM5	Singleton		DualEncoder	-1
194	encSpeed5	en	Encoder	ENC Speed Lock		Normal	18	FBS/encSpeed5.dvg	FBE/encSpeed5.dvg	0	-40	850	520	fbENCspeed5		4	0	0x2004		dwM5	Singleton		DualEncoder	-1
195	commsWatchdog	en	Utility	Comms Watchdog	To use this function block, write to the input parameter.  The timer is reset whenever a non-zero value is received.  If the remote device fails or is powered down or if the network fails, the timer will timeout and the output will go true. 	Normal	6	FBS/watchdog.dvg	FBE/watchdog.dvg	-40	-10	140	80	fbWatchdog	InitCode	0	0	0x2005		dwM5			CommsServer	-1
196	encRegistration5	en	Encoder	ENC Registration		Normal	15	FBS/encRegistration5.dvg	FBE/encRegistration5.dvg	-50	-50	950	600	fbENCregistration5		14	0	0x2006		dwM5	Singleton		DualEncoder	-1
197	encPhase5	en	Encoder	ENC Phase Lock		Normal	25	FBS/encPhase5.dvg	FBE/encPhase5.dvg	0	-40	850	520	fbENCphase5	InitCode	4	0	0x2006		dwM5	Singleton		DualEncoder	-1
198	trim	en	Control	Trim		Normal	6	FBS/trim.dvg	FBE/trim.dvg	0	-20	520	180	fbTrim		1	0	0x2006		dwM5				-1
199	dinT3	en	I/O	T3 Digital Input		Normal	3	FBS/dinT3.dvg	FBE/dinT3.dvg	0	-40	220	100	fbDinT3		0	0	0x2006		dwM5	Singleton		DigitalInputs	-1
200	dinT4	en	I/O	T4 Digital Input		Normal	3	FBS/dinT4.dvg	FBE/dinT4.dvg	0	-40	220	100	fbDinT4		0	0	0x2006		dwM5	Singleton		DigitalInputs	-1
201	dinT5	en	I/O	T5 Digital Input		Normal	3	FBS/dinT5.dvg	FBE/dinT5.dvg	0	-40	220	100	fbDinT5		0	0	0x2006		dwM5	Singleton		DigitalInputs	-1
202	dinT6	en	I/O	T6 Digital Input		Normal	3	FBS/dinT6.dvg	FBE/dinT6.dvg	0	-40	220	100	fbDinT6		0	0	0x2006		dwM5	Singleton		DigitalInputs	-1
203	dinT7	en	I/O	T7 Digital Input		Normal	3	FBS/dinT7.dvg	FBE/dinT7.dvg	0	-40	220	100	fbDinT7		0	0	0x2006		dwM5	Singleton		DigitalInputs	-1
204	dinT8	en	I/O	T8 Digital Input		Normal	3	FBS/dinT8.dvg	FBE/dinT8.dvg	0	-40	220	100	fbDinT8		0	0	0x2006		dwM5	Singleton		DigitalInputs	-1
205	ledControl	en	I/O	LED Control		Normal	4	FBS/ledControl.dvg	FBE/ledControl.dvg	-70	-50	210	180	fbLedControl		0	0	0x2006		dwM5	Singleton		DigitalInputsXDIOFreqIO	-1
206	modbusPort5	en	ModbusRTU Master	Comms Port	Each Modbus RTU Master will have one Comms Port function block which provides global serial port configuration, control, and monitoring.	Normal	10	FBS/modbusPort5.dvg	FBE/modbusPort5.dvg	-30	0	270	80	fbModbusPort5	InitCode	0	0	0x2007		dwM5	Singleton		ModbusMaster	-1
207	modbusRegSigned5	en	ModbusRTU Master	Modbus Data INT16	When the data obtained from the slave device is an unsigned 16-bit integer (Range = 0 to 65535), the <b>Modbus Data INT16</b> should be used.	Normal	7	FBS/modbusReg5.dvg	FBE/modbusRegS5.dvg	-30	0	180	60	fbModbusReg5	InitCode	0	0	0x2007		dwM5			ModbusMaster	-1
208	modbusRegUnsigned5	en	ModbusRTU Master	Modbus Data UINT16	When the data obtained from the slave device is an unsigned 16-bit integer (Range= 0 to 65535), the <b>Modbus Data UINT16</b> should be used.	Normal	7	FBS/modbusReg5.dvg	FBE/modbusRegU5.dvg	-30	0	180	60	fbModbusReg5	InitCode	0	0	0x2007		dwM5			ModbusMaster	-1
209	modbusRegBoolean5	en	ModbusRTU Master	Modbus Data BOOLEAN	When the data obtained from the slave device is a boolean (Range= 0 to 1), the <b>Modbus Data BOOLEAN</b> should be used.	Normal	7	FBS/modbusReg5.dvg	FBE/modbusRegB5.dvg	-30	0	180	60	fbModbusReg5	InitCode	0	0	0x2007		dwM5			ModbusMaster	-1
210	bitwiseMatch	en	Logic	Bitwise Match		Normal	3	FBS/bitwiseMatch.dvg	FBE/bitwiseMatch.dvg	0	0	90	60	fbBitwiseMatch		1	0	0x2006		dwM5				-1
211	and4	en	Logic Gates	AND4	The output is the logical AND of the four logic inputs.	Normal	5	FBS/and4.dvg	FBE/and4.dvg	0	0	90	180	fbAnd4		1	0	0x2007		dwM5				-1
212	or4	en	Logic Gates	OR4	The output is the logical OR of the four logic inputs.	Normal	5	FBS/or4.dvg	FBE/or4.dvg	0	0	90	180	fbOr4		1	0	0x2007		dwM5				-1
213	nand4	en	Logic Gates	NAND4	The output is the logical NAND of the four logic inputs.	Normal	5	FBS/nand4.dvg	FBE/nand4.dvg	0	0	90	180	fbNand4		1	0	0x2007		dwM5				-1
214	nor4	en	Logic Gates	NOR4	The output is the logical NOR of the four logic inputs.	Normal	5	FBS/nor4.dvg	FBE/nor4.dvg	0	0	90	180	fbNor4		1	0	0x2007		dwM5				-1
215	trLatch	en	Latches	T Latch with Reset		Normal	5	FBS/trLatch.dvg	FBE/trLatch.dvg	0	-20	100	140	fbTRLatch		1	0	0x2007		dwM5				-1
216	modbusODP5	en	ModbusRTU Master	Optidrive Plus		Normal	63	FBS/modbusOptidrive5.dvg	FBE/modbusOptidrive5.dvg	-40	0	280	280	fbModbusOptidrive5	InitCode	0	0	0x2007		dwM5			ModbusMaster	-1
217	modbusOVTC5	en	ModbusRTU Master	Optidrive VTC		Normal	63	FBS/modbusOptidrive5.dvg	FBE/modbusOptidrive5.dvg	-40	0	280	280	fbModbusOptidrive5	InitCode	0	0	0x2007		dwM5			ModbusMaster	-1
218	enc1p5	en	Encoder	ENC1 Linear Position	This function block is used to count pulses on the appropriate encoder channel. The count isinternally stored as a 64-bit number and increments with each transition of each encoder channel(i.e., the actual count for one revolution of the encoder will be four times the pulses perrevolution of the encoder).	Normal	14	FBS/enc1p5.dvg	FBE/enc1p5.dvg	0	-50	390	280	fbENC1p5	InitCode	4	0	0x2008		dwM5	Singleton		Encoder	-1
219	enc2p5	en	Encoder	ENC2 Linear Position	This function block is used to count pulses on the appropriate encoder channel. The count isinternally stored as a 64-bit number and increments with each transition of each encoder channel(i.e., the actual count for one revolution of the encoder will be four times the pulses perrevolution of the encoder).	Normal	14	FBS/enc2p5.dvg	FBE/enc2p5.dvg	0	-50	390	280	fbENC2p5	InitCode	4	0	0x2008		dwM5	Singleton		DualEncoder	-1
220	encPosPoint	en	Encoder	ENC Position Point	The <b>ENC Position Point</b> function block is used to specify a point of travel to compare withthe 64-bit actual position count generated by the <b>ENC# Position</b> function block.<p>The <b>ENC Position Point</b> function block <b>MUST</b> be associated with an <b>ENC#   Position</b> function block.</p>	Normal	7	FBS/encPosPoint.dvg	FBE/encPosPoint.dvg	120	10	340	230	fbENCposPoint		4	0	0x2008		dwM5			Encoder	-1
221	encPosMonitor	en	Encoder	ENC Position Monitor	<p>The <b>ENC Position Monitor</b> function block scales the current 64-bit value in the associated block to a 16-bit analog value which may be used with other signal processing function blocks to implement the desired position control algorithm. The <b><em>Encoder Revs</em></b> and <b><em>Scaler</em></b> parameters are combined to create a 32-bit scaling divisor.</p><p>After scaling, the <b><em>Output</em></b> of this function block may used with other signal processing function blocks to implement the desired position control algorithm. If <b><em>Encoder Revs</em></b> and <b><em>Scaler</em></b> are left at their default values of 1, the <b><em>Output</em></b> will be 100.00% for one encoder revolution.</p><p>The <b>ENC Position Monitor</b> function block <b><em>MUST</em></b> be associated with a position-type function block. If not, an <em>Association Warning</em> will be displayed by the <b>System</b> function block.</p>	Normal	4	FBS/encPosMonitor.dvg	FBE/encPosMonitor.dvg	-60	40	280	280	fbENCposMonitor		4	0	0x2008		dwM5			Encoder	-1
222	mbmStats	en	ModbusRTU Master	Modbus Master Stats		Normal	32	FBS/mbmStats.dvg	FBE/mbmStats.dvg	0	-10	120	340	fbMbmStats	InitCode	0	0	0x2011		dwM5	Singleton		ModbusMaster	-1
223	emailNotify	en	Utility	E-Mail Notification	Sends an e-mail when the Send parameter sees a positive-going transition.  For this to work, the SMTP Server address must be set for the device.  The Router IP Address and Subnet Mask typically must also be set.  The subject of the e-mail will be "Notificaton".  The device will make a best effort to send the e-mail; regular testing is recommended.	Normal	4	FBS/emailNotify.dvg	FBE/emailNotify.dvg	0	-40	180	80	fbEmailNotify		0	0	0x2012		dwM5				-1
224	stats	en	R&D	Stats		Normal	14	FBS/stats.dvg	FBE/stats.dvg	0	0	120	90	fbStats		14	0	0x2013		dwM5				-1
225	mbmCommsMonitor	en	ModbusRTU Master	Comms Monitor		Normal	2	FBS/mbmCommsMonitor.dvg	FBE/mbmCommsMonitor.dvg	-10	-30	120	60	fbMbmCommsMonitor		0	0	0x2013		dwM5			ModbusMaster	-1
226	uiSetpoint	en	savvyPanel	Setpoint		Normal	3	FBS/uiSetpoint.dvg	FBE/uiSetpoint.dvg	40	0	70	120	fbUIsetpoint		15	0	0x2013		dwM5				-1
227	uiLatch	en	savvyPanel	Latch		Normal	2	FBS/uiLatch.dvg	FBE/uiLatch.dvg	0	-50	60	160	fbUIlatch		15	0	0x2013		dwM5				-1
228	parmBlockEnum	en	Utility	Enumerated Parameter Block	Simply a block of four enumerated parameters.	Normal	4	FBS/parmBlock.dvg	FBE/parmBlockEnum.dvg	-20	0	190	30	fbParmBlockEnum		0	0	0x2014		dwM5				-1
229	ioReset	en	I/O	Reset		Normal	2	FBS/ioReset.dvg	FBE/ioReset.dvg	-20	-30	150	60	fbIOReset		0	0	0x2014		dwM5			IO	-1
230	parmBlockHex	en	Utility	Hexadecimal Parameter Block	Simply a block of four hexadecimal parameters.	Normal	4	FBS/parmBlock.dvg	FBE/parmBlockHex.dvg	-20	0	190	30	fbParmBlockHex		0	0	0x2014		dwM5				-1
231	enc1p5c	en	Encoder	ENC1 Cyclic Position	<p>This function block is used on cyclic positioning applications where there is a requirement to control movement between equally spaced locations on a fixed path. Positioning is determined using an <b><em>Internal Count</em></b> value accumulated from pulses on the associated encoder channel. At the end of the cycle (as determined by the <b><em>Cycle Length</em></b> or an external trigger), the accumulated count is reset without the loss of any encoder pulses. The following graphic shows a typical cyclic positioning scheme with important control terms highlighted:</p><center><img src="en_param_hlp_cyclic_app.png" alt="cyclic_app" width="575" height="306" /></center><p>Both the <b><em>Internal Count</em></b> and <b><em>Cycle Length</em></b> are internally stored as a 64-bit numbers which increment (or decrement) with each transition of the encoder channel depending on the direction of rotation (i.e., the actual count for one revolution of the encoder will be four times the <b><em>Pulses Per Revolution</em></b> of the encoder).</p>	Normal	17	FBS/enc1p5c.dvg	FBE/enc1p5c.dvg	0	-50	390	280	fbENC1p5c	InitCode	4	0	0x2015		dwM5	Singleton		Encoder	-1
232	enc2p5c	en	Encoder	ENC2 Cyclic Position	<p>This function block is used on cyclic positioning applications where there is a requirement to control movement between equally spaced locations on a fixed path. Positioning is determined using an <b><em>Internal Count</em></b> value accumulated from pulses on the associated encoder channel. At the end of the cycle (as determined by the <b><em>Cycle Length</em></b> or an external trigger), the accumulated count is reset without the loss of any encoder pulses. The following graphic shows a typical cyclic positioning scheme with important control terms highlighted:</p><center><img src="en_param_hlp_cyclic_app.png" alt="cyclic_app" width="575" height="306" /></center><p>Both the <b><em>Internal Count</em></b> and <b><em>Cycle Length</em></b> are internally stored as a 64-bit numbers which increment (or decrement) with each transition of the encoder channel depending on the direction of rotation (i.e., the actual count for one revolution of the encoder will be four times the <b><em>Pulses Per Revolution</em></b> of the encoder).</p>	Normal	17	FBS/enc2p5c.dvg	FBE/enc2p5c.dvg	0	-50	390	280	fbENC2p5c	InitCode	4	0	0x2015		dwM5	Singleton		DualEncoder	-1
233	encStatus	en	Encoder	ENC Status Monitor	<p>This function block gives the user a detailed summary of the status of one (or both) of the encoder(s). Included in the encoder status are:</p><ul><li>Communication Status</li><li>Direction Indicator</li><li>Separate Channel <b>A</b> &amp <b>B</b> Status (<b>Z</b> on appropriate options)</li><li>Separate Channel <b>A</b> &amp <b>B</b> Alarms (<b>Z</b> on appropriate options)</li></ul>	Normal	19	FBS/encStatus.dvg	FBE/encStatus.dvg	-10	-10	120	190	fbENCstatus		0	0	0x2015		dwM5	Singleton		Encoder	-1
234	encPosIndexed	en	Encoder	ENC Indexed Position	<p>This function block is used to both calibrate the index positions of the cyclic position application and to select the <em>Desired Position</em> in the cycle when moving between index positions. The calibration portion of the block arithmetically calculates the <b><em>Index Length</em></b> based on the <em>Current Position</em> and the <b><em>Setup Index</em></b>. The calculation is performed as follows:</p><center><b><em>Index Length</em> = ( <em>Current Position</em> - <em>Reference Position</em> ) &divide <em>Setup Index</em></b></center><p> If an <b>ENC Position Point</b> function block is the associated <b><em>ENC Reference Position</em></b> selection, the value for the <em>Reference Position</em> is the stored 64-bit <b><em>Position Point</em></b> value which, in turn, is referenced to the <em>Cycle Zero</em> position. If an <b>ENC# Cyclic Position</b> function block is the associated <b><em>ENC Reference Position</em></b> selection, the <em>Reference Position</em> is also the <em>Cycle Zero</em>.</p><p>Using the <b><em>Index Length</em></b>, the position selection portion uses the <b><em>Index</em></b> value to calculate a <em>Desired Position</em>. The <em>Desired Position</em> value (with the appropriate <em>Reference Position</em> offset ) is then compared to the <em>Current Position</em> generating a <b><em>Position Error</em></b> output. The output may then be used for control purposes. A <b><em>Position Error</em></b> value of 0.00% indicates you are in the <em>Desired Position</em>.</p><center><img src="en_param_hlp_cyclic_index.png" alt="cyclic_index" width="575" height="306" /></center><p>The <b><em>Index Length</em></b> may be set in two ways:</p><ul><li>Manually, by clicking on the <b><em>Index Length</em></b> button and setting the 64-bit <b><em>Index Length</em></b> using the four 16-bit hexadecimal values <b><em>Index Length 3</em></b>, <b><em>Index Length 2</em></b>, <b><em>Index Length 1</em></b>, <b><em>Index Length 0</em></b>.<br/><br/></li><li>Empirically, by manually moving to one of the index positions. Then, changing the <b><em>Setup Index</em></b> to the associated position's <b><em>Index</em></b> value. And finally, momentarily activating the <b><em>Set Index Length</em></b> which stores the calculated 64-bit <b><em>Index Length</em></b>.</li></ul><p>After calibration, selecting the <em>Desired Position</em> is achieved by simply setting the <b><em>Index</em></b> to the appropriate value. In this example, setting the <b><em>Index</em></b> to Position <b>5</b>. The <font style="color:#ff00ff">magenta</font> path above represents the 64-bit count associated with the <em>Desired Position</em> and is  calculated as follows:</p><center><em>Desired Position</em> <b>= ( 5 * <em>Index Length</em> ) + </b><em>Reference Position</em></center><p>Resulting in a <b><em>Position Error</em></b> calculated as follows:</p><center><b><em>Position Error %</em> = ( </b><em>Desired Position</em> <b>-</b> <em>Current Position</em><b> ) * 100</b></center>	Normal	9	FBS/encPosIndexed.dvg	FBE/encPosIndexed.dvg	-60	-40	480	430	fbENCposIndexed		4	0	0x2015		dwM5			Encoder	-1
235	encCyclicErrConv	en	Encoder	ENC Cyclic Error Converter	<p>For a typical reversing cyclic positioning application, at any point in the cycle, your <em>Desired Position</em> is at most +50.00% (moving forward) or -50.00% (moving backwards) of the <b><em>Cycle Length</em></b> away from your <em>Current Position</em>. Therefore, when using the positioning function blocks, the <b><em>Output</em></b> yields a position error between +/-50.00%.</p><p>This function block is intended for non-reversing cyclic positioning applications. Positive values (0.00% to +50.00%) are passed through unchanged. Negative values (-49.99% to -0.01%) are translated to positive values (50.01% to 99.99%). The negative values are translated to positive values the with the same physical position so the entire cycle may be smoothly traversed with only positive control values.</p><center><img src="en_param_hlp_cyclic_error.png" alt="cyclic_err" width="575" height="306" /></center><center><b><em>Input</em></b> = <b>-16.67%</b> translates to <b><em>Output</em></b> = <b>+83.33%</b></center>	Normal	2	FBS/encCyclicErrConv.dvg	FBE/encCyclicErrConv.dvg	0	-20	120	40	fbENCcyclicErrConv		4	0	0x2015		dwM5				-1
236	encCCmanual	en	Encoder	ENC Cycle Calibrator Basic	<p>This function block may be used with the <b>Cyclic Position</b> function block to set the <em>Zero</em> position for the <b><em>Internal Count</em></b> and to empirically set the <b><em>Cycle Length</em></b>. The <em>Set Cycle Zero</em> and the <em>Set Cycle Length</em> functions may be separately enabled to control the behavior.</p><center><img src="en_param_hlp_cyclic_app.png" alt="cyclic_app" width="575" height="306" /></center><p>Usually, this function block is only used during initial commissioning of a cyclic positioning application; however, should the relationship between the encoder and the machine indices change in any way (e.g., the encoder being physically relocated), re-setting the <em>Zero</em> and <b><em>Cycle Length</em></b> will likely be required.</p><p>If desired, an external sensor such as a photo-eye or a proximity switch may be mounted on the machine and connected to the <b><em>Set</em></b> input to reset the <em>Zero</em> position every cycle to prevent long-term accumulated error due to mechanical variations.</p><p>The normal commissioning procedure would be as follows:</p><ol><li><em>Enable</em> both the <b><em>Enable</em></b> and <b><em>Length Enable</em></b> parameters.</li><li>Move the machine to the desired <em>Zero</em> Position (the location of the photo-eye or proximity switch. Ensure you mark this position on both the moving and stationary portions of the machine so it may be easily located when setting the <b><em>Cycle Length</em></b>.</li><li>Momentarily change the <b><em>Set</em></b> input to <em>True</em> to reset the <b><em>Internal Count</em></b>.</li><li>Move the machine through one entire cycle and position the machine so the two positioning marks re-align.</li><li>Re-assert the <b><em>Set</em></b> input to <em>True</em> to move the <b><em>Internal Count</em></b> into the <b><em>Cycle Count</em></b> register.</li><li><em>Disable</em> the <b><em>Length Enable</em></b> parameter.</li><li>If there is no photo-eye or a proximity switch, <em>Disable</em> the <b><em>Length Enable</em></b> parameter.</li></ol>	Normal	4	FBS/encCCmanual.dvg	FBE/encCCmanual.dvg	0	-20	450	140	fbENCccManual		4	0	0x2015		dwM5				-1
237	encCCauto1	en	Encoder	ENC Cycle Calibrator DIN1	<p>This function block may be used with the <b>Cyclic Position</b> function block to set the <em>Cycle Zero</em> position for the <b><em>Internal Count</em></b> and to empirically set the <b><em>Cycle Length</em></b>. The <em>Set Cycle Zero</em> and the <em>Set Cycle Length</em> functions may be separately <em>Enabled</em> to control their behavior.</p><center><img src="en_param_hlp_cyclic_app.png" alt="cyclic_app" width="575" height="306" /></center><p>Typically, an external sensor such as a photo-eye or a proximity switch is mounted on the machine and connected to the <b>DIN1</b> input (<b>Terminal E4</b> resetting the <em>Cycle Zero</em> position every cycle prevents any long-term accumulated error. Mechanical switches are NOT recommended; however, should one be used, a debouncing circuit may be required to ensure reliable operation.</p><p>Usually, the <b><em>Length Enable</em></b> feature is only used during initial commissioning of the application; however, should the relationship between the encoder and the machine indices change in any way (e.g., the encoder being physically relocated), resetting both the <em>Zero</em> position and <b><em>Cycle Length</em></b> will likely be required.</p><p>The normal commissioning procedure would be as follows:</p><ol><li>Decide in which direction you would like to move the machine for calibration.<ul><li>In the <b>forward</b> direction, the count will be <b>increasing</b>.</li><li>In the <b>reverse</b> direction, the count will be <b>decreasing</b>.</li></ul><br/></li><li>To prepare for the calibration, move the sensor target (mounted on the machine) to the side opposite selected calibration direction. If properly positioned, the target will pass the sensor shortly after you initiate motion.<br/><br/></li><li><em>Enable</em> both the <b><em>Enable</em></b> and <b><em>Length Enable</em></b> parameters.<br/><br/></li><li>Move the target on the machine past the the external sensor connected to <b>DIN1</b>. On the first pass, the <b><em>Internal Count</em></b> is reset.<br/><br/></li><li>Continue to move the machine through one entire cycle (<b>in the same direction!</b>) When the target again passes the external sensor, the <b><em>Cycle Length</em></b> will be set.<br/><br/></li><li>At this point the initial calibration is complete.<br/></li><li><em>Disable</em> the <b><em>Length Enable</em></b> parameter and check the value of the <b><em>Cycle Length</em></b> in the associated <b><em>ENC# Cyclic Position</em></b> function block versus the expected value.<br/><br/></li><li>In most applications, leave the <b><em>Enable</em></b> parameter <em>Enabled</em> so the <em>Cycle Zero</em> is reset every cycle. If desired, you may <em>Enable</em> the <b><em>Window Enable</em></b> and set the <b><em>Window Width</em></b> to an appropriate value to restrict when the <b>DIN1</b> input is acted upon.</li></ol>	Normal	7	FBS/encCCauto1.dvg	FBE/encCCauto1.dvg	0	-80	470	210	fbENCccAuto1		4	0	0x2015		dwM5			DualEncoder	-1
238	encCCauto2	en	Encoder	ENC Cycle Calibrator DIN2	<p>This function block may be used with the <b>Cyclic Position</b> function block to set the <em>Cycle Zero</em> position for the <b><em>Internal Count</em></b> and to empirically set the <b><em>Cycle Length</em></b>. The <em>Set Cycle Zero</em> and the <em>Set Cycle Length</em> functions may be separately <em>Enabled</em> to control their behavior.</p><center><img src="en_param_hlp_cyclic_app.png" alt="cyclic_app" width="575" height="306" /></center><p>Typically, an external sensor such as a photo-eye or a proximity switch is mounted on the machine and connected to the <b>DIN2</b> input (<b>Terminal E5</b> resetting the <em>Cycle Zero</em> position every cycle prevents any long-term accumulated error. Mechanical switches are NOT recommended; however, should one be used, a debouncing circuit may be required to ensure reliable operation.</p><p>Usually, the <b><em>Length Enable</em></b> feature is only used during initial commissioning of the application; however, should the relationship between the encoder and the machine indices change in any way (e.g., the encoder being physically relocated), resetting both the <em>Zero</em> position and <b><em>Cycle Length</em></b> will likely be required.</p><p>The normal commissioning procedure would be as follows:</p><ol><li>Decide in which direction you would like to move the machine for calibration.<ul><li>In the <b>forward</b> direction, the count will be <b>increasing</b>.</li><li>In the <b>reverse</b> direction, the count will be <b>decreasing</b>.</li></ul><br/></li><li>To prepare for the calibration, move the sensor target (mounted on the machine) to the side opposite selected calibration direction. If properly positioned, the target will pass the sensor shortly after you initiate motion.<br/><br/></li><li><em>Enable</em> both the <b><em>Enable</em></b> and <b><em>Length Enable</em></b> parameters.<br/><br/></li><li>Move the target on the machine past the the external sensor connected to <b>DIN2</b>. On the first pass, the <b><em>Internal Count</em></b> is reset.<br/><br/></li><li>Continue to move the machine through one entire cycle (<b>in the same direction!</b>) When the target again passes the external sensor, the <b><em>Cycle Length</em></b> will be set.<br/><br/></li><li>At this point the initial calibration is complete.<br/><br/></li><li><em>Disable</em> the <b><em>Length Enable</em></b> parameter and check the value of the <b><em>Cycle Length</em></b> in the associated <b><em>ENC# Cyclic Position</em></b> function block versus the expected value.<br/><br/></li><li>In most applications, leave the <b><em>Enable</em></b> parameter <em>Enabled</em> so the <em>Cycle Zero</em> is reset every cycle. If desired, you may <em>Enable</em> the <b><em>Window Enable</em></b> and set the <b><em>Window Width</em></b> to an appropriate value to restrict when the <b>DIN2</b> input is acted upon.</li></ol>	Normal	7	FBS/encCCauto2.dvg	FBE/encCCauto2.dvg	0	-80	470	210	fbENCccAuto2		4	0	0x2015		dwM5			DualEncoder	-1
239	uiMonitor	en	savvyPanel	Monitor		Normal	2	FBS/uiMonitor.dvg	FBE/uiMonitor.dvg	10	40	70	80	fbUImonitor		15	0	0x2016		dwM5				-1
240	uiCombo	en	savvyPanel	Setpoint & Monitor		Normal	4	FBS/uiCombo.dvg	FBE/uiCombo.dvg	-50	0	160	120	fbUIcombo		15	0	0x2016		dwM5				-1
241	encCycPosIndexed	en	Encoder	ENC Indexed Cyclic Position	<p>This function block is used to both calibrate the index positions of cyclic position application and to select the <em>Desired Position</em> in the cycle when moving between index positions. The calibration portion arithmetically calculates the <b><em>Index Length</em></b> from the <b><em>Cycle Length</em></b> of the associated <b>ENC Reference Position</b> function block.</p><p>From this <b><em>Index Length</em></b>, the position selection portion uses the <b><em>Index</em></b> value to calculate a <em>Desired Position</em>. The <em>Desired Position</em> value (with the appropriate offset) is then compared to the <em>Current Position</em> generating a <b><em>Position Error</em></b> output. The output may then be used for control purposes.</p><p>A <b><em>Position Error</em></b> value of 0.00% indicates you are in the <em>Desired Position</em>.</p><center><img src="en_param_hlp_cyclic_index.png" alt="cyclic_index" width="575" height="306" /></center><p>In the illustration above, there are <b>18</b> positions in the cycle and in this case the <em>Desired Position</em> is Position <b>5</b>. The <font style="color:#ff00ff">magenta</font> path above represents the 64-bit count associated with the <em>Desired Position</em> and is calculated as follows:</p><center><b><em>Desired Position</em> = ( ( 5 * ( Cycle Length / 18 ) ) + <em>Reference Position</em> )</b></center><p> If the <b><em>ENC Reference Position</em></b> is associated with an <b>ENC Position Point</b>, the <em>Reference Position</em> is a 64-bit value determined by the <b>Position Point</b>'s offset from the <em>Cycle Zero</em> position. If the <b><em>ENC Reference Position</em></b> is directly associated with an <b>ENC# Cyclic Position</b> function block, the <em>Reference Position</em> is also the <em>Cycle Zero</em>.</p><p>The <b><em>Position Error</em></b> would is calculated as follows:</p><center><b><em>Position Error %</em> = ( <em>Desired Position</em> - <em>Current Position</em> ) * 100</b></center><p><b>Design Note:</b></p><p>If the <b><em>ENC Reference Position</em></b> is associated with an <b>ENC Position Point</b> function block (in lieu of directly referencing an <b>ENC# Cyclic Position</b> function block), the <em>Index Origin</em> may be easily moved without changing the <b><em>Cycle Length</em></b> and indirectly the <em>Index Length</em>. This scheme allows the photo-eye or proximity switch being used as the calibration input to be relocated without having to recommission the entire system. Only the associated <b>ENC Position Point</b> function block needs to be re-calibrated after movement of the input sensor.</p>	Normal	4	FBS/encCycPosIndexed.dvg	FBE/encCycPosIndexed.dvg	-60	60	380	330	fbENCcycPosIndexed		4	0	0x2016		dwM5			Encoder	-1
242	uiDualMonitor	en	savvyPanel	Dual Monitor		Normal	3	FBS/uiDualMonitor.dvg	FBE/uiDualMonitor.dvg	0	-20	90	140	fbUIdualMonitor		15	0	0x2016		dwM5				-1
243	mooreMachine	en	Logic	State Machine 16-16	A Moore finite state machine with 16 inputs, 16 outputs, and up to 256 states.	Normal	37	FBS/mooreMachine.dvg	FBE/mooreMachine.dvg	0	-20	200	980	fbMooreMachine	InitCode	1	0	0x2016		dwM5				36
244	mooreMachine8	en	Logic	State Machine 8-8	A Moore finite state machine with 8 inputs, 8 outputs, and up to 256 states.	Normal	21	FBS/mooreMachine8.dvg	FBE/mooreMachine8.dvg	0	-20	200	500	fbMooreMachine8	InitCode	1	0	0x2016		dwM5				20
245	calculator	en	Math	Calculator	Programmable calculator	Normal	15	FBS/calculator.dvg	FBE/calculator.dvg	0	-20	200	460	fbCalculator		3	0	0x2016		dwM5				14
246	comboLogic	en	Logic	Combinational 6-4		Normal	11	FBS/comboLogic.dvg	FBE/comboLogic.dvg	0	-20	200	350	fbComboLogic		1	0	0x2016		dwM5				10
247	sunPosition	en	Solar	Sun Position		Normal	6	FBS/sunPosition.dvg	FBE/sunPosition.dvg	0	-20	200	160	fbSpa	InitCode	6	0	0x2017		dwM5	Singleton			-1
248	uiSrLatch	en	savvyPanel	SR Latch		Normal	3	FBS/uiSrLatch.dvg	FBE/uiSrLatch.dvg	0	-20	110	100	fbUiSrLatch		15	0	0x2017		dwM5				-1
249	demux16	en	Logic	16-Way Demultiplexer		Normal	17	FBS/demux16.dvg	FBE/demux16.dvg	0	-10	120	920	fbDemux16		1	0	0x2017		dwM5				-1
250	demux8	en	Logic	8-Way Demultiplexer		Normal	9	FBS/demux8.dvg	FBE/demux8.dvg	0	-10	120	460	fbDemux8		1	0	0x2017		dwM5				-1
251	xdio1	en	I/O	XDIO M00		Normal	2	FBS/xdio1.dvg	FBE/xdio1.dvg	0	-40	110	80	fbXdio1		0	0	0x2017		dwM5	Singleton		XDIO	-1
252	xdio2	en	I/O	XDIO M01		Normal	2	FBS/xdio2.dvg	FBE/xdio2.dvg	0	-40	110	80	fbXdio2		0	0	0x2017		dwM5	Singleton		XDIO	-1
253	xdio3	en	I/O	XDIO M02		Normal	2	FBS/xdio3.dvg	FBE/xdio3.dvg	0	-40	110	80	fbXdio3		0	0	0x2017		dwM5	Singleton		XDIO	-1
254	xdio4	en	I/O	XDIO M03		Normal	2	FBS/xdio4.dvg	FBE/xdio4.dvg	0	-40	110	80	fbXdio4		0	0	0x2017		dwM5	Singleton		XDIO	-1
255	xdio5	en	I/O	XDIO M04		Normal	2	FBS/xdio5.dvg	FBE/xdio5.dvg	0	-40	110	80	fbXdio5		0	0	0x2017		dwM5	Singleton		XDIO	-1
256	xdio6	en	I/O	XDIO M05		Normal	2	FBS/xdio6.dvg	FBE/xdio6.dvg	0	-40	110	80	fbXdio6		0	0	0x2017		dwM5	Singleton		XDIO	-1
257	xdio7	en	I/O	XDIO M06		Normal	2	FBS/xdio7.dvg	FBE/xdio7.dvg	0	-40	110	80	fbXdio7		0	0	0x2017		dwM5	Singleton		XDIO	-1
258	xdio8	en	I/O	XDIO M07		Normal	2	FBS/xdio8.dvg	FBE/xdio8.dvg	0	-40	110	80	fbXdio8		0	0	0x2017		dwM5	Singleton		XDIO	-1
259	xdio9	en	I/O	XDIO M08		Normal	2	FBS/xdio9.dvg	FBE/xdio9.dvg	0	-40	110	80	fbXdio9		0	0	0x2017		dwM5	Singleton		XDIO	-1
260	xdio10	en	I/O	XDIO M09		Normal	2	FBS/xdio10.dvg	FBE/xdio10.dvg	0	-40	110	80	fbXdio10		0	0	0x2017		dwM5	Singleton		XDIO	-1
261	xdio11	en	I/O	XDIO M10		Normal	2	FBS/xdio11.dvg	FBE/xdio11.dvg	0	-40	110	80	fbXdio11		0	0	0x2017		dwM5	Singleton		XDIO	-1
262	xdio12	en	I/O	XDIO M11		Normal	2	FBS/xdio12.dvg	FBE/xdio12.dvg	0	-40	110	80	fbXdio12		0	0	0x2017		dwM5	Singleton		XDIO	-1
263	xdio13	en	I/O	XDIO M12		Normal	2	FBS/xdio13.dvg	FBE/xdio13.dvg	0	-40	110	80	fbXdio13		0	0	0x2017		dwM5	Singleton		XDIO	-1
264	xdio14	en	I/O	XDIO M13		Normal	2	FBS/xdio14.dvg	FBE/xdio14.dvg	0	-40	110	80	fbXdio14		0	0	0x2017		dwM5	Singleton		XDIO	-1
265	xdio15	en	I/O	XDIO M14		Normal	2	FBS/xdio15.dvg	FBE/xdio15.dvg	0	-40	110	80	fbXdio15		0	0	0x2017		dwM5	Singleton		XDIO	-1
266	xdio16	en	I/O	XDIO M15		Normal	2	FBS/xdio16.dvg	FBE/xdio16.dvg	0	-40	110	80	fbXdio16		0	0	0x2017		dwM5	Singleton		XDIO	-1
267	xdio17	en	I/O	XDIO M16		Normal	2	FBS/xdio17.dvg	FBE/xdio17.dvg	0	-40	110	80	fbXdio17		0	0	0x2017		dwM5	Singleton		XDIO	-1
268	xdio18	en	I/O	XDIO M17		Normal	2	FBS/xdio18.dvg	FBE/xdio18.dvg	0	-40	110	80	fbXdio18		0	0	0x2017		dwM5	Singleton		XDIO	-1
269	xdio19	en	I/O	XDIO M18		Normal	2	FBS/xdio19.dvg	FBE/xdio19.dvg	0	-40	110	80	fbXdio19		0	0	0x2017		dwM5	Singleton		XDIO	-1
270	xdio20	en	I/O	XDIO M19		Normal	2	FBS/xdio20.dvg	FBE/xdio20.dvg	0	-40	110	80	fbXdio20		0	0	0x2017		dwM5	Singleton		XDIO	-1
271	xdio21	en	I/O	XDIO M20		Normal	2	FBS/xdio21.dvg	FBE/xdio21.dvg	0	-40	110	80	fbXdio21		0	0	0x2017		dwM5	Singleton		XDIO	-1
272	xdio22	en	I/O	XDIO M21		Normal	2	FBS/xdio22.dvg	FBE/xdio22.dvg	0	-40	110	80	fbXdio22		0	0	0x2017		dwM5	Singleton		XDIO	-1
273	xdio23	en	I/O	XDIO M22		Normal	2	FBS/xdio23.dvg	FBE/xdio23.dvg	0	-40	110	80	fbXdio23		0	0	0x2017		dwM5	Singleton		XDIO	-1
274	xdio24	en	I/O	XDIO M23		Normal	2	FBS/xdio24.dvg	FBE/xdio24.dvg	0	-40	110	80	fbXdio24		0	0	0x2017		dwM5	Singleton		XDIO	-1
275	freq1fi	en	Frequency	T3 Frequency Input		Normal	3	FBS/freq1fi.dvg	FBE/freq1fi.dvg	0	-90	340	180	fbFreq1fi		0	0	0x2017		dwM5	Singleton		FreqIO	-1
276	freq2fi	en	Frequency	T4 Frequency Input		Normal	3	FBS/freq2fi.dvg	FBE/freq2fi.dvg	0	-90	340	180	fbFreq2fi		0	0	0x2017		dwM5	Singleton		FreqIO	-1
277	freq3fi	en	Frequency	T5 Frequency Input		Normal	3	FBS/freq3fi.dvg	FBE/freq3fi.dvg	0	-90	340	180	fbFreq3fi		0	0	0x2017		dwM5	Singleton		FreqIO	-1
278	freq4fi	en	Frequency	T6 Frequency Input		Normal	3	FBS/freq4fi.dvg	FBE/freq4fi.dvg	0	-90	340	180	fbFreq4fi		0	0	0x2017		dwM5	Singleton		FreqIO	-1
279	freq3fo	en	Frequency	T5 Frequency Output		Normal	4	FBS/freq3fo.dvg	FBE/freq3fo.dvg	0	-80	310	160	fbFreq3fo	InitCode	0	0	0x2017		dwM5	Singleton		FreqIO	-1
280	freq4fo	en	Frequency	T6 Frequency Output		Normal	4	FBS/freq4fo.dvg	FBE/freq4fo.dvg	0	-80	310	160	fbFreq4fo	InitCode	0	0	0x2017		dwM5	Singleton		FreqIO	-1
281	freqStatus	en	Frequency	Frequency Status Monitor		Normal	7	FBS/freqStatus.dvg	FBE/freqStatus.dvg	-10	-10	120	120	fbFreqStatus		0	0	0x2017		dwM5	Singleton		FreqIO	-1
282	doublePush	en	Timers	Double Push Detector	Generates a one-shot output when two positive edges are detected between 50 ms and 600 ms apart.  Useful with push button inputs.	Normal	4	FBS/doublePush.dvg	FBE/doublePush.dvg	0	-20	150	40	fbDoublePush		1	0	0x2017		General				-1
283	trackAndHoldPers	en	Switches	Persistent Track and Hold		Normal	3	FBS/trackAndHold.dvg	FBE/trackAndHold.dvg	0	-20	140	100	fbTrackAndHold		1	0	0x2018		dwM5				-1
