SCADA Expert Vijeo Citect 2015 Programming with Cicode Study Guide

Similar documents
Vijeo Citect Customization and Design Study Guide

SCADA Expert Vijeo Citect Architecture and Redundancy Study Guide

EcoStruxure Power Commission Installation Guide

Version 5.5. Using Accumulators. Citect Pty Ltd 3 Fitzsimmons Lane Gordon NSW 2072 Australia

Schneider Electric License Manager

5521 Potentiometer Analog Input Module

Schneider Electric Floating License Manager

RELEASE NOTES. WSOS5 version 5.16.xx. Version Schneider Electric. All Rights Reserved.

Ethernet Modbus X80 Gateway Device Type Manager

SCADAPack E Idec PLC Interface Manual

Packaging User Guide for Temperature Control M221 Project Template

How Can I. Integrate a Third-Party Modbus Device with PowerSCADA Expert? System Technical Note PowerSCADA Expert V1.0

SoMachine HVAC v2.2. Release Notes

File Synchronization User Guide

LXM32. Explanation for detected error E 733F. Expert Support Machine Solution

Architecture and Redundancy Exam Study Guide

5504 Thermocouple Analog Input Module

Version 5.5. CitectSCADA Pocket. Citect Pty Ltd 3 Fitzsimmons Lane Gordon NSW 2072 Australia

SCADAPack E Target 5 DF1 PLC Interface

CitectSCADA Batch Tutorial

Unity Pro OSLoader User Manual

Terms and Conditions of Website Use

SCADAPack E ISaGRAF Quick Start Guide

BlackBerry Enterprise Server for Novell GroupWise. Compatibility Matrix June 26, 2012

Pro-face Connect Troubleshooting for SiteManager (Access to GateManager)

Version 5.5. Multi-language Projects. Citect Pty Ltd 3 Fitzsimmons Lane Gordon NSW 2072 Australia

Diagnostic communication setup with MB/TCP and E/IP fieldbus modules FW 1.7 or 1.8

SoMachine Scan for Buttons Linked to ZBRN Modules Harmony ZBRN Library Guide

Web Designer for Modicon M340, Premium and Quantum

QPP Proprietary Profile Guide

Compatibility Matrix. Good Control and Good Proxy. June 4, 2018

Pro-face Connect User Guide for Security Setting

BlackBerry Enterprise Server for IBM Lotus Domino. Compatibility Matrix. September 20, 2012

Logipam. SFT2885 Programming Software for Sepam Series 80 User s Manual 01/ SEPED303004EN. Logipam

BlackBerry Enterprise Server Express for Microsoft Exchange

BCM ULP Breaker Communication Module

HUAWEI H30-U10. Quick Start Guide

Release Notes. BlackBerry Enterprise Identity

Placing you at the heart of your operations. Vijeo Citect

BlackBerry Enterprise Service 10. September 10, 2014 Version: 10 and 10.1.x. Compatibility Matrix

PowerSCADA Expert v7.30

BlackBerry Enterprise Server Express for IBM Lotus Domino. Compatibility Matrix. September 20, 2012

Pro-face Connect User Guide for GateManager

Vijeo Connect User Guide For GateManager

XPSMCMx Fieldbus Expansion Modules Instruction Sheet (Original Language)

Security Quick Start Guide

Quick Start Guide. BlackBerry Workspaces app for Android. Version 5.0

Quickstart Guide for Khronos Replay. Welcome to Khronos, your historian companion.

Firmware Update Function

Remote Backup Software. User Manual

Smart Mode Measurements

Compatibility Matrix. BlackBerry UEM. March 26, 2018

PLX35-NB2 RELEASE NOTES. Network Bridge Stand Alone Gateway. July 20, 2018

FX RFID READER SERIES Embedded SDK Sample Application

TeSys U LULC07 Profibus DP Communication Module

User Guide. BlackBerry Docs To Go for Android. Version 1.3.0

END USER LICENSE AGREEMENT PANDA ANTIVIRUS 2007 / PANDA ANTIVIRUS + FIREWALL 2007 / PANDA INTERNET SECURITY 2007

TeSys T LTM R EtherNet/IP with a Third-Party PLC Quick Start Guide

COMMERCIAL BANK OF DUBAI PSC GENERAL CONDITIONS OF ACCESS AND USE OF COMMERCIAL BANK OF DUBAI FACEBOOK BRANCH

Epson Stylus Photo 1410 Managing Color

UM PR533 - PCSC Tool. User manual COMPANY PUBLIC. Rev November Document information

Information Bulletin

Best Practices and What's New in Vijeo Citect. Vijeo Citect Product Management Adam Barnes Tim van Wyk

