- •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
Autosync - ctNet Sync Master Redundancy
This function ensures that a CTNet Sync Master is always present on a CTNet token ring.
In order for cyclic data to be exchanged between nodes on a CTNet, one of the nodes must be set as CTNET Sync Master responsible for generating the Sync telegram. The reception of the Sync telgram by a node causes it to transmit cyclic data.
Every time the AUTOSYNC function block is called it monitors the CTNet token ring to ensure that a Sync Master is present. If a Sync Master cannot be detected and there is no other node running AUTOSYNC with a node address lower than the local node, the function block will automatically reconfigure the local node to become Sync Master and begin transmitting the Sync telegram.
Arguments
SRate% - range 0 to 25099
Specifies the cyclic rate to be used if the node becomes Sync master. Specified in the form SSSFF where FF = the fast cyclic rate in milliseconds and SSS is the slow cyclic rate as a multiple of the fast data rate.
If SRate% is 0, AUTOSYNC will still monitor the CTNet token ring but will not make an attempt to become Sync master.
Link%
This argument specifies the number of the cyclic link that is reserved for use by the AUTOSYNC block. the convention is that the reserved link is given the name AUTO_SYNC. See the Cyclic Data Configuration section below for more information.
Return Values
ARate%
Returns the cyclic data rate currently in use by the Sync Master node. This value has the same format as SRate%.
SNode%
The Returns the address of the Sync Master node.
Stat%
Stat% consists of a number of status bits. When set, the bits have the following meanings.
Cyclic Data Configuration
PLC registers _R79%, _S79% and one cyclic data link must be reserved for use with AUTOSYNC. The Cyclic Data Editor should be used to configure a link to broadcast _R79% to _S79%. The link should be given the name AUTO_SYNC in block capitals.
The link details should be set as follows.
Source Register |
No. |
Priority |
Destination Register |
Link Name |
_R79% |
0 |
Fast |
_S79% |
AUTO_SYNC |
Defining the link in this way makes a name AUTO_SYNC_LINK available to the DPL program on the node. The name of this link should be passed as the value of the Link% parameter when AUTOSYNC is called. AUTOSYNC will then use the link to negotiate with other nodes on the CTNet network to determine which is Sync Master.
Example
This example shows use of the AUTOSYNC block on any module (UD75, MD29AN, SM-Applications). Note that the module setup parameters will also need to be used to set a CTNet node address..
Target/ Language Restrictions
This function is only supported on SM-Applications, UD75 and MD29AN. For UD75 and MD29AN, system file version 2.8.0 or later must be used.
See Also
AUTOSYNCERROR
________________________________________________________________________________
Autosyncerror
This function block should be used in conjunction with the AUTOSYNC block to provide redundancy in the presence of a Sync Master on a CTNet token ring.
The AUTOSYNC block is responsible for dynamically making a node Sync Master if the existing Sync Master on a network stops generating the Sync telegram. To speed detection of the loss of the Sync Master on a network, the AUTOSYNCERROR block should be called whenever a run-time error occurs on a node.
Arguments
AUTO_SYNC_LINK
This is the ID of the fast cyclic link controlled by the AUTOSYNC block. This definition is created from the name given to the link assigned for use by AUTOSYNC using the Cyclic Data Editor.
See Also
AUTOSYNC
________________________________________________________________________________