Lenze DDS Function library PLCToolBox User Manual

L
Manual
Global Drive PLC Developer Studio
Global Drive
Function library
LenzePLCToolBox.lib
The function library LenzePLCToolBox.lib can be used for the following Lenze PLC devices:
Type from hardware version from software version
9300 Servo PLC EVS93XX−xI 6A 6.0
9300 Servo PLC ECS93XX−xT 6A 6.0
Drive PLC EPL10200 1A 6.0
ECSxA ECSxAxxx 1C 7.0
Important note:
The software is supplied to the user as described in this document. Any risks resulting from its quality or use remain the responsibility of the user. The user must provide all safety measures protecting against possible maloperation.
We do not take any liability for direct or indirect damage, e.g. profit loss, order loss or any loss regarding business.
ã 2006 Lenze Drive Systems GmbH
No part of this documentation may be copied or made available to third parties without the explicit written approval of Lenze Drive Systems GmbH.
All information given in this online documentation has been carefully selected and tested for compliance with the hardware and software described. Nevertheless, discrepancies cannot be ruled out. We do not accept any responsibility or liability for any damage that may occur. Required corrections will be included in updates of this documentation.
All product names mentioned in this documentation are trademarks of the corresponding owners.
Version 1.5 04/2006
Function library LenzePLCToolBox.lib

Contents

1 Preface and general information 1−1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1 About this Manual 1−1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.1 Conventions used in this Manual 1−1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.2 Layout of the descriptions 1−2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.3 Pictographs used in this Manual 1−2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.4 Terminology used 1−2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Version identifiers of the function library 1−3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Functions/function blocks 2−1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1 Overview 2−1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 L_TBConvBitsToByte 2−2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 L_TBConvBitsToDword 2−3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4 L_TBConvBitsToWord 2−4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5 L_TBConvByteToBits 2−5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6 L_TBConvCharToByte 2−6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7 L_TBConvDwordToBits 2−7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.8 L_TBConvWordToBits 2−8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9 L_TBGetBitOfByte 2−9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10 L_TBGetBitOfDword 2−10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.11 L_TBGetBitOfWord 2−11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12 L_TBResetBitOfByte 2−12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.13 L_TBResetBitOfDword 2−13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.14 L_TBResetBitOfWord 2−14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.15 L_TBSetBitOfByte 2−15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.16 L_TBSetBitOfDword 2−16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.17 L_TBSetBitOfWord 2−17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.18 L_TBSquareWave 2−18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
l LenzePLCToolBox.lib EN 1.5
i
Function library LenzePLCToolBox.lib
Contents
ii
LenzePLCToolBox.lib EN 1.5
l
Function library LenzePLCToolBox.lib
Preface and general information

1.1 About this Manual

1 Preface and general information

1.1 About this Manual
This manual contains information about the LenzePLCToolBox.lib function library for the Drive PLC Developer Studio.
· The LenzePLCToolBox.lib function library includes among other things functions and function
blocks, which enable "Byte", "Word" and "Double Word" data to be accessed bit by bit.
1.1.1 Conventions used in this Manual
This Manual uses the following conventions to distinguish between different types of information:
Variable identifiers
are written in italics in the explanation:
· "Use bReset..."
Tip!
Information about the conventions used for the variables of the Lenze system blocks, function blocks and functions can be found in the appendix of the DDS online documentation "Introduction into IEC61131−3 programming". The conventions ensure universal and uniform labelling and make reading the PLC program easier.
Lenze functions/function blocks
can be recognized by their names. They always begin with an "L_":
· "With the function L_TBConvBitsToByte..."
Program listings
are written in "Courier", keywords are printed in bold:
· " IF (ReturnValue < 0) THEN..."
L
LenzePLCToolBox.lib EN 1.5
1−1
Function library LenzePLCToolBox.lib
Preface and general information
1.1 About this Manual
1.1.2 Layout of the descriptions
All function/function block and system block descriptions contained in this Manual have the same structure:
 