LOGO LICENSE AGREEMENT(S) CERTIPORT AND IC³

Stellar WAB to PST Converter 1.0

5401 and 5402 Digital I/O Modules

Broadcast Notification solutions

Installing Your Microsoft Access Database (Manual Installation Instructions)

Building Information Modeling and Digital Data Exhibit

Release Notes. BlackBerry UEM Client for Android Version

PRODUCT GUIDE. L e p i d e S o f t w a r e P r i v a t e L i m i t e d

CALSTRS ONLINE AGREEMENT TERMS AND CONDITIONS

One Identity Manager Administration Guide for Connecting to SharePoint

New Features in Primavera Professional 15.2

INCLUDING MEDICAL ADVICE DISCLAIMER

One Identity Manager 8.0. Administration Guide for Connecting to Cloud Applications

Ongoing conformance of the product with the standard is the responsibility of the certificate holder and the Australian manufacturer or importer.

Oracle Hospitality Suite8 Export to Outlook User Manual Release 8.9. July 2015

One Identity Manager Administration Guide for Connecting Oracle E-Business Suite

Installation and Configuration Guide

Terms of Use. Changes. General Use.

CitectHistorian 2016

Practices Guide OMRON Standard IAG Library

NVIDIA GPU CLOUD IMAGE FOR GOOGLE CLOUD PLATFORM

MMS DATA SUBSCRIPTION SERVICES USER INTERFACE GUIDE

TERMS & CONDITIONS. Complied with GDPR rules and regulation CONDITIONS OF USE PROPRIETARY RIGHTS AND ACCEPTABLE USE OF CONTENT

VAR-EXT-CB8 Datasheet Camera Extension Board for VAR-DT8MCustomBoard & SPEAR-MX8CustomBoard V 1.x

End User License Agreement

BC403 Advanced ABAP Debugging

BCDC 2E, 2012 (On-line Bidding Document for Stipulated Price Bidding)

CERTIFIED MAIL LABELS TERMS OF USE and PRIVACY POLICY Agreement

Application Note on Modifying Disconnect Settings for Xantrex GT Series Single Phase Inverters and Conext TX Series Inverters

Proficy* Historian OSI PI C OLLECTOR G UIDE. Version 6.0 June 2015

OCTOSHAPE SDK AND CLIENT LICENSE AGREEMENT (SCLA)

Mobile On the Go (OTG) Server

User Scripting April 14, 2018

Compatibility Matrix. BlackBerry UEM. December 22, 2016

Reference Guide VIB 10/11. (VIB 10 pictured) vehicle integration box

Terms and Conditions 01 January 2016

These terms and conditions outline the rules and regulations for the use of Duxbury Networking's Website.

Transcription:

SCADA Expert Vijeo Citect 2015 Programming with Cicode Study Guide 2015 Schneider-Electric Pty (Australia) Ltd 78 Waterloo Road Macquarie Park NSW 2113 Australia

DISCLAIMER Schneider Electric makes no representations or warranties with respect to this study guide and, to the maximum extent permitted by law, expressly limits its liability for breach of any warranty that may be implied to the replacement of this study guide with another. Furthermore, Schneider Electric reserves the right to revise this publication at any time without incurring an obligation to notify any person of the revision. The information provided in this documentation contains general descriptions and/or technical characteristics of the performance of the products contained herein. This documentation is not intended as a substitute for and is not to be used for determining suitability or reliability of these products for specific user applications. It is the duty of any such user or integrator to perform the appropriate and complete risk analysis, evaluation and testing of the products with respect to the relevant specific application or use thereof. Neither Schneider Electric nor any of its affiliates or subsidiaries shall be responsible or liable for misuse of the information that is contained herein. If you have any suggestions for improvements or amendments or have found errors in this publication, please notify us. All pertinent state, regional, and local safety regulations must be observed when installing and using this product. For reasons of safety and to help ensure compliance with documented system data, only the manufacturer should perform repairs to components. When devices are used for applications with technical safety requirements, the relevant instructions must be followed. Failure to use Schneider Electric software or approved software with our hardware products may result in injury, harm, or improper operating results. Failure to observe this information can result in injury or equipment damage. 2015 Schneider Electric. All rights reserved. INTRODUCTION AND LEGAL NOTICE Satisfactory completion of the course evaluation is mandatory for you to obtain a Schneider Electric certificate of completion of the training course. The contents of this study guide are proprietary to Schneider Electric and all rights, including copyright, are reserved by Schneider Electric. No part of this document may be reproduced in any form or by any means, electronic or mechanical, including photocopying, without express written permission of Schneider Electric. Schneider Electric will not accept any liability for action taken in reliance on this training study guide. TRADEMARKS Schneider Electric has made every effort to supply trademark information about company names, products and services mentioned in this study guide. Trademarks shown below were derived from various sources. Vijeo Citect, CitectSCADA, Cicode, Vijeo Historian, CitectHistorian, and Ampla are trademarks owned by Schneider Electric Industry SAS or its affiliated companies. All other trademarks are the property of their respective owners. ActiveX, Excel, Internet Explorer, Microsoft.NET, SQL Server, Windows, Windows Server, Windows XP, Windows Vista, Windows 7 and Windows 8 are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. SafeNet Sentinel is a trademark of Sentinel, Inc. VMware is a registered trademark or trademark of VMware, Inc. in the United States and/or other jurisdictions. General Notice: Some product names used in this study guide are used for identification purposes only and may be trademarks of their respective companies. Validity Note The present documentation is intended for qualified technical personnel responsible for the implementation, operation and maintenance of the products described. It contains information necessary for the proper use of the products. Electrical equipment should be installed, operated, serviced, and maintained only by qualified personnel. No responsibility is assumed by Schneider Electric for any consequences arising out of the use of this material. A qualified person is one who has skills and knowledge related to the construction and operation of the electrical equipment and installations and has received safety training to recognize and avoid the hazards involved. June 2015 Edition for Vijeo Citect 2015 ii Vijeo Citect 2015 - Cicode Exam

