- •Introduction
- •1 Quick Start
- •Overview of the Example
- •Create a Project and Adding a Drive
- •Editing the Program
- •Building and Downloading the Program
- •Monitoring Operation of the Program
- •Importing sm-Applications Lite syptLite Programs
- •Upgrading from the dpl Toolkit
- •Loading a dpl File from disk
- •Uploading a dpl File from a Target Node
- •Starting sypt
- •Configuration Editor
- •Menu Bar
- •Toolbars
- •View toolbar for the Hardware Architecture view
- •Status Bar
- •Hardware Architecture View
- •Link Architecture View
- •Cyclic Data View
- •Specifying Workbench Options
- •Dpl Editor
- •SyptLite
- •Watch Window
- •Menu Bar
- •Managing Projects
- •Creating Projects
- •Opening Projects
- •Saving Projects
- •Viewing Project Properties
- •Cloning Projects
- •Closing Projects
- •Printing Projects
- •Defining a Project Header
- •Inserting Nodes
- •Selecting Nodes
- •Editing the Properties of Nodes
- •Editing Node Descriptions
- •Deleting Nodes
- •Cutting, Copying, and Pasting Nodes
- •Rearranging Nodes
- •Networks
- •Unreachable Nodes
- •Inserting Networks
- •Selecting Networks
- •Deleting Networks
- •Editing the Properties of Networks
- •Pc Communications Settings
- •Rearranging Networks
- •Splitting Network Rails
- •Merging Network Rails
- •Cyclic Data Links
- •Inserting Data Links
- •Inserting Broadcast Links
- •Defining Cyclic Data
- •Viewing Cyclic Data
- •Selecting Links
- •Rearranging Links
- •Deleting Data Links
- •Editing Source/Destination Node Descriptions
- •Annotations
- •Inserting Annotations
- •Editing the Contents of Annotations
- •Formatting Text in Annotations
- •Deleting Annotations
- •Dpl Programs
- •Creating Programs
- •Opening and Closing Programs
- •Saving Programs
- •Editing Programs
- •Specifying the Floating-Point Model
- •Inserting Sections
- •Inserting Diagrams
- •Inserting Variables, Parameters or Numbers
- •Inserting Function Block Calls
- •Inserting Files
- •Inserting the Date and Time
- •Selecting Items in Programs
- •Cutting, Copying, and Pasting Items
- •Finding and Replacing Text
- •Go to a Source Line
- •Editing Diagram Titles
- •Editing/ Viewing the Properties of Programs
- •Printing Programs
- •Templates
- •Dpl Syntax Templates
- •Defining a Template
- •Dpl Templates Dialog
- •Defining a Template Category
- •Deleting a Template/ Changing a Template Name
- •Deleting a Category/ Changing a Category Name
- •Template Shortcut keys
- •Inserting a Template into a Program
- •Creating a Library
- •Specifying Function Block Properties
- •Library Folder Structure
- •Viewing Library Properties
- •Library Manager
- •Referencing and Using a Library
- •Removing a Reference To a Library
- •Exporting a Library
- •Importing a Library
- •Switching the Configuration Editor Online
- •Switching the Configuration Editor Offline
- •Node Detection and Indications
- •Successfully Detected Nodes
- •New Node
- •Nodes Not Found
- •Cyclic Data Mismatches
- •Cyclic Master and Trip Indications
- •Refreshing the View of Nodes While Online
- •Adding Detected Nodes
- •Deleting Target User Programs
- •Building Applications
- •Showing Build Errors
- •Downloading Node Programs
- •Uploading Node Programs
- •_______________________________________________________________________________________________ Accessing Diagnostic Information for Nodes
- •Accessing Identification Information for Nodes
- •Monitoring the Values of Variables and Parameters
- •Watching Values in the dpl Editor
- •Setting Up a Watch List
- •Opening and Closing Watch Lists
- •Saving Watch Lists
- •Adding Variables and Parameters to a Watch List
- •Selecting Watch List Items
- •Cutting, Copying, and Pasting Watch List Items
- •Removing Items from a Watch List
- •Editing the Properties of Watch List Items
- •Rearranging the Order of Watch List Items
- •Changing the Values of Variables or Parameters
- •Controlling Program Execution
- •Stopping and Starting Programs
- •Pausing and Resuming Programs
- •Stopping and Stepping Tasks
- •Running Tasks
- •Using Breakpoints
- •Switching dpl Programs to Editing Mode
- •Resetting Node Programs
- •Resetting Drives
- •Abs - Absolute
- •Ansiread - ansi Master Command
- •Ansireadn - ansi Master Command
- •Ansireply - ansi Master Command (ud70 and md29)
- •Ansireply - ansi Master Command (sm-Applications)
- •Ansiwrite - ansi Master Command
- •Ansiwriten - ansi Master Command
- •ApcSetRunMode
- •ApcReset
- •ApcGetOutputSpeed
- •ApcGetOutputSpeedRpmx10
- •ApcSelectAbsoluteMode
- •ApcSelectRelativeMode
- •ApcReadPar
- •ApcSetPositionResetOffset
- •ApcResetSourcesOnDisable
- •ApcDoNotResetSourcesOnDisable
- •ApcSetReferenceSource
- •ApcSetFeedbackSource
- •ApcSetNumOfTurnsBits
- •ApcEnableRefSourceMarker
- •ApcDisableRefSourceMarker
- •ApcEnableFbckSourceMarker
- •ApcDisableFbckSourceMarker
- •ApcResetRefSourceMarkerFlag
- •ApcResetFbckSourceMarkerFlag
- •ApcResetRefSourceFreezeFlag
- •ApcResetFbckSourceFreezeFlag
- •ApcInvertRefSource
- •ApcDoNotInvertRefSource
- •ApcInvertFbckSource
- •ApcDoNotInvertFbckSource
- •ApcSetReferencePosition
- •ApcSetFeedbackPosition
- •ApcGetReferenceStatus
- •ApcGetFeedbackStatus
- •ApcSelectReference
- •ApcSelectActionOnFreeze
- •ApcSetStopMode
- •ApcSetPositionSetPoint
- •ApcSetSpeedSetPoint
- •ApccamInitialise
- •ApccamInitialise1
- •ApccamInitialise2
- •ApccamInitialise3
- •ApcSetCamStartIndex
- •ApcSetCamSize
- •ApcSetCamDeltaSegLimit
- •ApcSetCamInterpolationMode
- •ApcSetCamOutRatioNumerator
- •ApcSetCamOutRatioDenominator
- •ApcSelectCamAbsoluteReset
- •ApcSelectCamZeroReset
- •ApcSetCamAbsResetIndex
- •ApcSetCamAbsResetPositionInSeg
- •ApcEnableCamSingleShot
- •ApcDisableCamSingleShot
- •ApcSetDigLockMode
- •ApcSetDigLockRatioNumerator
- •ApcSetDigLockRatioDenominator
- •ApcSetDigLockLockingSpeed
- •ApcSetDigLockLockingPosition
- •ApcSetSpeedOffset
- •ApcSetPositionOffset
- •ApcDisableRigidLock
- •ApcEnableProfile
- •ApcDisableProfile
- •ApcSetProfileAccelRate
- •ApcSetProfileDecelRate
- •ApcSetProfileMaxSpeedClamp
- •ApcSetPGain
- •ApcSetPGainSpeedClamp
- •ApcEnableExternalRefSpeed
- •ApcDisableExternalRefSpeed
- •ApcSetExternalRefSpeed
- •ApcEnableExternalRefPosition
- •ApcDisableExternalRefPosition
- •ApcSetExternalRefPosition
- •ApcSetOutputRatioNumerator
- •ApcSetOutputRatioDenominator
- •ApcSetupOutputChannel
- •ApcEnableOutputChannel
- •ApcDisableOutputChannel
- •ApcWriteOutputChannel
- •ApcToUserPosition
- •ApcToUserVelocity
- •ApcToUserAcceleration
- •Arrayget - Get Array Element
- •Arrayset - Set array element
- •Arraysort
- •Arraystat
- •Assram - Associate an array with a file
- •Autosync - ctNet Sync Master Redundancy
- •Autosyncerror
- •Average - Running Average
- •Bcd2bin - Binary-coded Decimal to Binary Conversion
- •Bin2bcd - Binary to Binary-coded Decimal Conversion
- •Bcd2seg - Binary-coded Decimal to Seven-segment Display Data
- •Blkdef - Block Parameter Write
- •Bridge - rs485 Serial Protocol Function
- •Cambox - cam function generator
- •Cambox2 - cam function generator
- •Cambox/cambox2 - cam information
- •Caminit - cam Table Initialise
- •CanConfigEvent
- •CanGetNodeAddr
- •CanReady
- •CanSetup
- •CanStatus
- •CanStatusAll
- •Checknode - Check Existence of Node on ctNet
- •CloseSmartCard
- •Cmodexfer
- •Cmp - Comparison Block
- •Condparw - Conditional Parameter Write
- •ConvertBackwards
- •ConvertForwards
- •Cos - Cosine Function
- •Crc16 - Cyclic Redundancy Check
- •Ctd - Down Counter
- •Ctu - Up Counter
- •Ctud - Up/ Down Counter
- •Ctnetdiagnostics
- •CtSyncDisableOutputChannel
- •CtSyncEnableOutputChannel
- •CtSyncGetSlaveReferences
- •CtSyncSetMasterReferences
- •CtSyncSetupOutputChannel
- •CtSyncWriteOutputChannel
- •Datastuff
- •Decoder4/decoder8
- •Digsel8 - Digital Select Block
- •IDMux/ fDMux / iDMux8 - De-multiplexers
- •Dterm - Differentiator Block
- •Editfastlink/editslowlink - ctNet Cyclic Link Editing
- •Egb / egb2
- •EnableCanTrips
- •Encoder4/encoder8 - Binary Encoder Blocks
- •Exp - Exponential Function
- •Filter - First-order Digital Filter
- •Float - Integer to Floating Point Conversion
- •Float32
- •Getchar - Read rs485 Port
- •GetNextSmartCardFile
- •GetParAttr
- •GetSamplesPerSec
- •GetTaskId
- •Home1 - Homing function
- •Home2 - Homing function
- •HiLoDet - Max and min value detection
- •Int - Floating Point to Integer Conversion
- •ITerm - Integrator Block
- •IWindow
- •ILimit/ fLimit
- •ILimit2/ fLimit2
- •IInvert/fInvert
- •Ln - Natural Logarithm
- •LinInt - Linear Interpolation
- •Modexfer
- •Mpot - Motorised Pot
- •Muldivrm
- •IMux / fMux / iMux2 / fMux2 / iMux8 - Multiplexers
- •Nand4 - Four-input nand Gate
- •Neg - Inverts Input
- •Netreply
- •Netstatus
- •Nor4 - Four-input nor Gate
- •OpenReadSmartCard
- •OpenWriteSmartCard
- •Or4 - Four-input or Gate
- •IOs/ fOs - Offset-Scale
- •Pfixread - Fixed Precision (3 dps) Parameter Read
- •Pfixread6 - Fixed Precision (6 dps) Parameter Read
- •Pfixwrite - Fixed Precision (3 dps) Parameter Write
- •Pfixwrite6 - Fixed Precision (6 dps) Parameter Write
- •Pid - pid Block
- •Posloop - Position Loop Controller
- •Posloop2 - Position Loop Controller
- •Precisiontimer
- •Pt - Pulse Timer
- •Ptd - Pulse Timer
- •Putblock
- •PutBottomWord
- •Putchar - Write Character to rs485 Port
- •Putkey - Write Character to Port
- •PutTopWord
- •RamLength
- •Ramp - Linear Ramp
- •Readnet
- •Readnetb
- •ReadReadOnlyBit
- •ReadSmartCardByte
- •Reg - Registration Block
- •ResetCanTimer
- •Rs/sr : Event Memory Latches
- •RtuReadRegs
- •RtuReadParas
- •RtuReadInputRegs
- •RtuPresetRegs
- •RtuPresetParas
- •RtuMasterReply
- •RtuMasterStatus
- •Runtime
- •Scheduleevent
- •SetConverterDenominator
- •SetConverterNumerator
- •SetCtnSync
- •SetRamLength
- •SetUserId
- •Shiftlr
- •SignedBottomWord
- •SignedTopWord
- •Sin - Sine Function
- •ISo/fSo : Scale-Offset
- •Splitter
- •SpGateway - ctNet to fieldbus gateway
- •Sq1int/ Sq2int - Square Interpolation
- •Sqr - Square Root Function
- •Sramp - s-Ramp Profile Generator Function
- •Ssramp - s-Ramp Profile Generator Function
- •Stuff2 / stuff4 / stuff8 - Bit Stuffers
- •Tan - Tan Function
- •Tcyclic - Cyclic Timer
- •ToffRet
- •Trl - Triggered Latch Function
- •UnAssram
- •UnsignedBottomWord
- •UnsignedTopWord
- •UserToApcAcceleration
- •UserToApcPosition
- •UserToApcVelocity
- •Vel2pos - Velocity Profile Integrator
- •Writenet
- •Writenetb
- •Wrnet - ctNet Write Command
- •Wrnetb - ctNet Block Parameter Write Command
- •WriteReadOnlyBit
- •WriteSmartCardByte
- •Xor4 - Four-input xor Gate
- •SmartCard Example Program
- •Supported Languages
- •Variables, Parameters, Constants and Data Types
- •Variables
- •Bit Access For Variables
- •Predefined Variables
- •Parameters
- •Plc Registers
- •Data Types
- •Constants
- •Numbers
- •Variable and Parameter Scope
- •Aliases
- •Program Structure
- •Subroutines
- •User-Defined Function Blocks (udfBs)
- •Calling udfBs
- •Udfb Argument Restrictions
- •Udfb Instances
- •Udfb Code Sections
- •Dpl (Drive Programming Language) Reference
- •Directives
- •Operators
- •Conditional Operators
- •Comments
- •Constructs
- •Variable Assignment
- •If ... Then
- •For Loop
- •Function Block Call
- •Ld/ fb Elements
- •Ld/ fb Coil Types
- •Ld/ fb Contact Types
- •Ld/ fb Order of Execution
- •Qld (Quick Ladder Diagram) Reference
- •Qld Elements
- •Qld Coil Types
- •Qld Contact Types
- •Advanced Position Controller
- •Programming Hints and Tips
- •Copyright
WriteReadOnlyBit
This command allows the user to write the status of the read only bit, which is usd to protect the contents of the smartcard.
Arguments
Data%
The read-only bit.
Value |
Meaning |
1 |
Read-only |
not 1 |
Read-write |
Return Values
Status%
The status of the operation.
Value |
Meaning |
0 |
OK |
3 |
Communications Failure with the smartcard. |
Example
See SmartCard Example Program for example program.
Target/ Language Restrictions
Only available on SM-Applications and SM-Applications Lite.
See Also
OpenReadSmartCard
OpenWriteSmartCard
CloseSmartCard
ReadSmartCardByte
WriteSmartCardByte
GetNextSmartCardFile
ReadReadOnlyBit
________________________________________________________________________________
WriteSmartCardByte
This function writes a byte of data to the smartcard. A file must be opened for writing prior to using this command.
Arguments
Data%
Data byte to write to the SmartCard.
Return Values
Status%
The status of the operation.
Value |
Meaning |
0 |
OK |
3 |
Communications Failure with the smartcard. |
Example
See SmartCard Example Program for example program.
Target/ Language Restrictions
Only available on SM-Applications and SM-Applications Lite.
See Also
OpenReadSmartCard
OpenWriteSmartCard
CloseSmartCard
ReadSmartCardByte
GetNextSmartCardFile
ReadReadOnlyBit
WriteReadOnlyBit
________________________________________________________________________________
Xor4 - Four-input xor Gate
This function returns the result of XORing (exclusive OR) its four inputs.
Arguments
IN1% to IN3%
The values to be XORed together. Only the bottom bit (bit 0) of each input will be XORed. All other bits in the input will be ignored.
Example
Target/ Language Restrictions
None.
See Also
AND4
NAND4
NOR4
OR4
SmartCard Example Program
The following is an example program using the SmartCard function blocks.
Example
See Also
OpenReadSmartCard
OpenWriteSmartCard
CloseSmartCard
ReadSmartCardByte
WriteSmartCardByte
GetNextSmartCardFile
ReadReadOnlyBit
WriteReadOnlyBit
________________________________________________________________________________
Reference
The language reference provides detailed information assisting in the development of DPL programs:
Supported Languages
Variables, Parameters, Constants and Data Types
Program Structure
DPL (Drive Programming Language) Reference
LD (Ladder) and FBD (Function Block Diagram) Reference
QLD (Quick Ladder Diagram) Reference
Advanced Position Controller
Programming Hints and Tips
Functions & Function Blocks
Note: |
This section is the reference for programs developed within the DPL editor (and its diagram editors) in SYPT. The SYPTLite help file contains a reference section for programs developed in SYPTLite. The SYPTLite help file is accessible from the Help menu in SYPTLite. |
________________________________________________________________________________
Supported Languages
SYPT supports the development of user programs in four languages - DPL, QLD, LD and FB. A program can be developed in a mixture of the supported languages. The user is free to mix DPL, QLD and LD/ FB within a program and even within a single function block, subroutine or task definition. For more information on the languages see below.
Drive Programming Language (DPL)
Quick Ladder (QLD)
Full Ladder (LD)
Function Block (FB)
Drive Programming Language (DPL)
This is the main language within SYPT. DPL is high-level, structured language which includes a number of features optimised for use with Control Techniques drives. DPL is suitable for writing any sort of program and includes features common to all high-level computer languages.
It is not possible to write a program in SYPT without using some DPL since all common elements (tasks, variables, aliases) are defined in DPL form. For example, if a Background task is written which includes a function block diagram, the task wrapper and variables used in the diagram are written in DPL.
The diagram shows a Background task in the DPL editor. The task executes in a continuous loop. The task contains a function block diagram which assigns the current time to a variable (MyVar%) and then assigns MyVar% to a parameter (#20.30) on the drive. Even though the main "executable" code is written in a function block diagram, the task structure, variable and parameter are all in DPL form. If the above task were written in DPL alone it would look like the following.
DPL (Drive Programming Language) Reference
Quick Ladder (QLD)
Quick Ladder is a restricted form of ladder programming suited to logic control. The Quick Ladder diagram editor (within the DPL editor) enforces a rigid layout of ladder elements such as contacts, coils and function block calls. Quick Ladder allows a valid ladder diagram to be developed very quickly.
The Quick Ladder editor in SYPT is very similar to the Quick Ladder editor provided in SYPTLite. However, in SYPT the Quick Ladder editor allows the use of user-defined data variables as well as drive parameters.
For more information on QLD, see:
QLD (Quick Ladder Diagram) Reference
Full Ladder (LD)
Full ladder allows more flexibility than QLD, e.g. contacts and coils can be directly connected to function block inputs and outputs. LD diagrams are edited using the same editor (LD/ FBD) as function block diagrams.
\
For more information on LD, see:
LD (Ladder) and FBD (Function Block Diagram) Reference
Function Block (FB)
Function Block provides a good way of visualising flow of data between variables and functions or function blocks. Function Block diagrams provide an intuitive way of expressing a program. Function block diagrams are edited using the same editor (LD/ FBD) as LD diagrams.
For more information on FB, see:
LD (Ladder) and FBD (Function Block Diagram) Reference
See Also
Reference
________________________________________________________________________________