Function Function block (FB)/
Headline stating the function and the function identifier
Declaration of the function:
· Data type of the return value
· Function identifier
· List of transfer parameters
Short description of the most important properties
Function chart including all
associated variables
· Transfer parameters
· Return value
Table giving information about the
transfer parameters:
· Identifier
· Data type
· Possible settings
· Info
Table giving information about the
return value:
· Data type of the return value
· Possible return values and their
meaning:
Additional information
(Notes, tips, application examples, etc.)
System block (SB)
FB/SB chart including all associated variables
· Input variables
· Output variables
Table giving information about the input and output variables:
· Identifier
· Data type
· Type of variable
· Possible settings
· Info
1.1.3 Pictographs used in this Manual
Use of pictograms
Warning of material damage
Other notes Tip!
Signal words
Stop! Warns of potential damage to material.
Note!
1.1.4 Terminology used
Term In the following text used for
DDS Drive PLC Developer Studio
FB Function block
GDC Global Drive Control (parameterization program from Lenze)
Parameter codes Codes for setting the functionality of a function block PLC · 9300 Servo PLC
SB System block
· Drive PLC
· ECSxA "Application" axis module
Possible consequences if disregarded: Damage to the controller/drive system or its environment
Indicates a tip or note.
.
1−2
LenzePLCToolBox.lib EN 1.5
L
Function library LenzePLCToolBox.lib
Preface and general information

1.2 Version identifiers of the function library

1.2 Version identifiers of the function library
The version of the function library can be found under the global constant C_w[Function library name]Version .
Version identifiers as of PLC software version 7.x:
Constant Meaning
C_w[FunctionLibraryName]VersionER External Release 01
C_w[FunctionLibraryName]VersionEL External Level 05
C_w[FunctionLibraryName]VersionIR Internal Release 00
C_w[FunctionLibraryName]VersionBN Build No. 00
The value of this constant is a hexadecimal code.
· In the example, "01050000" stands for version "1.05".
Example value
Version: 01 05 00 00
L
LenzePLCToolBox.lib EN 1.5
1−3
Function library LenzePLCToolBox.lib
Kolumne1
1−4
LenzePLCToolBox.lib EN 1.5
l
Function library LenzePLCToolBox.lib
Functions/function blocks

2.1 Overview

2 Functions/function blocks

2.1 Overview
Function/function block Info
L_TBConvCharToByte (FUN) Supplies the ASCII code for a character ^ 2−6
Converting single bit values into a value of data type:
L_TBConvBitsToByte (FUN)
L_TBConvBitsToDword (FUN) Double word (32 bits) ^ 2−3
L_TBConvBitsToWord (FUN) Word (16 bits) ^ 2−4
L_TBConvByteToBits (FB) Byte (8 bits) ^ 2−5
L_TBConvDwordToBits (FB) Double word (32 bits) ^ 2−7
L_TBConvWordToBits (FB) Word (16 bits) ^ 2−8
L_TBGetBitOfByte (FUN) Byte (8 bits) ^ 2−9
L_TBGetBitOfDword (FUN) Double word (32 bits) ^ 2−10
L_TBGetBitOfWord (FUN) Word (16 bits) ^ 2−11
L_TBResetBitOfByte (FUN) Byte (8 bits) ^ 2−12
L_TBResetBitOfDword (FUN) Double word (32 bits) ^ 2−13
L_TBResetBitOfWord (FUN) Word (16 bits) ^ 2−14
L_TBSetBitOfByte (FUN) Byte (8 bits) ^ 2−15
L_TBSetBitOfDword (FUN) Double word (32 bits) ^ 2−16
L_TBSetBitOfWord (FUN) Word (16 bits) ^ 2−17
L_TBSquareWave (FB) Generates a Boolean square wave signal with a variable high/low time. ^ 2−18
Byte (8 bits) ^ 2−2
Outputting the single bit values for a value of data type:
Querying a single bit in a value of data type:
Resetting a single bit in a value of data type:
Setting a single bit in a value of data type:
L LenzePLCToolBox.lib EN 1.5
2−1
Function library LenzePLCToolBox.lib
Functions/function blocks

2.2 L_TBConvBitsToByte