Contents CHAPTER 1: 2015 CICODE PROGRAMMING EXAM TOPICS OVERVIEW... 1-1 Function Structure... 1-3 Variables, Datatypes and Data Structures... 1-4 Flow Control... 1-5 Logic... 1-6 Statements... 1-7 Input and Output... 1-8 Parameter Passing... 1-9 Error Handling... 1-10 Debugging... 1-11 Programming Standards... 1-12 Vijeo Citect 2015 - Cicode Exam iii

Chapter 1: 2015 Cicode Programming Exam Topics Overview Introduction Cicode Programming is the second of the CSCE exams. This exam is based around information that is covered in the Cicode Programming Course. This Chapter Covers These Topics: Function Structure Variables, Datatypes and Data Structures Flow Control Logic Statements Input and Output Parameter Passing Error Handling Debugging Programming Standards Vijeo Citect 2015 - Cicode Exam 1-1

Cicode Development Environment Programming Language Cicode is a simple, easy-to-use computer programming language designed especially for plant monitoring and control applications. It is a structured language similar to Visual Basic or 'C', however you need no previous programming experience to use it. Using Cicode, you have access to all real-time data (variables) in the Vijeo Citect project, and all Vijeo Citect facilities - variable tags, alarms, trends, reports, and so on. You can use Cicode to interface to various resources on the computer, such as the operating system and communication ports. Cicode supports advanced features including pre-emptive multi-tasking, multi-threads, and remote procedure calls that will be discussed later in this course. Create and save Cicode function libraries. Experiment with the automated layout functionality within the editor. Use comments to disable sections of cicode. Vijeo Citect Help Topic - The Cicode Editor. 1-2 Vijeo Citect 2015 - Cicode Exam

Function Structure User Functions Vijeo Citect is supplied with over 600 in-built functions. One or a combination of these functions can usually perform most tasks in your system. However, where system functionality cannot be achieved with in-built functions, you can write your own functions. A Cicode function is a small program that may contain a collection of statements, variables, operators, conditional executors, and functions, in fact, of all the elements of Cicode. Revise the syntax of Cicode functions. Make a small Cicode program to create a standard Microsoft ActiveX Listbox at runtime, and fill this listbox with three items, and then select one of these items, and then store the value of the item in a DiskPLC variable. Vijeo Citect Help Topic - Cicode Function syntax. Vijeo Citect Help Topic - Converting and Formatting Cicode Variables. Vijeo Citect 2015 - Cicode Exam 1-3

Variables, Datatypes and Data Structures Operators Cicode is used to manipulate data and perform tasks. Data manipulation is achieved using five classes of operators. These are the Mathematical, Bit, Logical, Relational and Format operators. Review the Cicode Programming Training manual. Create Global, Module and Local variable declarations along with assigning default values to the declared variables. Determine maximum array size limits. Vijeo Citect Help Topic - Using Variables. Vijeo Citect Help Topic - Using Arrays. Vijeo Citect Help Topic - Variable declaration. 1-4 Vijeo Citect 2015 - Cicode Exam

Flow Control Four Conditional Executors The statements that control decisions and loops in your functions are called conditional executors. Cicode uses four conditional executors: IF, FOR, WHILE and SELECT CASE. Review the syntax of the four types of Conditional Executor in Cicode. Create functions that test the functionality of the Conditional Executors. Vijeo Citect Help Topic - Working with Conditional Executors. Vijeo Citect 2015 - Cicode Exam 1-5

Logic Use of Logic in Cicode Cicode supports the use of all major Logical operators: AND, OR, XOR, NOT. Create simple logic statements to test the order of precedence and also to be sure that you understand how statements are executed. Vijeo Citect Help Topic - Using Logical Operators 1-6 Vijeo Citect 2015 - Cicode Exam

Statements Doing the Work Statements are used to execute Cicode Functions and also to assign values (or the results of Cicode Functions) to variables and to Variable Tags. Statements also include the ability to exchange information between variable of differing datatypes - for instance converting an Integer to a String or vice versa. The various operators (addition, subtraction, multiplication etc) have an order of precedence (they are not executed left-to-right or right-to-left) Review the Order of Precedence of Operators. Create Cicode fragments to assign values and call functions. Confirm your knowledge of datatype conversion functions. Vijeo Citect Help Topic - Working with Operators. Vijeo Citect Help Topic - Converting and Formatting Cicode Variables. Vijeo Citect Help Topic - Order of Precedence of Operators. Vijeo Citect 2015 - Cicode Exam 1-7

Input and Output Interact with the Operator In addition to acting on data sourced from the plant via Variable Tags, there are occasions when it is necessary to interact with the operator in order to either request values (perhaps the name of the next recipe or the adjusted setpoint value for some parameter) or to provide other information - often via the prompt field on the screen. Generally, the Input and the Prompt Cicode functions are used for this, although others are also available. Understand the datatype of the various input and output functions and be familiar with how to ensure data is sent or received in the necessary datatype. Be familiar with key sequences for data input. Test the use of the ArgX and ArgValueX items. Vijeo Citect Help Topic - Defining Key Sequences for Commands. Vijeo Citect Help Topic - Input. Vijeo Citect Help Topic - Prompt. Vijeo Citect Help Topic - FormNumPad. 1-8 Vijeo Citect 2015 - Cicode Exam

Parameter Passing Provide Information for a Function to work with In order to make Cicode Functions flexible and reusable, it is normal to provide a list of parameters for them to work with as arguments to the function. Clearly the only alternative would be to define some large list of fixed Global variables. When passing parameters to a function, the programmer must make sure that the parameters appear in the correct order and have the proper datatypes. Create Cicode Functions with default parameters for use when the parameter is not provided. Call functions with missing parameters. Test the application of datatypes to function parameters. Vijeo Citect Help Topic - Parameters. Vijeo Citect Help Topic - Function Argument Structure. Vijeo Citect 2015 - Cicode Exam 1-9

Error Handling Deal with Problems There are many situations where your programs must handle unexpected events. These might range from a file not existing when you request to open it to attempting to read from a non-existent array item. You should write your software to minimise these issues as much as possible and also to gracefully handle the ones you can't catch. Vijeo Citect Help Topic - Defensive Programming. Vijeo Citect Help Topic - Using Cicode Programming Standards. 1-10 Vijeo Citect 2015 - Cicode Exam

Debugging Cicode Editor as a Debugger The Cicode Editor can function in debug mode, to analyse running Cicode. Debugging Cicode requires that Vijeo Citect is running, though you can turn debugging on and off as required. The operation of the debugger is controlled through Debug Options, with some options only taking effect on startup. Review how the Cicode language supports multi-tasking and pre-empting. Review the use of the Cicode Editor in Debug mode. Add some breakpoints to the program you created earlier and use the Cicode debugger to step through it, by breakpoint and line by line. Vijeo Citect Help Topic - Debugging Cicode. Vijeo Citect Help Topic - Using breakpoints. Vijeo Citect Help Topic - Stepping through code. Vijeo Citect 2015 - Cicode Exam 1-11

Programming Standards Fundamentals of Good Design One of the critical aspects to follow on from the earlier concepts of Error Handling and Defensive Programming is "Good Design." the better designed your software is, the easier it will be to deal with errors and exceptions. Software should be written with as much of the code hidden as PRIVATE functions in order to not accidentally call functions which have not been configured for global use. Similarly, unless a variable must be made available globally, it should be declared as a MODULE variable or even kept local to a function. Experiment with declaring PUBLIC and PRIVATE Functions. Investigate the difference between Blocking and Non-Blocking functions. Read widely on programming techniques. Vijeo Citect Help Topic - Function Scope. Vijeo Citect Help Topic - Formatting Functions. 1-12 Vijeo Citect 2015 - Cicode Exam