2.2 L_TBConvBitsToByte
BYTE L_TBConvBitsToByte (bBit0, bBit1, bBit2, bBit3, bBit4, bBit5, bBit6, bBit7)
This function converts 8 single bit values into a value of type "byte".
bBit0 bBit1 bBit2
bBit7
Transfer parameters
Identifiers Data type Info/possible settings
bBit0 Bool Bit 0 (valency: 20)
bBit1 Bool Bit 1 (valency: 21)
bBit2 Bool Bit 2 (valency: 22)
... ... ...
bBit7 Bool Bit 7 (valency: 27)
Return value: Byte
Value Meaning
0 ... 255 Value of type byte" corresponding to the transmitted bit values.
L_TBConvBitsToByte
Byte (8 bits)
Example
Calling the function in ST:
byResult := L_TBConvBitsToByte(0, 1, 1, 0, 1, 0, 0, 1);
(* byResult = 150 *)
2−2
LenzePLCToolBox.lib EN 1.5
L
Function library LenzePLCToolBox.lib
Functions/function blocks

2.3 L_TBConvBitsToDword

2.3 L_TBConvBitsToDword
DWORD L_TBConvBitsToDword (bBit0, bBit1, bBit2, bBit3, bBit4, bBit5, bBit6, bBit7, bBit8, bBit9, bBit10, bBit11, bBit12, bBit13, bBit14, bBit15, bBit16, bBit17, bBit18, bBit19, bBit20, bBit21, bBit22, bBit23, bBit24, bBit25, bBit26, bBit27, bBit28, bBit29, bBit30, bBit31)
This function converts 32 single bit values into a value of type "double word".
bBit0 bBit1 bBit2
bBit31
Transfer parameters
Identifiers Data type Info/possible settings
bBit0 Bool Bit 0 (valency: 20)
bBit1 Bool Bit 1 (valency: 21)
bBit2 Bool Bit 2 (valency: 22)
... ... ...
bBit31 Bool Bit 31 (valency: 231)
Return value: Double word
Value Meaning
0 ... 4294967295 Value of type double word" corresponding to the transmitted bit values.
L_TBConvBitsToDword
Double word (32 bits)
Example
Calling the function in ST:
dwResult := L_TBConvBitsToDword(0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
(* dwResult = 406 *)
L LenzePLCToolBox.lib EN 1.5
2−3
Function library LenzePLCToolBox.lib
Functions/function blocks

2.4 L_TBConvBitsToWord

2.4 L_TBConvBitsToWord
WORD L_TBConvBitsToWord (bBit0, bBit1, bBit2, bBit3, bBit4, bBit5, bBit6, bBit7, bBit8, bBit9, bBit10, bBit11, bBit12, bBit13, bBit14, bBit15)
This function converts 16 single bit values into a value of type "word".
bBit0 bBit1 bBit2
bBit15
Transfer parameters
Identifiers Data type Info/possible settings
bBit0 Bool Bit 0 (valency: 20)
bBit1 Bool Bit 1 (valency: 21)
bBit2 Bool Bit 2 (valency: 22)
... ... ...
bBit15 Bool Bit 15 (valency: 215)
Return value: Word
Value Meaning
0 ... 65535 Value of type word" corresponding to the transmitted bit values.
L_TBConvBitsToWord
Word (16 bits)
Example
Calling the function in ST:
wResult := L_TBConvBitsToWord(0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
2−4
(* dwResult = 406 *)
LenzePLCToolBox.lib EN 1.5
L
Function library LenzePLCToolBox.lib
Functions/function blocks

2.5 L_TBConvByteToBits

2.5 L_TBConvByteToBits
This FB returns the 8 corresponding bit values for an input value of type "byte".
L_TBConvByteToBits
byInput
Byte (8 bits)
ð Inputs
Identifiers Data type Info/possible settings
byInput Byte Value to be converted
Outputs ð
Identifiers Data type Value/meaning
bBit0 Bool Output bit 0 of byInput (valency: 20)
bBit1 Bool Output bit 1 of byInput (valency: 21)
bBit2 Bool Output bit 2 of byInput (valency: 22)
... ... ...
bBit7 Bool Output bit 7 of byInput (valency: 27)
bBit0 bBit1 bBit2
bBit7
L LenzePLCToolBox.lib EN 1.5
2−5
Function library LenzePLCToolBox.lib
Functions/function blocks

2.6 L_TBConvCharToByte

2.6 L_TBConvCharToByte
BYTE L_TBConvCharToByte (strInput)
This function returns the appropriate ASCII code for a character (string with character length "1").
strInput
L_TBConvCharToByte
'A' 65
Character
Transfer parameters
Identifiers Data type Info/possible settings
strInput String(1) Character for which the ASCII code is to be returned.
Return value: Byte
Value Meaning
0 ... 255 ASCII code of strInput
Example
Calling the function in ST:
strCharacter := ’A’; byASCIIcode := L_TBConvCharToByte(strCharacter);
(* byASCIIcode = 65 *)
ASCII code (byte)
2−6
LenzePLCToolBox.lib EN 1.5
L
Function library LenzePLCToolBox.lib
Functions/function blocks

2.7 L_TBConvDwordToBits

2.7 L_TBConvDwordToBits
This FB returns the 32 corresponding bit values for an input value of type "double word".
L_TBConvDwordToBits
dwInput
Double word (32 bits)
ð Inputs
Identifiers Data type Info/possible settings
dwInput Double word Value to be converted
Outputs ð
Identifiers Data type Value/meaning
bBit0 Bool Output bit 0 of dwInput (valency: 20)
bBit1 Bool Output bit 1 of dwInput (valency: 21)
bBit2 Bool Output bit 2 of dwInput (valency: 22)
... ... ...
bBit31 Bool Output bit 31 of dwInput (valency: 231)
bBit0 bBit1 bBit2
bBit31
L LenzePLCToolBox.lib EN 1.5
2−7
Function library LenzePLCToolBox.lib
Functions/function blocks

2.8 L_TBConvWordToBits

2.8 L_TBConvWordToBits
This FB returns the 16 corresponding bit values for an input value of type "word".
L_TBConvWordToBits
wInput
Word (16 bits)
ð Inputs
Identifiers Data type Info/possible settings
wInput Word Value to be converted
Outputs ð
Identifiers Data type Value/meaning
bBit0 Bool Output bit 0 of wInput (valency: 20)
bBit1 Bool Output bit 1 of wInput (valency: 21)
bBit2 Bool Output bit 2 of wInput (valency: 22)
... ... ...
bBit15 Bool Output bit 15 of wInput (valency: 215)
bBit0 bBit1 bBit2
bBit15
2−8
LenzePLCToolBox.lib EN 1.5
L
Function library LenzePLCToolBox.lib
Functions/function blocks

2.9 L_TBGetBitOfByte

2.9 L_TBGetBitOfByte
BOOL L_TBGetBitOfByte (byInput, byBitNr)
This function returns the state of a single bit within a "byte" value.
byInput
7
state?
0...7
byBitNr
Transfer parameters
Identifiers Data type Info/possible settings
byInput Byte Value
byBitNr Byte No. (0 ... 7) of the bit of byInput whose state is to be determined.
Return value: Bool
Value Meaning
FALSE/TRUE State of bit byBitNr of byInput.
L_TBGetBitOfByte
0
FALSE/TRUE
Example
Calling the function in ST:
byValue := 105 (* byValue = 105 dec = 01101001 bin *)
bBit0 := L_TBGetBitOfByte(byValue, 0); (* bBit0 = TRUE *) bBit1 := L_TBGetBitOfByte(byValue, 1); (* bBit1 = FALSE *) bBit2 := L_TBGetBitOfByte(byValue, 2); (* bBit2 = FALSE *)
L LenzePLCToolBox.lib EN 1.5
2−9
Function library LenzePLCToolBox.lib
Functions/function blocks

2.10 L_TBGetBitOfDword

2.10 L_TBGetBitOfDword
BOOL L_TBGetBitOfDword (dwInput, byBitNr)
This function returns the state of a single bit within a "double word" value.
dwInput
31
state?
0...31
byBitNr
Transfer parameters
Identifiers Data type Info/possible settings
dwInput Double word Value
byBitNr Byte No. (0 ... 31) of the bit of dwInput whose state is to be determined.
Return value: Bool
Value Meaning
FALSE/TRUE State of bit byBitNr of dwInput.
L_TBGetBitOfDword
0
FALSE/TRUE
Example
Calling the function in ST:
dwValue := 105
(* dwValue = 105 dec = 00000000 00000000 00000000 01101001 bin *)
bBit0 := L_TBGetBitOfDword(dwValue, 0); (* bBit0 = TRUE *) bBit1 := L_TBGetBitOfDword(dwValue, 1); (* bBit1 = FALSE *) bBit2 := L_TBGetBitOfDword(dwValue, 2); (* bBit2 = FALSE *)
2−10
LenzePLCToolBox.lib EN 1.5
L
Function library LenzePLCToolBox.lib
Functions/function blocks

2.11 L_TBGetBitOfWord

2.11 L_TBGetBitOfWord
BOOL L_TBGetBitOfWord (wInput, byBitNr)
This function returns the state of a single bit within a "word" value.
wInput
15
state?
0...15
byBitNr
Transfer parameters
Identifiers Data type Info/possible settings
wInput Word Value
byBitNr Byte No. (0 ... 15) of the bit of wInput whose state is to be determined.
Return value: Bool
Value Meaning
FALSE/TRUE State of bit byBitNr of wInput.
L_TBGetBitOfWord
0
FALSE/TRUE
Example
Calling the function in ST:
wValue := 105 (* wValue = 105 dec = 00000000 01101001 bin *)
bBit0 := L_TBGetBitOfWord(wValue, 0); (* bBit0 = TRUE *) bBit1 := L_TBGetBitOfWord(wValue, 1); (* bBit1 = FALSE *) bBit2 := L_TBGetBitOfWord(wValue, 2); (* bBit2 = FALSE *)
L LenzePLCToolBox.lib EN 1.5
2−11
Function library LenzePLCToolBox.lib
Functions/function blocks

2.12 L_TBResetBitOfByte

2.12 L_TBResetBitOfByte
BYTE L_TBResetBitOfByte (byInput, byBitNr)
This function resets a single bit in a value of type "byte" to 0".
byInput
7
0...7
byBitNr
Transfer parameters
Identifiers Data type Info/possible settings
byInput Byte Value in which a bit is to be reset to 0".
byBitNr Byte No. (0 ... 7) of the bit to be reset.
Return value: Byte
Value Meaning
0 ... 255 Value of type "byte" resulting from the reset bit.
0
Reset
L_TBResetBitOfByte
0
Example
Calling the function in ST:
byValue := 105 (* byValue = 105 dec = 01101001 bin *)
byValue := L_TBResetBitOfByte(byValue, 3); (* reset bit 3 *)
(* byValue = 97 dec = 01100001 bin *)
2−12
LenzePLCToolBox.lib EN 1.5
L
Function library LenzePLCToolBox.lib
Functions/function blocks

2.13 L_TBResetBitOfDword

2.13 L_TBResetBitOfDword
DWORD L_TBResetBitOfDword (dwInput, byBitNr)
This function resets a single bit in a value of type "double word" to 0".
dwInput
byBitNr
Transfer parameters
Identifiers Data type Info/possible settings
dwInput Double word Value in which a bit is to be reset to 0".
byBitNr Byte No. (0 ... 31) of the bit to be reset.
Return value: Double word
Value Meaning
0 ... 4294967295 Value of type "double word" resulting from the reset bit.
31
0...31
Reset
L_TBResetBitOfDword
0
0
Example
Calling the function in ST:
dwValue := 105 (* dwValue = 105 dec = 01101001 bin *)
dwValue := L_TBResetBitOfDword(dwValue, 3); (* reset bit 3 *)
(* dwValue = 97 dec = 01100001 bin *)
L LenzePLCToolBox.lib EN 1.5
2−13
Function library LenzePLCToolBox.lib
Functions/function blocks

2.14 L_TBResetBitOfWord

2.14 L_TBResetBitOfWord
WORD L_TBResetBitOfWord (wInput, byBitNr)
This function resets a single bit in a value of type "word" to "0".
wInput
15
0...15
byBitNr
Transfer parameters
Identifiers Data type Info/possible settings
wInput Word Value in which a bit is to be reset to 0".
byBitNr Byte No. (0 ... 15) of the bit to be reset.
Return value: Word
Value Meaning
0 ... 65535 Value of type "word" resulting from the reset bit.
0
Reset
L_TBResetBitOfWord
0
Example
Calling the function in ST:
wValue := 105 (* wValue = 105 dec = 01101001 bin *)
wValue := L_TBResetBitOfWord(wValue, 3); (* reset bit 3 *)
(* wValue = 97 dec = 01100001 bin *)
2−14
LenzePLCToolBox.lib EN 1.5
L
Function library LenzePLCToolBox.lib
Functions/function blocks

2.15 L_TBSetBitOfByte

2.15 L_TBSetBitOfByte
BYTE L_TBSetBitOfByte (byInput, byBitNr)
This function sets a single bit in a value of type "byte" to "1".
byInput
7
0...7
byBitNr
Transfer parameters
Identifiers Data type Info/possible settings
byInput Byte Value in which a bit is to be set to 1".
byBitNr Byte No. (0 ... 7) of the bit to be set.
Return value: Byte
Value Meaning
0 ... 255 Value of type "byte" resulting from the set bit.
1
Set
L_TBSetBitOfByte
0
Example
Calling the function in ST:
byValue := 97 (* byValue = 97 dec = 01100001 bin *)
byValue := L_TBSetBitOfByte(byValue, 3); (* set bit 3 *)
(* byValue = 105 dec = 01101001 bin *)
L LenzePLCToolBox.lib EN 1.5
2−15
Function library LenzePLCToolBox.lib
Functions/function blocks

2.16 L_TBSetBitOfDword

2.16 L_TBSetBitOfDword
DWORD L_TBSetBitOfDword (dwInput, byBitNr)
This function sets a single bit in a value of type "double word" to "1".
dwInput
31
0...31
byBitNr
Transfer parameters
Identifiers Data type Info/possible settings
dwInput Double word Value in which a bit is to be set to 1".
byBitNr Byte No. (0 ... 31) of the bit to be set.
Return value: Double word
Value Meaning
0 ... 4294967295 Value of type "double word" resulting from the set bit.
1
Set
L_TBSetBitOfDword
0
Example
Calling the function in ST:
dwValue := 97 (* dwValue = 97 dec = 01100001 bin *)
dwValue := L_TBSetBitOfDword(dwValue, 3); (* set bit 3 *)
(* dwValue = 105 dec = 01101001 bin *)
2−16
LenzePLCToolBox.lib EN 1.5
L
Function library LenzePLCToolBox.lib
Functions/function blocks

2.17 L_TBSetBitOfWord

2.17 L_TBSetBitOfWord
WORD L_TBSetBitOfWord (wInput, byBitNr)
This function sets a single bit in a value of type "word" to "1".
wInput
15
0...15
byBitNr
Transfer parameters
Identifiers Data type Info/possible settings
wInput Word Value in which a bit is to be set to 1".
byBitNr Byte No. (0 ... 15) of the bit to be set.
Return value: Word
Value Meaning
0 ... 65535 Value of type "word" resulting from the set bit.
1
Set
L_TBSetBitOfWord
0
Example
Calling the function in ST:
wValue := 97 (* wValue = 97 dec = 01100001 bin *)
wValue := L_TBSetBitOfWord(wValue, 3); (* set bit 3 *)
(* wValue = 105 dec = 01101001 bin *)
L LenzePLCToolBox.lib EN 1.5
2−17
Function library LenzePLCToolBox.lib
Functions/function blocks

2.18 L_TBSquareWave

2.18 L_TBSquareWave
This FB can be used to generate a Boolean square wave signal with a variable high/low time.
Note!
This function block has to be activated in a time−controlled task.
bEnable
wTimeHigh
wTimeLow
ð Inputs (Variable type: VAR_INPUT)
Identifiers Data type Signal type Info/possible settings
bEnable Bool binary Activating the signal generator
FALSE Signal generator deactivated, bOut = FALSE
TRUE Signal generator activated
wTimeHigh Word High time in [ms]
wTimeLow Word Low time in [ms]
Outputs ð (Variable type: VAR_OUTPUT)
Identifiers Data type Signal type Info
bOut Bool binary Boolean square wave signal
L_TBSquareWave
bOut
If the FB is activated by setting bEnable to TRUE, the set square wave signal is output at bOut starting with the state HIGH:
bEnable
2−18
wTimeHigh
bOut
wTimeLow
· If bEnable is reset to FALSE, the bOut output is also immediately reset to FALSE.
LenzePLCToolBox.lib EN 1.5
L
Loading...